プログラム組んだら負け!実はHTML/CSSだけでできること2015夏

Yusuke Hirao
Yusuke HiraoWeb Engineer at 株式会社ディーゼロ
@2015.07.25 マカベン HTML5fun
2015 Yusuke Hirao, CC BY-ND.
自己紹介
平尾優典(ひらお ゆうてん)
===
株式会社ディーゼロ Webエンジニア
## コミュニティ活動
- 福岡フロントエンド友の会 Fukuoka Frontend Frogs
- 福岡マークアップ勉強会
- baserCMSユーザー会
Yusuke Hirao
@cloud10designs
2015 Yusuke Hirao, CC BY-ND.
自己紹介
## コミュニティ紹介
### 福岡フロントエンド友の会 Fukuoka Frontend Frogs
### 福岡マークアップ勉強会
### baserCMSユーザー会
「井の中の蛙」にはならないようにと集まった
フロントエンドエンジニアのためのコミュニティ。
Webコーディング・アプリ開発の悩める蛙たちが
その場で話題を決めて、アンカンファレンス形式で
技術を共有する場です。
         福岡のマークアップ
         に携わる人たちの
         ためのコミュニティ
         です。
定期的にセミナーや、ミニ講座、座談会
などを行っています。通称「マカベン」。
福岡発の国産CMS「baserCMS」の
ユーザー会および開発コミュニティです。
平尾も微力ながら開発に携わらせて頂いています。
2015 Yusuke Hirao, CC BY-ND.
自己紹介
## つくったもの
baserCMSプラグイン
- BurgerEditor
- Ace Editor for baserCMS
jQueryプラグイン
- baserJS
- Psyborg
- jquery.raderChart.js
nodeモジュール
- jaco
- typed-table
gulpプラグイン
- gulp-xlsx2html
2015 Yusuke Hirao, CC BY-ND.
自己紹介
## つくったもの
baserCMSプラグイン
- BurgerEditor
- Ace Editor for baserCMS
jQueryプラグイン
- baserJS
- Psyborg
- jquery.raderChart.js
nodeモジュール
- jaco
- typed-table
gulpプラグイン
- gulp-xlsx2html
2015 Yusuke Hirao, CC BY-ND.
プログラム組んだら負け!
実はHTML/CSSだけでできること
2015 Yusuke Hirao, CC BY-ND.
あれから5年...
2015 Yusuke Hirao, CC BY-ND.
あれから3年...
2015 Yusuke Hirao, CC BY-ND.
あれから1年...
2015 Yusuke Hirao, CC BY-ND.
ようやく...
2015 Yusuke Hirao, CC BY-ND.
HTML/CSSだけでできることが増えてきた
一旦、ここでおさらいをしましょう
2015 Yusuke Hirao, CC BY-ND.
アジェンダ
今日話すこと
===
- どんなプログラムを組んだら負けなのか
- CSSのできる子たち
- HTMLのできる子たち
- まとめ
2015 Yusuke Hirao, CC BY-ND.
アジェンダ
今日話すこと
===
- どんなプログラムを組んだら負けなのか
- CSSのできる子たち
- HTMLのできる子たち
- まとめ
2015 Yusuke Hirao, CC BY-ND.
どんなプログラムを組んだら負けなのか
2015 Yusuke Hirao, CC BY-ND.
どんなプログラムを組んだら負けなのか
※はじめに
===
この話は、完全にプログラムを廃止して
HTML/CSSのみでWebサイトを作成しようというものではありません。
2015 Yusuke Hirao, CC BY-ND.
どんなプログラムを組んだら負けなのか
※はじめに
===
この話は、完全にプログラムを廃止して
HTML/CSSのみでWebサイトを作成しようというものではありません。
## 伝えたいことは2点
2015 Yusuke Hirao, CC BY-ND.
どんなプログラムを組んだら負けなのか
※はじめに
===
この話は、完全にプログラムを廃止して
HTML/CSSのみでWebサイトを作成しようというものではありません。
## 伝えたいことは2点
- 無駄なプログラムを組まない
- 役割を明確に
2015 Yusuke Hirao, CC BY-ND.
どんなプログラムを組んだら負けなのか
※はじめに
===
この話は、完全にプログラムを廃止して
HTML/CSSのみでWebサイトを作成しようというものではありません。
## 伝えたいことは2点
- 無駄なプログラムを組まない
- 役割を明確に ←特にこっち
2015 Yusuke Hirao, CC BY-ND.
どんなプログラムを組んだら負けなのか
さて問題。これどう実装する?
===
2015 Yusuke Hirao, CC BY-ND.
どんなプログラムを組んだら負けなのか
さて問題。これどう実装する?
===
## お題「トップページの新着情報の『New』アイコン」
2015 Yusuke Hirao, CC BY-ND.
どんなプログラムを組んだら負けなのか
## お題「トップページの新着情報の『New』アイコン」
2015 Yusuke Hirao, CC BY-ND.
どんなプログラムを組んだら負けなのか
## お題「トップページの新着情報の『New』アイコン」
2015 Yusuke Hirao, CC BY-ND.
どんなプログラムを組んだら負けなのか
## お題「トップページの新着情報の『New』アイコン」
負けコード!
2015 Yusuke Hirao, CC BY-ND.
どんなプログラムを組んだら負けなのか
## お題「トップページの新着情報の『New』アイコン」
2015 Yusuke Hirao, CC BY-ND.
どんなプログラムを組んだら負けなのか
## お題「トップページの新着情報の『New』アイコン」
2015 Yusuke Hirao, CC BY-ND.
どんなプログラムを組んだら負けなのか
## お題「トップページの新着情報の『New』アイコン」
A.
プログラムにデザインの
要件が混ざっている
負けプログラム
2015 Yusuke Hirao, CC BY-ND.
どんなプログラムを組んだら負けなのか
プログラムにデザインの要件が混ざっている問題点
===
2015 Yusuke Hirao, CC BY-ND.
どんなプログラムを組んだら負けなのか
プログラムにデザインの要件が混ざっている問題点
===
## プログラムが担う要件が増える
- プログラムの仕様にデザインが含まれることになる
- プログラマの仕事が増える
##「デザインの修正 = プログラムの修正」という恐怖
- プログラムがデザインに依存する
- デザインの変更にプログラムが引っ張られる
2015 Yusuke Hirao, CC BY-ND.
どんなプログラムを組んだら負けなのか
##「デザインの修正 = プログラムの修正」という恐怖
- プログラムがデザインに依存する
- デザインの変更にプログラムが引っ張られる
Newアイコンの場所変更!
ディレクター デザイナー
Newアイコン変更
だそうです
プログラマ
やれやれ
またか
テストもしないと
2015 Yusuke Hirao, CC BY-ND.
どんなプログラムを組んだら負けなのか
##「デザインの修正 = プログラムの修正」という恐怖
- プログラムがデザインに依存する
- デザインの変更にプログラムが引っ張られる
Newアイコンの場所変更!
ディレクター デザイナー
Newアイコン変更
だそうです
プログラマ
やれやれ
またか
テストもしないと
非効率
2015 Yusuke Hirao, CC BY-ND.
どんなプログラムを組んだら負けなのか
##「デザインの修正 = プログラムの修正」という恐怖
- プログラムがデザインに依存する
- デザインの変更にプログラムが引っ張られる
- 会社をまたぐともっと大変
ちょ、何この請求?!
デザインの変更なのに?
ディレクター デザイナー
Newアイコン変更の
請求だそうです
パートナープログラマ
あれだけ修正
したわけですからね
※あくまで例えなのでフィクションです。
2015 Yusuke Hirao, CC BY-ND.
どんなプログラムを組んだら負けなのか
では、どう実装するとよかったのか?
===
2015 Yusuke Hirao, CC BY-ND.
どんなプログラムを組んだら負けなのか
では、どう実装するとよかったのか?
===
A.
CSSの擬似要素をつかう
2015 Yusuke Hirao, CC BY-ND.
どんなプログラムを組んだら負けなのか
では、どう実装するとよかったのか?
===
A.
CSSの擬似要素をつかう
2015 Yusuke Hirao, CC BY-ND.
どんなプログラムを組んだら負けなのか
では、どう実装するとよかったのか?
===
2015 Yusuke Hirao, CC BY-ND.
どんなプログラムを組んだら負けなのか
では、どう実装するとよかったのか?
===
場所を変えても...
2015 Yusuke Hirao, CC BY-ND.
どんなプログラムを組んだら負けなのか
では、どう実装するとよかったのか?
===
変更なし
2015 Yusuke Hirao, CC BY-ND.
どんなプログラムを組んだら負けなのか
##「デザインの修正」のみで完結する
- プログラムがデザインに依存しない
- デザインの変更にプログラムが引っ張られない
Newアイコンの場所変更!
ディレクター デザイナー
りょうかいでーす
プログラマ
∼♪
2015 Yusuke Hirao, CC BY-ND.
どんなプログラムを組んだら負けなのか
##「デザインの修正」のみで完結する
- プログラムがデザインに依存しない
- デザインの変更にプログラムが引っ張られない
Newアイコンの場所変更!
ディレクター デザイナー
りょうかいでーす
プログラマ
∼♪
未稼働!
2015 Yusuke Hirao, CC BY-ND.
どんなプログラムを組んだら負けなのか
役割を明確にしよう
===
コードも役割が明確になっているほうがいい
CGI
PHP/Ruby/Java
etc...
HTML CSS
コンテンツ・文書構造 装飾・デザイン状態・性質(属性)の制御
2015 Yusuke Hirao, CC BY-ND.
どんなプログラムを組んだら負けなのか
役割を明確にしよう
===
CGI
PHP/Ruby/Java
etc...
HTML CSS
7日以内の記事は
time属性のコンテンツの
後ろに
span要素で...(略
2015 Yusuke Hirao, CC BY-ND.
どんなプログラムを組んだら負けなのか
役割を明確にしよう
===
CGI
PHP/Ruby/Java
etc...
HTML CSS
7日以内の記事は
time属性のコンテンツの
後ろに
span要素で...(略
日付の【状態】
アイコンの位置
2015 Yusuke Hirao, CC BY-ND.
どんなプログラムを組んだら負けなのか
役割を明確にしよう
===
CGI
PHP/Ruby/Java
etc...
HTML CSS
7日以内の記事は
time属性のコンテンツの
後ろに
span要素で...(略
日付の【状態】
アイコンの位置
データのはなし
装飾のはなし
2015 Yusuke Hirao, CC BY-ND.
どんなプログラムを組んだら負けなのか
役割を明確にしよう
===
CGI
PHP/Ruby/Java
etc...
HTML CSS
newクラスが付加されていたら
time要素のafter擬似要素を
装飾する
7日以内の記事は
newクラスを付加する
日付の【状態】
アイコンの位置
2015 Yusuke Hirao, CC BY-ND.
どんなプログラムを組んだら負けなのか
役割を明確にしよう
===
CGI
PHP/Ruby/Java
etc...
HTML CSS
newクラスが付加されていたら
time要素のafter擬似要素を
装飾する
7日以内の記事は
newクラスを付加する 役割分担!
2015 Yusuke Hirao, CC BY-ND.
アジェンダ
今日話すこと
===
- どんなプログラムを組んだら負けなのか
- CSSのできる子たち
- HTMLのできる子たち
- まとめ
2015 Yusuke Hirao, CC BY-ND.
CSSのできる子たち
2015 Yusuke Hirao, CC BY-ND.
CSSのできる子たち
CSS
===
- セレクタ
- background-size
- multiple background
- background-blend-mode
- filter Effects
- calc()
- Flexible Box
- Feature Queries
- image-rendering
- pointer-events (for HTML)
- border-image
- text-overflow
- Transition / Animation
- vw, vh, vmin, vmax Units
2015 Yusuke Hirao, CC BY-ND.
CSSのできる子たち
## セレクタ
- 結合子
- > + ~
- 属性セレクタ
- [attr] [attr=val] [attr$=val] etc...
- 構造擬似クラス
- :nth-child(n) :empty etc...
- ユーザーアクション擬似クラス
- :hover :focus :active
- 擬似要素
- ::before ::after
- などなど
2015 Yusuke Hirao, CC BY-ND.
CSSのできる子たち
### 構造擬似クラス
:nth-child(n)
説明不要の便利なヤツ。
プログラムから無駄なクラスを付けなくて済む。
(n)は整数以外にも (2n+1) のように
if文で条件分岐するよりよっぽどわかりやすいロジックで書ける。
2015 Yusuke Hirao, CC BY-ND.
CSSのできる子たち
### 構造擬似クラス
:empty
要素が空である状態を表す
セレクタ。
地味に使える。
※スペース・改行は空とみなさない点は注意。
if文、不要
2015 Yusuke Hirao, CC BY-ND.
CSSのできる子たち
### ユーザーアクション擬似クラス
:hover
JavaScripを使わずになるべくコレで済ましょう。
画像の置換はbackgroundで。
アニメーションはtransitionで。
パフォーマンス、レスポンシブ、メンテンナンス
理由はいろいろありますが、とにかくコレ使いましょう。
2015 Yusuke Hirao, CC BY-ND.
CSSのできる子たち
### 擬似要素
::before ::after
CSSの一番すごいやつ。
要素の"中"にspan要素を入れたのと同等。
アイコン、ラベル、マーカー、擬似背景、
エラーメッセージ、アニメーションのエフェクトなんでもござれ。
※要素の中なのでimgなどの空要素には無効なので注意。
※DOM APIから参照できないのでイベントバインディングもできない。直接のインタラクティブ要素にはできない。
2015 Yusuke Hirao, CC BY-ND.
CSSのできる子たち
CSS
===
- セレクタ
- background-size
- multiple background
- background-blend-mode
- filter Effects
- calc()
- Flexible Box
- Feature Queries
- image-rendering
- pointer-events (for HTML)
- border-images
- text-overflow
- Transition / Animation
- vw, vh, vmin, vmax Units
2015 Yusuke Hirao, CC BY-ND.
CSSのできる子たち
### background-size
background-size: contain;
background-size: cover;
フルードレイアウトに欠かせない背景伸縮。
windowのリサイズイベントで計算をガンガン実行するような、
そんなパフォーマンスの悪いこと不要。
2015 Yusuke Hirao, CC BY-ND.
CSSのできる子たち
### Multiple background
background: url(A),url(B),url(C);
背景画像を4枚まで同時指定が可能。
背景画像扱いになるグラデーションも同じく複数指定可能。
画像+グラデーションの組み合わせもOK。
余計なdivを用意する必要なし。
JavaScriptで背景用divを生成挿入する必要なし。
2015 Yusuke Hirao, CC BY-ND.
CSSのできる子たち
### background-blend-mode
background-blend-mode
Photoshopのでいう描画モード処理。
ついにCSSで手軽にできるようになった。
canvas要素でJavaScriptで処理する必要もなし。
※ただしMS Edgeを除くモダンブラウザに限る
2015 Yusuke Hirao, CC BY-ND.
CSSのできる子たち
### filter Effects
filter: greyscale(1);
filter: blur(5px); etc...
こちらもPhotoshop不要でCSSで手軽にできるようになった。
canvas要素でJavaScriptで処理する必要もなし。
最大の利点はtransitionでアニメーションできること。
※ただしMS Edgeを除くモダンブラウザに限る
2015 Yusuke Hirao, CC BY-ND.
CSSのできる子たち
### calc()
width: calc(100% - 20px);
CSS上で計算が可能に。
calcの最大の利点は相対値と絶対値を混ぜた計算が可能なこと。
相対値同士・絶対値同士ならSASSにやらせれば済むはなし。
windowのリサイズイベントで計算…という必要がなくなる。
2015 Yusuke Hirao, CC BY-ND.
CSSのできる子たち
### Flexible Box
order: 1;
Flexible Boxの利点は、それはそれは沢山ありますが、
地味に便利なのが順番を入れ替えることが出来るコイツ。
レスポンシブデザインなどブレークポイントによって、
デバイスに合わせた順番に切り替えることができる。
プログラムなしで!
2015 Yusuke Hirao, CC BY-ND.
CSSのできる子たち
### Feature Query
@supports (width: 75vw) and (height: 50vh) {
/* selector { prop: value; } */
}
条件のプロパティや値が有効であれば、ブロック内のセレクタを有効にする。
グレイスフル・デグラデーションやプログレッシブ・エンハンスメントの
ポリシーで実装する際に非常に有効になる。
Modernizr.jsが不要になる。
2015 Yusuke Hirao, CC BY-ND.
CSSのできる子たち
### image-rendering
image-rendering: pixelated;
ドット絵職人さん出番ですよ!!
画像を拡大させてもアンチエイリアスがかからないようにできる
video要素にも適応できる。
canvas要素とJavaScriptなしで可能になる。
2015 Yusuke Hirao, CC BY-ND.
CSSのできる子たち
### pointer-events (for HTML)
pointer-events: none;
もともとSVG側のCSSの技術。
一切のインタラクションを受け付けなくなる。
クリック・ホバー・選択などのコントロールをCSSでできる。
z-indexが手前の要素にかけて、後ろの要素にカーソルが
反応するようにできる。乱用注意。
2015 Yusuke Hirao, CC BY-ND.
CSSのできる子たち
### border-image
border-image: url(A) 1 1 1 1 fill stretch;
IEの対応してなさと、フラットデザイン流行の りをうけて
最近はあまり必要とされていない可哀想な子。
画像を3x3分割してボーダー部分に画像を指定できる。
CSSらしい良くできた機能。SVGとの相性が良い。
時がくれば大活躍すること間違いなし。
2015 Yusuke Hirao, CC BY-ND.
CSSのできる子たち
### text-overflow
text-overflow: ellipsis;
テキストがコンテナから れたら「...」を加えてくれるアレ。
プログラムでやろうとすると、文字列長での制限に妥協したり
バイナリ探索で れるポイントを見つけたりと面倒。
プログラムの地味なウィークポイントでもあったが
CSSでさっくりとできるようなった。※ただし1行に限るのが残念
2015 Yusuke Hirao, CC BY-ND.
CSSのできる子たち
### Transition / Animation
transition: color 300ms ease-in-out;
animation: animName 300ms infinite alternate;
CSS3の代名詞にもなったアニメーション機能。
状態変化をスムーズにつなげるのがtransition。
キーに沿って変化をさせるのがanimation。
装飾的アニメーションなら絶対こちらを使いたい。
2015 Yusuke Hirao, CC BY-ND.
CSSのできる子たち
### Transition / Animation
#### jQueryとCSSのアニメーションの違い
アニメーションの
上書き
最終値の決定
jQuery キューの蓄積 目標値優先
CSS マージ 状態優先
2015 Yusuke Hirao, CC BY-ND.
CSSのできる子たち
### Transition / Animation
#### jQueryとCSSのアニメーションの違い
http://codepen.io/YusukeHirao/pen/xGyqBj
2015 Yusuke Hirao, CC BY-ND.
CSSのできる子たち
### Transition / Animation
#### jQueryとCSSのアニメーションの違い
jQuery:
- キューをしっかり管理する必要がある場合
- アニメーションの終了を検知・保証して次の処理につなげる場合
CSS:
- 状態変化を滑らかにしたい場合
- 単独のループアニメーションオブジェクトをつくる場合
2015 Yusuke Hirao, CC BY-ND.
CSSのできる子たち
### vw, vh, vmin, vmax Units
height: 56.25vw;
vwはwindowの幅を100とした単位。
パーセント指定との違いは、
windowの"幅"基準をheightに設定できるということ。
JavaScriptを使わなくて済むのはもちろん、
padding-topのトリッキーなテクニックを使う必要もない。
2015 Yusuke Hirao, CC BY-ND.
アジェンダ
今日話すこと
===
- どんなプログラムを組んだら負けなのか
- CSSのできる子たち
- HTMLのできる子たち
- まとめ
2015 Yusuke Hirao, CC BY-ND.
HTMLのできる子たち
2015 Yusuke Hirao, CC BY-ND.
HTMLのできる子たち
HTML
===
- input types
- placeholder属性
- progress要素
- Form Validation
2015 Yusuke Hirao, CC BY-ND.
HTMLのできる子たち
### input types
<input type="date"> etc...
HTML5の代表的機能のひとつ。
jQuery UIを使わなくてもデートピッカーがつかえる。
それぞれブラウザ対応や機能的に未熟なものが多く、
デザインのカスタマイズも難しいので、これからに期待。
2015 Yusuke Hirao, CC BY-ND.
HTMLのできる子たち
### placeholder属性
<input placeholder="入力してください">
フォーム要素の拡張で一番嬉しかったのがコレ。
未入力の時に任意の文字を表示できる。
label要素や見出し・補足テキストの代替として利用するケースで
アクセシビリティ的に問題じゃないのか、という意見もある。
使い方注意。
2015 Yusuke Hirao, CC BY-ND.
HTMLのできる子たち
### progress要素
<progress value="90">fallback msg.</progress>
HTML5の完全な新要素。新UI。
プログレスバーがJavaScriptなしで実装できる。
が、リアルタイムの進行変更などは完全にJavaScript任せに
なるので、単体でのほとんど利用シーンはない。
2015 Yusuke Hirao, CC BY-ND.
HTMLのできる子たち
### Form Validation
<input required pattern="[a-z0-9_-]+">
JavaScriptなしである程度のバリデーションが実装できる。
細かい仕様と、デザインを気にしなければ
(デザインはCSSの擬似クラスがいずれ解決するかも)
ほぼ完結させることができる。
※サーバサイドのバリデーションはどちらにせよ必須。
2015 Yusuke Hirao, CC BY-ND.
アジェンダ
今日話すこと
===
- どんなプログラムを組んだら負けなのか
- CSSのできる子たち
- HTMLのできる子たち
- まとめ
2015 Yusuke Hirao, CC BY-ND.
まとめ
2015 Yusuke Hirao, CC BY-ND.
まとめ
- HTML/CSSでできる部分を探そう
2015 Yusuke Hirao, CC BY-ND.
まとめ
- HTML/CSSでできる部分を探そう
- 役割をしっかりわけよう
2015 Yusuke Hirao, CC BY-ND.
まとめ
- HTML/CSSでできる部分を探そう
- 役割をしっかりわけよう
- プログラムを減らそう
2015 Yusuke Hirao, CC BY-ND.
まとめ
- HTML/CSSでできる部分を探そう
- 役割をしっかりわけよう
- プログラムを減らそう
コスト削減
2015 Yusuke Hirao, CC BY-ND.
まとめ
- HTML/CSSでできる部分を探そう
- 役割をしっかりわけよう
- プログラムを減らそう
コスト削減 時間短縮
2015 Yusuke Hirao, CC BY-ND.
まとめ
- HTML/CSSでできる部分を探そう
- 役割をしっかりわけよう
- プログラムを減らそう
コスト削減 時間短縮帰ろう!
2015 Yusuke Hirao, CC BY-ND.
まとめ
- HTML/CSSでできる部分を探そう
- 役割をしっかりわけよう
- プログラムを減らそう
コスト削減 時間短縮帰ろう!
飲みに行こう!
2015 Yusuke Hirao, CC BY-ND.
まとめ
参考サイト
Can I use
http://caniuse.com/
ご清聴ありがとうございました。
1 of 88

Recommended

こわくない Git by
こわくない Gitこわくない Git
こわくない GitKota Saito
881.5K views186 slides
フロー効率性とリソース効率性について #xpjug by
フロー効率性とリソース効率性について #xpjugフロー効率性とリソース効率性について #xpjug
フロー効率性とリソース効率性について #xpjugItsuki Kuroda
106.2K views62 slides
「UXデザインとは」からはじめる「本流」のUXデザインはじめの一歩 | UXデザイン基礎セミナー 第1回 by
「UXデザインとは」からはじめる「本流」のUXデザインはじめの一歩 | UXデザイン基礎セミナー 第1回「UXデザインとは」からはじめる「本流」のUXデザインはじめの一歩 | UXデザイン基礎セミナー 第1回
「UXデザインとは」からはじめる「本流」のUXデザインはじめの一歩 | UXデザイン基礎セミナー 第1回Yoshiki Hayama
27.9K views134 slides
フロー効率性とリソース効率性、再入門 #devlove #devkan by
フロー効率性とリソース効率性、再入門 #devlove #devkanフロー効率性とリソース効率性、再入門 #devlove #devkan
フロー効率性とリソース効率性、再入門 #devlove #devkanItsuki Kuroda
48.2K views96 slides
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ by
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチYoshiki Hayama
54.8K views243 slides
はじめてのPRD by
はじめてのPRDはじめてのPRD
はじめてのPRDTakuya Oikawa
21.3K views24 slides

More Related Content

What's hot

「速」を落とさないコードレビュー by
「速」を落とさないコードレビュー「速」を落とさないコードレビュー
「速」を落とさないコードレビューTakafumi ONAKA
55.5K views62 slides
Oss貢献超入門 by
Oss貢献超入門Oss貢献超入門
Oss貢献超入門Michihito Shigemura
29K views145 slides
テスト文字列に「うんこ」と入れるな by
テスト文字列に「うんこ」と入れるなテスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなKentaro Matsui
178.5K views16 slides
プロトタイピングとユーザビリティテストで「UXデザイン」を練りあげよう! | UXデザイン基礎セミナー 第4回 by
プロトタイピングとユーザビリティテストで「UXデザイン」を練りあげよう! | UXデザイン基礎セミナー 第4回プロトタイピングとユーザビリティテストで「UXデザイン」を練りあげよう! | UXデザイン基礎セミナー 第4回
プロトタイピングとユーザビリティテストで「UXデザイン」を練りあげよう! | UXデザイン基礎セミナー 第4回Yoshiki Hayama
8.1K views154 slides
WayOfNoTrouble.pptx by
WayOfNoTrouble.pptxWayOfNoTrouble.pptx
WayOfNoTrouble.pptxDaisuke Yamazaki
3.1K views25 slides
シリコンバレーの「何が」凄いのか by
シリコンバレーの「何が」凄いのかシリコンバレーの「何が」凄いのか
シリコンバレーの「何が」凄いのかAtsushi Nakada
183.9K views77 slides

What's hot(20)

「速」を落とさないコードレビュー by Takafumi ONAKA
「速」を落とさないコードレビュー「速」を落とさないコードレビュー
「速」を落とさないコードレビュー
Takafumi ONAKA55.5K views
テスト文字列に「うんこ」と入れるな by Kentaro Matsui
テスト文字列に「うんこ」と入れるなテスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるな
Kentaro Matsui178.5K views
プロトタイピングとユーザビリティテストで「UXデザイン」を練りあげよう! | UXデザイン基礎セミナー 第4回 by Yoshiki Hayama
プロトタイピングとユーザビリティテストで「UXデザイン」を練りあげよう! | UXデザイン基礎セミナー 第4回プロトタイピングとユーザビリティテストで「UXデザイン」を練りあげよう! | UXデザイン基礎セミナー 第4回
プロトタイピングとユーザビリティテストで「UXデザイン」を練りあげよう! | UXデザイン基礎セミナー 第4回
Yoshiki Hayama8.1K views
シリコンバレーの「何が」凄いのか by Atsushi Nakada
シリコンバレーの「何が」凄いのかシリコンバレーの「何が」凄いのか
シリコンバレーの「何が」凄いのか
Atsushi Nakada183.9K views
IT系エンジニアのためのプレゼンテーション入門 by Masahito Zembutsu
IT系エンジニアのためのプレゼンテーション入門IT系エンジニアのためのプレゼンテーション入門
IT系エンジニアのためのプレゼンテーション入門
Masahito Zembutsu289.9K views
40歳過ぎてもエンジニアでいるためにやっていること by onozaty
40歳過ぎてもエンジニアでいるためにやっていること40歳過ぎてもエンジニアでいるためにやっていること
40歳過ぎてもエンジニアでいるためにやっていること
onozaty32.3K views
タウンワークアプリの案件開発を支えるオフショアチームの成り立ちとこれから / iOSDC Japan 2021 by Ataru Osaka
タウンワークアプリの案件開発を支えるオフショアチームの成り立ちとこれから / iOSDC Japan 2021タウンワークアプリの案件開発を支えるオフショアチームの成り立ちとこれから / iOSDC Japan 2021
タウンワークアプリの案件開発を支えるオフショアチームの成り立ちとこれから / iOSDC Japan 2021
Ataru Osaka1.5K views
エンジニアの個人ブランディングと技術組織 by Takafumi ONAKA
エンジニアの個人ブランディングと技術組織エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
Takafumi ONAKA23.4K views
大企業アジャイルの勘所(ver1.1) #アジャイルマネジメントセミナー by Itsuki Kuroda
大企業アジャイルの勘所(ver1.1) #アジャイルマネジメントセミナー大企業アジャイルの勘所(ver1.1) #アジャイルマネジメントセミナー
大企業アジャイルの勘所(ver1.1) #アジャイルマネジメントセミナー
Itsuki Kuroda4K views
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら by Atsushi Nakamura
「関心の分離」と「疎結合」   ソフトウェアアーキテクチャのひとかけら「関心の分離」と「疎結合」   ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
Atsushi Nakamura8.2K views
Test Yourself - テストを書くと何がどう変わるか by Takuto Wada
Test Yourself - テストを書くと何がどう変わるかTest Yourself - テストを書くと何がどう変わるか
Test Yourself - テストを書くと何がどう変わるか
Takuto Wada38.3K views
モジュールの凝集度・結合度・インタフェース by Hajime Yanagawa
モジュールの凝集度・結合度・インタフェースモジュールの凝集度・結合度・インタフェース
モジュールの凝集度・結合度・インタフェース
Hajime Yanagawa16.7K views
UXデザインの海外最新「UXトレンドレポート2022」を読んで、考える by Yoshiki Hayama
UXデザインの海外最新「UXトレンドレポート2022」を読んで、考えるUXデザインの海外最新「UXトレンドレポート2022」を読んで、考える
UXデザインの海外最新「UXトレンドレポート2022」を読んで、考える
Yoshiki Hayama3.3K views
UXデザインの資格ってどんなの? HCD-Net認定 人間中心設計スペシャリスト・人間中心設計専門家 by Yoshiki Hayama
UXデザインの資格ってどんなの? HCD-Net認定 人間中心設計スペシャリスト・人間中心設計専門家UXデザインの資格ってどんなの? HCD-Net認定 人間中心設計スペシャリスト・人間中心設計専門家
UXデザインの資格ってどんなの? HCD-Net認定 人間中心設計スペシャリスト・人間中心設計専門家
Yoshiki Hayama4.6K views
ユーザーインタビューするときは、どうやらゾンビのおでましさ by Yoshiki Hayama
ユーザーインタビューするときは、どうやらゾンビのおでましさユーザーインタビューするときは、どうやらゾンビのおでましさ
ユーザーインタビューするときは、どうやらゾンビのおでましさ
Yoshiki Hayama8.6K views
結果的に組織がAgileな状態であること #agile #scrum #leanstartup by Itsuki Kuroda
結果的に組織がAgileな状態であること #agile #scrum #leanstartup結果的に組織がAgileな状態であること #agile #scrum #leanstartup
結果的に組織がAgileな状態であること #agile #scrum #leanstartup
Itsuki Kuroda10.9K views
世界一わかりやすいClean Architecture by Atsushi Nakamura
世界一わかりやすいClean Architecture世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture
Atsushi Nakamura47.1K views
Redisの特徴と活用方法について by Yuji Otani
Redisの特徴と活用方法についてRedisの特徴と活用方法について
Redisの特徴と活用方法について
Yuji Otani101.6K views

Viewers also liked

技術選択とアーキテクトの役割 by
技術選択とアーキテクトの役割技術選択とアーキテクトの役割
技術選択とアーキテクトの役割Toru Yamaguchi
42K views90 slides
偶然にも500万個のSSH公開鍵を手に入れた俺たちは by
偶然にも500万個のSSH公開鍵を手に入れた俺たちは偶然にも500万個のSSH公開鍵を手に入れた俺たちは
偶然にも500万個のSSH公開鍵を手に入れた俺たちはYoshio Hanawa
124.7K views21 slides
運用に自動化を求めるのは間違っているだろうか by
運用に自動化を求めるのは間違っているだろうか運用に自動化を求めるのは間違っているだろうか
運用に自動化を求めるのは間違っているだろうかMasahito Zembutsu
55.8K views195 slides
「内積が見えると統計学も見える」第5回 プログラマのための数学勉強会 発表資料 by
「内積が見えると統計学も見える」第5回 プログラマのための数学勉強会 発表資料 「内積が見えると統計学も見える」第5回 プログラマのための数学勉強会 発表資料
「内積が見えると統計学も見える」第5回 プログラマのための数学勉強会 発表資料 Ken'ichi Matsui
96K views96 slides
実践イカパケット解析 by
実践イカパケット解析実践イカパケット解析
実践イカパケット解析Yuki Mizuno
118.7K views90 slides
MySQLテーブル設計入門 by
MySQLテーブル設計入門MySQLテーブル設計入門
MySQLテーブル設計入門yoku0825
48.3K views145 slides

Viewers also liked(20)

技術選択とアーキテクトの役割 by Toru Yamaguchi
技術選択とアーキテクトの役割技術選択とアーキテクトの役割
技術選択とアーキテクトの役割
Toru Yamaguchi42K views
偶然にも500万個のSSH公開鍵を手に入れた俺たちは by Yoshio Hanawa
偶然にも500万個のSSH公開鍵を手に入れた俺たちは偶然にも500万個のSSH公開鍵を手に入れた俺たちは
偶然にも500万個のSSH公開鍵を手に入れた俺たちは
Yoshio Hanawa124.7K views
運用に自動化を求めるのは間違っているだろうか by Masahito Zembutsu
運用に自動化を求めるのは間違っているだろうか運用に自動化を求めるのは間違っているだろうか
運用に自動化を求めるのは間違っているだろうか
Masahito Zembutsu55.8K views
「内積が見えると統計学も見える」第5回 プログラマのための数学勉強会 発表資料 by Ken'ichi Matsui
「内積が見えると統計学も見える」第5回 プログラマのための数学勉強会 発表資料 「内積が見えると統計学も見える」第5回 プログラマのための数学勉強会 発表資料
「内積が見えると統計学も見える」第5回 プログラマのための数学勉強会 発表資料
Ken'ichi Matsui96K views
実践イカパケット解析 by Yuki Mizuno
実践イカパケット解析実践イカパケット解析
実践イカパケット解析
Yuki Mizuno118.7K views
MySQLテーブル設計入門 by yoku0825
MySQLテーブル設計入門MySQLテーブル設計入門
MySQLテーブル設計入門
yoku082548.3K views
プログラマのための線形代数再入門 by Taketo Sano
プログラマのための線形代数再入門プログラマのための線形代数再入門
プログラマのための線形代数再入門
Taketo Sano53.9K views
ウェブパフォーマンスの基礎とこれから by Hiroshi Kawada
ウェブパフォーマンスの基礎とこれからウェブパフォーマンスの基礎とこれから
ウェブパフォーマンスの基礎とこれから
Hiroshi Kawada111.7K views
Webアプリケーション負荷試験実践入門 by 樽八 仲川
Webアプリケーション負荷試験実践入門Webアプリケーション負荷試験実践入門
Webアプリケーション負荷試験実践入門
樽八 仲川51.2K views
オンラインゲームの仕組みと工夫 by Yuta Imai
オンラインゲームの仕組みと工夫オンラインゲームの仕組みと工夫
オンラインゲームの仕組みと工夫
Yuta Imai869.9K views
ちゃんとした C# プログラムを書けるようになる実践的な方法~ Visual Studio を使った 高品質・低コスト・保守性の高い開発 by 慎一 古賀
ちゃんとした C# プログラムを書けるようになる実践的な方法~ Visual Studio を使った 高品質・低コスト・保守性の高い開発ちゃんとした C# プログラムを書けるようになる実践的な方法~ Visual Studio を使った 高品質・低コスト・保守性の高い開発
ちゃんとした C# プログラムを書けるようになる実践的な方法~ Visual Studio を使った 高品質・低コスト・保守性の高い開発
慎一 古賀86.1K views
「スプラトゥーン」リアルタイム画像解析ツール 「IkaLog」の裏側 by Takeshi HASEGAWA
「スプラトゥーン」リアルタイム画像解析ツール 「IkaLog」の裏側「スプラトゥーン」リアルタイム画像解析ツール 「IkaLog」の裏側
「スプラトゥーン」リアルタイム画像解析ツール 「IkaLog」の裏側
Takeshi HASEGAWA132.6K views
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」 by Takuto Wada
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
Takuto Wada148.7K views
人は一ヶ月でエンジニアになれるのか - 詳細解説 by Livesense Inc.
人は一ヶ月でエンジニアになれるのか - 詳細解説人は一ヶ月でエンジニアになれるのか - 詳細解説
人は一ヶ月でエンジニアになれるのか - 詳細解説
Livesense Inc.394.8K views
中の下のエンジニアを脱出するための仕事術 by Noriaki Kadota
中の下のエンジニアを脱出するための仕事術中の下のエンジニアを脱出するための仕事術
中の下のエンジニアを脱出するための仕事術
Noriaki Kadota46.8K views
SSL/TLSの基礎と最新動向 by shigeki_ohtsu
SSL/TLSの基礎と最新動向SSL/TLSの基礎と最新動向
SSL/TLSの基礎と最新動向
shigeki_ohtsu56.8K views
フーリエ変換と画像圧縮の仕組み by yuichi takeda
フーリエ変換と画像圧縮の仕組みフーリエ変換と画像圧縮の仕組み
フーリエ変換と画像圧縮の仕組み
yuichi takeda239.5K views
MySQL 5.7の罠があなたを狙っている by yoku0825
MySQL 5.7の罠があなたを狙っているMySQL 5.7の罠があなたを狙っている
MySQL 5.7の罠があなたを狙っている
yoku0825122.4K views
エンジニアのための経営学 by Michitaka Yumoto
エンジニアのための経営学エンジニアのための経営学
エンジニアのための経営学
Michitaka Yumoto87.3K views
学生時代に知っておきたかったWeb技術の学び方の学び方 | リブセンス by Livesense Inc.
学生時代に知っておきたかったWeb技術の学び方の学び方 | リブセンス学生時代に知っておきたかったWeb技術の学び方の学び方 | リブセンス
学生時代に知っておきたかったWeb技術の学び方の学び方 | リブセンス
Livesense Inc.232.1K views

Similar to プログラム組んだら負け!実はHTML/CSSだけでできること2015夏

ハイブリットソーシャルゲームの現場 by
ハイブリットソーシャルゲームの現場ハイブリットソーシャルゲームの現場
ハイブリットソーシャルゲームの現場Shota Suzuki
1.3K views42 slides
スマートフォンアプリケーション開発の最新動向 by
スマートフォンアプリケーション開発の最新動向スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向Tsutomu Ogasawara
5.6K views44 slides
おしゃれCatalystに触ってみた by
おしゃれCatalystに触ってみたおしゃれCatalystに触ってみた
おしゃれCatalystに触ってみたtomohiro morishita
458 views11 slides
Web開発の 今までとこれから by
Web開発の 今までとこれからWeb開発の 今までとこれから
Web開発の 今までとこれからShinichi Takahashi
3.1K views18 slides
AngularJSのDirectiveで俺俺タグつくっちゃお by
AngularJSのDirectiveで俺俺タグつくっちゃおAngularJSのDirectiveで俺俺タグつくっちゃお
AngularJSのDirectiveで俺俺タグつくっちゃおToshio Ehara
3.1K views32 slides
ネットワーク分散型フレームワークConView by
ネットワーク分散型フレームワークConViewネットワーク分散型フレームワークConView
ネットワーク分散型フレームワークConViewRakuten Group, Inc.
2.3K views33 slides

Similar to プログラム組んだら負け!実はHTML/CSSだけでできること2015夏(20)

ハイブリットソーシャルゲームの現場 by Shota Suzuki
ハイブリットソーシャルゲームの現場ハイブリットソーシャルゲームの現場
ハイブリットソーシャルゲームの現場
Shota Suzuki1.3K views
スマートフォンアプリケーション開発の最新動向 by Tsutomu Ogasawara
スマートフォンアプリケーション開発の最新動向スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向
Tsutomu Ogasawara5.6K views
AngularJSのDirectiveで俺俺タグつくっちゃお by Toshio Ehara
AngularJSのDirectiveで俺俺タグつくっちゃおAngularJSのDirectiveで俺俺タグつくっちゃお
AngularJSのDirectiveで俺俺タグつくっちゃお
Toshio Ehara3.1K views
ネットワーク分散型フレームワークConView by Rakuten Group, Inc.
ネットワーク分散型フレームワークConViewネットワーク分散型フレームワークConView
ネットワーク分散型フレームワークConView
Rakuten Group, Inc.2.3K views
我が家のフロントエンド開発事情 by Naoki Yamada
我が家のフロントエンド開発事情我が家のフロントエンド開発事情
我が家のフロントエンド開発事情
Naoki Yamada3.9K views
エンジニアと"協同"してサービスをつくる by Ishikawa Yuya
エンジニアと"協同"してサービスをつくるエンジニアと"協同"してサービスをつくる
エンジニアと"協同"してサービスをつくる
Ishikawa Yuya232 views
[Observability conference 2022/3/11] NewsPicks のプロダクト開発エンジニアが実践するスキルとしての SRE by Iida Yukako
[Observability conference 2022/3/11] NewsPicks のプロダクト開発エンジニアが実践するスキルとしての SRE[Observability conference 2022/3/11] NewsPicks のプロダクト開発エンジニアが実践するスキルとしての SRE
[Observability conference 2022/3/11] NewsPicks のプロダクト開発エンジニアが実践するスキルとしての SRE
Iida Yukako1.1K views
「コードを書かずにコードを産み出す?!」スマホ時代の最先端Web/アプリ制作 by Tsuyoshi Nakao
「コードを書かずにコードを産み出す?!」スマホ時代の最先端Web/アプリ制作「コードを書かずにコードを産み出す?!」スマホ時代の最先端Web/アプリ制作
「コードを書かずにコードを産み出す?!」スマホ時代の最先端Web/アプリ制作
Tsuyoshi Nakao1.1K views
2014年を振り返る 今年の技術トレンドとDockerについて by Masahito Zembutsu
2014年を振り返る 今年の技術トレンドとDockerについて2014年を振り返る 今年の技術トレンドとDockerについて
2014年を振り返る 今年の技術トレンドとDockerについて
Masahito Zembutsu48.1K views
福井で「しあわせデザイナー」になるために by Miho Yamamori
福井で「しあわせデザイナー」になるために福井で「しあわせデザイナー」になるために
福井で「しあわせデザイナー」になるために
Miho Yamamori1.8K views
Android開発者とデザイナーの効率的な連携について by lychee .
Android開発者とデザイナーの効率的な連携についてAndroid開発者とデザイナーの効率的な連携について
Android開発者とデザイナーの効率的な連携について
lychee .3.3K views
次世代Web業務アプリケーション by Fumio SAGAWA
次世代Web業務アプリケーション次世代Web業務アプリケーション
次世代Web業務アプリケーション
Fumio SAGAWA12.8K views
The Fastest Possible Way to Develop an Interactive App by LINE Corporation
The Fastest Possible Way to Develop an Interactive AppThe Fastest Possible Way to Develop an Interactive App
The Fastest Possible Way to Develop an Interactive App
LINE Corporation806 views
iOSアプリ開発のためのSwiftビギナーズ勉強会 第6回 @Co-Edo by Megumi Otani(Czenhe)
iOSアプリ開発のためのSwiftビギナーズ勉強会 第6回    @Co-EdoiOSアプリ開発のためのSwiftビギナーズ勉強会 第6回    @Co-Edo
iOSアプリ開発のためのSwiftビギナーズ勉強会 第6回 @Co-Edo
PhoneGapユーザー会@大阪 講演資料 by Monaca
PhoneGapユーザー会@大阪 講演資料PhoneGapユーザー会@大阪 講演資料
PhoneGapユーザー会@大阪 講演資料
Monaca1.6K views
Web Component Framework Urushiのご紹介(OSC2017 Tokyo/Spring) by YuzoHirakawa
Web Component Framework Urushiのご紹介(OSC2017 Tokyo/Spring)Web Component Framework Urushiのご紹介(OSC2017 Tokyo/Spring)
Web Component Framework Urushiのご紹介(OSC2017 Tokyo/Spring)
YuzoHirakawa2.4K views
Devsumi2013 15-C-1 実践!スマホアプリのマネタイズ!! ~マーケット把握術と iPhone&Androidプログラミングテクニック~ by Masahiro Hidaka
Devsumi2013 15-C-1 実践!スマホアプリのマネタイズ!! ~マーケット把握術と iPhone&Androidプログラミングテクニック~Devsumi2013 15-C-1 実践!スマホアプリのマネタイズ!! ~マーケット把握術と iPhone&Androidプログラミングテクニック~
Devsumi2013 15-C-1 実践!スマホアプリのマネタイズ!! ~マーケット把握術と iPhone&Androidプログラミングテクニック~
Masahiro Hidaka5.1K views
2022_08_10 SaaS.tech #5業務システム開発でデザインとフロントエンドも妥協しない話 by Kazuki Murahama
2022_08_10 SaaS.tech #5業務システム開発でデザインとフロントエンドも妥協しない話2022_08_10 SaaS.tech #5業務システム開発でデザインとフロントエンドも妥協しない話
2022_08_10 SaaS.tech #5業務システム開発でデザインとフロントエンドも妥協しない話
Kazuki Murahama724 views

Recently uploaded

定例会スライド_キャチs 公開用.pdf by
定例会スライド_キャチs 公開用.pdf定例会スライド_キャチs 公開用.pdf
定例会スライド_キャチs 公開用.pdfKeio Robotics Association
132 views64 slides
光コラボは契約してはいけない by
光コラボは契約してはいけない光コラボは契約してはいけない
光コラボは契約してはいけないTakuya Matsunaga
25 views17 slides
SNMPセキュリティ超入門 by
SNMPセキュリティ超入門SNMPセキュリティ超入門
SNMPセキュリティ超入門mkoda
453 views15 slides
Windows 11 information that can be used at the development site by
Windows 11 information that can be used at the development siteWindows 11 information that can be used at the development site
Windows 11 information that can be used at the development siteAtomu Hidaka
90 views41 slides
PCCC23:富士通株式会社 テーマ1「次世代高性能・省電力プロセッサ『FUJITSU-MONAKA』」 by
PCCC23:富士通株式会社 テーマ1「次世代高性能・省電力プロセッサ『FUJITSU-MONAKA』」PCCC23:富士通株式会社 テーマ1「次世代高性能・省電力プロセッサ『FUJITSU-MONAKA』」
PCCC23:富士通株式会社 テーマ1「次世代高性能・省電力プロセッサ『FUJITSU-MONAKA』」PC Cluster Consortium
45 views12 slides

Recently uploaded(12)

光コラボは契約してはいけない by Takuya Matsunaga
光コラボは契約してはいけない光コラボは契約してはいけない
光コラボは契約してはいけない
Takuya Matsunaga25 views
SNMPセキュリティ超入門 by mkoda
SNMPセキュリティ超入門SNMPセキュリティ超入門
SNMPセキュリティ超入門
mkoda453 views
Windows 11 information that can be used at the development site by Atomu Hidaka
Windows 11 information that can be used at the development siteWindows 11 information that can be used at the development site
Windows 11 information that can be used at the development site
Atomu Hidaka90 views
PCCC23:富士通株式会社 テーマ1「次世代高性能・省電力プロセッサ『FUJITSU-MONAKA』」 by PC Cluster Consortium
PCCC23:富士通株式会社 テーマ1「次世代高性能・省電力プロセッサ『FUJITSU-MONAKA』」PCCC23:富士通株式会社 テーマ1「次世代高性能・省電力プロセッサ『FUJITSU-MONAKA』」
PCCC23:富士通株式会社 テーマ1「次世代高性能・省電力プロセッサ『FUJITSU-MONAKA』」
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料) by NTT DATA Technology & Innovation
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)
The Things Stack説明資料 by The Things Industries by CRI Japan, Inc.
The Things Stack説明資料 by The Things IndustriesThe Things Stack説明資料 by The Things Industries
The Things Stack説明資料 by The Things Industries
CRI Japan, Inc.76 views
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20... by NTT DATA Technology & Innovation
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...
SSH応用編_20231129.pdf by icebreaker4
SSH応用編_20231129.pdfSSH応用編_20231129.pdf
SSH応用編_20231129.pdf
icebreaker4380 views
PCCC23:東京大学情報基盤センター 「Society5.0の実現を目指す『計算・データ・学習』の融合による革新的スーパーコンピューティング」 by PC Cluster Consortium
PCCC23:東京大学情報基盤センター 「Society5.0の実現を目指す『計算・データ・学習』の融合による革新的スーパーコンピューティング」PCCC23:東京大学情報基盤センター 「Society5.0の実現を目指す『計算・データ・学習』の融合による革新的スーパーコンピューティング」
PCCC23:東京大学情報基盤センター 「Society5.0の実現を目指す『計算・データ・学習』の融合による革新的スーパーコンピューティング」

プログラム組んだら負け!実はHTML/CSSだけでできること2015夏

  • 2. 2015 Yusuke Hirao, CC BY-ND. 自己紹介 平尾優典(ひらお ゆうてん) === 株式会社ディーゼロ Webエンジニア ## コミュニティ活動 - 福岡フロントエンド友の会 Fukuoka Frontend Frogs - 福岡マークアップ勉強会 - baserCMSユーザー会 Yusuke Hirao @cloud10designs
  • 3. 2015 Yusuke Hirao, CC BY-ND. 自己紹介 ## コミュニティ紹介 ### 福岡フロントエンド友の会 Fukuoka Frontend Frogs ### 福岡マークアップ勉強会 ### baserCMSユーザー会 「井の中の蛙」にはならないようにと集まった フロントエンドエンジニアのためのコミュニティ。 Webコーディング・アプリ開発の悩める蛙たちが その場で話題を決めて、アンカンファレンス形式で 技術を共有する場です。          福岡のマークアップ          に携わる人たちの          ためのコミュニティ          です。 定期的にセミナーや、ミニ講座、座談会 などを行っています。通称「マカベン」。 福岡発の国産CMS「baserCMS」の ユーザー会および開発コミュニティです。 平尾も微力ながら開発に携わらせて頂いています。
  • 4. 2015 Yusuke Hirao, CC BY-ND. 自己紹介 ## つくったもの baserCMSプラグイン - BurgerEditor - Ace Editor for baserCMS jQueryプラグイン - baserJS - Psyborg - jquery.raderChart.js nodeモジュール - jaco - typed-table gulpプラグイン - gulp-xlsx2html
  • 5. 2015 Yusuke Hirao, CC BY-ND. 自己紹介 ## つくったもの baserCMSプラグイン - BurgerEditor - Ace Editor for baserCMS jQueryプラグイン - baserJS - Psyborg - jquery.raderChart.js nodeモジュール - jaco - typed-table gulpプラグイン - gulp-xlsx2html
  • 6. 2015 Yusuke Hirao, CC BY-ND. プログラム組んだら負け! 実はHTML/CSSだけでできること
  • 7. 2015 Yusuke Hirao, CC BY-ND. あれから5年...
  • 8. 2015 Yusuke Hirao, CC BY-ND. あれから3年...
  • 9. 2015 Yusuke Hirao, CC BY-ND. あれから1年...
  • 10. 2015 Yusuke Hirao, CC BY-ND. ようやく...
  • 11. 2015 Yusuke Hirao, CC BY-ND. HTML/CSSだけでできることが増えてきた 一旦、ここでおさらいをしましょう
  • 12. 2015 Yusuke Hirao, CC BY-ND. アジェンダ 今日話すこと === - どんなプログラムを組んだら負けなのか - CSSのできる子たち - HTMLのできる子たち - まとめ
  • 13. 2015 Yusuke Hirao, CC BY-ND. アジェンダ 今日話すこと === - どんなプログラムを組んだら負けなのか - CSSのできる子たち - HTMLのできる子たち - まとめ
  • 14. 2015 Yusuke Hirao, CC BY-ND. どんなプログラムを組んだら負けなのか
  • 15. 2015 Yusuke Hirao, CC BY-ND. どんなプログラムを組んだら負けなのか ※はじめに === この話は、完全にプログラムを廃止して HTML/CSSのみでWebサイトを作成しようというものではありません。
  • 16. 2015 Yusuke Hirao, CC BY-ND. どんなプログラムを組んだら負けなのか ※はじめに === この話は、完全にプログラムを廃止して HTML/CSSのみでWebサイトを作成しようというものではありません。 ## 伝えたいことは2点
  • 17. 2015 Yusuke Hirao, CC BY-ND. どんなプログラムを組んだら負けなのか ※はじめに === この話は、完全にプログラムを廃止して HTML/CSSのみでWebサイトを作成しようというものではありません。 ## 伝えたいことは2点 - 無駄なプログラムを組まない - 役割を明確に
  • 18. 2015 Yusuke Hirao, CC BY-ND. どんなプログラムを組んだら負けなのか ※はじめに === この話は、完全にプログラムを廃止して HTML/CSSのみでWebサイトを作成しようというものではありません。 ## 伝えたいことは2点 - 無駄なプログラムを組まない - 役割を明確に ←特にこっち
  • 19. 2015 Yusuke Hirao, CC BY-ND. どんなプログラムを組んだら負けなのか さて問題。これどう実装する? ===
  • 20. 2015 Yusuke Hirao, CC BY-ND. どんなプログラムを組んだら負けなのか さて問題。これどう実装する? === ## お題「トップページの新着情報の『New』アイコン」
  • 21. 2015 Yusuke Hirao, CC BY-ND. どんなプログラムを組んだら負けなのか ## お題「トップページの新着情報の『New』アイコン」
  • 22. 2015 Yusuke Hirao, CC BY-ND. どんなプログラムを組んだら負けなのか ## お題「トップページの新着情報の『New』アイコン」
  • 23. 2015 Yusuke Hirao, CC BY-ND. どんなプログラムを組んだら負けなのか ## お題「トップページの新着情報の『New』アイコン」 負けコード!
  • 24. 2015 Yusuke Hirao, CC BY-ND. どんなプログラムを組んだら負けなのか ## お題「トップページの新着情報の『New』アイコン」
  • 25. 2015 Yusuke Hirao, CC BY-ND. どんなプログラムを組んだら負けなのか ## お題「トップページの新着情報の『New』アイコン」
  • 26. 2015 Yusuke Hirao, CC BY-ND. どんなプログラムを組んだら負けなのか ## お題「トップページの新着情報の『New』アイコン」 A. プログラムにデザインの 要件が混ざっている 負けプログラム
  • 27. 2015 Yusuke Hirao, CC BY-ND. どんなプログラムを組んだら負けなのか プログラムにデザインの要件が混ざっている問題点 ===
  • 28. 2015 Yusuke Hirao, CC BY-ND. どんなプログラムを組んだら負けなのか プログラムにデザインの要件が混ざっている問題点 === ## プログラムが担う要件が増える - プログラムの仕様にデザインが含まれることになる - プログラマの仕事が増える ##「デザインの修正 = プログラムの修正」という恐怖 - プログラムがデザインに依存する - デザインの変更にプログラムが引っ張られる
  • 29. 2015 Yusuke Hirao, CC BY-ND. どんなプログラムを組んだら負けなのか ##「デザインの修正 = プログラムの修正」という恐怖 - プログラムがデザインに依存する - デザインの変更にプログラムが引っ張られる Newアイコンの場所変更! ディレクター デザイナー Newアイコン変更 だそうです プログラマ やれやれ またか テストもしないと
  • 30. 2015 Yusuke Hirao, CC BY-ND. どんなプログラムを組んだら負けなのか ##「デザインの修正 = プログラムの修正」という恐怖 - プログラムがデザインに依存する - デザインの変更にプログラムが引っ張られる Newアイコンの場所変更! ディレクター デザイナー Newアイコン変更 だそうです プログラマ やれやれ またか テストもしないと 非効率
  • 31. 2015 Yusuke Hirao, CC BY-ND. どんなプログラムを組んだら負けなのか ##「デザインの修正 = プログラムの修正」という恐怖 - プログラムがデザインに依存する - デザインの変更にプログラムが引っ張られる - 会社をまたぐともっと大変 ちょ、何この請求?! デザインの変更なのに? ディレクター デザイナー Newアイコン変更の 請求だそうです パートナープログラマ あれだけ修正 したわけですからね ※あくまで例えなのでフィクションです。
  • 32. 2015 Yusuke Hirao, CC BY-ND. どんなプログラムを組んだら負けなのか では、どう実装するとよかったのか? ===
  • 33. 2015 Yusuke Hirao, CC BY-ND. どんなプログラムを組んだら負けなのか では、どう実装するとよかったのか? === A. CSSの擬似要素をつかう
  • 34. 2015 Yusuke Hirao, CC BY-ND. どんなプログラムを組んだら負けなのか では、どう実装するとよかったのか? === A. CSSの擬似要素をつかう
  • 35. 2015 Yusuke Hirao, CC BY-ND. どんなプログラムを組んだら負けなのか では、どう実装するとよかったのか? ===
  • 36. 2015 Yusuke Hirao, CC BY-ND. どんなプログラムを組んだら負けなのか では、どう実装するとよかったのか? === 場所を変えても...
  • 37. 2015 Yusuke Hirao, CC BY-ND. どんなプログラムを組んだら負けなのか では、どう実装するとよかったのか? === 変更なし
  • 38. 2015 Yusuke Hirao, CC BY-ND. どんなプログラムを組んだら負けなのか ##「デザインの修正」のみで完結する - プログラムがデザインに依存しない - デザインの変更にプログラムが引っ張られない Newアイコンの場所変更! ディレクター デザイナー りょうかいでーす プログラマ ∼♪
  • 39. 2015 Yusuke Hirao, CC BY-ND. どんなプログラムを組んだら負けなのか ##「デザインの修正」のみで完結する - プログラムがデザインに依存しない - デザインの変更にプログラムが引っ張られない Newアイコンの場所変更! ディレクター デザイナー りょうかいでーす プログラマ ∼♪ 未稼働!
  • 40. 2015 Yusuke Hirao, CC BY-ND. どんなプログラムを組んだら負けなのか 役割を明確にしよう === コードも役割が明確になっているほうがいい CGI PHP/Ruby/Java etc... HTML CSS コンテンツ・文書構造 装飾・デザイン状態・性質(属性)の制御
  • 41. 2015 Yusuke Hirao, CC BY-ND. どんなプログラムを組んだら負けなのか 役割を明確にしよう === CGI PHP/Ruby/Java etc... HTML CSS 7日以内の記事は time属性のコンテンツの 後ろに span要素で...(略
  • 42. 2015 Yusuke Hirao, CC BY-ND. どんなプログラムを組んだら負けなのか 役割を明確にしよう === CGI PHP/Ruby/Java etc... HTML CSS 7日以内の記事は time属性のコンテンツの 後ろに span要素で...(略 日付の【状態】 アイコンの位置
  • 43. 2015 Yusuke Hirao, CC BY-ND. どんなプログラムを組んだら負けなのか 役割を明確にしよう === CGI PHP/Ruby/Java etc... HTML CSS 7日以内の記事は time属性のコンテンツの 後ろに span要素で...(略 日付の【状態】 アイコンの位置 データのはなし 装飾のはなし
  • 44. 2015 Yusuke Hirao, CC BY-ND. どんなプログラムを組んだら負けなのか 役割を明確にしよう === CGI PHP/Ruby/Java etc... HTML CSS newクラスが付加されていたら time要素のafter擬似要素を 装飾する 7日以内の記事は newクラスを付加する 日付の【状態】 アイコンの位置
  • 45. 2015 Yusuke Hirao, CC BY-ND. どんなプログラムを組んだら負けなのか 役割を明確にしよう === CGI PHP/Ruby/Java etc... HTML CSS newクラスが付加されていたら time要素のafter擬似要素を 装飾する 7日以内の記事は newクラスを付加する 役割分担!
  • 46. 2015 Yusuke Hirao, CC BY-ND. アジェンダ 今日話すこと === - どんなプログラムを組んだら負けなのか - CSSのできる子たち - HTMLのできる子たち - まとめ
  • 47. 2015 Yusuke Hirao, CC BY-ND. CSSのできる子たち
  • 48. 2015 Yusuke Hirao, CC BY-ND. CSSのできる子たち CSS === - セレクタ - background-size - multiple background - background-blend-mode - filter Effects - calc() - Flexible Box - Feature Queries - image-rendering - pointer-events (for HTML) - border-image - text-overflow - Transition / Animation - vw, vh, vmin, vmax Units
  • 49. 2015 Yusuke Hirao, CC BY-ND. CSSのできる子たち ## セレクタ - 結合子 - > + ~ - 属性セレクタ - [attr] [attr=val] [attr$=val] etc... - 構造擬似クラス - :nth-child(n) :empty etc... - ユーザーアクション擬似クラス - :hover :focus :active - 擬似要素 - ::before ::after - などなど
  • 50. 2015 Yusuke Hirao, CC BY-ND. CSSのできる子たち ### 構造擬似クラス :nth-child(n) 説明不要の便利なヤツ。 プログラムから無駄なクラスを付けなくて済む。 (n)は整数以外にも (2n+1) のように if文で条件分岐するよりよっぽどわかりやすいロジックで書ける。
  • 51. 2015 Yusuke Hirao, CC BY-ND. CSSのできる子たち ### 構造擬似クラス :empty 要素が空である状態を表す セレクタ。 地味に使える。 ※スペース・改行は空とみなさない点は注意。 if文、不要
  • 52. 2015 Yusuke Hirao, CC BY-ND. CSSのできる子たち ### ユーザーアクション擬似クラス :hover JavaScripを使わずになるべくコレで済ましょう。 画像の置換はbackgroundで。 アニメーションはtransitionで。 パフォーマンス、レスポンシブ、メンテンナンス 理由はいろいろありますが、とにかくコレ使いましょう。
  • 53. 2015 Yusuke Hirao, CC BY-ND. CSSのできる子たち ### 擬似要素 ::before ::after CSSの一番すごいやつ。 要素の"中"にspan要素を入れたのと同等。 アイコン、ラベル、マーカー、擬似背景、 エラーメッセージ、アニメーションのエフェクトなんでもござれ。 ※要素の中なのでimgなどの空要素には無効なので注意。 ※DOM APIから参照できないのでイベントバインディングもできない。直接のインタラクティブ要素にはできない。
  • 54. 2015 Yusuke Hirao, CC BY-ND. CSSのできる子たち CSS === - セレクタ - background-size - multiple background - background-blend-mode - filter Effects - calc() - Flexible Box - Feature Queries - image-rendering - pointer-events (for HTML) - border-images - text-overflow - Transition / Animation - vw, vh, vmin, vmax Units
  • 55. 2015 Yusuke Hirao, CC BY-ND. CSSのできる子たち ### background-size background-size: contain; background-size: cover; フルードレイアウトに欠かせない背景伸縮。 windowのリサイズイベントで計算をガンガン実行するような、 そんなパフォーマンスの悪いこと不要。
  • 56. 2015 Yusuke Hirao, CC BY-ND. CSSのできる子たち ### Multiple background background: url(A),url(B),url(C); 背景画像を4枚まで同時指定が可能。 背景画像扱いになるグラデーションも同じく複数指定可能。 画像+グラデーションの組み合わせもOK。 余計なdivを用意する必要なし。 JavaScriptで背景用divを生成挿入する必要なし。
  • 57. 2015 Yusuke Hirao, CC BY-ND. CSSのできる子たち ### background-blend-mode background-blend-mode Photoshopのでいう描画モード処理。 ついにCSSで手軽にできるようになった。 canvas要素でJavaScriptで処理する必要もなし。 ※ただしMS Edgeを除くモダンブラウザに限る
  • 58. 2015 Yusuke Hirao, CC BY-ND. CSSのできる子たち ### filter Effects filter: greyscale(1); filter: blur(5px); etc... こちらもPhotoshop不要でCSSで手軽にできるようになった。 canvas要素でJavaScriptで処理する必要もなし。 最大の利点はtransitionでアニメーションできること。 ※ただしMS Edgeを除くモダンブラウザに限る
  • 59. 2015 Yusuke Hirao, CC BY-ND. CSSのできる子たち ### calc() width: calc(100% - 20px); CSS上で計算が可能に。 calcの最大の利点は相対値と絶対値を混ぜた計算が可能なこと。 相対値同士・絶対値同士ならSASSにやらせれば済むはなし。 windowのリサイズイベントで計算…という必要がなくなる。
  • 60. 2015 Yusuke Hirao, CC BY-ND. CSSのできる子たち ### Flexible Box order: 1; Flexible Boxの利点は、それはそれは沢山ありますが、 地味に便利なのが順番を入れ替えることが出来るコイツ。 レスポンシブデザインなどブレークポイントによって、 デバイスに合わせた順番に切り替えることができる。 プログラムなしで!
  • 61. 2015 Yusuke Hirao, CC BY-ND. CSSのできる子たち ### Feature Query @supports (width: 75vw) and (height: 50vh) { /* selector { prop: value; } */ } 条件のプロパティや値が有効であれば、ブロック内のセレクタを有効にする。 グレイスフル・デグラデーションやプログレッシブ・エンハンスメントの ポリシーで実装する際に非常に有効になる。 Modernizr.jsが不要になる。
  • 62. 2015 Yusuke Hirao, CC BY-ND. CSSのできる子たち ### image-rendering image-rendering: pixelated; ドット絵職人さん出番ですよ!! 画像を拡大させてもアンチエイリアスがかからないようにできる video要素にも適応できる。 canvas要素とJavaScriptなしで可能になる。
  • 63. 2015 Yusuke Hirao, CC BY-ND. CSSのできる子たち ### pointer-events (for HTML) pointer-events: none; もともとSVG側のCSSの技術。 一切のインタラクションを受け付けなくなる。 クリック・ホバー・選択などのコントロールをCSSでできる。 z-indexが手前の要素にかけて、後ろの要素にカーソルが 反応するようにできる。乱用注意。
  • 64. 2015 Yusuke Hirao, CC BY-ND. CSSのできる子たち ### border-image border-image: url(A) 1 1 1 1 fill stretch; IEの対応してなさと、フラットデザイン流行の りをうけて 最近はあまり必要とされていない可哀想な子。 画像を3x3分割してボーダー部分に画像を指定できる。 CSSらしい良くできた機能。SVGとの相性が良い。 時がくれば大活躍すること間違いなし。
  • 65. 2015 Yusuke Hirao, CC BY-ND. CSSのできる子たち ### text-overflow text-overflow: ellipsis; テキストがコンテナから れたら「...」を加えてくれるアレ。 プログラムでやろうとすると、文字列長での制限に妥協したり バイナリ探索で れるポイントを見つけたりと面倒。 プログラムの地味なウィークポイントでもあったが CSSでさっくりとできるようなった。※ただし1行に限るのが残念
  • 66. 2015 Yusuke Hirao, CC BY-ND. CSSのできる子たち ### Transition / Animation transition: color 300ms ease-in-out; animation: animName 300ms infinite alternate; CSS3の代名詞にもなったアニメーション機能。 状態変化をスムーズにつなげるのがtransition。 キーに沿って変化をさせるのがanimation。 装飾的アニメーションなら絶対こちらを使いたい。
  • 67. 2015 Yusuke Hirao, CC BY-ND. CSSのできる子たち ### Transition / Animation #### jQueryとCSSのアニメーションの違い アニメーションの 上書き 最終値の決定 jQuery キューの蓄積 目標値優先 CSS マージ 状態優先
  • 68. 2015 Yusuke Hirao, CC BY-ND. CSSのできる子たち ### Transition / Animation #### jQueryとCSSのアニメーションの違い http://codepen.io/YusukeHirao/pen/xGyqBj
  • 69. 2015 Yusuke Hirao, CC BY-ND. CSSのできる子たち ### Transition / Animation #### jQueryとCSSのアニメーションの違い jQuery: - キューをしっかり管理する必要がある場合 - アニメーションの終了を検知・保証して次の処理につなげる場合 CSS: - 状態変化を滑らかにしたい場合 - 単独のループアニメーションオブジェクトをつくる場合
  • 70. 2015 Yusuke Hirao, CC BY-ND. CSSのできる子たち ### vw, vh, vmin, vmax Units height: 56.25vw; vwはwindowの幅を100とした単位。 パーセント指定との違いは、 windowの"幅"基準をheightに設定できるということ。 JavaScriptを使わなくて済むのはもちろん、 padding-topのトリッキーなテクニックを使う必要もない。
  • 71. 2015 Yusuke Hirao, CC BY-ND. アジェンダ 今日話すこと === - どんなプログラムを組んだら負けなのか - CSSのできる子たち - HTMLのできる子たち - まとめ
  • 72. 2015 Yusuke Hirao, CC BY-ND. HTMLのできる子たち
  • 73. 2015 Yusuke Hirao, CC BY-ND. HTMLのできる子たち HTML === - input types - placeholder属性 - progress要素 - Form Validation
  • 74. 2015 Yusuke Hirao, CC BY-ND. HTMLのできる子たち ### input types <input type="date"> etc... HTML5の代表的機能のひとつ。 jQuery UIを使わなくてもデートピッカーがつかえる。 それぞれブラウザ対応や機能的に未熟なものが多く、 デザインのカスタマイズも難しいので、これからに期待。
  • 75. 2015 Yusuke Hirao, CC BY-ND. HTMLのできる子たち ### placeholder属性 <input placeholder="入力してください"> フォーム要素の拡張で一番嬉しかったのがコレ。 未入力の時に任意の文字を表示できる。 label要素や見出し・補足テキストの代替として利用するケースで アクセシビリティ的に問題じゃないのか、という意見もある。 使い方注意。
  • 76. 2015 Yusuke Hirao, CC BY-ND. HTMLのできる子たち ### progress要素 <progress value="90">fallback msg.</progress> HTML5の完全な新要素。新UI。 プログレスバーがJavaScriptなしで実装できる。 が、リアルタイムの進行変更などは完全にJavaScript任せに なるので、単体でのほとんど利用シーンはない。
  • 77. 2015 Yusuke Hirao, CC BY-ND. HTMLのできる子たち ### Form Validation <input required pattern="[a-z0-9_-]+"> JavaScriptなしである程度のバリデーションが実装できる。 細かい仕様と、デザインを気にしなければ (デザインはCSSの擬似クラスがいずれ解決するかも) ほぼ完結させることができる。 ※サーバサイドのバリデーションはどちらにせよ必須。
  • 78. 2015 Yusuke Hirao, CC BY-ND. アジェンダ 今日話すこと === - どんなプログラムを組んだら負けなのか - CSSのできる子たち - HTMLのできる子たち - まとめ
  • 79. 2015 Yusuke Hirao, CC BY-ND. まとめ
  • 80. 2015 Yusuke Hirao, CC BY-ND. まとめ - HTML/CSSでできる部分を探そう
  • 81. 2015 Yusuke Hirao, CC BY-ND. まとめ - HTML/CSSでできる部分を探そう - 役割をしっかりわけよう
  • 82. 2015 Yusuke Hirao, CC BY-ND. まとめ - HTML/CSSでできる部分を探そう - 役割をしっかりわけよう - プログラムを減らそう
  • 83. 2015 Yusuke Hirao, CC BY-ND. まとめ - HTML/CSSでできる部分を探そう - 役割をしっかりわけよう - プログラムを減らそう コスト削減
  • 84. 2015 Yusuke Hirao, CC BY-ND. まとめ - HTML/CSSでできる部分を探そう - 役割をしっかりわけよう - プログラムを減らそう コスト削減 時間短縮
  • 85. 2015 Yusuke Hirao, CC BY-ND. まとめ - HTML/CSSでできる部分を探そう - 役割をしっかりわけよう - プログラムを減らそう コスト削減 時間短縮帰ろう!
  • 86. 2015 Yusuke Hirao, CC BY-ND. まとめ - HTML/CSSでできる部分を探そう - 役割をしっかりわけよう - プログラムを減らそう コスト削減 時間短縮帰ろう! 飲みに行こう!
  • 87. 2015 Yusuke Hirao, CC BY-ND. まとめ 参考サイト Can I use http://caniuse.com/