DEV Community

Discussion on: Projects as a new Developer

Collapse
 
mainrs profile image
mainrs • Edited

The fewest go to sleep, wake up and come up with an original project. Or a way to enhance other projects significantly.

Just create something that you need. Or something around a topic you're interested in. Do you happen to listen to podcasts often? Why not create a podcast listener. Small side projects offer you opportunities to try out new tech stacks. Maybe you never worked with a database before and only with JSON "save files". Well, time to try one out then!

I found Java, the JVM and bytecode super interested a year ago. So I set down, read the specification and wrote my own small JVM. It didn't run Java 15 (?) at the time. It only worked on Java 7 I think. And not all of the native side was implemented. But a simple "Hello, world!" worked perfectly.

Maybe there is software that you aren't happy with but you use daily. Or maybe it's good but closed-source. Try creating a "clone", why not!

Setting oneself the standard of programs/ideas that haven't been created before or original and unique is just the wrong approach. Especially as one who is relatively new to coding.

In the end, software is about making someone's life easier. And why not start with yours before thinking about others?

Collapse
 
apoc101 profile image
Gabriel

You make some good points, but keep in mind that as a newbie I don't really have the experience to make something that I'd actually want to make (an example could be a program that uses the Steelseries SDK to check my mouse's battery percentage, and when it's below 30% it sends a notification to windows).

So I need to start smaller, and that's where the problem lies, there really isn't much that I can do.

Collapse
 
mainrs profile image
mainrs

I still think that it holds true even for your example. My very first larger project was an editor in Java. I’m pretty sure I only created a test area with some basic menus like copy and paste. And it took me weeks. But even if the journey was long, it was the project that made me fully understand some programming concepts.

I’d argue that, even as a beginner, just try it. Take small steps. Look up the documentation of the sdk. Do you need to learn a new language for it? Maybe try and see if an sdk is available for your most familiar programming language. Don’t try to make it work in one step. Maybe try to initialize the sdk. Then try to connect or list your mouse. Then print the value out to the console. The write some kind of watcher that checks the value every x seconds. Then add the conditional for the percentage. Maybe make it configurable using a program argument. And just at the end take a look at how you create a notification in windows.

Even if you only manage to get to the initialization part and barely get that to work. It doesn’t matter. You’d have to go through it at some point. I think such problems are perfect for learning. Because your goal is to have this program. And it’s that what keeps you motivated to power through the difficult parts of it.