Too Big… Fail!

On June, I wrote a post about changing my work stack to something different. My purpose was, as always, to learn something new.

I was really fascinated by the M.E.A.N. stack (and I still am!), but I did several mistakes while studying it. Something went wrong and I abandoned it. It was strange: starting big, finishing poorly.

So, as a result of this fail, I decided to write a post to put down in black and white what I learned. Maybe it will be useful to someone.


One Item at Time, Please!

We are talking about an entire stack here. In this context, a stack is, by definition, a set of software subsystems or components needed to create a complete platform*. Every single item, this time, was totally new for me. I tried to study them all together, learning something little about every single element and then making a first, brutal and rudimentary tentative to build an app with it.

Everything became sloppy and confused, immediately.

What I learned: if you are studying a stack, the best way to do things is to explore it in its entirety, but only on a very high level. Right after, choose the first item, learn a good amount of things about it and then go forward.

Let’s make a simple example. As many of you already know, I am absolutely in it with Laravel. So, the best thing for me would be try to study something I can easily integrate with it. Angular is a frontend framework, Laravel a backend one. A good choice would be to study Angular first, and after that learning how to integrate it with Laravel. Finally, I would go forward to other stack elements with a greater knowledge of it all, including integrations.


The “Learning Fury”

If you read the previously mentioned post, you will notice that I studied every single day something new on the book. Cool, but I was under the effect of what I call the “Learning Fury”. I leaved and ignored everything I was doing to focus all my  energies on a single thing. This time, the “single thing” was the M.E.A.N. stack.

I was terribly wrong, because after the first 72 hours the effect vanishes.

What I learned: don’t fall under the “Learning Fury” fire. You can’t master a new technology in days or months. If you want to study it properly, take your time and be patient. Every developer is often lazy and impatient. A good developer is someone who learned to become patient and active.


What Happens Now?

Well, I think I will try to study AngularJS first and integrate it with Laravel, creating a sample one page app. Then I will think about including a new technology in the stack (MongoDB for persistence) and finally I will switch from Laravel to ExpressJS.

Let’s see what happens 🙂 Obviously, I will post other updates here.


 

* Wikipedia definition for “Solution Stack”

  • You could also try SailsJS instead of going straight to Express 😉

    • Francesco Malatesta

      Thank you, Will 🙂

  • unlucio

    “You can’t master a new technology in days or months.”
    Well, you actually can but it depends a lot on your background.
    For instance you can totally learn this now fashionable mean stack if you have strong javascript bases at least or you’ve great chances of shooting your own foot.

    In my experience whenever I can’t wrap my mind around some new technology in a matter of hours and jump on it in a matter of days it’s because I’m missing some bases.
    Fast learners aren’t actually faster. They just start ahead of the others because they have a stronger background.

    • Francesco Malatesta

      Obiously I’m counting prerequisites in.

      The M.E.A.N. stack is a technology ensemble. Maybe months is a good tradeoff, but “days” are good for basics, definitely not for mastering 🙂

      However, thanks for your comment, you’re welcome!