Gisteren schreven wij al even over 8 programmeertrends die "hot" of "not" zijn. Maar er is zoveel meer dat wij de lijst uitbreiden met nog 12 extra trends. Is Big data de Bom, kan kunstmatige intelligentie met pensioen? Wij leggen de trends van vandaag wederom onder de loep.

Ook met deze lijst zal niet iedereen eens zijn maar dat is juist wat programmeren zo ongelooflijk fascinerend maakt: snelle veranderingen, gepassioneerde discussies en plotselinge comebacks. Wat vorig jaar helemaal hip en happening was, is vandaag alweer stof aan het verzamelen. En net als je denkt een bepaalde technologie met pensioen te sturen, krijgt deze weer een geweldige opleving.

9. Hot: Big data analyseren zonder Hadoop - Not: Big data (Met Hadoop)

Lang niet alle problemen zijn op te lossen met big data-oplossingen. Grote bedrijven als Google of Yahoo houden al het webbrowser-verkeer bij en hebben met data die wordt gemeten in petabytes of zelfs yottabytes, maar zo'n vaart zal het voor de meeste, kleinere bedrijven niet lopen. Veel van deze data kan gewoon worden opgeslagen op een harde schijf of ssd en toch snel genoeg uitgelezen worden zonder al te veel vertraging op te lopen.

Er zijn uiteraard bedrijven die wel een zeer grote vraag hebben naar veel data die zo snel mogelijk op het scherm getoverd moet worden. Deze kunnen met tientallen machines die parallel van elkaar werken in een Hadoop cloud uit de voeten.

10. Hot: Kunstmatige intelligentie/machine learning - Not: Big Data

Niemand weet precies wat de term "kunstmatige intelligentie" precies bekent en dat is lekker makkelijk voor marketeers. Zeker nu de tem "Big data" z'n beste tijd gehad heeft. Ze grijpen de voorwaarden van kunstmatige intelligentie en upgraden de complexiteit van de gigantische algoritmen om door logfiles en clickstreams te ploegen.

11. Hot: Game frameworks - Not: Native game development

Als je vroeger een game wilde maken moest je een klein legertje aan ontwikkelaars inhuren die alles from scratch schreven in C. Tuurlijk, dat kostte handenvol geld maar het resultaat mocht er dan ook wezen. Vandaag de dag zijn er maar weinig mensen die de luxe van custom code kunnen veroorloven.

De meeste gameontwikkelaars hebben hun trots jaren geleden aan de kant geschoven en werken tegenwoordig met libraries. Is het jammer dat onze games niet meer met veel liefde handmatig in elkaar worden gezet maar in plaats daarvan in elkaar worden gestampt met, steeds maar weer, dezelfde engine? Nee! De meeste ontwikkelaars zijn blij met deze ontwikkeling. Zij hoeven zich niet meer bezig te houden met details en kunnen zich daardoor beter concentreren op de gameplay, het verhaal, de characters en de graphics. Mocht je nog echt hardcore willen coden om iets moois op je scherm te willen toveren, kan je je altijd nog inschrijven voor een hackathon, of los gaan in de demoscene.

12. Hot: Single-page Web apps - Not: Websites

De tijd dat de gemiddelde URL je naar een website stuurde vol statische tekst en plaatjes ligt ver achter ons. Kan je je het nog herinneren? Zet alle informatie in een netwerk van losse webpagina's en noem het een website. Het designteam was uren bezig te discussiëren over hoe de sitemap eruit zou moeten zien om het navigeren op de website zo makkelijk mogelijk te maken.

Nieuwe web apps zijn front-ends voor grote databases die zijn gevuld met content. Als een web app informatie wil, haalt hij deze uit de database en stopt deze in de lokale gietvorm. Het is niet meer nodig om alle data op te leuken met alle web extra's, die je vroeger gebruikte om een pagina er mooi uit te laten zien. De data laag staat volledig log van de presentatie en opmaak laag. Dit heeft onder andere te maken met de opkomst van mobiele browsers. Een enkele, responsieve webpagina die werkt als een app is het antwoord. Dat werkt een stuk fijner dan voor elke pagina navigeren naar de appstore.

