6 tecnologie da imparare quest'anno

La tecnologia si muove velocemente! Se sei bloccato nel tuo cubo modificando il codice Java 1.3 o scherzando con PowerBuilder, probabilmente vivi in ​​un'area del paese in cui c'è un solo datore di lavoro. La maggior parte di noi deve capire cosa dobbiamo imparare, o almeno familiarizzare, solo per mantenere la nostra carriera in carreggiata.

Se vuoi rimanere ricercato e aumentare la tua tariffa, dovresti conoscere le seguenti tecnologie. Perché ascoltami? Perché ottengo una visione a volo d'uccello unica come sviluppatore a cavallo tra ruoli di gestione, marketing e vendita. Il mio sondaggio informale dice: questo è il minimo con cui dovresti familiarizzare entro il prossimo anno.

1. Hadoop. Se non impari nient'altro quest'anno, fallo su Hadoop. Devi sapere cos'è MapReduce e come usarlo. Francamente, in base a qualsiasi misura di buzz, popolarità o domanda, Hadoop domina il mercato delle nuove tecnologie.

Leggi il tutorial JavaWorld: programmazione MapReduce con Apache Hadoop .

Potresti imparare altre tecnologie, ma Hadoop è più difficile e hai bisogno di più risorse per andare oltre "ciao mondo". Uno dei compiti più difficili è trovare un argomento abbastanza semplice da insegnare a te stesso, ma non così semplice da non imparare nulla. Inoltre, trovare un set di dati sufficientemente ampio non è così facile come potresti pensare. Ce ne sono di famosi, come una grande discarica di Wikipedia. Forse potresti combinarlo con altri elementi e creare una sorta di grafico sociale che mostri a chi piace modificare chi. Hortonworks ha dimostrato un concetto simile con GitHub.

Dopo esserti sporcato le mani, inizierai a vedere altri tipi di domande a cui vorresti che MapReduce rispondesse. Ci sono più fornitori in questo settore, da aziende specifiche di Hadoop come Hortonworks a fornitori di multitecnologia come Pivotal (spinoff VMware / EMC) e fornitori esistenti come Oracle, che stanno fissando Hadoop al lato dei loro prodotti. Ognuna di queste società è sufficientemente capitalizzata per volare in orbita.

2. MongoDB. Sebbene non sia un colosso così grande come Hadoop, MongoDB è ancora un grosso problema e molto più facile da imparare. I database di documenti come MongoDB si adattano bene alle grandi applicazioni AJAX o ai back-end orientati agli oggetti. Inoltre si adattano bene. Ce ne sono più di uno da provare, ma probabilmente dovresti iniziare con Mongo, perché sarà il migliore per te dal punto di vista della carriera: la maggior parte delle aziende ha già familiarità con il database. La società dietro MongoDB, 10gen, è estremamente ben capitalizzata con una cassa di guerra di $ 81 milioni.

3. Scala. La programmazione concorrente sta cambiando, così come i tipi di applicazioni che ci viene chiesto di creare come sviluppatori. Non molto tempo fa, tutte le applicazioni di trading a bassa latenza erano scritte in C o C ++; ora sono scritti in Java.

Ottieni un'introduzione pratica a Scala: impara a Scala con Specs2Spring .

Le tecniche più recenti nella programmazione orientata agli oggetti altamente concorrente e funzionale spesso debuttano in Scala, per poi trasformarsi in Java o in altri linguaggi popolari anni dopo. Scala è più di un linguaggio o "caramella sintattica": è un ecosistema di biblioteche e idee come Akka e Play. Che ti piaccia Scala o che lo odi, devi capire le idee che racchiude. Con il creatore di Spring Framework Rod Johnson che si unisce al consiglio di Typesafe e una banca da $ 20 milioni, questa è una scommessa su cui puoi contare.

4. Node.js. Non sto dicendo che dovresti diventare uno sviluppatore JavaScript e rinunciare a tutto il resto. Sto dicendo che dovresti avere un assaggio dei sistemi basati su eventi e non bloccanti come Node.js e almeno un linguaggio dinamico come JavaScript sul server. Potresti fare Ruby, ma ti mancherebbe quella parte basata sugli eventi e non bloccante. Ci sono motivi per non apprezzare davvero Node.js (è a thread singolo), ma c'è anche molto da amare. Molte persone serie usano Node.js, che ha una vivace comunità e un ampio supporto del settore, da Microsoft a Cloudbees a VMware e oltre. Joyent, il ben finanziato creatore di Node.js (oltre $ 112 milioni), non sta cercando di produrre Node.js, ma l'offerta cloud di Joyent si differenzia con un PaaS incentrato su Node.js.

Hai sentito parlare di Vert.x? ottieni un'introduzione tutorial a questo framework di messaggistica aziendale basato su Node.js, ma costruito sulla JVM.

5. C / C ++ o Assembly.Ho lottato per non lasciare questo come Assembly - o anche C e omettendo il cugino ibrido bastardo (Linus lo ha detto meglio nel suo rant NSFW). Non è necessario essere un maestro della libreria standard o dell'STL o qualcosa del genere, ma dovresti sapere come funziona effettivamente un computer. Dovresti capire come la memoria opera vicino al metallo e avere un'idea di come funzionano i compilatori. Potrei non aver usato MASM per anni, ma ho applicato continuamente la conoscenza che ho acquisito imparandolo. Man mano che la tecnologia diventa più astratta e di alto livello, comprenderla a un livello basso diventa effettivamente più utile durante lo sviluppo o il debug di sistemi altamente scalabili e ad alte prestazioni. Se lavori come sviluppatore Ruby, nessuno ti chiederà di sapere queste cose, ma potrebbero chiederti di risolvere problemi che capirai molto meglio se hai questa esperienza.Le persone che possono pensare in questo modo si dimostreranno preziose più e più volte.

6. Git. Guarda, se non conosci Git e non hai configurato uno o due account GitHub, sei in ritardo per la festa dello sviluppatore efficace e ben nota. Avresti dovuto davvero impararlo l'anno scorso. Ovviamente, se stai ancora utilizzando ClearCase nella tua posizione attuale, dovresti ricevere una retribuzione per rischi seria o dovresti smettere e ottenere un lavoro in cui non devi usare ClearCase.

Sono richieste molte altre abilità, ma queste sei stanno portando il brusio. L'acquisizione di queste abilità ti aiuterà a diventare non solo uno dei ragazzi fantastici del quartiere, ma anche uno dei ragazzi pagati.

Questa è la mia lista. C'è qualcosa che vorresti aggiungere? Dimmelo nei commenti (Aggiungi un commento) qui sotto.

Questo articolo, "6 tecnologie da imparare quest'anno", è stato originariamente pubblicato su .com. Tieniti aggiornato sugli ultimi sviluppi nello sviluppo di applicazioni e leggi di più sul blog di Strategic Developer di Andrew Oliver su .com. Per le ultime notizie sulla tecnologia aziendale, segui .com su Twitter.