Image from Mohamed Hassan from Pixabay

What is an algorithm?

As a programmer, it is important to have a wide arsenal of tools at one’s disposal. This may include programming languages, text editors, packages, etc. Perhaps most importantly, it is crucial to have a firm understanding of the various types of algorithms that exist. These will becomes one’s most important set of tools in tech interviews and in the workplace.

For those who do not know, an algorithm is not a challenging concept to understand. Algorithms are simply well-defined, step-by-step solutions to problems. For example, there is an exercise in many computer science classes where students are asked to explain…


Amongst programmers, it is common knowledge that there are stark differences between languages. However, it is less commonly known that these distinctions between languages can actually affect one’s coding performance. Furthermore, there are specific languages, such as C, that simply encourage you to write better code. Many new developers seem to prefer Java and Python since these languages seemingly have the shallowest learning curves. However, beyond picking up the basic principles of computer science, these languages can actually be a hinderance for developers.

There are a few reasons why this is the case. The first, and most notable, is bloat…

Evan Wireman

Programmer | Investor | Student | Reader

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