13. Hot: Mobile web apps - Not: Native mobile apps

Stel, je hebt een geweldig idee voor mobiele content. Je zou dan aparte versies kunnen schrijven voor iOS, Android, Windows 8/10 en misschien zelfs BlackBerry OS, Jolla, Ubuntu etc. Elke versie heeft een apart team nodig die weer een andere programmeertaal "spreekt".

Of... je bouwt één HTML app en plaatst deze op een website. Deze web app werkt op praktisch elk platform en als er iets gewijzigd moet worden, hoef je niet meteen te rennen naar de app store. Nu de HTML layer steeds sneller wordt en ook nog eens wordt uitgevoerd op snellere chips, is het een waardige concurrent voor native apps.

14. Hot: Android - Not: iOS

Deze alinea zal aardig wat fanboys voor de kop stoten, maar helaas is het wel waar. Apple heeft het altijd goed gedaan met z'n iDevices en het platform heeft een hoop fans. De UI is rijk en geavanceerd en de hardware is geweldig. Maar als je kijkt naar de verkopen, wint Android het met gemak. Sommige rapporten zeggen zelfs dat maar dan 80 procent van alle verkochte smartphones een Android-toestel is.

Dit heeft onder andere te maken met de prijzen van de toestellen. Het gemiddelde iOS-apparaat kost nogal wat terwijl er voor elk budget wel een Android-apparaat voorhanden is. Maar een andere factor kan ook het open source-effect zijn. Praktisch elke fabrikant kan wel een Android-apparaat maken en dat doen ze ook. Grote tablets, kleine tablets, camera's tv's en zelfs koelkasten. Niemand hoeft toestemming te vragen aan Google om iets te bouwen. Als ze een idee hebben, kunnen ze direct aan de slag.

15. Hot: Github - Not: CV's

Je kan natuurlijk altijd kijken wat een sollicitant allemaal kan door zijn of haar opgedofte CV te lezen. Maar als je op zoek bent naar een ontwikkelaar kan je misschien beter dien's code doorspitten. Je kan er zoveel meer van leren. Schrijft iemand nette code en goede comments? Spenderen ze te veel tijd aan het verdelen van items in kleine classes die maar weinig doen? Is er een echte architectuur met ruimte voor uitbreiding? Al deze vragen kunnen worden beantwoord door naar de code te kijken.

Daarom wordt het meewerken aan open source projecten steeds belangrijker als je op zoek bent naar een baan. Het delen van propriétaire code is moeilijk, maar open source code is een stuk makkelijker tentoon te stellen.

16. Hot: Huren - Not: Kopen

Vroeger hadden bedrijven hun eigen datacenter. Er werd personeel ingehuurd dat de computers moest beheren. Tegenwoordig ligt dat anders. De computers, het personeel en de software worden "uurtje factuurtje" gehuurd. Niemand wil meer te maken hebben met het gedoe van alles in eigen bezit en beheer hebben. Het is niet per sé een slecht idee, tenminste, totdat je website viraal gaat en je je blauw betaalt voor elke klik.

17. Hot: Cloud complexiteit - Not: Cloud simpliciteit

Toen cloud computing nog in de kinderschoenen stond, zag je dat verkopers vooral de nadruk legde op hoe makkelijk het allemaal was. Met één druk op de knop had je een draaiende machine. Simpliciteit was koning.

Tegenwoordig zijn mensen bezig met het zoeken naar de juiste machine voor de juiste taak. Er zijn tientallen machineprofielen beschikbaar en de meeste cloud providers ondersteunen vooral de wat oudere modellen. Ze bieden wel allemaal een uniek niveau wat prestaties betreft dus benchmark ze eerst wel even om te kijken welke het voordeligst is voor jou. Is het 't waard om 12 cent per uur te besparen door voor een oplossing te gaan met minder RAM? Als er voor 100 machines per maand betaalt, zeker weten!

