INODEVLOG

WEBアプリ開発・事業開発・ビジネスモデル・読書の情報などをお届けしています。

僕がコミュニティ型のプログラミング学習環境を作った理由【TechCommit】

少し前にTechCommitというプログラミング学習者の為の 学習環境サービス をリリースしました。

ぼちぼち今後やりたいことを実現するための機能も揃ってくるので、プログラミング学習の方法論や運営をはじめてからの知見やその思想含めて、ここにまとめておこうかなと思います。

プログラミング学習者の今後の方向性の参考にもなれば幸いです!

f:id:inodev:20190612180207j:plain

TechCommitとは?

そもそも「TechCommitって何?」という方も多いかと思いますので簡単に紹介を。

TechCommitは「オリジナルアプリを開発するためのプログラミング学習環境」です。

参加者は入門者をはじめとして、(当初の想定外に)現役ITエンジニア方も多いです。

オリジナルアプリ開発までの一連の流れをWebアプリの機能や勉強会の運用で構築しています。

主に、

  1. 「毎日のオンラインもくもく会」で学習習慣の形成
  2. 「毎週のオンラインの週末勉強会」で観点や考え方を学習
  3. 「趣味や技術別のSlackチャンネル」で情報交換
  4. 「QA広場(質問掲示板)」で学習方法や開発・企画などの相談
  5. 「挑戦状(制作課題)」でオリジナルアプリ作成前の準備運動
  6. 「学習日報」で日々の学びを記録
  7. 「個人アプリ管理」で企画や設計の共有(開発中)
  8. 「学習ポートフォリオ」で学習してきた内容や制作物を公開して転職等に活かす(近日公開)

というようなもので構成されています。

また、SlackかWebアプリのQA広場で投稿してもらえれば、 転職前のプロフィールやオリジナルアプリの企画へのレビュー なんかもしてたりします。

\NewsPicksにも掲載(Pick)して頂けました/ newspicks.com

どんな人のために作ったのか

TechCommitを作った理由は一言でいえば、プログラミング学習による自己実現のハードルを下げたいからです。

プログラミング学習を始めたい!と考えた初学者の方は大体、

  • 独学するか
  • プログラミングスクールに通うか

の二択で考える方が多いです。

しかし、人によって プログラミングスクールは高額な割に全然身になっていない という場合も多いです。

プログラミングスクールは「プログラミング学習の為の色々盛り合わせたパッケージ商品」であり、時間を買うという意味では良いですが、自分の課題を分解するとそもそも必要なものは人によって違ったりもします。

※詳しくは下記の記事なども参考にして下さい www.inodev.jp

そこで、

  • 「たまに分からないことや、自分が作りたいものの方向性について気軽に相談・雑談できる場があればいいな」
  • 「地方在住でエンジニアの知り合いなどが全然出来ないから、オンラインで情報交換などできる場があればいいな」
  • 「学生だからお金はあまり掛けられないけれど、IT技術や仕事についてのアドバイスも貰いたい」

というような方向けに、オンラインですぐ参加出来て、必要な時に相談し、情報を得ながら自分の成果物にもつながっていく…

そんな気軽に参加できる場所が出来ればという想いでTechCommitを立ち上げました。

開発環境構築もSlack内で共有頂ければ、一緒に調べたりもしています。

開発環境構築が出来て、自分が何をしたいのか&今何をすべきかを適宜確認できれば、 独学でもアプリ開発は十分に可能 です。

仲間と学ぶコミュニティ型のメリット

個人的なビジネスとしての好みで言えば、オンラインサロンと呼ばれるものはあまり好きではありません。

特に宗教的要素や煽り文句の強い人には「情報弱者から搾取している」感じがするからです。

知識差ビジネスは教育の基本ですが、楽して儲かるからやっているという雰囲気を感じる所は好きではありません。

また、キャリアやスキルはその人が自分で考えて自分で努力して作っていくべきものであり、時代や価値観によっても戦略レベルから変わる為、"完全なお手本"は存在し得ないです。

(なお、オンラインサロンは良質な情報を安価に手に入れられるという意味では良いものです。あくまでビジネス的な好みです。)

とは言え、コミュニティ(共同体)のメリットは多く、

  • 「集合知によって問題を解決出来ること」
  • 「様々な人の思想や戦略に触れて、自身の思想や戦略もアップデート出来ること」
  • 「コミュニケーションによりお互いに承認ができてポジティブになれること」

ということは特に良いものだと思っています。

「ゲーミフィケーション要素」 を高めて、お互いに助け合い・応援しあえるような環境が運営的にも参加者の精神的にも健全だと考えて日々改善しています。

例えば現在はQA広場というYahoo知恵袋的な問題解決の場で、ランキング形式で活躍した方にAmazonギフト券のプレゼント等を行っており、ぼちぼち学習の「実績解放」などの機能もリリースしていきます。

会社や家族など所属しているコミュニティ(共同体)の思想に偏りがあると、情報にも偏りが出たり視野が狭くなったりもします。

これらを避けるため、無料のコミュニティや勉強会を含め複数の場所に参加するのもオススメです。

中長期的にプログラミング学習を続けるのが重要

個人的に「あなたもフリーランスに!」とか「3ヶ月でプロに!」みたいな プログラミングスクールの酷い煽り広告 に嫌気がさしています。

上記のようなアフィリエイト広告などは、現役のエンジニアに対する尊敬もまったくなく怒りすら覚えます。

誇大広告で詐欺まがいな集客方法をしている所は、本人も望まなくして中途半端なスキルセットで放り出される『ポンコツ卒業生』を生み、卒業生本人も現場のエンジニアも(スクール以外)誰も幸せになりません。

プログラミングスクールの営業や、技術を触ったことがないキャリアコンサルタントなどの言葉のみに耳を傾けるのは現実的ではありません。

もちろん「プログラミングスクールで基礎体力をつける!」ということや、「学習効率を上げたい!」という使い方は大いに賛成です!

期間を区切って『短期間で成果を出す』のも良いです。

ただ、プログラミングを始めとするITスキルは、講師(メンター)がいたとしても、基本的には自分で手を動かして覚えていく必要があります。

学習に必要な情報を取得しつつ問題を解決するスキルを身に着けて、中長期的に学習を続けることが重要です。

(転職やアプリの公開はスタートでありゴールではないです。)

なお、初学者の方はTechCommitMENTATimeTicketで探した個人契約のメンターの方に学習計画などを相談しながら進めるとよりよいと思っています。

コミュニティで学ぶという文化を広めたい

コミュニティ(共同体)を活用して学ぶというのが、一番コスパ良く楽しい学習環境にしていきやすいと思います。

(特定の技術や地域の発展を願って、無料で運営されているようなコミュニティもたくさんあります。)

特にプログラミングなどを学んでいく上で、目の前の問題をいかに解決するかという 「論理的思考力」 が重要になってきます。

教材としては ドットインストールProgateUdemyTechpit、技術入門書、各技術の公式のチュートリアルなど様々なものがあります。

また、アドバイザーとしては先述した MENTATimeTicket あるいはTwitterなども含めてメンター的存在も見つけられるでしょう。

あなたの今抱えている問題を解決する環境をどのように作っていくのか、是非この機会に考えてみて下さい。

また、面白そうだと思ったらTechCommitにも是非遊びに来て下さい(´ . .̫ . `)

ぼちぼち企画や設計を管理したり横展開する機能なんかもリリースする予定です。

www.tech-commit.jp