132 days ago, on February 8, 2025 (#879762) I decided to start contributing code to Stacker.News. Since then, I've contributed 11 merged PRs and earned just under 2m sats for my contributions. Stacker.News was my first foray into open source, and it's been a pretty pleasant experience, not least because you actually get paid for your work. It ain't enough to replace a full time job, but it's a nice little side benefit for doing something that is fun (I'm the kind of person that plays programming games for fun) and contributes to a software that you use daily.
Now I'll be straight up and say that I leveraged AI a lot to help me contribute. Although I have decent coding experience, none of it was in javascript or web development, so learning JS and React was a new experience for me. My experience was that AI can't solve the problem for you from 0 to 100 (or maybe I just don't know the right prompts), but it's really useful for understanding the codebase and finding out which code needs to be changed. It felt like a collaborative experience: I had to combine my domain knowledge of stacker.news and of the task with AI's vast knowledge of JS and ability to read code quickly to come to a solution.
Just recently, my latest PR submission was automatically reviewed by CursorBot. This was the first time that happened, and I don't know if it's something that GitHub put in place recently for all users, or if k00b and ek recently activated it. Of course, it pointed out all the deficiencies in my code, and it made me feel quite stupid to be shown up by a robot. Still, it made some good points, so I went back and fixed all its suggestions and resubmitted the PR. Like a super pedantic boss, it reviewed my code again and came up with two new points to criticize me on! This time, though, I felt like the criticisms weren't as relevant because the conditions under which there might be a problem should never actually arise (afaict)
I'm just remarking on this because the experience of proactively using an AI that you call on to assist you has a very different feeling from getting your work reviewed by an AI when you didn't specifically ask for it. Proactively using AI feels collaborative. Getting reviewed by an AI felt dehumanizing, in the literal sense of feeling like my humanity is inferior to the bot's supreme coding ability.
Anyway, just some random thoughts and reflections. I'm not asking SN to stop using CursorBot since I can see how it improves code quality... but I did just want to share my reflections on how AI is affecting us since I know a lot of people here are interested in that stuff.
undefined
because it is always set on every possible code path, then you shouldn't put a default but instead do error handling (and logging!) when encounteringundefined
. Assigning a default value on a case that should not exist is a problem because if for any reason (in the future) it does exist, it shouldn't just gracefully apply your assumption. Assigning a default value is what leads to hidden tech debt in this case, because it will mask future errors.