Marcin Golenia blog

about software engineering, craftsmanship, architecture...

Yet another IT blog?

There are already a lot of them so what makes this one special? Absolutely nothing! And that is just fine. I believe that every person has something important to say. I speak on my behalf on this blog, feel free to quote, love or hate. I write about programming, architecture, infrastructure and organizational things.

Who are you?

My name is Marcin. I have been working in the IT industry for 9+ years now. It's been a quite fun and hard ride. in 2020 I've decided to start sharing with others - there were too many things that I have been keeping for myself, too much worries, too much silent disagreements to on what's going on in the IT nowadays. Time to wake up! Check out "about" tab if you want to know a bit more about me.

Latest stories

One question you might ask yourself before starting a bigger project in F# How to inject dependencies? Let me show you how we used partial application to achieve loosely coupled testable components that can be tested in isolation or together in a broader perspective (acceptance tests). I will use Giraffe as the host, but the technique is free from any framework dependencies.

Keep Reading →

I am addicted to Spotify, I have Linux, I L💖ve F# so I decided to give it a try to control Spotify on Linux using Terminal. Join the ride! We will add a nice feature that will allow us to download lyrics of the current song and we will meet D-bus and Argu - F# library which makes building CLI apps fun! I will also show you how to publish and use the app in Linux.

Keep Reading →

How do you approach integration with 3rd party services? How do you learn new API which you have to use? Do you write a console app, run and stop it over and over again? If you write a service that will be used by others do you write documentation? Stop wasting time! Learning tests will help you speed up.

Keep Reading →

F# is a nice functional alternative in .NET. I have convinced my teammates to use F# in our project at my work in a small new accounting bounded context that would be hosted by .NET Core C# host and Autofac based composition root. We already have a small F# based azure-function which has been a warm-welcomed area to extend/introduce changes so why not take F# to the next level? If you are looking for some hints how to deal with F# and C# in one solution this is a must-read.

Keep Reading →

Radar is a system that uses radio waves to find the position and movement of objects, for example, planes and ships, when they cannot be seen. Analogously Technology radar "uses" engineers and built systems to find the position and movement of languages, platforms, tools, and techniques in trends. In this post I will describe the radar as an actual need in the company and prove its value from a lean perspective.

Keep Reading →

There's a legend around F# that the language is good for science, academic stuff (yes it is good for this as well but not only). Most people think that functional languages are complicated and thus will make them not productive. Nonsense! Let me introduce you to some cool F# features that can make you more productive. You can put away difficult things into the future, meanwhile use F# to write correct and concise code and create bullet-proof cool apps! Let me start with F# justification as a modern language then some functional programming evangelism, after that I will give you some F# selling points.

Keep Reading →

We are just people - continuous work in focus for 8 hours is not something we are capable of. We have to make short breaks, socialize, drink coffee. Don not worry you are not causing any wastes or... or do you? If you do, it is not because of a short break or coffee. I will tell you who should be blamed for the wase in your company - its Tim Woods! (The article is inspired by the Lean production which is also known as Toyota Production System).

Keep Reading →

Once I came up with a team-building workshop which you can carry out with your teammates. It focuses on skills being developed during the project duration. It may help with early burnout detection, silent disagreement or simply it may help you with moving forward with some nice techy idea. After the workshop I've acquired quick feedback with 2 x 4/5 and 2 x 5/5. It should take about 30-40 minutes (depending on few factors).

Keep Reading →

Running migrations using DbUp, FluentMigrator, Ef Migrations or any other tool is really easy to start with. With some tips you may successfully survive a long-running project with no stress or sad expierences.

Keep Reading →