いつでも、気軽に

「ひとりだと学習できない」を解決するための、いつでも気軽に質問できるチャットルーム。

質問や意見交換のほか、実践的なソフトウェア開発を通してRecursionユーザー全体でコンピュータサイエンスを学んでいきます。

いつでも質問できる環境

プログラミング初学者の90%が挫折を経験すると言われています。Recursion専用コミュニティでは、いつでも気軽に質問できるため、疑問点を問題なく解決することができます。

もくもく会

定期的にもくもく会を開催し、ユーザー間の交流を促進します。ユーザーどうしで繋がることで、孤独を感じずモチベーションを維持して学習することができます。

チーム開発プログラム

同じレベルのユーザーでチームを結成し、協力してソフトウェアを作成します。初心者がある一定のレベルになるまでチーム内のメンターがサポートを行うので、しっかり実力をつけることができます。

チーム開発とは?

チーム開発では、3人のチームメンバーと1人のメンターを1チームとして、1ヶ月間で共にソフトウェアを開発します。オリジナルのプロジェクトが課題として与えられます。

Gitを使ってソースコードの管理を行い、メンターにレビューされながら開発を進めていきます。自分たちで設計から行うので、コンピュータサイエンスの知識が必要不可欠です。

同じ目標を持つ仲間と開発しよう

互いに切磋琢磨して、短期間で実務経験に近い実践的なスキルを身につけよう。

チーム開発プログラムに参加してみました!メンターのサポートもあったおかげで、納得のいくプロジェクトを作り上げることができました。特に文系出身の学生や未経験からのエンジニア転職を目指している方には、チーム開発の経験ができ、ポートフォリオも作成できるのですごくおすすめです。

3ヶ月前まで何も作れなかった私が、チーム開発に携われたのは、RecursionでCSを学んだおかげです。チーム開発では、知識が豊富な先輩Recursionユーザー(メンター)をはじめ、学習意欲が旺盛な2人のメンバーと開発を進めました。学べることが多く、自分に足りない部分を認識する非常に良い機会になりました。

Recursionを始めてから1年になりますが、1年前は若い人たちと一緒にチーム開発をすることになるとは夢にも思っていませんでした。チームメンバーの提案で新しい技術を色々取り入れることになり、自分ひとりで開発していたのでは到底できないような成果物を作り上げることができました。

チーム開発のおかげでRecursionで学んだ知識の活かし方が分かりました!OOPやアルゴリズムの計算量の理解がより深まったと思います!また、メンバーと議論することで一人で勉強するだけでは気が付かないような視点を得ることができました!チームでのGitの使い方を学べるので転職前に経験できてよかったです!!

1ヶ月間という短い期間でしたが、多くの経験、学びを得ることができました!何より、頼もしいチームメイトと楽しく開発できたことに大きな価値を感じました。1ヶ月では物足りないと思えるほど充実した内容でしたので、これからもRecursionというコミュニティを活用して積極的にチーム開発をしていきたいです!

1ヶ月という短い期間で、新しいフレームワークや技術開発に挑戦したので、常に自分のComfort Zone外で開発を進めることができました。Gitを利用したチーム開発の仕方や役割の分担、最新のVueで開発に取り組んだので、今まで個人でやってきた開発より数倍成長できたことが実感できましたし、より実践的なスキルを身につけることができました。

チーム開発はとても楽しいです!gitの実践的な使用法、コード規約の作成、同じイメージを共有するためのコミュニケーションなどを学びます。経験のあるメンターの元、チーム開発ならではのスキルを体得することは大きな自信に繋がります。各々が自分の知識を伝え合い学びを深められる点も魅力です!

チーム開発プログラムに申し込む前はろくにGithubやGitが使えなかったり無駄なコードを書いていましたがチーム開発を始めてからはGitの理解がより深まったりコードレビューされたことでスマートなコードが書けるようになった事です。また、同じチームメンバーのコードも大変勉強なりました。

