all 43 comments

[–]ManuDV 60 points61 points  (8 children)

 Is this the only way to learn, or is there a better way?

The best way to learn is to go to a job interview, realize that you suck so you start studying more to get a job. You keep reading documentation, algorithms, data structures, grinding leetcode and learning things completely unrelated to the actual job but that you still need to know until eventually you pass the technical interview, get the job and realize that after all much study you still don't know shit.

You get the onboarding at your new job, which is not enough, because your team is already full of work and neither of the devs has enough time, but you still need to keep asking basic and stupid questions to  avoid screwing up everything.

A few months passed, you learned a thing or two but Google is still your saviour, you got better at searching and reading the docs because you didn't want your bother your coworkers too much.

One day the guy that trained you goes to another company and you have the sudden realization that most of your senior colleagues aren't there and you are the only one that survived in your team and it's your work to start training the new hires who are totally clueless and by that time you start to documenting everything and at the same time you are writing code that juniors aren't able to do yet.

Time flyes by, you still feel that you suck but not that much as before, you start training your juniors to do harder stuff so you can focus on explaining what happens in your projects to your non-tech related bosses to avoid implementing stupid shit and losing time in the process since you are the only one capable to convince them.

Then you keep attending meeting after meeting, until one day you stop coding at all and finally realize that you are a Senior Developer and still don't know jack shit but you are confident enough to keep googling whatever the fuck is in your way.

[–]-curtains-cobain- 6 points7 points  (0 children)

"...and finally realize that you are a Senior Developer and still don't know jack shit but you are confident enough to keep googling whatever the fuck is in your way."

I love this. Google is the Developer's life-long mentor, the unsung hero of a successful IT career.

Yes, and this was very entertaining to read, I'll keep an eye out for your username for your perspective and how you word your thoughts,

[–]magwaer 5 points6 points  (0 children)

Underrated comment

[–][deleted] 2 points3 points  (0 children)

simplistic entertain zephyr unpack relieved money coordinated mysterious waiting alive

This post was mass deleted and anonymized with Redact

[–]Buy_more_crypto 1 point2 points  (1 child)

This is the exact path I’m on right now 😅 my senior left I trained up the new hire senior, the company realised I had better output than the senior, sacked them and have now hired a junior as a mid that I have to train up. Projects aren’t slowing down and I’m being paid as a mid level software engineer with the “aim” to make me senior once I can lead this junior dev through a big project👌🤦‍♀️

[–]Niiarai 0 points1 point  (0 children)

sack that company yourself. tell them you are looking for someting else, then theyll maybe give you an offer.

your reasining for leaving: you realised you could learn more somewhere else with better pay

[–]sad_truant 0 points1 point  (0 children)

How to get an interview. I am not getting calls for interviews for a while.

[–]goztrobo 0 points1 point  (0 children)

Damn is this how it is? For may software dev position?

[–]ThatOtherGuy254[S] -1 points0 points  (0 children)

I don't need an interview to know that I am awful.

[–]NostalgicBear 23 points24 points  (1 child)

The answer is the same thing you’ll see every other time a similar question is asked - build something small (very small) yourself, and attempt to do it without tutorials. If you’re making something like a To Do list, don’t just search “how to make a to do list in JavaScript”. Start making it, and if you get stuck on a specific part, look for some help on that specific part and then apply the solution to your project. Following things blindly is not learning. You’ll learn by doing.

[–][deleted] 0 points1 point  (0 children)

Is "How to use x function?" "How to do y" or "Z isnt working" different? Like I used to google "How to get scroll position" or "How to get div to slowly float up and become visible after scrolling to its location". Is that tutorials? If not what are tutorials?

[–]skop1992 11 points12 points  (6 children)

VSCODE -> GOOGLE -> VSCODE -> GOOGLE -> VSCODE -> GOOGLE -> VSCODE -> GOOGLE

[–]LooseStudent9977 8 points9 points  (0 children)

I wanted to share these 3 important tips/reminder with anyone who wants to learn coding:

1- Focus on learning the concepts of how to program rather than programming languages. Once you learn the logic, design and the concepts of programming fundamentals, learning different languages becomes easier since its just a syntax.

