Un'intervista con Dion Almaer

Dion Almaer, un espatriato britannico che vive nella Silicon Valley, cerca di costruire esperienze utente di cui gli sviluppatori si interessano in Mozilla in un ruolo che gli consente di pensare a rendere la vita più facile agli sviluppatori di Open Web.

"Credo che Open Web non sia solo la migliore piattaforma che sia mai stata creata, ma che sia solo l'inizio: eclissa le piattaforme proprietarie e il mondo del desktop e del Web si fonderanno per la prima volta nella storia, gli sviluppatori controlleranno la piattaforma invece di una società. "

In quale parte del mondo risiedi attualmente?

Palo Alto, CA. Tuttavia, ci sono arrivato tramite: Londra -> Minneapolis, MN -> Boulder, CO -> Londra -> Boston -> Madison, WI -> CA. Ho vissuto in ogni fuso orario negli Stati Uniti continentali :)

Sei sposato / hai figli?

Sposato con Emily (quasi 10 anni) e con un bambino di 2 anni di nome Sam.

Musica preferita?

Sono vecchia scuola;) Mi piacciono artisti come Peter Gabriel, New Order, David Bowie e artisti che non escono spesso con nuovi album :(

Cibo preferito?

Ho una strana relazione con il cibo. Mi piacciono gli indiani (cipolla bhargi!), Pizza (crosta sottile), involtini di salsiccia, pesce e patatine (Lobster Pot a Redbridge) e patatine inglesi.

Da quanto tempo sei uno sviluppatore web?

Ho iniziato lo sviluppo web quando ho frequentato l'Università del Minnesota. Questo ha fatto sì che i Gopher, che sono stati creati lì, arrabbiati e impazziti, abbiano fallito e abbiano perso la rivoluzione (hanno provato a concedere in licenza la tecnologia e non era buono o aperto come il WWW). Stiamo parlando degli intervalli di tempo 1994/5.

Dove lavori attualmente?

Lavoro in un nuovo laboratorio di strumenti per sviluppatori in Mozilla, con il mio cospiratore di lunga data Ben Galbraith (co-fondatore di Ajaxian con me).

Qual è il tuo linguaggio di programmazione preferito?

Il mio cervello ama Ruby e JavaScript. Ho fatto un sacco di Java in passato e sebbene mi piaccia la piattaforma, la lingua mi annoia e non mi entusiasma nel codice. Ho codice su CPAN e preferisco i linguaggi dinamici, da Lisp a Python e altro ancora.

Preferisci le librerie Javascript?

Mi piace Prototipo per applicazioni di medie dimensioni che richiedono un po 'di zucchero. Mi piace jQuery per munging una pagina web. Mi piace Dojo per fare una grande applicazione. Anche i nuovi framework come SproutCore e Cappuccino sono molto interessanti.

Editor di codice preferito?

Ne ho alcuni IntelliJ per Java e anche alcune funzionalità Web. Textmate per linguaggi dinamici e semplici modifiche. vim per le modifiche veloci. Ero abituato a vivere in Emacs (leggi e-mail e newsgroup e altro). Sto anche riflettendo molto su questo e mi chiedo se un editore potrebbe vivere online. Voglio che sia veloce come un'applicazione desktop, collaborativa, basata sui comandi e auto modificabile come emacs. Sono entusiasta dello stato degli editori per il 2009 e oltre.

Quali applicazioni sono sempre in esecuzione sul tuo computer?

Certo, il browser è prima di tutto. Gestisco Minefield (Firefox Nightly) e WebKit ogni notte. Quicksilver è la mia prima installazione per il Mac. Adium. Compagno di testi come abbiamo detto. NetNewsWire (non sono stato in grado di passare a Google Reader per qualche motivo), e alcuni altri.

Mac, PC o entrambi?

Mac per anni. PC tramite VMWare Fusion per il test e per ricordarmi perché sono passato.

Qual è una giornata tipo per te?

Ho un doppio programma. In questi giorni, Ben e io siamo andati in palestra la mattina, mentre andavamo al lavoro. Andiamo presto. Cerchiamo di tornare a casa in tempo per passare la cena e il divertimento con i bambini, e poi fare un'altra sessione di codifica di notte. Faccio anche l'Ajaxian a tarda notte e programma i post per la mattina successiva (visto che si trova sulla costa occidentale).

Hai scritto qualche libro?

Sono stato co-autore di Pragmatic Ajax con Ben e Justin Gehtland. Ha davvero bisogno di un aggiornamento.

Ci sono altri sulla strada?

Non per un po. Ci vuole troppo tempo e abbiamo progetti divertenti da condividere. Inoltre, dopo il blogging, il tweeting e il podcast, mi sembra di scrivere un libro alla settimana;)

