Programiranje

6 tehnologij, ki bi se jih morali naučiti letos

Tehnologija se hitro premika! Če ste zaljubljeni v urejanje kode Java 1.3 ali se zafrkavate z PowerBuilderjem, verjetno živite na območju države, kjer je samo en delodajalec. Večina od nas mora ugotoviti, česa se moramo naučiti ali vsaj spoznati, samo da bomo nadaljevali svojo kariero.

Če želite ostati iskani in zvišati svojo stopnjo, morate biti seznanjeni z naslednjimi tehnologijami. Zakaj me poslušati? Ker imam edinstven ptičji pogled kot razvijalca, ki presega vodstvene, tržne in prodajne vloge. Moja neformalna raziskava pravi: To je najmanj, s čimer se morate seznaniti do naslednjega leta.

1. Hadoop. Če se letos ne naučite nič drugega, naj bo Hadoop. Vedeti morate, kaj je MapReduce in kako ga uporabljati. Odkrito povedano, s kakršnimi koli meritvami, priljubljenostjo ali povpraševanjem Hadoop prevladuje na trgu novejših tehnologij.

Preberite vajo JavaWorld: MapReduce programiranje z Apache Hadoop.

Lahko bi se naučili drugih tehnologij, toda Hadoop je težji - in potrebujete več virov, da pridete dlje od »zdravo, svet«. Ena najtežjih nalog je najti temo, ki je dovolj preprosta, da se jo lahko naučite, vendar ne tako preprosta, da se ne bi ničesar naučili. Tudi iskanje dovolj velikega nabora podatkov ni tako enostavno, kot si morda mislite. Obstajajo znani, kot je veliko smetišče Wikipedije. Mogoče bi ga lahko kombinirali z drugimi elementi in ustvarili nekakšen družabni graf, ki prikazuje, kdo koga rad ureja. Podoben koncept je Hortonworks pokazal z GitHubom.

Ko si umažete roke, se vam bodo začela pojavljati druga vprašanja, na katera želite, da MapReduce odgovori. V tem prostoru je več prodajalcev, od Hadoopo specifičnih podjetij, kot je Hortonworks, do multitehnoloških ponudnikov, kot je Pivotal (VMware / EMC spinoff), in obstoječih prodajalcev, kot je Oracle, ki Hadoop spenjajo na rob svojih izdelkov. Vsako od teh podjetij ima veliko začetnico, da lahko poleti v orbito.

2. MongoDB. Čeprav ni tako velik džungeraut kot Hadoop, je MongoDB še vedno velik posel in se ga je veliko lažje naučiti. Podatkovne baze dokumentov, kot je MongoDB, se dobro prilegajo velikim aplikacijam AJAX ali objektno usmerjenim ozadjem. Tudi lepo se skalirajo. Poskusite lahko več, toda verjetno bi morali začeti z Mongom, saj bo za vas najbolje kariera - večina podjetij je že seznanjena z bazo podatkov. Družba, ki stoji za MongoDB, 10gen, je izredno dobro kapitalizirana z 81 milijoni ameriških dolarjev.

3. Scala. Spreminja se sočasno programiranje in spreminjajo se tudi vrste aplikacij, ki jih moramo razviti kot razvijalci. Nedolgo nazaj so bile vse aplikacije za trgovanje z nizko zakasnitvijo napisane v jeziku C ali C ++; zdaj so napisani v Javi.

Poiščite praktičen uvod v Scalo: Naučite se Scala s programom Specs2Spring.

Novejše tehnike v zelo hkratnem in funkcionalnem objektno usmerjenem programiranju pogosto nastopijo v Scali, nato pa leta pozneje postanejo Java ali drugi priljubljeni jeziki. Scala je več kot le jezik ali »skladenjska sladkarija« - je ekosistem knjižnic in idej, kot sta Akka in Play. Ne glede na to, ali vam je Scala všeč ali jo sovražite, morate razumeti ideje, ki jih zajema. Ko se je ustvarjalec Spring Framework Rod Johnson pridružil upravnemu odboru Typesafe in banki v višini 20 milijonov dolarjev, je to ena stava, na katero lahko računate.

4. Node.js. Ne pravim, da bi morali postati razvijalec JavaScript in se odpovedati vsem ostalim. Pravim, da bi morali na strežniku okusiti neblokirajoče sisteme, kot je Node.js, in vsaj en dinamičen jezik, kot je JavaScript. Lahko bi naredil Ruby, vendar bi zamudil tisti neblokirajoči del, ki temelji na dogodkih. Obstajajo razlogi, da Node.js resnično ne maram (je enojni), vendar je tudi veliko radi. Veliko resnih ljudi uporablja Node.js, ki ima živahno skupnost in široko industrijsko podporo - vsi, od Microsofta do Cloudbees-a do VMware-a in naprej. Dobro financirani ustvarjalec (112 milijonov dolarjev) podjetja Node.js ne poskuša producirati Node.js, vendar se Joyentova ponudba v oblaku razlikuje od PaaS, osredotočenega na Node.js.

Ste že slišali za Vert.x? dobili a uvod v vadnico temu sporočilu za podjetja, ki temelji na Node.js, vendar je zgrajen na JVM.

5. C / C ++ ali Montaža. Trudil sem se, da tega ne bi pustil kot skupščino - ali celo C in izpustil mešanega hibridnega bratranca (Linus je to najbolje rekel v svojem govoru NSFW). Ni vam treba obvladati standardne lib ali STL ali katere koli podobne stvari, vendar bi morali vedeti, kako računalnik dejansko deluje. Morali bi razumeti, kako pomnilnik deluje blizu kovine, in imeti nekaj predstave o delovanju prevajalnikov. Morda MASM nisem uporabljal že leta, vendar znanje, ki sem ga pridobil z učenjem, nenehno uporabljam. Ko tehnologija narašča bolj visoko in abstraktno, je njihovo razumevanje na nizki ravni dejansko bolj koristno pri razvoju ali odpravljanju napak zelo razširljivih in visoko zmogljivih sistemov. Če delate kot razvijalec Ruby, vas nihče ne bo zahteval, da poznate te stvari, vendar vas bo morda prosil, da odpravite težave, ki jih boste veliko bolje razumeli, če imate to znanje. Ljudje, ki znajo razmišljati na tak način, se bodo vedno znova izkazali za neprecenljive.

6. Git. Poglejte, če Gita ne poznate in še niste ustanovili računa GitHub ali dva, zamujate na učinkovito in znano zabavo razvijalcev. Res bi se ga moral naučiti že lani. Seveda, če še vedno uporabljate ClearCase na svojem trenutnem položaju, bi morali bodisi prejemati resne nevarnosti ali pa odnehati in dobiti službo, kjer vam ni treba uporabljati ClearCase.

Zahteva se veliko drugih veščin, a teh šest prinaša glas. Pridobivanje teh veščin vam bo pomagalo postati ne le eden izmed kul otrok v bloku, ampak tudi eden od plačanih otrok.

To je moj seznam. Ali bi kaj dodali? Povejte mi v komentarjih (dodajte komentar) spodaj.

Ta članek, "6 tehnologij, ki bi se jih morali naučiti letos," je bil prvotno objavljen na .com. Spremljajte najnovejše dosežke pri razvoju aplikacij in preberite več o Andrew Oliver's Strategic Developer blog na .com. Za najnovejše novice o poslovni tehnologiji spremljajte .com na Twitterju.

$config[zx-auto] not found$config[zx-overlay] not found