Intervista a CoseNonJaviste
Ciao a tutti, oggi, ospitiamo un’intervista molto speciale, quella al team di CoseNonJaviste per scoprire la storia di questo blog e quali progetti ci sono per il futuro. Buona lettura!
Sono già alcuni anni che tenete in piedi questo blog e, a leggere dai commenti, molti lettori vi hanno scoperto solo di recente. Volete raccontarci come è nato CoseNonJaviste?
Fabio: Nel lontano 2011 io, Andrea e Manuele stavamo lavorando insieme su un nuovo progetto da sviluppare su piattaforma Java Enterprise. Lo stack da usare era basato su EJB 3.0, EclipseLink e RichFaces, era abbastanza nuovo per quel periodo anche se riguardandolo adesso sembra antichissimo! Progettando l’architettura erano venute fuori un po’ di cose interessanti e così mi venne l’idea di aprire un blog da gestire in più persone dove parlare di questa e di altre cose. Manuele propose un po’ di nomi e quello che ci piaceva di più era cosenonjaviste, scelto un tema e comprato un dominio eravamo online con i primi post.
Andrea: ero da poco collega di Fabio e Manuele e lo stack tecnologico che di lì a breve avremmo usato per un progetto era quasi del tutto nuovo per me, a parte JSF e RichFaces, così mi misi a studiare. Affrontare un progetto grande con tecnologie che si studiano e si provano subito ad applicare ci ha aperto ad una lunga serie di riflessioni, prove, errori e successi. Per non perdere tutto quello che avevamo imparato decidemmo di aprire un blog per condividere le soluzioni che avevamo adottato di fronte a problemi, i dettagli che avevamo scoperto su certi framework e soprattutto gli errori compiuti da non ripetere. L’idea era quindi quella di parlare di “cose di cui nessuno parla”, di “cose non ancora viste”, da qui il gioco di parole con Java che dà il nome definitivo a “cose non javiste”. Mi ricordo che durante il toto-nomi la proposta più divertente fu “L’API Java”, che però detto a voce suona in modo molto diverso da come si scrive con un doppio senso troppo forte…
Quindi sono oramai 5 anni, è un bell’impegno, come fate a gestirlo e quanti post avete pubblicato fino a qui?
Andrea: più che bell’impegno direi che è un impegno bello. Se il blog nasce come condivisione soprattutto di soluzioni a problemi affrontati in ambito lavorativo, col tempo invece si è rivelato molto utile come sprono a studiare cose nuove. Nel nostro lavoro la curiosità di imparare credo sia fondamentale, ma richiede tempo, un po’ di teoria e un po’ di pratica per fissare i concetti. Come tutte le cose però se poi non si usano spesso si tendono a dimenticare: scrivere quindi un post a riguardo aiuta moltissimo perché ti “costringe” ad affrontare l’argomento con serietà, perché per scrivere un concetto lo devi aver acquisito e soprattutto quello che scrivi poi rimane, in primis per te, ma anche per gli altri che si trovano ad affrontare lo stesso argomento.
Negli ultimi anni però si è rivelato difficile riuscire a mantenere un ritmo nella pubblicazione perché il tempo per trattare argomenti nuovi o che già si conoscono è sempre meno. Da qua l’esigenza di allargare il gruppo, in modo da avere anche punti di vista nuovi. E’ così che tra collaboratori spot, alcuni invece si sono “affezionati” al progetto, diventandone parte integrante. Ah, sì, sono oltre 250 post, un bel numero!
Parlando di oggi, invece, quanti siete in totale dietro al blog e come vi organizzate?
Fabio: adesso siamo in 4 a scrivere più o meno frequentemente e a gestire il blog. Dei fondatori originali siamo rimasti io e Andrea, dopo qualche anno si è aggiunto Giampaolo e recentemente l’ultimo “acquisto” Francesco. Oltre a questi ci sono altri autori che stanno contribuendo con alcuni post. Ovviamente nuovi autori sono bene accetti, se avete un’idea magnifica o se volete scrivere un post su un argomento interessante fatevi avanti!
L’organizzazione è abbastanza libera, non ci diamo troppi vincoli né di numero di post da scrivere né sugli argomenti (a patto che l’argomento sia interessante e non un copia incolla di cose già viste).
Ultimamente però non vi state occupando solo di Java, anzi spesso e volentieri si trovano post su Javascript, non è che vi state dimenticando un po’ di Java?
Francesco: qui mi sento in parte responsabile della deriva “non tipata” di CNJ. Ho iniziato a fine 2014 con qualche articolo Java dato che era il linguaggio che utilizzavo tutti i giorni a lavoro. Da inizio 2015 mi sono interessato al frontend studiando molte tecnologie e best practices legate al mondo Javascript, fino a diventare un frontend developer a tempo pieno nella seconda metà del 2015. Ovviamente questa mia transizione si è riflessa nei post che ho scritto sul blog. Devo dire che la cosa non mi dispiace, mescolare tra loro le tecnologie e linguaggi differenti è una prerogativa dello sviluppo web moderno, quindi trasformare anche il blog in questa direzione mi è sembrata una cosa giusta.
Andrea: lo sviluppo di applicazioni web non ha mai riguardato un solo linguaggio di programmazione: per aver padronanza su questo tipo di applicazioni è necessario conoscere lato frontend html, css e javascript mentre lato backend almeno un linguaggio tra Php, Python C# o Java, per non parlare di SQL. Lavorando tutti i giorni in Java, era naturale che la maggior parte dei post riguardasse proprio questo linguaggio. L’importanza che ha assunto Javascript negli ultimi anni, rompendo il muro del frontend e approdando sul backend, gli ha dato nuova dignità che non è sfuggita al nostro interesse.
Siamo nel 2016, ma Java se lo fila ancora qualcuno? Il trend pare essere quello di vedere Javascript ovunque: sul frontend ovviamente ma anche sul backend e sul mobile
Francesco: Java è sempre tra i primi linguaggi al mondo per numero di utilizzatori e probabilmente è destinato a essere ancora lì per qualche anno. Da ex programmatore J2EE mi rendo però conto che il maggiore pregio di tutto quel mondo è la stabilità. Ovviamente questo si sposa male con il parlare di Java a conferenze o post su blog. Per quanto riguarda l’ascesa di Javascript credo che dipenda dal fatto che per anni si sono visti solo i lati negativi di questo linguaggio mentre ora la community Javascript credo sia tra le migliori al mondo in quanto a innovazione. Dopo tutto, parafrasando Jeff Atwood, “any application that can be written in JavaScript will eventually be written in JavaScript.”
Fabio: cercherò di rispondere in modo politicamente corretto a questa domanda, come spiega molto bene Hadi Hariri nel suo talk sulla (se non l’avete ancora visto guardatelo subito!) non esiste una soluzione a tutti i problemi dell’informatica! Come spesso accade in questo mondo quando esce una nuova tecnologia qualcuno dirà che può essere usata in ogni contesto, dopo qualche anno si capisce qual è l’ambito giusto in cui utilizzarla. Javascript lato server secondo me è un buon esempio di questa cosa, quando è uscito Node.js c’era chi voleva usarlo ovunque. Adesso si sta capendo qual è l’ambito giusto in cui usarlo, o meglio io non l’ho ancora capito ma dicono che qualcuno ci sia riuscito… 🙂 Ok, questa era polemica non politicamente corretta, scusatemi…
Per quanto riguarda il mobile il discorso è un po’ diverso, secondo me dipende molto dal tipo di applicazione che si sta sviluppando, dalle funzionalità e anche dal budget. In un mondo ideale in cui ogni app deve essere esteticamente molto curata, in linea con le guideline della piattaforma su cui gira e non ci sono problemi di budget le WebView non esisterebbero! Non è sempre così e quindi sviluppare una app ibrida in alcuni contesti può essere un buon compromesso.
E tu Giampaolo? Ora che ti occupi di Scala, smetterai di scrivere post su Java?
Giampaolo: Scala mi piace molto come linguaggio e sicuramente è diventato il centro delle mie attenzioni. Tuttavia, credo che sia sbagliato affermare che a un programmatore Scala, Java non debba interessare, anzi. Quindi continuerò a scrivere post su entrambi i linguaggi, a seconda dell’ispirazione e come al solito, a seconda dei problemi che mi troverò ad affrontare.
Una curiosità: perché vi ostinate a scrivere in italiano? La documentazione tecnica è in inglese, così come gran parte del materiale e dei talk. Che senso può avere rivolgersi solo al pubblico locale quando si potrebbe puntare ad un blog con un seguito sicuramente più ampio?
Andrea: rigiro la domanda: se scrivessimo in inglese, perché un lettore dovrebbe andare su CoseNonJaviste visto che c’è già tantissimo materiale in rete? Il lavoro che facciamo è quello di farci incuriosire sia dalle novità di cui si parla in rete, sia dalla ricerca di soluzioni ai problemi lavorativi di tutti i giorni. La maggior parte delle volte il materiale di partenza è in inglese, ma le nostre soluzioni sono in italiano! Tradurre i nostri contenuti credo che richiederebbe un grande sforzo, ma soprattutto credo che allontanerebbe coloro che già ci seguono e che si aspettano dei contenuti nella loro lingua. Alla fine non scriviamo per la fama, ma solo perché ci piace farlo.
Francesco: Lo scopo dei post che scriviamo su CNJ non è il raggiungimento del numero massimo di persone, quanto raggiungere quelle “giuste” con cui magari discutere di quanto scritto. Qualche volta mi è capitato che prima o dopo un talk in qualche user group qualcuno mi fermi dicendo “Sai ho letto quel tuo articolo su CNJ che parla di…”, se scrivessimo post in inglese questa cosa credo si perderebbe perché diventeremmo un blog tra i tanti presenti in rete.
Quest’anno festeggiate dunque 5 anni di attività continuativa, che per un blog in generale, e per uno tecnico a maggior ragione, sono un ottimo risultato. L’anno scorso vi siete divertiti a stampare gli adesivi del blog e distribuirli in giro, per quest’anno che avete in mente?
Fabio: 5 anni nel mondo dell’informatica sono un bel po’ di tempo, per questo abbiamo pensato a un modo per cambiare un po’ di cose! Come detto in altre domande di questa intervista negli ultimi tempi ci stiamo occupando di vari argomenti, dalle tecnologie usate per lo sviluppo backend a quelle per il frontend web e al mobile. Per questo il nome CoseNonJaviste (al quale siamo affezionatissimi al punto da stampare gli adesivi!) iniziava a stare un po’ “stretto” e poteva portare a fraintendimenti. Quindi l’idea che ci è venuta in mente dopo notti insonni a pensarci è quella di fare un rebranding, da oggi CoseNonJaviste diventerà CodingJam:

