Email the Author
You can use this page to email Joe Fender and Carwin Young about Front-End Fundamentals.
About the Book
Front-end web development is evolving. Long gone are the days of writing static HTML files with self-contained CSS. As web developers in this modern world, we need to understand and utilize an endless number of frameworks, plugins, techniques and more. Knowing the right tools to use and when to use them is key to building successful solutions.
This book came to be from the lessons we, the authors, have learnt through trial and error whilst working on front-end development projects ranging from enormous high-traffic sites such as MSNBC, The GRAMMYs and BravoTV to startups and experiments such as Drupalize.Me and BracketCloud We want to share with you the tools that we use and the standards that we follow. Our ultimate goal is for you to walk away understanding the core concepts of front-end development so you can confidently go and work on your own projects.
This book is somewhat opinionated based on our experience, so you'll find some of the content heavily geared towards a particular way of doing things. Of course, there are many ways of accomplishing the same task in the world of front-end development; that's what makes it so accessible and yet so complicated. Learning one way of doing something can make learning the alternatives a much more palatable task, so we encourage you to look into any and all of the technologies presented herein and even go on to see if something else might better fit your needs.
Who is this book for?
The content in this book is aimed at those who are new to front-end web development. Regardless of whether you are a beginner or expert developer, the concepts outlined in this book are essential to embracing the rapidly evolving web.
If you hear yourself asking any of the following questions, this book will likely be very useful for you!
- "What actually is front-end development?"
- "How can I be a more efficient web developer?"
- "What is Grunt/AngularJS/SASS/\<_insert popular tool name here_>?"
- "How do I fit all of these front-end tools together into a project?"
- "How can I build a front-end application that can scale?"
What does this book cover?
Basics
You'll learn what's expected from a front-end developer and get a short overview of the types of projects a front-end developer might be tasked with. We'll even take you through setting up your computer for local development.
Frameworks
We'll introduce some of the more popular JavaScript frameworks and template languages in use today. We'll cover the details of what exactly a 'framework' is and talk about the MVC pattern before getting into the details of installation and practical usage of 3 popular frameworks: AngularJS, Backbone.js and Ember.js.
Styling
There's a lot more to styling than just throwing CSS at your markup; that just leads to a big mess of unreadable spaghetti code sprinkled with `!important` parmesan. We'll cover CSS preprocessors like Sass, organizational methods for your styles, and the kind of impact your CSS may have on a project's performance.
Dependency Management
Getting your whole team on the same page code-wise can be challenging. Heck, even making sure you're using the same version of that awesome Ruby gem after an update can be a pain. This chapter on dependency management covers a number of really handy front-end package managers like `npm`, `Bower`, and `Bundler`. You'll learn what a package manager is and how to use it effectively to keep your project on track.
Automation
We'll go over how you can remove the tedium from front-end development and just get to work. You'll learn how to perform tasks like checking your JavaScript or CSS for errors whenever you save a file, minify your code to shave off some file size, and even how to automatically refresh your browser whenever something changes. Once you get started, you'll never look back.
About the Authors
Joe Fender lives in London and splits his focus between front-end and back-end development. Specializing in PHP, AngularJS and Drupal, Joe was the lead architect at Studio Umi, the largest Drupal shop in Japan before joining Lullabot to work on awesome websites such as Drupalize.Me and MSNBC.
In his spare time, Joe likes to collect shoes and work on side projects. But never at the same time.
Carwin Young is an expert front-end developer living in Springfield, Missouri. He has over 8 years experience working on the front-end. He was the second front-end developer to work at Lullabot where he has played a key role on building websites for clients such as MSNBC, BravoTV and the GRAMMYs.
Carwin loves to share his expertise. He has spoken on topics such as Rapid Drupal Development at DrupalCamp Chicago, is a co-organizer for the Springfield Drupal meet-up and is a regular contributor to the Front-end Rapport, an online magazine and newsletter for front-end developers.