Focus on Front End or Front/Back End?

Hey everyone I have been using a variety of different courses to learn web development and I feel like I’m getting overwhelmed and just not understand everything anymore when I moved to JavaScript then php and MySQL. I feel like its all just too much. Should I just focus on the front end things for now like HTML, CSS and Javascript until I feel proficient? Then move onto backend languages like php ect? I’m just getting discouraged like I’m not smart enough to learn all this stuff now.

1 Like

@CydoEntis I think when starting out it’s always better to try to have a more narrow focus… my idea in learning coding has been to focus on getting good at one thing, and then go and apply those concepts I’ve learned eventually to other languages and areas of expertise. Frontend I think is a good place to start. Really understanding backend requires at least a fundamental understanding of how the entire stack interacts with itself, so as a true beginner, gaining a solid understanding on frontend first certainly can’t hurt.

Another thing I think, is that the concepts in frontend tend to be more tangible - you can see the results of what your doing quite often whereas backend concepts can get highly abstract.

If you’re struggling, my advice would be to just really buckle down and focus on one thing - HTML5, CSS and JS is a great place to start. There’s plenty of breadth in those 3 topics alone, and once you have a feel for them, you can start exploring how the backend interacts with everything that you’ve learned… Keep in mind this is advice from a beginner to beginner, but hope it helps in some way!

3 Likes

What’s your goal?

I tend not to overthink the pathway I choose for learning to code, since there are so many options and they are basically all good (at the technology level, anyway - resources-wise can be a mixed bag)

I would (and did) complete the Front End certificate from FreeCodeCamp first, and then move on to the FreeCodeCamp backend cert.

That way it’s basically all JavaScript and you can get a taste for what you would prefer to explore further.

My goal originally was to make a Mobile App tbh, but it grew to making a website since it was easier and I could cater to everyone instead of having to learn multiple languages to produce mobiles apps for android and iOS.

But now my real goal is just be able to land an entry level job somewhere and be able to help out my mom with a good career/good paying job. But I am lost and the being able to not grasp concepts that I feel like I should is stressing me out.

–I think I have a good grasp on HTML and CSS but javascript confuses me. I bought a book and some courses to learn it better.

The book (available for free) You Don’t Know JS is good for filling in some blanks.

One of the P1xt mega-posts is about learning enough to get your first job, too. Great resources listed in there (all free).

https://forum.freecodecamp.com/t/computer-guide-get-job-ready-with-1-fcc-cert-3-projects-2-courses-and-10-books/64027?u=jacksonbates

1 Like

Thanks I’ll check both of them out. I have the book JavaScript and JQuery: Interactive Front-End Web Development 1st Edition and the HTML/CSS version as well. Also bought a lot of classes on the big sales that Udemy.com has to get some good video tutorials. I put in like 4-6 hours a day at learning this stuff and I just don’t feel like I’m getting anywhere ya know?

If you work 4-6 hours every day, then don’t worry. You’ll get over first half of the front end section in no time! Just keep it up and have fun.

Start with HTML | CSS | take notes of the things you can not do as far as interaction. When you learn JavaScript, keep your eye on that list of items, this will keep you thinking ahead to those eureka moments with JavaScript. jQuery | a css pre-processor next like [sass].
Next learn ECMA - the standard of which JavaScript is built on.
Pull in time saver tools as you see fit, like Jade for markdown … ect ect …

We all get frustrated. Anyone who can call themselves a developer probably has 10 browser tabs open at any given time, trying to find a better way to do something.

Check out Dev Tips youtube channel, great great instruction.

I have like 9000 tabs open across all 3 monitors lol. I found out what sass was through dev tips On youtube. No idea about jade though. If you guys know any great youtubers who teach a lot of javascript that would be much appreciated. I have a large list of udemy courses though that teach front-end to back-end from these teachers

-Rob Percival
-Colt Steele
-Brad Hussey

Maybe I just think I should know the stuff with out having to Google it. But developers really are just master Googlers that understand what they google?

@P1xt Why not? I thought this is a great way to learn, and find the general way of doing something. For example, maybe you didn’t know there’s a function that could insert an element to the end of an array until you Googled “javascript insert element to end of array,” then you found out about the .push() function. This is just a simple example, but I think it demonstrates what I’m trying to say.

It is like standing in a car dealership using a dictionary to look up words while trying bargain with the sales rep for a better discount on a car.

Is is A way to learn, & it may work for some, but would you say it is an ideal learning experience?

1 Like

I wouldn’t normally answer on behalf of P1xt, but I think the point being made is simple enough that I can take a crack :slight_smile:

The idea that developers are just good at Googling is a pretty shallow understanding of what developers do.

The real skill is problem solving. Good developers have a wealth of experience in solving a range of problems, so not only are they able to recognise types of problems and solve them quickly, they are also well practised in solving brand new types of problems.

