Luca De Baptistis / @crasholo

Con la nascita di questo Blog è aumentata esponenzialmente anche la mia apertura verso i social network. E tramite questi, ho avuto modo di conoscere molte persone che lavorano nella sfera gravitazionale Apple. Essendo io "nato" come programmatore e solo successivamente approdato al mondo della grafica, non nascondo di essere affascinato dalla figura dello sviluppatore.

Luca De Baptistis (aka crasholo) è uno studente di 29 anni di Teramo che ha una lunghissima esperienza nel campo della programmazione. Leggendo la sua storia ho trovato molti punti di congiunzione con la mia, almeno in quella passata. Più recentemente invece, Luca è riuscito a trovare la volontà ed il tempo di fare quello che io chiamo "il salto" ed iniziare a sviluppare per gli iDevice. In App Store per il momento troviamo solo un paio di App da lui realizzate, ma state pur certi che questo numero è destinato ad aumentare nel breve termine.

Come (e quando) è nata la tua passione per la programmazione?
Ho cominciato da piccolo, a 7/8 anni, utilizzando il Commodore 64 di mio padre e iniziando a fare i primi programmini in Basic. Partendo dal Commodore, poi PC (286, 386, 486 e poi Pentium e a salire), da “adulto” ho acquistato anche un Amiga 500 Plus dove mi sono dilettato a programmare qualche intro, giusto per conoscere un’altra architettura che ha fatto la storia dell’informatica. Ho avuto una PlayStation (la prima, giapponese) sulla quale ho sviluppato pure qualcosina a titolo di “studio”. Ho programmato per anni in ambiente Windows, ho avuto anche una software house (dalla quale poi sono uscito nel 2007) e ho sviluppato tantissimo in c# .net e c# per dispositivi PocketPC e Windows Mobile.
Poi sono approdato al mondo Apple.

Come è avvenuto l'approdo?
La mia ragazza Gaetana (che saluto e ringrazio perché mi sopporta quotidianamente nella mia nerdaggine), mi ha regalato un iPhone 3G qualche giorno dopo la sua uscita in Italia. Il mese dopo, essendo il mio vecchio Notebook arrivato al termine della sua vita, ho acquistato un MacBook Pro da 15” che è attualmente la mia macchina principale per lo sviluppo. Non avevo mai avuto rapporti con il mondo Apple se non qualche sporadico contatto negli studi di amici grafici. Avere l’iPhone tra le mani mi ha spinto a fare il salto e a conoscere anche questa realtà dell’informatica.

È nato prima l'uovo o la gallina? 🙂 Ovvero quando hai sviluppato la prima App ce l'avevi già in mente oppure volevi sviluppare per iPhone e solo successivamente hai trovato l'idea?
La prima applicazione che ho sviluppato, che al momento è l’unica che ho pubblicato sotto il mio nome in AppStore, è LuckyLotto (attualmente giunta alla versione 3.2.2). Applicazione nata al posto del classico Hello, World!. Ogni tanto mi piace giocare al lotto, superenalotto e simili, ma ogni volta ho il dubbio su quali numeri scegliere e giocare. Mi sono detto: ok ho l’iPhone, ho l’SDK, impariamo qualcosa! E ho iniziato a buttare giù del codice, interfaccia elementare ecc. Funzionava, mi piaceva che l’avevo fatta io, per me. Andavo in ricevitoria, prendevo l’iPhone e sceglievo i numeri da giocare e poi a casa controllavo le estrazioni. Era (e lo è tutt’ora) davvero una bella soddisfazione. Da lì ho detto, “provo a metterla in AppStore”, tanto avevo comunque pagato già il developer program... nella peggiore delle ipotesi avrei venduto poco o niente ma comunque avevo fatto pratica e avevo cominciato a scrivere qualcosa per iPhone/iPod Touch.

Lavori da solo?
Sì, principalmente sì. Per i miei progetti personali (ho diverse applicazioni fatte che uso solo per scopi personali e che non ho pubblicato, e forse non lo farò mai, in App Store) sono l’unico programmatore al momento e mi appoggio a dei grafici per la GUI o comunque per gli elementi grafici dei software. Ultimamente ho poi iniziato a collaborare con la Digital Darwinism, dove ci sono altri programmatore e diversi grafici.

