Doing front-end web development may require a shift in perspective, as it is a very different animal from development for other platforms. Here are a few things to keep in mind as you are learning.
The browser is a platform.
Perhaps you have done native development for iOS or Android; written server-side code in Ruby or PHP; or built desktop applications for OS X or Windows. As a front-end developer, your code will target the browser – a platform available on nearly every phone, tablet, and personal computer in the world.
Front-end development runs along a spectrum.
At one end of the spectrum is the look and feel of a web page: rounded corners, shadows, colors, fonts, whitespace, and so on. At the other end of the spectrum is the logic that governs the intricate behaviors of that web page: swapping images in an interactive photo gallery, validating data entered into a form, sending messages across a chat network, etc. You will need to become proficient with the core technologies all along this spectrum, and you will often need to use multiple technologies in synergy to create a good web application.
Web technologies are open.
There is no one company that controls how browsers should work. That means that front-end developers do not get a yearly SDK release that contains all the changes they will need to deal with for the next twelve months. Native platforms are a frozen pond on which you can comfortably skate. The web is a river; it curves, moves quickly, and is rocky in some places – but that is part of its appeal. The web is the most rapidly evolving platform available. Adapting to change is a way of life for a front-end developer.
This book’s purpose is to teach you how to develop for the browser. As you follow this guide, you will be taken through the process of building a series of projects. Each project will call for a different mixture of technologies along the front-end spectrum. Because of the sheer number of front-end tools, libraries, and frameworks available, this book will focus on the most essential and portable patterns and techniques.
18.216.255.250