I want to learnhow to be a self taught programmer

I’m a first-year Business college student who has yet to begin learning any programming languages because there are so many. But after finishing my upcoming exam, I decided to learn about Front-End Web Development. I know I should have started sooner, but the exam is my top priority right now. I have a lot of questions. I’m hoping you can assist me.
What are the programming languages required for Front End Web Development?
Where can I learn the data structures, algorithms, and so on that I require?
How can I avoid rookie mistakes?
Is it really necessary to learn complex math in order to learn Front End Web Development?
Is it necessary to begin with Python for Front End Web Development?

I am eager to learn programming, and this will be my longest project- (20-30) years- or I will never stop learning programming. I hope you can Help me, Thank you.

1 Like

you can start with the freeCodeCamp curriculum, it can be your guide to become a web dev.

JavaScript - follow the freeCodeCamp curriculum from the top to the bottom

No - unless you go to niche fields, complex maths is not necessary

Only one is the language that browsers understand, and that’s JavaScript.
There is a way to use Python for Web Dev, but it’s certainly not necessary.

When you are stuck, don’t search for an answer to copy.
Use the Read-Search-Ask method, read everything, (errors, instructions…), search on google your issues, ask for help describing your problem

1 Like

Welcome to the forum!

I started this year as well and the best advise I can give: code! As much as you can.

I began with simple HTML pages and added CSS and JavaScript as I progressed.

Currently I’m working on my portfolio that I code with React and animation libraries, I want to become a Frontend Dev like you and a pro at animating UIs.

I had to change my animation library from GreenSock to Framer Motion because GreenSock has too many issues with React 18. I learned so much from refactoring my code to the new library this morning, all on my own, which is draining, but also satisfying.

Much success on your journey!

Welcome @PaterPutativus!

As stated by @ilenia, you’ll only need JavaScript if you ever want to start out on Front-End and also Back-End (though you can also use Python, Ruby or PHP for that kind of development, I would still recommend you to stick to JavaScript first).

But for you to implement JavaScript, I think you should understand how HTML and CSS work together to form the structure (HTML) and style/design (CSS) of the webpage.

Because if you think about it, once you have a grasp of those two skills, you would be able to understand how to use JavaScript dynamically, meaning make your website open to constant change.

Whether its by making a popup appear through a button or you are making a Tic Tac Toe game and wanted the user to mark X’s or O’s by a click, JavaScript helps you do that.

Unlike HTML and CSS, learning JavaScript can take time. I myself am still learning it. So, for you to be able to grasp the concepts, read and apply what you have read.

If you read an article about functions and you see how it is built, replicate it yourself, test to see how it works, create your own functions.

Besides, you get to understand the concept if you built that thing on your own (coupled with research of course), especially when we talk about building projects from a simple Survey Form to a To-Do List.

Hope this helped.

There’s great answers above, so I’ll focus on only one question you had:

When it comes to learning development, the goal isn’t to avoid mistakes. Rather it’s to learn from them. To do that you need to make mistakes.

The difference between a “rookie” and a “veteran”, is the “veteran” already made the “rookie” mistakes so many times they know how to deal with them without much thought. This isn’t to say that “veterans” don’t make “rookie” mistakes, as anyone can make a typo ;D

So the fastest way to learn is to not try to avoid these mistakes, rather to focus on learning from them when they occur. Getting things to work usually is the goal, and when they don’t it can be frustrating, but that is how development can go. If your stuck, you seek out answers on how to get “unstuck”, but don’t feel like your not learning or “not progressing” by getting stuck and learning how to get unstuck, that’s mostly what experience is about, its the “unstuck part”.

So, if you want to learn and grow, you can’t avoid being “stuck”, you should actually drive into it and embrace it. The faster you learn how to get out of sticky/tough/difficult situations the faster you will be able to build what you want/how you want and deal with what comes up.

Good luck, keep learning, keep growing :+1:

1 Like

There are some really great resources for learning on your own, including freeCodeCamp, but since you’re at the very beginning of your post-secondary education why not take classes at your college?

1 Like

To become a front-end dev, starting from HTML and CSS would be the best option. You don’t need to master data structures/algorithms, learning a programming language such as Javascript/Python (HTML and CSS are not programming languages) would be enough.

Your experience in programming increases by making mistakes. Never afraid of errors. Read through it, understand it, Google it, resolve it and move on. Sometimes you’ll be stuck with a simple issue for a couple of days, but don’t lose your perseverance.

Complex Math is not necessary to learn Front-End web development.