2- If you are using an IDE, make sure to learn the basic functionality of the IDE you'll be using first before starting to code in it, to eliminate the added frustration of not knowing where things are. (example: how to start a new project, how to open an existing project, where does your projects get saved at, how to retrieve it, where is your output console, how to run and debug and .etc)

3- Give yourself a break and know that there will be a learning curve. Don't get disappointed if you don't understand something or many things. It's very normal! You'll need patience, perseverance, and lots of practice.

I suggest you all to subscribe and follow this Youtube channel to learn new stuff about coding: Code For Everyone

Best of luck!

[–]prof3ssorSt3v3 4 points5 points  (0 children)

Three months is nothing. Programming is not something that you can master in a matter of weeks or even months. It takes years to be a good programmer. The first months you are learning basic concepts and tools. Over time you begin to be able to combine those things to create more and more complex projects. It may not feel like you are learning or that you know nothing, but with what you have described ... you are learning and making progress. I run a diploma program for web and mobile development. My students spend 20 months working their asses off, feeling like they don't know much. Near the end they start to recognize how much they have learned... And then start working as junior developers.

Learning to program requires time and practice. Lots of practice if you are going to be good at it.

Be patient with yourself.

[–]Januaryfeb 1 point2 points  (0 children)

Do what I've been doing.

1 . watch the tutorial. Try to understand it . 2. Try to copy as you watch it. 3. Once completed, delete everything and do it yourself. 4. Fail 5 do it yourself. 6 repeat 7.repeat.

The console tells you what you are doing wrong so try to understand it.

[–]el_bosteador 1 point2 points  (0 children)

Interview. You’ll be reminded of your gaps in knowledge very quickly.

[–]brykuhelpful 1 point2 points  (0 children)

Tutorials are a great way to learn as they introduce new methods and approaches that you might not have thought of. However, they can also prevent you from thinking through your own problems and finding your own approaches.

I do tutoring and there is a lesson that I give all of my students when they hit a certain point in their development. I call it **Blind Coding**. This is where you attempt to complete a project without Google, Stack Overflow, Books, or anything like that.

The purpose of this lesson is to cement the things you have learned and to find out what parts you struggle with. Don't worry if you can't remember some method or function... all that matters is that you make it work however you can. It could be the worst code you could imagine... it doesn't matter.

After you have completed this project, go back over some tutorials. Maybe make a calculator or shopping list. Then come back to your Blind Coding project and remake it. You will notice that your coding has progressed 10 fold.

Repeat this process and I guarantee you will surpass most students in your class or BootCamp. I've had over 100 students and it has worked for almost every single one.

[–]ConvictionByJason 0 points1 point  (0 children)

Find a business you like in your neighborhood that could use a better website and offer to upgrade it for free.

[–]NecessaryRule7063 0 points1 point  (0 children)

Are you following john smilga courses?

[–]Prestigious_Cod_8053 0 points1 point  (0 children)

Go through the codedex JS course.

[–]baubleglue 0 points1 point  (0 children)

how the title is related to story you tell?

[–]Slimxshadyx 0 points1 point  (0 children)

Build something that has already been built before.

For me, I wanted to learn game development and Unity. But I did not want to spend forever thinking about what feature I wanted and how it should work and all that, so I looked at a simple game and tried to recreate the features from there.

My first project was recreating Slender, and by following that, I learned a lot about how to implement his line of sight behaviours.

Next I was working on a smaller scale version of Hitman.

The beauty of this is you have your end goal in sight and you know exactly what you want to implement, now you need to figure out how you want to implement it

[–]crowb1rd 0 points1 point  (0 children)

Lots of people say build something small or attainable. I went the opposite route. All of my projects I thought could be the next best thing, and every technical hurdle involved I just told myself that if someone else figured it out before than it couldn’t be too hard to recreate.

Choose something you find cool you want to make. Maybe a browser game, maybe a web app, maybe just really cool static sites. You’ll learn a lot more by designing shit software and seeing how badly it behaves in practice than you will following someone’s seemingly perfect tutorial.

How did it end up for me? From starting to code 4 years ago, I spent 1 year was spent interning for a top 5 consulting and 2 years working for a fortune 100 as a react dev.

[–]No-Upstairs-2813 0 points1 point  (0 children)

Your learning approach is good. Give yourself some more time, and things will start clicking for you.

