I'm stuck, what do I continue with?

Hi. I’m seventeen years old and I’m teaching myself to code.

Within two months I learnt HTML/CSS/Bootstrap. After lots of designs I felt comfortable with the design part and moved to Javascript.

I learnt Javascript for 1-2 months doing 1-2 hour per day and created simple projects (calculator, sharing tip bill on percentage, search movie with api, quiz, budget app to track your expenses and income and get a total etc.)

I have tried to learn React and NodeJS but failed at both.

The reason I moved to trying to learn a backend language was because all my ideas needed backend and felt stuck with frontend only.

I’m stuck right now and don’t know which path to take, either learn more of frontend (react and more js) or begin learning backend(python/django)

I really need feedback from developers who have been around for some years and see the big picture. It would really help me along, I’m sure this is a important decision.

May I ask how you approach those projects that you mention using JavaScript?
Did you follow tutorials to make them or did you make them from scratch?

@Cowwy I learnt JS basics from youtube tutorials, then moved to Javascript30 (30 day tutorial, every single day a new tutorial challenge) which I completed with couple of days, from that I jumped straight in to building my own small and simple projects.

How I build my projects? They were simple and really small, but challenging aswell for a beginner. I wrote always a simple algorithm on the idea how it would work, then added what I knew/remember to make it work and googled what I didn’t know.

Sounds like your stuck around the problem of being able to take what you have learned and being able to scale it to larger projects. Projects like React, or nodejs application usually require large amounts of code, files and working knowledge.

Pick one of the 2 things you originally failed at, React or Nodejs and learn it more in depth then before. If your long term goal is to go full stack, then learning both the same time might be to much. Sticking with 1 and being able to understand how it works will give you a better footing to combine the two later.

1-2 months will get you started with understanding the syntax, and basics of programming with a given language. But due to the expansiveness and flexible nature of code it will take more time and effort. Generally there isn’t a point where you are 100% done with learning a language, as there are always more patterns, apis, and use-cases out there then any one person can learn. For example you are just realizing your struggling with NodeJs, which is just JS.

I want to point out that this sort of stuff takes time. You may want to get good real fast, but your mind can only learn so much at any given time. The most important thing is being able to learn something and understand how much you know relative to how much you don’t know at a given time. The reason I say this is because you don’t want to be in a situation where you think you know enough, but find out you actually don’t know enough and feel “stuck”. This sort of situation is similar to what your currently in.

If your goal requires knowing React and NodeJs, learn 1 of those technologies in full, and in depth first, before going to the other one. Both rely heavily on JS skills, so you are probably going to have to work more on using that language in general regardless of which one you want to focus on.

Finally I think you will end up needing some database skills aswell, which will probably be required if you want to go fullstack. I recommend not going to far into it if your just starting out, and focusing on it when you feel like you have a good grip on the back-end and front-end parts.

Good luck!

2 Likes

I haven’t been around for years, but I have been studying for 7 months so… take this with a grain of salt i supose:

I felt this exact same way before I picked up kotlin/spring boot (for reference though I had done three months in kotlin learning android dev so the kotlin bit helped…) . But, that being said, doing a backend in node looks less than impossible and in my last group project I had a chance to work with a bit of the node backend and it was managable even with my then very limited understanding of javascript.

If you feel like learning some backend will both help you do bigger projects and perhaps get a better idea for coding and development in general, lean into that, go nuts. Modern backend frameworks are really, really approachable. If you want to get out of JS for a bit, django is super super easy to set up and if you haven’t been exposed to the one true gospel of static typing yet you may feel more comfortable in python.

good luck! feel free to ping me if you wanna talk in detail or if you start working on any of those frameworks and want some help getting started.

@stilljack Thanks for the feedback, I’d love to dicuss more in details and ask you some questions, what’s your discord?

I’m seventeen too and my case was similar to yours until I decided to drop everything for Java. After I learnt the basics of Java and OOP, I moved to .NET Core with C# which I’m currently learning.
My point is: pick one (be it frontend or backend) and study it deeply. This is an advice to myself too :smile: . Good luck!

@favouranefu My long term goal is to be a software engineer, I studied frontend for 3-4 months combined. But I want to taste the backend aswell and understand more how the web works.

