Please Stop Closing Forums And Moving People To Discord

They are not the same thing, and will never be the same thing

English is the JavaScript of spoken languages.

Just think about it:

- it's extremely wide-spread for historical reasons;

- it is a somewhat random mash-up of at least three other languages;

- as much as all languages have their idiosyncrasies , it tends to have the more confusing ones.

Node.js devs, imagine npm doesn’t exist. Instead, if you’re nice, you make a list of your dependencies in your README and everyone installs them manually. (Seriously.) Also, you can list names any way you like. So, if a library is called libclutter-1.0-dev, list it as clutter, libclutter, clutter-1.0, … and people will magically know you meant libclutter-1.0-dev (or, more likely, they’ll do an, e.g., apt search clutter to try and find out wtf you meant). Welcome to C/Vala development in 2021.


How to manage software complexity?

"If a design appears complicated, try a different approach and see if that is simpler."

"The first approach is to eliminate complexity by making code simpler and more obvious. The second approach to complexity is to encapsulate it, so that programmers can work on a system without being exposed to all of its complexity at once. Isolating complexity in a place where it will never be seen is almost as good as eliminating the complexity entirely."

The problem with async (remote) work is how it optimises individual worker's local productivity while sacrificing team productivity and task flow.

Code review ping pong is a well-known notorious example. Not talking to people outside your close network is another.

Working at the office offers an easy solution to both, but we must not force people back there. Carefully planing the hybrid ways of working and extensively leveraging the remote collaboration tools plays a key role.

Show thread

This is important research.

"Our results show that firm-wide remote work caused the collaboration network of workers to become more static and siloed,
with fewer bridges between disparate parts. Furthermore, there was a decrease in synchronous communication and an increase
in asynchronous communication. Together, these effects may make it harder for employees to acquire and share new information across the network."

Quite happy with the recent announcements of Knights of the Old Republic remake and the Dad of War sequel.

I need to finish the Mass Effect trilogy and then hop on to the PS5 train (never buy a new console on day one).

I feel odd tingling while watching this new night lamp. Perhaps, I'm half a wolf. 🐺

TL;DR: Five important points in my blog.

💎 Get your code reviewed while it's hot. Don't waste time fiddling with pull requests and online tools.

💎 Work in bite-size batches and use micro-commits to make changes digestible.

💎 Invite the right people around for review (or the whole team).

💎 Don't control people, mentor them.

💎 Let go of your ego, and trust the code to be improved in the future.

Show thread

The way we do code review is fluid and perpetually changing. I've updated my list of good code review practices to reflect this day.

Aren't you tired from writing your Rust programs in English? Would you like to try something different, exotic and funny? Do you like saying "merde" a lot?

Here's my contribution to solve this problem: Rouille, a French Rust programming language.

Rest assured, good things start to happen once we start trusting ourselves. Your work is not garbage. 💚

Show thread

This is a fun little meme, but at the same time, it's also slightly troubling. Have we developers secretly learned to think that our work-in-progress code is, by default, utter garbage that we must hide in a branch?

Does the code get any better when we polish it for days before integrating? Why would working in isolation be better than rapid and early feedback? Is the lack of self-esteem an issue preventing teams from working in small batches and adopting continuous integration?

Assuming folks who wear masks with their noses dangling out are competing in the same contest as those who wear condoms around their balls and take birth control pills only on the weekends.


It bears repeating that you can write both horrible and great code whether you use Object-Oriented Programming or Functional Programming.

Sustainable codebases are composed of many parts that may even mix imperative, object-oriented, and functional paradigms.

Ultimately, what counts is to pick the style that aligns best with how our brains work and, as such, can be easily explained to developers unfamiliar with particular technological concepts.

Craftsman's Log – 2021.09.05

Keywords: Elixir, pre-mortems, gateway design pattern, virtuous code, Array.reduce() anti-pattern, Fish shell, Tmux.

Finished the main quest of Deus Ex: Mankind Divided. It definitely felt like being rushed and abruptly cut from the half. It felt like how all the tension and plot threads were left for the sequel to resolve; the sequel that will likely never happen.

I migrated my bullet journal from Notion to Day One, and I'm pleased so far.

Notion is an excellent personal wiki, but quickly organising stuff is tedious as everything needs to be inside a database. So, creating a new entry for the current day requires me to find the correct database, add a new page to it, pick the desired template, fill some tags, and then write.

With Day One, I only need to press Cmd + N and start writing my thoughts down.

Show older
Mastodon for Tech Folks

This Mastodon instance is for people interested in technology. Discussions aren't limited to technology, because tech folks shouldn't be limited to technology either!