2025-10-31 03:52:36
On January 6th, 1995 two bank robbers in Pittsburgh confused law enforcement by not making any attempts to conceal their faces but instead brazenly looking at security cameras as if they were invisible. The reason is that they actually thought they were.
Clifton Earl Johnson had convinced his fellow in crime, McArthur Wheeler that covering their faces in lime juice would make them invisible to cameras. Much like lime juice can be “invisible ink” until you heat the paper. As a test, Johnson had taken a polaroid of Wheeler that showed his face smudged. That a camera fault might be the cause, or doing a second test didn’t get to their mind.
This baffling over-confidence in their flawed approach inspired two psychologist, Justin Kruger and David Dunning to see if there is a common bias in people when it comes to assessing their skills and their actual performance in doing them. They found out that there is such a thing and it is now known as the Dunning-Kruger Effect.
A cognitive bias, where people with little expertise or ability assume they have superior expertise or ability. This overestimation occurs as a result of the fact that they don’t have enough knowledge to know they don’t have enough knowledge.
One could say that the Dunning-Kruger effect is the opposite of Impostor Syndrome. Instead of people not being able to interiorise their obvious successes, people declare themselves as great and experts at things they have no or just a rudimentary clue about.
Over the last few years we’ve been on a constant path to make this the standard mindset in the technology world. It started with a demand for everything to be released incredibly fast and to be a huge success in numbers from day one. Anything not growing exponentially is not a success.
“Fake it till you make it” is given as advice devoid of any irony. Instead, deception and inflation of numbers is seen as a smart move until you have the resources and knowledge to properly do the task. KPIs and OKRs are meant not to reflect delivery goals but aspirations. When you’re not gunning for a promotion every half year you’re not seen as a go-getter or having a growth mindset. In other words, we encourage bragadocious behaviour and language. Some of the things you hear from heads of states and other politicians in interviews sound like Muhammad Ali at press conferences before a fight in the 60s or old school rappers in the 70s and 80s.
But even worse, any interaction I have with AI chatbots gives me the same vibes. They give utter nonsense answers with high confidence and wrap errors in sycophantic language making me feel good for pointing out that they wasted my time. A correct answer is a lot less important than a good sounding one, a positive one or one that makes me interact more with the system. Time in product is the goal, not helping me find the right answer.
The siren song of generative AI to turn anyone into an artist, wordsmith, composer or videographer by using “intelligent” tools is a push into Dunning Kruger territory. Vibe coding or vibe anything really focuses not on the craft, but the result. We’re not meant to create by learning the ropes and understanding the art. We’re much too clever and busy for that. Give it a prompt and create a product, an app or an agent that does your bidding. We’re continuously reminded that we all are capable of genius – if only we let the machines do the boring work for us. Our egos are fed, we are barraged by digital cheerleaders and confidence tricksters.
Adding human effort into things, really creating and writing yourself is taunted as wasting your time and not embracing change and progress. But the cost is that we forget about the craft and we lose the joy of creating. Creativity of any kind is messy and fraught with error and drawbacks. But all of these make us human and who we are. As Leonard Cohen put it: “There is a crack in everything, that’s how the light gets in”. Sure, you might not be good at painting, composing, writing or shooting movies. But a terrible, human effort still is worth so much more than asking the machine to build you a boring solution focused on crowd pleasing more than being a thing in itself.
I am not happy about this, and I don’t see it as progress. If anything, it is deception and watering down craft and art. Politics have become an attack on intelligence, decency and research in favour of fairy tales of going back to “great values” of “the past when things were better”. Social media has become devoid of the social part and is a numbers game and addiction machine. But you know what? I don’t care. I keep doing what I do. I write down things I consider important at that time. I paint things although I suck at it. I publish on the web and my own blog because nobody stops me. Sure, I feel like a fraud when people applaud what I do more often that not. And yet – the joy of creation is something we should never give up on. Do you feel like what you do isn’t good enough or worth while? It is, and even if what you did isn’t amazing quality, you’ve created it and it is yours. And maybe, just maybe you are not the best judge to assess the quality of what you did anyways. One person’s disappointment may well be a joy to others. Keep creating and keep striving to improve and if others impressed you, tell them about it.
2025-10-08 22:08:04
When people turn data into HTML tables using JavaScript, they either use the DOM methods (createElement() and the likes), but most of the time just append a huge string and use innerHTML, which always is a security concern. However, did you know that HTML tables also have an old, forgotten API ? Using this one, you can loop over tables, create bodies, rows, cells, heads, footers, captions an summaries (yes, HTML tables have all of those) and access the table cells. Without having to re-render the whole table on each change. Check out the Codepen to see how you can create a table from a nested array:
let table = [
[‘one’,’two’,’three’],
[‘four’,’five’,’six’]
];
let b = document.body;
let t = document.createElement(‘table’);
b.appendChild(t);
table.forEach((row,ri) => {
let r = t.insertRow(ri);
row.forEach((l,i) => {
let c = r.insertCell(i);
c.innerText = l;
})
});
You can then access each table cell with an index (with t being a reference to the table):
console.log(t.rows[1].cells[1]);
// => five
You can also delete and create cells and rows, if you want to add a row to the end of the table with a cell, all you need to do is:
t.insertRow(-1);
t.rows[2].insertCell(0);
t.rows[2].cells[0].innerText = ‘foo’;
There are a few things here that are odd – adding a -1 to add a row at the end for example – and there seems to be no way to create a TH element instead of a TD. All table cells are just cells.
However, seeing how much of a pain it is to create tables, it would be fun to re-visit this API and add more functionality to it. We did add a lot of things to HTML forms, like formData and the change event, so why not add events and other features to tables. That way they’d finally get the status as data structures and not a hack to layout content on the web.
2025-10-01 17:40:14

