Photo by Ben White on Unsplash

A wild customer appears. He asks:

I would like to have an app for this with a web application for that. Can you make that work?

So I say:

Of course I can make that work! I’m an engineer after all. It will take about six months in total, and I can give you a rough estimate of costs. But I need two weeks to do some further analysis and engineer more detailed requirements, after which I can give you a more complete overview of what it will take and what you will get.

And the response:

Can’t we just…


We are going to set up a development environment for a project consisting of various services. All of these services will be containerized with Docker, and they will all run simultaneously during development using docker-compose.

Our environment will feature instant code reloading, test-driven development, database connectivity, dependency management, and more™. It will be possible to easily deploy it to production with docker-compose or with Rancher. And as a bonus, we’ll set up continuous integration on Gitlab.

The article is about efficiency, so I’ll get straight to the point.

The goals

We want to:

  • Type code and observe changes as soon as possible…

REST is a heavily oversimplified and massively misunderstood (but very widely used) concept for designing API’s. Just look for any forum thread that features Roy Fielding (the “founder” of REST) and you will probably find him telling the author and other participants how they misunderstood what he intended REST to be. Which is perhaps no surprise, as his original paper is too long to read for many, and the ideas are not completely trivial.

So instead of REST, we usually get something almost, but not quite, entirely unlike REST.

REST is often simplified to CRUD because contrary to REST, CRUD…


Photo by Heather Zabriskie on Unsplash

Java 8 has all its streams in all the right places, just my cup of coffee. You know what, I think I’ll take it out for a digital date. It’s Friday the 4th of August, just after 15:00 CEST.

How late will we meet?

No worries, I’ll figure it out. Let me just see which classes to use.

Date

That’s a good name! Let’s have a look.

The class Date represents a specific instant in time, with millisecond precision.

Yeah I need to be precise. Let’s go with this one.

>>> Date date = new Date();

Look at all those dates…


Photo by Simon Abrams on Unsplash

Being able to program is one of the few skills that can make you be seen as less than what you are.

I have been a product manager, project manager, SCRUM master and product owner, usability and requirements engineer and plenty of other things. I can interview users and design user interfaces, I can lead and coach teams, manage deadlines and set up projects. I’ve done all those things, and I’ve done them well.

But as soon as I mention that I write code, I’m a developer. Full stop. Now, a project manager has to be assigned to keep me…


When talking about Internet of Things systems development, the discussion often ends up being about sensors and embedded development. But that’s not what the Internet of Things (IoT) is really about, and is a gross oversimplification of what is involved when developing an Internet of Things system.

An IoT system is never simple, or predictable. Developing for such a system is very difficult. In fact, it is much harder than developing for many other, more well-known or “traditional” software systems. This is caused by, among other things:

  • The number of entities/devices;
  • The fact that these entities are hard (and sometimes…

Photo by Clark Tibbs on Unsplash

There’s an incredible shortage of Software Engineers, let alone skilled and experienced Software Engineers. Looking at the number of new graduates, or even kids and young adults that are truly interested in Software Engineering, this isn’t going to change. On the contrary.

Software is starting to permeate more and more of our lives. Nobody had a smart phone 15 years ago, and now everyone does, and everyone has access to bazillions of app. Software is in our cars, all of our money relies on software, and most of our businesses too. …


Scrum is a honkin’ great idea. It takes the ideas of agile and puts them into an easy to apply package. When used right, it improves communication within the team, it will allow you to iteratively develop fairly easily and will continue improving your process.

However, it’s not without disadvantages. Let’s have a look.

Sprints decrease productivity

Well, in a certain sense at least. When you come from an unpolished cowboy style of developing, it will definitely increase productivity, although most of the gain will come from improving the focus of your team. …


I originally wrote this article for developers.paylogic.com.

Paylogic has been using SCRUM for its engineering process for years now. We’ve made quite a bunch of changes throughout this time and learned a lot. Right now we have a highly repeatable and predictable development process, which makes it very easy for new engineers to start and almost guarantees that a commitment will be met. I would like to share some of the most important things we’ve learned along the way.

When doing SCRUM, do SCRUM

There are way too many companies out there doing something and calling it SCRUM (or agile), and not actually doing it…


Photo by Tina Rataj-Berard on Unsplash

A new and exciting piece of Software technology comes out. It’s slick and shiny, and it promises to do something that was never before thought possible. It’s revolutionary and everyone talks about it.

And then nothing happens.

Well, that’s of course not completely true. Meetups and hackathons are organized. Online courses are created. Articles are written, speakers speak and tinkerers tinker. Everyone tells each other how great the piece of tech is, how this and that are great use cases, and that it’s a matter of time before it changes the world as we know it.

But, crucially, there’s nobody…

Lars de Ridder

Problem solver, Requirements Engineer, System Designer, Founder of XIThing.io and Software Engineer of all kinds of stacks

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store