Nieuwsbrief

woensdag 28 oktober 2015

Ieder bedrijf profiteert van een Digitale Academy

Hoe zorg je ervoor dat nieuwe medewerkers bekend worden met de visie en strategie van de organisatie? Hoe zorg je ervoor dat zij de regels van integriteit kennen en deze meetbaar is? Hoe zorg je ervoor dat de afdeling verkoop een uniform verhaal vertellen met de juiste argumenten en hoe train je dat? En hoe zorg je ervoor dat je klanten alles weten van jouw producten en diensten? Of doen ze de basiskennis van hulpverlening op en kennen de procedures van een ontruiming?

Dit zijn allemaal voorbeelden wat een digitale academy toevoegd. Nu zijn er drie grote bezwaren tegen dit principe: Reanimeren of een brand blussen leer je niet achter een beeldscherm. Een goed verkoopgesprek zonder feedback ook niet. Daarnaast zul je met een veredelde powerpoint presentatie als content ook niet bereiken wat je voor ogen hebt en in het verlengde daarvan, goede content zal wel heel duur zijn.

Hoe ga je met deze bezwaren om?

100% digitaal is geen 100% oplossing, in situaties heb je dus praktijk training nodig. Het zou een voordeel zijn als de academy deze vorm van blended learning ondersteund. Dus dat de cursist ziet wanneer de praktijk trainingen plaatsvinden en zich met een klik erop in kan schrijven. In het verlengde daarvan kan ook het resultaat van de fysieke training weer opgeslagen worden in de academy.

Zo kan de certificering bestaan uit digitaal en praktijk. 

Het genereren van goede content is niet triviaal, daar zijn specifieke competenties voor nodig. Zo geloof ik dat inhoud in kleine relevante delen moet worden opgedeeld en is het raadzaam als deze aansluit bij het (taal) niveau van de cursist. Door bijvoorbeeld een nul-meting uit te voeren kan bij een slecht resultaat eerst andere content worden aangeboden voordat de eigenlijke training begint. Het opdelen in kleine stukken inhoud heet micro learning en inhoud aanbod aanpassen aan het niveau van de cursist heet adaptive learning. 

Dan als laatste bezwaar: De prijs. Voor goede inhoud heb je meerdere mensen nodig, daarnaast moet inhoud getoetst worden en is het belangrijk dat inhoud er aantrekkelijk uit ziet. Een goede wijn uit een knijppak smaakt nu eenmaal minder. Een bedrijf dat ervaren is met het maken van hoogwaardige content heeft strakke werkwijzen nodig om de kosten zo laag mogelijk te houden. Hiervoor is ervaring, filosofie en continu verbetering nodig. Goede gerichte content zal niet snel goedkoop worden. Dit hoeft ook niet per se. Uiteindelijk is het een afweging tussen kosten en de waarde die het oplevert. 

Doorgaan op traditionele wijze leidt vaak tot hogere kosten en lagere opbrengst. Een klassikale training is een piekmoment. Alleen kun je maar beperkte hoeveelheid kennis onthouden en oefenen in één dag en zonder herhaling zal deze kennis vaak snel wegzakken. Juist hier kan een digitale academy een oplossing zijn. Denk aan periodieke mini toetsen op je mobiel, eventueel met een speelelement dat je resultaten kunt vergelijken met collega's. Of automatische notificaties als er nieuw materiaal beschikbaar is. 

Een goede digitale academy betaal je in lijn met de waarde die het toevoegt. Overigens geloof ik met digitaal leren niet in big bang scenario's waarin je meteen grote hoeveelheden content aanbied. Beter begin je klein en probeer je met een korte iteratie te toetsen of een digitale academie waarde toevoegt. Als dit zo is, dan ga je een stapje verder. Levert het echter te weinig op dan kun je nog stoppen of bekijken waarom het te weinig oplevert. 

Dan zijn er nog een aantal randzaken van belang. Je wilt niet dat een digitale academy nog meer administratieve last met zich meebrengt. Hoe ga je om met mensen toegang verlenen? Maar net zo belangrijk: Hoe zorg je ervoor dat mensen geen toegang meer hebben als ze bijvoorbeeld uit dienst gaan? Integratie bijvoorbeeld met een al in gebruik zijnde systeem zoals Windows Active Directory zou administratieve belasting al significant lager maken, of denk aan het aanbieden van zelfregistratie. 

Daarnaast biedt een goede academy ook het ontsluiten van data aan middels een Application Programming Interface (API), niet nog een eiland en puntsoplossing in het applicatie landschap. 

zaterdag 3 oktober 2015

It’s not about the cloud stupid!

Veelal wordt er discussie gevoerd over naar de cloud gaan of niet. Zelf schrijf ik natuurlijk veel over cloud computing, maar roep ik ook dat cloud computing mij weinig boeit. Klinkt tegenstrijdig, maar is dat niet als je verder kijkt. Lees je even mee?


Cloud computing gaat over IT, IT gaat tegenwoordig over alles wat met computers te maken heeft. Zelfs als je webpagina's maakt dan zit je tegenwoordig "in de IT" en heet het deelgebied front-enden. Aan het stuk werken wat de eindgebruiker ziet. IT is ook een onderdeel of afdeling geworden van ieder bedrijf. Ieder bedrijf heeft computers, een netwerk en ook een website. Grote IT projecten mislukken nogal eens lezen we op het nieuws en het is veelal een kostenpost.


Legacy

Kijk eens naar de manier waarop IT ontstaat en groeit binnen een bedrijf. Het begint met een netwerkje en een een server voor bestanden en email. Als er applicaties bij komen is daar ook een server voor nodig en die applicaties moeten hun data ergens kwijt en zo komt dat op een database server terecht. Voor alle software die je hebt moet je licenties aanschaffen en als je groeit wordt dat uitdagender om bij te houden, net als wat gebruikers met hun PC kunnen doen. Bedrijven die al langer draaien en behoorlijk gegroeid zijn hebben IT die ook al jaren mee gaat en veelal gebaseerd zijn op het model wat ik zonet beschreven heb. Door de opkomst van het internet en het steeds krachtiger maken van de browser is het ook mogelijk om bepaalde software niet meer in licentie vorm te kopen, maar af te nemen als dienst over het internet. De uitdaging daarbij is: Hoe zorg je ervoor dat als iemand uit dienst gaat, niet meer gebruik kan maken van de dienst die over het internet afgenomen wordt?


Een overgroot gedeelte van alle bedrijven van enig formaat gebruikt "Active Directory" van Microsoft voor het beheren van gebruikers account op het eigen netwerk. Als je software aan de Active Directory kunt koppelen heeft dat als voordeel dat als je het account opslot zet in de AD, dat de gebruiker er direct niet meer bij kan en geweerd wordt op het netwerk.


Op het moment dat er nieuwe software aangeschaft word is er vaak integratie nodig. Je kunt bijhouden wie je klanten en prospects zijn in een CRM, maar je wilt wellicht ook een koppeling om te zien hoeveel omzet je met die klant vorig jaar gedraait hebt en hoe dit zich verhoudt met de omzet afgelopen maand. Onder druk van budget en deadlines moet er vaak gekeken worden naar de snelste manier om dit soort zaken te regelen. Dit heeft als gevolg dat het zijn flexibiliteit verliest of dat het niet netjes gedocumenteerd wordt. En voila, het systeem wordt groter, het functioneert, maar door de tijd heen verouderd het doordat er krachtigere nieuwe mogelijkheden komen. Dit noemt met Legacy. De kosten om het systeem in stand te houden lopen jaarlijks op, veranderingen worden steeds duurder en riskanter om door te voeren en de kosten om er afscheid van te nemen lopen daardoor ook steeds verder op. Dit is het probleem waar iedere organisatie tegenaan loopt.


