The `matches` operation

Een artikel, 6 dagen geleden geplaatst onder , , , , & .

I’m slowly migrating projects away from jQuery. It has served me really well in the past, and it still works, but it is no longer necessary. One of the few things that have been bothering me though was the lack of ‘live’-attaching of EventListeners. jQuery allows you to bind an onsubmit event listener to any , evens that haven’t been added to the DOM yet. It used to be called live() (from version 1.3 to 1.9), but the functionality was later reintroduced with on(). You would bind the event listener not to a `` directly, but to a container (up to document).

$(document).on('click', 'p.alert', function(e){ 
  confirm("Did you read this carefully?"); }
);

Moving away from jQuery, we use the ‘standard’ addEventListener(): but it has no easy way of delegating the events.

Introducing matches

Element.querySelector(".CSS.selector.here") is probably quite well known by know, but I was …

Ga verder met lezen en/of reageer...

Op de hoogte blijven?

Maandelijks maak ik een selectie artikelen en zorg ik voor wat extra context bij de meer technische stukken. Schrijf je hieronder in:

Mailfrequentie = 1x per maand. Je privacy wordt serieus genomen: de mailinglijst bestaat alleen op onze servers.

Tag descriptor

Privacy

Een artikel, 12 dagen geleden geplaatst onder .

Volledige overeenstemming over wat privacy nu eigenlijk is, is er niet echt. Een ruime definitie komt van de verenigde naties, uit de rechten van de mens (artikel 12):

> No one shall be subjected to arbitrary interference with his privacy, family, home or correspondence, nor to attacks upon his honour and reputation. Everyone has the right to the protection of the law against such interference or attacks.

Lees verder verder in mijn artikel over wat Privacy nu eigenlijk is.

Hieronder, chronologisch gesorteerd, artikelen van mijn hand en andere door mij relevant bevonden links, over privacy.

Ga verder met lezen en/of reageer...

On recommending

Een artikel, 13 dagen geleden geplaatst onder , , , , , , , , & .

“Recommended for you” is a personal suggestion, a sign of good taste. You hope the other will like it. The problem is that most online recommendation "agents" (in their depersonalised form) just listen. They’re just doing math. It would've been more honest if it was called exactly what it was “Others also bought/saw”, instead of the semi-personal “recommended for you”.

When you recommend, highlight something at your account, there is no reason not to assume you mean it, as in for real. So when YouTube or Facebook is highlighting shit randomly uploaded by morons and they highlight that crap, you’re right to assume you’re dealing with something who genuinely likes shit made by morons, in other words, the recommendation agent has an as messed up personality as the creators. And hence we learn: Youtube, Facebook, they're messed up. You can’t say welcome women and then recommend a video to the next person in line about how to “play” women. You can’t say hail diversity and at the s…

Ga verder met lezen en/of reageer...

Maak het open source! Of niet?

Een artikel, 18 dagen geleden geplaatst onder , , , , , , , & .

Onlangs kwam ik een hommage aan het open source maken van Netscape tegen. Netscape is uiteindelijk verdwenen, maar hieruit is wel Firefox voortgekomen. En geestverwant Chrome. Zelfs Microsoft maakt steeds meer zaken open source. Dus maak wat je hebt (laten bouwen) open source, of toch niet?

Goede redenen om iets open source te maken:

  1. Het kan vertrouwen bieden voor jou klanten; ze kunnen gemakkelijker migreren naar een andere leverancier.
  2. Je software bestaat waarschijnlijk al grotendeels uit opensource, wel zo eerlijk om ook jouw eigen software te delen met de rest van de wereld
  3. Andere kunnen bijdragen aan jouw dienst-ondersteunende tool (en deze dus zomaar beter maken)
  4. Het helpt als je de Wens hebt om de (de facto) standaard te maken in jouw werkgebied (en aangezien jij het begonnen bent ben jij de expert)
  5. De code wordt veiliger omdat hackers mee kun…

Ga verder met lezen en/of reageer...

Variable fonts

Een artikel, 28 dagen geleden geplaatst onder , , , , , , , & .

Last decade the web has been catching up with print. The advent of better delivery formats for type (WOFF(2)) and the rise of services such as Typekit and Google Fonts made the web for typography as interesting as print. But now a new specification is gaining popularity, and it may make the web more interesting than print: variable fonts.

Some background: In word processors you can typically choose between a few basic type variants Bold, Italic and Bold Italic. Some types appear with a 'Black' or 'Light' version in the font list. More professional products for graphic professionals (think Illustrator, Indesign, QuarkXpress), paired with a complete font-family, are, however able set type using 'font-weight'. While CSS has a font-weight-property, offering 'variable' weights (typically rounded to the nearest 100) to a web page would make that page load much slower. …

Ga verder met lezen en/of reageer...

Referendum over de Wet op de inlichtingen- en veiligheidsdiensten 2017

