Ask HN: Tell me what programming project I should finish

9 points by wryun 2 months ago

I tend to have little motivation for finishing programming projects I start, no matter how simple. But maybe if the internet tells me something sounds cool...

https://www.pandoricity.com/2022/12/comment-to-change-my-life.html

wafflemaker 2 months ago

You ask us to tell you what programming project you should finish, but it doesn't really matter.

Any project will become a chore after the initial novelty driven excitement fades. The trick is not to demand that it will be so fun that it pulls you in like a black hole.

Motivation problem you talk about can be overtaken with the sheer willpower or using habit.

While ninjas can cut their leg off when trapped to avoid being caught, us regular folks do better using habits and not willpower like you tried before.

There is a whole book on the subject, it is called Atomic Habits. It teaches you how to form habits with least amount of toil. Maybe hearing Blinkist short version will be enough, maybe not.

Once working on the project becomes a habit it costs no energy to start, you just do it like you (I) pee first thing in the morning, it comes out efortlessly. But be wary, all work and no play makes Jimmy a dull boy. Have some treats for yourself for what you acomplished. Maybe measure the time spent on the project with a Pomodoro app and go to see a movie after every 20 pomodoros? Double that after each time you get the prize, but ask yourself if you find it.fair and be fair with yourself when it comes to rewarding yourself.

A difficult to form habit will disappear quickly if you give up on it just for few days.

Good luck, may the force be with you.

  • astro19238_ 2 months ago

    I say go for the ninja method, can't leave the office chair with no legs.

  • CodeWriter23 2 months ago

    My wife, the writer says “it’s work, just do it”. I gamify by using pen and paper, todos in blue ink and cross them out with red. The crossing out is so satisfying.

prettyStandard 2 months ago

Define what you mean by finish for each of them. Then rank them shortest project first. And race to finish the first one. Rinse and repeat.

  • wryun 2 months ago

    Yeah, good thought, though I worry that would add another layer of planning and make it seem more like work. Probably should do Mik.

    • prettyStandard 2 months ago

      If you don't define what finish means how will you ever get there or know when to stop?

tshenolo 2 months ago

The following steps work for me. - List all the projects on a spreadsheet - Under each project list tasks you have to do - Assign a status eg Backlog, Doing, Done to each task (maybe assign colors for status (green for Done, orange for Doing, red for backlog)) - Get to work

In terms of which project to finish, I would start with one I would benefit from immediately eg If I have a task I do manually and come up with an automated way to completing that task, I would totally do that first.

Good luck

mbfg 2 months ago

Unless you can't _not_ finish a project, you aren't going to. Having other people tell you what's important to you isn't going to work. You don't have a project that is important to you to finish, (yet). So don't.

erlich 2 months ago

Great post. Hadn't heard of JOSS - enjoyed reading the Wikipedia article.

> The terminals used green ink for user input and black for the computer's response. Any command that was not understood elicited the response Eh? or SORRY.

So cool. Would be cool to have the same font/coloring output as that page in the wikipedia article.

> Web 'timesharing' system

This would be cool too. I'd love some interactive demo as to how this worked.

> In order to support multiple user programs, the PDP-6 hardware was modified to examine bit-20 of any address reference. If this bit was set, the address was in "user space" and was modified so that address zero pointed to the base address of that user.

Interesting!

Mik is cool because of Zig.

  • wryun 2 months ago

    Thanks!

    JOSS is definitely one of those 'heh, this sounds fun' things, despite being pretty useless. I too am pretty obsessed with the colour changing; I'd love to implement it so it seemed like a typewriter terminal as well (e.g. slow speed, optional sound effects).

    I started implementing it in Pony originally to make it truly shared, but then decided it made more sense to just run the code in the frontend and the shared bit would just be common storage (i.e. so you could easily load other people's programs, as you would on the original systems). Of course, haven't actually done any of this yet...

cinntaile 2 months ago

Maybe you just don't want to finish the projects you started because they're not as fun as you imagined?

  • wryun 2 months ago

    "If he had been a great and wise philosopher, like the writer of this book, he would now have comprehended that Work consists of whatever a body is obliged to do, and that Play consists of whatever a body is not obliged to do. And this would help him to understand why constructing artificial flowers or performing on a tread-mill is work, while rolling ten-pins or climbing Mont Blanc is only amusement." (Mark Twain)

    I have a perceptual problem where my mind quite quickly labels things as work as soon as I start doing a bunch of planning. Once something is 'work' that I'm not being paid for, I then don't feel like starting it. I rarely play computer games any more largely because I have too many _plans_ about what computer games I should play.

    This doesn't mean I wouldn't have more fun doing the programming than sitting around browsing the internet.

heresjohnny 2 months ago

Build something you’re going to use yourself on a daily basis. I’m working on something that I’m the prime user of, which works wonders for my motivation.

atian 2 months ago

That’s the entire fun of it! If someone else could value your priorities, the value is in them now and no longer you!

  • wryun 2 months ago

    Unfortunately, I seem to mostly value lying on the couch and browsing the internet.

    Conversely, if someone pays me to sit at a desk, I'm quite motivated to do whatever they tell me!

    • brezelgoring 2 months ago

      > I seem to mostly value lying on the couch and browsing the internet

      A classic trick of the mind, I found this happened to me when the brain didn't want to go from 0-10, because it's too big an effort. Over time I learnt that if I do that first step without a crutch, all else will flow.

      Why without a crutch? To wear that resistance. Money is a crutch, so are sweets and Youtube videos (these last ones are super strong). You can do it too, (wo)man.

ksherlock 2 months ago

Jossy all the way. If you don't do it, no one else will.