RSSAmplifier

Blog

focused generalist mindset

Specializing in being well-rounded

kevinavignon.comRSS feed ↗50 posts

Latest posts

Environment automation over Advent of Code

Advent of Code The Advent of Code (AoC) is a programming competition organized by Eric Wastl. It s an advent calendar where every day he releases a new challenge rooted in a Christmas theme. In a few words, a challenge involves going through an interesting description. A challenge is broken down into two parts. Part 1 is a smaller-scoped problem compared [ ]

When Doing Too Much Is a Symptom, Not a Solution

We are now back for more on the series Between Good Enough Too Much with post #3. It s Friday. Let s refocus on the human side of engineering. We don t just ship code from abandoned basements. We collaborate, we negotiate, and we push through conflicting priorities. We work with people, and that makes all the [ ]

Draconic Ghoul: Rise back from the dead

Backstory Codex Fragment — Rebinding Verse, Page 491 He who rises from the earth must carry its weight. Power returned is never whole. Beware of the answers you get when you call back the dead. The dungeon pulsed above him. Not a heartbeat, more like a hum. Rhythmic. Deep. Alive. He woke in the dark. His [ ]

Performance Isn’t a Fire, It’s a Fuse

Welcome back to the Between Good Enough Too Much series 😄 In the last issue—Chasing Your Next‑Level Self—we talked about balancing perfection and shipping under pressure. Now, let’s see how that same choice plays out when “good enough” bumps into real performance problems. Why Performance Matters Even at Small Scale Even if your application [ ]

Chasing Your Next‑Level Self

A blog series for engineers living somewhere between “just ship it” and “let’s rewrite it in Rust.” Hey there fellow generalist 👋🏾 Chasing your next-level self I wrote my first line of code 13 years ago. Whew! After all this time, there s still one resounding question looming in the back of my head: I used [ ]

Streamline your developer onboarding with dev containers

Hi, fellow Focused Generalist; it s time for a new post! 👋🏾 Developer pain when moving to a new codebase You ve likely spent hours, or even days, trying to set up your environment for a new codebase. That experience worsens when you scavenge through out-of-date documentation. Then you re left hoping someone on the team remembers how [ ]

Kickstart Your Elixir Projects: Announcing the Elixir Kick-off Template

Hello, dear reader, Happy New Year to everyone joining me on this journey, whether you ve been here for a while or are just hopping on! 🎉✨ What is the Kick-off Template? Over the past few months, I ve been diving into Elixir, and it s been a blast! I started small, working through scripts on Exercism, and eventually reached [ ]

Why You Should Ditch GUIs for Git Commands

Hello readers, Last Update: January 2025 updated link to gist Why no more GUIs? I spent a significant amount of time using GUIs like GitKraken and SourceTree. They are powerful tools. I found that using the Terminal offers a more efficient and flexible way to execute Git operations overall. Why the switch? Good question. [ ]

Announcing the focused generalist mindset newsletter 🎉

Hello everyone, This post is an announcement post regarding the newsletter that I m starting ✨✍🏾 I ll be approaching write new short posts (under 10 minutes of reading per post). I ll be using the blog for longer pieces especially when describing issues through projects or describing in-depth thoughts on a technical matter. Thank you for being [ ]

Beware of Dragons: A Distributed Systems Adventure

Welcome to Beware of Dragons in the Dungeons, an online book you can access through a GitHub repository. This book is a unique journey that combines the magic of fantasy with the world of computer systems. In this hands-on online book, you re about to start a journey to discover the secrets of distributed systems and [ ]

Preparing for a system design interview

Hello readers, It has been a while (2 years!!!) since my last entry. I ve been busy, and I apologize for not getting back any sooner. I ve got some news. There were layoffs at my previous company, and I m now on the market looking for my next opportunity. Being more of a senior candidate, I can [ ]

Selling your ideas at work, building influence and credibility, and becoming a more efficient communicator

Hi readers, Why should we focus on our soft skills? As you may very well know, we, software developers, tend to spend most, if not, our entire time focused on developing technical skills. While we should not aim to be perfect across the board, we d be better off reeling it in a bit. It can [ ]

Tips to ensure success in new software engineering jobs

Hi readers, So big news! Last month, I left my previous employer (Hypertherm) and started a new job this month at Divisions Maintenance Group as a Sr. software engineer. As it is fresh in my memory and that I am still being onboarded, I would like to share what I ve been doing/planning on doing at [ ]

The F# Mentorship Schedule Planner

Hi readers, F# advent calendar For those who are not aware, the F# advent calendar has been initiated by Sergey Tihon a couple of years ago. I started participating in it last year and I must say that the F# community is amazing! Everyone always produces great content to share. Honestly, I could not have [ ]

Guidelines to improve your software design skills with .NET (Part I)

Hi readers, C# advent calendar This year, I decided to participate in the C# advent calendar. You can find other posts for the C# advent calendar here. I had the chance to partake before in the F# advent calendar and was not aware that there was one for C# users. I feel this blog entry [ ]

