新米パパの育児留学

未経験からエンジニアへの転職体験談など "リアル" な情報を発信

共に学ぶ学習進捗管理サービスCoLearningを創りました

個人サービス開発第一弾として、共に学ぶ学習進捗管理サービス CoLearningというサービスのアルファ版を創りました。
サービスの概要と、製作までの思想プロセスを紹介します。

「学習進捗管理×アウトプット×仲間づくり」をコンセプトにしたCoLearning(アルファ版)をリリースします

この記事の目的

個人開発で、共に学ぶ学習進捗管理サービスCoLearningというサービスのアルファ版を創りました。
個人サービス開発第一弾です!サービスの概要と、製作までの思想プロセスを紹介します。
課題の仮設を元にプロトタイプを作成したので、興味のある方に使っていただき、フィードバックをいただきたいと考えております。
サービスとしてのフィードバック、技術的なフィードバックなどなんでも気軽に@mo_chi_ki_chiまでご意見いただけると幸いです。

CoLearningってどんなサービス?

共に学ぶ学習進捗管理サービス、"CoLearning"
「学習進捗管理×アウトプット×仲間づくり」を簡単にできるサービスです。
コンセプトは大きく分けて下記の3つです。

1. 学習進捗管理を簡単に

学習教材を学習する際に、学習進捗管理はされていますか?
自分でTODOリストを作成するのは大変ですよね。
CoLerningでは、学習教材リストの中からワンクリックでTODOリストを作成してくれます。

2. アウトプットを簡単に

学習はインプットのみではなくアウトプットをすることで定着率が飛躍的に上がります。
忙しくてブログを書いたりする時間がない方でも、
CoLerningでは、タスクが完了すればテンプレートが自動作成され、簡単にTwitterへ投稿できます。

3. 学習仲間づくりを簡単に

学習している際は、孤独で挫折しそうになりますよね。
CoLerningでは、同じ学習教材を学習中の人を自動的にTwitterから探してくれます。
アウトプットのTwitterタグとの連携で緩やかな心強い仲間と出会えます。
仲間と切磋琢磨しながら、共に学習に励みましょう。

CoLearningを作ろうと思ったきっかけ

結論から言うと、「学習を継続することをサポートするサービスを創りたい!!」と思ったからです。

私は未経験からエンジニアを目指す際に、独学でプログラミング学習をしました。
その当時は、プログラミングスクールも今ほど多くなく、関西ということもあり、利用したいと思うプログラミングスクールには出逢えませんでした。
自分で目標を立てて学習を進めていくスタイルとなったのですが、それは結果的に良かったと思っています。
自分で立てた目標に対して、様々な課題や誘惑に打ち勝ち、(ほぼ)自力で問題を解決しながら学習を進められる力(いわゆる「自走」と呼ばれるやつ)を身につけられたからです。
プログラミングスクールは学習効率をブーストさせるためのものであり、基本的に自走できる人でないと自分が思い描いた結果にはなかなか繋がらないと思います。
逆に、自走できる人であれば、プログラミングスクールをうまく活用することで、短期間で効率的に学習することもできると思います。(ちなみに、妻はウェブカツで学習中です。)

でも、完全に独学で学習を進めるのは結構キツイものがあります。
独学で学習を進める上で一番重要なことは「継続すること」だと思います。
とはいえ、「継続すること」は、すごく難しいですよね。わかります。
じゃあ、「学習を継続することをサポートするサービスを創りたい!!」となりました。

学習を継続できない理由は?

「学習を継続することをサポートするサービスを創りたい!!」と思ったわけですが、そもそも学習を継続できない理由はなんでしょう。

人によるとは思いますが、主に以下が考えられます。

  1. 学習の達成感、楽しさを味わう前に心が折れる
  2. 孤独感による挫折
  3. わからないことが解決できない
  4. プログラミング学習をする目的が不明確

個人的には、「4. プログラミング学習をする目的が不明確」が一番大きい気がします。
そこに関しては、自分自身と向き合うことが重要になってくるかなと思うので、webサービスで解決は難しいかなと思います。

「3. わからないことが解決できない」のソリューションに関しては、既存サービスで代替できそうな気がします。
ex.プログラミングスクール、メンター紹介サービスなど

なので、「1. 学習の達成感、楽しさを味わう前に心が折れる」、「2. 孤独感による挫折」を解消できるサービスを創りたいなと思います。

