News

Soundbyte 65: Oerend hard

15 oktober 2012

 

Op een zonnige zomerdag op een terasje in Enschede samen met een oud collega kwam mij ten oren dat hij naar de GOTO Conference in Aarhus Denemarken ging. Dus ik de volgende dag maar eens kijken wat die conferentie inhield. Ik zie namen voorbij komen van Anders Hejlsberg, Scott Hanselman en Martin Fowler; tracks over Agile, JavaScript, Big Data en NoSQL en dat dit congres niet word geleid door een van grote bedrijven zoals Microsoft, Google of Oracle. Dus al met al een interessant congres om aan deel te nemen, en zodoende reed ik dus op een zondagmorgen in oktober op de Duitse Autobahn onderweg naar Denemarken.

Red flags on the internet
De keynote van het congres werd gegeven door de oprichter van de Zweedse piraten partij Rick Falkvinge. Wat kan een politicus nu te vertellen hebben op een software development conferentie denk je dan. Na eerst een praatje over de ontstaansgeschiedenis van de partij en waar de beweging voor staat, zoals vrijheid op het internet en bescherming van persoonsgegevens. Iets waar bijna elke ICT’er zich wel ik kan vinden denk ik.

Het tweede deel van de keynote ging echter wel iets dieper. Namelijk over het feit dat er veel bedrijven en overheden zijn die nieuwe technologieën omarmen om deze vervolgens in de kiem te smoren. Dit is ook waar de term ‘Red flag’ vandaan komt. Ten tijde van de introductie van de automobiel in Engeland werd er een wet aangenomen dat een automobiel alleen was toegestaan wanneer deze werd bediend door 3 personen; één voor het sturen, één voor de motor en één persoon moest met een rode vlag voor de auto lopen om aan te geven dat er een auto aankomt. Dit zodat mensen en paarden niet zouden schikken en zo werd de auto dus een traag maar veilig vervoermiddel om personen en goederen naar de treinstations te brengen. Vervolgens heeft deze wet ervoor gezorgd dat de automobiel industrie in Engeland 20 jaar achterstand heeft opgelopen ten opzichte van Italië en Duitsland en ik geloof dat ze dit tot op heden nog steeds niet hebben ingehaald. En dezelfde soort fouten herhalen zich regelmatig, nu in de USA die niet geloofde in de groene en elektrische auto met als gevolg dat Toyota en Honda het stukken beter doen dan General Motors.

Mensen met macht , gebruiken hun macht, om hun macht te behouden. Ze beschermen hun eigen belangen, terwijl dit meestal niet in het publieke belang is. Maar uiteindelijk verliezen ze het dan toch. Enkele voorbeelden:

  • Fotocamera bedrijven; Kodak en Polaroid vs. digitale fotografie
  • Drukkerijen en uitgeverijen; Blogging, wikipedia etc. vs. kranten, encyclopedieën etc.
  • Copyright industrie; niet de content beschermen, maar de drager beschermen
  • Banken; 5% per transactie vs. Cryptocurrensies
  • Telecom; betalen per minuut, 140 char SMS vs VOIP, WhatsApp etc
  • Overheden; power to the people (Hippies, Arabische lente etc)

Maar we kunnen ook naar onze eigen branche kijken. Wat is de meerwaarde voor een klant of medewerker om met een detacheringbureau in zee te gaan? Terwijl de beschik-, betaal- en bereikbaarheid van freelancers via het web haast net zo groot danwel groter is. Je zult dus als bedrijf wat extra’s moeten leveren om ook echt van meerwaarde te zijn voor je klanten en ook je medewerkers. Want anders ga je het op de lange termijn toch echt verliezen.

Java en .Net zijn dood; lang leve JavaScript
Na het zien van sessies over TypeScript van Anders Hejlsberg (Microsoft Evangelist), ‘The browser is dead…’ van Dan North (Java, Agile, Lean) en verschillende sessies over mobile development op iOs en Android is mij ieder geval wel een blik in te toekomst gegeven van waar de markt zich op dit moment naartoe beweegt. De browser wordt steeds meer gezien als onafhankelijk platform wat al je problemen op interoperabiliteit oplost of dit nu draait op een Windows, iOs of Linux platform, of het nu een desktop, tablet of telefoon is, dat maakt voor je browser en dus je App niet meer uit. Je gaat dus ook je nieuwe App niet meer schrijven met .Net, Java of Objective-C, maar met behulp van JavaScript, HTML5 en CSS3.

