mei 182017
 

Als je ook maar enigszins iets te maken hebt met kunstmatige intelligentie, ontwikkelingen op het gebied van ict, ethiek en technologie, dan kan je Peter-Paul Verbeek, hoogleraar Wijsbegeerte aan de Universiteit Twente. Het eerste boek dat ik van hem las was De grens van de mens.

Op 29 mei start een gratis MOOC getiteld “Philosophy of Technology and Design: Shaping the Relations Between Humans and Technologies” bij FutureLearn onder leiding van Peter-Paul Verbeek en Roos de Jong.

De MOOC is maar 3 weken lang (kort), dus ik verwacht geen enorme diepgang ten opzichte van bv zijn boeken, de beschrijving geeft aan dat er aandacht zijn voor de volgende onderwerpen:

  • Evaluate some classical thinkers in philosophy of technology.
  • Reflect on the power of technology: are humans still in control?
  • Explore the contemporary philosophical approach of technological mediation.
  • Engage in case studies to get insights in the impact of technology on society and human life.
  • Debate the ethical dimension of technology and apply this to design.
  • Discuss the ethical limits of designing technologies that influence our behaviour.

Doelgroep: “This course has been created for anyone interested in the relations between technology and society, and in particular for people working or studying in philosophy, engineering, design, social science and policy. The course might be specifically relevant to those interested in what philosophical analysis can contribute to the practice of design, engineering, and policy-making.”

p.s. de MOOC is gratis te volgen, maar dan raak je 14 dagen na afloop de toegang kwijt, voor €64,- kun je er voor zorgen dat je onbeperkt toegang blijft houden. Dat betekent dus dat als je de gratis variant wilt volgen, je de activiteiten het beste ook tijdens de daadwerkelijke looptijd kunt plannen.

Deel dit bericht:
mei 142017
 

At AliExpress they sell a number of cheap GPS modules that you can use for Arduino. I ordered one (this one) GY-NEO6MV2 for €6,82 incl. free shipping (the seller doesn’t offer free shipping anymore so you might want to shop around a bit) and wanted to try it out on the LoPy. Now, I wanted to say that using it is really easy, it is, but then again there were more than enough bumps in the road to get it to work the way I wanted it. But hey, what is life without some challenges?

First things first: the GPS module is easy to use. It use UART to connect to it. As soon as you have got something that is willing to listen to it, power it (it worked using 3.3V), it start sending you GPS data that you only need to interpret. I soldered 4 header pins to the module, connected the VCC to the 3.3V, GND to GND on the Pyboard, the TX line to “P11” and the RX line to “P12”.

As soon as you connect power to the LoPy, the GPS unit is powered. The red light blinking means that the unit is working and sending data. You just need to listen to it.  The code to do that is available here on GitHub.

To start listening:  com = UART(1,pins=(config.TX, config.RX), baudrate=9600)

To interpret the data coming from the module, I use the MicropyGPS module. It is initialized using my_gps = MicropyGPS().

After that it is a matter of checking if there is any data available, and then feed it character by character to the module:

if com.any():
    my_sentence = com.readline()
    for x in my_sentence:
        my_gps.update(chr(x))

 

Lees verder….

Deel dit bericht:
apr 232017
 

Als je bij Coursera een MOOC volgt en je wilt de video’s offline bewaren, dan kun je die natuurlijk in de iPad app downloaden. Maar als je ze gewoon op je pc beschikbaar wilt hebben, dan is er een andere manier.

Op deze pagina vindt je een stukje script dat je in de pagina moet uitvoeren. Je gaat dan in Google Chrome naar een video van een week, kiest rechtermuisknop en dan “Inspecteren” en plakt de code er in. De video’s van die week worden dan automatisch een-voor-een gedownload.

Het gaat niet helemaal perfect, soms zit er een resource in een week die door het script als video gezien wordt maar de poging om te downloaden mislukt en dan stopt het geheel.

De code als download .

Deel dit bericht:
apr 222017
 

