Open in app

Sign In

Write

Sign In

Olaf Thielke
Olaf Thielke

27 Followers

Home

About

Pinned

Using Use Cases in Code

Want to blow the minds of your fellow developers with a powerful technique in software development that almost nobody is using? Then please read on. I am not exaggerating; in my 25 years in software development, I have seen almost no developer do this. I admit this could be an…

Software Architecture

7 min read

Using Use Cases in Code
Using Use Cases in Code
Software Architecture

7 min read


Sep 15

The Sad and Happy Faces of Liskov

Fundamentally, the Liskov Substitution Principle (LSP) is concerned with well-behaved sub-types. What does it mean for subtypes to be well-behaved or, more specifically, substitutable? What even is a subtype? Subtypes A child class is a subtype, and an interface implementation is also a subtype. For example, a supertype Animal is a…

Software Development

4 min read

The Sad and Happy Faces of Liskov
The Sad and Happy Faces of Liskov
Software Development

4 min read


May 6

How Good is ChatGPT at Advanced Programming?

It's time to up the ante and challenge ChatGPT's code-generating abilities. Last time, I requested OpenAI's Large Language Model (LLM) AI to write a ShoppingCart class. ChatGPT delivered and produced surprisingly clean, working code. Well done, ChatGPT! Yet, how will ChatGPT fare with something a bit grittier and more complicated…

Programming

8 min read

How Good is ChatGPT at Advanced Programming?
How Good is ChatGPT at Advanced Programming?
Programming

8 min read


Apr 21

The Two Synchronised Arrays Problem

Imagine we have a system for managing users. Within the system source code, two separate arrays hold information on users. One contains unique identifiers for users, represented by integer user ids: [1, 7, 9, 4, 12] The second array contains the names of the users: ["Dave", "Carol", "Alice", "Eddie", "Bruce"] …

Programming

3 min read

The Two Synchronised Arrays Problem
The Two Synchronised Arrays Problem
Programming

3 min read


Apr 18

How To Be Better Than a Genius Programmer — The Simple Way

If you’ve been programming for a few years, you likely will have come across a Genius Programmer or two. You may be sitting next to one right now. Genius programmers are easy to spot — they’re the ones who know even obscure programming frameworks in intimate detail. They love exploring…

Programming

3 min read

How To Be Better Than a Genius Programmer — The Simple Way
How To Be Better Than a Genius Programmer — The Simple Way
Programming

3 min read


Apr 16

How good is ChatGPT at programming?

These days, it seems, every developer is test-driving — and then writing about — the code-generating capabilities of OpenAI’s ChatGPT. Admittedly, I also was curious about the quality of code ChatGPT could generate. …

Programming

10 min read

How good is ChatGPT at programming?
How good is ChatGPT at programming?
Programming

10 min read


Nov 7, 2022

What Are TDD Scaffolding Tests, And Why Do We Need Them?

Three rules govern Test-Driven Development (TDD). The first rule asserts, ‘Only write production code to make a failing unit test pass. ‘. Here we have the central tenet of TDD — that we hold off writing behavioural code we have a unit test demanding the behaviour. And this test must…

Software Development

4 min read

What Are TDD Scaffolding Tests, And Why Do We Need Them?
What Are TDD Scaffolding Tests, And Why Do We Need Them?
Software Development

4 min read


Nov 1, 2022

A Simple Way Of Identifying Business Logic

Business Logic Business Logic is the beating heart of every software system. Yet, many software developers need help identifying it. If we collectively want to build (and maintain!) programs that are easy to work with, we need to get good at this one task. …

Software Development

5 min read

A Simple Way Of Identifying Business Logic
A Simple Way Of Identifying Business Logic
Software Development

5 min read


Oct 25, 2022

What Are Command Functions?

Command and Queries Functions comprise the two complementary behaviours of Command Query Responsibility Separation or CQRS. While Query functions measure and report on the state of a system, Command functions, or Commands for short, change a system’s state. Command Functions How do Command Functions alter the state of a system? Simple, they…

Software Development

3 min read

What Are Command Functions?
What Are Command Functions?
Software Development

3 min read


Oct 18, 2022

3 Reasons Why The switch Statement Is Killing Our Software

When I first started programming, I fell in love — with the switch statement. Here I had found a way to construct long if ... elseif ... elseif ... else conditionals in a slightly more concise way. I was in programming heaven. The switch statement The switch statement exists in many programming languages…

Software Development

6 min read

3 Reasons Why The switch Statement Is Killing Our Software
3 Reasons Why The switch Statement Is Killing Our Software
Software Development

6 min read

Olaf Thielke

Olaf Thielke

27 Followers

'The Code Coach'. Software Simplifier & Craftsman

Following
  • Alex Mathers

    Alex Mathers

  • Tim Denning

    Tim Denning

  • Logan Rane

    Logan Rane

  • Michael Simmons

    Michael Simmons

  • Charlie Martin

    Charlie Martin

See all (16)

Help

Status

Writers

Blog

Careers

Privacy

Terms

About

Text to speech

Teams