The most underrated language in programming

Image for post
Image for post

When browsing through programming related articles on medium there always seems to be one thing that all articles have in common: the language of choice is Python. Now I personally have nothing against this. In fact, I’m a pretty big Python fan myself.

However, there are a lot of great languages and tools that are therefore at risk of being overlooked. That’s why this article will be about bash, in my view one of the most underrated and overlooked languages in programming.

This article will be an introduction on how to get started with bash, mainly focusing on basic syntax…

How to understand and code hash tables

Image for post
Image for post
Photo by Shahadat Rahman on Unsplash

According to statista, the total volume of data worldwide in 2020 is equal to 149 zettabytes. With the global data volume being that large, and growing faster by the year, it is clear that the ability to efficiently store data has become one of the key challenges in computer science. In this article we’ll explore one of the most used structures to store data: a hash table.

What is a hash table?

A hash table is a data structure that is used to store data. Initially it looks a lot like an array or a list but it separates itself from those by allowing for…

How to Understand and Code the Knuth Morris Pratt Algorithm

Image for post
Image for post
Photo by Florian Olivo on Unsplash

Finding patterns (or substrings) in a piece of text is a very common action on computers. Just think about the amount of times you’ve used the shortcut ‘ctrl+f’ to find a word hidden somewhere in a large body of text. Or think about the amount of times you’ve used a search engine to find something on a website or on the internet. Pattern matching is everywhere in computer science and it’s a common subject for job interviews at tech companies. So plenty of reasons to make yourself more familiar with this handy piece of coding magic!

In this article we’ll…

How to understand and code the bag of words model.

Image for post
Image for post
Photo by Christopher Gower on Unsplash


Natural Language Processing (often called NLP) is a foundational part of computer science. In fact, the ability for computers to communicate with humans in a natural language is an ambition that goes back to the very moment computers were invented.

With the development of machine learning the progress in this field has skyrocketed. Just look at the increase of papers published in NLP (see graph below) over the last couple of years. However, to make natural language fit for machine learning, some work has to be done.

Timo Kats

Computer Science and Economics

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