23 set 2010

Questa mi e' piaciuta

What is Lotus Notes? what is Lotus iNotes?

Soprattutto le varie risposte e specialmente questa che riporto di seguito :

I just wanted to echo some earlier sentiments in my own words:

"Lotus Notes is the ultimate enterprise-scale custom application development platform. Oh... almost forgot: it also includes integrated messaging and scheduling capabilities."

If Notes is an email system that, oh, by the way, also allows for creation of custom apps, its market share and feature set will forever be compared to Exchange, GMail, and any other platforms of that ilk that have yet to emerge.

If, on the other hand, Notes is a custom application development platform that, oh, by the way, also just happens to include a very competent messaging and scheduling framework that integrates seamlessly into the custom application framework because those features are developed using the same languages and underlying architecture that run your custom applications... then it's a whole other ballgame. Notes is then measured in terms of market share and feature set in comparison to PHP, ASP, Ruby on Rails, and a whole host of other languages and application development frameworks. Notes is a leader if customers can more rapidly deploy and more easily maintain custom applications that are more secure, more reliable, and more intuitive than what they would have had to settle for had they developed it using competing technologies.

If application development is the focus and email is an afterthought - as it has already become for an entire generation now on the brink of entering the workforce - then Notes offers a host of capabilities that dramatically distinguish it from most, if not all, alternatives. If email is the focus and application development is the afterthought... then IBM will forever be attempting to distinguish it from other messaging systems, limited to the scope of what any messaging system can do: for example, Notes makes it slightly easier to follow a "reply to all with history" thread, or its archiving options are slightly more robust, etc. The differences between these types of features are, by their very nature, infinitesimal... but the chasm between what Notes allows developers to create - and at what pace - and what the same number of developers can produce in other platforms in the same timeframe is astronomical.

So go for the easy win: if a potential (or existing) customer insists on discussing messaging, reassure them that Notes can handle their messaging needs because, well, everyone does messaging; messaging is easy. But then, as rapidly as possible, steer the conversation back to what Notes does that NOTHING ELSE CAN. :)

21 set 2010

Un pezzetto di codice (LotusScript)

Magari a qualcuno puo' servire : lanciato da una view esporta tutti i doc. della view stessa , e' generico e quindi non c'e' bisogno di parametrizzarlo per view diverse.
Non l'ho ottimizzato, potrebbero esserci ancora delle Dim non piu' necessarie, comunque funziona.

Sub Initialize
Dim x,y As Integer
Dim conta, salto,lunga As Integer
Dim strLen As Integer
Dim ses As NotesUIworkspace
Dim vw As NotesUIView
Dim view As NotesView
Dim doc As NotesDocument
Dim it As Variant
Dim viewcollec As notesviewentrycollection
Dim viewentry As notesviewentry
Dim strDesc As String
Dim strTrack As String
Dim session As New NotesSession
Dim db As NotesDatabase
Set db = session.CurrentDatabase
Set ses = New NotesUIWorkspace
Set vw = ses.currentview
Set View = vw.View

'Set up the Excel application
Dim xlApp As Variant
Dim xlSheet As Variant

Set xlApp = CreateObject("Excel.application")
xlApp.Workbooks.Add

Set xlSheet = xlApp.Workbooks(1).Worksheets(1)
xlApp.Visible = True

'- Set the print to landscape
'Values you can use:
'1 = Portrait
'2 = Landscape
xlSheet.PageSetup.Orientation = 2

'Titoli delle colonne
x=0
Forall c In view.Columns
x=x+1
xlSheet.Columns(x).Columnwidth = c.Width
xlSheet.Columns(x).VerticalAlignment = 1 'The vertical alignment defaults to bottom in excel, and this makes the data look a LOT cleaner
xlSheet.Cells(1, x).Value = c.Title
End Forall

Set viewcollec=view.allentries
Set ViewEntry = viewcollec.GetFirstEntry( )

x=1
Do While Not viewentry Is Nothing
x=x+1
y=0
Forall v In viewentry.ColumnValues
y=y+1
xlSheet.Cells(x, y).Value = v
End Forall
Set ViewEntry = viewcollec.GetNextEntry( viewentry )
Loop

Msgbox "Il foglio Excel e' pronto, ricordati di salvarlo!", 64, "Excel Export"

End Sub

20 set 2010

Sentirsi un dinosauro

Sentirsi un dinosauro puo' derivare dal fatto di lavorare su una piattaforma che, almeno a volte, ricorda i dinosauri. Parlo ovviamente del "mio amato" Lotus Notes. Ho cominciato a lavorare con Notes nei primi anni 90' la versione era (credo) la 2.qualcosa...tempi giurassici!
Per l'epoca Notes era realmente innovativo ed unico, ma queste caratteristiche non sono state mantenute.
Intendiamoci, Notes non e' un client di posta come molti lo considerano; stiamo parlando di un application server che per molti versi e' parecchio evoluto ma che ha anche alcuni talloni d'Achille abbastanza pronunciati.
Uno e' proprio IBM che da anni non sembra spingerlo, non si vedono nuove installazioni e spesso ho l'impressioni che gli sforzi di IBM siano tesi solo al mantenimento dell'installato.
Anche la comunicazione mi sembra latitare, visto che tanta gente ancora oggi assimila Notes alla posta elettronica.
Altro punto dolente e' il client, anche lui ormai pesante come un brontosauro e senza significative novita, nell'interfaccia utente da tempo.
Qui fermo il mio brontolio ma su alcuni dei temi accennati sopra voglio tornare in futuro.