Gepersonaliseerd internet (maart 2016)

Dertig jaar geleden was internet niet veel meer dan berichtjes versturen via e-mail (eigenlijk UUCP, Unix to Unix Copy). De eerste mails in Nederland werden verstuurd van een universiteit naar een researchafdeling. De termen Internet en www bestonden nog niet. De ontwikkelingen leken langzaam maar gestaag te gaan, en vormden een natuurlijk evolutie in de technologie. Vijftien jaar geleden werd internet nog leuker. Open source, freeware, de community, weblogs, meningen, de eerste webshops, de opkomst van iDeal betalingen, internetbankieren. Niet te vergeten de introductie van WiFi en breedband. Enthousiasme, gedrevenheid, uitdaging, innovatie, snelle vernieuwingen. De stroomversnelling op internetgebied neemt nog steeds logaritmisch toe en is niet meer te stoppen. 

De keerzijde is inmiddels ook duidelijk. Privacy is in gevaar door de grote hoeveelheden data die van ons verzameld worden. De initiatieven om hier iets tegen te doen, werken slecht of niet. Wil je anoniem zijn, dan is dit alleen mogelijk door een anonieme omgeving te bouwen op je pc, geen smart-devices te gebruiken, niet op tientallen plekken op internet in te loggen en te stopen met social media. Onmogelijk, je ‘internetervaring’ daalt dan tot een dieptepunt. We moeten er maar aan wennen dat internet vooral een reclamemedium is geworden, om ons spullen en diensten aan te smeren. En om dit mogelijk te maken, wordt alles verzameld onder het motto ‘gepersonaliseerde reclame’. Facebook (ook eigenaar van Instagram en WhatsApp) en Alphabet (=Google, ook eigenaar van YouTube, makers van Android) leven van reclame. Apple verdient het meeste met iPhones, maar net als de andere AppStores, zit ook die van Apple vol met reclame (in de Apps), waar Apple overigens maar een klein deel van de omzet uit haalt.

Maar misschien zijn het niet Facebook, Google, Apple of Microsoft waar we ons zorgen om moeten maken. Misschien zijn het juist die duizenden kleinere softwareontwikkelaars en aanbieders van apps, diensten en webshops waar we waakzaam voor moeten zijn. Er hoeft maar net één rotte appel tussen te zitten. 

Scam (februari 2016)

Een tijd geleden zagen we in de populaire Buienradar App vreemde reclame verschijnen op de plek waar normaal de gewone reclame banners staan. Klikte je daarop dan werd je geleid naar een website waar goedkope Apple-devices werden aangeboden.  Zie je een melding op je smartphone dat je WhatsApp verlopen is of zeer binnenkort verloopt en je moet betalen? Grote kans dat dit eveneens scam is. Scam is reclame die je lokt naar sites waar er wordt gepoogd je geld afhandig te maken, met ‘mooie’ aanbiedingen of waar je persoonsgegevens gevraagd worden (bijvoorbeeld een 06-nummer om sms’jes naar toe te kunnen sturen). Met andere woorden: oplichting. Begin 2016 zagen we in de nu.nl App scam verschijnen. Een banner die boven veel nieuwsberichten werd getoond, die met een knipperend knopje suggereerde dat er een bericht voor je was (zie afbeelding 1). Klikte je daarop, dan werd een redelijke persoonsgerichte melding getoond dat je een prijs gewonnen hebt. Persoonsgericht, omdat je provider, je woonplaats en je type device worden genoemd (afbeelding 2), eenvoudig af te leiden natuurlijk. Wegklikken van de melding stuurt je naar een website (die er als een app uitziet), waar je bijna al een iPhone of iPad hebt gewonnen (afbeelding 3) of waar je mee kunt doen aan een quiz (afbeelding 4).

Geen malware

