Getting into Rust
Got into the Rust programming language over the last few weeks. Since I mostly work with dynamic typed languages, it's a steep learning curve to get into a static typed language again. I enjoy it a lot though, always liked working with typescript in the past.Started with reading the The Rust Programming Language which was pretty theoratical. Did not make it all the way through as I wanted to have something more hands on. Will probably consult it from time to time in the future when I stumble across things I don't understand.For now, started with https://bfnightly.bracketproductions....
Conditional classes for the :host in Angular
Working with Angular is... interesting. Coming from React, I find it hard to grasp because there is a lot of functionality in it, it is verbose and in general feels like enterprise software. The flip side of that is, that for every problem you encounter, the framework probably already has a solution integrated. The challanging part is to find it.The other day I was working on a new component. It was similar in styling to a component that we already had in our project, but different enough in the way it was used to be its own component with its own name....
Kill your darlings
Some time ago, William Faulkner said that "In writing, you must kill your darlings". You can make of the quote what you want, but I interpret it like this: There are times, in writing, when you have to kill a passage (or a character) you love, if it does not help to develop the story. Removing parts, even if you've grown attached to them, will make a better end product in that case.I think the same is true for the development of a software project....
On using Feature Flags
Imagine working on on a redesign inside an existing product. Maybe it's just a small feature that needs an overhaul, or maybe it's a complete redesign of something that may takes months to finish.Knee deep into it, with many changes done and halfway through it, you and your team notice that gnarly bug in production that is costing the product lots of money. It needs to be fixed as soon as possible.This is where things get tricky....
Getting lost
It can be helpful in life to have a goal in mind and decide what you do based on the contribution that thing makes towards reaching that goal. This is, by nature, very limiting, which is exactly what you want. It helps you only do the meaningful things. But this will also bear the danger of not letting change happen.From time to time, it is nice to just get lost. When you read something, and that sparks an Idea in your head, just explore that idea further. Get into the topic, find another interesting thing and then start exploring that....
On Chesterton's fence
A while ago, I came across a Hacker News thread asking for advice on dealing with a large, legacy codebase. In the comments, someone mentioned Chesterton's fence.Chesterton's fence is an interesting concept, that I tend to forget on the regular. So I am writing it down here, to help me remember.Chesterton's fence is a principle that originates from G. K. Chesterton, who I had not heard of before, but who apparently wrote a lot of books. The basic idea is quite simple:[...] let us say, for the sake of simplicity, a fence or gate erected across a road....
Being the best version of myself
We are all trying to get better at something. We are all trying to improve. We may not have thought about it carefully or written it out, but we are trying. Maybe it is being a better parent, be better in our field of work, or maybe it is just being better in a video game. It does not matter what it is, but we all are constantly trying to improve. Or at least this is the way I like to think about humanity. Maybe I am naive.I, too, try to get better at various things. I try to be better as a developer, which is what I earn my money with. I try to get better in relationships with other people....
Buying Things
We all buy a lot of stuff. Small things, big things, expensive things and cheap things, things we need and things we don’t need, but think we need. I think it is safe to assume that I buy something every day. Now, most of the time, this might just be food. But there is also a fair share of things I buy that are not consumables.Ever since I started to learn about minimalism, I try to be mindful about what I buy. It is hard do identify things that you don’t need anymore and get rid of them. It is work. You need to do the mental work of letting that thing go....
On Tools
Let’s talk about physical tools for a moment. If you are a handyman and you need to drive a nail into a wall, there is a number of ways you could do that. You could try to drive it in with your fist or your shoes or even a stick. But there is also a tool that was build for the job of driving nails into wall: A hammer.Now, there are different types of hammers. Wooden ones, ones made of steel, some may be magnetised and I am sure there is a whole list of other kinds of hammers that I don’t even know about....