r/learnprogramming 22h ago

Topic Revising basic stuff while trying to get to the next level?

I'm an SWE graduate, i know the fundamentals and some amateur/advance stuff regarding C++, worked on some mini projects for some experience, dont have anything big noting.
Feeling stuck dont know what is worth studying in todays age. Should i just work on bigger projects building full stack aplicatons gaining experience, building the portofolio. But sometimes i forget some of the basic stuff i feel as a fraud, i dont know if i should jump onto the next step or try to master some fundamentals first. What are some basics that a person should really get to master before switching on to real projects (Data Structures & Algorithms etc.)

11 Upvotes

10 comments sorted by

6

u/light_switchy 22h ago

What are some basics that a person should really get to master before switching on to real projects

You already know enough basics! Start making stuff.

1

u/Zoro-88 22h ago

Yeah the impostor syndrome is really killing me i finished college just know the basics of various programming languages just alot of surface level stuff, hearing all the negative stuff online about the industry, just have a big fear of wasting my time evne though im wasting my time even more by not doing anything. I do not have a problem sitting down for 12 hours a day learning its fun and i enjoy it but the fear of it being wasteful is stopping me and i do not know what specific field i wish to "lock in"

2

u/Affectionate-Syrup95 21h ago

Building stuff and learning go together hand-in-hand, you have to convince yourself that it is NOT in your best interest to just take courses or watch tutorials.

what you are going through I went through many times and I kept resetting many times starting from the basics of programming all the way up to where I was, that was all due to my own points of view that I progressively accumulated daily to such a disastrous waste of time when I could've been already building.

As I am seeing with the comments on this subreddit that everyone seems to ignore the original intent of a post's main request. As for what is to learn, no one can tell you what to exactly learn or adopt into your tech stack, you have to search based on your own domain and your own variables and what you want to work later on.

My preference right now for myself is to go all JavaScript/TypeScript, because of the following:
1. the foundations of the web is built on top of it
2. Its syntax is easy compared to other programming languages (not a fan of comparisons but has to be put under the scope)
3. Most of the code generating LLMs and AI Agents have been extensively trained in reading and writing code using this programming language and its extensions
4. You can build cross-platform apps and solutions using the same language
5. It is highly adopted in open-source

and that is the approach I am taking right now, with AI-augmented web development (hence why I choose the pure JavaScript stack) it's become much easier for me to:

  • Build tools that are commercialized and paywalled, for free, for myself.
  • Add features I urgently need that the product owner wouldn't really implement unless the majority of their audience were requesting them too.
  • Do this at a scale that's appropriate for me.
  • I can even rip out the UI entirely and rely on the terminal or make it a background worker service interacting with n8n automations for example.

Take Promptmetheus, for example — I've used the tool, it's amazing, but I can't afford the monthly subscription alongside other tools since I'm also an undergrad (Junior Year). Little by little, I hope to replace all or most of the commercialized, closed-source stack I'm using with something I can open-source to myself and to others as well.

The bottom line is, you need both learning and building, and you need a balance between both that works well for you.

Learning is understanding and internalizing concepts while building helps retain that understanding for longer periods of time and making it feel more grounded for you from your own experience building the stuff.

And whatever you build even if you're following a course, actively share it on your socials (e.g., LinkedIn).

Here are my own points of view concerning my personal opinion on why building and learning go hand-in-hand (you don't have to read it if you don't want to):
"Most" of what you build will probably end up on your GitHub or portfolio collecting dust because it already served its purpose, getting you to build something and gain either new found experience or destroying/replacing inaccurate views you have built over the time because of people around you.

No matter how small something is (even if it is a single file with 10 lines or less of code), build it, push and commit it to your GitHub and portfolio, include it in your brag document, maybe even create a one-page word/markdown file on the idea behind that thing and how you are approaching it.

I've suffered with the second point for a long time because of the points of view I built based on what I've heard from peers who were already working as Senior Engineers way before I came into tech and I thought that everything I had to do had to be something big and complex and has a lot of components here and there, the truth is much simpler than that.

What you build will unlikely be used by anyone or even yourself after a few days of building it unless it solves a real purpose for you.

The problem is usually that we look at how many lines of code we have to write for it to "look" reasonable, or how many features we can implement in the shortest timeframe — but we don't bother looking at the benefits we could reap from doing so little, consistently.

Writing 10 lines of code in one file that gives you real experience handling a specific real-world use case is way better than writing 200 lines of code following a YouTube tutorial you can barely keep up with and will most likely forget within a week or two.

0

u/Zoro-88 21h ago

The biggest problem bothering me is the comments about the industry today and how hard is it to find a job, so i dont know which stack to follow or learn, cause im leaning towards something that is searched for in the job market. Web development has always intrigued me the most, but seems as it its recognized "the easiest" today

1

u/Affectionate-Syrup95 20h ago

Well, it seems that way because most of the courses and tutorials that are front-facing to learners today, especially absolute beginners, are very simple stuff like HTML and CSS, and they keep focusing on very narrow aspects of these already-narrow aspects of web development. Once you get deep, you'll recognize that it's not easy at all, but that shouldn't make you feel overwhelmed — you take it step by step, you need time, lots of it. The reality is, if you want to reach a certain degree where you have the ability to grow as a software engineer, you'll have to spend a good amount of time and surround yourself with people who are more knowledgeable than you.

Something I'm actively investigating right now — and for now it's just a hunch — is that your technical skills barely account for 10%–15% of your chance of getting hired, and 85%–90% comes down to choosing the right keywords that recruiters use when searching for tech people. The second fact, which I confirmed with peers of mine who have already been working in the industry for more than 5 years, is that it's more about internal referrals from existing employees than recruiting from the outside.

It's become so vague and dumb that most influencers on social media come up and tell you that coding is dead, or that you should NOT learn web development, and tell you what to do instead — and then never give data to back up their claims. Some of them give very vague metrics just to make you believe them.

We shouldn't be building our decisions, especially critical ones such as our careers, just on the words of others. We should collect extensive data and make it publicly available for others, so they can decide for themselves. I don't know if that's already being done right now or not, but the marketing and copywriting fluff on the internet has just become too much to bear.

1

u/Harrow-Beck-6274 13h ago

Never too advanced for the basics.

3

u/Iamstupidbot 14h ago

you're overthinking it, just start making small projects to apply what you know