My experience in learning Vue.js was amazingly smooth. But Vue.js was not the only thing I’ve learned, in fact I think I’ve learned something of more value while building this APP with Vue. For context, this app is the client-side part of a complete project I’ve been working on for a while and decided to give it a cool Single Page Application portal.
See I always had this mindset that to learn new technology you’ve to find the ULTIMATE SUPER BEST tutorial .. book .. etc But with Vue I took a different approach .. I had to get things working ASAP. So I just went with the official documentation .. I’m new to all this frontend frameworks thing .. I went through the most important fundamental stuff really quickly while running small experiments code while learning. When I felt comfortable I started building what I wanted to build at the first place. I knew there was a lot of gaps that I don’t know yet to build the APP but I also know if I started looking for resources I’ll get into the tutorial hell and I would not get anything done .. I have been there A LOT and it’s not a nice place.
With what I learned from the docs and from googling around my specific use cases, surprise surprise .. I got shit done!. In fact I believe I got it done very nicely. I built a perfectly functional SPA app .. Well TBH it’s not perfect, later I found that I may have not followed some common practices and I used a tricky-complicated ways to do somethings .. but screw that .. screw perfect .. the App works .. it does what it supposed to do and that’s enough .. No apps are ever built perfectly from the first iteration. Now don’t get me wrong here I’m not saying planning a head how you gonna build something is not important. No it is important .. My talk here is about when you are knew to a technology. You can’t plan your app really good if you don’t have experience .. and you won’t get experience to build better apps if you don’t not build anything at all.
I made a lot of mistakes with Vue.js, mistakes I’m really happy about because now I know better. For instance I’ve used pure Bootstrap .. so I found my self re-building components that’s already built in BootstrapVue .. BUT at least I learned how to make my own components and I would be comfortable using other’s components.
I didn’t plan data follow very good and I struggled with state management for a while .. that a thing I would not notice by just watching or reading about Vue.js and coding a project with all the decisions already made .. you have to learn how to make these decisions, what should go in the Vuex store and what should not for example. Lately I knew there’s a convention for naming components that’s not like how I named them .. but not a big deal I’ll re-name them .. simple.
Mistakes like these actually irritates me, they get me into thinking that if I’ve done more reading or courses I could’ve avoided the fact that I made it wrong and now I’ve to fix. I always had these thoughts, I always thought I have to make things perfect from the first time .. but know I know that’s just not possible, and in order to build something right you have to build things wrong.
Get out of the tutorial hell kids .. do the minimum reading and start building IMMEDIATELY. Make your own bugs that no tutorial have ever explained.
Just start and you’ll arrive. Don’t try to learn it all at once before you do something .. you’ll never finish learning you will always find another resource eventually you will burn out before getting anything done.
To summarize this
Reflect on what you’ve built how could you made building this app easier ? What bugs gave you headache ? How you could’ve avoided them ?
I think it’s important if you are a backend developer to wear this hat from now and then, consuming your API and manipulating data you return for UI guys will give you a better idea about how to design good APIs. Ok .. that’s would be all I just have this ever unanswered question that I guess most backend guys wonder about .. . How do you guys design and pick nicely matching colors and actually do CSS without going insane? .. seriously how? freaking wizards. maybe the right-left minded is not a myth afterall ?