SlideShare une entreprise Scribd logo
1  sur  22
Télécharger pour lire hors ligne
学外実習発表会
実習先       株式会社LOUPE
実習テーマ     Ruby on RailsによるWebアプリケーション開発
実習期間      8月19日(水)〜9月2日(水)
発表者  情報工学科4年 33番 向平 卓矢
目次
• 実習先の概要
• 開発の流れ
• 開発内容
• サービス改善(フロントエンド・バックエンド)
• 新規機能開発
• コードレビュー
• 学んだこと・得たこと
• まとめ
1
実習先の概要
2
実習先の概要
実習先    株式会社LOUPE
所在地    東京都目黒区洗足1-30-5 白樺門西
設立     2013年2月
Webサイト  http://lo-upe.com
3
実習先の概要
全国の先生がつながる
  SENSEI NOTE
教員向けイベントまとめ
  SENSEI PORTAL
4
実習先の概要
全国の先生がつながる
  SENSEI NOTE
Ruby on Railsを用いた

SENSEI NOTEのサービス改善・機能開発
5
開発内容
6
開発内容
サービスの改善

  フロントエンドの改善

  バックエンドの改善
新規機能開発

  違反報告機能の実装
コードレビュー

  インターン生同士でのコードレビュー
7
フロントエンドの改善
開発内容

  ランディングページの改善
開発目的

  新規ユーザ獲得
使用した技術

  Slim (HTML)

  SCSS (CSS)

  Coffee Script (Java Script)
8
フロントエンドの改善(before)
before: 質問のみ表示
9
フロントエンドの改善(after)
after: 回答 や 関連する質問 を表示

    ユーザの興味を引き立てる
before: 質問のみ表示
10
バックエンドの改善
開発内容

  質問と回答機能

  質問が持つ回答の数を数える処理の改善
開発目的

  Webアプリケーションの応答速度向上
使用した技術

  Ruby(Rails)

  Active Record

  PostgreSQL
11
バックエンドの改善(before)
Rubyのコード:

  question = Question.find(1)

  question.answers.count

       ↓

生成されるSQL:

  SELECT COUNT(*)

  FROM "answers"

  WHERE "answers"."question_id" = 1
質問に属する回答数表示時の

ボトルネックを解消
12
質問に属する回答数表示時の

ボトルネックを解消
バックエンドの改善(after)
Rubyのコード:

  question = Question.find(1)

  question.answers_count

       ↓

  メモリから直接読み込み

         高速化を実現
  ↑

新たに

 カラム追加
13
新規機能開発
開発内容

  ユーザの投稿やメッセージなどの通報機能実装
開発目的

  サイト内の治安維持
使用した技術

  Ruby(Rails)

  Active Record

  Slim / SCSS / Coffee Script

  Ajax
14
新規機能開発
Ajaxによる非同期通信を用いて画面遷移無しでの

通報機能を実現。
  ↑

「通報する」

  を選択
   ↑
理由を選び

「送信」を選択
     ↑
画面遷移無しで

通報完了、元の画面へ
15
コードレビュー
内容

  インターン生同士でのコードレビュー
目的

  コードの品質向上、互いの技術向上
使用したサービスやツール

  Git

  GitHub

  Slack






… バージョン管理システム

… 開発者のためのWebサービス

… チャットツール
16
コードレビュー
GitHubやSlackを利用したコードに関する議論
17
学んだこと・得たこと
18
学んだこと・得たこと
普段とは違った、実際に稼働しているサービスの開発

  パフォーマンスやセキュリティを意識

  ユーザーの目線に立って見つめなおす
1人ではなく、上司や仲間と共にコードを書く体験

  「動けばOK」ではなく読みやすいコードを意識

  他人のコードを読むことによる発見
苦手意識を持っている技術を使って開発する

  苦手だったJavaScriptを克服
19
まとめ
20
まとめ
SENSEI NOTEの開発

  Ruby on Railsを用いたWebアプリケーション開発
サービスの改善

  ランディングページ改善による新規ユーザ呼び込み施策

  DBのボトルネック解消による応答速度向上
新規機能開発

  通報機能実装によるサイト内治安維持
コードレビュー

  インターン生同士でコードレビューすることによる

  コードの品質の向上とお互いの技術の向上
学んだこと

  学校や趣味での開発とは違った体験ができた

  苦手意識を持っていた技術を克服できた