Abbiamo voluto mantenere un po’ di assonanza con il nome originale, l’acronimo CNJ rimane valido!
Giampaolo: Vogliamo spostare l’accento dalla tecnologia al problema da risolvere, che magari viene risolto combinando più strumenti assieme. In futuro andremo a riproporre tematiche già viste affrontate però con altri linguaggi o framework. Ad esempio, far vedere come realizzare lo stesso servizio REST in modi diversi. L’idea della marmellata è proprio quella, ci sono diversi gusti possibili e sono tutti buoni! Jam però sta anche per ingorgo, e quindi un posto dove diverse tecnologie si incrociano tra di loro e vengono usate in combinazione. Come ogni ingorgo che si rispetti non sempre tutto fila liscio mettendo assieme più cose :).
Andrea: crescendo, sia professionalmente che con l’età, ci siamo resi conto che le tecnologie col tempo lasciano il tempo che trovano, seguono le mode o vengono abbandonate da chi le aveva promosse. E’ quindi bene non affezionarsi troppo ad una tecnologia o ad un particolare linguaggio, ma essere più poliglotti possibile. La stessa cosa quindi vogliamo fare con CoseNonJaviste: rimane CNJ, ma diventa una Jam, un agglomerato di altri linguaggi che vogliamo esplorare!
State dicendo che volete trattare un po’ di tutto e non essere identificati come il blog che parla esclusivamente di Java?
Francesco: non è solo questo, dietro c’è la rappresentazione di un dato di fatto. Ad oggi progetti complessi non possono essere scritti in un unico linguaggio/tecnologia. Le web application moderne sono sempre divise tra un frontend scritto, per forza di cose, in Javascript e un backend separato scritto in un altro linguaggio. E la cosa viene esasperata se pensiamo ad una infrastruttura a Microservices dove ogni servizio potrebbe essere scritto in un linguaggio differente. Con il cambio di nome stiamo un po’ dicendo che bisogna mescolare le tecnologie per produrre soluzioni innovative.
Quindi il dominio cosenonjaviste.it andrà a sparire? Da quando dovremo aggiornare i bookmark e cercare nuovi account sui social?
Giampaolo: Il dominio vecchio resterà in giro ancora per un bel po’, mentre quello nuovo è già attivo. Un po’ alla volta andremo a rinominare gli account dei vari social, mettere il nuovo logo e cambieremo anche il tema. Insomma, dovrebbe essere un passaggio indolore e graduale.
Non avete paura di deludere un po’ chi vi segue soprattutto per Java?
GIampaolo: No, è esattamente il contrario. Un linguaggio solo non può bastare per risolvere tutti i tipi di problemi. Come sta già accadendo da qualche mese, spazieremo anche su altri argomenti e sono sicuro che anche i Javisti più duri e puri possano trovare qualcosa di interessante. Con questo rebranding non stiamo cambiando direzione, ma semplicemente stiamo prendendo atto di una evoluzione che è già in corso. E nel corso di questo cambiamento Java non è sparito dalle nostre attenzioni, e non lo farà in futuro.
Fabio: Ormai capita molto spesso di lavorare in un progetto in cui si utilizza più di un linguaggio di programmazione. Nel mondo web è già da tanto tempo che questo accade, anche nei progetti Java una parte di front end in Javascript è diventata la norma. Un discorso a parte va fatto per lo sviluppo di app Android, Java è stato sempre il linguaggio di riferimento ma da un po’ di tempo in molti stanno dando un’occhiata a Kotlin. Per questo motivo pensiamo che anche molti Javisti stiano già usando altri linguaggi e siamo fiduciosi che non la prenderanno sul personale!
Ragazzi grazie del tempo che ci avete dedicato e in bocca al lupo per il futuro con Coding Jam!