Is het device besmet met malware? Een test wijst uit dat op hetzelfde netwerk iPhone 4, iPhone 5 en iPhone 6 deze scam advertentie toont en het dus een meer generiek probleem is. De scam is ook niet weg te krijgen, de App opnieuw installeren en het device helemaal opstarten lost het probleem niet op wat erop wijst dat het van buiten moet komen. Als je de devices ontkoppelt van het WiFi-netwerk en ze gebruikt met het 3G Netwerk, is de scam reclame wel verdwenen. Maar zodra WiFi weer actief is, en dus weer de vaste provider wordt gebruikt, is de scam weer aanwezig. Niks aan te doen? Waarschijnlijk is het een reguliere adverteerder van nu.nl, die er tussendoor geschoten is en nu in de App zijn malafide praktijken aanbiedt. Nu.nl moet er zelf achter gekomen zijn, want na een dag of twee was de scam verdwenen van alle smartphones.

Gekke advertentiewereld

De advertentiewereld is een beetje gek aan het worden. Reclame’s beginnen steeds slimmer te worden en meer en meer te irriteren. We worden gevolgd in alles wat we doen, en dit tracken irriteert. Heb je net een lamp gekocht bij de Wehkamp, wordt je daarna toch nog weken bestookt met reclame van Wehkamp op allerlei sites, om je een lamp te verkopen. Dit tracken gaat verder dan simpele cookies. Soms merk je dat ook op andere systemen in het netwerk, reclame wordt getoond die op een andere pc ‘veroorzaakt’ is. IP-adressen, ID’s van devices, browsers, besturingssysteemversies, cookies en nog veel meer, zorgen voor een uitgebreid profiel van jezelf. Dit soort profielen zijn goud waard en vormen de nieuwe olie in de maatschappij. Tegen tracking is vaak weinig te doen, want schakel dit op alle mogelijke plekken uit, is je systeem nauwelijks nog te gebruiken.

Anti-Adware

Tegen reclame is wel wat te doen. Zelfs op Apple devices staat Apple sinds enige tijd Adblockers toe: Apps die reclame verbergen. Reclamemakers zijn hier niet blij mee. Smartphones vormen immers de grootste groep devices en ze worden het meeste gebruikt voor het consumeren van informatie, en reclame. Jammer genoeg zijn de meeste Adblockers niet in staat de in-App reclames te verwijderen. Ze verwijderen reclame in de browser(s) of bieden een speciale browser, maar in Apps blijft reclame bestaan. Van in-App scam zijn we dus ook nog niet verlost.

 

 

 

 

 

Windows 10, twee keer gratis (januari 2016)

Ik ben niet ontevreden over Windows 10. Sterker nog, het functioneert snel en stabiel. Het startmenu is bruikbaar en de Apps zijn te negeren als je ze niet wilt gebruiken. Windows 10 werkt zo net als Windows 7 en ik ken veel ‘gewone’  gebruikers die zijn overgestapt van Windows 7 naar Windows 10 die nauwelijks verschillen merken. Zelfs mijn vader van 80 is van Windows 7 naar Windows 10 gemigreerd, automatisch, zonder enige hulp en werkt er naar tevredenheid mee. Dat is met migraties van eerdere Windows-versies wel eens anders geweest.

Toch is er een relevant verschil. Windows 10 is de ‘laatste’ versie van Windows. Middels gratis updates wordt Windows 10 regelmatig bijgewerkt en daar lijkt een probleem te ontstaan. Het laatste half jaar heb ik bij twee klanten een automatische gratis upgrade meegemaakt. Niks op tegen zou je zeggen, dat is by-design. Maar nee, het was de upgrade náár Windows 10, terwijl de betreffende pc’s al Windows 10 draaiden. Bij de eerste klant betrof het een Dell Windows 10 desktop, geleverd met Windows 10, die vanzelf - dus zonder dat de gebruiker ergens op had geklikt om Windows bij te werken - Windows 10 begon te installeren. Twee uur later, harde schijf een paar GB voller, enkele reboots en de bekende melding dat de upgrade geen persoonlijke bestanden heeft aangetast. Dat dit de oorspronkelijke Windows10-upgrade was, was ook af te leiden uit een applicatie die opnieuw een post-Windows-10 upgrade update moest uitvoeren, die uiteraard eerder al uitgevoerd was. De tweede klant met een dergelijke Windows 10 upgrade op Windows 10 betrof een - eveneens Dell -laptop, die begin vorig jaar van Windows 8.1 naar Windows 10 was geüpgraded. Na vier uren echter, bleek de installatie nog steeds te hangen op 96%. Uitzetten, weer inschakelen, en Windows herstelt netjes de vorige versie. Terug naar Windows 10 dus. En de klant heeft bijna een dag niet kunnen werken.