È difficile per uno sviluppatore indipendente (per di più italiano) gestire i rapporti con un'azienda come Apple?
Diciamo che fondamentalmente i rapporti con Apple non esistono. Cioè, una volta che si è registrati al Developer Program, si ha accesso ad una serie di risorse di documentazione, esempi di codice, forum ad accesso riservato ecc. La maggior parte delle risposte a molte domande si trova già online.
Mi è capitato però in passato di avere problemi con iTunes Connect (il portale riservato agli sviluppatori) e non riuscire a generare i codici promozionali per LuckyLotto. Una telefonata al supporto tecnico per il developer program (con operatore che parlava correntemente l’italiano) è stata sufficiente a risolvermi il problema. Ho letto di alcuni sviluppatori che hanno visto negata l’approvazione per l’AppStore per le loro applicazioni e anche contattando più volte Apple non sono riusciti ad avere informazioni sulle motivazioni o comunque delle spiegazioni al riguardo. Io al momento ancora nessun REJECT nel processo di approvazione e l’unica volta che li ho contattati sono stato molto soddisfatto. Esperienza positiva insomma.

Le tue applicazioni le pensi e le realizzi solo per lo store italiano oppure il tuo target è (o sarà) internazionale?
LuckyLotto è pensata, ovviamente, per lo store italiano perché tratta di giochi come il Lotto, il SuperEnalotto, il Dieci e Lotto e WinForLife che sono strettamente disponibili sul nostro territorio. Sto lavorando adesso ad un’applicazione che uscirà nativamente in due lingue (italiano/inglese) e avrà come target tutti gli store disponibili.
Karol, l’applicazione dedicata a Papa Giovanni Paolo II, che ho sviluppato in collaborazione con la Digital Darwinism, ad esempio, è già nativamente localizzata in più lingue e quindi destinata non solo allo store italiano.
L’idea di base è di realizzare applicazioni per tutti. LuckyLotto è l’eccezione ma solo per via dell’argomento trattato 🙂

Non voglio farti i conti in tasca, ma molti si chiedono se uno sviluppatore indipendente riesce a "tirare a campare" con i proventi delle vendite in App Store.
Io fondamentalmente sono uno studente. Realizzo software per altre piattaforme, siti web o applicazioni web, quindi non solo Apple. Di conseguenza il tempo che dedico ad Apple è comunque limitato, non è un’esperienza full-time. Sicuramente ho avuto e sto avendo delle belle soddisfazioni economiche per LuckyLotto. Con un’idea buona e soprattutto con il tempo da dedicare solo a quell’idea o comunque da investire per lo sviluppo di altre idee secondo me l’AppStore è una buona fonte di guadagno. Potrebbe essere l’unica fonte di reddito di un individuo, sempre però con i piedi per terra.

Mi dicono che "produci" spesso di notte, quali sono i tuoi ritmi di lavoro e l'ambiente più stimolante?
Guarda io da sempre di notte sono stato più “produttivo”. Dai primi anni di università, la notte era il “momento” migliore della giornata per far finta di studiare — ahahhaha — e per scrivere un po’ di codice. Forse perché c’è meno caos intorno, in rete, il telefono non suona praticamente mai e le comunità online internazionali, per questioni di fuso orario, sono attive di notte. Poi dipende dal progetto. Se c’è da collaborare con altri programmatori o altre persone non sempre si può lavorare di notte. Oppure certi progetti richiedono ore di lavoro sia di giorno sia di notte. Potendo scegliere comunque, prediligo la notte. Anche per questa intervista... è notte fonda... quasi l’alba a dire il vero 🙂

Hai progetti in mente (o in corso di sviluppo) per iPad? Sempre se ce ne puoi parlare...
Ci sono alcuni progetti importanti con la Digital Darwinism sicuramente. C’è il porting di LuckyLotto per iPad (ma per una serie di problemi personali non sono ancora in grado di dare una stima di tempo) con l’inserimento di nuove funzionalità richieste da alcuni utenti e poi c’è l’App che ti accennavo qualche domanda fa (quella bilingue) che sarà pure Universal e quindi compatibile per iPhone/iPod Touch e iPad.

Che consiglio daresti ad un programmatore che ancora non conosce Objective-C, ma vorrebbe iniziare a sviluppare per iPhone?
Ci sono molti libri ormai che trattano dello sviluppo per iPhone & C. Quando ho iniziato io, l’argomento era ancora un po’ “freddo” in Italia. Io ho cominciato con un libro cartaceo in inglese di Erica Sadun, poi ho proseguito con dei testi di Jeff LaMarche, sempre in lingua inglese. La documentazione Apple disponibile online e accessibile sul developer portal è davvero completa e piena di esempi.
La documentazione Apple, siti che trattano l’sdk dell’iphone, stackoverflow.com e un fidato motore di ricerca sono sufficienti ad uno sviluppatore che già conosca altri linguaggi e ambienti, quindi con le basi dell’informatica e della programmazione, per avvicinarsi al mondo Objective-C/iPhone.