Leveranciers van software diensten beloven echter de oplossing die vaak aantrekkelijk geprijsd is en jouw als klant ontzorgt. Maar als je het onderliggende probleem negeert -dus waar je staat en vandaan komt- dat bouw je gewoon verder aan een inflexibel gedrocht. Nu is dat geen probleem als je omzet toeneemt, of de concurrent dezelfde problemen ervaart. Het wordt wel een probleem als er alternatieven of nieuwkomers komen die aanbieden wat jij aanbiedt, maar zonder de technologische schuld die legacy met zich meedraagt.


Verlichting

De weg naar verlichting kun je echter niet met een olifantenpaadje bereiken. Er is gewoon noeste arbeid, visie en leiderschap voor nodig om je organisatie aan te laten passen aan de veranderende wereld die bovendien versnelt verandert.


Nu is het verleidelijk om IT uit te besteden of "naar de cloud te gaan", maar je moet je huidige organisatie die functioneert respecteren anders zullen al je veranderingen niet brengen wat je voor ogen hebt, of wat je beloofd is.


Stukjes legacy verbinden met nieuwe mogelijkheden trekt je alleen maar verder het moeras in. Het hybride scenario wat tegenwoordig "hot" is lost je probleem niet fundamenteel op. Met het hybride scenario wordt bedoeld dat je de huidige omgeving verbind aan de mogelijkheden die via het internet -vaak als cloud aangeduid- aangeboden worden. Nu zal dit misschien een noodzaak zijn, maar hybride is geen eindpunt maar een doodlopende weg als je er in blijft hangen.


Je moet terug om te kijken waar je IT probleem ontstaan is. Het groeien en uitbreiden van functionaliteit onder druk van te krappe budgetten, te strakke deadlines en niet IT mensen die niet inzien dat er een goede en een slechte manier is om nieuwe dingen te omarmen. In IT geldt misschien nog meer dan elders dat de prijs van "even snel" extreem duur achteraf wordt.


Hoe IT gedaan werd is niet goed. IT is namelijk niet één ding. Natuurlijk met SAP kun je zeer veel dingen in één systeem doen, maar naast dat dit per definitie verouderd is, is het niet compleet. IT is dus een verzamelingen van kleinere systemen die als geheel voor een organisatie moet functioneren. Als je ook in ogenschouw neemt dat er steeds meer verschillende apparaten zijn en verschillende operating systemen en dat we vervolgens deze ook op meer plaatsen moeten kunnen gebruiken beseft dat vaste geïnstalleerde gespecialiseerde software die meer kost dan 1 click om te installeren je probleem verergert. IT is niet meer gebonden aan één kantoor en vaste plekken. IT die niet flexibel is, is te duur om in stand te houden.


Goede software dient dus niet gebonden te zijn aan een plek en dus eigen server plaatsen op een locatie loopt ten einde. Er is geen toekomst voor vaste IT systemen in je pand. Dit is welliswaar wat kort door de bocht. Een bank transactie server zal niet snel mobiel worden, maar de stelling gaat wel op voor zeg 99% van alle gevallen.


The big three

Nu wordt het tijd om de grote drie aanbieders te pluggen van een nieuwe manier om met IT om te gaan. Dit zijn Microsoft Azure, Google Compute Engine (GCE) en Amazon Webservices (AWS). Dit zijn er slechts drie maar ze hebben een aantal dingen gemeen. Ze groeien enorm snel, zijn op alle continenten aanwezig en bieden nieuwe mogelijkheden om anders met IT om te kunnen gaan. Ze kunnen het niet permitteren om te verouderen, dat zou het einde van de dienst betekenen.


Wat zijn de eigenschappen van deze aanbieders? Ten eerste een zeer lage drempel om in te stappen. Ieder mens kan binnen vijf minuten aan de slag, het kleine begin is veelal gratis. Het gebruiken van resources zoals data en rekenkracht zijn goedkoper dan je zelf kunt realiseren en je krijgt er meteen zeer veel zaken bij zoals beheer tools, actieve systeem monitoren en een zeer goed beveiligde omgeving. Veel beter dan de meeste bedrijven zelf kunnen realiseren. Daarboven op geldt: Alles kan geautomatiseerd aangestuurd worden. Daarbij groeien en krimpen de kosten naarmate je het meer of minder gebruikt. Iets wat onmogelijk is als je het zelf zou willen doen.


Een ander subtiel voordeel is dat de diverse diensten die je af kunt nemen niet in elkaar verweven zijn. Alles is "losjes verbonden" en als je dit op de juiste manier toepast kun je dus sneller afscheid nemen van een oplossing. Het beidt dus mogelijkheden om te voorkomen dat je systeem als geheel "legacy" wordt. Zo ken je bijvoorbeeld ook de problemen dat veel bedrijven nog steeds niet overgestapt zijn van Windows XP naar een nieuwere versie. Bij deze aanbieder speelt dit probleem niet meer. Alles word steeds gemoderniseerd.


Tot slot

Ik ben niet voor Amazon, Google of Microsoft, ik probeer alleen te beschrijven wat het probleem met IT is en hoe je dit op kunt lossen. Als je als bedrijf vast blijft houden aan je huidige manier van IT doen zul je gewoon verdwijnen of zit heb je een speciale positie zoals banken, overheid of een hele specifieke business.


Concentreer je niet op naar de cloud gaan omdat men dat roept. Kijk naar hoe je als organisatie IT doet en hoe je de problemen die je ervaart op kan lossen. De cloud is niets, het zijn bedrijven die diensten aanbieden waarnaar je moet kijken.


dinsdag 22 september 2015

Amazon is de koning van cloud computing

Amazon is absoluut de leider als het gaat om cloud computing. Het is een oncomfortabele waarheid die veel weerstand oproept. Tijd om eens een beschrijving te geven van al het moois dat Amazon te bieden heeft. Lees mee en oordeel zelf.

Op het gebied van generieke cloud computing, ofwel het aanbieden van rekenkracht en data opslag heb je in de feite de 'grote 3'. Dit zijn Amazon Webservices, Google Compute Engine en Microsoft Azure. Google is minder generiek omdat het vooral krachtig is op het gebied van Linux en Microsoft uiteraard op het gebied van Microsoft en daarmee heeft Amazon al een streepje voor. Microsoft heeft echter een zeer krachtige office suite en Google is daarin de enige concurrent met Google Apps for Work. Niettemin is Amazon ook daar een zeer geduchte concurrent aan het worden.

Delen van bestanden en samenwerken kan nu al met Workdocs dit kan vergeleken worden met een business variant van Microsoft Onedrive en Google Drive. Amazon is begonnen met Workmail. Dit product mag nog niet in de schaduw staan van Outlook en Gmail, maar als je Amazon kent zal dit enorm snel veranderen, dat hebben ze al heel vaak laten zien.


Reis

Ik zal nog heel kort samenvatten waar cloud computing voor staat : Het aanbieden van it-middelen en applicaties over het internet die je betaald naar gebruik.

Laten we een korte reis maken van een aantal opvallende diensten van Amazon Webservices.

In het begin - en dit gaat terug tot 2003 - was er de Simple Storage Service, ofwel S3. Het opslaan van data als een dienst en hier is onder andere Dropbox op gebaseerd. Later is dit uitgebreid, waarbij je extra performance kunt kopen en data makkelijk kunt versleutelen, of verspreiden over de datacenters van Amazon op een duurzame manier.

