Blog

Let's try .net LinkGenerator, will it make working with links easier?

This is a continuation to "HATEOAS in F#" post. Let's try to simplify link generatrion in our Hogwarts accommodation API.

HATEOAS in F#

Hypermedia as the engine of application state (HATEOAS) is 24 years old now! I am coding for more than 12 years and yet I didn't see it on production in projects I worked with. Why? Is it so bad? Complex?

.NET 6 Minimal apis for F# devs, what we get? (including testing)

So with .NET 6 we have received loudly announced minimal apis. Well... I would name them normal APIs (I am looking 👀 on express.js ...) but let's put the sarcasm aside and lets see how it could improve API development for F# …

Let's play with playwright using F# scripts.

In June Microsoft announced that .NET SDK is stable. For a long time, Selenium was (as far as I know) the only feature-rich web testing framework in .NET (except paid ones like Ranorex or Telerik Test Studio). I never liked the waits I …

Invariants as discriminated unions, validation and always valid objects.

Everyone (including me) when applying DDD at some points fights with validation and invariants. Probably You tried different approaches already - validating within the domain, duplicating the validation logic for both: application …

Outbox pattern in F# with polling publisher

If you are implementing more than one service and you need to establish asynchronous communication in-between, or if you need bullet-proof asynchronous communication with 3rd party services the outbox pattern might be a handy tool. …

F# Dependency Injection - how to compose dependencies with partial application and don't fail with …

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 …

Create your sprint hawker! Make your team's efforts visible and increase transparency.

So the company is paying you and other people in the team money for accomplishing certain things... for building products, delivering features, solving problems, doing maintenance. You work hard, so do your peers. What about making the …

Stop retyping your branch name when you push to origin

Just stop 🤬 There is a better way of doing it! Fire one command and spare few seconds multiplied by a hundred times. Welcome to my shortest post on this blog.

Simple netcore F# app to control Spotify from the terminal on Linux

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 …