DEV Community

Discussion on: I have been a professional developer for 31 years and I'm 53 now, Ask Me Anything!

Collapse
 
johnmunsch profile image
John Munsch

I've only been doing front-end for the last seven years. When I first started there was "Web 2.0" and people were definitely starting to think in terms of building apps which didn't do a constant request-response cycle back and forth to the server for every minor thing a user might do. But the software didn't support you very well for building that. jQuery plus various libraries was no substitute for what modern frameworks do.

So when my boss at the time asked me to figure out how to build a replacement for a piece of software the customers used that had a front-end completely separate from the back-end (which would be used only as an API) it seemed formidable. I didn't know JavaScript well, had not used jQuery, and had really only used Java the previous 10 years. I briefly considered suggesting Google Web Toolkit but it just seemed like it would end up creating as many problems as it solved. We ended up using Backbone.js, jQuery, Underscore.js, Handlebars, and a sprinkling of other libraries to do various things. There just weren't any off-the-shelf solutions that worked well for building this kind of thing. It worked, but the final results tended to be something where you could tell who had written every page of the app and the skill level of every one of them.

By 2013 however, I changed jobs and was asked to pick technologies and I was able to have a bake-off between AngularJS and Ember.js to see which one would work well. So choices were starting to appear and they definitely made things like memory management as you changed routes much easier.

And now :) Well, there are a few choices out there. However, I strongly believe the browser has stepped up to become what should be the focus for most developers. Web Components are an excellent technology in that they're easy to use and completely agnostic in implementation. When paired with some middleware like Polymer or their new LitElement, you can adjust the actual development to your personal taste (including making use of stuff like JSX if that was your thing).

Collapse
 
ben profile image
Ben Halpern

I was able to have a bake-off between AngularJS

What's your approach to such a bake-off? What steps do you take and what do you look for?

Thread Thread
 
johnmunsch profile image
John Munsch

The approach, as such, was to find a small project and build it using both libraries. You can actually see the AngularJS version of that build over here (it proved to be a very popular bit of open source for me): github.com/JohnMunsch/airquotes

Note: Keep in mind, most of that code is from 2013 :)

For me it was all about how easy it was to learn enough to build a specific thing (the project was from a third party so I didn't get to pick it; that was actually a plus because I couldn't tailor the choice to what was easy or worked well with a particular framework). I also wanted to see how comfortable I was with the final finished product.

Did it do what I wanted without a lot of compromises and could I read the final finished product and understand it? Furthermore, could I explain what I did to others?