Avete qualche pet di programmazione?

"Oggi userò il modello di progettazione Foo" e l'ingegneria generale.

Come ti tieni aggiornato con gli ultimi sviluppi del web?

Mi sono formato per essere un lettore di lettura RSS e ottimizzare tramite strumenti sociali come Twitter / FriendFeed. Ci vuole troppo tempo: /

Conosci diversi linguaggi di programmazione, quale è stato il più difficile da imparare? il più facile?

C'è la lingua e ci sono le biblioteche. Spesso non ci vuole molto tempo per imparare una lingua in quanto è solo sintassi. Ci vuole più tempo per imparare nuovi idiomi e anche più tempo per imparare le librerie. Ogni volta che imparo una nuova lingua riprendo gli idiomi con quelli vecchi (ad esempio usando Closures in Java).

Come hai imparato? Hai avuto un addestramento formale?

Sono passato dall'Ingegneria Chimica al corso di Laurea in Informatica presso l'UofM, ma questo non mi ha aiutato nemmeno a farmi interessare e codificare. Sono entrato a far parte di una startup sanitaria a scuola e ho anche lavorato al sistema di registrazione web per l'università.

Come e quando ti sei interessato allo sviluppo web?

Fin dall'inizio Era semplicemente così facile da fare rispetto ai sistemi proprietari desktop. Ero abituato a costruire applicazioni Unix a scuola e woooooah era troppo difficile!

Quando progetti per IE, ti preoccupi anche di IE5?

Non ho dovuto per un tempo moooolto. Grazie Dio. In questi giorni voglio spingere le persone ad aggiornare;)

Esperienza più soddisfacente come sviluppatore web?

La prima volta vedo gli utenti godere di tutto ciò che ho costruito. Dalla grande comunità di Ajaxian che contribuisce, agli studenti che si iscrivono alle lezioni, ai sistemi sanitari che diventano più efficienti.

Più imbarazzante?

L'Ajaxian era davvero brutto. Non è ancora come vorremmo, ma conosci il proverbio sul produttore di scarpe e sulle scarpe per bambini ...

Stai lavorando a qualche progetto per animali domestici nel tuo tempo libero?

Ne ho sempre una coppia. Al momento sono concentrato su alcuni progetti che escono dal gruppo dei laboratori, ma mi piace anche esplorare. Alcuni esempi sono App Discover, un addon che cerca di aiutare il browser a scoprire le applicazioni web. Geometa, uno shim che ti consente di utilizzare le varie API di geo location che escono.

Il miglior consiglio per i nuovi sviluppatori?

Divertiti! Scopri cosa ti stanno facendo i browser in questi giorni. Non vivere nel mondo del 1997 con Ajax 1.0, ma costruisci per il futuro. (E OK, assicurati che funzioni per i tuoi utenti).

Tendiamo ad essere ossessionati dalla tecnologia e dalle librerie e dalle strutture. Ha più senso concentrarsi sull'esperienza utente e utilizzare la tecnologia per renderla possibile.

Acquista il suo libro

  • Pragmatic Ajax: un primer Web 2.0

    Acquista il libro

  • Iscriviti al feed RSS di NETTUTS per ulteriori tuts e articoli di sviluppo web giornalieri.