For a few years now, Front Porch Conference has been providing those who work in front-end development an intimate setting to discuss the latest trends and methodologies for creating web applications.
There were plenty of great speakers to learn from this year and I was lucky enough to give a presentation about the emergence of Angular 2.
Two Impactful Presentations from Front Porch 2016
There’s value in every presentation at Front Porch, but there were two in particular that stood out to me this year:
- Sass: The Gateway Drug for Designers Who Want to Code: Adekunle Oduye’s talk centered on the typical “should designers learn code?” debate that has become so popular in front-end developer circles. Oduye focused on how Sass can help designers feed their coding addiction and start validating their concepts. Because we’re so focused on balancing human-centered design with business outcomes, it was great to listen to Oduye’s ideas about bringing designers together with developers to create better, more modern web applications.
- Making It Better Without Making It Over: Rebecca Murphy’s presentation keyed in on something every front-end developer is familiar with—the challenges that come along with rapid changes in development trends. After inheriting an aging Indeed application, Murphy was left with code developed for the first iPhone at a time when technology had advanced far beyond what it was in 2007. While it might be tempting to start from scratch, Murphy had some great insight into how we can improve outdated applications without overhauling an entire project.
These presentations stressed the importance of remaining agile and keeping up with the latest front-end development trends. Similarly, my presentation focused on how the developer community is making the shift from Angular 1 to Angular 2—and what that means for web application production.
What Does Angular 2 Mean for Front-End Development?
AngularJS has long been the preferred framework for developing web applications. However, Facebook’s React framework went stable in 2015 and garnered a lot of fanfare.
To compete with the rising React framework,
Google released Angular 2 as a follow-up to its popular AngularJS framework. The new framework was released as a beta in January and went stable in September. Rather than updating the AngularJS framework, Google went through a complete rewrite to create Angular 2. Two key differences include:
- Focusing on Component-Based Development: Angular 2 has embraced the web components standard, which offers composability, reusability and encapsulation for your web applications. The web components standard also gives us the ability to build progressive web apps. Shifting to components means more flexible features for front-end developers.
While Angular 2 is a modern refresh for the popular AngularJS framework, developers seem reluctant to make the switch. One of the main challenges for adoption has been the deprecating API changes between the Angular 2 beta and recent stable release. Typically, developers would be able to learn through the beta and then build off that foundation in a stable release.
Developers who started using Angular 2 in the beta stage had to relearn concepts and APIs and also upgrade huge portions of their applications when the release candidate (RC) was reached—people just seem frustrated with the release cycle.
We’re in the early days of Angular 2, but it’s already clear that front-end development is boiling down to a two-horse race between React and Angular 2—the question remains how to decide between the two.
Staying Flexible in Your Front-End Framework Choices
As the requirements and expectations of web applications evolve, trends toward cloud-based back-end frameworks and server-less architectures will continue to grow. However, this means that front-end development will have to become more flexible, which is why component-based frameworks like Angular 2 and React are so important.
While developers will always establish their own preferences, it’s important to realize that the choice between React and Angular 2 should be made on a per-project basis. For example, we’ve invested heavily in Angular 2 for certain client projects, but that doesn’t mean we aren’t using React when appropriate.
It’s no longer enough to decide you want a web app and just start coding. As digital transformation continues to take shape across industries, we have to put design and architecture DNA up front because they have become as important as anything else in a project.
If you want to learn more about rethinking the way we conceptualize modern tech products, download our free ebook, Designing for Business Outcomes, and discover the processes necessary to choose the right architecture based on design.