21

Contenu connexe

Similaire à 2015年度苫小牧高専情報工学科 学外実習発表会 発表資料

はじめてがアジャイル
はじめてがアジャイルはじめてがアジャイル
はじめてがアジャイル
Kenichi Takahashi
 
Ruby on Railsではじめるrspecテスト
Ruby on RailsではじめるrspecテストRuby on Railsではじめるrspecテスト
Ruby on Railsではじめるrspecテスト
Kanako Kobayashi
 
Ruby ビジネス創出展 Ruby初心者向けプログラミングセミナー
Ruby ビジネス創出展 Ruby初心者向けプログラミングセミナーRuby ビジネス創出展 Ruby初心者向けプログラミングセミナー
Ruby ビジネス創出展 Ruby初心者向けプログラミングセミナー
Tomoya Kawanishi
 
Tokyurubykaigi05
Tokyurubykaigi05Tokyurubykaigi05
Tokyurubykaigi05
yamanekko
 

Similaire à 2015年度苫小牧高専情報工学科 学外実習発表会 発表資料 (20)

Rubyのススメ
RubyのススメRubyのススメ
Rubyのススメ
 
【入門】3時間でアプリ公開!ゼロからのプログラミングRails講座
【入門】3時間でアプリ公開!ゼロからのプログラミングRails講座【入門】3時間でアプリ公開!ゼロからのプログラミングRails講座
【入門】3時間でアプリ公開!ゼロからのプログラミングRails講座
 
Rubyによる開発プロジェクトをうまく回すには(1)
Rubyによる開発プロジェクトをうまく回すには(1)Rubyによる開発プロジェクトをうまく回すには(1)
Rubyによる開発プロジェクトをうまく回すには(1)
 
2015 07-04-ruby rails
2015 07-04-ruby rails2015 07-04-ruby rails
2015 07-04-ruby rails
 
2015年GMOペパボ新卒エンジニア研修 Web開発研修イントロダクション
2015年GMOペパボ新卒エンジニア研修 Web開発研修イントロダクション2015年GMOペパボ新卒エンジニア研修 Web開発研修イントロダクション
2015年GMOペパボ新卒エンジニア研修 Web開発研修イントロダクション
 
はじめてがアジャイル
はじめてがアジャイルはじめてがアジャイル
はじめてがアジャイル
 
Ruby on Railsではじめるrspecテスト
Ruby on RailsではじめるrspecテストRuby on Railsではじめるrspecテスト
Ruby on Railsではじめるrspecテスト
 
Ruby and I at 神奈川Ruby会議01
Ruby and I at 神奈川Ruby会議01Ruby and I at 神奈川Ruby会議01
Ruby and I at 神奈川Ruby会議01
 
Application Bootstrap
Application BootstrapApplication Bootstrap
Application Bootstrap
 
増井雄一郎の「wri.pe」を事例に学ぶ、自作サービスの広め方〜PR・継続できる目標の立て方・改善編 先生:増井 雄一郎
増井雄一郎の「wri.pe」を事例に学ぶ、自作サービスの広め方〜PR・継続できる目標の立て方・改善編 先生:増井 雄一郎増井雄一郎の「wri.pe」を事例に学ぶ、自作サービスの広め方〜PR・継続できる目標の立て方・改善編 先生:増井 雄一郎
増井雄一郎の「wri.pe」を事例に学ぶ、自作サービスの広め方〜PR・継続できる目標の立て方・改善編 先生:増井 雄一郎
 
リアルビジネスRuby
リアルビジネスRubyリアルビジネスRuby
リアルビジネスRuby
 
Ruby ビジネス創出展 Ruby初心者向けプログラミングセミナー
Ruby ビジネス創出展 Ruby初心者向けプログラミングセミナーRuby ビジネス創出展 Ruby初心者向けプログラミングセミナー
Ruby ビジネス創出展 Ruby初心者向けプログラミングセミナー
 
railsはじめの一歩
railsはじめの一歩railsはじめの一歩
railsはじめの一歩
 
Tokyurubykaigi05
Tokyurubykaigi05Tokyurubykaigi05
Tokyurubykaigi05
 
