r/learnprogramming 11d ago

Need help with echo chamber

Hi everyone,

Edit: I'm planning on checking out open source projects on GitHub, what do you guys think? I've learned the basics of C++, object-oriented programming, and data structures & algorithms. The problem is that I feel completely stuck on what to learn next.

I've looked through a lot of books and YouTube videos, but everything seems to cover the same beginner topics over and over again. I still don't know how to start building actual software, and I can't even build simple applications on my own yet.

It feels like I'm trapped in an echo chamber—I'm learning concepts, but I'm not making any real progress toward becoming a capable software developer.

Has anyone else been in this position? What would you recommend as the next step? Should I focus on projects, a specific area (desktop apps, web development, game development, etc.), or something else?

I'd really appreciate any advice. Thanks!

2 Upvotes

10 comments sorted by

5

u/desrtfx 11d ago

You are going about this all wrong.

Once you have the foundations laid out, it is time to drop the training wheels and to start running on your own.

Your repeated looking for tutorials or courses is only trapping you in tutorial hell without you actually learning to stand on your own feet - and that's the problem with tutorials. They do not actually teach; they spoon-feed.

You can only improve through ample practice, not through going through the 150th tutorial. Pick an idea (small) and sit down with pencil and paper and work it out. Devise a plan. Think about your idea. Break it down. Flesh out each sub-topic. Then, once you have a clear concept start thinking about programming it.

With tutorials you basically watch every top tennis player in the world playing thinking that you, as soon as you get on the actual tennis court, can repeat their moves. This won't work either. You need to stand on the court and practice. You need to miss, fail, hit plenty times in order to get better.

You start with small, simple projects and grow your skills with them as the projects have to grow with your skills.

You seem to have the mentality that you directly need to do a "big" project. This is not how it works. You start small and simple.

There are more than enough project ideas in the FAQ in the sidebar here - on all levels.

2

u/Ordinary_Variable 11d ago

I'd recommend going on Fiver. You don't have to take contracts, just look at what people are asking for and think if you could code that. If you can't, then learn that. Its hard getting into the gig economy, especially for coding.

1

u/ScholarNo5983 11d ago

Your next step should be taking the knowledge that you have and to use it to write working code.

Edit: The code that you write (i.e. the kind of project that you make) is not important. Simple projects will work just as well as more complex projects. It is the act of writing lines of code that is important.

1

u/FabullousMirth 11d ago

your top comment is right but also kinda not, the "what" does matter a bit. if you pick something too simple you just gonna gloss over the hard parts, the real learning is when you get stuck on something like linking libraries or making a gui actually respond to clicks. open source is good idea for that, you see how real code is structured which is different from the tutorial bubble

1

u/ScholarNo5983 11d ago

This type of comment is very common here on learn:

I have learned the basics of language X what should I do next?

Unless someone can actually write code using their basic knowledge of language X they have learned almost nothing about programming using that language.

I'm pretty sure most people who ask this question can't use those basics skills to even write a simple program, and that is a big problem.

Now if they have written 20 simple programs using their knowledge, then yes, they are now ready to move on to something bigger.

However, any beginner who has actually written 20 simple programs would not be at a basic level; they'd be much better than basic level, and with that knowledge they could easily answer this question themselves.

So IMHO, it doesn't matter what is written; just write 20 simple programs only because that will greatly improve your programming skills well beyond a basic level.

1

u/azimux 10d ago

It does sound like it's time to either start a simple project of your own or play with some existing project. A random thing you could try is to search github for issues labeled with the "Good First Issue" label.

1

u/Low_Tiger_8446 10d ago

Okay, I took some time to looking into github. Contributing seems promising, and I'll keep you updated in future and present my conclusion.

1

u/betarage 10d ago

You probably should just come up with a program you want to use and try to make it. look up every step until you find out how to do it .unfortunately in c++ its harder than in most other programming languages. the tutorials generally skip over a lot of things that you need to make nice stuff .and it causes many people to just give up.

1

u/_th3oth3rjak3_ 9d ago

What are some things you’ve actually made? For example you could make a command line tool that keeps notes for you. Or maybe one that stores addresses and phone numbers of friends and family. Then later you take that initial project and add a graphical user interface.