I want to build a utility app for myself. It doesn’t matter what’s this app is about – I’ll get to that later. What matters is that I get a chance to start something from scratch, which is always fun 🙂 .
For this project, I decided to use Meteor – a JavaScript app platform.
The interesting thing about this project, is that I have zero experience with Meteor. Or any other JavaScript framework for that matter. I have some knowledge of JavaScript & HTML basics, but that’s pretty much it.
I see this as an opportunity to capture and document the newbie experience as I go through the learning process! As I learn the Meteor platform and build my project, I will blog about my experience as a newcomer to the Meteor platform.
This should be interesting 🙂 . Read on for more about my motivation and plans.
The opportunity – capturing the newbie experience by blogging my learning experience
Learning something new can be difficult. If a community around a technology, framework, or platform, doesn’t offer a good on-boarding experience for newcomers, then those newcomers will be quick to browse to the tutorial of the next contender. The challenge is often that the community is not aware that this is happening, because community members have already forgotten what newcomers expect to learn from on-boarding tutorials.
By documenting my learning experience, I hope to achieve several goals:
- To provide unbiased review, albeit subjective, of the on-boarding materials that exist for Meteor newcomers, as of 10-12/2015.
- To provide feedback to the Meteor community from the perspective of a newbie, if the community is interested in such feedback 🙂 .
- Maybe to assist others who are also trying to start with Meteor to find their ways.
My starting point
As stated above, I have absolutely zero experience with Meteor, as well as any other JavaScript framework and platform, be it backend (node) or frontend (React, Angular, whatever).
I am familiar with the basics of HTML and JavaScript, well enough to read “standard” source code, and make rudimentary modifications. Such attempts will require close Google & StackOverflow supervision.
I do have programming experience, so I’m not starting with no clue about programming and development at all. Most of my experience is around Python and C/C++. I am also comfortable with messing with systems of all kinds, which is a bit hard to quantify, but quite handy in learning.
Why Meteor?
Well, why not?
From the outside, it looks pretty amazing.
I’ll try to capture my reasoning for choosing Meteor nonetheless:
- I’m going to need JavaScript, no matter what. My app will have a web-based component, with frontend. It will be interactive in some way. So it will have JavaScript.
- If I’m going to need JavaScript, and the entire Internet is pretty much powered by JavaScript, maybe it’s about time I up my JavaScript game…
- OK, what’s the best way to up my JavaScript game? I know – force myself to build the entire app with nothing but JavaScript! Is that possible?
- Yes! There are JavaScript-centric platforms! Mmmm… Node.js, React, Angular, Meteor, … which one fits where in the stack, and how do they play with each other?
- Hey, look at that! Meteor is a full stack platform all on its own! I can supposedly use it with nothing else! That sounds enticing!
- Read some Quora, watch a couple of YouTube videos about Meteor.
- Sounds very promising. The fact that it’s a single platform and a single language for the entire stack should allow for extremely rapid prototyping.
Also, I like learning new things. That’s why I didn’t go the Python-route this time.
Learning plan
I don’t know in advance how exactly I am going to complete this learning experience. I have general ideas, a starting point, and a sense that I’ll figure it as I move along.
My “learning framework” is always project-based. I have something specific that I want to build, and I am going to learn what I need to accomplish that. I somewhat rely on my natural tendencies, to know that while learning what I need, I will look around and go beyond.
I understand that before I can dive into my own project, I have to start somewhere. I plan to start at the source, by going through the official Meteor tutorials. After that – who knows 🙂 .
Blogging plan
In the next post I will describe the app that I want to build.
After that, I’ll start the learning process, which is going to be pretty dynamic, and probably non-linear.
Every time is makes sense, I’ll write up a post describing another step in the process.
Don’t expect fast progress though, as this is something I’m tackling in my spare time. Spare time is not abundant. Sigh.
November 22, 2015
Wow that’s really cool idea to start with Meteor js
November 23, 2015
That’s a great idea. I’m just looking into meteor for a upcoming startup project I’m going to do with friend. If we decide on using it, I’ll also join you by blogging my learning and experiences.
November 23, 2015
That’s great! Good luck with your project!