Het filmpje staat al een paar dagen online, maar ik wilde het hier nog even plaatsen. Het is een korte trailer in VR. Je zit aan een tafel in een restaurant en kunt rondkijken en “rond luisteren”. Afhankelijk van het tafeltje waar je naar kijkt, zie en hoor je een andere verhaallijn. Mooi, en ook een mooi voorbeeld van hoe je gebruik kunt maken van de ruimtelijkheid van 360-graden video.

(bron: Google)

Deel dit bericht:
apr 212017
 

In het filmpje hierboven geeft Jules Urbach, CEO van OTOY een toelichting bij hun productieproces rond 360-graden video en foto’s. Hij deed dit naar aanleiding van de aankondiging van Facebook eerder deze week van hun x24 en x6 camera’s, geen huis-tuin-en-keuken camera’s, ook nog niet te koop want Facebook gaat ze niet zelf maken maar geeft de technologie in licentie.

De x24 camera (ja, er zitten inderdaad 24 camera’s in) heeft genoeg camera’s en totale resolutie om elke pixel 4x op te vangen. Daardoor kan de camera ook diepte-informatie berekenen voor elke pixel. Daardoor kun je een beeld maken waarbij je als kijker ook realistisch je hoofd kunt bewegen om rond te kijken. Ok, nog niet helemaal hetzelfde als rondlopen, maar het is weer een stapje vooruit.

Nieuwe afkorting die ik hierbij geleerd heb: 6DoF ofwel Six Degrees of Freedom, waarbij het gaat over: 1) naar boven/onderen 2) naar links/rechts 3) naar voor/achter 4) helling (pitch) 5) verdraaiin (yaw) en 6) kanteling (roll). Het plaatje bij Wikipedia helpt waarschijnlijk wel.

OTOY en Facebook zijn zeker niet de eerste of enige die hier aan werken, maar het feit dát zij er aan werken betekent dat de kans dat er een product op de markt komt (of wellicht in ieder geval content) dat hiervan gebruik maakt groot is. We gaan het zien.

Deel dit bericht:
apr 202017
 

De Amazon Dash knoppen zijn heerlijk controversieel. Het idee: je hebt een knop (gewoon, een knop met niet verwisselbare batterij en wifi ingebouwd). Als je daar op drukt, dan wordt er automatisch dat ene product waarvan je ook het logo/merk op de knop ziet (ok, dat kun je dan wel zelf instellen vooraf) in je mandje bij Amazon gelegd. Gemakkelijk: plak er eentje in het kastje op de badkamer en als iemand de laatste wc-rol pakt, drukt die gewoon even op de Dash knop om hem bij te bestellen.

Ja ja, super ernstig, fout, verspillend, gemakzuchtig. Geloof me, ik zou er nooit eentje gebruiken. Tenminste niet voor het doel waar ze voor verkocht worden. Want zo’n Dash knop kost maar 5 euro. Helaas, wel in Duitsland te koop, nog niet in Nederland.

Want zo’n knop is natuurlijk een heel hackbaar ding. Nou ja, wil je het allemaal veilig maken en zo, dan kost het wat meer werk, maar voor 5 euro kan ik niet zo’n compacte knop maken die een signaal via mijn wifi netwerk verstuurd. Een ESP8266 kost zo’n 2-3 euro, hier zit een mooie compacte behuizing omheen, een kleine drukknop, het enige nadeel vind ik wel (ook een beetje principieel) dat de batterij niet te vervangen is. Dus als die leeg is (na zo’n 1.000 keer gebruik), dan moet je de knop weg gooien (en niet gewoon in de grijze kliko vanwege die ingelaste batterij).

Dat is één van de redenen waarom deze hack van de knoppen eigenlijk niet zo “goed” is, al is het idee natuurlijk super: een ouder heeft een viertal Dash knoppen aangepast zodat dochterlief van 4 zelf de muziek via het Sonos systeem aan en uit kon zetten. Een Raspberry Pi met daarop o.a. de scapy library vangt de signalen op die de Dash knop verstuurt als deze verbinding wil maken met Amazon. De truc is om de setup van de knop niet helemaal af te ronden zodat deze wél verbinding met je wifi netwerk kan maken, maar niet met Amazon.

