Photo by Markus Spiske on Unsplash

Programming in a functional way makes your code declarative and more readable. One of the concepts that I found really important to grasp is reducing. Combine it with mapping and you get new ways to manipulate and extract information from your data, which will make your programming life easier and maintaining your code less challenging. In this article I look at some of the ways you could use reduce and mapReduce in Java and Kotlin, and hope it could help clear up some questions.

Simple reduction

Java

Java’s first reduce function is the simplest:

This function lets you perform…


Photo by Simon Berger on Unsplash

Java’s Optional class is great — it gives your methods a way to signal to their callers that they might not have a proper answer to give. And all that without returning null or throwing an exception. Using the Optional methods map(), orElse(), orElseGet() and orElseThrow() can be a great way to skip null checks and to make your code more fluent. However, there’s a nasty catch here, hiding in the bushes, which might bite you if you’re not careful enough. Read on to learn all about it if you dare.

It all started with a simple test. We’ve pre-populated…


Photo by Mark König on Unsplash

‘Everyone knows trolls can’t even count up to four!’*

*In fact, trolls traditionally count like this: one, two, three, many, and people assume this means they can have no grasp of higher numbers. They don’t realise that many can BE a number. As in: one, two, three, many, many-one, many-two, many-three, many many, many-many-one, many-many-two, many-many-three, many many many, many-many-many-one, many-many-many-two, many-many-three, LOTS.

I’ve read these wonderful lines in Terry Pratchett’s Men at Arms many years ago and while trying to learn different programming languages, I started using them as a challenge and as a way to investigate a programming…


Photo by John Schnobrich on Unsplash

People like to learn by doing. Also, the best way to learn new things is to teach them to others. Merge these two facts together and you have all the reasons in the world to create a workshop that would benefit both you and your co-workers. Here are some tips that would help you create one of those experiences that your colleagues would remember as the time they actually learned something new and had fun while doing it.

Why workshops?

As a software developer, you have to learn new things to keep up with all of the new languages, frameworks and tools…


Photo by Sung Jin Cho on Unsplash

This is the story about the rich soup of emotions and discoveries I paddled through when exploring this strange and wondrous language that is called Go. If you also come from the landscape of JVM and plan to take a look at this language, read on to see what might await for you in your travels.

What this is all about

I like learning new stuff, and especially new languages. It’s always interesting to find out how this particular language solves that particular problem and how the syntax differs from those you’ve seen before. …


The best way to get better at something is to teach it to others

This is the second article about Exercism. Part one gave an introduction to the platform and to solving some exercises and getting mentor help. This article will discuss becoming a mentor yourself, and how much you can learn by helping others.

Becoming a mentor

Have you ever considered why a lot of free stuff is being offered by the open source community, such as libraries, example code and tutorials — available for you to use with no extra charge? Have you ever wondered how do the people who are…


The best way to get better at something is to teach it to others

This is the first of two articles about Exercism. This article will give an introduction to the platform and to solving some exercises and getting mentor help. The other article will discuss being a mentor yourself, and how much you can learn by helping others.

Exer-what?

Exercism sure sounds like an old horror movie with Max von Sydow but it’s actually something completely different:

“Exercism is an online platform designed to help you improve your coding skills through practice and mentorship”

…as it says in Exercism’s about…

Uzi Landsmann

Software developer at Webstep

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