Wat voor een toekomst biedt dat ons ontwikkelaars denk je dan. Van programmeren in JavaScript gaan de meeste harten van ontwikkelaars nou niet echt sneller slaan. Principes van Object Orientatie, modulair programmeren en strong types bestaan niet echt, en zoals de naam al zegt is scripting natuurlijk niet hetzelfde als programmeren. Microsoft heeft dit aardig goed gezien met de recente introductie van TypeScript wat veel lijkt op de scripttaal CoffeeScript. Hiermee is het mogelijk om toch binnen een IDE volgens de principes en methodes die de meeste huidige ontwikkelaars hanteren te programmeren maar dan met JavaScript. Want de TypeScript ‘compiler’ zet dit om naar puur JavaScript en je kunt gebruik maken van de populaire libraries zoals Jquery (mobile) en Node.js.

Dus is het dan toch mogelijk dat in de toekomst Java en .Net specialisten hand-in-hand gaan en het enige verschil tussen beide werelden is dat de ene groep in Visual Studio werkt en de andere groep in Eclipse. Vooralsnog kunnen we nog niet zonder onze platform specifieke libraries, maar de www technieken komen met rappe schreden dichterbij en dat is toch iets waar elke ontwikkelaar rekening mee zal moeten houden.

Normaal
Na drie dagen conferentie en twee dagen vakantie in Kopenhagen; na het zien zien en horen van wat allemaal hot is in de software ontwikkeling en een bezoekje aan de anarchistische commune in Kopenhagen; zit je toch weer gewoon op je project bij de klant en gaat het ‘normale’ leven weer verder. Maar dan realiseer je je toch wel hoe belangrijk het is om om je heen te blijven kijken. Want anders word je net als op de Duitse Autobahn ‘Oerend Hard’ ingehaald terwijl je denkt dat je dat niet zal gebeuren wanneer je 180 km/h rijdt.

Voor de liefhebbers staan de slides van de meeste sessies al online en zullen in de loop van de tijd ook de video’s erbij worden gezet. Mocht je nog in het duister tasten over wat NoSQL nu inhoudt en waar je het voor moet/kunt gebruiken dan raad ik je aan de sessie van Martin Fowler te bekijken zo gauw deze beschikbaar is. Of je bestelt natuurlijk zijn boek.

Groet’n Niek

2 Responses to Soundbyte 65: Oerend hard

  1. Daan van Berkel says:

    Ik ben het met je eens dat in de nabije toekomst JavaScript een grote rol gaat spelen, en dat je als software ontwikkelaar niet meer om deze ontwikkeling heen kunt.

    Waar ik het niet mee eens ben is de opmerking “Principes van Object Orientatie, modulair programmeren en strong types bestaan niet echt, en zoals de naam al zegt is scripting natuurlijk niet hetzelfde als programmeren.” Deze opmerking is op zijn minst “tendentieus, ongefundeerd en nodeloos kwetsend”.

    Sinds de dag dat JavaScript gereleased werd kent het Object Orientatie. Niet de voor veel ontwikkelaars bekende class based variant maar een minstens net zo krachtige prototype based variant. Douglas Crockford heeft een mooi artikel geschreven dat je aan het denken zet over dit mechanisme (http://javascript.crockford.com/prototypal.html).

    Modulair programmeren wordt door frameworks als requirejs (http://requirejs.org) of AMD (https://github.com/amdjs/amdjs-api/wiki/AMD) mogelijke gemaakt. Beide frameworks implementeren een door het CommonJS project voorgestelde module systeem.
    Zelfs zonder frameworks bied JavaScript via haar closures mogelijkheden om modulair te programmeren. Het boek JavaScript: The Good Parts van Douglas Crockford gaat hier dieper op in.

    Het is waar dat JavaScript dynamisch en zwak getypeerd is. Ik heb echter nog nooit een overtuigend argument gehoord dat een dergelijk type systeem slechter is dan een statisch en sterk getypeerd systeem.

    Ik gebruik voor programmeren de volgende definitie, het schrijven van een computer programma, i.e. het vastleggen van een reeks van instructies voor een computer. Met deze definitie is scripting wel degelijk programmeren.

    Ik zie de problemen met JavaScript dus niet zo sterk. Ik ben dan ook een ontwikkelaar wiens hart sneller gaat slaan van het programmeren in JavaScript.

  2. niekj says:

    Daan bedankt voor je opmerking. Ik heb het er bewust ook een beetje scherp en gechargeerd neergezet om de discussie hier rond los te laten barsten 🙂
    Ik weet namelijk dat veel ontwikkelaars er wel zo over denken. En aangezien OO wel mogelijk is in JavaScript voelt het toch een beetje getrukeerd t.o.v. bv Java of C#. Wat ik voornamelijk wou aangeven dat na het zien van TypeScript dit in ieder geval wel een stuk natuurlijker aanvoelde en dat dit soort oplossingen een brug kunnen slaan tussen beide werelden.

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *