willem.com

Programming on Willem's Blog

Dig for dummies

Explaining an highly useful network tool

May 24, 2019
Learn how to use the dig command to query domain name servers to find the source of network problems, IP-addresses, hostnames, mail servers and related info.

When you're building websites, apps or email services you may run into domain names and their configurations. When everything is working as it should, most of this is invisible. But when troubleshooting a domain name configuration, it may be necessary to dig a little deeper... read along to learn how!

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!

Cyber security: 5 easy tips to protect your server against hackers

Server hardening best practices for Windows and Linux

Mar. 10, 2018
These 5 practical cyber security measures will improve the safety of server, website and data.

This week one of my clients was hacked and asked me for emergency assistance to help secure their server infrastructure. It was a web server that ran WordPress websites on Apache (with PHP/MySQL), including a few webshops with customer data. This hack could easily have been prevented with the following best practices, is your server secure?

Tablet as main computer

Comparing the Microsoft Surface Pro to iPad Pro

Mar. 7, 2018
I have been using a tablet as my main computer for quite some time now. In this blog post I share you my experience on using Surface Pro and iPad Pro to get my work done.

For the past few weeks I have been using the Microsoft Surface Pro as my main computer. It's a modern tablet computer that can be used as laptop with the type cover. With the Surface Pen, it's a versatile PC that works in a lot of different ways. Time to find out if it's any good and how it compares to my other tablet computer, iPad Pro.

Updating Snake '97

About the challenges of developing a wildly popular game

Feb. 21, 2018
This month I bit the bullet big time: I redesigned the game engine of the wildly popular Snake '97 game. Read about the design challenges in this blog post.

Few years ago my brother threw a beer on my iPhone in an Amsterdam bar. The poor thing didn't like the Dutch brew as much as I do: it died. While waiting for a new phone to arrive, I used an old one that couldn't do anything but texting, calling and... Snake! The idea for Snake '97 was born and this month it was time to update the wildly popular game.

Clouds below my floor

Building a little datacenter in my basement

Aug. 31, 2017
Building a little datacenter in my basement utilising a very fast internet connection.

At my home I have this crazy fast optical internet connection. It is a 600MB up and down fibre connection which directly arrives in my home (no copper cables involved). It's like a private internet highway. Reason enough to find out if I could do something to make better use of all this speedy fiber galore...

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.

Programming on Apple Watch

Serious about crazy experiments

Feb. 16, 2017
Programming with VIM over SSH on Apple Watch using a bluetooth keyboard

Over the past years I have been no stranger to crazy experiments, but this time I really wanted to push it into the extreme: programming on an Apple Watch. Would it be possible to actually write code on such a tiny device? Why even bother? This post is about the case for crazy experiments, and why you should try too!

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
Typing on a tablet is perfectly possible using an hardware keyboard.
Typing on a tablet is perfectly possible using an hardware keyboard.
A trick the original Snake couldn't: controlling the game using a Bluetooth DualShock PlayStation controller with an analog thumbstick
A trick the original Snake couldn't: controlling the game using a Bluetooth DualShock PlayStation controller with an analog thumbstick
Real programming code, real Apple Watch. No Photoshop.
Real programming code, real Apple Watch. No Photoshop.
Toshiba T2130CT laptop with a 75Mhz Intel 486 processor and a whopping 16MB RAM (that is megabytes!)
Toshiba T2130CT laptop with a 75Mhz Intel 486 processor and a whopping 16MB RAM (that is megabytes!)
Using dig to get information about a domain name, willem.com
Using dig to get information about a domain name, willem.com
Working with Surface Pen and Apple Pencil
Working with Surface Pen and Apple Pencil
Nokia 9300i, officially not a communicator but nonetheless a device with advanced mobile communication options for its day (2007). Running Putty on Symbian Series 80.
Nokia 9300i, officially not a communicator but nonetheless a device with advanced mobile communication options for its day (2007). Running Putty on Symbian Series 80.
Look what happens to my face when my patience is tested...
Look what happens to my face when my patience is tested...
Clouds below my floor: my little basement datacenter.
Clouds below my floor: my little basement datacenter.
Zoom in to work on details more precisely
Zoom in to work on details more precisely
iPad Pro + Apple Pencil replacing paper
iPad Pro + Apple Pencil replacing paper
Never thought I would be happy to see this: the Windows 98 boot screen!
Never thought I would be happy to see this: the Windows 98 boot screen!
Snake '97 available as free download for iOS, Android, macOS, Windows and ChromeOS
Snake '97 available as free download for iOS, Android, macOS, Windows and ChromeOS
Shiny new Apple iPad Pro, Apple Pencil and the Smart Keyboard
Shiny new Apple iPad Pro, Apple Pencil and the Smart Keyboard
Music from the office cabinet - iPhone as a connected music player. Quite the solid rock show in combination with Apple Watch as remote.
Music from the office cabinet - iPhone as a connected music player. Quite the solid rock show in combination with Apple Watch as remote.
Snake '97 running on iPhone X - looking and feeling like the retro mobile phone game from the 90s
Snake '97 running on iPhone X - looking and feeling like the retro mobile phone game from the 90s
Bitmap images are like chessboards, where the pixels are squares
Bitmap images are like chessboards, where the pixels are squares
Touch screens are important these days when designing (and testing) interfaces
Touch screens are important these days when designing (and testing) interfaces

More Programming on Willem's Blog

All blog posts