As of the inception of this course (August 2018), this course will be meant for newcomers to mobile development who have some basic programming skills.
I cannot beat Google's Flutter installation guide (or maybe I can, DM on Twitter if you need help or simply follow this link to install Flutter on to your system.
In this course, I'm going use VSCode only because I have the most experience with this IDE. I've seen it run really well and consistently on Windows, Linux and OSX too. I recommend installing the 'flutter' and 'dart' extensions.
This course is meant to make one comfortable crafting end to end, simple apps with Flutter, using realistic, "as close to production as possible" code. The code examples will go beyond Flutter, so not only covering the Dart programming language but from working with web services, various libraries out there, good code organization, environment management other production-ready tips as well as step by step submitting to the Google Play and the Apple App Store.
Even since launching my first Flutter app, I became really excited to write a course. Here's what I've learned so you have some context:
Dart is the programming language one uses to craft Flutter apps. Dart rocks. Dart is simple. Dart is super powerful. Dart is a mature, fully featured programming language that kicks butt. In Google's words: "Developers at Google and elsewhere use Dart to create high-quality, mission-critical apps for iOS, Android, and the web. With features aimed at client-side development, Dart is a great fit for both mobile and web apps."