ターゲット

  • プログラミング学習をする目的が明確な方
  • 参考書などをベースに独学でプログラミング学習を進める方
  • プログラミング初心者(〜中級)
  • Twitterを活用している方(これから始める方)
  • 年齢:20~30代(Twitter層)

課題の深掘り

「1. 学習の達成感、楽しさを味わう前に心が折れる」の深掘り

なぜ、学習の達成感、楽しさを味わう前に心が折れるのか
→「オリジナルサービスを作る」など目標が遠すぎる

解決策:参考書で学習を進める際にTODOリストを作成し、進捗管理をする。

「参考書で学習を進める際にTODOリストを作成し、進捗管理をする」ことの問題点
→学習教材毎に自分でTODOリストを作成するのは煩雑

「2. 孤独感による挫折」の深掘り

なぜ、孤独になるのか
→知り合いに学習者がいないから
解決策:TwitterなどのSNSで学習仲間を見つける

「TwitterなどのSNSで学習仲間を見つける」際の問題点
→同じ教材を学習中の人を探すのは検索煩雑
→→タグが有効活用されておらず検索性が悪い(活用されているのはごく一部教材のみ)

ソリューション

「学習教材毎に自分でTODOリストを作成するのは煩雑」に対するソリューション

学習教材は共通するものが多いので、学習教材毎にTODOリストを予め用意しておき、学習したい人はそれを選ぶだけで自動的にTODOリストを作成できれば楽になるのではないか?

→CoLearningのコンセプト「1. 学習進捗管理を簡単」につながる。

「タグが有効活用されておらず検索性が悪い」に対するソリューション

  • 自分と同じ学習教材を学習している人を検索して、表示してあげることで学習仲間を簡単に見つけられるのではないか?
    (タグだけではなく、参考書のタイトルも合わせて検索などで工夫)

→CoLearningのコンセプト「3. 学習仲間づくりを簡単に」につながる。

  • 学習している人が統一されたタグを付けて投稿することでタグ検索性はあがるのではないか?
    統一されたタグを付けて投稿するためには、投稿のテンプレートを用意して簡単に投稿できるしくみを用意すればよいのではないか?
    (自身の経験からも、アウトプットをすることで知識の定着率も上げられると考える)

→CoLearningのコンセプト「2.アウトプットを簡単に」につながる。

独自の価値提案

とにかく簡単に。
複雑な機能は付けずに、とにかく簡単に楽しく学習進捗管理を続けられる。
学習がメインなので、サポートとなる本サービスはお手軽にできるように。

スタック

  • 言語:Ruby
  • フレームワーク:Rails
  • サーバ環境:Heroku
  • DB:MySQL
  • API:TwitterAPI

マネタイズ

広告収入を想定。
Google AdsenseやAmazon associateなど(審査中...)

教材の選定について

これはどうしようかなと迷いました。下記のどちらかで迷いましたが、現状、「2. 管理者側で選択できる教材を限定する 」にしています。

  1. ユーザーが自分で学びたい教材を選んで登録できるようにする
  2. 管理者側で選択できる教材を限定する

理由は、ターゲットをプログラミング初心者としているので、無数にある教材の中から、良書と言われている教材をある程度限定した方が、学習ロードマップ的な役割も果たせるのではないかと考えたからです。

現時点では、私が使ってよかった&初心者~中級者向けに評価の良い書籍を選んでいます。(※Ruby系に偏りあり)

CoLearningのコンセプトに共感していただけた方で、「教材選定一緒にやってあげてもいいよ」という心優しき方、ご連絡お待ちしております。

今後どうしたいか

CoLearningを使っていただきフィードバックをいただけたら、ブラッシュアップしてサービスを育てていきたいです。
個人サービス開発、エンジニアとしてのスキルをもっと高めて様々な課題を解決できるサービスを作っていきたいと思います。

まとめ

個人サービス開発第一弾、CoLearningの概要と製作に至るまでの思考プロセスを紹介させていただきました。
皆さんの率直なご意見を@mo_chi_ki_chiまで聞かせていただけると嬉しいです。
また、「こんなのつくったよ~」というのがあれば、是非参考にしたいので教えてください。

Twitterで話題のオンラインプログラミング学習”ウェブカツ!!”

あわせて読みたい

mochikichi.hatenablog.com mochikichi.hatenablog.com mochikichi.hatenablog.com