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 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.
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 inventor of Object-Oriented…
Our code is infested with bugs. Yet changing one single thing could put an end to our suffering.
Before we get to the technique itself, let’s talk a little about the past of computer science.
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.
C++ and Java probably are some of the worst mistakes of computer science. 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 trillions upon trillions of dollars. Thousands of human lives have been lost as a result of OOP. …
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…
Let’s find out why.
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…
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!
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…
OOP is considered by many to be the crown jewel of computer science. The ultimate solution to code organization. The end to all our problems. The only true way to write our programs. Bestowed upon us by the one true God of programming himself…
Until…it’s not, and people start succumbing under the weight of abstractions, and the complex graph of promiscuously shared mutable objects. Precious time and brainpower are being spent thinking about “abstractions” and “design patterns” instead of solving real-world problems.
Many people have criticized Object-Oriented Programming, including very prominent software engineers. …
Unfortunately, most of the React tutorials out there have no consideration for best practices and don’t always teach you the “right” way to do React.
In this tutorial, I will go over the basics of React, and the most common bad practices that you might encounter.
This tutorial is going to be long, so make sure to get yourself some coffee!
Before we get started, let’s stop for a moment and see why React indeed is the best choice.
In React, you describe what to render (instead of telling the browser how…
Senior full-stack engineer. Elixir/ReasonML/React.