willem.com

Webdesign on Willem's Blog

CAPTCHA Alternative

Protect your forms in a user friendly way

July 30, 2022
If you're looking for a user-friendly alternative for CAPTCHA's you should check this post out where I outline how I protect web forms against malicious actors and spammers.

Chances are that you've encountered a CAPTCHA in the wild: they protect web forms by asking you to type over weirdly rendered characters or by asking you to select photos containing a particular thing. Why are they used and is there a user friendly alternative?

Increase traffic to your blog with a RSS feed

How to setup RSS/Atom using NodeJS

Oct. 31, 2020
Using NodeJS I added RSS feeds to my blog as support for feeds can still provide you with value. Read about the

Writing for my blog has been a lot of fun, I receive messages from all of the world about the things I like. Traffic is growing, every month more readers are finding their way to my blog. This week I received a request to support RSS feeds on my blog. I wondered, are RSS feeds still relevant today?

Scalable application design without magic

Leveraging client computing power for high performance with many users

May 11, 2020
I needed to design a scalable backend infrastructure that could handle lots of concurrent users. I did this by leveraging the client's computing power having it handle most of the user interaction workload.

As part of the online food ordering app I'm building, I needed to design a scalable backend infrastructure that could handle lots of concurrent users. Scalability is considered a hard problem to tackle. Often it's presented like it's something magical, done by million dollar companies using secret tools. But, there is no such thing as magic, or is there?

Designing an interface for a food ordering page

Striking a balance between powerful options and mobile usability

May 1, 2020
Designing a food ordering page is surprisingly challenging because of the many variables that need to be accommodated on a very small screen.

Online ordering pages are more important than ever before. The COVID-19 virus, the resulting lockdowns and the social distancing rules have emphasised the need for a well-designed webshop user interface. This is surprisingly hard to get right!

Search like a pro: Google search operators

Comprehensive list of advanced search operators

Apr. 25, 2019
Read along for a comprehensive list of advanced Google search operators that allow you to filter your search results.

You probably use the world's most famous search engine to find things everyday, but you might not know about some of its advanced search operators. You can use these special search phrases to find things that are otherwise burried in the search results. Read along for a comprehensive list of advanced Google search operators.

WordPress: 10 tips to secure your website

Keep hackers out of the world's most popular content management system

Mar. 31, 2019
A lot of people use WordPress to manage their website. Prevent your site from being hacked using this blog post.

A lot of people use WordPress to manage their website, therefore it's no surprise people ask me to have a look at their site's security. As ethical hacker, I encounter WordPress in different shapes, sizes and states. Some of them are really badly protected against hacks. Prevent your site from being hacked using these 10 practical tips.

Understanding the security concerns in shared hosting

Considering open ports and unused network facing services

Feb. 28, 2019
People pay me to hack them, provided I'll explain how I did it. Read along to learn how hackers use security holes to hack your app, webshop or website!

People pay me to hack them, provided I'll explain how it was done, so future hacks can be prevented. As security consultant, I scan for weaknesses in my clients' apps, webshops and websites. Very often a hack starts by exploiting a security hole that is visible remotely. Read along to learn how hackers find security holes and what you can do to secure them.

Optimising images for the web and performance

Reduce filesize with jpegoptim, optipng, pngcrush and pngquant

Sep. 26, 2018
Make your website faster by optimising the images. This posts explains how you can do this.

One way to make your website faster is to make it smaller. Not with tiny fonts, but with less bytes! More than half the weight of an average website is because of images. Yet very few people optimise their images for the web and performance, time to find out how much bytes you can safe!

Google Analytics vs AWStats

Understanding web traffic statistics software

Aug. 20, 2018
Comparing Google Analytics with AWStats to find out where they differ and which is better.

This month I have been working on website statistics, tracking traffic using different technologies. Some of my customers use Google Analytics, others use AWStats, and some use both. Which is better is often debated, but few people really understand the differences. Time to shed some light on the magic of web statistics.

The day I killed my LAN

Turned off my local network and went 4G only

July 31, 2017
I killed my office LAN and went 4G only. Saves a lot of clutter, energy and money.

Today I called my provider to quit my office's ADSL internet subscription, I don't need it anymore. I have turned off my local area network and switched my workflow onto mobile internet only. The simplicity and savings actually surprised me so much, that I made blog post for it.

iPad Pro next to my primary machine

Using it with Apple Pencil as a creative powerhouse

Jan. 30, 2017
Using iPad Pro with Apple Pencil next to my computer to form a create powerhouse

I wanted see if I can find something better than my old fashioned pencil and paper that I use for designing software as professional developer. I knew iPad Pro from my test last summer, figuring out if it could replace my primary development machine. While it may not be able to completely replace my thrustworthy ThinkPad, it turned out to be a totally different story when it comes to paper.

iPad Pro as primary computer

testing iOS as primairy development platform

Aug. 15, 2016
Is the time right to use an iPad as primary development platform to get some real work done?

The lack of physical clutter, distracting branding, or blinking LED's makes the iPad Pro a textbook example of minimal design. My despiction of distraction explains my interest in using the iPad Pro as only computer to test if it is up to the task. Is Apple's latest effort on iOS enough to enable it to do serious development work?

Building the blog... in style!

Developing on a 20-year old computer with 16MB RAM and Windows 98

June 23, 2016
Find out if it is possible to turn a computer from the 90s into a modern development machine.

One must be a bit crazy to come up with the idea to build a blog (as in: actual programming) on an old 486 laptop with just 16MB RAM. I happen to be that crazy: I took my very first laptop from the 90s and decided to find out if it was possible to turn it into a development machine.

All blog posts
Using nmap to scan a hosting server, identifying network facing services and open ports
Using nmap to scan a hosting server, identifying network facing services and open ports
Configuring NGINX to redirect common feed URL's to the generated RSS files
Configuring NGINX to redirect common feed URL's to the generated RSS files
It's pretty hard hacking into my WP-Admin page because you cannot find it (hint: it's not at /wp-admin)
It's pretty hard hacking into my WP-Admin page because you cannot find it (hint: it's not at /wp-admin)
Password dictionary attacks use lists of known (leaked) passwords, you can find them on shady parts of the internet
Password dictionary attacks use lists of known (leaked) passwords, you can find them on shady parts of the internet
Use WP Security Audit Log to keep an eye on what's happening with your WordPress website (wpsecurityauditlog.com)
Use WP Security Audit Log to keep an eye on what's happening with your WordPress website (wpsecurityauditlog.com)
Different kinds of hosting: Shared hosting, VPS hosting and dedicated hosting visualised (a circle representing a physical server)
Different kinds of hosting: Shared hosting, VPS hosting and dedicated hosting visualised (a circle representing a physical server)
Separating the remaining server workload: serving products and handling orders
Separating the remaining server workload: serving products and handling orders
Maybe... my next office? ;-)
Maybe... my next office? ;-)
Ordering food online
Ordering food online
Charging and listening to music simultaniously using an Apple Lightning dock
Charging and listening to music simultaniously using an Apple Lightning dock
Bitmap images are like chessboards, where the pixels are squares
Bitmap images are like chessboards, where the pixels are squares
Update WordPress from the wp-admin dashboard
Update WordPress from the wp-admin dashboard
Keep in mind that help is available - I know my way around servers and cyber security
Keep in mind that help is available - I know my way around servers and cyber security
The 486-development machine!
The 486-development machine!
Once a hacker knows what software your website uses, its easy to lookup known security holes using databases like cvedetails.com
Once a hacker knows what software your website uses, its easy to lookup known security holes using databases like cvedetails.com
Typical CAPTCHA's you may encounter on the web (image credit: Wikipedia and Google)
Typical CAPTCHA's you may encounter on the web (image credit: Wikipedia and Google)
Rolex GMT Master
Rolex GMT Master
Handling lots of traffic through distributed computing
Handling lots of traffic through distributed computing

More Webdesign on Willem's Blog

All blog posts

Articles (155)