And so the journey into the world of Flutter Mobile Development begins…

Olawale Timothy Alabi
4 min readFeb 13, 2019

--

Photo by Jake Hills on Unsplash

A brief background/introduction:

I am a web dev who dabbled into android development sometimes last year.

I have always loved the idea of developing native mobile experience and I felt learning android development will afford me the opportunity to bring all my crazy mobile app ideas to reality.

However, my adventure ended rather abruptly at the time, when I realised that:

  1. The community was yet to make up her mind about the preferred language of choice. Sure there were lots of buzz around Kotlin and I was impressed by its intentions and implementations, but several useful (read non-trivial, beyond todos) tutorials and courses were written in Java. And I don’t want to learn Java. Heck, about 80% of samples in the official android docs were written in Java at the time.

2. Secondly, coming from the web, I know all too well how quickly messy browser wars could be. To think that I would be making a jump from the heated furnace of supporting IE10s to the frying pan of dealing with a fragmented universe of crappy OEMs and ODMs, …was rather too much for me. And no, I dont want to learn SWIFT just to develop for iOS.

Nope. Thanks though.

3. Lastly, maybe I can somehow deal with all the above, I mean what kind of a programmer are you if you can’t deal with programming difficulties right? So I soldered on…until I couldn’t. For me, the last clincher was Android Studio. I quickly realised that unless you have a state of the art gadget, that is, a games-grade machine, the workflow can be pretty annoying and tiresome.

My utmost respect to those devs who do this everyday! .

Respect. Nothing but absolute respect.

I cannot emphasise enough how crucial this is, especially if you are learning a new language/framework. You should be prepared to spend a sizeable chunk of your time debugging and going through your logs for immediate feedback. If this process is not reasonably snappy, you can lose interest pretty fast.

So, TL;DR; I returned back to my ‘calmer’ waters.

I trudged on, wading through the more familiar and far more ‘navigable’ world of the web.

But fast forward several months to the last few weeks and boom, I HEARD about flutter.

Nope.

I have always known and heard about this cool project being cooked by Google to serve as an alternative to Android development.

But I never really looked into it.

When I eventually did, I couldn’t believe my eyes!

And I could not stop scratching myself for coming so late to the party!

Suddenly all my earlier noted concerns and reasons for jumping ship were allayed.

It felt like someone took my list, went through each item one by one and pressed auto-reset on each.

It felt amazing.

Now, there is only one language (DART)to deal with, ever.

And the language itself is so approachable, I skimmed through the whole language tour within few hours.

Anyone who has ever coded in Javascript will instantly feel at home.

I was even more impressed when I heard about other exciting capabilities of the language; that is, the things you get free out of the box, just by learning it. You want to build a server side application? Check. You can even write it as a drop-in for Javascript…on the web!

Woohoo!

Think about that for a moment.

Wao! Really?!

Imagine a magical world where you have everything you have always known and loved in Javascript…(functions as first class citizens for instance) but also where all the bad (read: not-so-great) parts were smoothen out.

So, to my list, that was the first item checked out.

No more conflicting postulations and confusing suggestions. Every resource you will ever see was baked in Dart.

At least I can now focus my energy.

Second on my list was the headache of maintaining support for an infinite amount of devices out there. I cant be saddled with the responsibilities of providing support systems for various (legacy) android sdk versions, Samsung enchiladas, and inexhaustible Chinese variants.

With flutter, these concerns were flushed out. This because, now, the team took a new approach to mobile development. Instead of the code to be at the mercy of the platform, flutter comes packaged with its own widgets and designs.

Photo by Jade Aucamp on Unsplash

Which is what makes it possible to develop the same codebase even for iOS.

The apps look the same and work the same on older versions of Android and iOS, with no additional overhead for supporting older devices.

Thirdly, and again, the most important concern of all…development cycle.

In flutter, this is a breeze.

Coming from the web, if you have ever experienced live reload, you will appreciate this even more.

Now you can hit reload from Android Studio and see result instantly on your palm.

Even my old (grumpy) laptop delivers results in 3 seconds.

Speechless…

So, in conclusion, YES. I am back to mobile development.

And I am enjoying the ride so far.

Woohoooo!

I’ve got some cool and interesting ideas and as the flutter team would say, “I cant wait to see what I could build”

See you around folks.

And oh, thanks for the claps.

--

--