I have been working on learning as much as I can before starting college to change my career, and I noticed on the w3schools site that there is now html and html 5, css and css 3. Do I need to go back and learn those newer languages before moving onto PHP and MySQL?

  • 3
    Which languages and skillsets do you have? Which career are you changing to, and from? – blueberryfields Mar 2 '11 at 21:56
  • 1
    I think that learning HTML5 won't be as time consuming as learning HTML from scratch, since you already know HTML4, same goes for CSS – Mahmoud Hossam Mar 2 '11 at 21:57
  • 16
    w3fools.com – Oded Mar 2 '11 at 22:14
  • 3
    @Oded: I share that link to almost every one who mentions w3schools. I don't preach, but I do let them know about the other side of the coin and let them make their mind. – Sergio Mar 2 '11 at 22:50
  • what language to learn next is off-topic per site FAQ – gnat Apr 11 '13 at 10:11

What do you mean by go back? Are you going to use them? If so, you should never stop learning.

For any language that you are using actively there is no point at which you should consider yourself "done" learning. Learning new changes in a language, as with any part of the language, is a continuous process, not a milestone.

If PHP/MySQL are your focus then learn those now. If CSS/HTML are also going to be a focus then also learn HTML5, CSS3 now (they are neither dependent on nor prerequisites of each other).

  • 3
    +1 for never stop learning – HorusKol Mar 2 '11 at 22:43

I would encourage you to take an hour and learn the new doctype and semantic tags, like <header>, <nav>, <article>, and <section>. Your PHP will output HTML, and you'll be better off if all your code produces semantic HTML from the start.

If you have another 1-2 hours to spare, you should look into HTML5 forms. It's not complicated, and it can help you make your interface much more usable with minimal effort.

You can delay learning CSS3, if you can focus on content, and not worry about presentation, while playing with PHP. I start by coding up my backend and my HTML, then I add the CSS later. So you should be able to learn CSS3 later, and come back and make your sites pretty.

You can put off for later the fancier stuff that's also called HTML5 -- canvas, geolocation, history, local storage, web sockets, webgl. They can make your interface better, but have lower returns on investment than the semantic tags or forms.

The following covers semantic forms and semantic tags reasonably well. http://6.470.scripts.mit.edu/2011/lectures/html5_css3/html/all.html


Do I need to go back and learn those newer languages before moving onto PHP and MySQL?

Do you need to learn them right now? No. It would probably be a good idea eventually to go back and see what has changed though. It will be a while before many companies switch over to using it, but it will eventually happen. You do not need to know them to learn PHP or MySQL though. In my opinion learning those will get you more bang for you buck than HTML 5 and CSS 3 since it sounds like you are just starting out.


Learning HTML5 and CSS3 doesn't mean you have to go back.

The HTML5 specification has been specifically written so that you can slowly integrate it into an existing HTML4 design. This means that you can simply start by placing the new HTML5 doctype at the top of your page. Then, you can replace sections of your content with relevant tags/elements.

Start incorporating it as you learn other things


I don't like this term "go back" - it implies that you've somehow missed something. Learning is a constant process - you don't miss things, you simply learn them later on. If you approach software engineering in the manner that you always need to be on the bleeding edge, you'll spend all your time learning about new frameworks and never building anything.

Not the answer you're looking for? Browse other questions tagged or ask your own question.