About me

Runner, foodie, growthhacker and fullstack developer. Creating experiences at the sweet spot between design and computer science. Passionate about work that generates positive change for our planet. Curious?

Javascript Readinglist

I'm sending out a collection of articles about JS and web-development roughly once a month. You can sign up to receive these updates by entering your email below.

Algorithm Sundays: Encrypting and Decrypting the Vigenère Cipher

We're back for another Algorithm Challenge. Today we will be looking at a cipher that was considered to be unbreakable for over three centuries. It was only in the middle of the 19th century, that the code breakers finally caught up with this ingenious method of encryption. The Vigenère Cipher originated at a time when cryptography was flourishing. Encrypting sensitive messages had not only become an important part of military and diplomatic communication but found its way into private households as well. Talented cryptanalysts were sought out across nations to decipher encrypted messages of enemies. More and more ciphers were broken by those cryptanalysts and in consequence, did not offer the security that was needed to ensure safe communication anymore.… read more »

Building Custom Javascript Dropdown Menus

It's quite amazing to see how much time can speed up if you're thrown into a new environment. One month ago, I moved from Hamburg to Amsterdam. After putting my life into boxes, finding time for selftaughtjs has been challenging. Finding a place to live as well as a reliable internet connection have been higher up on my list of priorities. Now that things have calmed down a little, I'm finally able to continue this blog with more frequent updates. I got the idea for this post while working on a recent project for my portfolio. Dropdown menus are some of the basic staples of websites these days and appear in many different variations. There are a lot of libraries… read more »

Javascript 101: Combining Javascript, HTML and CSS

After having learned the basics of Javascript, we can now move to the really exciting part: Modifying the HTML content of our websites by using Javascript. When speaking about the HTML content of our website, one term you will necessarily come across is the DOM. DOM is short for Document Object Model. It basically describes the structure of your website. HTML is only a markup language that we use to create the Document Object. Consequently, the correct term for modifying our HTML content with Javascript is DOM-Manipulation. To follow along with this post, I’d highly encourage you to use codepen.io – it’s a platform that allows you to write HTML, CSS and Javascript directly in your browser and… read more »

Algorithm Sundays: Fibonacci Number Sequence and Recursive Functions

Welcome back to our weekly algorithm challenge. After having previously discussed Roman Numerals and the Caesar Cipher, today's post will travel even further back in time. The first occurrences of Fibonacci numbers were found in Indian mathematic transcripts in 700AD. However, their first appearance in the western civilization was much later. It was an Italian mathematician and merchant named Leonardo Bonacci, who introduced the western world to these foreign arithmetics. Consequently, the Fibonacci Pattern was named after him and not after Indian mathematicians such as Virahanka. The idea of Fibonacci numbers is simple. It's a sequence in which the sum of the two previous numbers will define the next upcoming number. Let's take a look at a set of Fibonacci… read more »

Read this to learn about Algorithms

Javascript 101: A Beginner's Guide to Functions

We're back for another round of Javascript 101. This series is aimed at those who are still new to the language. Together, we will explore fundamental topics of Javascript. If this is the first time you stumble upon a post of this series, make sure to have a look at these posts as well: Javascript 101: Introduction to Data Types Javascript 101: Working with Variables Javascript 101: String Methods in Javascript Javascript 101: Array Methods in Javascript Today, we will be looking at functions. Functions can be described as reusable code patterns. Using them in your programs will reduce they amount of code you have to write. At the same time, they will give your program a natual structure, making… read more »

Algorithm Sundays: Converting Roman Numerals

After looking at Caesars very own encryption cipher last Sunday, Roman numerals were the obvious choice for today's post. Roman numerals were the standard way of writing numbers for over a thousand years in our history. Even after the decline of the Roman Empire, they remained in use for many centuries. Eventually they were replaced by the Arabic numbers that we are still using today. Converting Roman numerals to their more legible decimal counterparts is a beginner-friendly algorithm challenge you will find on many exercise websites. Do you remember how to count to 1000 using Roman numerals? Just in case that it's been a while since you've encountered Medieval Latin literature, have a look at the table of numbers below.… read more »

Read this to learn about Algorithms

Creating Custom Preloaders with CSS animations & keyframes

As Javascript developers, we are often quickly dismissing CSS. It's tempting to let one of the many Javascript frameworks take care of our animations. Yes, CSS is complex, messy and don't even get me started on browser compatibility. Yet, there is no way around dealing with CSS on a daily basis if you're a frontend developer (or aspiring to become one). Unlike many other parts of CSS, animating elements on your website is a pretty straightforward process and not as complicated as you might think. Note that CSS animation is not supported in IE 10 and lower (it's not as bad as it sounds, we still cover about 98% of all internet users). In this post we will explore the… read more »

Javascript 101: A Guide to Array Methods in Javscript

After having looked at some of the most important string methods last week, this post will take a closer look at arrays and their Javascript methods. Becoming comfortable with the various methods of data types in Javascript will greatly improve your problem-solving skills. It'll help you to write more readable, concise and performant code for the frontend and backend of your web applications. If you are hearing about arrays as a data type for the first time, you should take a step back and read up on the foundations of data types in Javascript first. array.slice( ) This method allows you to take a "slice" of data from your original array and save this slice to a new array. The… read more »