Front-end Learning

How exactly does one become a front-end developer? Well, it’s complicated. Still today you can’t go to college and expect to graduate with a degree in front-end engineering. And, I rarely hear of or meet front-end developers who suffered through what is likely a deprecated computer science degree or graphic design degree to end up writing HTML, CSS, and
JavaScript professionally. In fact, most of the people working on the front-end, even today, generally seem to be self taught and not traditionally trained as a programmer. Why is this the case?

A front-end developer is not a focused visual designer or an interaction designer. Design school is not exactly the place to hone front-end skills. A front-end developer is not exactly a traditionally trained computer science graduate either. Focusing on either doesn’t prepare a person for front-end development. And, in fact, following the traditional paths for either in the
higher education systems of America (i.e. College) can derail a person from potentially finding a doorway into a practice where actual experience is king. Today, if you want to be a front-end developer, you teach yourself or you take what is likely a non accredited program, course, bootcamp, or class.

With all of that said, I believe that the path to a career as a front-end developer is very much an unknown process. What I can say is that to become a front-end engineer one must know and use HTML, CSS, DOM, and JavaScript at a high level without ignoring interaction design or traditional programming know how. In fact, from my experience, the best front-end developers often have a mastery understanding of interaction design and programming, but from the context of the web platform (i.e. browsers, HTML, CSS, DOM, and JavaScript). And for whatever reason, this knowledge is often found not given. That is to say, front-end engineering still seems very much to be a practice made up of self taught people, as
opposed to a field that corresponds directly to an educational focus from an organized and accredited higher learning situation.

If you were to set out today to become a front-end developer I would loosely strive to follow the process outlined below. The process assumes you are your own best teacher.

  1. Learn Internet/Web [Read]
  2. Learn web browsers – Chrome (Engine: Blink+ V8), Firefox (Engine: Gecko + SpiderMonkey), Internet Explorer (Engine: Trident + Chakra), Safari (Engine: Webkit + SquirrelFish).
  3. Learn Domain Name System (aka DNS) [Watch]
  4. Learn HTTP/networks (including CORS &
    WebSockets) [Watch] [Read]
  5. Learn web hosting [Read]
  6. Learn general front-end development [Read] [Watch]
  7. Learn user interface/interaction design [Read] [Read]
  8. Learn HTML & CSS [Read] [Read] [Watch] [Watch]
  9. Learn Search Engine Optimization [Read] [Read] [Watch]
  10. Learn JavaScript [Read] [Read] [Watch] [Watch]
  11. Learn DOM, BOM, & jQuery [Read] [Watch]
  12. Learn web/browser API‘s [Read] [Read] [Watch]
  13. Learn JSON (JavaScript Object Notation) [Read] [Watch]
  14. Learn static site generators [Read]
  15. Learn Interface/API design [Read] [Read]
  16. Learn web developer tools [Read] [Watch]
  17. Learn command line [Read] [Watch]
  18. Learn node.js [Read] [Code] [Watch] [Watch]
  19. Learn package manager (npm) [Read] [Read] [Watch]
  20. Learn version control [interact] [Read] [Read]
  21. Learn site performance optimization [Read] [Read] [Watch]
  22. Learn JS testing [Read] [Watch] [Watch]
  23. Learn headless browsers– A headless browser is a web browser without a graphical user interface. [Read] [Watch]
  24. Learn offline development– Offline development (aka offline first) is an area of knowledge and discussion around development practices for devices that are not always connected to the Internet or a power
    source. [Read] [Read]
  25. Learn security [Read] [Watch]
  26. Learn Responsive Design. [Read] [Watch]

The notion that you should follow an individual to learn about front-end development is slowly becoming pointless. The advanced practitioners of front-end development generate enough content that you can simply follow the community/leaders by paying attention to the front-end “news” outlets (via Newsletters, News outlet, & Podcasts).

Thanks for reading 🙂

Advertisements

Published by

gradgospels

I am a Software Engineer by profession. I'm ever curious to find the latest technology in the field and put it to good use. Quite a bit of my free time goes to learn different tools and technology.I enjoy development for Linux, building/leading teams, and contributing to different open source projects. Even though I have a very wide range of interests when it comes to build software, my current focus is on Frontend development. I am thrilled to work with HTML,CSS,JS, JQuery and Ajax like concepts. I also love to read, write, travel and cook.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s