チームメイトは同じぐらいのレベルの方々だったので、開発が進めやすかったです。またメンターの方のコードレビューを受けることもでき、計算量を意識したロジック作成や可読性の高いコードの書き方、Gitのお作法を学べました。1か月間、開発に集中することでかなり成長できたと思います。

チーム開発を通じて、今までの学習の中で一番多くのものを吸収出来ました。個人の学習で身につかなかった Gitのチーム開発での使い方、モジュール毎の開発を学ぶことができました。また、コードスタイルや設計について自分からは出てこない視点を他のメンバーから得られました。

Recursion で学習し始めて3ヶ月ほどでチーム開発に参加しました。少し背伸びをした技術選定だったこともありインプット、アウトプット共に怒涛の1ヶ月でした。また、単純な技術力だけでなく git、github を用いてのチーム開発を経験することもでき、学びと成長は大きく感じることができました。

Recursionだけを使い倒していて、知識には自信があったのですが、初めて学ぶことが多かったです。Gitの使い方などチーム開発で必要なスキルがわかりました。また、自分の足りない部分を認識することができました。学ばせて頂いたことを活かし、今後の成長に繋げていきたいです!

チーム開発の成果物例

チーム開発では、メンターのアドバイスに従いながら、メンティーと自力で以下のような成果物を作成します。

Connect4

Next.js, Material UI

プレイヤーが交代で上からボールを積み上げて行き、相手よりも先に直線(縦、横、斜め)に4つのボールを並べた方が勝ちとなるゲームです。モンテカルロ木探索アルゴリズムを実装し、CPUが最適な手を選択できるようにしたり、勝利判定時の計算量を削減し無駄がないようにしました。

Othello

Vue.js

盤面は8方向の連結リストでつなげており、石の周りの囲いを別の連結リストを作成してます。石の場所を探す時は囲いの連結リストをたどり、石の方向に探索を行い、石が置けるかどうか判定します。ゲームは連結リストとLRUキャッシュを使って実装してみました。

Etch A Skecth

Django, Vue.js, Konva.js

Etch A Skecthは三層アーキテクチャを使用して実装されており、ユーザはギャラリーページに絵を保存してSNSにシェアしたり、他のユーザが公開した絵を見ることができます。また、線の太さや色を調整することで、自分だけのオリジナル作品を作ることができます。

Typing Game

React.js, Material-UI, Firebase

タイピング練習用のコードは自身でペーストまたはGitHubからのインポートも可能です。ゲーム中はキーボード上の位置と使用すべき指を検知し色表示しています。また、かかった時間やミス数をカウントすることで、キーや指ごとの統計情報を取得し、ゲームの詳細結果として使用しています。

Blockee

Vue.js, Quasar

初めてプレイする方にも楽しんで頂くために、UIでは次にピースを置ける位置やピースの回転・フリップのオプション表示、ターンの切り替わり等をわかりやすく表示しました。CPU対戦では難易度によってそれぞれ異なるアルゴリズムを適用し、ゲーム終了後にはリプレイが見れます。モバイルアプリ、デスクトップアプリでもプレイできます。

MindJam

React.js, Material-Tailwind, Konva.js, Draft.js, Firebase, Socket.io

アイデアを可視化して整理することができるマインドマップです。枝分かれする各要素はグラフで繋がれており、要素の追加や削除、色や形の変更、文字のサイズや太さの変更など自由度の高い作業が可能です。また、Websocketを導入しているため、複数のユーザーがリアルタイムで共同編集することもできます。

質の高い学習環境の提供

Recursionの学習進捗と外部アプリDiscordを同期して、学習を進めていきます。
効率良く質問でき、答えやすい環境を作ることで、短時間で「わからない」を解決します。

Recursion専用コミュニティは有料ユーザーのみアクセスすることができます。
Discordアプリのインストールが別途必要になります。

旅の準備はできましたか?