A Recruiter’s Intro to Front End Frameworks & Libraries

A Recruiter’s Intro to Front End Frameworks & Libraries

The front-end stack is made up of many different languages, libraries and frameworks. In our first blog post in the series, we discussed the front-end languages that make up the stack. Now, we’ll take a look at two consistent structures under the hood that support common elements and user interactions across different types of applications: front-end frameworks and libraries.

Both have popular choices trusted by engineers which we’ll explore, but that doesn’t mean developers are stuck with them. If the problem is popular or interesting enough, an engineer can also build a library or a framework to address the needs of the programming community at large. JavaScript frameworks in particular have a great deal of open source solutions.

code architecture enforced by a front-end framework

FRONT-END LIBRARIES

A JavaScript library is a set of functions that allows engineers to complete useful tasks in areas like audio/video treatments, calendars, carousels and sliders, maps, charts, touch interfaces and much more. Since we have more custom wheels in software development than we know what to do with, front-end engineers build tools to help them reuse code efficiently in software development. That way, there’s no need to reinvent the wheel every time something is built.

 

jQuery

One of the first libraries to be used was jQuery, which is still widely used today. To be clear, jQuery isn’t a framework nor a language. It’s a library that’s used with JavaScript to optimize development. It can be used with many other libraries.
Challenges and Assessment

Libraries can also present a challenge to some front-end engineers, because choosing the right tool for the job requires careful consideration and research. No one needs a rocket ship to go to the grocery store. But in the same way, you don’t want to duct tape a brick to a helium balloon and expect it to get you to Mars.

Tool assessment also involves evaluating and understanding frameworks. The interactions and needs of web applications have grown more complex, and frameworks are an efficient solution that allows developers to build powerful front-end applications consistently and quickly.

 

FRONT-END FRAMEWORKS

Frameworks are a packaged set of features that enforce a consistent architectural approach to building the front-end of a website. They dictate the architecture and behavioral structure of a web application. Before frameworks, JavaScript had a Wild West approach where each engineer had his or her own way of architecting front-end code.

Sure, JavaScript is somewhat forgiving of poorly thought out code and therefore easy to write, but sometimes it can be difficult to write effectively. That’s where JavaScript frameworks come in. Some of the most common of those front-end frameworks are Angular, Ember, Redux, React and Meteor. But frameworks aren’t unique to front-end engineering. There are also back-end frameworks such as Rails for Ruby, Laravel for PHP and Django for Python.

A developer using front-end frameworks to create new software

Choosing a Framework

Frameworks vary in how strictly they force developers to work within their process and enforce limitations. Ember and Angular are the most rigid as well as the most robust, with React and Redux being less so. Ember and Angular excel in large scale applications that need a lot of functionality such as Netflix or PayPal. React is great for monitoring user behaviors such as for sites like Facebook.

Angular and Ember also tend not to play nicely with external libraries such as jQuery, which can make development challenging until the learning curve is overcome. React, to the contrary, is very accommodating to outside libraries.

One thing frameworks cannot do, however, is talk to one another. Once a framework is chosen, it’s because that engineer has made a full buy in, including the ring and the dress. That application just got married. Unfortunately, the honeymoon period is short.

There’s a lot of heated discussion in the front-end community around which framework is superior, and I advise anyone who gets in the middle of it to quickly finish their drink at the networking happy hour and slink away before it gets personal. A good front-end engineer will recognize the right tool for the job. Even if an individual hasn’t had direct experience in a specific framework, most engineers can get up to speed on the nuances and best practices within a week or three.

 

DIVING DEEPER

This intro to libraries and frameworks gives you the high-level overview you need to start speaking to developers in their own language. Still, it’s really only scratching the surface. If you want to dive deeper, our comprehensive online class on front-end engineering takes you through the intricacies of these tools as well as the processes and knowledge you need to recruit front-end engineers effectively.