Programmazione.it v6.4
Ciao, per farti riconoscere devi fare il login. Non ti sei ancora iscritto? Che aspetti, registrati adesso!
Info Pubblicità Collabora Autori Sottoscrizioni Preferiti Bozze Scheda personale Privacy Archivio Libri Corsi per principianti Forum
Greenpeace
L'Open Source in un'azienda italiana: intervista al fondatore di ManyDesigns (1/2)
Scritto da Ciro Fiorillo il 21-07-2009 ore 09:15
Intel Cluster Studio XE
ManyDesigns è un'azienda italiana con sede a Genova, che ha rilasciato da alcuni mesi Portofino, un framework in Java per lo sviluppo di applicazioni web model-driven, con licenza open source GPL. In occasione dei test necessari alla recensione di Portofino, ho avuto modo di contattare uno dei due fondatori dell'azienda, l'ing. Paolo Predonzani, che ha acconsentito a rispondere ad alcune domande sull'Open Source e sul ruolo che lo stesso può avere in un'azienda italiana come ManyDesigns.

Ne è nata un'intervista a distanza “a tutto campo”, che offre spunti di riflessione molto interessanti per tutte le aziende italiane che sviluppano software, e mostra uno spaccato reale del mondo open source italiano, spesso poco considerato. Prima di lasciare spazio alle domande, ma soprattutto alle risposte dell'ing. Predonzani, mi preme ringraziarlo per la disponibilità mostrata. (D'ora in avanti, PP sta per Paolo Predonzani e CF per Ciro Fiorillo)

CF: Chi è Paolo Predonzani?
PP: In ManyDesigns sono uno dei due fondatori dell'azienda, nonché sviluppatori iniziali del framework Portofino. Accanto alle attività tecniche, svolgo il ruolo di direttore commerciale. Prima di ManyDesigns ho lavorato quattro anni in Inghilterra come analista, progettista e capo progetto. Come studi, ho un dottorato in ingegneria informatica ed elettronica.

CF: Quando nasce ManyDesigns?
PP: Nel 2005, da due ingegneri genovesi, all'epoca sui trent'anni, con il pallino dell'imprenditoria e la passione da sempre per il software.

CF: Quanto tempo e investimenti ha richiesto lo sviluppo iniziale di Portofino (diciamo fino alla release 1.0)?
PP: Portofino è stata la nostra idea di partenza e gli abbiamo dedicato subito tutto il tempo e le risorse di cui disponevamo. Ci sono voluti dieci mesi per arrivare alla prima release. Avevamo molte idee in testa e abbiamo passato settimane a visualizzarle, confrontarle, discuterne. Poi abbiamo preso le idee chiave e le abbiamo realizzate nel codice. La prima versione open source pubblica è invece di febbraio 2009, quindi è giunta quando il prodotto era già maturo.

CF: Da che idea siete partiti per lo sviluppo di Portofino?
PP: Volevamo affrontare in qualche modo il problema della bassa produttività e degli alti costi di manutenzione nello sviluppo di software aziendale. Eravamo attratti dell'approccio Model-Driven Engineering (MDE), che era circolato per anni sotto vari nomi fra cui CASE, RAD e altre metodologie di design. L'idea dell'MDE è che il codice è una conseguenza logica del design, per cui lavorando al livello del design – ossia con i modelli – molti problemi legati alla scrittura del codice possono essere risolti, aumentando produttività, qualità e manutenibilità.

Guardando però nel mondo reale, vedevamo l'MDE partire da una posizione minoritaria. Poche persone lo conoscevano e poche persone lo utilizzavano. Inoltre, perché un progetto basato sull'MDE potesse funzionare bene, serviva sempre un esperto nell'approccio, che era difficile da trovare. Alla fine, l'MDE andava bene solo per il 10% dei progetti: quelli più complessi e più grandi. Questo rafforzava, in un circolo vizioso, la posizione minoritaria di partenza.

Con Portofino abbiamo voluto uno strumento che fosse intuitivo e utilizzabile da chiunque. Volevamo che fosse lo strumento giusto per progetti di dimensioni medie e piccole. Per dare un'idea pensavamo a progetti che richiedono il CRUD su 10-20 tabelle di database, uno o due workflow con utenti e ruoli diversi, permessi, report online, stampe e qualche integrazione con sistemi esistenti. Non era fantascienza, ma uno strumento così, che coniugasse semplicità e ricchezza funzionale, non esisteva. Noi lo abbiamo voluto realizzare.

CF: Come ci siete riusciti?
PP: Abbiamo creato un ambiente di sviluppo completamente via Web. Nelle pagine del "piano di sopra" il modellatore-sviluppatore crea e definisce i modelli applicativi, nelle pagine del "piano di sotto" gli utenti fruiscono dell'applicazione finale. Ogni modifica al piano di sopra si riflette automaticamente al piano di sotto. Non ci sono lunghi tempi di compilazione o trasformazione, che avvengono quasi istantaneamente. Il modellatore ha l'impressione di plasmare l'applicazione in tempo reale. Per esempio, aggiungere un campo richiede pochi clic e il risultato può essere subito testato e mostrato all'utente finale dell'applicazione. Spesso gli sviluppatori imparano a usare Portofino per prove, senza leggere troppo il manuale e, soprattutto, senza dover prima prendere una laurea in UML.

CF: Quali sono state le motivazioni alla base del rilascio open source di Portofino?
PP: Ci siamo messi nei panni del cliente e abbiamo riflettuto. I clienti accettano abbastanza volentieri un'applicazione verticale chiusa, ma vogliono che le piattaforme e le tecnologie di base – come è Portofino – siano aperte. Questo vale per le piattaforme realizzate dalle aziende più grandi – si pensi a Java della Sun – e vale a maggior ragione per quelle delle aziende piccole. Si tratta di una richiesta di stabilità e certezza sul futuro delle piattaforme assolutamente condivisibile. Se la piattaforma è aperta, gli utenti sono più disposti a investire su di essa e anche a più lungo termine. Il rilascio in open source è in grado di soddisfare questa necessità. Una volta compreso questo ragionamento, la scelta è stata naturale e indolore.

CF: Che barriere "mentali" dentro e fuori l'azienda avete incontrato rispetto al rilascio open source di Portofino?
PP: In azienda la discussione ha riguardato la forma di open source da adottare e il rapporto con la licenza commerciale. Abbiamo guardato ai modelli commerciali come MySQL, JBoss, Compiere o SugarCRM, che ritenevamo interessanti. Un punto critico era decidere se l'open source doveva essere una versione ridotta di quella commerciale. Avevamo visto altri prodotti le cui versioni open source erano più o meno limitate e questo non ci era piaciuto, soprattutto nell'ottica di dare la sicurezza di cui ho discusso prima. Abbiamo così deciso di dare un Portofino open funzionalmente completo ed equivalente a quello commerciale. La differenza fra le due versioni è nel ciclo di rilascio. Per l'open c'è un rilascio periodico, diciamo ogni sei-nove mesi. Per il commerciale ci sono anche release intermedie guidate dalle necessità dei clienti. A questo bisogna ovviamente aggiungere il supporto, che nel commerciale ha opzioni per tutte le necessità e i portafogli. Questo è il compromesso che abbiamo trovato.

CF: I vostri clienti, che magari avevano acquistato la versione closed source, che ne pensavano? E adesso?
PP: Per quanto riguarda i clienti esistenti, abbiamo discusso da subito con loro la scelta open source. C'era la possibilità che venisse vista come una diminuzione del valore di ciò che avevano già acquistato, quindi negativamente. Ma così non è stato. La risposta è stata unanimemente positiva accompagnata da un interesse sulle potenzialità che Portofino open avrebbe potuto aprire. Nello specifico abbiamo notato un aumento del passaparola: con l'open source gli utenti si sono trovati molto più a loro agio nel consigliare Portofino a colleghi o persone del loro settore. Abbiamo offerto Portofino open ai clienti esistenti da febbraio 2008, quindi un anno prima della prima versione ufficiale pubblicata a febbraio 2009 su SourceForge.net. Oggi, a un anno e mezzo di distanza, possiamo dire che le nostre licenze commerciali non sono state erose dalla licenza open.
Precedente: Comunicazioni ultraveloci con la nuova forza repulsiva della luce
Successiva: Migliorare le performance di applicazioni PHP con i suggerimenti di Malyshev
Copyright Programmazione.it™ 1999-2013. Alcuni diritti riservati. Testata giornalistica iscritta col n. 569 presso il Tribunale di Milano in data 14/10/2002. Pagina generata in 0.366 secondi.