image tooltip here

For the last month or so, I have been a fullstack engineer. The last time I worked on the frontend was in 2010. To say a lot’s changed in the intervening 13 years is putting it mildly.

Let me draw you a picture of working the frontend in 2010. Stackoverflow was just a baby, so I don’t think I even knew about it. As a result, my reference materials consisted of two little books: an HTML quick reference and a CSS quick reference. Eventially I think I got a Javascript one, too. That’s it. That’s all you had to know. No frameworks (well, jQuery was just starting to gain traction, but not in our company), no nothing. As a result, I was also extremely limited in what I was able to do. Clients would bring me a Photoshop document, expecting that I could style their website that way, and I would sometimes have to say no. Often this was to things like rounded corners. Actually I think I was able to do that by 2010, but I started in 2007, and for the first couple of years, it was not possible. So an important part of my job was trying to explain to clients why we couldn’t do something that seemed so simple to them.

Fast-forward to now. What we are able to do on the frontend now is miles and miles from what we could do back then. You could almost go without a “backend” technology, as you can even connect to a Firebase database via something like Angular. And your options are seemingly unlimited. The javascript frameworks are just about endless. I feel like I’m hearing of a new one at every Hack and Learn I attend. I just saw a post for “The 20 best Javascript Frameworks”, so there are at least that many. How many counts as too many?

My stack is Angular and Typescript, so obviously I use Angular Material for styling rather than Bootstrap. I have used Bootstrap, and I must say I like Angular Material better because it has a data table. I guess it can do that because it’s intertwined with Angular. I like Angular, but I really like Typescript. I’m a statically typed language kind of girl, so Typescript is like it was made just for me in order to fix the fundamental flaw of Javascript. Now you’re not just throwing it all to the wind, hoping it works, until it inevitably breaks.

So is this better, or is it more convoluted? It’s both, really. You can do so much more, and it’s way more interesting, but I’m working in Angular and maybe he’s working in React and she’s working in Laravel so we’re not all speaking the same language anymore, and so job listings are more specialized and keep more people out. And once again, just how many frameworks do we really need? I like the additional functionality, but couldn’t we have stopped at 2 or 3 and just added features to those? It’s a right mess.