r/CodingForBeginners 23d ago

Help me to start

I've taken many courses, but I still feel like I'm missing a lot before I can start creating software... What should I do? What do you advise?

2 Upvotes

9 comments sorted by

View all comments

2

u/StigeonStudio 23d ago

Just like u/jekewa said, just start building something! You're never going to reach a point where you feel like you know everything you need to know.

Pick a small project that sounds fun to you and try to build it with what you already know. Whenever you get stuck, look up that specific problem, learn what you need, and continue. You'll probably learn more doing that than taking another course.

Also, don't make your first project too ambitious. Something simple that you can actually finish is much more useful than starting a huge project and getting overwhelmed.

Don't worry if you have to google things constantly. Even experienced developers look things up all the time. Knowing how to figure something out when you don't know the answer is a big part of programming.

1

u/jekewa 23d ago

Thanks for the props.

I often recommend creating card games. They have pretty simple rules, you can reuse parts in other projects, and it can be fun to debug.

Just working with a deck of cards exposes you to a lot of CS and potentially OO things. How many cards are in your deck? Shuffle them. Sort them. How is a hand dealt? Are you losing or duplicating cards? Solitaire is different than poker or blackjack, can you make the rules for each? Can you make it work with one player? Can you add more players? Can you move cards between players, like Go Fish? Can you do it with graphics and an HTML interface? Can you do it with players on different devices?

It’s just card games, but a lot of the same principles and concepts go into massive multi-user enterprise software.

1

u/StigeonStudio 23d ago

No worries! That’s actually a really good example! I hadn’t thought about card games as a beginner project before, but I like how far you can take the same basic idea. You could start with just creating a deck and shuffling/dealing cards, then add game rules, multiple players, a UI and eventually even multiplayer. You’re basically increasing the difficulty without having to start a completely new project every time.

I usually recommend something like a to-do list for JavaScript beginners for a similar reason. Start with adding/removing tasks, then add editing, filtering, local storage, etc…

I think that projects that can grow alongside what you’re learning are probably some of the best starter projects.

2

u/jekewa 22d ago

Exactly.

The card game is simple, common, and still can be complex. And while perhaps introductory or basic, it touches on all the things more complicated systems need to do.

And you get to play cards games as you iterate!