Git Product home page Git Product logo

bootcamp's Introduction

CircleCI Create a release pull-request

Bootcamp

エンジニア向けEラーニングシステム。

インストールと起動

1. 画像処理ライブラリのインストール

wiki 内の画像処理ライブラリのインストールページを参照してください。

2. セットアップとサーバーの起動

$ bin/setup
$ foreman start -f Procfile.dev

http://localhost:3000/ にアクセス。

テスト

ヘッドレスブラウザーでテスト

$ rails test:all

普通のブラウザーでテスト

$ HEADFULL=1 rails test:all

並列実行せずにテスト

$ PARALLEL_WORKERS=1 rails test:all

Lint

次のコマンドでlintを実行します。

$ ./bin/lint

実行されるlint

  • Ruby
    • rubocop
    • slim-lint
  • JavaScript
    • eslint
    • prettier
  • eslintの警告は以下のコマンドで修正されますが、修正されない場合は手動で修正してください。
$ eslint 'app/javascript/**/*.{js,vue,jsx}' --fix
  • prettierの警告が出ている場合には、以下のコマンドで修正できます。
$ prettier app/javascript/**/*.{js,vue,jsx} --write

Profiler

rack-mini-profilerによりプロファイリングはデフォルトではOFFになっています。ONにする場合は下記のようにサーバーと立ち上げます。

$ PROFILE=1 rails server

環境構築

その他

bootcamp's People

Contributors

ai-24 avatar dependabot[bot] avatar djkazunoko avatar dowdiness avatar eatplaynap avatar fuwa-syugyo avatar goruchanchan avatar harukus avatar hituzi-no-sippo avatar ima1zumi avatar kassy0220 avatar komagata avatar machida avatar masanarih0ri avatar masyuko0222 avatar mono-nobe avatar natsuto6 avatar neko314 avatar omochiumaiumai avatar ot0m1 avatar rira100000000 avatar rono23 avatar ryoh173 avatar saki-htr avatar seijinumata avatar shibaaaa avatar sochi419 avatar toke04 avatar tosite avatar yu-kichi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

bootcamp's Issues

rake の update

You have already activated rake 10.0.4, but your Gemfile requires rake 10.0.3. Using bundle exec may solve this.

パスワードをリセットしたい

パスワードが分からなくなったときの対策

  • herokuのsendgrid addonでメールを遅れるようにする。
  • sorceryの機能でパスワード忘れを作る。

ローカルインターンの初出社の時間を決め打ちにする

ローカルインターンの初出社は基本的に夕方17:00と決める。
なぜなら、朝10:00では誰もオフィスにいない可能性が高く、ローカルインターンのかたを傷つけるのを避けるため。
また、初出社後は朝10:00に出社ができるように鍵の空け方を初出社時に教えるのもルールに追加する。

どれだけインターンに出席をしたかがわかる仕組みが欲しい

例えばタイムカードなど。

なぜなら、ちゃんと参加している人、名前だけの人いて、名前だけの人は学習と作業の交換を行わずに学習だけを進められてしまう、現在のインターンの仕組みに穴があり、逆に学習と作業の対価交換をきちんと行っている人のモチベーションを下げる原因になってしまうため。

インターンをやってもらう以上、必ず学習と作業の交換を行うようになるようにシステムで対応する。

リタイヤ者一覧が欲しい

ユーザー一覧に卒業生とは別にリタイヤ者というわけかたが欲しい。

  • リタイヤフラグをusersに追加
  • 2ヶ月活動が無いとリタイヤユーザーにする。
  • 1か月活動が無いと上記の旨をメールが飛ぶようにする。
  • 上記の内容を「256インターンの進め方に追記する」

capybara-webkitのエラーでテストがこける(一時的)