Los van de oorzaak, irritatie en tijdverlies van deze vreemde upgrades, het past bij 2016 en de cloud. Cloud apps worden ook on-the-fly bijgewerkt, aangepast, onderhouden, verbeterd of verslechterd. Features komen en features gaan en je hebt er nauwelijks invloed op of controle over, als gebruiker niet en als beheerder niet. Dus wen er maar aan! 

OpenStack op Docker of Docker in OpenStack? (december 2015)

Het flexibel en dynamisch maken van clouds is een hot topic. Maar omdat elke aanbieder zijn eigen oplossingen heeft, blijkt in de praktijk al snel een vendor lock-in te ontstaan. Wat zou het toch mooi zijn als server applicatie-omgevingen met een druk op de knop verplaatst kunnen worden van de ene provider die met Microsoft-oplossingen werkt naar de andere provider die met VMware-oplossingen werkt of andersom. Klinkt simpel, maar dat is het niet. OpenStack en het Open Containers-initiatief (OCI) gaan ons echter helpen naar agile IT.

OpenStack en Docker

Kijkende naar de cloud zijn er twee opvallende technologieën, waar elke zichzelf respecterende cloud-aanbieder zich aan wil verbinden. De eerste is OpenStack, het consortium dat standaarden voor orkestratie van gevirtualiseerde (cloud) resources mogelijk maakt. Zoals de naam al zegt, is het een stack van open source producten en onderdelen, waar de vele fabrikanten en ontwikkelaars hun eigen tools en omgeving aan toe kunnen voegen. Er bestaat dus niet iets als “het product OpenStack“.  Een wat jongere trend waar veel partijen heil in zien, is Docker. Met Docker draai je op één compact besturingssysteem meerdere virtualisatie environments (VE’s) ofwel virtuele instances (VI’s) van hetzelfde besturingssysteem. Elke VE of VI draait in een geïsoleerde container, vandaar dat het concept ook wel containervirtualisatie of containerization wordt genoemd. Ook besturingssysteemvirtualisatie is en correcte omschrijving van het concept. Het is simpel een complexe Linux-serverapplicatie op te pakken en te verplaatsen. Hoewel containertechnologie verre van nieuw is, staat deze dankzij Docker en CoreOS (een veelgebruikte Linux-distro voor Docker) en spin-off als Rocket en diverse andere containeroplossingen de laatste twee jaren sterk in de belangstelling. Ook Microsoft is met Windows Server 2016, Nano Server druk in de weer met containers, om ook Windows serverapplicatie-omgevingen te ondersteunen, die zelfs met Docker-tools beheerd kunnen worden. De “religieuze containeroorlog” is al vele maanden in volle gang. Ook hier is wildgroei en is er behoefte aan standaardisatie en uitwisselingsmogelijkheden ontstaan. Het Open Containers-initiatief (sinds juni van dit jaar) onder de Linux Foundation, wil een open standaard ontwikkelen voor containerformaten en -runtimes. De standaard wordt gepubliceerd op GitHub (https://github.com/opencontainers/specs). Docker zelf doneert het containerformaat, de runtime en libraries aan de OCI.

Overlap

We zien dat enkele organisaties die lid zijn van het OpenStack-consortium ook sponsor zijn van OCI. Zo komen we bedrijven als HP, IBM, Red Hat, Suse en anderen bij beiden tegen. De overlap is verre van 100% en zal dat ook niet worden. De OCI bestaat pas kort en wil bewust een kleine en platte organisatie blijven, met een beperkte scope. OpenStack heeft in vijf jaren tijd vele honderden (!) sponsors opgeleverd. Sommigen ervan zijn wellicht alleen maar lid om de ontwikkelingen en vooral de persaandacht die ervan uit gaat niet te missen, andere dragen serieus bij aan de open source community. Opvallend is dat grote cloud-namen als AWS (Amazon) en Microsoft ontbreken in het indrukwekkende lijstje van OpenStack-leden, Google heeft zich onlangs (in juli 2015) wel aangesloten bij OpenStack. AWS en Microsoft zijn wel OCI-sponsor. De vraag blijft natuurlijk waarom OCI nodig is als er al OpenStack bestaat? Past containertechnologie niet bij OpenStack dat toch vooral met virtualisatie te maken heeft? Er is wel degelijk een relatie tussen Docker en OpenStack, hoewel het totaal andere concepten zijn vullen ze elkaar prima technologisch aan. Dit kan op twee manieren worden gerealiseerd.

OpenStack orkestreert Docker

De eerste manier waarop OpenStack en Docker elkaar aanvullen, is dat OpenStack in te zetten is als beheeromgeving voor Docker. Immers, als OpenStack al goed is in het orkestreren van virtual machines, moet dat ook kunnen met Docker-containers. Docker kan als virtual machine al draaien op een hypervisor en met uitbreidingen aan OpenStack kunnen individuele Docker-applicaties op die gevirtualiseerde en als virtual machine draaiende Docker worden beheerd. OpenStack heeft sinds mei vorig jaar een containers-projectteam dat deze functionaliteit aan het ontwikkelen is. De containerbeheercomponent in OpenStack die wordt ontwikkeld, wordt Magnum genoemd. Critici menen echter dat de eenvoud die Docker feitelijk biedt, door opname in OpenStack verzuipt binnen de complexe architectuur van OpenStack. Toch voegt OpenStack ook iets belangrijks toe aan Docker: multi-tenancy. Het is met Docker lastig containers aan meerdere afnemers in de cloud (klanten) aan te bieden. Het ligt daarom voor de hand op de hardware eerst een hypervisor te installeren, waarop meerdere virtual machine draaien, en waarbij elke virtual machine fungeert als Docker host. Dit beheren we dan met OpenStack. De individuele containers op Docker, beheren we met de reguliere Docker-tools. Maar als een organisatie alleen containers nodig heeft, is OpenStack overkill. Er is dan meer baat bij een oplossing die containers op een hoger aggregatieniveau aanbiedt, zoals het op het open source Kubernetes gebaseerde Google’s Container Engine. Nu is Google lid van zowel de OCI als OpenStack en heeft Mirantis Kubernetes geïntegreerd met OpenStack, dus wellicht komt het allemaal op zijn pootjes terecht.

Docker containeriseert OpenStack

De tweede manier waarop OpenStack aansluit bij Docker, is dat de vele componenten van het coomplexe OpenStack-platform afzonderlijk kunnen worden gecontaineriseerd met Docker. OpenStack bestaat uit allerlei componenten, serverapplicaties, zoals MariaDB, RabbitMQ, KeyStone of Nova. Al deze applicaties moeten gepatcht en vernieuwd worden. Dit zal veelal individueel van elkaar gebeuren, het is niet zo dat we van OpenStack 2.x alles upgraden naar OpenStack 3.x. En dat is waar Docker goed van pas komt, namelijk voor het vereenvoudigen van de complexiteit van het onderhoud en life cycle management van OpenStack zelf.  Waarom maken we van elke component van OpenStack geen Docker-container? Dit geeft OpenStack de beheervoordelen van containers. Afzonderlijke applicaties kunnen snel worden getest, vernieuwd of teruggedraaid bij problemen. OpenStack onderzoekt containerisatie ook zelf middels het OpenStack project Kolla.

De tijd zal het leren

OpenStack, met of zonder Docker, heeft weliswaar veel mogelijkheden voor cloud orkestratie, maar is ook complex. Grote omgevingen in de public cloud of gehoste omgevingen voor grote organisaties hebben er veel baat bij (zoals PayPal of Walmart), maar de technologie heeft nog lang niet de toch wat terughoudende enterprises als interne cloud oplossing bereikt en wellicht is dat ook niet de doelgroep van OpenStack. Docker daarentegen is door zijn eenvoud erg populair aan het worden als provisioning omgeving, zonder de complexiteit van een ‘management platform’, zeker nu Docker ook zelf meer en mee beheertools krijgt, waaronder Kitematic, de GUI voor Docker. Het zelf intern introduceren van deze containertechnologie bij bedrijven wordt hierdoor simpel en concurreert zelfs met virtual machine-technologie. De tijd zal leren hoe containers en OpenStack samen gaan, hoe dit duo de cloud-wereld gaat veroveren en hoe containers hun plek veroveren naast de al bijna traditioneel te noemen virtual machines. Maar dat beiden de cloud-wereld de komende jaren drastisch veranderen, staat buiten kijf.

Sjoemelsoftware (november 2015)

Dankzij Volkswagen is onze Van Dale een woord rijker: sjoemelsoftware. Software die bewust manipuleert en verkeerde data toont in bepaalde situaties. Hier moet een team van programmeurs bewust aan het werk zijn geweest om foute software te ontwikkelen, testen en vrijgeven. Dat dit mogelijk is bij een dergelijke grote en als degelijk aangemerkte organisatie, is op zich al bijzonder. Maar het zet plotseling ook alle ontwikkelaars op het verdachtenbankje. Een aangezien tegenwoordig zo’n beetje elk stukje hardware ook software in zich heeft, is meteen de vraag waar zit nog meer sjoemelsoftware in?

Stel je voor dat je gezondheidsapp op je smartphone bewust de verkeerde data presenteert om je te stimuleren aankopen te doen voor vitaminepillen, waar reclame voor wordt getoond? En stel, je navigatiesoftware toont je onopvallend een bewuste korte omleiding langs bepaalde tankstations of winkels? Dit is sjoemelen omwille van product of reclame. Het kan nog erger. Weet je zeker dat de kassa’s in de supermarkt niet af en toe een centje meer aantikken en dat de pinautomaat altijd het bedrag afschrijft wat er op het schermpje getoond wordt? Weet je zeker dat je Fitbit-app of je slimme meter de data niet bewust doorstuurt naar criminelen zodat die weten wanneer je afwezig bent? Rond je parkeerapp de tijd niet net naar de verkeerde kant af?

Sjoemelen in software bestaat al lang, dat weten we allemaal wel. Vakantieaanbiedingen die plotseling duurder worden, tickets voor concerten die meteen uitverkocht zijn en parallel en meteen zwart worden aangeboden voor het viervoudige en zelfs de woekerpolissen blijken door onwetende vertegenwoordigers verkocht omdat ze gebruik maakten van sjoemelsoftware van hun bedrijf met verstopte rekenmodellen.  We kunnen het ons nog niet voorstellen wat sjoemelen met software en data voor gevolgen kan hebben. Verzamelen van persoonlijke data is al niet netjes, zelfs als je het vooraf al uitlegt zoals Microsoft, Google en Apple dat doen. Maar ongemerkt manipuleren van data is nog erger. Ik ben bang dat we aan de vooravond staan van een zeer vervelende en onheilspellende softwaretoekomst. Kunnen we hier iets tegen doen?