How do I go from beginner to intermediate level?
Posted by MemesLetMeBreath@reddit | learnprogramming | View on Reddit | 18 comments
I feel like I have a good overall understanding of the fundamentals of Python and JS but I am trying to compound upon that. What are some resources for getting a grasp on intermediate to expert level concepts? Doesn’t have to be specific to those languages either.
vextryyn@reddit
becoming a professional means accepting that there are no levels and everyone is always a beginner
MemesLetMeBreath@reddit (OP)
Can you elaborate?
vextryyn@reddit
code changes too much to ever be good at it. you'll always be wrong and spend days figuring out what is wrong. what you get good at is problem solving and attention to detail, because, in the end, the only thing that really exists is the fundamentals
TacticalConsultant@reddit
I think an effective way of learning is by creating projects and building a portfolio. You can try codesync.club/lessons where you can learn HTML, CSS & JS by building apps & games through interactive AI videos.
StrictWelder@reddit
I understand why a lot of people say "projects" but I don't fully agree. IMO anyone at almost no skill level can google + ai together a project. And even after 6+months of cobbling together a project you'll see people talk about loosing it all after 2 weeks not coding.
My take: build products not projects AND grind DSA.
If you have a backend and no redis / quafka, rate limiting strategy, ss caching, pub/sub thats a project not a product. email/pw auth with no password recovery, reset, delete account - project. stripe subscriptions in web hooks with no queueing strategy -- project. AI is great at projects, god awful at products.
As far as grinding DSA, and forgetting languages -- dude, there's java stuck in my brain I wish I could forget. I took DSA with java nearly 15 years ago, and haven't used it since school;
Note: AI is good at leet code but criminally awful at implementing DSA in real world situations. You have to train your brain to think that way.
bocamj@reddit
I'm where you are and I agree with others here, but do this.
Go to youtube and lookup beginner projects (pick a language, I recommend JS first). You need to understand how to build your own project, so by watching beginning videos, you can see how arrays, loops, and functions come together. As you go along, think of ideas for your own projects, like maybe build a calculator with HTML/CSS, then work the functionality, and with a calculator, you can make it more complex as you learn more. Figure out how to make things functional. I mean, you can build a webpage that looks like a blog with HTML and CSS, but how do you get comments to post for everyone to see? Do you know how to do that? That could be a project, to give things action, to make them work. Add functionality.
Furthermore, I would look into intermediate courses. O'Reilly has a couple intermediate python courses and one of them has a live instructor. I've been thinking of signing up for that, but haven't looked into costs. I used to be a member and it was like 600/yr. I just don't know if you can take 1 class for free or if you have to pay for a month or a few months.... but it may be worth looking into for you.
I saw you're interning, can I ask where? I really want that kind of hands on, real life experience myself.
Pale_Height_1251@reddit
Write projects.
Gold-Strength4269@reddit
When you have mastered the required topics.
Feeling_Photograph_5@reddit
Building projects. Have you built a production web app yet? If not, break out Django or FastAPI and get to work. Even something like a custom blog engine will take you some time if you haven't done it before.
jqVgawJG@reddit
Make more stuff
nilkanth987@reddit
The key is to build a project that's slightly beyond your current skills, without a tutorial. This forces you to read documentation, debug real problems, and learn intermediate concepts like data structures and APIs out of necessity. Stop consuming content and start creating your own.
boomer1204@reddit
u/MemesLetMeBreath THIS and I wanna add. You ARE going to suck when you first start doing this. We all did and it's TOTALLY FINE that's when you really start to "learn" the things. Self taught, comp sci grads it doesn't matter building a project is NOT the same as following a course/tutorial/book/whatever
https://www.reddit.com/r/learnprogramming/comments/1j9lo95/comment/mhe6xfw/?utm_source=share&utm_medium=web3x&utm_name=web3xcss&utm_term=1&utm_content=share_button
MemesLetMeBreath@reddit (OP)
Thanks! I’m interning at a company right now and struggle with realizing that all the smart people I work with were once in my shoes. So this encouragement is appreciated!
Small_Dog_8699@reddit
Algorithms, data structures
aqua_regis@reddit
How did you get your beginner reading, writing, math up to intermediate level? Through ample practice.
Do projects. You'll learn most that way. Create programs that are slightly above your skill level and research what you need.
huuaaang@reddit
I personally spent many many years as a perpetual beginner. And what took it to the next level was working on a product that people actually used and working with other people to build it. Working solo only gets you so far. You need to develop the soft skills:
The technical skills of writing the code itself will develop naturally a long as you don't try to work in isolation.
Also, learn different languages. Programmers often get stuck doing things the way their language of choice does them and they stagnate.
ian_dev@reddit
Master data structures and algorithms, this will give you a solid foundation of logical thinking, then SOLID principles and design patterns to build the essentials of software architecture.
There are hundreds of good tutorials in YouTube, I recommend search for freecodecamp and Dave Gray.
Slimelot@reddit
Build projects, once you understand the basics you need to start diving into things otherwise you just waste time learning all these concepts but never applying them so you never truly understand any of it.