Hi everyone,
I'm writing to ask the community for some advice on whether there are ways to gamify programming, especially programming projects.
I'm thinking of something that evaluates, assigns scores, or tracks progress on personal projects — whether they're assigned by the site itself or self-assigned.
I’m referring to a system similar to Exercism.net or Codewars, where there’s a sense of progression driven by rewards.
I know what I’m asking might not exist, but I’m open to any ideas that come to mind.
My problem? Waking up and saying "Okay, today I'll code a Wikipedia web scraper" isn't very motivating for me. I do it — barely — but I don’t really feel like improving or polishing it, as many recommend. So I just move on to another idea, which I also don’t fully complete.
I hope this is the right place to ask these kinds of questions, Thanks for the future replies.
Top comments (4)
Just a suggestion:
Keep a check list for everyday, like this
This, when we do feels like nothing but after just a few days, will make sense and when you look at your github's commit graph, you will see it! When you look at the concepts you learned in these days, you will feel it!
A good teacher once said: You need to just show up everyday, no matter if it does not give any result instantly!
This is the real game!
scores, progress tracking and badges, even money, are various forms of the so called "extrinsic" motivation. Programming should be intrinsically motivating, fun by itself. It not, you either haven't found an exciting project, language, framework, research field to work on yet, or it's just not your drug.
Coding games has a great intrinsic motivation: you code and if it works, you can play and have fun...
First of all, when thinking of working on a personal project, try to find something that could be useful to you or something that you have interest in. Something that could relate to your hobbies. For example, think of your avatar (I like it, by the way). Maybe you could do something anime related.
If something doesn't motivate you, maybe it is too easy for your skills, maybe it is too difficult, or you just don't care deeply about it. Find something that is at the same time achievable, interesting, but challenging enough.
And when you find something like this, start small, don't overwhelm yourself. Give yourself like 3 tasks a day you have to finish. For every completed task, you gain some xp or coins or whatever you want. Think of adding new features or improvements, but only if you have enough ex or coins. At the end of the day or week, if you completed all the tasks, give yourself a slightly more difficult task. Think about it like having to fight against a boss in a game. Defeating him will unlock new skills, items, powers and so on.
Again, start with something interesting, useful and fun. And start small, maybe just one task a day. And don't forget to include rewards and bonuses.
So the steps could be:
You could also try to make a small app yourself that helps you gamify your programming tasks. And also try to gamify the process of making this app.
Dude thats my biggest problem too can we contact.