2014.09.16 jsオジサン3

24
JSとParseで作った 音楽アプリをみんなで直接 Cloud9ライブコーディング JSオジサン #3 2014年9月13日 ラフノート株式会社 代表 西小倉(ニシコクラ) 宏信

description

http://schoo.jp/class/1190/room の登壇資料です〜

Transcript of 2014.09.16 jsオジサン3

Page 1: 2014.09.16 jsオジサン3

JSとParseで作った 音楽アプリをみんなで直接 Cloud9ライブコーディングJ Sオジサン # 3

2014年9月13日

ラフノート株式会社

代表 西小倉(ニシコクラ) 宏信

Page 2: 2014.09.16 jsオジサン3

目次 ・【任意】Cloud9にログインお願いします ・【紹介】本日のアプリについて ・【共有】Parse.comがだいぶやってくれる ・【宣伝】ラフノートで文言変更 ・【確認】レビューして欲しい部分 ・【実践】ちょっとした機能改修からデプロイまでのデモ ・【対話】フィードバック

Page 3: 2014.09.16 jsオジサン3

【任意】Cloud9にログインお願いします

http://245cloud.com/c9

Page 4: 2014.09.16 jsオジサン3

■Cloud9のメリット ・GoogleDriveのようなリアルタイム共同編集 ・プロジェクトごとに個別のubuntu環境 ・シェルが使えるのでherokuデプロイとかもできる ・特定の人だけアクセスできるテスト環境 ・テストURLもエディタ内でペイン表示可能 ・複数OS、ブラウザでの確認環境を用意?(未確認)

Page 5: 2014.09.16 jsオジサン3

本日のWebアプリ 「245cloud」 ニシコクラウド

Page 6: 2014.09.16 jsオジサン3

24分 音楽が流れるので 作業に集中する

↓↑ 5分

達成した人同士で 交換日記ができる

!

Page 7: 2014.09.16 jsオジサン3

ポモドーロ・テクニックアジャイル: 1~数週間を1単位 (「イテレーション」と呼ぶ)にして見積・振り返り !ポモドーロ・テクニック: 上記の1単位が25分

http://blog.j-­‐caw.co.jp/147

Page 8: 2014.09.16 jsオジサン3

利用者の声1

Page 9: 2014.09.16 jsオジサン3

利用者の声2

Page 10: 2014.09.16 jsオジサン3

DEMO

Page 11: 2014.09.16 jsオジサン3

parse.comがだいぶ色々やってくれる

Page 12: 2014.09.16 jsオジサン3

Facebookログインなどは Parseがやってくれるのでサーバサイド実装不要

→本当はJSDeferredとか使うんですよね。。。

Page 13: 2014.09.16 jsオジサン3

権限管理(ACL)もParseがサポート全てのレコードは「ACL」とうカラムを持つ。  

例えば  

{“ユーザID”:{"read":true,"write":true},"*":{"read":true}}  

とあればそのユーザのみはそのレコードを読み書きでき  他の人は参照できても変更・削除はできない

Page 14: 2014.09.16 jsオジサン3

非エンジニア向け文書管理ツール 「ラフノート」で文言修正したら Webアプリに反映されるように

【宣伝】文言変更でgit commitを増やさない

https://ruffnote.com

Page 15: 2014.09.16 jsオジサン3

https://www.youtube.com/watch?v=TEg2PHtItGg

Page 16: 2014.09.16 jsオジサン3

クライアントJS(main.coffee内)

Page 17: 2014.09.16 jsオジサン3

過去のruffnote.coffee

localStorageにruffnote_#{id名} というkeyがあれば それをそのままdomにつっこむ。 その後プロキシ経由でruffnote.comからデータ取得して domの再更新とlocalStorageの更新を行う

Page 18: 2014.09.16 jsオジサン3

過去のサーバサイド(sinatra.rb)22行

Page 19: 2014.09.16 jsオジサン3

ラフノート側が JSONPに対応

Page 20: 2014.09.16 jsオジサン3

現在のruffnote.coffee

Page 21: 2014.09.16 jsオジサン3

サーバサイド(sinatra.rb)10行

もはやcoffeeを コンパイルするためにしか使っていないw

Page 22: 2014.09.16 jsオジサン3

index.html 28行

Page 23: 2014.09.16 jsオジサン3

今からちょっとした改修 (コメント入力欄にplaceholderを入れる)から デプロイまでやっちゃいます! !【レビューして欲しい部分】 ・デプロイに至るまでのプロセスに改善点は見られる? ・前述のコールバック地獄は今もJSDeferredが最適解? それとも他にトレンドある? ・そもそもJSオジサン達から見てParseってどうよ? ・「エラーハンドリングが足りない」系は保留でお願いします

Page 24: 2014.09.16 jsオジサン3

ラフノート株式会社 代表 西小倉宏信

ご協力ありがとうございました!

http://245cloud.com