Alright folks, the call for papers is open for two of the WeAreDevelopers events 2026, so if you want to speak at any of them, activate the following links and enter your details and the ones of your session(s):
Here are some points on how to write a talk description that will be likely to be picked by us:
Looking forward to your submissions!
2025-09-29 03:13:00
A lot of technical people currently spout regressive and harsh messages about race, religion, identity and women’s rights to side with “strong man” politicians and parties. That’s their right, but it also is an abuse of reach and power. Time to focus.

A lot of the people whose work I adore and admire are terrible and weird human beings. That’s where it’s tricky to separate the art from the artist and consider if and how you want to support it. This gets even trickier when you find out more about the person, they get caught doing horrible things or their fame gets to their head and they start promoting a terrible opinion about something just because they can.
Maybe the real issue is the cult of the person and we need to stop inflating people’s egos or pretend that there is such a thing as one person’s skill and ideas being the main reason why their work becomes a success.
Let’s take a look at some examples:
There is no doubt that Stanley Kubrick was a genius and transported cinema into places it’s never been before. All the reports of working with him sound terrible as he pushed people to the brink of exhaustion. Studios hated working with him as every movie went far over budget.
There is also no doubt that Quentin Tarantino left an indelible mark on pop culture but I for one wouldn’t want to be locked in a broken down lift with him as the man just seems off.
Sometimes it’s the other way around: I don’t like the Roger Moore Bond movies as he comes across as smarmy, horrible towards women and silly. The more I read about Moore himself, the more I admire the person as a genuinely great chap.
Sometimes there’s no surprise at all. When Till Lindemann, the singer of Rammstein got accused of sexual misconduct and abuse nobody who ever saw the chap or can read German lyrics should feel any surprise. That doesn’t excuse it, of course.
Then we get the utterly baffling ones. JK Rowling created an amazing world with Harry Potter (and failed to extend it to more with Fantastic Beasts). The first few books were questionable when it comes to the quality of writing, but the world building was amazing and the overall arc of seven books getting darker and darker as the main protagonist got older was excellent.
Rowling built a magical world where love is the strongest power, even protecting yourself against non-blockable death spells. A world full of magical creatures, some of them half human, and a pivotal gay character. A world where the good people stand up for the rights of merpeople, centaurs and elves and the bad people bang on about blood purity. A world where dark forces use weak politicians to break down the order and establish a fascist regime. It’s a great depiction of what can go wrong if people strive for power at all cost.
How a person responsible for a world like that can not mount the mental curb that some people aren’t the gender they were born as baffles me. That a person that did the great thing of paying her taxes and giving back to a social system that once supported her now spends her money on lobbying to get laws in place that limit the freedom of people baffles me even more.

Currently hordes of old comedians complain that everything is too woke and they are being censored because they can’t tell their old racist and sexist jokes and that people were much more open then or “could still take a joke”. Maybe they couldn’t even back then but society was less evolved and considered a sexist statement just a thing that women should be “open enough” to endure. Or – maybe your art should have evolved with the society we are in now.
My favourite is podcasters with hundreds of thousands of listeners banging on about that they are being censored. Both them and their listeners would do well to look up irony.
Maybe it is really true that power, reach and wealth corrupts. I even felt that with the limited impact I have. I wrote books, taught courses and spoke at hundreds of events over the years. I was on podcasts, on panels, an invited expert on some lawmaking processes and got interviewed by mainstream media. This feels good and you think you should use that reach and fame to also do more and bring your beliefs and political ideas to people, too. After all, they are yours and can only be correct and amazingly insightful, right?
People ask you for all kinds of advice, too. What computer you use and if it’s the best there is. What they should do to be as successful as you are. What you think of other successful people and products. Where you think everything is heading. It is stifling and scary that people think everything you do and touch is the correct way of doing things. But it is also tempting to start believing that.
Fact is that we all talk bollocks from time to time and it’s easy to get excited about your own success and make blanket, cool sounding statements.
Currently there is something really worrying and disgusting happening. Leaders of countries, owners of media outlets, politicians and company owners start embracing strong, simple, regressive messages. Dividing messages and calls to return to values of old. Where men were real men, women were there to have children and everybody was healthy, fit and strong. Where the strongest survived and there was a clear hierarchy of worth when it comes to what people look like. In other words, a fairy tale of things being better in the old days before we had to care about what other people feel. Nobody calls out for proof, blatantly lying about your achievements is considered a normal way of “fake it till you make it”.
And this is where a lot of people see their chance to get a slice of power. They repeat and amplify these messages and paint themselves as better than others because of their successes and because they concentrated on being an alpha person. They also wallow in self victimisation painting themselves as people forced for years to keep silent and now finally have a chance to say what they really think. That these topics mesh to 100% with the rhetoric of the current strong man politics can surely only be coincidence.
The most evil character in Harry Potter isn’t Voldemort. It’s Umbridge. The most evil character in DS9 isn’t Gul Dukat. It’s Kai Winn. The enablers, the repeaters, the multipliers of control, censorship and exclusion.
And this is what I see right now when I look at tech bros, podcasters and washed out celebrities siding with the enemies of progress. This isn’t about believing what they say, this is about seeing an opportunity.
In every totalitarian regime there were people who gave inhuman orders. There were others who executed them, either because they believed them to be necessary or because they were scared of the consequences when they didn’t follow the orders. And then there were thousands of people who looked the other way or felt powerless to prevent these atrocities. They didn’t commit crimes, but they enabled them.
Many people spouting hatred complain about “cancel culture” and movies, music and podcasts being cancelled because they won’t fit the “woke agenda”. This does exist and maybe being too zealous about this topic is to blame for this counter movement. I’ve been uninvited to speak at events because of things I said and even more often about things people heard other people say that I did or said. This hurts and there is not much you can do about it. I used it to introspect and learn to care more about what I say and do especially if it could be taken out of context.
When it comes to existing art not being shown anymore, I’m not for cancellation at all. Keep showing old programs unless they actually by now represent hate speech. Show them with warning and explanation to consider them as a product of that time and place. If you don’t do that, people can’t learn and will create new products that make the same mistakes.
It’s not about legitimising inappropriate content, it’s about making it obsolete and embarrassing.
If we stopped showing anything inappropriate, the whole Mel Brooks back catalogue would be gone, and that would be a shame. His work was lampooning everything and everyone and it was funny as hell. And the artist himself helped a lot of others succeed. Also see: South Park.
When it comes to new content being created, it’s about context. A far right podcaster spouting hatred towards immigrants comes with the territory. The job of all of us is to detect lies, hyperbole and conspiracies and shine a big light on them. You won’t be able to sway their already existing audience but you can warn others and uncover the rat catching method behind the tirades.
We always talk about separating the art from the artist when it comes to excusing the ongoing showing of movies and music of people who turned out to be toxic.
We could use this and turn it around though: separate the work on the product from the biased messages they try to also tell the world about.
I don’t need the opinion of a football player on the Middle East in prime time news. Morrisey brings nothing of value to the table when it comes to Brexit. Seeing John Cleese becoming the very limited and bigoted person he lampooned in Monty Python and Fawlty Towers is painful to watch.
If a presenter at a technical conference bangs on about being an Alpha male, racial purity or family values that is simply hijacking the speaking slot. As a moderator I’d have no qualms interrupting and stopping the talk. Not to censor but to avoid wasting everybody’s time. If someone is invited to give a specialist talk and requests to also bring in their radical beliefs, I will not pick that person. Stage time, podcast time and online interview time should be considered precious to give usable information to the audience, not give hatred a platform.
We need to break the fandom and admiration down to focus on the things that person does well. I can tell you tons about building accessible interfaces and writing maintainable code. If I ever give advice on how to raise a child I’ll be talking nonsense as I’ve never done it. So disregard my advice in this matter and tell me to stop.
Warning bells should go off any time the creator isn’t willing to separate their ideals (or those he or she repeats to get on the good side of those in power) from their product.
A developer of a highly successful framework or app speaking their political mind on their social platforms is their right.
The same person publishing them on the official blog of the product or starting to stop contributions from people not aligned with their beliefs is an abuse of power. The community of that product should react accordingly, calling out that this behaviour isn’t wanted, limit the powers of that person or – in the worst case – fork it. That isn’t censorship, it’s acting against a hostile takeover from within much like any other social engineering hacking attempt.
As a customer or consumer of that person’s product it’s up to you if you want to support such abuse as the product is too useful or if you want to consider alternatives. Nobody has to agree with those who shout the loudest. And being an expert in one thing that gives you a large following doesn’t mean we need to hear you evangelising your truth on all other matters.
2025-09-25 20:08:53