Een artikel, ongeveer één maand geleden geplaatst onder , , , , , , & .

21 maart wordt er niet alleen gestemd over de leden van de gemeenteraad, maar ook over de Wet op de inlichtingen- en veiligheidsdiensten 2017, hier na te noemen de sleepwet.

Het standpunt van de regering is duidelijk, ze zijn voor. En ze zijn eigenlijk voornemens om de uitkomst te negeren.

Mijn advies is om tegen te stemmen. Hoewel de wet wel degelijk een opfrisser kan gebruiken, en dat deels gebeurd om de wet in overeenstemming te brengen met oordelen van het Europees Hof van de Rechten van de Mens, zijn er ook slechte plannen ingeslopen.

Kritiek

Maatschappelijke organisaties

Overheidsorganen met kritiek

  • Raad van State: [Samenvatting advies voorstel nie…

Ga verder met lezen en/of reageer...

Becoming your own local certificate authority (and issue your first certificate)

Een artikel, ongeveer 2 maanden geleden geplaatst onder , , , , & .

It has been quite some time ago, but here is another 'how i do it' article :)

If, by 'accident' you have, like me, chosen projectname.dev for your local development as a convention, and you want to continue using this convention; you will need to become your own CA. There is no other way around it. I tried searching disabling HSTS for localhost.dev, certificate for localhost.dev, but to no avail. Being your own CA, however, makes you HSTS proof (note that you can’t typically override an already set HSTS certificate, that is by design). However, in the old days you could simply mark your own self-signed certificate as trusted for your own domains. This is becoming less of an option these days. Becoming your own CA, however, still is an option.

Warning: The chain of trust

You should trust yourself not share your rootCA’s key and cert with anyone e…

Ga verder met lezen en/of reageer...

JavaScript & Rails: a `webpacker` evaluation

Een artikel, ongeveer 2 maanden geleden geplaatst onder , , , , , , , & .

Webpacker is still opt-in for new Rails projects. But this might change. The JavaScript ecosystem is moving fast and new JavaScript frameworks are pushing customer’s expectations to higher levels. To use these frameworks with your Rails app, you had a few options:

  • Include the JavaScript manually; which requires you to manually copy the files in place
  • Use a gem-wrapper to to install the JavaScript library; but this required quite some maintenance on the Gem-author’s side.
  • Try to mangle npm or yarn into the asset pipeline yourself
  • Use Rails Assets (an automagic Gem-wrapper)

A small praise for Rails Assets

I have been using rails-assets.org the past few years to keep my JavaScript dependencies up to date. It thought it was smart solution; instead of requiring individual developers to maintain Gem-wrappers, Gem wrappers are created on the fly by RailsAssets.org. It was smart and light weight on the developers side and worked perfectly with the Rails' Asset p…

Ga verder met lezen en/of reageer...

Logboek van GDPR compliancy voor murb

Een artikel, 2 maanden geleden geplaatst onder , , , , , , , & .

In dit logboek houd ik mijn vorderingen bij in mijn weg naar GDPR compliancy

De actuele privacy verklaring vind je hier.

Introductie