En om de boel nog wat complexer te maken, veel cloudbedrijven bieden verschillende opties aan en kortingen als je vooruitbetaalt of bulk inkoopt. Ook dat moet je in de spreadsheet zetten. Het is allemaal complex genoeg om er een online cursus "cloud cost engineering" te nemen.

18. Hot: Web Interfaces - Not: IDEs

Lang, lang geleden gebruikten mensen nog een command-line compiler. Later, integreerde iemand dat met een editor en andere tools om de IDE te creëren. En nu wordt de IDE overschaduwd door browser-based tools die je de code laten editen vanaf een werkend systeem. Als je niet blij bent met hoe WordPress werkt, kan je aan de slag met de ingebouwde editor die je de code direct kan laten wijzigen.. Microsoft's Azure laat je JavaScript schrijven rechtstreeks in de portal. Deze systeem hebben misschien niet de beste debugging-omgevingen en daarnaast is het editen van production code ook niet echt het allerveiligst, maar het kan soms goed van pas komen.

Kijk naar Cloud9, Aptana en Mozilla's WebIDE, maar kijk vooral verder. Web interfaces worden steeds krachtiger. Het is, bijvoorbeeld, mogelijk een volledig big data analyse project te bouwen via de website van Microsoft's Azure.

19. Hot: Node.js - Not: JavaEE, Ruby on Rails

De serverwereld heeft altijd al het multi-threaded model aangehangen. Het besturingssysteem verwerkte elke inefficiënt geprogrammeerde loop en balanceerde de load via verschillende threads.

Toen kwam Node.js met jet JavaScript callback model. De code werd vliegensvlug uitgevoerd, sneller dan men verwachtte en daarmee evolueerde JavaScript van een simpel speelgoed-taaltje voor het weergeven van alert boxes naar een supersnel totaalpakket.

20. Hot: PHP 7.0 - Not: Oude PHP

Vroeger was PHP een simpele manier om dynamische webpagina's te bouwen. Als je een beetje variatie nodig had, kon je simpele code tussen HTML tags zetten en je was klaar. Het was simpel genoeg om door webontwikkelaars te worden omarmd. Maar traag genoeg om ergernis op te wekken bij hardcore-programmeurs.

Dat was vroeger. Sommige PHP liefhebbers zijn aan de slag gegaan en oplossingen bedacht om PHP code sneller dan ooit uit te laten voeren door een Just-in-Time compiler mee te leveren. Een oplossing die ooit zorgde dat Java in een snelle oplossing veranderde. Met Tools als HipHop Virtual Machine en PHP 7.0 kan je oplossingen neerzetten die twee keer sneller reageert als de oudere versies. Wie lacht er nu, Node.js en Java!?

21. Hot: Just-in-time educatie - Not: Vier jaar van tevoren

Ok, eentje extra dan ;) Een opleiding via de computer volgen is niet nieuw meer. Iedereen kan tegenwoordig een videolectuur kijken en de boel versnellen, of juist vertragen met de video-controls. Ook fora spelen een steeds grotere rol en beide oplossingen vegen de vloer aan met de ouderwetse seminar-kamers.

Maar het ligt natuurlijk niet alleen aan de technologie. Het is ook de flexibiliteit van de cursus (en cursist). Mensen hoeven geen gigantische bedragen aan collegegeld meer op te hoesten voor colleges die maar voor een klein deel overeenkomen met je interesses. Waarom zou je nu een cursus volgen voor een compiler als je nog niet weet of je in de toekomst daadwerkelijk met die compiler aan de slag gaat? Als de baas wil dat je switcht van een relationele database naar een NoSQL-engine, kan er geïnvesteerd worden in een cursus die je precies dat leert. Je krijgt nieuwe, relevante informatie wanneer je het nodig hebt en je hoeft je brein niet langer vol te stouwen met ideeën die er niet meer toe doen.