Janos

👋 Hi!

I’m a software engineer specializing in server applications and system-level software development, but sometimes I venture into the front end world too. Quite often I find myself taking a deep dive into a topic that tickles my brain.

When I’m not coding I like spending time outdoors, such as cycling, climbing. We are writing this blog together with my partner Sanja.

You can find most of my work on GitHub.

Trojan Source Detector

by

A few hours ago the Trojan Source exploit went out of embargo, and we already have a tool to check your source code for it.

Getting into digital electronics

by

Hardware. For a software engineer. What could possibly go wrong?

Our first ever CTF was challenging fun

by &

During the last two days we participated in our first ever security CTF, and it was awesome.

Go Patterns: Retries

by

When working on microservices or any network-related code retries are a must. Go has a few neat features that help with creating an easy-to-use retry library.

gotestfmt: go test output for humans

by

Reading the go test output can be quite tiresome, especially when multiple tests are running in parallel. While IDEs make our lives easier, CI systems don’t have that advantage. Let’s fix that!

Go Patterns: Pipelines

by

Sometimes, when reviewing code, you come across a huge spaghetti of sadness. You’d love to refactor it, but it is just a list of steps that need to be executed in order.

Go Patterns: Elegant Parallel Queues

by

Processing items in a queue in parallel is one of the trickier subjects in programming. You don’t want to overload your systems, but you also want to maximize speed. Go has some unique tools to deal with it.

Go Patterns: Embedding Static Files

by

Go creates a single, statically linked binary. This makes it extremely easy to distribute applications. How do we add static resources, such as text files, images, and the likes, to our application without losing that advantage?

Go Patterns: Object-Oriented Programming

by

On the surface, Go doesn’t look like an object-oriented language. However, if we look deeper, OOP is not only possible, but an effective way to organize code.