Live data from Hacker News

Writing toy software is a joy

blog.jsbarretto.com

21–30 of 318 posts

Re: Writing toy software is a joy

#22
post #11

One of the best things that I’ve done for myself, career-wise, came during a 6-month sabbatical between jobs. I had a bunch of projects that I wanted to do, but I kept finding myself stymied by scope creep - when you don’t have any constraints, it’s hard to decide how big a project should be, and the projects would grow to these massive unfinishable beasts. I decided to constrain myself to one week per project - what…

I've done the same, but with AI generating a lot of the boilerplate, and helping generate automated tests, has accelerated this process considerably.

Re: Writing toy software is a joy

#23
> Perhaps you’re a user of LLMs. I get it, they’re neat tools. They’re useful for certain kinds of learning. But I might suggest resisting the temptation to use them for projects like this. Knowledge is not supposed to be fed to you on a plate.

I get where this is coming from, and I even agree with it today, but I also want to tag it as "don't cache this opinion too hard". It's interesting to notice when and how our advice for getting help from AI is different from our advice for getting help from other humans. It would be kind of odd, wouldn't it, to put a paragraph at the bottom of a blog post that said "by the way if you have friends who are expert programmers, I don't recommend asking them for help." I think there are two clear reasons that feels odd: 1) expert friends can actually answer your questions and get you personally unstuck, which is huge, and 2) expert friends usually understand why you're doing what you're doing and that they're supposed to help do it yourself instead of just doing it for you.

One thing I bet few people have tried (because I haven't tried it myself) is actually asking an LLM to guide you like an expert friend would, instead of just spitting out code to solve your problem. Maybe they're bad at that, I wouldn't be surprised. But if so, I bet in a year or two they'll be amazing at it. It might be good to build the habit of clarifying what sort of help you need, instead of assuming an LLM will give you the wrong kind of help?

Re: Writing toy software is a joy

#24
post #11

One of the best things that I’ve done for myself, career-wise, came during a 6-month sabbatical between jobs. I had a bunch of projects that I wanted to do, but I kept finding myself stymied by scope creep - when you don’t have any constraints, it’s hard to decide how big a project should be, and the projects would grow to these massive unfinishable beasts. I decided to constrain myself to one week per project - what…

I would just add that gen AI can actually be a fantastic aid when you're building some toy projects just for yourself.

I am primarily a backend engineer, though I am capable on the front end, just not particularly fast. I am especially slow at the voodoo that is CSS. In the past, I would have been turned off from doing some end-to-end personal projects because I know I would have been bogged down just battling CSS for hours and hours (it's particularly problematic that I'm slow at CSS but also a stickler for how I want things to look). With AI tools I can literally just say "make it pretty". It gets me about 85% of the way there, but importantly it gets me to the point where it puts in all the styling framework and then I just have to fix bugs/edit/tweak it, which goes very quickly.

So now I've found myself much more likely to build personal projects because I know I can get past things that in the past felt a bit like quicksand to me.

Re: Writing toy software is a joy

#25
I'm writing a shell right now in ruby after seeing a few other folks doing so and looking at the current state of shell development and not finding anything I really liked. It is indeed, a lot of fun. Using Vidar's really quite nice text editor to do so is equally pleasurable.

https://github.com/vidarh/re

Got a few PRs for you when you get to this, friend.

Re: Writing toy software is a joy

#26
I've written a ton of throwaway toy applications for personal use.

The tip I can share is: publish them on GitHub.

You'll find out some of them are useful to a lot of people.

I have multiple toy repos with 20+ stars and one with 200+ stars.

Just put one screenshot and simple instructions to run on README.md, no need to write a manual.

As simple as `npm install && npm run start` is enough instruction for most.

The screenshot is important tho.

Re: Writing toy software is a joy

#27

This is one thing I don't get about the LLM people. For most of us who are professionals, writing software is not very hard, and it is in fact fun! I don't need to let a computer write my software. I already know how, and I enjoy it. I need the computer to do the hard part (gathering requirements, speaking with stakeholders, etc). Software is a joy.

There are several sources of joy in programming. Some lean more toward the process and exploration of the problem domain, others more toward the outcome and impact.

I had a shift of perspective at some point where I realized that software wasn't just fun to create, but you can solve problems with it, including your own, which is incredibly rewarding and kinda feels like wizardry.

Ultimately I find both to be enjoyable, though in terms of career and life outcomes, focusing on solving real problems and producing tangible outcomes has had more of an impact than noodling with neat implementations that nobody but me cared about.

Turns out if you solve your own problems (or just publicly work toward solving them), there are often other people who also struggle with the sam problems, who may throw money your way ;-)

Re: Writing toy software is a joy

#28
I have a couple of projects like this and I'm not sure if they'll ever see the light of day. I enjoy writing code, simple as that. Only a small part of my day job is coding, but honestly, it's more like a hobby than anything.

The whole thing with getting people to like your work, using it for clout or padding your resume has an appeal to it that I won't dismiss, but all that takes the fun out of it.

I just don't have much else I actually enjoy in life, so ruining it with peer-pressure, chasing clout, impressing people, worrying about career prospects is a buzz-kill. I used to think that if I am passionate about something like this and I get really good at it, maybe it will help my career and prospects but the real world doesn't work that way. it sucks the joy, fun and passion out of you if you let it.

All that to say it is perfectly fine to like coding for the sake of enjoying it and nothing more. Others play a sport (or watch it), work on arts & crafts, or raise chickens or whatever, I code. I am not particularly skilled or great at coding either, I just enjoy it, and that's it.

If you have fun coding, be protective of your joy! even if you don't take it to the extreme like I do. that's my only point.

Re: Writing toy software is a joy

#29
post #26

I've written a ton of throwaway toy applications for personal use. The tip I can share is: publish them on GitHub. You'll find out some of them are useful to a lot of people. I have multiple toy repos with 20+ stars and one with 200+ stars. Just put one screenshot and simple instructions to run on README.md, no need to write a manual. As simple as `npm install && npm run start` is enough instruction for most. The scr…

This is also a great way to stand out among other candidates in the resume-review stage of a hiring process.

The number one question I have as a hiring manager is always "can this person actually write code". A GitHub profile with 2-3 projects with multiple commits to each one answers that question really well. I won't filter out people who don't have that - lots of great engineers have never published code before - but the people who do have that are much more likely to get picked for the phone screen.

Re: Writing toy software is a joy

#30

> Perhaps you’re a user of LLMs. I get it, they’re neat tools. They’re useful for certain kinds of learning. But I might suggest resisting the temptation to use them for projects like this. Knowledge is not supposed to be fed to you on a plate. I get where this is coming from, and I even agree with it today, but I also want to tag it as "don't cache this opinion too hard". It's interesting to notice when and how our…

> "by the way if you have friends who are expert programmers, I don't recommend asking them for help."

AI is not an expert programmer [today]. and it doesnt take an expert programmer to arrive at that conclusion.

Post reply on HN