When I moved to the UK at the tail end of the last millennium, I wasn’t in a good place. I was hired by a US company to work in their German office, and they sent me over to the US to work on their product. I lived in a hotel for a few months, coming home to an empty, cleaned room every day. It was very “Lost in Translation”. The German part of the company went bankrupt during this trip, so I was asked to move to the UK to stay with them. Anglophile as I was, I took this opportunity and had a few trips in between the US and the UK to find a place to live.
My partner of five years also said they’d love to make that move with me and start a new chapter. That didn’t work out – I was dumped in a call on a pay phone in a hotel in San Francisco, went out and got really drunk. When the US stint ended, I went to London, checked into my new flat and waited for my stuff from Germany to arrive.
And then I plunged into London. I went clubbing a lot. I spent the day in the office and went to the pub with my colleagues in the evening. I enjoyed and fell in love with the place. I met people from all over the world, I dated people of many races and backgrounds. I had food I never had, I heard music and saw bands I’ve never heard of or even knew existed. I’ve been to Notting Hill Carnival, immersing myself in this wonderful, wild and colourful scene.
London opened my mind, it made me find the great in lots of cultures and seeing them bringing that to the UK lifestyle was at times a hilarious clash, but wonderful to witness. Very early on I realised one thing: being British is not the same as being a pasty white uptight person, Brits come in all shades and sizes. The most British person I know with a clipped accent, fierce devotion to the Royals and a fetish for a good cuppa is a gay friend who is dark Indian.
Working in Soho I got to know a lot of LGBTQ folk and a few of my colleagues came out or even changed gender during the time I worked there. And they got support from everyone, it wasn’t a problem or a scary thing. London was inviting, colourful, open and amazing. That’s the London I miss.
It’s a big city. In my 16 years tenure I had one laptop, a mobile and a bike stolen. I got into some fights and had three attempted muggings. All by white young dudes, by the way. I lived next to a huge mosque and the area two streets down was hard-core Jewish. My butcher was Algerian and when I ordered in French-ish, I got better prices. It worked.
Then UKIP came around and told people that everything is terrible and its all the forrins’ fault. And disappointed and disgruntled people believed that nonsense. I left the country after Brexit and moved to Berlin, which is great but does feel like a Tesco value version of the London I encountered.
So if people claim that they remember a safer, cleaner and racially homogenous London they either never lived there, or didn’t immerse themselves in it. Or completely talk out of their arse following an utterly different agenda, one that I find despicable, regressive and governed by fear and hate and not inclusion and inspiration.