プログラミングの楽しさを直感的に伝える「天才プログラマーKBOY」、プログラマーのリアルを伝える「凡才プログラマーKBOY」。
いずれのチャンネルも登録者数2万人を超えている人気YouTuber、KBOYさん。
そんなKBOYさんが今注力しているのが、スマホアプリ開発のフレームワークである「Flutter(フラッター)」、そしてFlutterに特化したオンラインサロン「Flutter大学」です。
そもそもFlutterとはどんなものなのか?
KBOYさんがFlutterやFlutter大学を通じて実現したいことは何なのか?
今回は、そんなこんなをじっくりインタビューしました。
iOSとAndroid両対応の開発フレームワーク「Flutter」
Flutterを知らない方のために、まずはFlutterについて教えていただけますか?
Flutterは、スマホアプリを開発するためのフレームワークです。2018年に初の正式版がリリースされたので、かなり新しい技術ですね。
スマホアプリを開発できるフレームワークはほかにもありますが、Flutterならではの特徴はありますか?
iOSとAndroid、両方のアプリに対応していることです。そもそも片方しか作れなかったり、両方に対応している開発環境であってもiOS用/Android用に分けてコードを出力したりする開発環境が多いのですが、Flutterは作り分けを意識する必要がありません。
それは強みですね。ただ、新しい技術のようなので、習得するにあたっては将来性が気になるところだと思います。Flutterを使えることは、エンジニアとして武器になるのでしょうか?
案件は増えてきていますし、Flutterエンジニアを紹介してほしいという問い合わせもよくいただきますよ。現に今、Flutterのスキルのみでエンジニアとして働いている人がいるので、そこは心配いらないと思っています。
Flutterのスキルのみ、ということは、その方が最初に勉強したプログラミングがFlutterだったということですね。Flutterは初心者が学ぶにあたってハードルが低いのでしょうか?
Flutterの仕組みは簡単で、初心者にもわかりやすいと思います。Flutterで使うDartという言語は特別簡単なわけではなく難易度としては普通ですが、アプリ開発にあたってHTMLが登場したりせず、ボタンをどこに置くといったUIも含めて全部Dartで完結するので。
言語は簡単ではないのに、Flutterは簡単…?
初心者の方が誤解しやすい部分なんですが、「プログラミングができる=アプリ開発ができる」ではないんですよ。アプリ開発の仕事でプログラミング言語を書いてるのは1/3くらいで、UIの設計やプッシュ通知の設定などそれ以外にもいろいろな工程があり、作法やルールの理解も必要です。
なので、言語にウエイトを置く必要はないんです。そして、アプリ開発のしやすさという点において、Flutterというフレームワークは初心者にも簡単でわかりやすい、ということです。
チーム開発を経験できる、Flutter大学の共同開発プロジェクト
Flutterのエンジニアを目指す人や現役のFlutterエンジニアが集まっているのが、KBOYさんが主宰している「Flutter大学」(オンラインサロン)ですよね。いつできて、いま何人くらいいらっしゃいますか?
2020年4月29日にスタートしたので、1年半を過ぎたところです。2021年11月現在、有料会員が250人、無料会員が100人くらいです。無料会員はSlackやGithubは閲覧できず、Flutter大学アプリの限定コンテンツを少し見られるくらいですが。
Flutter大学は何が学べる場所なんですか?
Flutter大学では、Zoomでの質問会、勉強会、共同開発プロジェクトなど、グループで学べる機会を用意しています。交流会もありますよ。
質問会や勉強会はなんとなくわかりますが、共同開発プロジェクトとはどんな企画なんでしょう?メンバーはいつでも誰でも提案できるのですか?
共同開発は運営側の主導で、3ヶ月に1回、キックオフミーティングを設けています。アイデアがある人が提案し、賛同者がいれば開発に着手し、3ヶ月後に発表するというフローです。すでに第6期になりました。
実際に仕事を始めると、最初から最後まで1人でということはまずないですもんね。エンジニアを目指して勉強中の段階で、チーム開発を経験できるのはかなり貴重な機会だと思います。共同開発プロジェクトから生まれてヒットしたアプリはありますか?
ヒット作と呼べるほどのアプリはまだないですが、クラフトビールの情報やレビューを投稿・閲覧できる『ビアコレ』は一定の評価を受けていますし、アプリとしてもきちんとできていると思います。
クラフトビールはトレンドですし、楽しそうなアプリですね!今後、大ヒット作が出る可能性もありますが、権利関係はどうなっていますか?Flutter大学というオンラインサロン内の企画だけど、発案者も開発者もメンバーとなると、いろいろ難しいのでは…。
企画者に権利があり、権利の配分も企画者が決めてOK、ということにしています。できればFlutter大学のリポジトリに登録してほしいとお願いしているくらいで、それも強制ではありません。共同開発プロジェクトで作ったアプリを使って起業しようとしてる人もいますよ。
えっ、予想外の太っ腹。でも、そんな性善説で、大丈夫なんですか…?
実は、自分でソフトハウスをやっているメンバーが、自社で開発予定のアプリを共同開発プロジェクトで提案したことがあります。
共同開発プロジェクトに参加するのは主にまだ勉強中のメンバーが多いので、実際にはマネジメントの負荷が高すぎて「Flutter大学を使えば無料でFlutterアプリを発注できちゃう!」というほど簡単にオイシイ話にはなるものではないですよ。
でも、発想としては労働搾取につながりますから……今のままでは抜け穴があるし、ルール作りの必要性は感じています。
なるほど、ちょっと安心しました。ただ、お聞きしているとメンバー間のスキル差がけっこうある印象です。初心者が難しすぎると感じたり、中~上級者が簡単すぎて物足りないと感じたりしないような工夫はされていますか?
それは、プランの設定で解決しています。交流や情報収集がメインになる中~上級者向けには「コミュニティプラン」、がっつりFlutterを勉強したい初心者向けには、自由に質問できる「Flutter修行プラン」を用意しています。
何をお聞きしても明確な答えが返ってきますね。権利やプラン、レベルは気になる人が多いと思うので、入会を検討している人は安心材料になると思います。Flutter大学に入ったら技術面でこんなことが学べるよ、というメリット、ほかにありませんか?
Flutterだけでなく、アプリをリリースするために必要なことがすべて学べるようにしてあります。さきほども少し触れましたが、アプリ開発のために必要なのは、特定の言語や開発環境に関する知識だけではないんです。
「Flutter × Firebase」での開発が多いので、Firebaseの勉強会もよくやってますね。ほかにもStripeやAlgoliaなど、SaaSを組み合わせて少人数で作るというのをやってる人が多いので、そのあたりの知見も広がると思います。
Firebaseとは?
Googleのモバイル・Webアプリケーション開発プラットフォーム。 https://firebase.google.com/
Stripeとは?
インターネット向けの決済インフラを提供しているSaaS。 https://stripe.com/jp
Algoliaとは?
全文検索の機能を提供しているSaaS。 https://www.algolia.com/
勉強は自分で。Flutter大学はその後押しをする場所。
教材はすべてYouTubeで無料公開されているそうですね。勉強は1人でやるもの、という大前提があってのFlutter大学、ということだと思いますが、その存在意義を、主宰者としてどう捉えていらっしゃいますか?
まずは単純に、誰かといると楽しいってことです。僕自身、みんなが仲良くなり、雰囲気が良くなっていくのが好きですね。もちろん1人で勉強するほうが性に合う人もいますが、コミュニティに属しているほうがモチベーションを保ちやすい人が多いと思います。
グループ勉強会の予定が決まっていると、手ぶらではいけないなと思いますもんね。それだけでも違う気がします。
それに、気軽に質問できる場所があると初心者は勉強が捗りますし、中〜上級者でもちょっとした相談に答えてもらうことで解決の糸口が見つかることもあります。スキルアップするにあたって効率が良くなりますね。
そんなふうにうまく循環するには気軽に話せる雰囲気であることが必要ですが、どんな仕掛けがありますか?
定期的に実施しているのは、週1回の懇親会(SpatialChat)と、月1回のZoomでのオンライン交流会。オンライン交流会は20分×3回に区切って、人数を絞りつついろんな人と話せるようにしています。もちろん自由参加ですけど。
それはZoomの質問会やグループ勉強会とは違う、雑談の場ですか?
そうです。ただ、雑談だからFlutterの勉強と関係ないわけではなくて。例えばFlutterエンジニアを目指して勉強中の初心者の場合、現役のFlutterエンジニアに話を聞ける機会ってあまりないですよね。将来像を描くにあたって、貴重な機会になっていると思います。
リアルな話を聞けるっていいですね。現役のエンジニア同士でも、同業者だから分かり合える、でも職場では話せない愚痴を言いあったりできそうです。テキストで話せる雑談用チャットがあったりはしないんですか?
Slackにありますよ。コミュニティ内だけのクローズドなSNSみたいなものですが、わりと盛り上がってます。今年10月、コロナがちょっと落ち着いていた時期に札幌、東京、名古屋、大阪、福岡、沖縄でオフ会をしたんですけど、Slackで目立っている人は「あなたが〇〇さん!」という感じで注目を浴びてました。
オフ会まで開催されてるんですね!勝手なイメージで失礼な発言になるかもしれませんが、プログラミング系のオンラインサロンにしては活発な印象ですね。
うちほど交流が活性化しているプログラミング学習のコミュニティはないと思いますよ。「AWS CloudTech」を主宰しているYouTuberのくろかわこうへいさんと仲がいいんですが、彼にもそう言われます。恵比寿にシェアハウス(Flutter大学のシェアハウス、通称「フラハ」)もできてメンバーが5人暮らしてますし、わりと陽キャ集団です。
シェアハウス、って!そこまで仲良く盛り上がってると、陰キャは入れない…?
まさか。陽キャといっても基本は真面目に勉強したいメンバーですし、交流は強制ではないですから。Flutterに興味がある人なら、どなたでも大丈夫ですよ!
後編では、KBOYさんの経歴や将来像についても取り上げていきます。
【関連リンク】
ライター
編集部オススメコンテンツ
アンドエンジニアへの取材依頼、情報提供などはこちらから