A perspective from the Vue.js rabbit hole

Posted on March 19, 2024

Caroline Blaker

A perspective from the Vue.js rabbit hole Image

A perspective from a place we think of as wayy out there.

Hello, my name is Caroline, and in case you can’t tell - I’m standing in an elbow bend down a giant, cavernous earthen throughway, inching my way down and avoiding detection of whatever creature may be lurking around the next corner. That’s right, I’m going in. It’s definitely slow-going - the way this thing twists and turns means gravity can be in any direction and navigation can be tricky. Why would I do all this? Well, to come out the other side, of course.

I’m sure people do this all the time, but not me. Those people have taken a lot of classes and I kind-of stopped in my mid 20s. But I’m pursuing the provider-made master class certificate for Vue.js on Vue School - and because I have so many partial projects in Vue, and because of how much work I’ve already done in it, knowing how to do it exactly right can be [pauses] - disruptive. Like learning one new thing spawns 27 new tasks, spontaneously. Because every lesson is so packed with useful information, I take sizeable pauses between lessons to pack the new way into my code. Reinforcing the modeled lesson in my own context has always been one of my most effective ways to learn. Then, in the event that I get through a significant amount of the course work, there’s a blog post to write!

Progress and Process

For those of you who don’t know (and for those of you who do - hi!) what makes good code good to work with is the amount of problems it handles for you. It’s the extra steps you don’t need to take. It’s the reliability and design of the performance and the process. It makes a multi-step task just happen. You tell it the minimum and it does the maximum. With so much computer overhead (referred to as “BS” from time to time) out of the way, you can just make, in a way that was designed for making to go quicker and do more with less “how do I make this into computer-think?” translation.

All this to say that I’m investigating significant time and energy bringing myself to total fluidity on Vue.js, and bringing the Petroglyph UI, Zapooca, Aquarian Web Studio as a whole, and other projects with me. Vue.js is the rabbit hole, and these code projects are being kept up to speed with my learning. You’re going to see more of:

  • Fun AI Usage
  • Transitions and Animations
  • API integrations

Speaking of which - the Petroglyph UI now features one of Vue School’s basic components (mini-course is free here) connecting to the Github API. Our wonderful Content Management Systems (ExpressionEngine, Craft CMS) have exceptionally performant, convenient (which is process,) feature-appropriate plugins to handle much of the integrations we need day-to-day, but we want to do more of this on the front-end side of things, while opening ourselves up to the powerful capacities put within reach by Vue.js.

But why?

I hear objections to spending time like this. So many other entities produce so much more ready page thingies - have so many more options - are so much further along. Are better. I agree with just about every point. The point of this work, however, is to publish, not to compete. It’s ours, set up in a way that my team can quickly fire up something familiar and easy to work with to get a website going quickly. Not everybody needs a starter kit and not everybody needs a blank starter kit. Not everybody needs a bare minimum of opinions and customizations assumed at the get-go. We’re providing it anyway, and posting it online. Not because its popularity matters to us, but to do something and publish it, and hopefully at some point make it interesting.

At about 19% completion of the Vue Masterclass course, I’m delighted to report that while there is no light at the end of the tunnel, I’m thrilled to be working with Vue.js - a market-leading javascript heavyweight that handles an extraordinary number of use cases with grace and ease. It provides so many built-in options to rapidly scale and ease redundancy. I gotta tell you. I went after some development in this area independent of coursework before being drawn around to it. Some of this stuff was quite arcane from the outside, but being walked in through the front door with an instructor really opened up what it was there to do and made everything make sense.

I’m particularly beguiled by the Vue Router - absolutely basic thing to Vue, absolutely missing (or entirely optional) for CMS builds. Use of the Vue Router allows for components to be matched to pages and URLs, without page refreshes. It’s this entity that you add that pipes requests around so that, again, you don’t have to. Sounds geeky, I know - but it’s super novel to this 1999-trained HTML / CSS coder. And, it eases the need of having a CMS from builds where navigational structures are present. And all you have to do is set it up, and it just works. I have very few applications for it on any of my existing Vue builds because the concept is so new to me - so I think I’ll have to come back to this one later? I hate that, but it’s one of those things I have to just figure out along the way. Just here, navigating this here rabbit hole.

There are a lot of comments on the course complaining about its age, how the tech has moved and the course has not. These commenters are not historians. The code still works and is truly foundational. In the event that you would like to be covered when running into legacy code, long past the time courses on it are available, then why not today? Meanwhile, Vue School has intervened on the problem by inserting lessons “From the future” and by re-building the course from scratch, scheduled to release this year.

And then there's Perfectionism

The soothsayers of the internet like to say that it’s never too late to stop missing out, and you’re never too old, and that kind of stuff. A quieter point that I’d like to stand up for is that process work is worthy of show - artists do this all the time. A zillion studies before the painting canvas is even gesso’d. I had the chance to skip out on catching up the blog on this phase of things in favor of announcing big accomplishments only. And I’ve wanted to see more posted work from up-and-coming coders. But so much less is published because it’s too simple. Or, it’s classwork. It’s easily embarrassing by its sophomoric disposition, its age, its irrelevance. But did you do it? Can you do it again? Phenomenal! Post it. Just make sure the form submits aren’t screwing anyone over. And even if you're really good at it, you're not beneath your own expertise in posting or publishing basic stuff. You're ultimately throwing out a handhold for anyone to use to help themselves.

Ultimately, offering anyone a link to a thing being verbally described, mundane or significant, in code and up for them to review, is going to be the strongest way to prove that you can handle what they’re describing. In some contexts, like an everything page, it can also show them other scenarios you have solved or designed, considered, presented, spent time on. Without the tear on the space of a brand and its particular demands, we can make the space available for projection and exploration, while offering it to coders to download and build on for free.

There’s a lot more to go and I’ve got to continue down the rabbit hole. I hear there’s posting ahead, shopping cart stuff, and tons more. Thanks for checking in on my progress and your interest in seeing it come to fruition. You know I’ll be posting about it.

comments powered by Disqus