I recently jumped on the learn to code bandwagon. Okay, not so recently — more like a year and a half ago.
To my surprise, and like many others who teach themselves to “code”, it was a lot harder than I thought it would be.
During the first several months I really had no clue what I was doing. Sure, I grasped HTML and CSS quite easily. But the actual programming stuff? Not so much.
I jumped around from this to that, never staying fully committed. Admittedly, up until recently this was a problem I kept having. That is, not fully dedicating myself to one language and perfecting it.
I jumped from Python to Ruby on Rails (RoR). And now, I think I have finally found “the one” — Meteor.
Starting Off With Python
When I began learning how to program, I started with Python. I primarily chose Python because everyone was using it. Udacity, MIT and Coursera all had Intro to CS courses based on the Python Language. To me, it seemed like a great place to start.
But as I evolved as a coder, I realized I wanted to start building web applications. I had the basics of programing down. And now it was time to adopt a framework.
After weighing the pros and cons, I chose to go with RoR. Despite some inclination to give Django a whirl, ultimately choosing the Rails route was a wise decision at the time. Besides, all the cool coding bootcamps were teaching Ruby on Rails!
So back in August of 2014, I switched to RoR. I began doing tutorials, reading books, and so forth. Despite absorbing all this knowledge, it still took me so long to build my first simple web app — four weeks, in fact!
A major goal of mine was to be able to deploy web apps ASAP. Perhaps for some building with RoR is fast, however for me it was not. While RoR is a great framework with many advantages, it does have a bit of a learning curve. Especially for someone new to MVC frameworks (like me).
Hating (or So I Thought) JavaScript
When I first started learning to code, I took an Intro to JavaScript workshop. Unfortunately, the instructor was boring. And by the end of the first day I was completely lost. As a result, I avoided JavaScript like the plague. Which was a huge mistake.
It was only when I finally started to look for full time front end positions that I realized I made a misjudgment. I saw JavaScript everywhere, from various JS libraries to other desired JS-related skill sets. JavaScript was unavoidable.
This led me to further question, “Have I been doing the wrong thing all along?”
First Discovering Meteor.js
Around the same time I realized I was doomed with my lack of JavaScript skills, I learned about Meteor.
Meteor is basically an amazing full stack web application framework, entirely based upon JavaScript. It has instantaneous updates. And it’s incredibly fast — as in, it takes only a few hours to build a decent web application.
At this point in time, I was already well on my way with Ruby on Rails. And I dreaded the thought of switching languages/frameworks once again.
So I put it off. I didn’t dive in right away for the fear of being a flip-flopper. I told myself I had to stay committed. However, as I talked to more and more people who used Meteor — they all raved about it.
Perhaps most impressively was that I heard nothing negative about Meteor from those who tried it. The only downsides I can think of is the fact the current job market for Meteor developers is relatively bleak, since it’s so new. Also, because it is so new, there are not a ton of learning resources like there are with RoR. (This is changing, though.)
Giving Meteor A Try: Love At First Line
Finally, I gave in to my curiosity and tried the official tutorial on the Meteor site. I had high expectations going into the tutorial. And they were met.
After about ten minutes, I was sold. I basically dropped RoR right then and there.
Here are a few of the main reasons why I enjoy Meteor so much:
- It’s quick to create a web app — easy to start building with basic HTML, CSS and JS know-how
- Live updating — data syncs automatically
- JavaScript everywhere — unlike other frameworks where you need front and backend languages
- Tons of user packages that make it simple to do things like setup user accounts or add Bootstrap to your project
- Meteor is new and exciting, it was initially released in 2012
- The Meteor community is helpful and enthusiastic
Overall, the thing I like about Meteor the most is the speed. It’s just so fast. I also love how it’s JavaScript everywhere. (Even though I prefer the clean Ruby syntax over JS.) Meteor’s convenience and ease of use in undeniable.
Moreover, it’s not that RoR is lacking or insufficient. It’s just that Meteor offers a much better experience. Comparing RoR to Meteor head-to-head, I am sure there are situations where RoR outperforms. As well as certain instances where using RoR would be a better solution than Meteor. But for me, an individual wanting to build quick web apps, Meteor is perfect.
But more than anything, what it comes down to is that Meteor makes me excited. While I was learning Ruby on Rails, I forced myself to study. On the other hand, with Meteor I want to learn more. I want to read about it. I want to experiment. And I lose track of time when doing so.
Happily Ever After With Meteor
Along with ditching RoR and switching to Meteor, I also made a point to get better at JavaScript and jQuery. (Because getting a full time dev job is still on my mind!)
While the job market for Meteor developers isn’t too hot just yet, I like the fact that building with Meteor allows me to better understand JavaScript as well as jQuery. (The thing I once dreaded most.)
I’ve been able to reconcile my switch to Meteor from RoR for several reasons:
- Meteor allows me to practice JavaScript – which is an employable skill
- I can easily build web apps on my own with Meteor – which I love for personal reasons
- I enjoy and get excited about Meteor
Best Meteor Books For Beginners
Discover Meteor Book Review
(By: Tom Coleman & Sacha Greif )
When I first cracked open theDiscover Meteor book, I lost track of time. (This isn’t usually a characteristic associated with programming.) I was giddy with enjoy over how quickly I could build a web app and then deploy it online. I didn’t experience that feeling with any other language or framework.
Your First Meteor Application: A Complete Beginner’s Guide to the Meteor JavaScript Framework
(By: David Turnbull )
This is a beginner meteor book available on Amazon, specifically targeted for beginners. This books provides you a very good overview of Meteor.js foundation components Node.js and MongoDB. These are essential for any meteor developer. This book can give you a good starting point if you have absolutely no previous background in Meteor and related component stack.
Best Online Meteor Tutorials & Learning Resources For Beginners
Other Meteor resources that have helped me greatly so far have been Josh Owen’s blog, as well as the official Meteor YouTube channel — which is filled with information-rich videos on developing with Meteor.
Once I allowed myself give Meteor a try, it was basically love at first line of code. However, I don’t believe I am unique in this way. I think a lot of people fall hard for Meteor.
This article is contributed by Laurence Bradford.
After spending nearly a year and a half living, working, and traveling in East Asia, Laurence Bradford returned back to the US after discovering a passion for front-end web development. Today she manages the site learntocodewith.me and works as a front-end developer. You can find her on Twitter @learncodewithme.