Sat down to write this post at 1430, went to look for a link in Youtube, found the link in a minute, it's now 1454. Before I get distracted any further, lets begin.
This morning I was watching this video on how the answers to some questions get worse as people get more intelligent. At first I thought, it was a particular question, turned out to be something familiar. It's the answers to questions people feel strongly about. Funny enough, this is where the whole bike shedding aspect of programming debates comes in. Probably why adding more programmers to a problem can make it worse sometimes. To be fair, bias is a good thing, we do want to belong to a tribe. It's the thought of getting shunned from this tribe that makes us dig deep into a debate when it's about something our tribe really cares about. The more intelligent the person, more they'll use this intelligence to stand behind their point. Recently, I've been consciously trying to stay curious in conversations and trying to listen to the other side. This is a lot harder than I thought it'd be. Sometimes even listening to the other side puts me in a defensive position. But it seems to be getting easier over time.
There was a time when I was a Front-end dev (React mostly), I thought everyone else who does things any other way is just doing it inferiorly. For instance, I thought JavaScript was the best language there was, I still think it's a really good language. Although it has it's limitations. Since, then I've revisited C, learned Go, and I'm now learning Zig. I've even watch conferences from other languages. It has been an eye opening experience. I don't have to be programming in a language to find it's ideas valuable. Last month I watched the Rails world keynote by none other than Dhh. He can be very polarizing, and I don't like the Ruby style of programming but there were some other ideas that I do quite agree with. Some of them were, using Linux, thinking outside of the AWS box and Sqlite. I've been using Linux for five years now, so I did not need to be sold on that idea. Although, the AWS and Sqlite ideas are valid. It was a happy coincidence that I was thinking about the value of scaling things vertically first. Since watching the keynote, I did end up trying Sqlite with Turso and I loved it. It was easy to setup, it's fast, reads only take milliseconds and testing is so much easier. As you can create a file and write your tests on the database. No mocking necessary.
Luckily the Internet is a wonderful thing. There is room for everybody's ideas and quirkiness. Especially when it comes to programming for it. You can use any language you like. Most if not all have support for Http and can send Html or Json over the wire. Learning more languages and trying out the various ways of doing the same thing has helped me find how I like to do things. There are better ways to do it, but I like doing it this way, using these languages. It helps me come back the next day and be excited about what I'm doing. If the goal is to be around long enough, I'm living the dream. It has also made me a better programmer. Doing more C
has helped me understand Http
and how one computer connects to another. Go
has shown me a better way to handle errors. JavaScript
helped me learn programming on the second attempt. Zig
is helping me understand how to write safer programs and to think deeper about the simplest things, and why they seemed simple in higher level languages.
Curiosity is the best way to combat bias. If that is important to you. It'll make a better programmer and most of all might help you understand people outside of your circle.
Stay curious :)