Getting started with Flutter

Starting with a new tech-stack is always exciting. But the excitement soon fizzles out when you hit the first road-block. I am no different and had a plethora of these emotions – excitement as well as anguish during my first 2 weeks on Flutter.

I understood a number of things, both technical and non-technical while embarking on this new journey. This is what I discovered:

The Tutorial Tsunami

When you decide to learn a new tech-stack, looking out for tutorials is the very first step. The thing is, with large number of choices, comes confusion. A single search for “Flutter tutorials” on Google gives back about 2,47,00,000 results in 0.69 seconds.

Now the obvious choices are YouTube, Udemy and blogs on Medium. There are some amazing blogs and YouTube playlists on getting started with flutter but I wanted something more robust. Something more organized, something which also validates my learning (in the form of a certification).

This is where I decided to take advantage of the current situation of Pluralsight offering their courses for free for APRIL’20. I was already enrolled for the JavaScript path and because I fell in love with their content, I decided to give Pluralsight a shot on Flutter too! Thank you Pluralsight!

The point I am trying to make here is that do not go for random videos on random topics in a fairly random order. Try to go with a teacher/mentor who can provide you with information and topics to study – IN A PARTICULAR ORDER.

This is what Pluralsight gave to me – a direction.

Sharpen your axe first

“If I had five minutes to chop down a tree, I’d spend the first three sharpening my axe.”

Abraham Lincoln

Therefore from the above analogy, I decided to first learn the very basics. Not the basics of Flutter itself, but the programming language Flutter uses – Dart Programming Language.

This proved to be great decision because while going through the Flutter tutorials, I could follow the nomenclature being used by the instructor. Be it syntax being followed or OOPS concepts that Dart uses – there was not 1 moment of “WHAT THE FUCK IS THAT” or “WHY THE FUCK HE DID THAT”

The resource I used for learning Dart was graciously offered by freeCodeCamp.org on its YouTube channel with collaboration with Mahmud Ahsan.

Dart Video Tutorial

Study Notes on Dart Video Tutorial

Diving into Flutter

After skimming through Dart and getting my Object Oriented Programming (OOP) concepts refreshed, I decided to move to Flutter. One thing that I would like to say on record is:

The Flutter community is lit af!

– Aditya Tyagi

I knew that picking up a random flutter tutorial would can turn out to be a bad decision, and the funny thing about these decisions is that you come to know that you fucked up when you are half-way into the tutorial!

Therefore I turned to the community for some advice and they did not disappoint me! I knocked on the doors of Google Developer Groups (GDG) on Flutter and tweeted to some of the Google Developer Experts (GDE) on Flutter and they graciously answered/helped!

To name a few:

The courses/apps I went through for learning the VERY BASICS of Flutter (in the very order I went through them) and created notes using README.md on my GitHub (links attached).

  1. Flutter: The Big Picture
    Notes on the very basics of Flutter

  2. Flutter: Getting Started
    Notes on Stateless Widgets
    Notes on Stateful Widgets
    Notes on Animations and Gestures

  3. A To-Do App

  4. Creating layouts with Flutter

Now, I know these are free just for April’20 and it might get paid till the time you land on this article! But I want to bring forward a point here, as in why I chose to go ahead with Pluralsight instead of other YouTube tutorials.

Why Pluralsight?

My first encounter with the platform came when the company decided to open the gates for everyone (make the platform FREE) for April’20. I stumbled on JavaScript Learning Path. I was blown away by the sheer quality of content and how well the topics are structured. Thus, I decided to learn Flutter from Pluralsight. Though the platform doesn’t have much material on the same, but its good-enough for a beginner like me.

The second factor is that I wanted to make most of the opportunity, the opportunity of accessing Pluralsight’s content for free – and to get certification for the same.

Beware of these pitfalls

One thing that you always have to keep in mind is that Flutter is relatively a new thing therefore it is also changing/updating at a speed you and I will barely be able follow. Thus, the video tutorials you are going to follow, always check when was it uploaded as the packages being used in the tutorial might be deprecated.

I wasted a lot of my time on version incompatibility issue while developing the To-Do app. Turns out, the tutorial was shot/uploaded in late 2018 and its already 2020. Therefore, the packages being used or the syntax had breaking changes. Make sure you follow MOST UPDATED VIDEO TUTORIALS only.

But then video tutorials are prone to this issue. That’s the reason I prefer blogs over videos.

In conclusion…

Things are just getting started!

Anyways, jokes apart – the first 2 weeks were exiting as well as pretty intense. It is not easy to learn a framework/programming language which is fairly new in the tech-world. But the one thing I am sure off is – apart from becoming a Full Stack Web Developer, after I am done with Flutter, I’ll be able to develop apps for iOS and Android devices. In other words, it will be insanely cool!

Drop your thoughts/suggestions/advice in the comments below or hit me up on twitter @secondbestcoder

2 comments / Add your comment below

Leave a Reply to Aditya Tyagi Cancel reply

Your email address will not be published. Required fields are marked *