What I learned at ng-conf 2018

Sean G. Wright
5 min readApr 21, 2018
Every good Angular application starts with the CLI and some jazz hands

I love ng-conf.

I think it’s the world’s best developer conference, but I’m very biased. ng-conf is the only software development related conference I’ve ever been to and I’ve been using either AngularJs or Angular regularly since 2014.

This was my 4th ng-conf and I can honestly say it was as great as ever. Each year the conference has memorable moments and a unique personality (something that I think is a testament to the conference organizers’ hardwork, dedication and attention to detail).

Surrounded by passionate Angular developers, I always come away from my time spent in Salt Lake City, UT with something new.

Motivation comes from the talks and presentations of new techniques and framework features.

Perspective comes from the open conversation that flows around the breakfast tables and through the hotel hallways between developers from different backgrounds, with different goals and constraints. Everyone’s hoping to share what they know or learn something new.

Here’s what I learned at ng-conf 2018.

Angular is mature (not so many Ch-ch-ch-changes)

In the past, each ng-conf came with a big announcement. This year, not so much. The framework has stabilized, the community has matured and Angular can be relied on to solve real problems (especially for enterprises… see more below) without needing to worry about breaking accepted patterns or changes in the framework Api.

But I see this as a good thing. It feels like there is more trust in Angular to always provide a path forward. Scalability and dependability have become better marketing tools than matching every feature added by some other framework X. Though that’s not to say the Angular team isn’t working on some really awesome things right now (like Angular Elements and Schematics)!

@ngrx is (becoming?) popular

I can’t tell if lots of teams are using NgRx in their apps or if the community is showing interest in a promising pattern. Either way, there were 9 talks or sessions covering NgRx or a related topic.

Complex state management has always been possible in AngularJs/Angular applications but the Angular community never consolidated around a consistent approach. It looks like this adaptation of Redux from the React community might be the first widely adopted solution in the Angular world.

Testing can still be difficult

In sitting through several talks and discussion panels about testing I realized that developers (including myself) have issues with testing in Angular.

Even though Angular as a framework has great tests, the CLI makes it easy to get started testing and the community leaders are all huge advocates of testing, it can still be difficult and there is still room for improvement in terms of tooling and best practices.

  • Where do I focus most of my tests?
  • How can I make my components easier to test?
  • What’s the best way to test my Views, Services or NgRx logic?
  • What are the quirks of Protractor (and WebDriver) that I need to be aware of?

Fortunately the panelists and talks had some great answers

  • Focus on class (unit) testing over View (integration) or End-to-end.
  • If needed, move component state management into services, which are almost always easier to test. This can lead to tighter coupling so use it where it makes sense.
  • Check out the ng-conf 2018 talks playlist on youtube for more great testing information (not all the videos have been uploaded yet). Protractor: A New Hope was particularly enlightening.

The enterprise loves Angular

With companies like Nrwl.io focusing their efforts on helping large organizations build large Angular applications and, from the Angular team, a strong push for the adoption of schematics (now even being used in RxJs) to automate tasks like code generation and updates it looks like Angular is a good option for teams and projects on the larger end of the spectrum.

I struck up many conversations with developers from large financial institutions over the past few days. It seemed these companies were sending their developers to ng-conf in droves. While I work at a small agency, WiredViews, and we use Angular very successfully I can absolutely see the benefits Angular would bring to the enterprise. Apparently enterprise developers are seeing those benefits too.

PWAs are the new hotness

Progressive web applications combine the features you’ve come to associate with native mobile apps (offline mode, push notifications, being installable) and the ease of access that traditional websites provide (linkable, no installation required, easy to update, works on any device).

With Windows 10 supporting PWAs in its store and modern browsers now supporting many PWA features this approach to web development is looking more like a realistic option rather than an experimental technology.

At ng-conf there were talks specifically about PWAs and talks referencing PWAs in relation to other technologies like Server Side Rendering and caching/performance. These talks were well attended and developers had many questions.

It’s my personal opinion that any web site built today should at least have a manifest.json and a complete suite of app icons. There are plenty of manifest generators available so try one out and enhance the experience of your app with a few easy steps.

Large organizations are still running AngularJs — successfully

While I love Angular and don’t ever have moments of wistful desire for the days of AngularJs my company still has clients with AngularJs applications running in production (that we built). These applications run perfectly fine and there really isn’t a reason to update them to Angular.

Based on my conversations at ng-conf this year it appears there are still many companies developing, running and maintaining AngularJs applications (a lot more than the hype-the-new-thing-machine would have you believe). Some of them have plans to migrate using ngUpgrade, others plan to completely rewrite using Angular or another javascript framework. Others don’t have any plans to move their applications away from AngularJs (and that’s ok!). These organizations have years of experience with AngularJs and it’s meeting their business requirements (i.e. keeping people productive and generating revenue).

With the announcement that the Angular team will be providing long term support until 2021 for AngularJs 1.7 there is plenty of time for these teams to decide if they need to move away from AngularJs and how to do it if that need arrives.

Until next year

I’m sad ng-conf 2018 is over. It’s such a great experience — a Shangri-La of Angular!

Now I have to return to the real world and back to work. But that’s exciting too in its own way because that means I get to put to practice all the things I learned at this year’s ng-conf.

Only 364 days until ng-conf. Are you ready?

Who doesn’t love a donut wall?

--

--

Sean G. Wright

Web developer passionate about my craft and helping others grow in theirs.