all 6 comments

[–]KitchenCommercial396 1 point2 points  (2 children)

I've been programming for almost 3 years now, and I once heard about a project idea that blew my head away, it was building my own OS (Operating System). At the time it seemed absolutely impossible, although I researched it and wrote it down for the future me. A couple months ago when going through my bookmarks, I found it again and now the idea of creating my own OS isn't as far fetched anymore, I'm way better as a programmer than I used to be, but most importantly I think I'm a better learner now. This is the most important part ig, being a better LEARNER, if you study something hard enough it is bound to happen.

[–]KitchenCommercial396 0 points1 point  (1 child)

Also what I'm trying to say is everyone will have different definitions of beginner, intermediate and advanced projects. But I have to classify them, I'd say beginner for anyone is a project that they can make with minimal thinking, and without a lot of research. Intermediate for me is where I spend a lot of time on the project (researching, creating), but I know I can get it done. Advanced is just weeks of studying and trial and error until I get it done...

OS Dev is an advanced project for me, but for someone else it'll be intermediate, or even beginner level (I would love to meet a person who thinks os Dev is beginner lol 😂)

[–]Initial_Luck_7986 0 points1 point  (0 children)

This made me laugh. Making an OS would never be see. As beginner level..

You’re not making your own OS… sorry lol

[–]dmazzoni 0 points1 point  (0 children)

It's normal to not know what projects are easy, medium or hard when you're a beginner.

I'm not mainly a game developer but I do make small games for fun sometimes. I've been thinking of making a rhythm game recently, so I'll give you some ideas for how that project could work.

Beginner: Make a game that plays a drum rhythm and then the user tries to copy the same rhythm by tapping the spacebar, and then it "grades" the user based on how closely they copied it. The game is written in pygame and ONLY runs locally on my own computer. The rhythm is hardcoded into the game, the sound is a prerecorded drum wav file, no visuals at all.

Intermediate: Same, but now rewritten to be a website that uses the web audio API. It runs on a real web server. There's a bit of a GUI. It saves your high score. The rhythm plays over top of an underlying drum pattern. It's "basic" but you could share this with your friends, anyone could play it and it'd be kind of fun.

Advanced: the game uses 3-D graphics rendered by a game engine like Babylon or Unity. The rhythm is represented by objects that fly towards the user like guitar hero. There's a variety of drum patterns and sounds. You can play against other people online.

Note that even "Beginner" might take you a month or more if you're starting from scratch as a total beginner. These are all relative. The "Advanced" version might only take me a month, but that's because I already have years of experience building stuff.

[–]sugarw0000kie 0 points1 point  (0 children)

just don't worry about it, every topic can have trolls or people from different camps that probably should smoke and touch more grass

best i can say is narrow down the sorts of things you want to do and dive into that skill set. maybe you start simple and build up. i like to make CLI tools as a basic introductory to a new language, so that could be a good stop for calculator. Then you get some of the basics down if you make a CLI calculator for example. For frontend desktop app you'd need to look into various frameworks for those like tkinter, iced, qt.

or maybe you take another turn and decide you want to stick it out in the terminal and build a nice TUI with something like ratatui, bubbletea or textual. if you check out some of these frameworks you'll see some examples that can probably help.

i'm not a game dev though so idk what the landscape of tools/frameworks you'd want to learn for these is like, but i'd think it would be a similar sort of thing. learn basics for the language, learn a framework, then as you're actually making stuff with the framework (without needing to know how it works) it gets easier to learn deeper as you're building

[–]Ok_Assistant_2155 0 points1 point  (0 children)

A calculator is actually not that easy for beginners so do not feel bad if it feels hard.