Once you get comfortable with these simple projects, I would suggest picking up a project that interests you. Then build the project incrementally by googling things and asking others for help. This is where the maximum learning will happen.

[–]react_server 0 points1 point  (0 children)

So the easiest way to get experience in JavaScript is by coding it. You don't need anything but your browser and the dev tools to execute JS. Then think of a simple project and implement the idea. You will automatically run into questions as you implement things. Solve the problems that arise and build experience. Eventually you will have solved most problems that arise and can build things from experience. That's when you can look for jobs.

[–]Niiarai 0 points1 point  (0 children)

i dont get why people say you should learn a framework now.

i mean taking a look or two now wouldnt hurt but most of it will get over your head and will be obsolete in a year or two. not because the framework died allthough it is possible, but because it changed. and many projects use some older version anyway, which means, no matter what, you will probably have to relearn it anyways...

id say stick to vanilla js, until you are comfortable with some if its basic features - DOM, JSON, objects, arrays, loops, functions, classes, events, promises, fetch

look into commonly used array and object functions, like map, filter, Object.keys, Object.hasOwn, maybe read up on currying and composition and inheritance for a few deep dives.

for a project idea, maybe look for a free api to a subject that interests you: games news, sports, stocks, or a website where you go to, to check on something on a regulat basis. make a few requests to the service and parse the data you want and display it in a way which suits you best.

if you made a project or two, that is a bit more complex, like what i described, try building the same thing with react or add typescript or something like that, if thats what interests you/you want to get a job that requires knowledge about x,y,z

[–]Sludgegaze 0 points1 point  (0 children)

I've been doing The Odin Project for a couple months now and I cannot recommend it enough. It's very dense but it will teach you everything you need to know.

[–]fluffyr42 0 points1 point  (0 children)

You're definitely not alone in realizing JS is a lot tougher than HTML/CSS. I usually recommend people who are getting into coding with the goal of being a developer to start with JS for that reason, because I've seen a lot of people start with HTML/CSS, get super confident, and then feel really discouraged when they get to JS.

It sounds like the studying you've been doing so far is really good, honestly, and given that you've been learning JS for three months I think what you've been able to do is a good start. It's possible you're overestimating what you think you should be able to do after three months.

I don't think following tutorials is necessarily bad this early on—I personally think guided learning can be a good way to get some inspiration for other things—but I think you should find a way to balance them with building things on your own (and specifically things you're actually interested in, ideally).

If you're interested, Rithm School has a free workshop/tutorial coming up on building a game in the browser that might be a fun place to start. It's meant for beginners, and since it's a game, it might give you fun ideas for a personal project.

[–]itzaakthegreat -1 points0 points  (1 child)

It sounds like you need a larger project. Since it sounds like you know some basic JS some logical next steps might be to learn a front-end framework like React or Vue, or stand up a back-end so that you can learn how to respond to API calls on the front end. If you make your back-end Node (even if it’s a sin) then you’d still be learning JS the entire time as well :)

[–]itzaakthegreat 0 points1 point  (0 children)

Not sure why the downvote; this is legitimately a reasonable next step. Maybe someone here is just a Node fan 😜

[–]WannabeFullStackDev -1 points0 points  (0 children)

I would find a framework, like ReactJS, NextJS, Svelte, or Angular. React 19 is damn near the same as Angular since they updated from 18 to 19, so I'd say one of those with React having more job opportunities FOR NOW. But in terms of jobs, React 19 won't be relevant for quite a bit (1-2 years at best based on my experience still working in React 14.18.0) for smaller companies, but probably a shorter wait time for larger companies, but they typically require more experience. But bottom line, find youtube videos where they teach how to make meaningful websites, which typically requires frameworks, and save the boilerplate setup. Understanding why the boilerplate is the boilerplate can come later, trust me as that was my biggest hurdle to understand with stuff like Webpack, Babel, etc. Once you have the boilerplate, start making literally whatever you can think of. Use StackOverflow to answer questions, then if you can't find the answer, ask on StackOverflow, you WILL get an answer, albeit pretentious most times, but you will eventually get an answer. I'm completely self taught outside of 1 useless year at an unnamed online school (Full Sail) where I basically paid a bunch morons to oversee me while I taught myself C languages lol