They have also internalised the fundamentals of their language so they do not have to Google, for example, common array methods. They might need to consult docs to look up more obscure bits, but really I think their primary use of Google once they are actually good developers (not complete novices like me) is for looking up workarounds for specific issues that arise from, say, how Heroku deploys a React app, or how to configure AWS properly…that kind of thing.

If a good developer is picking up a new framework, then they likely use Google a fair bit then, too, but on the whole I would confidently suggest there is more to being a good developer than ‘just being a master Googler.’

3 Likes

I think I worded what I wanted to say wrong. I didn’t mean that developers just google everything and that’s how they work. I know they have a good understanding how the language they are using work, and you will always google framework and stuff if your forget or are new to it. What I’m saying is for example I know what Arrays, IF statements, variables etc are. But when it comes to always figuring out how to do this with them correctly. I have to google a million times. So in my case I assume, I have to keep studying the core concepts of java script over and over till I get the oh wow moment and understand it all correct? I just went back through some online courses I purchased over the past 2 days and I think CSS positioning like floats and flexbox that had me confused finally now is starting to make sense. Even watched Dev Tips entire playlist on CSS all over again and its starting to click. Now I’m at JavaScript again and hopefully I’ll get it.

This is a way ahead of me but I have a question. I read that JavaScript can be used on the back-end is that true? If I spend enough time and finally grasp JavaScript will I be able to create my website that will also require a server? Instead of learning PHP and MySQL?

Yes - Node allows you to run JS on a server.

freecodecamp advocates for using Node and MongoDB instead of, for example, PHP and MySQL. Mongo is essentially a database built from JSON instead of relational tables. It’s a bit of a paradigm shift if you are used to SQL and RDBMSs but it’s pretty easy to pick up and I prefer it (fwiw :slight_smile: )

1 Like

In my one course I am taking I am learning PHP and MySQL (well i was). But I like the idea of getting really good at JavaScript and then being able to translate what I learn directly to learning the back end. This way I don’t get overwhelmed again trying to learn everything all at once.

But thanks a lot guys. I feel real better about getting this whole programming thing down now. I’m going to continue to watch these video tutorials/classes read some of the suggested books and then take a crack at FCC challenges and see if I can do it all with out having to google or ask for help!

I feel that it is better to start on the front end, simply because it will enable you to begin building your own projects almost right away. Javascript is capable of making some pretty cool things even without the support of a back end, and I get a lot of satisfaction in seeing my own creations in action.

1 Like

@CydoEntis I found out that my library also offers a free account with Lynda.com for being a member the other day! Don’t think you have to go purchase courses on UDEMY or Treehouse…check with your local library too.

I have Colt Steel’s course and love it so far but heard Lynda.com was spectacular too.

From reading this thread, I am heading towards Front End and dabble a bit in Back End. I’ve heard that front end is enough to land you a decent gig to start earning some money right? Would love to hear other thoughts.

If you are studying and working a lot but you still feel confused, you might need to think about your study methods. Just watching tutorials or reading through docs is not enough - you need to process it. Type out the code. Take notes. Write bullet points explaining how the code works. Stick the code into Codepen or repl.it and play with it. Build something.

Also, you need a learning plan. Breaking the topics up into pieces will make them more manageable. For JavaScript, for example, you could divide it up into data types, control flow, objects, functions, DOM manipulation etc. Look at the contents pages of books and courses and make a list of the most common topics. Then learn them methodically. Review what you have learnt every day. If you can’t explain a concept to someone else, then you haven’t understood it. Another great way to consolidate your learning is to keep a learning diary. Write out all the important things you learned each day. Then write about what you don’t understand. Then make a learning plan for the next day.

Hope that is helpful!

Hey cydo,
My advice, slow down and stop trying to learn so many things. I was bumming along trying to finish my portfolio project when I got so frustrated I nearly quite. My advice is to stop and really get to know HTML/CSS first, and then learn how to put it online. I found a course on udemy after seeing a post on reddit, and it helped me get over my frustration of being able to put this all together. It may work for you, it may not. But stop trying to learn so much without being able to use what you already know.

Thanks for the advice, my problem really isn’t html5 or CSS I understand that quite well now. But javascript is a little harder. I’m rereading and watching tutorials and I’m starting to get it more and more. I understand atleast the basics now. For each and while/for loops still confuse me a bit. But I can atleast write them. I’m just gunna keep finding resources and practicing.

EDIT Ok ok ok I think I’m really understanding all of this stuff now. I started researching how to make video games with javascript and html5 and the tutorials start out teaching all the javascript basics but in terms of making a video game and I am really understanding it now. I think my biggest problem was the way I was learning the material was confusing because it was presented with no real examples I relate too. But when you explain stuff to me in something I am super passionate about(Video games in my case) it all makes sense! I’m going to keep on following these tutorials/lessons what ever you want to call them. Than try and go back and see if I understand it the way these other tutorials explain it! Hopefully I hit me OMG moment and I can say I actually understand this stuff and start helping other people here who have questions.