- when building new projects, don’t automatically include bootstrap, or other libraries. Only include what you need AS you need it
- don’t look at other people’s code before trying to write your own solution first, this helps you clarify your needs!
- when you do look at other people’s code, NEVER copy/paste it, read and earn and rewrite what you need
- only ever copy/paste code you have personally written in the past
- don’t be afraid to rewrite code at any time
- code is expendable, and the more code you write the better you will write code
- avoid preprocessors and compilers, they create extra work
- anything that can be built depending on a library can be built more efficiently without it
HTML Questions for Learning:
- can I still do it without that containing <div> as a wrapper?
- is there any HTML like <div style=clear:both></div> trying to solve CSS problems using markup?
- how could this be rewritten without using any classes at all?
- what’s the fewest amount of tags I would need to mark up this design from scratch?
- what’s the most relevant or correct HTML5 tag for this ([and there are a lot of them!) https://developer.mozilla.org/en/docs/Web/HTML/Element
CSS Questions for Learning:
- how could I write this CSS without using any classes at all?
- if I remove this line, does anything break?
- what styles can this element inherit from other CSS rules?
JS Questions for Learning:
- if jQuery didn't exist, what would the solution designed to meet my needs look like?
And in addition to that, all I can say is that the more you do it the better you will get! Create some basic templates and get used to creating throwaway HTML pages to test one thing, or check something. Don’t get invested in and finesse and polish every project or page you build or you’ll have a very shallow level of skill and spend too much time on too few pieces.
One good habit would be to start pushing code to Github. You can view the traffic there, so if people are viewing and using your code you can be motivated by that.
Also, CodePen is like a social front-end coding playground. I would highly recommend you check that out and get the habit of testing and trying things out in the open.
The other last thing I will say is this: simplify! in 2013 my idea of a barebones HTML page was a whole site template like this: https://github.com/tomhodgins/5keleton
By 2015 I had it pared down to this: https://gist.github.com/tomhodgins/c09dd6f9485d77d14e55
But that was still so heavy it was slowing down my learning. Now when I want to test something here’s the HTML snippet I pop into a new text file:
- HTML5 Specification for HTML reference: https://www.w3.org/TR/html5
- You Might Not Need jQuery for learning JS: http://youmightnotneedjquery.com