Dat principe is natuurlijk ook op andere dingen toe te passen, bijvoorbeeld om apparaten op afstand aan en uit te schakelen. In dit bericht kun je lezen dat dat niet zo heel veilig is aangezien anderen dan zo’n zelfde script zouden kunnen gebruiken om je lampen, apparaten etc. aan te sturen.
Nou klopt dat inderdaad, maar dat is net zo waar voor de meeste “KlikAanKlikUit”-achtige systemen die veel in gebruik zijn.

Hoe dan ook, leuk voorbeeld, en scapy is de moeite waard om wat dieper in te duiken. YouTube heeft er zo te zien voldoende filmpjes over.

Deel dit bericht:
apr 192017
 

Op woensdag 10 mei 2017 organiseert de VOR divisie ICT een bijeenkomst in Eindhoven. Tijdens deze bijeenkomst komen promovendi aan het woord bij wie ICT een rol speelt in hun onderzoek. De onderwerpen zullen heel divers zijn, soms wat meer technisch, in andere gevallen meer op onderwijs gericht. Het zal ook altijd nog “onderzoek in uitvoering” zijn. Daarom zijn de presentaties kort, 10-15 minuten maximaal. Aansluitend zijn alle promovendi op de promovendi markt beschikbaar zodat ze daar hun onderzoek, hun deelproducten etc. meer in detail kunnen toelichten. We sluiten plenair af met een terugblik op het onderzoek dat die middag gepresenteerd is.

We hebben een mooi programma samengesteld met promovendi die onderzoek doen naar diverse, interessante onderwerpen.

Lees verder….

Deel dit bericht:
apr 152017
 

Now that Alex explained everyone how to use MQTT in combination with the LoPy, I thought it was time to show some more advanced uses of MQTT in case you still had no idea why you would bother learning to understand it.
The nice thing about MQTT (MQ Telemetry Transport or Message Queue Telemetry Transport) as a protocol, is that it is not tied to the LoPy or WiPy that Alex used in his example. You can use it in combination with many different devices, tools and applications. For example, in our house, I use a Mosquitto MQTT broker as the central backbone for the home automation. For those that can understand Dutch, see this blogpost I did in 2014, or the one about the lights in my Christmas tree.

MQTT is also supported by The Things Network (TTN) meaning that you can retrieve all the data that your nodes send to TTN using MQTT. This also means you can use MQTT as a way to create a local backup of the data that your nodes send this way.
You can also use it in combination with the KPN LoRaWAN network, but the setup is slightly different. So in this post I am going to focus on TTN, although like before I will be using both the Marvin board and the LoPy board (in combination with Puck.js although that is completely optional of course).

I will be using Node-RED installed on one of my Raspberry Pi devices and I will be using MySQL as the database backend. I will be posting about MySQL versus MongoDB versus InfluxDB one of these days, but on a Raspberry Pi for now this was the quickest and easiest solution.

Let’s dive in:

Lees verder….

Deel dit bericht:
apr 112017
 

Er is weer een nieuwe afkorting bij om te kennen als het gaat om de apparaten die je thuis (en op andere plekken) aan het netwerk kunt /hebt hangen, denk aan de WiFi-router thuis, een camera die je via internet kunt bedienen, je mediabox die aan de TV hangt etc.

De media noemt ze overigens vaak “IoT devices” (Internet of Things apparaten) en dat is wellicht niet zo handig omdat veel mensen zullen denken “die heb ik niet”.

Ik schreef in januari al dat je zelfs je eigen thuisnetwerk niet zomaar als “veilig” zou moeten beschouwen. Dat was toen naar aanleiding van berichten dat hackers grote aantallen IoT devices gebruikt hadden om een DDoS (Distributed Denial of Service) aanval uit te voeren.