Why am I dropping the text-based game?

A few weeks ago, I was interested in the idea of building my own text-based adventure game using React with F#. I was using this project as a way to practice the new React skills I’d be investing in. Upon pondering on the topic, I put aside the idea of the text-based game. It wasn’t [ ]

Introducing DotNet.SystemCollections.Analyzers

I have been a developer for the past 7 years. I ve gone through a lot of code reviews during that time. I have devoted my time to learn good software engineering practices through C#. Last year, my passion for performance engineering took off. One thing that has always been important for me was to be [ ]

Why build a text-adventure game?

Welcome back to my online text adventure series. Let s discuss what is the game about and what makes it interesting for me. First, let s ponder on why, while the new generation of gaming is upon us, I want to build a text-adventure game. Well, it s an easy question to answer. I want to build an [ ]

Introduction to the text adventure

Hi, This marks the beginning of my new passion project. As per usual, many different fields in software engineering pique my interest. I aspire to get to know different fields and continue to grow as a software developer. Beforehand, I thought I’d get to build a web platform and also a game. I decided to [ ]

Testing your software system with resilient randomized tests

Resiliency against change avoiding regression The real cost of software isn t the initial development, but the maintenance over time. In time, the requirements will change, there will be new feature requests and the business might change direction. With all those undeniable changes coming to the code, there s a real need to make the systems [ ]

Running for the F# Software Foundation board

Hey everyone, First, for those who don t know the F# Software foundation, here s a link 🙂 In a few words, their mission is the following: The F# Software Foundation is a community operated, not-for-profit organization dedicated to our mission. As an organization, we actively encourage a diverse community of F# developers to join us in [ ]

Be proud of your work and keep on learning everyday

Hi everyone, I think the title of this post says it all mostly. I am not here to judge you, this is me talking about my own journey and sharing my random thoughts on my blog 🙂 The way I see things is that the software field is a very fickle field in fact. We [ ]

Learning about leading projects and building web projects with F#

Hi, It s been a few weeks and I apologize. The recent events are tough on everyone and it s getting a bit harder to find the focus to keep going on personal projects and my blog. So, something newsworthy happened to me in the past few weeks. Initially, I was working on with a design team [ ]

Handling Missing Info in .NET

Hi everyone, C# 8.0 has brought up a lot of great features and among them there is the Nullable Reference Type feature. Probably the most impactful feature of C# 8.0 is Nullable Reference Types (NRTs). It lets you make the flow of nulls explicit in your code, and warns you when you don’t act according [ ]

The Elmish Book by Zaid Ajaj

Hey everyone! I don’t know who has already seen this but I want to make sure it’s visible everywhere! Zaid has been putting so much energy building awesome tools and documentation around Fable! Now, he has released publicly a book on developing web applications through F# and Elmish! Here’s a snippet of the readme: The [ ]

Baby steps with F# and functional programming

For the uninitiated, F# is a general-purpose programming language found in .NET. Contrary to C# who promotes objects as its first-class citizen (can receive and output objects in methods), F# promotes functions at its first citizens. This means that the preferred way of doing this will be through functional programming, but it doesn’t meet that [ ]

Numbers Everyone Should Know

Originally posted on Everything is Data : When you re designing a performance-sensitive computer system, it is important to have an intuition for the relative costs of different operations. How much does a network I/O cost, compared to a disk I/O, a load from DRAM, or an L2 cache hit? How much computation does it make sense

A few cool courses to do

Hi, So I stumbled into this amazing gem and also this one! Seriously, go check those ASAP 😀 They ll provide free courses made available by universities and I ve found so many that I want to do, but I ll have to restrict myself otherwise I won t find the time to do them all but here s a [ ]

Week 1 F# Mentorship: Full-stack web app + ML experiments

Hi, So we re one week into the F# mentorship program and I ve got some progress to share. I ve had the chance to met with my mentee and that went really great! He has signed up to get an introduction to the language and that s exactly what we ve planned to do. We ve went over some fundamentals [ ]

Running internal hackathon to spark innovation and collaboration

Hi, So I wanted to talk about the very first project that I ve shared with my team when I started at Robotmaster. My team initially told me that if there was anything I could bring up that I felt could help them in any way, I was free to do so. I d really like to [ ]

Mentoring C# and F# developers on Exercism

Hi, Last year, I started to contribute on Exercism. For those who do not know what is Exercism, in a few words it s Exercism aims to provide opportunity for people of all backgrounds by helping them develop their programming skills through practice and mentorship. We provide thousands of exercises spread across over 50 language tracks, [ ]

8th round of F# mentorship program

Hi, Last fall, I ve entered the 7th round of mentorship with F# community. It s a great program and it s also free. I have the chance to meet a great mentor that taught me a lot about F#. For 2020, I ve also entered the mentorship program of the Winter period as both a mentee and [ ]

Earning my yellow belt in Python