How many hours per day were you studying?

I’m not, and never was, an organized person. Some days I could go up to eight hours while for many days at a stretch I wouldn’t be able to study for a full hour. I’m trying to change though, since I got into the university.
I think we are looking for answers to the same questions. :sweat_smile:

Hi,
i am not a really good programmer. Am also new but i would suggest to learn Python . Python was my first language i learned. Its easy and there are really lot of tutorials on line and resources which may help you in learning.
Also it can be used to Back-end and Front-end .

I want to say also the best suggestion will be to tell you never give up keep learning even when sometimes it seems like you are doing nothing. Do not give up and keep going it may take time but you reach the level you want.

Thank you,
Best Wishes,

@angelss7 you can find me at ttj#7106 usually idling on /r/androiddev – you might have better luck trying to get me on gmail either via email itself(stilljack@gmail.com)
or hangouts/google messenger – I’m more or less tuned into all and I’m definitely available to chat and share my experiences.

Sorry for the long post I felt like I had an actually decent opinion to way in here with though.

A project for yourself to develop solo as far as the back end and front end knowledge goes is pretty in depth. I have been doing programming and web design/development as a hobby for about 4-5 years now and worked with a web host for a year of that. I think the best thing for you would be to really, really, sit down and give Node another go. That node tutorial can be frustrating, but that’s kind of programming as a whole.

For example, I myself used Node and React the other day when I wanted to look into what it is like to develop a Shopify App. (I do a little online business as well.) That would just message customers on WhatsApp when they left a cart filled with stuff and not check out. Pretty simple.

The tutorial was solid on how to set up the API, and how to organize the code, but there were still issues that came up.

For example, I needed to make a navigation menu for the app settings and how they effect the site. However, the tool to do so was built into Shopify, I hadn’t coded anything in to configure it.

But, when you clicked on the button, it sent you to website.com/blahblah/ - Instead of website.com/blahblah

The key issue being the missing back slash.

So I spent, literally 7 hours googling, stack overflowing, forum searching, and eventually called Shopify and they gave me their official help forum, then I found the issue solution in like 5 seconds.

The point of that was even if you do end up understanding Node and React later, it won’t matter because smaller more intricate problems will arise. You have to chip it away one google search at a time, there’s no way to really be prepared for it. If you want to develop something, you have to wrack your brain on it for a bit.

The first app I successfully made was a web app called Shittips.com (funny story)
I was a salty 21 year old delivering pizza in a rich neighborhoods and I was getting really annoyed.
These people had beautiful houses and cars and like half the time I wouldn’t get a tip. I would just go back and seethe and be pissed off. I worked with a friend and I was like, “We need a way to be able to tell if a house is a sh*tty tipper before going, so we can judge whether or not it is worth the effort to get their fast.”

And that’s just what I did.

You were able to enter an address, geolocate it with google maps api, and at the same time a MySQL / MariaDB / PostgreSQL call was made against the address to find any logged tip history. It would then produce that output as a list you could scroll through. And it was optimized for mobile.

My big stuck with that was it worked on my local machine, but once I put it on the server, it stopped working. The database query 404’d and it took me LITERALLY 4 weeks to fix the issue.

The big reveal was you needed to define the socket for the database to connect to on the server where you did not in the development environment. I also, figured that out myself, and got to be the one to share that on stack overflow, as no one else could figure it out. (added bonus to ego.)

With this, I used Node.js and Express.js, and one of the databases I mentioned, I like PostgreSQL the most if you’re looking for one. MariaDB is like a simple MySQL, idk tbh they all perform the same for what I do with them.

So I would say, make something you would use, and also explore your interests outside of coding/developing. I found a lot of uses for this knowledge once I understood automation, and I just say like, “Damn I could just write a program for this.”

Some practical development topics / tools to explore are:

  • Linux
  • Bash (the popular associated shell for Linux)
  • DNS
  • Databases
  • Python (really, it’s a beautiful language to write)
  • Buy and play with a Raspberry Pi

I hope those ideas inspire you a little bit, just some fresh perspective outside of like, “Reverse this string and do encryption” blah blah blah exercises. You just need to start, and not stop. You don’t get the results of push ups from reading about push ups, you have to do the push ups. Same with developing.