6 technologies que vous devriez apprendre cette année

La technologie évolue vite! Si vous êtes coincé dans votre cube en train d'éditer du code Java 1.3 ou de jouer avec PowerBuilder, vous vivez probablement dans une région du pays où il n'y a qu'un seul employeur. La plupart d'entre nous doivent comprendre ce que nous devons apprendre, ou du moins nous familiariser, juste pour garder notre carrière sur la bonne voie.

Si vous souhaitez rester recherché et augmenter votre tarif, vous devez vous familiariser avec les technologies suivantes. Pourquoi m'écouter? Parce que j'obtiens une vue d'ensemble unique en tant que développeur à cheval sur des rôles de gestion, de marketing et de vente. Mon enquête informelle dit: C'est le moins que vous devriez connaître d'ici l'année prochaine.

1. Hadoop. Si vous n'apprenez rien d'autre cette année, faites-en Hadoop. Vous devez savoir ce qu'est MapReduce et comment l'utiliser. Franchement, quelle que soit la mesure du buzz, de la popularité ou de la demande, Hadoop domine le marché des nouvelles technologies.

Lisez le tutoriel JavaWorld: Programmation MapReduce avec Apache Hadoop .

Vous pourriez apprendre d'autres technologies, mais Hadoop est plus difficile - et vous avez besoin de plus de ressources pour aller plus loin que «bonjour le monde». L'une des tâches les plus difficiles est de trouver un sujet assez simple pour vous apprendre, mais pas si simple que vous n'apprendrez rien. En outre, trouver un ensemble de données suffisamment volumineux n'est pas aussi facile que vous pourriez le penser. Il y en a des célèbres, comme une grosse décharge de Wikipedia. Vous pourriez peut-être le combiner avec d'autres éléments et créer une sorte de graphique social montrant qui aime éditer qui. Hortonworks a démontré un concept similaire avec GitHub.

Une fois que vous vous salissez les mains, vous commencerez à voir d'autres types de questions auxquelles vous souhaiteriez que MapReduce réponde. Il existe plusieurs fournisseurs dans cet espace, des entreprises spécifiques à Hadoop telles que Hortonworks aux fournisseurs multitechnologies comme Pivotal (spin-off VMware / EMC) et aux fournisseurs existants comme Oracle, qui agrafent Hadoop à côté de leurs produits. Chacune de ces sociétés est suffisamment capitalisée pour voler en orbite.

2. MongoDB. Bien que n'étant pas aussi gros que Hadoop, MongoDB est toujours un gros problème et beaucoup plus facile à apprendre. Les bases de données de documents comme MongoDB s'adaptent bien aux grandes applications AJAX ou aux back-ends orientés objet. Ils évoluent également bien. Il y en a plus d'un à essayer, mais vous devriez probablement commencer par Mongo, car ce sera le mieux pour vous du point de vue de votre carrière - la plupart des entreprises connaissent déjà la base de données. La société derrière MongoDB, 10gen, est extrêmement bien capitalisée avec un trésor de guerre de 81 millions de dollars.

3. Scala. La programmation simultanée évolue, tout comme les types d'applications que nous sommes invités à créer en tant que développeurs. Il n'y a pas si longtemps, toutes les applications de trading à faible latence étaient écrites en C ou C ++; maintenant ils sont écrits en Java.

Obtenez une introduction pratique à Scala: apprenez Scala avec Specs2Spring .

Les nouvelles techniques de programmation orientée objet hautement concurrente et fonctionnelle font souvent leurs débuts dans Scala, puis sont intégrées à Java ou à d'autres langages populaires des années plus tard. Scala est plus qu'un langage ou un «bonbon syntaxique» - c'est un écosystème de bibliothèques et d'idées telles que Akka et Play. Que vous aimiez Scala ou que vous la détestiez, vous devez comprendre les idées qu'elle englobe. Avec le créateur de Spring Framework, Rod Johnson, qui rejoint le conseil d'administration de Typesafe et d'une banque de 20 millions de dollars, c'est un pari sur lequel vous pouvez compter.

4. Node.js. Je ne dis pas que vous devriez devenir développeur JavaScript et renoncer à tout le reste. Je dis que vous devriez avoir un avant-goût des systèmes basés sur les événements et non bloquants comme Node.js et au moins un langage dynamique comme JavaScript sur le serveur. Vous pourriez faire Ruby, mais vous manqueriez cette partie non bloquante basée sur les événements. Il y a des raisons de ne pas aimer Node.js (c'est un thread unique), mais il y a aussi beaucoup à aimer. De nombreuses personnes sérieuses utilisent Node.js, qui dispose d'une communauté dynamique et d'un large soutien de l'industrie - tout le monde, de Microsoft à Cloudbees en passant par VMware et au-delà. Le créateur bien financé de Node.js (plus de 112 millions de dollars), Joyent, n'essaie pas de produire Node.js, mais l'offre cloud de Joyent se différencie par un PaaS centré sur Node.js.

Avez-vous entendu parler de Vert.x? obtenez un didacticiel d'introduction à ce cadre de messagerie d'entreprise basé sur Node.js, mais basé sur la JVM.

5. C / C ++ ou Assembly.J'ai eu du mal à ne pas laisser cela comme Assemblée - ou même C et omettre le cousin hybride bâtard (Linus l'a mieux dit dans son discours NSFW). Vous n'avez pas besoin d'être un maître de la bibliothèque standard ou de la STL ou de quelque chose de ce genre, mais vous devez savoir comment un ordinateur fonctionne réellement. Vous devez comprendre comment la mémoire fonctionne à proximité du métal et avoir une idée du fonctionnement des compilateurs. Je n'ai peut-être pas utilisé MASM depuis des années, mais j'ai continuellement appliqué les connaissances que j'ai acquises en l'apprenant. Au fur et à mesure que la technologie se développe de plus en plus de haut niveau et d'abstraction, les comprendre à un bas niveau devient en fait plus utile lors du développement ou du débogage de systèmes hautement évolutifs et hautes performances. Si vous travaillez en tant que développeur Ruby, personne ne vous demandera de connaître ce genre de choses, mais ils peuvent vous demander de résoudre des problèmes que vous comprendrez beaucoup mieux si vous avez cette expertise.Les personnes qui peuvent penser de cette façon se révéleront inestimables à maintes reprises.

6. Git. Ecoutez, si vous ne connaissez pas Git et n'avez pas configuré de compte GitHub ou deux, vous êtes en retard dans la partie des développeurs efficace et bien connue. Vous auriez vraiment dû l'apprendre l'année dernière. Bien sûr, si vous utilisez toujours ClearCase dans votre poste actuel, vous devriez soit recevoir une prime de risque grave, soit quitter et trouver un emploi où vous n'avez pas à utiliser ClearCase.

Beaucoup d'autres compétences sont demandées, mais ces six font le buzz. L'acquisition de ces compétences vous aidera à devenir non seulement l'un des enfants cool du quartier, mais aussi l'un des enfants payés.

Voilà ma liste. Avez-vous quelque chose à ajouter? Dites-moi dans les commentaires (Ajouter un commentaire) ci-dessous.

Cet article, «6 technologies que vous devriez apprendre cette année», a été initialement publié sur .com. Tenez-vous au courant des derniers développements en matière de développement d'applications et lisez davantage sur le blog des développeurs stratégiques d'Andrew Oliver sur .com. Pour les dernières nouvelles de la technologie commerciale, suivez .com sur Twitter.