Hi, So it took some work but today I earned my yellow belt in Python on CodeWars. Now, I m focused on getting familiar with the internal APIs of Python. When I finally earn my blue belt, that s when I ll start focusing on big O from the get-go. I still make sure my code isn t inefficient, [ ]

Early steps in performance engineering

Performance engineering has been something I ve been pushing at my job for the past few months. We ve had performance issues that needed to be solved and it felt like even if we fixed them, we could still get hit by a regression. So that s when I started to research online to find a solution to [ ]

System Design Principles from Jeff Dean

Hi everyone, Presentation made by Jeff Dean, the current leader of the Google AI division Each talk bring excellent points to keep in mind while designing a system that will scale at large We can exclude the information related solely on distributed systems and focus on the common principles for software design Designs, Lessons and [ ]

Ranking up to 7th kyu with Python

Hi, About a week ago, I started training with my algorithms and data structures skills with Python. Today I had a small victory. I ve finally ranked up to 7th kyu with Python 🙂 My top language, for now, is C# in which I m ranked at 5 kyu (yellow belt) almost at 4 kyu (blue belt). [ ]

Waking at 5 am to get stuff done

Hi, Today I feel extra motivated so I ve decided to write more posts. So, before the end of 2019, I spent a lot of time thinking on how I wanted to grow during the year and the next ones. One thing that needed to change in my routine before I could start being serious about [ ]

The F# company list

Hi, Last year, I saw a few functional programming languages had repositories on which you could find companies that use those languages. Because that looked like a fun initiative and I couldn t find an equivalent for F#, I created one and shared it on a few social networks like Reddit. I m writing about it now [ ]

My master class in Machine Learning & Deep Learning with Python

Hi, One of my biggest goals in 2020 is to dive deep in Python and machine learning; two things I haven t really explored in the time I ve been in tech. That s about to change. Even though I have experience with other frameworks and programming languages, I do not consider my self as an experienced Python [ ]

How can I be successful in 2020?

My definition of success for the start of the decade is a complex answer that deserves my utmost attention. Why is it a complex topic? It’s composed of many layers that my life revolves around. Stepping out of the comfort zone First, I see that change is something that I’m comfortable staying away from and [ ]

Experiments and Adventures in 2019

Hi readers, This year has been a big one in the field of software engineering for me. My close friends know that F# has always been a technology that I loved and I promised myself I would start doing more F# development than I have ever done before. FSSF I ve joined the F# FSSF community [ ]

Promoting F# in a C#-based team

Why does functional programming matter? Functional programming is the new hotness right now, but regardless of the hype, most modern programming languages are introducing FP-friendly features that make a big difference to software quality: Delegates LINQ Read-only properties Pattern matching Readonly value types Tuples As we’re adding features and applying good software engineering practices,…

Why students in college should participate in Google Summer of Code (GSoC)

Hi everyone, Today’s post is targeting students in college. The main idea is to sell you the idea of participating in the Google Summer of Code program that Google host every year since 2005. Oh and by the way, this is just free publicity, the program does not provide any money to me in order [ ]

3 Tips & tricks for Kickass Developers in 2019

Hi, For those looking for new ways to kick off 2019 with a bang with your .NET skills, keep on reading 🙂 1. Leverage more LINQ in your C# code Lately, functional programming has been a really hot and trending topic. C# is becoming more of a functional programming language to stay on par with [ ]

Tech Questions #4: Should I use ToArray/ToList in LINQ queries?

Hi, Quick word on LINQ So today s post is going to be focused around LINQ which is an acronym for Language INtegrated Query. For those who are unaware and would be interested in learning more about LINQ, I invite you to go on this page. In a few words, LINQ is the name for a [ ]

Follow my social media activity

Hi, Quick post, I promise! I update my blog and you can now follow me on the social networks I m active on 🙂 I created a YouTube channel to share my experience and knowledge, but mostly, to document my experiences as I m trying to pick up new skills and maintaining acquired skills. On my Instagram [ ]

Onto finding my dream job

Hi readers, It has been way too long since my last post and I m truly sorry. I ve been reflecting on my year of 2018 workwise and some part of it wasn t so fun and I wanted to share my experience. I have had a total three different employments that year and I went on 35-40 [ ]

2017 successes

Hi, I m starting the year by taking a look back to last year. A lot of things has happened and right now, I m looking ahead for things to come. Many things happened to me. I m trying to sort them out. January August 2017 Those were my last months as an undergrad student in software [ ]

Hidden .NET Gems – ReactiveUI

Hi, Today, I m going to talk about an open source gem in .NET for developing WPF applications for people who are interested in reactive and functional programming. To understand the work behind ReactiveUI, one mst understand Rx, or rather Reactive Extensions for .NET. The goal of the syntax of ReactiveUI for read-write properties is to notify [ ]

Hidden .NET Gems – Path.Combine

Hi, I ve learned about the magic of the method Combine from Path a few months ago. Usually, even in production code, we tend to use string concatenation through either directly using + or StringBuilder. Thing is, you do not want to directly use string concatenation to build your path. Try to think about using your [ ]