Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
インフラ屋がRailsをやってみた #TechLunch
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Livesense Inc.
PRO
April 21, 2014
Technology
140
0
Share
インフラ屋がRailsをやってみた #TechLunch
インフラ屋がRailsをやってみた
2013/11/16 (水) @ Livesense TechLunch
発表者:湖山 翔平
Livesense Inc.
PRO
April 21, 2014
More Decks by Livesense Inc.
See All by Livesense Inc.
28新卒_Webエンジニア職採用_会社説明資料
livesense
PRO
0
46
27新卒_総合職採用_会社説明資料
livesense
PRO
0
4.4k
27新卒_Webエンジニア職採用_会社説明資料
livesense
PRO
0
8.8k
株式会社リブセンス・転職会議 採用候補者様向け資料
livesense
PRO
0
320
株式会社リブセンス 会社説明資料(報道関係者様向け)
livesense
PRO
1
1.7k
データ基盤の負債解消のためのリプレイス
livesense
PRO
0
600
26新卒_総合職採用_会社説明資料
livesense
PRO
0
13k
株式会社リブセンス会社紹介資料 / Invent the next common.
livesense
PRO
2
61k
26新卒_Webエンジニア職採用_会社説明資料
livesense
PRO
1
13k
Other Decks in Technology
See All in Technology
Route 53 Global Resolver で高額課金発生!
otanikohei2023
0
130
Cortex Codeのコスト見積ヒントご紹介
yokatsuki
0
120
AI駆動1on1〜AIに自分を育ててもらう〜
yoshiakiyasuda
0
150
VespaのParent Childを用いたフィードパフォーマンスの改善
taking
0
120
Practical TypeProf: Lessons from Analyzing Optcarrot
mame
0
1.2k
Choose your own adventure in agentic design patterns
glaforge
0
160
20260423_執筆の工夫と裏側 技術書の企画から刊行まで / From the planning to the publication of technical book
nash_efp
3
610
エージェントスキルを作って自分のインプットに役立てよう
tsubakimoto_s
0
460
Building a Standalone Programming Environment
harukasan
PRO
1
100
Pure Intonation on Browser: Building a Sequencer with Ruby
nagachika
0
170
Revisiting [CLS] and Patch Token Interaction in Vision Transformers
yu4u
0
400
「誰一人取り残されない」 AIエージェント時代のプロダクト設計思想 Product Management Summit 2026
mizushimac
1
1.7k
Featured
See All Featured
Java REST API Framework Comparison - PWX 2021
mraible
34
9.3k
Building the Perfect Custom Keyboard
takai
2
740
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
170
Un-Boring Meetings
codingconduct
0
270
Docker and Python
trallard
47
3.8k
We Have a Design System, Now What?
morganepeng
55
8.1k
The Curse of the Amulet
leimatthew05
1
12k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
A better future with KSS
kneath
240
18k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.7k
A designer walks into a library…
pauljervisheath
211
24k
Transcript
ϓϥοτϑΥʔϜ։ൃG γεςϜ։ൃ෦ɹ Copyright © LIVESENSE Inc. ބࢁ ᠳฏ Πϯϑϥ͕ RailsͰΞϓϦΛ࡞ͬͯΈͨ
·ͣ͡Ίʹ みなさん、僕のことを覚えてるでしょうか?
ࣗݾհ 湖山です。
ಛٕ 特技は・・・
ಛٕ ゲーム
-‐Counter-‐Strike 1.6-‐ MXP CUP 3位 (Team | Theory &
3pR) BIGLAN SOCKET 4 優勝(Team | Fellows) CS Code-‐Reality 準優勝(Team | Fellows) CSCTL Season2 優勝(Team | Speeder) CSCTL Season2.5 DeathMatch大会 優勝(個人) NightLAN 1on1 Match 優勝(個人) CSCTL Season3 優勝(Team | Speeder) Sion Shootout! 全勝(個人) ESWC日本予選 優勝(Team | Speeder) ESWC本選出場 (Team | Speeder) CCDT3 優勝(個人) CCDT4 優勝(個人) CCDT5 3位(個人) CS 1on1 Boom Headshot Cup 3Ґ (ݸਓ) CCDT6 優勝(個人) CCDT7 優勝(個人) CCDT8 準優勝(個人) FPS甲子園 in 秋葉原 出場(Team | Speeder) Survival of Fi[est 13 Expert部門優勝 (Team | Speeder) Survival of Fi[est 14 Expert部門優勝 (Team | Speeder) Survival of Fi[est 15 Expert部門優勝 (Team | Speeder) SteelSeriesとサポート契約 ドイツのmyRevengeとプロ契約 Asia e-‐Sports Cup 2012 日本予選優勝(Team | myRevenge) Asia e-‐Sports Cup 2012 本戦優勝(Team | myRevenge) -‐PaperMan-‐ 東京ゲームショウ2007 出演 PaperMan祭り in 秋葉原 出演 ゲームマスターとしてCykan社に勤務 -‐CrossFire-‐ Cross Fire Tournament League 優勝(Team | Fellows) Cross Fire オフラインイベント 特別講師として出演(Team | Fellows) -‐TV-‐ Road to ESWC (スカパー!) ήʔϜܦྺ 優勝
·ͣ͡Ίʹ 分かって頂けたところで、 本題に入りましょう。
·ͣ͡Ίʹ 事件はシステム開発部月次定例で発生
湖山 「稼働率出しました! みんなが見れるようにWebアプリにするよ!」 ((Webアプリそこまで難しくないだろう。Google先生もいるし)) ‑
ͳ͘ͳ͘ɻ ということで勉強も兼ねて RailsでWebアプリを作ることに。
ͳͥRailsΛબΜ͔ͩ ・会社がRailsに移行していってるから勉強も兼ねて ・Rubyを触ってみたかったから ・デザインがカッコいいし、楽そうだから(bootstrap) ・一度は「Railsでアプリ作った」と言ってみたかったから ・プラグインが便利でグラフにし易そう
Ͳͷఔͷϓϩάϥϛϯάྗʁ ちなみに。。 社会人4年目になります。 プログラムはPerl PHPをかじった程度。
Rubyは触ったことありません! アプリとか作ったこと有りません!
·ͣ࢝Ίͨ͜ͱ 流れを図にしてみた。
໊୳ఁί◦ϯ 図にして分かったこと。 とりあえずデータ取らないと始まらないということ。
ਅ࣮͍ͭҰͭ データを取る ‑ mysql 操作 ‑
グラフじゃない ‑ perlでいいんじゃね?
ग़དྷ·ͨ͠ Perlで作りました
Μͩɺվળͨ͠ ①時間の計算が難しかった➡エポック秒とやらで解決 ②エラー発生時間insertから復旧時間のinsertまで、 DBのconnectを切った。(DBに張り付きは良くない) ③テーブル見直しに時間がかかった
(誰かに見てもらうのが一番) ④executeで実行したらfinishできちんと閉じないと、 うまく動作しないことが分かったので修正
ބࢁؾ͍ͮͨ Railsでグラフ化するとき、 データを何度も再計算させると 負荷高くなるんじゃね?
·ͨ࡞Γ·ͨ͠ Rails用のテーブル(resultテーブル)を作成。 毎朝9時にでtotal_counts➡resultテーブルに計算 Perlで!
͜͜·ͰRailsͷͳ͠ あとはグラフにするだけ!順調!
ͱΓ͋͑ͣͲ͏͠Α͏͔ そういえば社内でグラフにするやつがあったような。 Gaiaさん
ಡΉ ソースコードを読んでみる。 分からないけど分かる。 というかこれパクればいけるんじゃね? ‑
それじゃ面白くないっ
Ұ͔Β࡞ͬͯΈΔ͜ͱʹ 一から作り直す判断が遅かったものの、 bootstrap + lazy_high_chartで作ってみることに。 そしてまずは初心者本を買ってみました。
͓՛ࢠϠϯΩʔొ この時期から、平山さんがお菓子を取りに来るときに グラフまだ? ・・・と恐喝される日々。 ? お菓子足りないんだけど?
? もうできてるでしょ 恐怖 恐 喝 逝 。 縦社会
ک͑ͳ͕Βϓϩάϥϛϯά Railsとmysqlの連携方法を理解したり、 Rubyの書式や言葉を覚えるのに苦戦。 ➡初心者本熟読 またRailsのコマンドの動きを覚えるのに時間もかかりました。
rails コマンド rake コマンド ➡初心者本熟読 Lazy_high_chartの挙動理解にも時間がかかりました。 ➡ブログ等のjps + highchartsのFAQ熟読
͍ͦͯͭ͠ʹ なんだかんだやって、 色んな人に教えてもらい。。
ग़དྷ·ͨ͠ h[p://10.29.3.101:3000/result2013
dev.livesense.jpʹ͋Γ·͢ Gaiaさんの隣にいるなんて恐れ多いっ。。 ‐こいつ
࡞ͬͯײͨ͜͡ͱ part1 ①Rubyから勉強してRailsしたほうが良い。絶対 ②変数操作はperlのほうが柔軟。 ただ、Rubyは見やすい
③lazy_high_chartはカスタマイズ出来る点が多くて便利 ④次回はhamlとかslim入れたい ⑤本という先行投資は必要。お早めに
࡞ͬͯײͨ͜͡ͱ part2 ⑥DB設計大事。早めに作ってレビューを貰うこと。 ⑦周りに素晴らしい先生がいっぱいいるので、 調べて分からなかったら聞いてみる
⑧vimを改造していきたい ⑨次回はテストを組み込んでいきたい ⑩何もないところから出来たときの感動が素晴らしい
Ͳͷ͘Β͍͔͔ͬͨͷʁ ちなみに ラック移設や障害対応などがあり、 かかった日数としては2〜3週間くらいです (時間掛け過ぎとか言わないでね!!)
࠷ޙʹ ソースはひどいです。 が、まだまだ分からないことだらけなので、 精神的に、肉体的に病まない程度の ご指摘お待ちしております。
罵倒してくれるドSな方、急募。
ࢀߟॻͳͲ h[p://colorschemedesigner.com/ 基礎 Ruby on Rails h[p://api.highcharts.com/highcharts Rails で Lazy
high charts を使ってチャートを実装してみた
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ
͋ͨΓ·͑Λɺൃ໌͠Α͏ɻ