増井雄一郎の「wri.pe」を事例に学ぶ、自作サービスの広め方〜リリース編 先生:増井雄一郎
増井雄一郎の「wri.pe」を事例に学ぶ、自作サービスの広め方〜リリース編 先生:増井雄一郎増井雄一郎の「wri.pe」を事例に学ぶ、自作サービスの広め方〜リリース編 先生:増井雄一郎
増井雄一郎の「wri.pe」を事例に学ぶ、自作サービスの広め方〜リリース編 先生:増井雄一郎
 
Railsから学ぶRESTfulなuri設計
Railsから学ぶRESTfulなuri設計Railsから学ぶRESTfulなuri設計
Railsから学ぶRESTfulなuri設計
 
2015 12-19-ruby rails
2015 12-19-ruby rails2015 12-19-ruby rails
2015 12-19-ruby rails
 
omotesando.rb_20231005.pdf
omotesando.rb_20231005.pdfomotesando.rb_20231005.pdf
omotesando.rb_20231005.pdf
 
ET2014資料: mruby プログラム言語Rubyによる組込みソト開発
ET2014資料: mruby プログラム言語Rubyによる組込みソト開発ET2014資料: mruby プログラム言語Rubyによる組込みソト開発
ET2014資料: mruby プログラム言語Rubyによる組込みソト開発
 
Rubyと仕事と自由なソフトウェア
Rubyと仕事と自由なソフトウェアRubyと仕事と自由なソフトウェア
Rubyと仕事と自由なソフトウェア
 

Plus de Takuya Mukohira

Plus de Takuya Mukohira (17)

ブログ駆動人生 - 高専生のキャリアについて考える会(20150823)
ブログ駆動人生 - 高専生のキャリアについて考える会(20150823)ブログ駆動人生 - 高専生のキャリアについて考える会(20150823)
ブログ駆動人生 - 高専生のキャリアについて考える会(20150823)
 
苫小牧高専 ソフトウェアテクノロジー部 Rubyで遊ぼう 1
苫小牧高専 ソフトウェアテクノロジー部 Rubyで遊ぼう 1苫小牧高専 ソフトウェアテクノロジー部 Rubyで遊ぼう 1
苫小牧高専 ソフトウェアテクノロジー部 Rubyで遊ぼう 1
 
苫小牧高専 ソフトウェアテクノロジー部 enchant.jsでゲーム作り 5
苫小牧高専 ソフトウェアテクノロジー部 enchant.jsでゲーム作り 5苫小牧高専 ソフトウェアテクノロジー部 enchant.jsでゲーム作り 5
苫小牧高専 ソフトウェアテクノロジー部 enchant.jsでゲーム作り 5
 
苫小牧高専 ソフトウェアテクノロジー部 enchant.jsでゲーム作り 4
苫小牧高専 ソフトウェアテクノロジー部 enchant.jsでゲーム作り 4苫小牧高専 ソフトウェアテクノロジー部 enchant.jsでゲーム作り 4
苫小牧高専 ソフトウェアテクノロジー部 enchant.jsでゲーム作り 4
 
苫小牧高専 ソフトウェアテクノロジー部 enchant.jsでゲーム作り 3
苫小牧高専 ソフトウェアテクノロジー部 enchant.jsでゲーム作り 3苫小牧高専 ソフトウェアテクノロジー部 enchant.jsでゲーム作り 3
苫小牧高専 ソフトウェアテクノロジー部 enchant.jsでゲーム作り 3
 
Web APIを使って生活を便利にしたい件
Web APIを使って生活を便利にしたい件Web APIを使って生活を便利にしたい件
Web APIを使って生活を便利にしたい件
 
苫小牧高専 ソフトウェアテクノロジー部 enchant.jsでゲーム作り 2
苫小牧高専 ソフトウェアテクノロジー部 enchant.jsでゲーム作り 2苫小牧高専 ソフトウェアテクノロジー部 enchant.jsでゲーム作り 2
苫小牧高専 ソフトウェアテクノロジー部 enchant.jsでゲーム作り 2
 
苫小牧高専 ソフトウェアテクノロジー部 enchant.jsでゲーム作り 1
苫小牧高専 ソフトウェアテクノロジー部 enchant.jsでゲーム作り 1苫小牧高専 ソフトウェアテクノロジー部 enchant.jsでゲーム作り 1
苫小牧高専 ソフトウェアテクノロジー部 enchant.jsでゲーム作り 1
 
