思考のジャンプ幅が狭いなら,飛ぶ回数で補えばいいじゃない!!

非情報系30歳が競技プログラミングやWeb開発を始めるとどうなるか?

【WIP】AtCoder AC Stepsを支える技術

AtCoder AC Steps

  • サービスを公開できるように,リリース前からリリースノートらしきものを書いていきます.

概要とその必要性

  • AtCoderでACできなかった問題について,どこでつまずいたのかを記録するとともに,復習の習慣化をサポートすることを目標としています.
  • 自分にとって比較的楽な問題を解いて精進した気になっているのを戒めるため

主な機能(予定,上の項目ほど優先度が高い)

  • 一覧ページで,問題別につまづきやすいポイント(5±2項目程度)を記録できる
  • ユーザがある問題に対して締め切りを設定して,何らかの媒体(TwitterやSlackなど)に通知できるようにする
  • ユーザの統計を取る&成果を可視化
  • 問題の特徴を抽出して,オススメの問題を提案する

使い方&図

  • ユーザがつまづいたと思った項目をクリックします(Twitterのfavマークのようなイメージで実装したいと思います)
  • 上記の結果から,その問題の特徴を分析できたらと考えています

今後の実装予定

  • (TODO:思いついた項目を追加)

GitHub:Issue,近日公開予定


上記以外のバグや脆弱性・改善点がありましたら,ご一報ください

使用した技術と選定理由および学習状況

Docker

  • 選定理由:OSに依存しない環境を用意するため.開発環境の構築を自動化するため.
  • 学習状況:公式HPを参考に,Rails用のシンプルな設定ファイルを用意したレベル

Ruby on Rails

  • 選定理由:少人数の開発に向いている.チュートリアルが実務を意識した内容(自動テスト・デプロイを含む)になっている.
  • 学習状況:チュートリアルを実践しながら,静的ページを実装中.リソースの設計にあたり,データベースの基礎や設計方法の学習も必要そう.

参考資料