Failure/Error: page.should_not have_content "#display-switch"
     NoMethodError:
       undefined method `find_xpath' for #<Capybara::Webkit::Driver:0x007fabc468cfa0>

というエラーでテストがこけるのは、capybaraのバージョンアップにcapybara-webkitがまだ追随できていないからです。
thoughtbot/capybara-webkit#499
↑にあるようにcapybaraのバージョンを2.0.3に固定するか、capybara-webkitの最新版をgithubから取ってくるようにすれば大丈夫です。

出来るだけ早くcapybara-webkitのバージョンアップをするとのことなので、放置しておこうかと…

日報機能の仕様確認を行う

@yasulab さんに「まずは日報機能の仕様の確認を取ってみては?」とご助言頂いたので、現段階で実装できている日報機能と、これから実装したい機能の仕様の確認を、こちらの issue でやらさせて頂ければと思います。

現在の進捗

  • 日報の CRUD 機能を実装する
  • 日報の一覧画面・個別画面で作成ユーザー名を表示させる
  • 日報の新規作成画面で、当日の日付と作成ユーザー名がフォームに自動入力されるようにする
  • 日報の投稿画面でエラーメッセージが表示されるようにする
  • 投稿の保存前に投稿画面から離脱しようとしたとき、警告メッセージが表示されるようにする
  • 日報の作成ユーザーだけでなく、更新したユーザーの名前も保持したい
    • 最初、更新ユーザー column を作成して、そこに更新ユーザー id を格納しようと思っていたのですが、 @yasulab さんに「その仕様だと、最新の更新ユーザーしか保持できないし、一般的な実装の仕方で無いかも。履歴機能を実装するやり方にした方が一般的」とご助言頂いたので、履歴機能を実装するやり方にしてみようと思います。
    • ぱっと検索した感じでは、 paper_trail で履歴機能を、 diffy で diff 機能を追加できそう。
    • 追記: paper_trail での履歴機能は オーバースペックなので、 gem を使わず、 models への追加で処理できるようにした方がいいでしょう、と @yasulab さんから追加でご助言頂きました。
    • 追記: komagata さんに確認したところ、履歴については取り敢えず直近の diff のみ確認できる機能があればいいとのことでした。 practice については直近の diff が Slack に通知されるという機能が実装済みなので、この機能を流用してみたいと思います。
  • 日報のコピー機能を実装したい
  • Markdown に対応したい
  • コメント機能を実装したい
  • 日報を新規作成して保存する際、バリデーションエラーが出ると、それまで入力していた日報の本文が全てクリアされる、という不具合への対処。タイトルについては、バリデーションエラー後の画面にも引き継がれている。

参加する企業との規約を作る

一日XX回チャットに発言する

このレポジトリの開発にリソースを割く

など、企業同士も交換条件をつけないと単なるボランティアになってしまうか、誰も教えなくなりこの仕組自体が回らなくなる

課題にブログ記事を投稿出来る機能

課題をやる

→今日はここまで進んだ

→ブログを書く

→課題のページにURLを貼る

→Lingrに流れる

最終的にはブログの記事にstackoverflowみたいな評価が付けられる(view数、Goodの投票)ようにして、インターンが先輩インターンブログで参考にするべきものが自動でわかる仕組みにしたい。

また、この仕組を使うことで、ブログを通じたインターン同士のコミュニケーションが期待できるかも。

日報とプラクティスを紐付けたい

日報とプラクティスが紐付いてて、ここに表示されると嬉しい。
image
多くなってしまった場合、最新10件だけ出して、全部見る、みたいなリンクを表示したい。
いずれは役立った機能みたいなのを付けて、評価の高い順に並ぶとかほしい。

ここにボタンを置いて、日報が書けるとよさそう。
image

現在の進捗

  • フォーム画面の作成
  • 学習日報のタイトル入力欄に、自動で 学習週/<カテゴリ名>/<プラクティス名>/<日付>/<ユーザー名> が表示されるようにしたい
  • プラクティスと学習日報との、多対多による連携の実装
  • 学習日報を削除するとき、中間テーブル PracticeReport のレコードも一緒に削除したい
  • 学習日報の個別画面で、関連するプラクティスを表示させる
  • 学習日報投稿時にエラーメッセージが出ると、プラクティスとの連携が失われてしまうことへの対応
  • コピー機能を用いてコピーした学習日報が、プラクティスと連携されていないことへの対応
  • 作成済みの学習日報で、連携しているプラクティスを後から編集できるようにしたい

インターンの方のTwitterを公開リストにする

  • 256interns Twitterアカウントを作成
  • 上記アカウントにlistを作成
  • インターンの方のTwitterアカウントが自動で全部上記listに入るようにする
  • 上記listを見るようにするということを256インターンの使い方に追記する。

Pry コンソール上で step や next のコマンドを打ち込むとエラーになる

binding.pry を書き込んだ後 Pry コンソールを立ち上げて step と打ち込むと

NameError: undefined local variable or method `step' for #<ReportsController:0x007fc835a0a280>
from (pry):4:in `index'

のようにエラー表示されて、 step コマンドを実行できない。
また、同様に next を打ち込んだ場合は

SyntaxError: (eval):2: Can't escape from eval with next

とエラー表示されてしまい、 next コマンドを実行できない

2016-03-07 22 04 27

gem の中の動きも見えるように、 Pry コンソールで step コマンドと next コマンドを使えるようにしたい。

ログインがなかったら自動で退会する機能

参加中なのか、卒業したかがはっきりしないため、辞めることをちゃんと告げにくい、告げる必要がないと考えてしまう状況。これを改善する必要がある。

一ヶ月に一回、来月もインターンを続けるか、の意思確認をする仕組み(ログイン後にはい、いいえを聞くだけでいい)が欲しい。その質問に答えることができる期間を月初からの10日間にし、その期間に質問を答えなかった場合は、256internに期間ログインをしていないことなので、その間いいえを選択したことにすし、ログインをしなかった理由がない場合は退会にする。

申し込みフォームの項目の追加

いつまでに何ができるようになるのが目的なのかを具体的に書くようにする。

いつまでに は、年月日を入力

何ができる は、就職、転職、起業、サービス立ちあげ、その他自由記入欄にする

この項目を見て、要望・目的とインターンの仕組みがマッチしているか、設定した期間が現実的であるか、を確認し、マッチしている人のみリモートも受け入れるようにする。
設定した期間が現実的でない場合は、もう一度考え直してもらう。

また、運営側はこの項目を今後学習を進めていく上でこの要望・目的に向かってちゃんと学習ができているかを確認する指標にする。

[申し込みform] 志望利用 の例の文章を変更

現在

デザイン・プログラミングの勉強をしたい理由。(就職の為、自分でWebサービスを作りたいからなど)

変更後

プログラミングの勉強をする理由
(目的とそれをいつまでに達成したいかの期間)

6ヶ月後からWebエンジニアとしての転職活動を始めるので、転職希望先にスキルの証明として提出する実績を作りたい。

現在PHPを使う会社で働いているが、Rubyに興味を持ち始めたので、試しに三ヶ月間Rubyを使ったサービスの手伝いをしたい。もし、Rubyが自分に合っていると感じたら転職も視野に入れていきたいので、その際は転職のサポートもお願いしたい。

インターンの仕組みを整理する

シニアインターンの仕組みを作る

やること、やらないこと、提携企業の義務、提携規約などのドキュメント化と問題点の洗い出し

仕事がふられていないインターンの仕事のふりかたのルール化

Teppei Machida - 2013/06/19 02:23:22 +0000 - 削除
フィヨルド社員、インターンのいる日、いない日をインターンが把握する方法

Teppei Machida - 2013/06/19 02:24:01 +0000 - 削除
質問があった際の答える担当者の設定

Teppei Machida - 2013/06/19 02:24:24 +0000 - 削除
役にたってるのか いい体験を提供できているのかの確認手段(フィードバック)

Teppei Machida - 2013/06/19 02:55:37 +0000 - 削除
仕事やってくれたら褒め称える仕組み。

Teppei Machida - 2013/06/19 03:08:04 +0000 - 削除
仕事が欲しい、就職先が欲しいなどの要望をフィヨルドが把握する仕組み(リモートも含め)

Teppei Machida - 2013/06/19 03:08:41 +0000 - 削除
インターンの仕組みに問題、改善点が出たときの改善フローを仕組み化

Teppei Machida - 2013/06/19 03:09:13 +0000 - 削除
仕事がないときは学習をしていいにする?しないなら仕事がないときはどうする?

Teppei Machida - 2013/06/19 04:46:45 +0000 - 削除
現在のインターンの仕組みの完成度を20%として、100%でお金を取れる仕組みとしたとき、完成までの足りない80%が完成に近づいてるところを可視化したい。ビジネスとしての販売できたときの姿をドキュメント化する。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.