Given my roles over the last year plus writing code has be relegated to IaC, bash, or pipeline automation.s While nice that I still get to write logic the hunger to create something usable by people still nags in the back of my head. Given that the majority of the past decade or so has been server side; technologies like React, VueJS, Angular passed me by. Not that this is a problem, frontend
never really interested me personally. Due mainly to the early 2000s when a dev had to write for IE AND Firefox, desperately. I hate repeating code just for one vendor.
As such, I have been listening / watching VueJS courses during my free time. As many of you know I am also studying for certifications, so the VueJS time has been limited. In the last 30 days I would ballpark 40 hours worth of effort has gone into studying VueJS.
Why VueJS? (the good)
VueJS has a number of points going for itself.
- No JSX
- Not owned by FAANG (Facebook, Amazon, Apple, Netflix, Google)
- active and engaged community
- Performance, small size, include only what is required in build
- Minimal setup dev / prod environments
- IE 11 not support, no added baggage for a dated and dead browser
- Large UI library options
What, really!? (the bad)
While VueJS has it's good parts, nothing is perfect. One of the biggest pains out of the box is var data accessibility. Functions calling functions calling properties calling functions. Just to pass an atomic data to a sibling component. (To be fair many front end frameworks suffers this same access problem.)
Resources
Given the limited amount of time and attention I have been able to direct toward learning VueJS it was important for me to get the most bang for the attention minute buck. Here are some resources that really hit the spot.
- https://www.udemy.com/vuejs-2-the-complete-guide
- VueJS Guide
- VueJS Examples
- Dev.to community
- Top Tutorials To Learn Vue Js For Beginners
- Laracasts
Javascript, maybe not so bad...
Results
After maybe 40 hours of attention and effort some hands on practice and exposure to the community I think VueJS is worth looking at. It is flexible but not disorderly, powerful but not overwhelming complex, popular but not smothering. If can be included in nearly any standard web or native application as a part or whole, mobile native VueJS apps anyone? To round it out VueJS is performant and is on the adoption upswing.
Would I trade it for another option if the other option is in place and working? No, of course not. Would I pick VueJS for a new feature or project if given the chance? Yes, yes I would.