Steven Koerts

Software Engineer, Programmer, Web Developer and Storyteller.

C#/.NET
EF Core
Node.js
Typescript
React
Next.js
Python
SQL
MongoDB
HTML/CSS
PHP

Bio.txt

open_mic.jpg

Idea's

Bio

Steven Koerts (1997)(Rotterdam, The Netherlands) is a software engineer, web developer and a passionate storyteller. He graduated in 2020 from a Bachelor (BSc) of Computer Science from the Rotterdam University of Applied Sciences. Steven has worked for IT Startups and Digital Agencies. His work experience varies from small business websites to large scale applications. Large scale web applications come with another level of complexity, having to build multiple 3rd party integrations and dealing with external stakeholders that are located all over the globe.

In the evening and weekends you could spot Steven performing stand-up comedy, poetry or spokenword at an open mic event.

Open Mic Life

A picture of me at my best when I hit the stage.

blog1.txt

Func.ts

What to do with your thoughts?

(Put them on the internet!)

The idea of having a personal website is a good way to express creativity. From old style 90s websites and personalized homepages to big multinational brands. Having a place where you can try new idea's and directly share them with the wonderfull world of the wide web gives a feeling of ultimate freedom. Whether you put your idea's on some sticky notes on the wall, or in a public directory for everyone to see. Writing it down and sharing your thoughts is the first step towards realization.

Don't be affraid to share new idea's and random thoughts. Just make stuff, throw it into the world and let the people respond to it.

The beauty of functional programming

Functional Programming is one of those skills that not every programmer has and where the opinions among developers deviate whether they think it is usefull, or not. Where one programmer will see pure beauty within closures, lambda expressions, immutability, function compositions and curried functions. Others are completely confused by the syntax.

Functional Programming might not get you a job in the real world, but it definitely gives the engineer a higher level of understanding about the computer science world. In most cases you probably also don't need any functional programming knowledge. Nevertheless, the few programmers who know it will be able to set themselves apart from the crowd.

I am one of those programmers who sees the beauty within functional programming paradigms and once in a while it is nice to fiddle some draft functions in a blanco project.

Let's take a look at the above code snippet written in Typescript, that I picked up while following a software engineering minor and that I still use today. (Guess what, something I learned in school is still usefull.)

The snippet includes an interface Func, that simulates the structure of a lambda, simular to the Func in C#. Each attribute is a function.

Where:

  • f: Is the orignal expression.
  • then: A function composition that composes two functions and returns them as one.
  • repeat: Mimics the concept of a loop by composing the same function n-times.
  • repeatUntil: Mimics the concept of a do while by also composing the function based on a guard condition.
This little snippet is a powerfull starting point to build libraries, frameworks or even a new programming language. A possible use case might be an undo function, like the one in Google Drive or MS Word. With function composition you can easily track back every single step.

Understanding every inch of these concepts is a long road. Eventually functional programming practices the concept of writing code that doesn't break over time. Being able to write code that does not break, that sounds like music to my ears and that is what every self respecting developer tries to strive towards.

So, are you ready to give functional programming a chance?