Nou zou je nog kunnen stellen “als het apparaat maar blijft werken, dan maak ik me er niet zo’n zorgen over”. Los van de vraag of je het prettig zou moeten vinden als een ander toegang tot je WiFi-router heeft, zijn er nu ook een tweetal bedreigingen die wél schade kunnen opleveren voor de werking van jouw eigen (onveilige) apparaat.

Het heet een PDoS, een “Permanent Denial-of-Service” en het woordje “Permanent” zegt het al: na zo’n aanval op jouw apparaat is het “stuk”. Weliswaar niet fysiek stuk, er komt geen rook uit je apparaat, maar softwarematig zo stuk dat jij er geen toegang meer toe hebt en de werking ervan ook stopt.

Zoals zo vaak maakt de tool die de aanval uitvoert (er zijn twee varianten: BrickerBot.1 en BrickerBot.2 die niet helemaal hetzelfde werken maar vergelijkbaar effect hebben)  gebruik van bekende kwetsbaarheden in software die in (blijkbaar) redelijk wat systemen aanwezig is. Het gaat om systemen die BusyBox en Dropbear gebruiken. Met name bij BusyBox is het lijstje van “andere software en hardware die gebruik maakt van BusyBox” lang. Hoeveel systemen daarmee gevaar lopen? Dat is wat moeilijker vast te stellen. Het is logisch dat een bedrijf dat ook consultancy verkoopt aan bedrijven om hun netwerk te beveiligen stevig aan de bel trekt. Dropbear heeft inmiddels al een patch uitgebracht, die worden echter maar zelden op dit soort apparaten geïnstalleerd (als het al kan). En voor alsnog geldt natuurlijk ook dat het systeem via internet bereikbaar moet zijn, dus die buitenste verdediging van je netwerk waar ik over schreef kan heel wat aanvallen tegen houden. Maar wees dus absoluut voorzichtig met het “zomaar” in je router openzetten van een poort zodat je je apparaten ook kunt bereiken als je op je werk of onderweg bent.   Het volledige bericht en de bijbehorende PDF is hier te vinden.

De vraag is in ieder geval hoe lang de situatie blijft bestaan waarbij hardware (ook je slimme TV) niet of nauwelijks van een update is te voorzien. Voorlopig lijken leveranciers zich er nog gemakkelijk vanaf te kunnen maken.

Wordt ongetwijfeld vervolgd.

Deel dit bericht:
apr 102017
 

Als het in het onderwijs in Nederland over “programmeren” gaat worden eenvoudige vragen al heel snel ingewikkeld. Dus een vraag als “Welke programmeertalen zouden onze leerlingen/studenten moeten kennen?” (bron) is niet helemaal zonder risico. Immers, je moet dan gaan nadenken over het doel dat je daarmee hebt. Wil je ze leren programmeren? Of juist coderen? Of software ontwikkelen? Ik ga niet eens proberen naar bronnen te linken die ze op één hoop of op juist heel verschillende hopen (en dan per bron ook verschillend) gooien.

Dus laat ik het maar even veilig houden in deze blogpost. Zo’n 9 jaar geleden vroeg ik me af welke programmeertalen ik allemaal zou moeten leren. Zoals ik toen beschreef:   Basic was mijn eerste kennismaking met programmeren, maar daar kon je (toen) zo weinig mee dat ik er niet veel interesse voor had. Op de universiteit leerde ik Turbo Pascal om daar vervolgens nooit meer wat mee te doen. Daarna kwam ik in de Windows omgeving en Visual Basic (binnen Office!) en Active Server Pages (ASP) terecht. Mijn eerste kennismaking met JavaScript was in de browser, ASP werd vervangen door PHP toen ik weblogtools ging gebruiken op basis van die taal. En daarna werd het een opeenvolging van “wat heb ik nodig”. Zo kwam er een beetje Python bij, een heel klein beetje .NET en eveneens een klein beetje Java. Dat was toen. Sindsdien zijn er dingen gewijzigd en gelijk gebleven.

Lees verder….

Deel dit bericht: