Some programmers remember when OOP firs made its appearance. From what I know, it started with C++(at least that’s the famous one). The “innovative” way of viewing data. It was kind of that first thing that guided us, gave us direction on how to structure our software, or at least it should have.

Object oriented Programing

Let’s be honest here, whole OOP is just a heavy and slow chunk of garbage (I em talking to you Java) that for some reason is hard to get rid of. We live in the world full of objects and associations, so I can get why we…


One day I stumbled upon a language called Nim. At first glance, I thought this is some python clone. After seeing benchmarks though, my opinion changed drastically. The fact that you can be as productive as with python, and get the performance comparable to C++ seems very surreal to me. However, Nim isn’t just insanely fast for its simplicity. You may well say that TS is more complicated than Nim.

To go from imagination to reality, I will showcase how you can define object. Example shows whole spectrum of flexibility language can give you, all as simple as possible.


When it comes to using any statically typed language, the basic code generation capabilities are today’s standards. Just to name some, Java, C++ or Rust all have generics build in. Ewen I thought that Golang is no exception in this rule, when i first started working with it. Well, if you already have some experience with go, you probably already know its cons. Horrible error handling and no generics, and that’s about it because go is otherwise absolutely amazing.

Lack of generics can be most noticeable when working with slices. There are some simple actions you have to do when…


When it comes to storing data. Languages usually offer vectors and maps. These two collections are standard, though are they really solution you should use? Let’s give it some thoughts.

When you are collecting data just to process it later, use vector. You need to access them by names, use map. However, it’s not always so simple, and you can be dealing with multiple requirements. What if you need data to be ordered but at the same time, access it also by ID. What if you want to remove some data but do not change IDs of other data? This…


Multiple cores became a standard. Even my old computer has four of them. What’s really disappointing though, apps still do not utilize it that match. Of course, I’m not talking about discord or office products. Using concurrency here would actually slow down things, but not even that is important as they do not need performance all that match. However, big performance demand is on different kinds of apps like games.

Games are indeed unique programs. They have to get everything done as fast es possible to offer best experience. At first, standard was 30 FPS then it moved to 60…


Maybe you are chosen one, and do not have any problems with making them. Well, all I can say is that am not one of them. Of course, I love coding and I love making games but o boy, isn’t it hard to get it finished. It’s been one and a half a year since I started programming, yet I haven’t done anything. …

Jakub Doka

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