Simple UUID wrapper for MySQL in Go that covers UUID to BIN conversion

Here’s a quick snippet you can use to create a custom type that maps an UUID to a Binary(16) representation in MySQL. I assume this is not present in gofrs/uuid since it’s database specific, but having NullUUID available is an easy ‘inspiration’ opportunity ;). 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 import ( "database/sql/driver" "github....

20 August, 2023 · 1 min · 167 words · Alexandru Bucur
Reading books makes your brain less foggy

Are Dev Containers the future for local development environments?

TLDR: Maybe, but it's still a bit clunky. What are Dev Containers you might ask? Elementary, my dear Watson* / fellow developer. It’s a fancy way of using container images as a full blown development environment. You can read for more details, but the key IMHO that is missing on the homepage, is that it can run actual compose.yaml (popularised by docker-compose) as an entry point. You can consider this post a follow up A Go(lang) journey in live reload and pretty panics....

02 August, 2023 · 6 min · 1101 words · Alexandru Bucur
Reading books makes your brain less foggy

My first book review: The Pragmatic Programmer

TLDR: Read it, it's good. I never did a book review, but since I wanted to improve my writing skills, there is no better time to start than now. Thanks to a lovely co-worker setting up a book club (Hi Max), my reading of programming books became a bit more structured. This is the second book of the year, the first one being The Staff Engineer’s Path, but I’ll pretend my array’s start at 1....

12 June, 2023 · 5 min · 1063 words · Alexandru Bucur
How to make golang panics prettier

A Go(lang) journey in live reload and pretty panics

TLDR: Use docker + cosmtrek/air + panicparse One of my passions is DX, and while I’m not always getting it right, the enjoyment is there to make people’s lives a little bit more productive. Some context Coming from a predominantly PHP background, at least in my bubble, having “pretty” error messages when doing development is pretty much a given. Regardless of the framework you might be using all of them use php....

03 May, 2023 · 6 min · 1127 words · Alexandru Bucur

Simple Script to Generate Color Scheme Switchable Css

While I was working on yet another secret project that will probably never see the light of day, I wanted to blog about the experience of bootstrapping the project. As any developer, that means that instead of writing that blog post, I had to dust off my website theme, update hugo, and do other fixes. I’ve settled on PaperMod as the theme, since it’s simple and to the point, and it also changes the style based on the preferred color scheme....

03 May, 2023 · 4 min · 673 words · Alexandru Bucur

50 Shades of Gray - Are Standups Good or Not

I’ve noticed that a few articles are arguing about how useful standups are or aren’t on a day-by-day basis, making it a white or black decision. But the situation is a bit more complicated than that. To make it clear, I 100% agree that if your standup is a quick recap of Alex is working on feature X and Bob the sailor man is working on feature Y, tasks that are in your task management system then it brings zero value to the table....

03 October, 2021 · 2 min · 387 words · Alexandru Bucur

Golang Datetime Cheatsheet from strftime*

When I initially started working with Go the time format it seemed a bit clunky. Maybe it’s because it’s a departure from the normal strftime, but also maybe it’s also because there’s no simple cheatsheet for the various date formatting options like you would see for example in the PHP documentation or in the Python documentation or to use the fancy language of the day, the Rust Chrono crate documentation....

25 July, 2021 · 3 min · 499 words · Alexandru Bucur

How to read metadata easily in powershell with TagLibSharp

Doing my quarterly phone image cleanup and backup on onedrive I noticed that the script I was using wasn’t quite consistent on the folder year and month generation. If you think of it it does make sense, since it’s basically doing a smart workaround on using LastWriteTime for its date source, but that isn’t always good enough. After some hours googling around (not yet on a ‘binge’ :D) I got two options that looked great....

21 March, 2021 · 4 min · 681 words · Alexandru Bucur

Why developers should be "lazy"

Looking back to all the years I’ve been developing and all the developers I worked with, the best developers were always the “lazy” ones. What do you mean by “lazy” you might ask, or why do I think that “lazy” developers are great? It’s rather simple: A “lazy” developer is going to write less code to get the job done. Since he wants to have things working, not tinker with overcomplicated abstractions or feel the need ro fill lines of code to justify work....

30 November, 2020 · 1 min · 141 words · Alexandru Bucur

Simple JSON:API plugin for Nuxt.js

Hi all, So far I am keeping myself on track to work a bit every weekend on my side projects. That being said, I am a big fan on JSON:API and in my search for streamlining the consumption on the front-end I’ve finally settled on a nifty JSON:API client called Devour. It has the right amount of magic to make it worthwile and not be over the top ‘magical’. For that, I’ve made a small nuxt....

11 August, 2019 · 2 min · 370 words · Alexandru Bucur