Will you please stop falling into the same old trap?

Photo by on

Have you heard of the GOTO statement? It was probably the biggest cause of bugs within the early programming languages. Luckily, it is no longer used in most modern programming languages.

But little do we know that we still use its evil cousin daily in modern programming languages, with the same dire consequences.

A Little History


Sorry, it’s not TypeScript or WebAssembly. It’s not even React or GraphQL.

What else it’s not? It’s obviously not JavaScript. It’s not Rust, not Go, not even Elm. It’s not Flutter or React (and I love React). I could go on and on, but rather than talk what it is not, let’s talk about what it is.

Oh, and if you’re a fan of fast and beautiful cars, you’ll appreciate this post even more!

Photo by from

Before discussing the future, let’s first talk about the past. …


Photo by on

Tech recruiters are predators. Sometimes referred to as head-hunters, who’re born to kill. They will find and you, and they will hunt you. No matter what. No matter Java or JavaScript.

Once upon a time, I’ve left my job as a full-stack engineer to travel for a little bit, and to spend a little more time with my family. Just in time, I’ve received an exciting email from a senior tech recruiter at Amazon. It surely gave me butterflies in my stomach! Is this really it, a dream come true?

To give this some context, take a brief look at…


Many programming paradigms have come and gone. Is Functional Programming here to stay? Or is it just another fad?

Most things in the world of programming are simply tools. Programming languages are tools. Frameworks and libraries are tools. Even programming paradigms like Object Oriented Programming are also tools.

Functional Programming has been becoming more and more popular in the recent years. Where does it fit in the picture? Is it simply another tool, or something much bigger? Perhaps even a silver bullet that will solve all of our problems?

Let’s find out!

What is a silver bullet?

What is the definition of a silver bullet? It is something that can be used to solve all of our problems. Is mathematics a silver bullet? …


Object-Oriented Programming is considered by many to be the gold standard. Yet, ironically, it is the major source of resource waste — a waste of time and money.

Photo by on

The False Object-Oriented Programming

I’m going to start this article with a bold claim. What is widely known today as OOP is nothing but a terrible mistake.

Now that I have your attention, let’s turn to the supreme authority on the topic of object-orientation, Alan Kay, the genius who has invented OOP:

I invented the term Object-Oriented, and I can tell you I did not have C++ in mind.

- Alan Kay, the of Object-Oriented…


C++ and Java probably are some of the . Both have been heavily criticized by Alan Kay, the creator of OOP himself, and many other prominent computer scientists. Yet C++ and Java paved the way for the most notorious programming paradigm — the modern OOP.

Its popularity is very unfortunate, it has caused tremendous damage to the modern economy, causing indirect losses of . Thousands of human lives have been lost as a result of OOP. …


Welcome to the ultimate rating of modern programming languages

What are the pros and cons of a particular programming language? Is X a good language for my task? Googling “best programming language” will give you a standard list of “Python, Java, JavaScript, C#, C++, PHP” with a vague list of pros and cons. Seeing such articles makes me cringe — their authors must have been outright lazy, inexperienced, and lacking any imagination. Let’s dive deep and find out what really sucks — and what doesn’t.

In this article, I’ll attempt to give an objective and, hopefully, unbiased overview of popular (and not so popular) modern programming languages, ranked from…


Have you fallen into the TypeScript hype? You definitely are not alone. TypeScript’s benefits over JavaScript may be questionable.

Let’s find out why.

Photo by on

Type systems are overrated

Many people swear by type systems. I tend to agree, type systems eliminate a large number of errors in programs, and make refactoring easier. Yet “having” a type system is only one part of the story. There are things that matter far more than static typing, and presence/lack of a type system shouldn’t be the only factor when choosing a language.

Throughout my career, I’ve used a large number of programming languages. And I can tell you…


Let’s be honest. A lot of JavaScript code sucks. Change that!

Photo by on

JavaScript is a force to be reckoned with. It is the single most widely-used programming language in the world. Its simplicity and the abundance of learning resources make it approachable for beginners. Large talent pools make JavaScript appealing to companies of all sizes. A large ecosystem of tools and libraries are a true boon to developer productivity. Having one language to rule both the frontend and backend is a huge benefit, the same skillset can be utilized across the entire stack.

JavaScript’s power is nuclear

JavaScript provides lots of tools and options, which is good! The bitter truth, however, is that it imposes almost…


It will make your productivity plummet

Perhaps you’ve heard of so-called “functional” programming. Maybe you’ve even been wondering whether you should try it next.

The short answer is hell no!

Functional programming is full of flaws, is not suitable for real-world projects, and will make your productivity plummet. Why? Keep reading to find out!

Functional Programming is Unable to Fulfill Complex Enterprise Requirements

Photo by on

Real-world enterprise software demands a complex set of rigorous and compulsory requirements pertaining to the expected amount of embedded abstractions within the software solution. In other words, object-oriented programming enables the programmer to utilize multiple mechanisms of abstraction that fully satisfy the complex requirements demanded by the enterprise.

That was a mouthful…

Ilya Suzdalnitski

Senior Elixir engineer.

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