While a relatively new entrant to the learning to code market, they are tackling the market from one of the most in demand areas in tech right now: mobile. Starting off with iOS, Android and even Mobile Design, the guys behind Bitfountain have a cadre of students that are lapping up their easy to follow course with the tried and true method of learning to code – learning by doing.
Here you’ll find a first glimpse of the Bitfountain course as I myself go through it and touch upon first impressions for the first 20% of the course, which gives me a very good idea of how the rest of the course will be like.
Design of the course – Less Is More
While they’re not the most robust online course out there, what they lack in robustness is their laser focus on mobile. If you want to learn native mobile development, you’ll be hard pressed to find such a well done course for a one time fee. They really go for depth in their courses instead of breadth as you might find in Bitfountain’s predecessor pay as you go learn to code courses, such as Treehouse (check out my Treehouse Swift course review) and Code School.
The design of the courses contrasts highly from its predecessors – as they’ve clearly worked with a shoestring budget. Bitfountain is structured in purely a chronological timeline of the video segments you follow along instead of being broken down into smaller sections. In total, there are about a few hundred videos broken up into 2 minute to 15 minute video segments.
While I’m sure this wasn’t by design as they were seeing what part of the market they could capture with little investment in course design upfront, those who are not so intrinsically motivated might be better off with the gamified and beautifully designed learning environments afforded by Code School and Treehouse’s bigger production budgets.
While I understand the simple approach, the sheer volume of videos can look a bit daunting. As you can see above, they can clearly break down the subject matter into more digestible chunks instead of throwing everything including the kitchen sink for the subject of Arrays. Perhaps taking a page from Treehouse where they have sub-sections that are more succinct rather than having one list. I don’t know about you, but when I look at a list that long (it’s actually much longer than that – my 13″ MacBook Air can display only so many items…) I feel nervous and overwhelmed.
Emphasis on Git
While this is more of a personal qualm than anything else, but I think would be a great for individuals is having emphasizing the importance of Git interspersed throughout the videos, and pushing your work publicly (or privately) to Github, Bitbucket or Kiln to have a public record of what you’re learning throughout the course.
Yes it’s nice to have badges, points, gamification elements or certificates that you might get on other online courses to have as proof of ones progress.
However, what I think is more worthwhile while learning to become a developer and is more worthwhile from the recruiter perspective (if employment is what you’re seeking) is having a solid public record of what you’ve been learning as well as your commit history that shows what projects you’ve been working on.
Outside of shipping projects, it would be cool if Eliot and the Bitfountain team created a separate course or an add-on for interviewing and job preparedness if you’re on the career switching track.
One of the things I was particularly impressed about, while basic and one of the foundational things that should be covered for any introductory programming course is the area of problem solving. Eliot goes into his methodology of figuring out how things work in Xcode and Swift is going off and playing around with the Playgrounds feature (it is called playground after all…) along with seeing how things work with the help function within Xcode.
Other things that are important that is covered is getting used to being comfortable with the debugger and output console to understand the cause and effect of how a certain line of code works.
Only after you’ve exhausted your own ingenuity do you rely on outside resources, such as Stack Overflow or my favourite to understand the greater iOS/Swift community or one of my favourite places to see what’s going on in the community – the Swift Sub-Reddit.
Also, there’s quite a fair bit of activity going on in the comments for each video module. Eliot is very responsive in answering questions, along with other folks that are taking the course that are further ahead, going back to help other students gain a better perspective of the challenges that they’re looking to overcome. Mostly, it’s a misplaced character that makes Xcode throw an error, or a misplaced connection – but everyone is very cool and helpful.
Focus on Shipping Projects
I’d say the best thing about Bitfountain’s approach to learning mobile is breaking concepts into mini apps that encapsulate what you’ve learned in a section and ship to your own iPhone (if you pay for the developer licence which reminds me I should do that…) or run on Xcode’s simulator.
You’re put into the driver’s seat right away and exposes you to Xcode (Apple’s IDE where you develop iOS or OSX apps) right away.
You don’t go into the deep end of learning Swift language first (although it does help to know what everything means from the start, it isn’t a must), you learn how to navigate Xcode first and then they start layering on more advanced concepts that don’t overwhelm or confuse you.
The subject matter is broken down and builds upon what you’ve previously learned so you’re not prone to forget what you’ve learned something 2 weeks ago, so it’s further reinforced to long term memory.
With two simple apps under my belt learned through the Bitfountain course, I feel I’m building momentum and learning a whole bunch along the way, and getting the confidence to march on to ship an app to the App Store after I’m done this course. Hopefully, if you’re thinking of enrolling or enrolled in the course already, you’ll be getting as much value as I have so far.
From what I’ve discovered so far, Eliot is very responsive in the comments and looks to help and answer students’ questions in a succinct fashion and with a friendly tone.
As for the course itself, because Swift is such a new language, Bitfountain seems to be updating the course as soon as new announcements are made by Apple, so students are sure that they’re delivered the most cutting edge iOS education.
I’m looking forward to the rest of the course and will write a follow up in a month or two when I’m done it.