SlideShare a Scribd company logo
2
F I C C B X C R E A T I V E T E A M
P U B L I S H E D B YD A T EP R O J E C T
H I K A - L A B O 2 0 1 6 . 0 6 . 3 0プロフィール
- 株式会社FICC 勤務
- ブランドエクスペリエンスクリエイティブ事業部シニアディレクター
- 在籍12年くらい(よく覚えてない)
- 企画、デザイン、制作、フロント、サーバーサイド、いろいろやるで☺
福岡 陽
akirafukuoka
Most read
8
F I C C B X C R E A T I V E T E A M
P U B L I S H E D B YD A T EP R O J E C T
H I K A - L A B O 2 0 1 6 . 0 6 . 3 0こうしたらええんちゃう?
Raspberry Pi
Node.js
Express
React
Redux
HDMI
管理画面
GIF再生画面
プロジェクタ
ネットワーク
ブラウザ
MIDI
Arduino
Most read
16
F I C C B X C R E A T I V E T E A M
P U B L I S H E D B YD A T EP R O J E C T
H I K A - L A B O 2 0 1 6 . 0 6 . 3 0結局のところ
Raspberry Pi
Node.js
Express
React
Redux
HDMI
管理画面
GIF再生画面
プロジェクタ
ネットワーク
ブラウザ
MIDI
Arduino
Most read
F I C C B X C R E A T I V E T E A M
P U B L I S H E D B Y
H I K A - L A B O
D A T E
2 0 1 6 . 0 6 . 3 0
P R O J E C T
HIKA-LABO LIGHTNING TALK
React+Redux+Node.js+Raspberry Piで
ビデオプレイヤーを作りたかった話
fukuoka@ficc.jp / FICC inc. / BXクリエイティブ事業部
2016.06.30
福岡 陽 / akirafukuoka
F I C C B X C R E A T I V E T E A M
P U B L I S H E D B YD A T EP R O J E C T
H I K A - L A B O 2 0 1 6 . 0 6 . 3 0プロフィール
- 株式会社FICC 勤務
- ブランドエクスペリエンスクリエイティブ事業部シニアディレクター
- 在籍12年くらい(よく覚えてない)
- 企画、デザイン、制作、フロント、サーバーサイド、いろいろやるで☺
福岡 陽
akirafukuoka
F I C C B X C R E A T I V E T E A M
P U B L I S H E D B YD A T EP R O J E C T
H I K A - L A B O 2 0 1 6 . 0 6 . 3 0最近の作品
- 個室トイレのドア開閉をRaspberry Piを使ってセンシング
- Node.jsで作られたサービスにデータを送信、リアルタイムに空き情報を配信
- 結果トイレの混雑率の圧倒的改善が見られた
- 命名はチームラボさんの同様のシステムより頂戴しました
- http://type.jp/et/log/article/_make_make
FICC Heavensdoor (2015.04)
http://ficc-heavensdoor.herokuapp.com
F I C C B X C R E A T I V E T E A M
P U B L I S H E D B YD A T EP R O J E C T
H I K A - L A B O 2 0 1 6 . 0 6 . 3 0
ensdoor (2015.04)
F I C C B X C R E A T I V E T E A M
P U B L I S H E D B YD A T EP R O J E C T
H I K A - L A B O 2 0 1 6 . 0 6 . 3 0正直ベースで申し上げて
最近のフロントエンドの話題を聞いてる時のワイ
F I C C B X C R E A T I V E T E A M
P U B L I S H E D B YD A T EP R O J E C T
H I K A - L A B O 2 0 1 6 . 0 6 . 3 0技術を身につけるために
ブランクを解消するためには
とりあえず作るしかないやんけ
わかる
F I C C B X C R E A T I V E T E A M
P U B L I S H E D B YD A T EP R O J E C T
H I K A - L A B O 2 0 1 6 . 0 6 . 3 0まず “何を作る?”
MIDI Fighter GIPHY
GIPHYのGIFアニメで
MIDI Fighterみたいに遊べる
VJツールが欲しい😻😻😻😻😻😻
それな
F I C C B X C R E A T I V E T E A M
P U B L I S H E D B YD A T EP R O J E C T
H I K A - L A B O 2 0 1 6 . 0 6 . 3 0こうしたらええんちゃう?
Raspberry Pi
Node.js
Express
React
Redux
HDMI
管理画面
GIF再生画面
プロジェクタ
ネットワーク
ブラウザ
MIDI
Arduino
F I C C B X C R E A T I V E T E A M
P U B L I S H E D B YD A T EP R O J E C T
H I K A - L A B O 2 0 1 6 . 0 6 . 3 0とりあえず
どこから手つけていいかわからんし
Node.jsからとりあえず触ったろ!!
ヒェ~ッ
F I C C B X C R E A T I V E T E A M
P U B L I S H E D B YD A T EP R O J E C T
H I K A - L A B O 2 0 1 6 . 0 6 . 3 0しかし
- どこから手をつけていいかわからない
- 今まで使っていたFluxxorはいつの間にか死んでいた
- 時代はReduxとか言われてもだな…
ブランクから山積する問題
何をしていいのか全くわからない状況ッ…!!
F I C C B X C R E A T I V E T E A M
P U B L I S H E D B YD A T EP R O J E C T
H I K A - L A B O 2 0 1 6 . 0 6 . 3 0こういう時は
型 (ボイラープレート) で覚える
F I C C B X C R E A T I V E T E A M
P U B L I S H E D B YD A T EP R O J E C T
H I K A - L A B O 2 0 1 6 . 0 6 . 3 0いい感じのボイラープレート、入場!!
react-webpack-node
https://github.com/choonkending/react-webpack-node
- 極めて今っぽいボイラープレート(2016.06.30現在 ver 1.7.15)
- ES6/ES2015, React.js, Redux, React Router, React Router Redux Hot reloading, CSS
modules, Express 4.x…
Este.js
https://github.com/este/este
redux-webpack-es6-boilerplate
https://github.com/nicksp/redux-webpack-es6-boilerplate
他にも色々
採用している技術が細かく違うんじゃ
F I C C B X C R E A T I V E T E A M
P U B L I S H E D B YD A T EP R O J E C T
H I K A - L A B O 2 0 1 6 . 0 6 . 3 0react-webpack-node触ってみた
一通りの知識を仕入れるにはもってこいじゃ😤😤
- React-Router、サーバーサイドレンダリング対応
- ホットローディング対応(react-transform-hmr)
- ログイン認証サンプル付き
- HerokuやDigital Oceanにすぐにデプロイできる
- とりあえず今までできたことを最新の環境で実現できそう
react-webpack-nodeで感じた便利ポイント
F I C C B X C R E A T I V E T E A M
P U B L I S H E D B YD A T EP R O J E C T
H I K A - L A B O 2 0 1 6 . 0 6 . 3 0PostCSS
秘密結社みたいなマークが怖い😱😱
- いまグイグイきてるCSSプリプロセッサ
- モジュールをどんどん作れる
- ネストは標準では非対応、でもpostcss-nestedを使えば🙆🙆
- CSS NEXTに対応するにはpostcss-custom-properties
- Reactと組み合わせるとコンポーネント単位でスタイルが適用できる
PostCSS
http://postcss.org
F I C C B X C R E A T I V E T E A M
P U B L I S H E D B YD A T EP R O J E C T
H I K A - L A B O 2 0 1 6 . 0 6 . 3 0PostCSS+React実演
.list {
border-top: #CCCCCC solid 1px;
&:hover {
background: #000000;
color: #FFFFFF;
}
.title {
font-size: 14px;
}
.date {
font-size: 10px;
}
}
import classNames from 'classnames/bind';
import styles from 'css/components/style';
const cx = classNames.bind(styles);
const List = ({data}) => {
return (
<div className={cx('list')}>
<p className={cx('title')}>{data.title}</p>
<p className={cx(‘date')}>{data.date}</p>
</div>);
};
1
2
3
4
5
6
7
8
9
10
11
12
13
style.css
1
2
3
4
5
6
7
8
9
10
11
12
13
List.jsx
classnamesを使うことで、コンポーネント単位でスタイルを適用可能
F I C C B X C R E A T I V E T E A M
P U B L I S H E D B YD A T EP R O J E C T
H I K A - L A B O 2 0 1 6 . 0 6 . 3 0結局のところ
Raspberry Pi
Node.js
Express
React
Redux
HDMI
管理画面
GIF再生画面
プロジェクタ
ネットワーク
ブラウザ
MIDI
Arduino
F I C C B X C R E A T I V E T E A M
P U B L I S H E D B YD A T EP R O J E C T
H I K A - L A B O 2 0 1 6 . 0 6 . 3 0結局のところ
今日までに完成しませんでした…
F I C C B X C R E A T I V E T E A M
P U B L I S H E D B YD A T EP R O J E C T
H I K A - L A B O 2 0 1 6 . 0 6 . 3 0これからの話をしよう
ここで希望のない話をしよう!!
F I C C B X C R E A T I V E T E A M
P U B L I S H E D B YD A T EP R O J E C T
H I K A - L A B O 2 0 1 6 . 0 6 . 3 0これからの話をしよう
少なくともこれからWebサイトは “裏通り” になる
AMP
Facebook
Instant Articles
Apple News …
僕らはプラットフォームに逆らうことが出来ない。弱みを握られている…
F I C C B X C R E A T I V E T E A M
P U B L I S H E D B YD A T EP R O J E C T
H I K A - L A B O 2 0 1 6 . 0 6 . 3 0これからの話をしよう
一方で増大するフロントエンド技術習得コスト
28日後のフロントエンドの話題は一体どうなっている?
(28週後は言わずもがな…)
F I C C B X C R E A T I V E T E A M
P U B L I S H E D B YD A T EP R O J E C T
H I K A - L A B O 2 0 1 6 . 0 6 . 3 0これからの話をしよう
支払うものは多く、得るものは少ない
技術習得 成果
F I C C B X C R E A T I V E T E A M
P U B L I S H E D B YD A T EP R O J E C T
H I K A - L A B O 2 0 1 6 . 0 6 . 3 0大切なのは “何を作るか”
習熟と並行して「何を実現するか」を考える
…ということが言いたかったんや😄😄
F I C C B X C R E A T I V E T E A M
P U B L I S H E D B YD A T EP R O J E C T
H I K A - L A B O 2 0 1 6 . 0 6 . 3 0
React+Redux+Node.js+Raspberry Piで
ビデオプレイヤーを作りたかった話
HIKA-LABO LIGHTNING TALK
終制作・著作
福 岡 陽

More Related Content

Viewers also liked (20)

Webデザイナーが考えておきたいSEOのこと
Webデザイナーが考えておきたいSEOのことWebデザイナーが考えておきたいSEOのこと
Webデザイナーが考えておきたいSEOのこと
Tetsuya Ihata
 
HTMLに学ぶ夫婦円満のコツ
HTMLに学ぶ夫婦円満のコツHTMLに学ぶ夫婦円満のコツ
HTMLに学ぶ夫婦円満のコツ
Hisateru Tanaka
 
デザインとコミュニケーション
デザインとコミュニケーションデザインとコミュニケーション
デザインとコミュニケーション
anzu matsui
 
WordCamp Kansai 2015 デザイン初心者向けワークショップ〜 ブログデザインを実際に作ってみよう〜 おかわり!
WordCamp Kansai 2015 デザイン初心者向けワークショップ〜 ブログデザインを実際に作ってみよう〜 おかわり!WordCamp Kansai 2015 デザイン初心者向けワークショップ〜 ブログデザインを実際に作ってみよう〜 おかわり!
WordCamp Kansai 2015 デザイン初心者向けワークショップ〜 ブログデザインを実際に作ってみよう〜 おかわり!
Ayaka Sumida
 
Vue.js for HIKARABO
Vue.js for HIKARABOVue.js for HIKARABO
Vue.js for HIKARABO
Hiroto Murai
 
聞いて覚えるマテリアルデザイン入門
聞いて覚えるマテリアルデザイン入門聞いて覚えるマテリアルデザイン入門
聞いて覚えるマテリアルデザイン入門
正樹 平野
 
綺麗なデザインの盛り付け方 -超小ネタ編-
綺麗なデザインの盛り付け方 -超小ネタ編-綺麗なデザインの盛り付け方 -超小ネタ編-
綺麗なデザインの盛り付け方 -超小ネタ編-
wariemon
 
しごと大好きフリーランスWebデザイナーが子どもを持ったらどうなる?「わたしのライフワークバランス」
しごと大好きフリーランスWebデザイナーが子どもを持ったらどうなる?「わたしのライフワークバランス」しごと大好きフリーランスWebデザイナーが子どもを持ったらどうなる?「わたしのライフワークバランス」
しごと大好きフリーランスWebデザイナーが子どもを持ったらどうなる?「わたしのライフワークバランス」
Ayaka Sumida
 
WordCamp Kansai 2015 プレイベント「コントリビューターデイ」
WordCamp Kansai 2015 プレイベント「コントリビューターデイ」WordCamp Kansai 2015 プレイベント「コントリビューターデイ」
WordCamp Kansai 2015 プレイベント「コントリビューターデイ」
Ayaka Sumida
 
関西☆フリ女会議
関西☆フリ女会議関西☆フリ女会議
関西☆フリ女会議
Ayaka Sumida
 
フリーランスデザイナーの「つくること、はたらくこと」
フリーランスデザイナーの「つくること、はたらくこと」フリーランスデザイナーの「つくること、はたらくこと」
フリーランスデザイナーの「つくること、はたらくこと」
Ayaka Sumida
 
人類の進化とデザイン
人類の進化とデザイン人類の進化とデザイン
人類の進化とデザイン
Ayaka Sumida
 
[UX]は投げ捨てろ!
[UX]は投げ捨てろ![UX]は投げ捨てろ!
[UX]は投げ捨てろ!
c-mitsuba
 
JSON Schema in Web Frontend #insideFE
JSON Schema in Web Frontend #insideFEJSON Schema in Web Frontend #insideFE
JSON Schema in Web Frontend #insideFE
Hiroyuki Anai
 
自分と向き合うセルフブランディング
自分と向き合うセルフブランディング自分と向き合うセルフブランディング
自分と向き合うセルフブランディング
wariemon
 
「スキルなし・実績なし」 32歳窓際エンジニアがシリコンバレーで働くようになるまで
「スキルなし・実績なし」 32歳窓際エンジニアがシリコンバレーで働くようになるまで「スキルなし・実績なし」 32歳窓際エンジニアがシリコンバレーで働くようになるまで
「スキルなし・実績なし」 32歳窓際エンジニアがシリコンバレーで働くようになるまで
Shuichi Tsutsumi
 
Photoshopユーザ歴10年以上の私がSketchに乗り換えるべきかどうかを検証してみた
Photoshopユーザ歴10年以上の私がSketchに乗り換えるべきかどうかを検証してみたPhotoshopユーザ歴10年以上の私がSketchに乗り換えるべきかどうかを検証してみた
Photoshopユーザ歴10年以上の私がSketchに乗り換えるべきかどうかを検証してみた
Tomoyuki Arasuna
 
誰に何を伝える?わたしの デザインコンセプトの 作り方、探し方
誰に何を伝える?わたしの デザインコンセプトの 作り方、探し方誰に何を伝える?わたしの デザインコンセプトの 作り方、探し方
誰に何を伝える?わたしの デザインコンセプトの 作り方、探し方
Ayaka Sumida
 
【Draft】サービス説明資料2017.03.01
【Draft】サービス説明資料2017.03.01【Draft】サービス説明資料2017.03.01
【Draft】サービス説明資料2017.03.01
Kohta Wada
 
16種類(45カテゴリ)の業界150サイトの調査から分かるスマートフォンサイトUIの現状10選
16種類(45カテゴリ)の業界150サイトの調査から分かるスマートフォンサイトUIの現状10選16種類(45カテゴリ)の業界150サイトの調査から分かるスマートフォンサイトUIの現状10選
16種類(45カテゴリ)の業界150サイトの調査から分かるスマートフォンサイトUIの現状10選
Tomoyuki Arasuna
 
Webデザイナーが考えておきたいSEOのこと
Webデザイナーが考えておきたいSEOのことWebデザイナーが考えておきたいSEOのこと
Webデザイナーが考えておきたいSEOのこと
Tetsuya Ihata
 
HTMLに学ぶ夫婦円満のコツ
HTMLに学ぶ夫婦円満のコツHTMLに学ぶ夫婦円満のコツ
HTMLに学ぶ夫婦円満のコツ
Hisateru Tanaka
 
デザインとコミュニケーション
デザインとコミュニケーションデザインとコミュニケーション
デザインとコミュニケーション
anzu matsui
 
WordCamp Kansai 2015 デザイン初心者向けワークショップ〜 ブログデザインを実際に作ってみよう〜 おかわり!
WordCamp Kansai 2015 デザイン初心者向けワークショップ〜 ブログデザインを実際に作ってみよう〜 おかわり!WordCamp Kansai 2015 デザイン初心者向けワークショップ〜 ブログデザインを実際に作ってみよう〜 おかわり!
WordCamp Kansai 2015 デザイン初心者向けワークショップ〜 ブログデザインを実際に作ってみよう〜 おかわり!
Ayaka Sumida
 
Vue.js for HIKARABO
Vue.js for HIKARABOVue.js for HIKARABO
Vue.js for HIKARABO
Hiroto Murai
 
聞いて覚えるマテリアルデザイン入門
聞いて覚えるマテリアルデザイン入門聞いて覚えるマテリアルデザイン入門
聞いて覚えるマテリアルデザイン入門
正樹 平野
 
綺麗なデザインの盛り付け方 -超小ネタ編-
綺麗なデザインの盛り付け方 -超小ネタ編-綺麗なデザインの盛り付け方 -超小ネタ編-
綺麗なデザインの盛り付け方 -超小ネタ編-
wariemon
 
しごと大好きフリーランスWebデザイナーが子どもを持ったらどうなる?「わたしのライフワークバランス」
しごと大好きフリーランスWebデザイナーが子どもを持ったらどうなる?「わたしのライフワークバランス」しごと大好きフリーランスWebデザイナーが子どもを持ったらどうなる?「わたしのライフワークバランス」
しごと大好きフリーランスWebデザイナーが子どもを持ったらどうなる?「わたしのライフワークバランス」
Ayaka Sumida
 
WordCamp Kansai 2015 プレイベント「コントリビューターデイ」
WordCamp Kansai 2015 プレイベント「コントリビューターデイ」WordCamp Kansai 2015 プレイベント「コントリビューターデイ」
WordCamp Kansai 2015 プレイベント「コントリビューターデイ」
Ayaka Sumida
 
関西☆フリ女会議
関西☆フリ女会議関西☆フリ女会議
関西☆フリ女会議
Ayaka Sumida
 
フリーランスデザイナーの「つくること、はたらくこと」
フリーランスデザイナーの「つくること、はたらくこと」フリーランスデザイナーの「つくること、はたらくこと」
フリーランスデザイナーの「つくること、はたらくこと」
Ayaka Sumida
 
人類の進化とデザイン
人類の進化とデザイン人類の進化とデザイン
人類の進化とデザイン
Ayaka Sumida
 
[UX]は投げ捨てろ!
[UX]は投げ捨てろ![UX]は投げ捨てろ!
[UX]は投げ捨てろ!
c-mitsuba
 
JSON Schema in Web Frontend #insideFE
JSON Schema in Web Frontend #insideFEJSON Schema in Web Frontend #insideFE
JSON Schema in Web Frontend #insideFE
Hiroyuki Anai
 
自分と向き合うセルフブランディング
自分と向き合うセルフブランディング自分と向き合うセルフブランディング
自分と向き合うセルフブランディング
wariemon
 
「スキルなし・実績なし」 32歳窓際エンジニアがシリコンバレーで働くようになるまで
「スキルなし・実績なし」 32歳窓際エンジニアがシリコンバレーで働くようになるまで「スキルなし・実績なし」 32歳窓際エンジニアがシリコンバレーで働くようになるまで
「スキルなし・実績なし」 32歳窓際エンジニアがシリコンバレーで働くようになるまで
Shuichi Tsutsumi
 
Photoshopユーザ歴10年以上の私がSketchに乗り換えるべきかどうかを検証してみた
Photoshopユーザ歴10年以上の私がSketchに乗り換えるべきかどうかを検証してみたPhotoshopユーザ歴10年以上の私がSketchに乗り換えるべきかどうかを検証してみた
Photoshopユーザ歴10年以上の私がSketchに乗り換えるべきかどうかを検証してみた
Tomoyuki Arasuna
 
誰に何を伝える?わたしの デザインコンセプトの 作り方、探し方
誰に何を伝える?わたしの デザインコンセプトの 作り方、探し方誰に何を伝える?わたしの デザインコンセプトの 作り方、探し方
誰に何を伝える?わたしの デザインコンセプトの 作り方、探し方
Ayaka Sumida
 
【Draft】サービス説明資料2017.03.01
【Draft】サービス説明資料2017.03.01【Draft】サービス説明資料2017.03.01
【Draft】サービス説明資料2017.03.01
Kohta Wada
 
16種類(45カテゴリ)の業界150サイトの調査から分かるスマートフォンサイトUIの現状10選
16種類(45カテゴリ)の業界150サイトの調査から分かるスマートフォンサイトUIの現状10選16種類(45カテゴリ)の業界150サイトの調査から分かるスマートフォンサイトUIの現状10選
16種類(45カテゴリ)の業界150サイトの調査から分かるスマートフォンサイトUIの現状10選
Tomoyuki Arasuna
 

Similar to React+Redux+Node.js+Raspberry Piで ビデオプレイヤーを作りたかった話 (20)

GPU on OpenStack - GPUインターナルクラウドのベストプラクティス - OpenStack最新情報セミナー 2017年7月
GPU on OpenStack - GPUインターナルクラウドのベストプラクティス - OpenStack最新情報セミナー 2017年7月GPU on OpenStack - GPUインターナルクラウドのベストプラクティス - OpenStack最新情報セミナー 2017年7月
GPU on OpenStack - GPUインターナルクラウドのベストプラクティス - OpenStack最新情報セミナー 2017年7月
VirtualTech Japan Inc.
 
Raspberry Pi Zero とカメラモジュールで作るライブ配信実験機
Raspberry Pi Zero とカメラモジュールで作るライブ配信実験機Raspberry Pi Zero とカメラモジュールで作るライブ配信実験機
Raspberry Pi Zero とカメラモジュールで作るライブ配信実験機
Tetsuyuki Kobayashi
 
FM音源をいじれるWebサービスを作った
FM音源をいじれるWebサービスを作ったFM音源をいじれるWebサービスを作った
FM音源をいじれるWebサービスを作った
CHY72
 
機械学習 (AI/ML) 勉強会 #2 IoT編
機械学習 (AI/ML) 勉強会 #2 IoT編 機械学習 (AI/ML) 勉強会 #2 IoT編
機械学習 (AI/ML) 勉強会 #2 IoT編
Fujio Kojima
 
Zマイスターとの新たな価値探求 z/OS
Zマイスターとの新たな価値探求 z/OSZマイスターとの新たな価値探求 z/OS
Zマイスターとの新たな価値探求 z/OS
IBMソリューション
 
超簡単!Subversion入門 準備編
超簡単!Subversion入門 準備編超簡単!Subversion入門 準備編
超簡単!Subversion入門 準備編
Shin Tanigawa
 
ライブラリ作成のすゝめ - 事例から見る個人OSS開発の効能
ライブラリ作成のすゝめ - 事例から見る個人OSS開発の効能ライブラリ作成のすゝめ - 事例から見る個人OSS開発の効能
ライブラリ作成のすゝめ - 事例から見る個人OSS開発の効能
Yoshifumi Kawai
 
Open shiftoriginquickstart clouddevelopercircle_20170920
Open shiftoriginquickstart clouddevelopercircle_20170920Open shiftoriginquickstart clouddevelopercircle_20170920
Open shiftoriginquickstart clouddevelopercircle_20170920
kei omizo
 
Windows コンテナを AKS に追加する
Windows コンテナを AKS に追加するWindows コンテナを AKS に追加する
Windows コンテナを AKS に追加する
Yuto Takei
 
超簡単! MySQLをWindowsにインストール
超簡単! MySQLをWindowsにインストール超簡単! MySQLをWindowsにインストール
超簡単! MySQLをWindowsにインストール
Shin Tanigawa
 
BLEラジコン基板でIoTしてみた
BLEラジコン基板でIoTしてみたBLEラジコン基板でIoTしてみた
BLEラジコン基板でIoTしてみた
Bizan Nishimura
 
超簡単! PostgreSQLをWindowsにインストール
超簡単! PostgreSQLをWindowsにインストール超簡単! PostgreSQLをWindowsにインストール
超簡単! PostgreSQLをWindowsにインストール
Shin Tanigawa
 
超簡単! Node.jsをWindowsにインストール
超簡単! Node.jsをWindowsにインストール超簡単! Node.jsをWindowsにインストール
超簡単! Node.jsをWindowsにインストール
Shin Tanigawa
 
DroidKaigi2016 windows環境での効率的なアプリ開発手法
DroidKaigi2016 windows環境での効率的なアプリ開発手法DroidKaigi2016 windows環境での効率的なアプリ開発手法
DroidKaigi2016 windows環境での効率的なアプリ開発手法
tkawashita
 
超簡単! GitをWindowsにインストール
超簡単! GitをWindowsにインストール超簡単! GitをWindowsにインストール
超簡単! GitをWindowsにインストール
Shin Tanigawa
 
openstack_neutron-dvr_os5thaniv_20150713
openstack_neutron-dvr_os5thaniv_20150713openstack_neutron-dvr_os5thaniv_20150713
openstack_neutron-dvr_os5thaniv_20150713
Takehiro Kudou
 
Smart Tennis Lesson Serverless Design
Smart Tennis Lesson Serverless DesignSmart Tennis Lesson Serverless Design
Smart Tennis Lesson Serverless Design
Ryuji TAKEHARA
 
EmacsとGlossでお絵描きしてみるよ
EmacsとGlossでお絵描きしてみるよEmacsとGlossでお絵描きしてみるよ
EmacsとGlossでお絵描きしてみるよ
Kiwamu Okabe
 
Write slides and books in VSCode + Markdown
Write slides and books in VSCode + MarkdownWrite slides and books in VSCode + Markdown
Write slides and books in VSCode + Markdown
ロフト くん
 
ザ・ドキュメント~うまくいかないNoSQL~
ザ・ドキュメント~うまくいかないNoSQL~ザ・ドキュメント~うまくいかないNoSQL~
ザ・ドキュメント~うまくいかないNoSQL~
Akihiro Kuwano
 
GPU on OpenStack - GPUインターナルクラウドのベストプラクティス - OpenStack最新情報セミナー 2017年7月
GPU on OpenStack - GPUインターナルクラウドのベストプラクティス - OpenStack最新情報セミナー 2017年7月GPU on OpenStack - GPUインターナルクラウドのベストプラクティス - OpenStack最新情報セミナー 2017年7月
GPU on OpenStack - GPUインターナルクラウドのベストプラクティス - OpenStack最新情報セミナー 2017年7月
VirtualTech Japan Inc.
 
Raspberry Pi Zero とカメラモジュールで作るライブ配信実験機
Raspberry Pi Zero とカメラモジュールで作るライブ配信実験機Raspberry Pi Zero とカメラモジュールで作るライブ配信実験機
Raspberry Pi Zero とカメラモジュールで作るライブ配信実験機
Tetsuyuki Kobayashi
 
FM音源をいじれるWebサービスを作った
FM音源をいじれるWebサービスを作ったFM音源をいじれるWebサービスを作った
FM音源をいじれるWebサービスを作った
CHY72
 
機械学習 (AI/ML) 勉強会 #2 IoT編
機械学習 (AI/ML) 勉強会 #2 IoT編 機械学習 (AI/ML) 勉強会 #2 IoT編
機械学習 (AI/ML) 勉強会 #2 IoT編
Fujio Kojima
 
Zマイスターとの新たな価値探求 z/OS
Zマイスターとの新たな価値探求 z/OSZマイスターとの新たな価値探求 z/OS
Zマイスターとの新たな価値探求 z/OS
IBMソリューション
 
超簡単!Subversion入門 準備編
超簡単!Subversion入門 準備編超簡単!Subversion入門 準備編
超簡単!Subversion入門 準備編
Shin Tanigawa
 
ライブラリ作成のすゝめ - 事例から見る個人OSS開発の効能
ライブラリ作成のすゝめ - 事例から見る個人OSS開発の効能ライブラリ作成のすゝめ - 事例から見る個人OSS開発の効能
ライブラリ作成のすゝめ - 事例から見る個人OSS開発の効能
Yoshifumi Kawai
 
Open shiftoriginquickstart clouddevelopercircle_20170920
Open shiftoriginquickstart clouddevelopercircle_20170920Open shiftoriginquickstart clouddevelopercircle_20170920
Open shiftoriginquickstart clouddevelopercircle_20170920
kei omizo
 
Windows コンテナを AKS に追加する
Windows コンテナを AKS に追加するWindows コンテナを AKS に追加する
Windows コンテナを AKS に追加する
Yuto Takei
 
超簡単! MySQLをWindowsにインストール
超簡単! MySQLをWindowsにインストール超簡単! MySQLをWindowsにインストール
超簡単! MySQLをWindowsにインストール
Shin Tanigawa
 
BLEラジコン基板でIoTしてみた
BLEラジコン基板でIoTしてみたBLEラジコン基板でIoTしてみた
BLEラジコン基板でIoTしてみた
Bizan Nishimura
 
超簡単! PostgreSQLをWindowsにインストール
超簡単! PostgreSQLをWindowsにインストール超簡単! PostgreSQLをWindowsにインストール
超簡単! PostgreSQLをWindowsにインストール
Shin Tanigawa
 
超簡単! Node.jsをWindowsにインストール
超簡単! Node.jsをWindowsにインストール超簡単! Node.jsをWindowsにインストール
超簡単! Node.jsをWindowsにインストール
Shin Tanigawa
 
DroidKaigi2016 windows環境での効率的なアプリ開発手法
DroidKaigi2016 windows環境での効率的なアプリ開発手法DroidKaigi2016 windows環境での効率的なアプリ開発手法
DroidKaigi2016 windows環境での効率的なアプリ開発手法
tkawashita
 
超簡単! GitをWindowsにインストール
超簡単! GitをWindowsにインストール超簡単! GitをWindowsにインストール
超簡単! GitをWindowsにインストール
Shin Tanigawa
 
openstack_neutron-dvr_os5thaniv_20150713
openstack_neutron-dvr_os5thaniv_20150713openstack_neutron-dvr_os5thaniv_20150713
openstack_neutron-dvr_os5thaniv_20150713
Takehiro Kudou
 
Smart Tennis Lesson Serverless Design
Smart Tennis Lesson Serverless DesignSmart Tennis Lesson Serverless Design
Smart Tennis Lesson Serverless Design
Ryuji TAKEHARA
 
EmacsとGlossでお絵描きしてみるよ
EmacsとGlossでお絵描きしてみるよEmacsとGlossでお絵描きしてみるよ
EmacsとGlossでお絵描きしてみるよ
Kiwamu Okabe
 
Write slides and books in VSCode + Markdown
Write slides and books in VSCode + MarkdownWrite slides and books in VSCode + Markdown
Write slides and books in VSCode + Markdown
ロフト くん
 
ザ・ドキュメント~うまくいかないNoSQL~
ザ・ドキュメント~うまくいかないNoSQL~ザ・ドキュメント~うまくいかないNoSQL~
ザ・ドキュメント~うまくいかないNoSQL~
Akihiro Kuwano
 
Ad

React+Redux+Node.js+Raspberry Piで ビデオプレイヤーを作りたかった話

  • 1. F I C C B X C R E A T I V E T E A M P U B L I S H E D B Y H I K A - L A B O D A T E 2 0 1 6 . 0 6 . 3 0 P R O J E C T HIKA-LABO LIGHTNING TALK React+Redux+Node.js+Raspberry Piで ビデオプレイヤーを作りたかった話 fukuoka@ficc.jp / FICC inc. / BXクリエイティブ事業部 2016.06.30 福岡 陽 / akirafukuoka
  • 2. F I C C B X C R E A T I V E T E A M P U B L I S H E D B YD A T EP R O J E C T H I K A - L A B O 2 0 1 6 . 0 6 . 3 0プロフィール - 株式会社FICC 勤務 - ブランドエクスペリエンスクリエイティブ事業部シニアディレクター - 在籍12年くらい(よく覚えてない) - 企画、デザイン、制作、フロント、サーバーサイド、いろいろやるで☺ 福岡 陽 akirafukuoka
  • 3. F I C C B X C R E A T I V E T E A M P U B L I S H E D B YD A T EP R O J E C T H I K A - L A B O 2 0 1 6 . 0 6 . 3 0最近の作品 - 個室トイレのドア開閉をRaspberry Piを使ってセンシング - Node.jsで作られたサービスにデータを送信、リアルタイムに空き情報を配信 - 結果トイレの混雑率の圧倒的改善が見られた - 命名はチームラボさんの同様のシステムより頂戴しました - http://type.jp/et/log/article/_make_make FICC Heavensdoor (2015.04) http://ficc-heavensdoor.herokuapp.com
  • 4. F I C C B X C R E A T I V E T E A M P U B L I S H E D B YD A T EP R O J E C T H I K A - L A B O 2 0 1 6 . 0 6 . 3 0 ensdoor (2015.04)
  • 5. F I C C B X C R E A T I V E T E A M P U B L I S H E D B YD A T EP R O J E C T H I K A - L A B O 2 0 1 6 . 0 6 . 3 0正直ベースで申し上げて 最近のフロントエンドの話題を聞いてる時のワイ
  • 6. F I C C B X C R E A T I V E T E A M P U B L I S H E D B YD A T EP R O J E C T H I K A - L A B O 2 0 1 6 . 0 6 . 3 0技術を身につけるために ブランクを解消するためには とりあえず作るしかないやんけ わかる
  • 7. F I C C B X C R E A T I V E T E A M P U B L I S H E D B YD A T EP R O J E C T H I K A - L A B O 2 0 1 6 . 0 6 . 3 0まず “何を作る?” MIDI Fighter GIPHY GIPHYのGIFアニメで MIDI Fighterみたいに遊べる VJツールが欲しい😻😻😻😻😻😻 それな
  • 8. F I C C B X C R E A T I V E T E A M P U B L I S H E D B YD A T EP R O J E C T H I K A - L A B O 2 0 1 6 . 0 6 . 3 0こうしたらええんちゃう? Raspberry Pi Node.js Express React Redux HDMI 管理画面 GIF再生画面 プロジェクタ ネットワーク ブラウザ MIDI Arduino
  • 9. F I C C B X C R E A T I V E T E A M P U B L I S H E D B YD A T EP R O J E C T H I K A - L A B O 2 0 1 6 . 0 6 . 3 0とりあえず どこから手つけていいかわからんし Node.jsからとりあえず触ったろ!! ヒェ~ッ
  • 10. F I C C B X C R E A T I V E T E A M P U B L I S H E D B YD A T EP R O J E C T H I K A - L A B O 2 0 1 6 . 0 6 . 3 0しかし - どこから手をつけていいかわからない - 今まで使っていたFluxxorはいつの間にか死んでいた - 時代はReduxとか言われてもだな… ブランクから山積する問題 何をしていいのか全くわからない状況ッ…!!
  • 11. F I C C B X C R E A T I V E T E A M P U B L I S H E D B YD A T EP R O J E C T H I K A - L A B O 2 0 1 6 . 0 6 . 3 0こういう時は 型 (ボイラープレート) で覚える
  • 12. F I C C B X C R E A T I V E T E A M P U B L I S H E D B YD A T EP R O J E C T H I K A - L A B O 2 0 1 6 . 0 6 . 3 0いい感じのボイラープレート、入場!! react-webpack-node https://github.com/choonkending/react-webpack-node - 極めて今っぽいボイラープレート(2016.06.30現在 ver 1.7.15) - ES6/ES2015, React.js, Redux, React Router, React Router Redux Hot reloading, CSS modules, Express 4.x… Este.js https://github.com/este/este redux-webpack-es6-boilerplate https://github.com/nicksp/redux-webpack-es6-boilerplate 他にも色々 採用している技術が細かく違うんじゃ
  • 13. F I C C B X C R E A T I V E T E A M P U B L I S H E D B YD A T EP R O J E C T H I K A - L A B O 2 0 1 6 . 0 6 . 3 0react-webpack-node触ってみた 一通りの知識を仕入れるにはもってこいじゃ😤😤 - React-Router、サーバーサイドレンダリング対応 - ホットローディング対応(react-transform-hmr) - ログイン認証サンプル付き - HerokuやDigital Oceanにすぐにデプロイできる - とりあえず今までできたことを最新の環境で実現できそう react-webpack-nodeで感じた便利ポイント
  • 14. F I C C B X C R E A T I V E T E A M P U B L I S H E D B YD A T EP R O J E C T H I K A - L A B O 2 0 1 6 . 0 6 . 3 0PostCSS 秘密結社みたいなマークが怖い😱😱 - いまグイグイきてるCSSプリプロセッサ - モジュールをどんどん作れる - ネストは標準では非対応、でもpostcss-nestedを使えば🙆🙆 - CSS NEXTに対応するにはpostcss-custom-properties - Reactと組み合わせるとコンポーネント単位でスタイルが適用できる PostCSS http://postcss.org
  • 15. F I C C B X C R E A T I V E T E A M P U B L I S H E D B YD A T EP R O J E C T H I K A - L A B O 2 0 1 6 . 0 6 . 3 0PostCSS+React実演 .list { border-top: #CCCCCC solid 1px; &:hover { background: #000000; color: #FFFFFF; } .title { font-size: 14px; } .date { font-size: 10px; } } import classNames from 'classnames/bind'; import styles from 'css/components/style'; const cx = classNames.bind(styles); const List = ({data}) => { return ( <div className={cx('list')}> <p className={cx('title')}>{data.title}</p> <p className={cx(‘date')}>{data.date}</p> </div>); }; 1 2 3 4 5 6 7 8 9 10 11 12 13 style.css 1 2 3 4 5 6 7 8 9 10 11 12 13 List.jsx classnamesを使うことで、コンポーネント単位でスタイルを適用可能
  • 16. F I C C B X C R E A T I V E T E A M P U B L I S H E D B YD A T EP R O J E C T H I K A - L A B O 2 0 1 6 . 0 6 . 3 0結局のところ Raspberry Pi Node.js Express React Redux HDMI 管理画面 GIF再生画面 プロジェクタ ネットワーク ブラウザ MIDI Arduino
  • 17. F I C C B X C R E A T I V E T E A M P U B L I S H E D B YD A T EP R O J E C T H I K A - L A B O 2 0 1 6 . 0 6 . 3 0結局のところ 今日までに完成しませんでした…
  • 18. F I C C B X C R E A T I V E T E A M P U B L I S H E D B YD A T EP R O J E C T H I K A - L A B O 2 0 1 6 . 0 6 . 3 0これからの話をしよう ここで希望のない話をしよう!!
  • 19. F I C C B X C R E A T I V E T E A M P U B L I S H E D B YD A T EP R O J E C T H I K A - L A B O 2 0 1 6 . 0 6 . 3 0これからの話をしよう 少なくともこれからWebサイトは “裏通り” になる AMP Facebook Instant Articles Apple News … 僕らはプラットフォームに逆らうことが出来ない。弱みを握られている…
  • 20. F I C C B X C R E A T I V E T E A M P U B L I S H E D B YD A T EP R O J E C T H I K A - L A B O 2 0 1 6 . 0 6 . 3 0これからの話をしよう 一方で増大するフロントエンド技術習得コスト 28日後のフロントエンドの話題は一体どうなっている? (28週後は言わずもがな…)
  • 21. F I C C B X C R E A T I V E T E A M P U B L I S H E D B YD A T EP R O J E C T H I K A - L A B O 2 0 1 6 . 0 6 . 3 0これからの話をしよう 支払うものは多く、得るものは少ない 技術習得 成果
  • 22. F I C C B X C R E A T I V E T E A M P U B L I S H E D B YD A T EP R O J E C T H I K A - L A B O 2 0 1 6 . 0 6 . 3 0大切なのは “何を作るか” 習熟と並行して「何を実現するか」を考える …ということが言いたかったんや😄😄
  • 23. F I C C B X C R E A T I V E T E A M P U B L I S H E D B YD A T EP R O J E C T H I K A - L A B O 2 0 1 6 . 0 6 . 3 0 React+Redux+Node.js+Raspberry Piで ビデオプレイヤーを作りたかった話 HIKA-LABO LIGHTNING TALK 終制作・著作 福 岡 陽