E per uno che parte da zero, ci sono possibilità di diventare uno sviluppatore? Che strada suggeriresti?
Sì, le possibilità ci sono per tutti. Un suggerimento che do’ a tutti è quello di studiare e conoscere un po’ la lingua inglese. Spesso manuali, siti specifici di programmazione, o comunque un sacco di risorse si trovano principalmente in lingua inglese. Per avvicinarsi alla programmazione è importante conoscere delle basi comuni un po’ a tutti i linguaggi. Per citare qualcosa di veramente banale e basilare, ad esempio, il concetto di variabile, di puntatore, di array ecc. Principi assimilabili con manuali di qualsiasi linguaggio.
In qualche libreria (non ricordo se fisica o su amazon) mi è parso di vedere libri sulla programmazione iPhone che trattano anche concetti di base e che quindi aiutano il neofita ad approcciarsi al discorso programmazione per poi specializzarlo in objective-c. Manuali di questo tipo sarebbero l’ideale. Comunque in ogni caso, tanta pazienza, buona volontà e soprattutto voglia di fare. Ingredienti fondamentali.

Ci sono persone che hanno buone idee ma non le competenze per realizzarle. Ti è capitato o saresti disposto a sviluppare app su commissione?
No, per il mondo iPhone & C. non mi è mai capitato. Però sono più che disposto a sviluppare applicazioni su commissione o comunque a collaborare e aiutare per lo sviluppo di qualche idea. Sarebbe una bella esperienza.

Cosa ne pensi dei problemi intorno all'antenna dell'iPhone 4?
Probabilmente su alcuni dispositivi e soprattutto negli Stati Uniti sulle frequenze della rete di AT&T il problema c’è e si verifica, come mostrato in molti video. Io sinceramente non l’ho riscontrato qui da noi con il mio iPhone 4. Il telefono lo impugno come Apple non dice di impugnarlo — aahahahha — però fino ad ora sono riuscito tranquillamente a telefonare, a navigare ecc. La mano un po’ influisce e attenua il segnale, ma mi capitava anche sull’iPhone 3G e mai da rendermi impossibile una comunicazione.
Forse la stampa estera (e di riflesso quella italiana, che ha detto varie e diverse castronerie sull’iPhone 4... addirittura ho sentito anche che il retro dell’iPhone è tutta un’antenna di vetro... no comment) ha calcato un po’ la mano sul problema. Magari c’è una moda diffusa che appena Apple fa qualcosa, costando poi i dispositivi bei soldini, si è subito pronti a puntare il dito...

Quindi lo hai comprato?
Fortunatamente e grazie all’amico Cristian Palandrani che ha “passato la notte” a Roma Est, sono un felice possessore di iPhone 4 da 32 GB sin dal day-one italiano (scontrino n. 11). L’avrei comprato anche se avesse avuto tanti problemi da non riuscire a farci nemmeno una telefonata 🙂 Il mio vecchio 3G era ormai arrivato alla frutta (la batteria durava qualche ora) e cmq per restare aggiornato per la programmazione era necessario avere il terminale nuovo 😀

One more thing... hai la possibilità di dare un consiglio a Jobs, cosa gli diresti?
Non so... di riguardarsi sicuramente... un trapianto di fegato anche se riuscito è sempre un’operazione delicata e a rischio nel tempo. Poi mi piacerebbe tornare a vedere Apple un po’ più di nicchia come prodotti, anche qualitativamente un po’ più brillanti. Ho come l’impressione che per molte persone oggi avere un dispositivo della mela è più un fatto di moda, di tendenza, che di utilità pratica o di ricerca di qualcosa di tecnico. La moda e la tendenza portano i soldi, gli azionisti sono contenti, la società pure. Però ogni tanto alcune cose potrebbero lasciare dell’amaro in bocca ai vecchi ed affezionati utenti Macintosh. Magari mi sbaglio, magari è un consiglio sbagliato, forse rientra nel “think different”... 🙂 Vedremo in futuro cosa ci riserva zio Steve.

Complimenti Luca e in bocca al lupo per il futuro!

luckylotto

Luca de Baptistis conosce moltissimi linguaggi di programmazione: Basic, Pascal, Cobol, Java, Jsp, Javascript, PHP, Classic Asp, Asp.Net, Vb.Net, C# ed Objective-C. Potete trovarlo su facebook (facebook.com/crasholo) e su twitter (twitter.com/crasholo). Lavora su un MacBook Pro 15" del 2008 con 4GB di RAM e HD da 7200rpm con monitor esterno DELL 24" fullHD, dotato di Wireless Keyboard e Magic Mouse. Mentre i suoi iDevice sono: iPhone 3G 16GB (fw 4.1 beta), iPhone 4 32GB (fw 4.0.1), iPad 3G 16 GB (fw 3.2.1).