開発の道具についてのお話 LOUPE Study #15
開発の道具についてのお話 LOUPE Study #15開発の道具についてのお話 LOUPE Study #15
開発の道具についてのお話 LOUPE Study #15
 
やってみようCHaser - LOUPE Study #7
やってみようCHaser - LOUPE Study #7やってみようCHaser - LOUPE Study #7
やってみようCHaser - LOUPE Study #7
 
Sinatra軽量Web開発 - LOUPE Study #1
Sinatra軽量Web開発 - LOUPE Study #1Sinatra軽量Web開発 - LOUPE Study #1
Sinatra軽量Web開発 - LOUPE Study #1
 
Nokogiri on Rails
Nokogiri on RailsNokogiri on Rails
Nokogiri on Rails
 
第4回 釧路OSS札幌 勉強会「自己紹介LT」 #946oss札幌
第4回 釧路OSS札幌 勉強会「自己紹介LT」 #946oss札幌第4回 釧路OSS札幌 勉強会「自己紹介LT」 #946oss札幌
第4回 釧路OSS札幌 勉強会「自己紹介LT」 #946oss札幌
 
Git学ぼうぜの会 ハンズオン資料 - LOCAL学生部 GWイベント
Git学ぼうぜの会 ハンズオン資料 - LOCAL学生部 GWイベントGit学ぼうぜの会 ハンズオン資料 - LOCAL学生部 GWイベント
Git学ぼうぜの会 ハンズオン資料 - LOCAL学生部 GWイベント
 
LT Kosenconf946 #2
LT Kosenconf946 #2LT Kosenconf946 #2
LT Kosenconf946 #2
 
学校にギークっぽい集団を作ってみたかった Kosenconf946 #2
学校にギークっぽい集団を作ってみたかった Kosenconf946 #2学校にギークっぽい集団を作ってみたかった Kosenconf946 #2
学校にギークっぽい集団を作ってみたかった Kosenconf946 #2
 
120811高専カンファin旭川 ふるさと自慢(千歳と恵庭)
120811高専カンファin旭川 ふるさと自慢(千歳と恵庭)120811高専カンファin旭川 ふるさと自慢(千歳と恵庭)
120811高専カンファin旭川 ふるさと自慢(千歳と恵庭)
 

Dernier

The_Five_Books_Overview_Presentation_2024
The_Five_Books_Overview_Presentation_2024The_Five_Books_Overview_Presentation_2024
The_Five_Books_Overview_Presentation_2024
koheioishi1
 
TokyoTechGraduateExaminationPresentation
TokyoTechGraduateExaminationPresentationTokyoTechGraduateExaminationPresentation
TokyoTechGraduateExaminationPresentation
YukiTerazawa
 

Dernier (7)

The_Five_Books_Overview_Presentation_2024
The_Five_Books_Overview_Presentation_2024The_Five_Books_Overview_Presentation_2024
The_Five_Books_Overview_Presentation_2024
 
UniProject Workshop Make a Discord Bot with JavaScript
UniProject Workshop Make a Discord Bot with JavaScriptUniProject Workshop Make a Discord Bot with JavaScript
UniProject Workshop Make a Discord Bot with JavaScript
 
TokyoTechGraduateExaminationPresentation
TokyoTechGraduateExaminationPresentationTokyoTechGraduateExaminationPresentation
TokyoTechGraduateExaminationPresentation
 
東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2
東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2
東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2
 
生成AIの回答内容の修正を課題としたレポートについて:お茶の水女子大学「授業・研究における生成系AIの活用事例」での講演資料
生成AIの回答内容の修正を課題としたレポートについて:お茶の水女子大学「授業・研究における生成系AIの活用事例」での講演資料生成AIの回答内容の修正を課題としたレポートについて:お茶の水女子大学「授業・研究における生成系AIの活用事例」での講演資料
生成AIの回答内容の修正を課題としたレポートについて:お茶の水女子大学「授業・研究における生成系AIの活用事例」での講演資料
 
ゲーム理論 BASIC 演習106 -価格の交渉ゲーム-#ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習106 -価格の交渉ゲーム-#ゲーム理論 #gametheory #数学ゲーム理論 BASIC 演習106 -価格の交渉ゲーム-#ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習106 -価格の交渉ゲーム-#ゲーム理論 #gametheory #数学
 
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
 

2015年度苫小牧高専情報工学科 学外実習発表会 発表資料