De AVG (Algemene Verordening Gegevensverwerking), ik krijg er de laatste tijd toch steeds meer vragen over. Toch maak ik mij er niet enorm veel zorgen over, en jurist Charlotte Meindersma deelt gelukkig die mening (in ieder geval voor de meeste ZZP'ers en MKB'ers (<250 medewerkers, die geen data verzamelaars zijn)). Belangrijkste zou namelijk toch al goed geregeld moeten zijn; denk aan bewerkersovereenkomsten met partijen die jij ingschakelt om persoonsgegevens van jouw klanten verder te verwerken, een helder leesbare [privacy verklaring](https://www.frankwatching.com/archive/2018/01/12/zo-is-je-privacyverklaring-av…

Ga verder met lezen en/of reageer...

Privacy verklaring murb

Een artikel, 2 maanden geleden geplaatst onder , , , , , , , & .

Ook ZZP’ers dienen een privacy beleid te hebben in het kader van de AVG.

murb geeft om je privacy. Mocht je hierover vragen hebben kun je altijd contact opnemen. De gegevens zijn:

murb
Sumatrakade 789
1019PX Amsterdam
KvK: 08225054 E-mail: vul het contactformulier in of email naar privacy AT murb.nl

Je mag een verzoek tot informatie inzage, aanpassing of verwijdering van jouw gegevens indienen. Mocht je niet tevreden zijn over murb’s omgang met uw persoonsgegevens dan staat u de weg vrij om een klacht in te dienen bij de Autoriteit Persoonsgegevens.

Doeleinden van de verwerking

Succes meet ik bij voorkeur op basis van contactverzoeken en de uiteindelijke betalende klanten, niet aan overhandigde gegevens. Jouw gegevens worden dan ook slechts voor het doel gebruikt overeenstemmend met de intentie. Schrijf je je…

Ga verder met lezen en/of reageer...

De eerste Symantec certicaten worden binnenkort niet langer meer vertrouwd

Een artikel, 2 maanden geleden geplaatst onder , & .

Vanaf 15 maart worden er meerdere zogenaamde root-certificaat van Symantec (het bedrijf dat bekend is geworden met Norton Utilities en later AntiVirus) niet officieel meer ondersteund, omdat Symantec haar taak niet serieus nam. Symantec heeft het uitgeven van certificaten uitbesteed aan andere partijen en door gebrekkig toezicht op deze partijen heeft het kunnen voorkomen dat er ten onrechte certificaten zijn verstrekt aan derden die geen eigenaren waren van de domeinnaam. Dit wordt beschouwd als een grove schending van vertrouwen, en daarom gaan browsers zoals Chrome en Firefox certificaten van Symantec niet langer meer vertrouwen. Dit heeft uiteindelijk als gevolg dat sites met certificaten van Symantec een melding krijgen dat de sites niet vertrouwd worden.

Het terugtrekken van vertrouwen gaat wel gefaseerd. In eerste instantie wordt er gestart met certificaten uitgegeven voor 1 juni 2016. Halverwege april heeft dit daadwerkelijk effec…

Ga verder met lezen en/of reageer...

Tag descriptor

Charting on the web

Een artikel, 3 maanden geleden geplaatst onder , & .

I've been collecting cool visualisation libraries over the years. Much of those which I thought looked interesting 6-8 years ago are long gone already. One of the few that did survive was a commercial one, Highcharts, which is still worth checking out, even today. As for the open source ones, I'd place my bets on Chart.js. for now. BriteCharts looks like a good contender.

Ga verder met lezen en/of reageer...

Een elitair nieuw jaar!

Een artikel, 4 maanden geleden geplaatst onder , , , , , & .

Elite. Je kunt er een pesthekel aan hebben. Je kunt ze negeren. Je kunt ze adoreren. Of het cliché ervan nadoen (denkend aan Thierry*).

*Thierry is eigenlijk ook best wel elite. Thierry is een van de 150 mensen die niet zozeer uitverkoren is, maar toch wel verkozen. Mij nog niet overkomen.

Ok. Elite. Onlangs werd ik er op gewezen dat #jesuiselite. Werkelijk? Wikipedia zegt:

> Elite een kleine groep in een maatschappij, met buitengewone kwalificaties of privileges, waardoor zij op een bepaald vlak de hoogste positie inneemt. Zo kan er sprake zijn van onder meer politieke, militaire, economische en culturele elites.

[Uitsnede Schuttersmaaltijd ter viering van de Vrede van Munster, Bartholomeus van der Hels…

Ga verder met lezen en/of reageer...

Bitcoin? Blockchain?

Een artikel, 4 maanden geleden geplaatst onder , , , , , & .

Omdat ik de vraag wel eens krijg wat Bitcoin is van mensen die iets minder technisch zijn dan ik, hierbij een poging om de principes achter Bitcoin ook voor leken iets duidelijker te maken.

Wat is het?

Bitcoin heeft drie eigenschappen die het bijzonder maakt. De blockchain, het minen en peer2peer validatie. Maar eerst is het van belang dat je begrijpt dat het mogelijk is om rekenkundig echtheid vast kunt stellen.

Rekenkundige validatie van transacties.

Ver voordat Bitcoin ontstond werd er al nagedacht over het rekenkundig kunnen valideren van berichten. Een speciale controle functie (hash of klutsfunctie) kan een nieuwe waarde berekenen die niet te herleiden is naar de waarden die er in gestopt zijn, maar wel als een controle kan fungeren dat het bericht ongewijzigd is.

Als iemand bijvoorbeeld claimt dat een bericht bericht nummer 100 "x=1 en y=2" is en dat gevalideerd is met een klutsfunctie.

Een (…

Ga verder met lezen en/of reageer...

Developing Keycloak templates with Docker

Een artikel, 4 maanden geleden geplaatst onder , , , , , & .

I haven't had much need for isolating services, something that Docker is really good at. Most dependencies of my Rails apps are covered by Gemfile anyway (and packages.json for JavaScript) and reasonably isolated with rbenv. I don't experience version related issues very often, as I try to stay reasonably up to date and not rely too much on the very state of the art. For temporary projects, however, Docker is a great solution, even for me :o I don’t want an entire JBoss suite running on my machine, so when I had to develop a Keycloak template I knew that Docker would be the right tool. While I’m going to discuss the specifics of getting started with a Keycloak image, the workflow described is replaceable by any other.

So what about Keycloak? Keycloak is a role based authorization and authentication tool …

Ga verder met lezen en/of reageer...

murb blog