Later kwam Elastic Compute Cloud: EC2. Hiermee kun je Linux- en Windows-servers virtualiseren in allerlei smaken. Hoeveelheid geheugen, rekenkracht en data opslag zijn daarin de drie grootste pijlers. EC2 heeft daarmee de lat hoog gelegd met het snel en simpel tot je beschikking krijgen van virtuele servers.

Waarmee EC2 zich onder andere in onderscheid is dat je er direct een hoop bij krijgt. Niet alleen een heldere console, maar ook een heel server monitor systeem waaraan je 'triggers' kunt koppelen voor wanneer de server bijvoorbeeld langdurig zwaar belast wordt. Ook het toewijzen van een elastisch ip-adres is een krachtige eigenschap die je architectuur veerkrachtig maakt en meewerkt aan een hoge beschikbaarheid.

Tot zover het standaard riedeltje die je nu bij heel veel providers af kunt nemen tegen steeds lagere kosten.


IAM

Waarmee Amazon webservices (Aws) excelleert is het adresseren van alle problemen waarmee je te maken krijgt bij automatisering en dat ze die problemen stuk voor stuk oplossen.

DNS beheren doe je met Route53, daarmee kun je ook met een paar klikken een domein registreren en je domeinnaam koppelen aan Office 365 of Google Apps for Work. Identity access management (iam) is het zeer krachtige systeem waarmee je computer of menselijke accounts koppelt aan rechten en die helpt een koppeling te maken met de (online) Active Directory van de organisatie door middel van een andere Aws-dienst: Directory Service. Alleen iam maakt mij al een zeer grote fan van Aws en is iets waarmee Microsoft ongelofelijk loopt te stuntelen. Iam geeft mij niet alleen controle, maar ook inzicht en via Cloudtrail kan ik zien wie, wat, wanneer en waar heeft gedaan. Uiteraard kun je deze data ook nog ontsluiten naar andere diensten zoals Cloudwatch en Simple Notification Services zodat ik actief op de hoogte wordt gehouden als er bijvoorbeeld security setting verandert.


Private cloud?

Nu is er de algemene misvatting dat Amazon alleen een public cloud aanbied. Met de Virtual Private Cloud (VPC)-service kun je prima een private cloud inrichten die verder niet verbonden is met het internet. Door middel van vpn, er zijn meerdere smaken mogelijk, kun je een directe verbinding maken tussen het private netwerk bij Amazon en de eigen on-premises omgeving. Niet alleen is dit gemakkelijk in te zetten, het is heel goed veilig te maken. Ook zijn eigen glasverbindingen beschikbaar, waarvan je precies in kunt stellen hoeveel capaciteit nodig is en deze bandbreedte kan uiteraard gemeten worden.

Je kunt een eigen virtuele server inrichten en daarop een databaseserver installeren, maar je kunt ook een database afnemen zonder dat je de server en alles wat daarbij komt kijken hoeft af te nemen met Relational Data Services (RDS). Lange tijd vond ik deze dienst niet klaar voor productie omgevingen, maar ook daar is verandering in gekomen. Voor specifieke doeleinden kun je ook de NoSQL-database DynamoDB gebruiken en als het neerkomt op 'big data' kun je een datawarehouse inrichten met Redshift en custom query's draaien met Amazon Elastic Mapreduce Hadoop cluster.

Voor het versturen van bulk email die niet in spam-boxen terecht komt word Simple Email Services (SES) gebruikt en voor het ontwikkelen van applicaties op mobiele devices kun je Push Notification Services (SNS) inzetten om bijvoorbeeld berichten naar de mobiele telefoon te pushen. Met SQS ofwel Simple Queue Service kunnen a-synchrone berichtenstromen worden gerealiseerd.

Via deze omweg kom ik weer terug op diensten die handig zijn voor eindgebruikers. Zo is er Workspaces voor virtuele Windows desktops en heb je in je kantoor alleen nog maar (thin) desktops, laptops en tablets nodig om in ieder geval een Windows computer in de cloud beschikbaar te hebben. Daarmee centraliseer je het beheer van de werkplekken, maar geef je de vrijheid terug aan de eindgebruiker om deze overal te kunnen gebruiken.


Over prijzen

In 2011 schreef ik nog een e-book samen met Peter van Eijk over hoe je zonder servers je bedrijf kon automatiseren. Daar zaten nog wat ruwe kantjes aan, die zijn anno 2015 wel verdwenen.

Flexibiliteit door alleen te betalen naar gebruik heeft een prijs. Door het gebruik van een virtuele server voor drie jaar in te kopen kan je korting wel oplopen tot 71 procent. Als je die prijzen bekijkt en realiseert wat er allemaal voor geleverd wordt dan vind ik het vreemd dat veel bedrijven niet wat beter kijken naar wat cloud computing met Amazon inhoud.

Wekelijks spreek ik nog it'ers die zich afzetten tegen cloud computing zonder dat ze zich werkelijk hebben verdiept naar wat het nu eigenlijk is, kan en kost. Regelmatig heb ik wel consultants die na een korte demonstratie echt een 'wow!'-gevoel overhouden en (te) rigoureus naar de cloud willen.


Nadelen?

Zijn er dan geen nadelen aan Amazon Webservices? Laat ik zeggen dat het grootste nadeel een niet functioneel aspect is: Amerikaanse overheid. Hoewel Amazon datacenters heeft in Ierland en Duitsland, zij de hoogste graad van certificeringen hebben en audits daarop, weten we ook dat Amerikaanse overheid slecht te vertrouwen is en Amazon een Amerikaans bedrijf is. Er zijn echter zeer veel versleutel- en beveiligingsmogelijkheden, waarmee je toegang tot servers en data kunt waarnemen, maar er blijft een laag die voor jou als afnemer niet inzichtelijk is en kan zijn. Zelf geloof ik niet dat de Amerikaanse overheid directe toegang heeft tot alles wat er op Amazon-servers afspeelt, maar dat zij zich toegang kunnen verschaffen zonder jou op de hoogte te stellen, moet voor waar worden aangenomen.

Is dit nu echt een show-stopper? Nee, en ik ga deze discussie hier ook niet voeren, want dat leidt af van de inhoud.

Nu klinkt dit misschien als een 'wij van WC-eend'-verhaal, maar daar kan ik het volgende op zeggen: Ik verdien niets aan Amazon Webservices. Klanten laat ik zelf rechtstreeks dingen afnemen en ik ben niet per se voor Amazon, ik doe genoeg met Microsoft en Google om mijzelf onafhankelijk te noemen. Daarnaast maakt advies over cloud computing nog geen 10 procent van mijn omzet uit, ik ben ook gewoon een afnemer en fan van de dienst.

Ook zeg ik niet dat iedereen nu zomaar moet overstappen op Amazon Webservices, zeker als je organisatie sterke competenties heeft in cyber-security, storage en virtualisatie en een behoorlijke grote eigen infrastructuur heeft, zou ik niet zomaar overstappen. Een groot gedeelte van het mkb kan profiteren van cloud computing bij Amazon.


Lock-in

Uiteraard is er wel een consequentie als je all-in gaat met Amazon. Ondanks dat de applicatie programming interface (api) - hiermee kun je de dienst geautomatiseerd afnemen - de standaard geworden is in cloud computing land, creëer je wel degelijk een lock-in. De images kun je niet één-op-één meenemen, al je diensten waarmee je dat wel kunt converteren, maar heel veel code van de automatisering is toch echt gericht op de producten van Amazon. Dropbox had de eerste jaren echt het streven om met meerdere storage-providers te kunnen opereren, dat is er volgens mij nooit van gekomen.

DynamoDB is echt een hele specifieke NoSQL database en ook het hele vpc-verhaal maakt van een verhuizing buiten Amazon een hele uitdaging die wellicht net zo groot is als de migratie van on-premises naar de cloud.

Maar dit is denk ik niet anders dan van datacenter naar datacenter verhuizen, ook dat vergt een planning en inspanning en is niet iets wat je niet ieder jaar wilt doen.


Tot slot

Dagelijks ervaar ik blijdschap door cloud computing toe te passen. Het is zoveel meer dan alleen snelle provisioning. In het begin kunnen al deze diensten wel eens overweldigend zijn, toch is de leercurve helemaal niet zo stijl, dit komt omdat Amazon er nu echt ervaren in is geworden om de ingebruikname zo eenvoudig mogelijk te maken. Er wordt nog wel eens onderschat hoe belangrijk dat is. Iets eenvoudig maken is echter 'rocket science', een zeldzame competentie. Wat ook heel krachtig is, is dat het in de basis bijna niets kost om het je eigen te maken. De grootste investering is tijd. Een paar servers optuigen en afbreken kost nog geen euro. Daarnaast is er zeer veel documentatie aanwezig, filmpjes over hoe je begint en zijn er diensten voor een paar tientjes per maand waarbij je gewoon heel goed opgeleid wordt.

Investeer er eens tijd in en kom met een eigen mening, kans is groot dat je ook besmet raakt met het cloud computing-virus.

dit artikel is eerder geplaatst op Computable

zaterdag 17 januari 2015

Machine Learning is haarlemmerolie


Over een jaar of tien krijgen de ontwikkelaars het moeilijk. Er komt namelijk concurrentie uit onverwachte hoek. En dan heb ik het niet over India, maar over computers die computers gaan programmeren.


In 2013 kwam de film Her uit met  Joaquin Phoenix. Hij installeert een nieuwe operating system op zijn mobiele telefoon op basis van kunstmatige intelligentie en al snel wordt hij hier verliefd op. Nu denk ik niet dat dit in zijn geheel snel werkelijkheid wordt, maar er zijn nu echt duidelijk signalen dat computers steeds beter "begrijpen" wat mensen zeggen. Dit betekent niet dat de computer een bewust zijn krijgt, de onderliggende principes komen gewoon voort uit machine learning, of deep learning en dat gaat ongeveer zo: Je stopt allerlei teksten in een database. Deze teksten worden ontleedt en tegen nog meer data aangehouden. Hieruit wordt context verleent. Ieder onderwerp wordt zo bijvoorbeeld opgezocht en daarna automatisch gelabeld. Zo kan het systeem onderscheid maken tussen personen en dingen en herkennen wanneer het over tijd of over plaats gaat. Door al deze input te koppelen en te verriijken: welke uitspraken waren door mannen gemaakt, welke door vrouwen? Kan een systeem zonder intelligentie wel intelligentie "veinzen". Zo kan een algoritme sarcasme herkennen en uit zijn geheugen een gepast sarcastisch antwoord halen. Door het systeem te trainingen met nog meer -liefst gevalideerde- input wordt het steeds krachtiger. Als het systeem communiceert met gebruikers kan hij van deze communicatie weer leren. Nogmaals: dat leren is een algoritme, er zit geen intelligentie achter, maar uiteindelijk kan zo'n systeem verrassend authentiek reageren.

Zo heb je bijvoorbeeld machine learning implementaties die woorden bij foto's plaatsen. Als je een foto upload naar het systeem, dan antwoord deze met tekst die op de foto slaat. Bijvoorbeeld "twee jongens spelen met een bal". Als je bij de foto ook nog menselijk input krijgt, zal het systeem steeds accurater worden.

Ik zal een paar toepassingen geven waarin dit toegevoegde waarde biedt. Als ik een tekst schrijf en ik wil een aantal links plaatsen in deze teksten, dan geeft het systeem al direct suggesties waarheen je wilt linken. Of als je tegen je telefoon gaat praten, snapt het systeem je intentie. "Kan ik hardlopen vanavond?". Je telefoon weet waar je woont, of waar je meestal hardloopt en kan herkennen dat je bij regen, kou of harde wind nooit loopt, Maar ook of je vrouw al een afspraak heeft en je kinderen hebt.  Het antwoord zou kunnen zijn "Ja, maar om negen uur gaat het regenen". Dit is minder ver weg dan het lijkt. Als je voor een website een foto zoekt kan het systeem juist door te herkennen wat er op foto's staat een aantal voorstellen doen.

Maar wat als je het systeem code gaat voeren? Deze kan automatisch verbeterd en opgemaakt worden, gerefactord (herschreven voor performance, efficientie of leesbaarheid) en aangevuld worden. Maar als dat kan, dan wordt het wellicht mogelijk om aan te geven wat je wilt gaan bouwen en zal het systeem de benodigde code daarvoor schrijven. Voedt het met voorbeeld layout en het ziet er meteen goed uit. Deze code-generator zal sneller zijn dan welke groep programmeurs dan ook en het testen zal automatisch worden uitgevoerd.

"Is er nog wat op TV?" krijgt dan een hele andere betekenis, je TV neemt dan ook al op wat je wilt zien (als dat al nodig is). Dit is echter alleen maar mogelijk als het systeem voldoende data tot zich kan nemen, en hier wringt misschien de schoen. De algoritmen zijn toch tamelijk complex en het geheugen van het systeem zal waarschijnlijk niet lokaal bij je worden opgeslagen. Je geeft daarmee wel heel erg veel van jezelf weg en met de terroristische dreigingen van de laatste tijd worden steeds meer misbruikt om onze rechten op privacy te beperken.

Wat als deze data bij zorgverzekeraars terecht komen? En bij de belastingdienst? Ja we hebben dan handige machines, maar wat voor vrijheid hebben we dan nog om ze naar eigen goeddunken te gebruiken?

Maar ook: Het schrijven en componeren van een hit wordt zo kinderspel, een koud en harteloos systeem kan ons in vervoering en ontroering brengen door het toepassen van simpele patronen.

Dan komt natuurlijk de vraag: Wat levert het ons op? Maakt het ons echt gelukkiger, al dat gemak? Wie zal er nog geld kunnen verdienen?

Het lijkt science fiction waar ik over schrijf, maar ik twijfel er niet aan dat er in dit soort machine learning miljarden gestoken worden. De komende twee jaar zullen we al de contouren gaan zien waar dit heen gaat. Er zijn recentelijk wat doorbraken gedaan, die de weg vrij maken voor de Cortana's, Siri's en Google Now's. Uiteraard zullen we in Nederland niet als eerste aan beurt zijn en misschien is het wel de juiste tijd om Engels als eerste taal te introduceren in Nederlands. Dat zou wel eens een cruciale beslissing kunnen zijn. Althans, dat is de uitkomst van mijn machine learning algoritme...

dinsdag 30 december 2014

Google verjaardagen uit je agenda halen

Sinds een maand ofzo heb ik allemaal verjaardagen in mijn Google agenda staan van mensen die ik nauwelijks ken.



Hier is hoe je die verjaardagen kunt verwijderen. Hint: Het was niet gemakkelijk.


Ga naar je agenda in de browser, klik op instellingen


Aan de rechterkant van je scherm staat ergens een linkje "Door interessante agenda's bladeren"



Klik op de tab "Meer" en zie daar Verjaardagen staan. Klik op Afmelden en Presto!



Bizar dat ze dit soort zaken zo goed verbergen. Dit is één van de donkere kanten van continuously delivery.


Met dank aan Brenden Mulligan .



zondag 7 december 2014

Belangrijke trends voor 2015 en daarna

De laatste keer dat ik mijn blogs terug las kwam ik veel voorspellingen tegen die uitgekomen zijn. Tijd om voorspellingen te doen voor het komende jaar en daarna want we zijn op een uniek punt in de geschiedenis terecht gekomen, maar voordat ik dat toelicht, eerst even een rondje naar de trends die ook jou zullen raken.



Diensten nog belangrijker

Alles tussen het maken van een product en het uiteindelijke gebruik is overhead en vanuit de eindgebruiker; verspilling. Omdat internet de wereld een stuk kleiner maakt is dit een bedreiging voor de keten die iets met de levering van producten doet, die moeten naar manieren zoeken waarop ze waarde “aan het doosje” kunnen toevoegen, en voila, daar is dus de dienst. Ik zie veel bedrijven die deze trend te lang genegeerd hebben en hier nu vijf voor twaalf mee worstelen. Op IT vlak is “as a service” dominanter aan het worden. Diensten aanbieden is iets anders dan outsourcen, nu zie je dus ook op dit vlak dat bedrijven weer zaken als IT naar zichzelf toehalen. De drijfveer voor het afnemen van diensten zijn nog op de eerste plaats kostenbesparing en de wens om niet vooraf te investeren en te betalen naar gebruik. Wie dit goed doet brengt dus de kosten in lijn met de opbrengsten en dit leidt naar de diepere wens van bedrijven om flexibeler te zijn. Het vermogen om te leveren waar vraag naar is, is in mijn ogen de belangrijkste focus die bedrijven nu moeten hebben.

Cloud computing verdwijnt

Ik doe al een aantal jaren aan cloud computing, geef trainingen, lezingen, workshops en ik heb veel interactie met klanten als het gaat over cloud computing. Verdwijnt cloud computing dan? Nee. Maar de term zelf is een holle frase geworden en terecht. Als je nu nog geld wilt verdienen door cloud computing te verkopen, dan zul je het de komende jaren slecht krijgen. Bedrijven willen online diensten afnemen die problemen oplossen, kosten besparen of flexibeler maken. Dat die dienst onder de noemer cloud computing zal hen niet veel uitmaken. Richt je op concrete waarde en voordelen en blijf weg van de algemene verhalen. Er zijn grote providers die generieke computing diensten aanleveren, maar er zijn nog veel meer providers die specifieke zaken oplossen, voor jouw bedrijf, in jouw werkgebied. Zij bieden waarde, niet een term waar nog steeds gesteggeld over wordt over wat het betekent. Daarnaast is één van de belangrijke aspecten van cloud computing -complexe zaken in de infrastructuur automatiseren en beheer eenvoudiger maken- niet alleen meer mogelijk bij cloud providers, maar kun je ook lokaal deze mate van automatisering bereiken en vaak ook nog eens met open source. De community achter deze mogelijkheden zijn enorm zeker nu ook commerciële bedrijven investeren in het realiseren van open source software.

Internet der dingen

IoT wordt steeds meer werkelijkheid. Auto’s die te volgen zijn via het internet, een thermostaat die aangaat als iemand op weg is naar huis. Alarm systemen die slimmer worden, locatie gebaseerde marketing. Het zijn allemaal voorbeelden van het internet der dingen. Apparaatjes die communiceren over het internet. Er zijn drie veelgebruikte methode om data te transporteren: Bluetooth, Wifi en GSM met alle drie iets variërende eigenschappen. IoT is onvermijdelijk maar er zijn twee grote factoren die de massale adoptie vetragen: Vertrouwen en Functie.


Altijd als je iets lees over een nieuw apparaatje wat data communiceert wordt er meteen over hackers en privacy gesproken. Ook hebben veel fabrikanten zoals LG en Adobe het vertrouwen beschadigd door niet alleen stilletjes grote hoeveelheden data te verzamelen van aan het internet aangesloten apparaten zoals TV’s en e-readers, maar dit ook nog onversleuteld en dus onveilig te doen. Toch zul je zien dat steeds meer bedrijven deze boodschap begrepen hebben en dat IoT net zo gewoon wordt als mobiele telefoons is evident. De komende tijd zal de adoptie versnellen en dat komt omdat het 2e grote obstakel - functie- nu steeds meer toepassing krijgt. In veel van de traditionele voorbeelden werden koelkasten genoemd die meld bestelden als deze op was. Een voorbeeld wat gewoon teveel praktische bezwaren oproept waardoor het al snel een ver van mijn bed show wordt. Maar steeds meer huishoudens hebben een “slimme” thermostaat waarmee IoT tastbaar wordt. Saillant details is wel dat die thermosstaten gebracht worden als slim en kostenbesparend, maar dat dit *geen* functie is van de thermostaat zelf. Er wordt dus meer mogelijkheden aan toegekend dan werkelijk het geval is en ook dit zal het vertrouwen weer aantasten.


Wearables

In het verlengde van IoT komen de wearables. Wearables zijn apparaatjes die je kunt dragen zoals een bril, horloge, ketting, et cetera. Ook dit zijn apparaatjes en sensoren die data kunnen communiceren al dan niet via een tussen apparaat zoals de mobiele telefoon. Ik denk dat wearables een voorbewerker is van IoT/ Wearables zullen zeer snel gemeengoed worden -ik denk de komende twee jaar- en hebben niet het obstakel vertrouwen, maar nog wel de belemmering: Functie. Men weet nog niet goed wat je er mee zou moeten. Een horloge is leuk, maar het scherm is klein en als je weer een apparaat elke dag moet opladen zullen veel mensen hem nog laten liggen. Ook de Google Glass die een tijdje terug een enorm momentum had, lijkt vooralsnog geen groot succes te worden, maar dat wearables net zo gewoon worden als een smartphone lijkt mij zeer waarschijnlijk met een early majority fase van zo’n twee jaar. Apple heeft traditioneel het vermogen om nieuwe dingen groot te maken, denk aan de muis, wifi, muziekspeler, smartphone en tablet. Volgend jaar komt de Apple Watch uit. Maar als je de zeer goede ontwikkelaarsvideo (http://goo.gl/oJ27sN) bekijkt zie je dat de watch niet zonder de iPhone kan. Ook is de duur van de batterij minder dan 24 uur en zitten er maar een beperkt aantal functies in die waardevol lijken. Het lijkt daarom niet meteen een groot succes te worden, alleen als je iets dieper kijkt zie je dat dit slechts tijdelijk is. De grootste belemmering zijn nu een kleine interface, beperkte batterij en noodzakelijke functies, maar als de technische beperkingen de komende jaren opgelost worden zal dit een ware vloedgolf aan nieuwe apparaten opleveren. Zo was bluetooth een grote batterijvreter, nu heb ik al meer dan twee jaar een draadloze muis die loopt op twee simpele AA batterijen.


Waarde van big data is onbetwist

Al die apparaten genereren data en data noemt met het nieuwe goud en big data is de naam die men ervoor gevonden heeft om dit fenomeen aan te duiden. Er wordt zelfs al verteld dat bedrijven die niets met big data doen gedoemd zijn te falen. Dit is onzin natuurlijk. Zolang de organisatie waarde beid waarop men zit te wachten is er bestaansrecht, maar big data als hype negeren zal voor sommige bedrijven wel degelijk bedreigend kunnen zijn. Een zeer sterk voorbeeld van de kracht en onbetwiste waarde van big data is Google met zijn zoekmachine. Er kan moeilijk discussie gevoerd worden over dat wat Google op zijn servers heeft staan -bijna een kopie van het gehele internet- niet big data te noemen. En het is ook een onnoemelijk grote prestatie dat al die big data met een simpel te gebruiken tool ontgonnen kan worden. Dat waarde halen uit deze data evident is kun je ook moeilijk bestrijden. De wereld veranderd door de mogelijkheden die zoekmachines ons bieden om kennis te vergaren. Twintig jaar geleden was je afhankelijk van de mensen om je heen en bibliotheken om iets uit te zoeken. Nu leert mijn zoon Loomen door YouTube. Een wijsneus zegt dan “mijn kind leert het van vriendjes”, maar van wie hebben die het dan weer geleerd?


De waarde en case van big data is dus evident en ik kan nog veel andere voorbeelden  geven. Alleen is het gebruiken van big data en de zekerheid om er altijd waarde uit te halen door organisaties geen gelopen race. Er zijn behoorlijk wat uitdagingen, kostenposten en algoritmes nodig om echt onderscheidend te zijn in het waarde onttrekken uit big data. Het is domweg niet voor iedere organisatie weggelegd, maar bepaalde industrieën zoals die van medicijnen zullen deze trend echt niet afdoen als hype en goede data wetenschappers zullen de nieuwe rocksterren zijn de komende jaren.  

Kunstmatige intelligentie

En zo kom ik op de belangrijkste trend aan van dit artikel. Kunstmatige intelligentie. Aan de ene kant is dit zo’n holle term net als cloud computing waardoor AI al snel als hype bestempeld zal worden. Maar ook hier zeg ik: Kijk verder. Want deze trend zal ieder zijn dagelijks leven de komende jaren beïnvloeden. En net als bij big data geldt: Er zijn maar een beperkt aantal organisaties die AI-achtige zaken kunnen leveren. Voor echte intelligentie hoeven we vooralsnog niet bang te zijn, of dat computers een bewustzijn krijgen. Wel zijn we steeds beter in staat AI toe te passen in handige functies en ik zal dalijk een paar voorbeelden geven. AI is overigens weer een kapstok begrip waaronder bijvoorbeeld de volgende zaken vallen: Neurale netwerken, Machine Learning, Natural language processing, et cetera.


Wat er bijvoorbeeld machine learning en natuurlijke taalverwerking wordt gedaan is heel veel voorbeelden en patronen vastleggen en daarop algoritmes loslaten die kennis over deze patronen opslaat als geheugen zodat bij een volgende vraagstelling of input al heel veel verrijking kan plaatsvinden.


Hoe gemakkelijk zou het zijn als je tegen je telefoon kan praten en hij dit in bepaalde mate begrijpt en dus hierop acties kan uitvoeren. Een vermakelijke film op basis van dit concept is Her (2013 : http://goo.gl/kKCCJ6 ). Nu heeft mijn navigatie wel stemherkenning, maar werkt deze zo slecht dat ik het liever met de hand doe.


De toepassing van AI zijn eindeloos. Zo kunnen camera’s intelligenter worden en pro-actief actie ondernemen bij bijvoorbeeld criminele gebeurtenissen. Ook de manier die NSA momenteel verdachten op het oog krijgt is nog relatief primitief. Nu moet je software nog zodanig inrichten dat voorbedachte patronen eruit naar boven komen. Nu kan ik wel met spraak een email op mijn mobiele telefoonopstellen, maar niet zonder het na te kijken en te verbeteren en daardoor is het nog steeds onbruikbaar. Het controleren op spelling en grammatica is nog zodanig slecht dat ik nog steeds niet foutloos mijn blogs kan publiceren. Met een beetje AI zou zelfs mijn schrijfstijl sterk verbeterd kunnen worden door bijvoorbeeld te voorspellen welke zinsnedes zullen inspireren en welke zullen iriteren.


Wat als je tegen een computer kunt vertellen wat voor scene je wilt gaan filmen en deze zelf aan de slag gaat om dit te visualiseren. Maar denk ook aan het gemak dat je in een vreemd land zonder kennis van de taal kunt communiceren met mensen?


Research en kennis opdoen kunnen zoveel efficienter. Op dit moment zijn we echter nog niet zo ver, maar we komen nu wel ergens en ik verwacht de komende vijf jaar dat er echt toepassingen komen die gebaseerd zijn op AI en die we in ons dagelijks leven gaan toepassen zonder dat we er bewust van zijn.  Het ecosteem wat dit het best gaat ontsluiten mobiel -op dit moment zijn dat IOS, Android, Windows Phone en Blackberry- zou hiermee wel eens de dominante partij kunnen worden. Vandaar dat de grote providers enorme investeringen doen in overnames van dit soort partijen. Onze smartphone wordt zeker het eerste apparaat waarmee we AI zullen gebruiken en in beperkte mate doen we dat al. Als je dicteert aan je telefoon zie je dat de tekst tijdens praten nog veranderd doordat het context interpreteerd. Overigens zal Nederlands zeker niet de taal zijn die het eerst ontsloten wordt.


Digitale Transformatie

Al deze onderwerpen hebben een mooi verband met elkaar en hebben zowel toepassing voor het bedrijfsleven als ons persoonlijk leven. De trends zijn ook onderdeel van een mega-trend, namelijk die van digitale transformatie. Soms lijkt het alsof we daar al zijn. Zo worden met een rap tempo banken gesloten en vallen er veel ontslagen door het automatiseren en de verandering van analoog naar digitaal. Het heeft ervoor gezorgd dat bedrijven zoals PostNL een cloud only strategie najagen en dat er hele beroepsgroepen slachtoffer worden van deze trends. Maar er ontstaan ook nieuwe kansen, en dit bedoelde ik met mijn zin dat we op een uniek moment van onze geschiedenis zitten.


Meer dan ooit zijn innovaties mogelijk, een programmeur heeft dezelfde computerkracht tot zijn beschikking als een groot bedrijf en het verkrijgen van geld voor een idee is nog nooit zo toegankelijk geweest. Plaats een filmpje op het internet of ga naar een crowdfunding site en als je idee enige waarde heeft, zullen mensen erin investeren. Het maken van een simpel spelletje -flappy bird- leidde ertoe dat Dong Nguyen meer dan 40.000 dollar per dag eraan verdiende en de indie developer Markus Persson heeft Minecraft in 2014 verkocht voor meer dan anderhalf miljard dollar.

Wat zullen de komende jaren brengen?

maandag 13 oktober 2014

Zo genereer je extra omzet als winkel

Dit weekend had ik het jaarlijkse mossel avondje met mijn schoonfamilie. Mijn vrouw had als toetje een kaasplankje samengesteld en aan mij de eer om dessertwijn te kopen. Nu ken ik de man van de Gall & Gall goed dus hij weet waar ik van houdt. Nu heb ik een favoriete witte dessertwijn, maar wilde ik ook een port erbij. Er was een port in de actie van 20 euro voor 10 euro en die heb ik meegenomen. Hij was heerlijk, maar twintig euro vind ik teveel geld voor zomaar een fles port. Wat ik zou willen is een bericht als deze port weer een actie prijs krijgt, en dat is mijn idee.

Winkels zoals AH, Gall & Gall, Kruitvat zouden het mogelijk moeten maken om je te abonneren om berichten op specifieke artikelen! Het liefst in een centrale omgeving zodat ik niet overal wachtwoorden voor aan hoef te maken (maar inloggen met een Facebook account zou ik ook mee kunnen leven). Daar zou ik graag artikelen willen vinden waarop ik mij kan abonneren. Dit zou nog een paar parameters kunnen hebben zoals;

“Wanneer wilt u een bericht ontvangen?” met keuzes zoals “Wanneer er een aanbieding is”,”als dit artikel weer beschikbaar is”
En
“Hoe wilt u een bericht ontvangen?” met keuzes zoals “Per Email”, “Per SMS”

Het voordeel is dat zo’n bericht ook meteen een contactmoment met je (potentiele) klant is.

Ik vind dit een sterk idee omdat het een probleem is welke ik zelf regelmatig ervaar. Daarnaast is de oplossing vrij simpel te realiseren en is de potentiële opbrengst groot en bovendien ook meetbaar mits de klant ook nog een klantenkaart heeft.

maandag 1 september 2014

Een andere kijk op cloud computing

We zijn nu een aantal jaren verder met cloud computing. Door inzicht en gebruik verandert het inzicht over wat cloud computing is en voor wie.

Laat ik beginnen met mijn definitie en toelichting:

Cloud computing is de vaardigheid van een bedrijf om een verzameling servers samen te laten werken.

Simpel toch? Cloud computing bestaat vooral uit het perspectief van de eigenaar van de servers. En eigenlijk is dit heel logisch. Want wat heeft Software as a Service nu met cloud computing te maken vanuit de afnemer? Vaak komt Software as a Service in de vorm van een applicatie welke draait in de browser. De afnemer heeft werkelijk *niets* met cloud computing te maken! De applicatie kan draaien op een enkele server die ergens bij iemand op zolder staat. Hooguit kun je zeggen dat je de applicatie af neemt over het internet en dat het internet vaak aangeduid word als cloud.

Dus nog een keer; cloud computing gaat op voor de de eigenaar van de servers, niet per se op de gebruikers van de servers al kan dit uiteraard hetzelfde bedrijf zijn en krijgt de term “private cloud computing” meteen ook weer betekenis!

Virtualisatie

Alle huidige cloud computing volgens mijn gestelde definitie maakt gebruik van bestaande technologie en leunt sterk op het gebruik van hypervisors. Een hypervisor is een laag tussen het besturingssysteem van een server en de hardware. Een hypervisor is een soort illusionist die een besturingssysteem voor de gek houdt. Hiermee wordt het mogelijk om meerdere virtuele servers op één fysieke server te laten draaien, maar ook om deze server naar een andere fysieke server te verplaatsen zonder consequenties. Een voordeel van een virtuele server is dat je deze “zwaarder” en “lichter” kan maken zonder dat de onderliggende hardware hoeft te worden aangepast. De techniek van virtualisatie wordt ook gebruikt om softwarematig data-opslag mogelijk te maken zodat je niet alleen een hogere performance krijgt, maar dat opslag ook veerkrachtig wordt. Als een element in de keten faalt, blijft de data gewoon bereikbaar. Maar genoeg over techniek, de basis is dat cloud computing vooral gebruikt maakt van bestaande technologie en dat bedrijven hier zaken aan toevoegen om bijvoorbeeld zelfbediening en betalen naar gebruik mogelijk te maken.

Deze uitleg is nodig voor de volgende stap in mijn betoog. Namelijk dat bedrijven met dit zelf gemaakte maatwerk verschillende diensten kunnen aanbieden. Veel hosters kunnen nu middels een zelfbediening portaal mogelijkheden scheppen dat klanten zonder tussenkomst van menselijk handelen een virtuele servers en anderen diensten af kunnen nemen.

Amazon Webservices en OpenStack

Nu stoort het veel mensen dat als ik praat over cloud computing ik het praktisch altijd heb over diensten zoals Amazon Webservices en Microsoft Azure. Dit komt omdat zij voorop lopen in hun competentie om grote groepen servers samen te laten werken en het product hiervan als diensten aan te bieden. Amazon is veelal gebaseerd op de technologie van Citrix, Microsoft Azure is uiteraard gebaseerd op technologie van Microsoft. Zo is er ook een open source project : OpenStack. Deze biedt in feite volledige software aan die het mogelijk maakt om servers samen te laten werken inclusief een portal om dit te beheren. Deze software is gratis, dus ieder bedrijf wat servers en serverruimte heeft kan deze software installeren en een cloud computing provider worden, als is je onderscheidend vermogen in de basis beperkt.

API is de sleutel

Een zeer belangrijk onderdeel van cloud computing diensten is dat zij een Application Programming Interface (API) aanbieden. Ofwel je kunt met regels programma code de dienst consumeren en daarmee maak je nog meer automatisering mogelijk. Uiteraard is IaaS niet alles wat de klok slaat. Diensten zoals Orchestrate.io bieden database als dienst aan wat aangemerkt wordt als Platform as a Service (PaaS) en Dropbox biedt bijvoorbeeld Software as a Service in de vorm van data synchronisatie. Het aardige van Dropbox is dat zij zelf een dienst hebben gebouwd bovenop een dienst van een andere cloud computing provider en daarop meeliften. En dit illustreert eigenlijk het punt wat ik wil maken.

Cloud computing is heel breed met de huidige definitie zodat er moeilijk een goede discussie over gevoerd kan worden. Het afnemen van infrastructuur is totaal iets anders dan een applicatie die functioneert in de browser. Voeg daar de ruis van hybride cloud computing aan toe plus de eigenschappen van specifieke cloud diensten en de waarde van al die artikelen daalt hard naar een nulpunt qua toegevoegde waarde.

Dit verklaart waarom ik het zo vaak over Amazon Webservices (AWS) heb. Zij zijn voor mij het voorbeeld over waar het naar toe gaat en waar ik ook naar toe zou willen. Amazon is meesterlijk goed in het ontsluiten van bestaande technologie en hebben een extreme customer focus, maar zij ontwikkelen ook technologie die hiaaten opvullen. Zij luisteren naar geluiden in de markt, faciliteren deze en door middel van continuous delivery verbeteren dit met een ongekende snelheid. Daarnaast hebben zij een ongeschreven regel welke het fundament is van automatisering, alle functionaliteit kan via een API geconsumeerd worden.

In het kort

Ik zal het nog een keer samenvatten.
Cloud computing is een vaardigheid. Cloud computing borduurt verder op huidige technologie. Cloud computing is vaak een competentie van de leverancier, niet van de afnemer. Cloud computing wordt versterkt door API’s.  Uiteindelijk gaat het niet om cloud computing, maar om de dienst die daar uit voort komt. De discussie zou dus niet zozeer moeten gaan over de betekenis van cloud computing, maar meer over de diensten die daar uit voortkomen.

Deze blog is ook gepubliceerd op de site van Computable : http://www.computable.nl/artikel/opinie/cloud_computing/5156757/2333364/een-andere-kijk-op-cloud-computing.html

zaterdag 10 mei 2014

In het kort: KPN 4G met Huawei mobile WIFI

Twee maanden terug kreeg ik een Huawei 4G router van KPN met onbeperkt data om te testen. Dit zijn mijn bevindingen.

Plussen en minnen router

Plus
- Batterij gaat erg lang mee
- Werkt gewoon zoals verwacht
- Lijkt een betere verbinding te verkrijgen dan de telefoon


Min
- Als de batterij eenmaal niet meer vol lijkt, loopt deze erg snel leeg.


Plussen en minnen KPN 4G

Plus
- Latency (de tijd die het duurt totdat de verbinding tot stand kom en data over de lijn gaat)
- Voelt net zo snel aan als de WIFI thuis
- Snelle download, maar ook upload


Min
- In afgelegen gebieden geen 4G (maar ook geen 3G, dus geen min voor 4G)

Het voornaamste is dat 4G echt een enorme verbetering is ten opzichte van 3G. Eenmaal in contact gekomen met 4G is 3G eigenlijk geen optie meer. Het belangrijkste in mijn ogen is niet de snelheid, maar vooral de lage latency. De tijd dat het duurt voordat de data over de lijn begint te stromen. Als ik op mijn iPhone een pagina opvraag met 3G duurt het altijd een paar seconden voordat er iets gebeurt, dit is met stip mijn grootste ergernis over 3G. Met 4G is dit nagenoeg weg en voelt het aan als de WIFI thuis.


Ik heb de WIFI router op veel plekken gebruikt. Zelfs met 1 a 2 streepjes werkt het, maar moet je wel eens extra op reload drukken om door te laden. De verkregen snelheid was tussen de 6 Mbit en de 15 Mbit met soms uitschieters daarboven en daaronder.


In een zwembad waar ik zelf slechte ontvangst had met de telefoon ging het werken via de WIFI router erg snel en dat was verrassend alsof mijn lichaam zelf veel ontvangst weg neemt.


Kortom, ik ben zeer te spreken over 4G van KPN. Dit is echt een toevoeging die in de praktijk nog beter uit pakt dan de theorie. Op afgelegen gebieden ben je echter kansloos, maar dat is dan ook onvermijdelijk.
Getest:

Huawei E5776 LTE Mobile WiFi Hotspot wifi router powered by 4G van KPN

zaterdag 12 april 2014

Waarom Heartbleed schokkend is

Deze week kun je niet om het nieuws heen dat er een "bug"gevonden is in OpenSSL, open source software die je kunt inzetten om bijvoorbeeld je website van HTTPS te voorzien. Ik ben in de materie gedoken en die was verrassend toegankelijk. Nu ik de ins en outs ken wil ik wat met je delen, iets dat verder gaat dan de beveiligingsgat zelf.

Geen bug

Af en toe lees je dat het een bug is, dit is niet waar. Want de software deed gewoon zijn werk goed, er zat alleen een gat in de beveiliging. Eén van de eerste principes van veilige software is dat je de input van gebruikers niet vertrouwd. Als een functie vraagt "Geef mijn order informatie over Order X"  dan zou je software eerst moeten checken of de order wel van die gebruiker is. Dit ging er mis in OpenSSL. De gebruiker gaf zijn "hartslag" naar de server, maar door bewust over de grootte van de hartslag informatie te liegen, gaf de server een stukje van wat er in zijn geheugen stond terug, ook als deze data niet over de hartslag informatie van de huidige gebruiker ging.


C en Open Source

De kracht van Open Source is vaak dat het gratis te gebruiken is, dat de broncode voor iedereen in te zien is en dat mensen deze code zelf mogen wijzigen voor eigen gebruik, of de gemeenschap kunnen helpen door de code te verbeteren.  Dit is een mooi principe en kom ik zo nog op terug.


OpenSSL is een stuk software die je inzet om je site te beveiligen en waar robuustheid en veiligheid dus van enorm belang is. OpenSSL wordt door zeer veel grote bedrijven gebruikt om hun websites te beveiligen, niet alleen Google en Yahoo gebruiken het, maar ook zelfs banken. OpenSSL is echter geschreven in C. Dat is een computertaal die heel veel gebruikt wordt, redelijk snel op te pikken is en die vrij dicht op het hart van een computer zit nadat de software "gecompileerd" is. Hoe dichter bij het hart hoe sneller de code kan worden uitgevoerd en daar zit meteen ook een groot nadeel qua veiligheid. C is een taal die direct naar het geheugen van een computer schrijft en daaruit ook nagenoeg onbeperkt kan lezen. Software geschreven in C die op een server gebruikt word is een veiligheidsrisico in zichzelf. Als je de software niet goed geschreven is kan deze dus data uit het geheugen van de server geven die niets met de werking van de software zelf te maken heeft. In het geheugen van de server staan wachtwoorden van gebruikers, maar bijvoorbeeld ook het veiligheidscertificaat die gaat over de versleuteling van gebruikersdata. Wie dit certificaat en de juiste sleutel heeft zal dus de data van gebruikers kunnen lezen alsof deze niet versleuteld is. Met andere woorden: Als je het geheugen van een server kunt lezen op afstand kan deze server niet meer als veilig worden beschouwd. Ook alle geheimen die langs deze server zijn gegaan moeten gezien worden als "geopenbaard" en daarmee snap je waarom het OpenSSL gat zo heftig is.


Schaal

Nu moet ik een nuance aanbrengen die je bijna nergens leest: Zoals het lijkt wordt er namelijk niet een willekeurig stukje geheugen van de server teruggegeven naar de kwaadwillende gebruiker, maar het stukje geheugen wat gebruikt werd in de buurt van de "hartslag". Wellicht is het onvoorspelbaar wat daarin geschreven stond, maar het moet nog blijken na testen of hiermee uiteindelijk het volledige geheugen van een server was uit te lezen, of dat de geheugenstroom vooral te maken heeft met data die te maken heeft met de werking van OpenSSL. Het is dus niet zeker of een server wel al zijn geheimen prijsgeeft door dit lek.


Maar even terug naar de taal C. Deze is dus niet geschreven met veiligheid in het achterhoofd. Het is dan ook zeer moeilijk om inherent veilige software te schrijven in C. Dat OpenSSL zo populair is en breed wordt toegepast is een indicatie van onachtzaamheid. Ik denk dat veel bedrijven zich niet bewust waren van dit risico.


Wat is er nu zo schokkend aan dit veiligheidsgat? Dat banken en bedrijven als Google OpenSSL zo breed hebben toegepast, vooral voor Google staat deze software aan de basis van de veiligheid van diens producten en had gewoon goed en continu getest moeten worden. Goede unit testing had deze onvolkomenheid er namelijk direct uitgehaald.


Google, maar ook banken hebben meerdere security officieren. Als je de architectuur van je IT landschap bekijkt moet OpenSSL eruit gekomen zijn als belangrijk onderdeel in de beveiliging. De NSA had zijn huiswerk wel goed gedaan. De NSA zoekt steeds naar gaten van software en deze software heeft zonder twijfel de revue gepasseerd aldaar omdat het geschreven is in C en wereldwijd gebruikt is.


Tot slot

Als het nu een echt obscuur geval was en zeer vergezocht, dan had ik dit niet geschreven, maar dit gat is groter dan het gat in de ozonlaag, is enorm eenvoudig te misbruiken en had nooit op zo'n schaal mogen bestaan. Als dit soort fouten mogelijk zijn, dan houdt ik mijn hart vast wat er nog in het "vat" zit. De maatregelen die bedrijven moeten nemen zijn fors. Er wordt dit weekend flink overgewerkt, maar erger nog is dat er wellicht miljarden wachtwoorden veranderd moeten worden, maar dit in de regel niet gebeurd. Dat het gat crimineel nog niet op grote schaal is uitgebuit stelt me dan nog enigszins gerust.


Even de nieuwste versie van OpenSSL installeren is niet voldoende. Ook het beveiligingscertificaat moet opnieuw worden aangevraagd en geïnstalleerd, maar ook alle wachtwoorden moeten als gelekt worden beschouwd.


Interesting times....