SlideShare a Scribd company logo
1 of 64
Download to read offline
「新しい」を生み出すための
Webアプリ開発とその周辺
       YAPC::Asia 2012
  Yusuke Wada a.k.a. yusukebe
0. イントロダクション
自己紹介
• 和田裕介 1981/12/23 生
• 慶応義塾大学政策メディア研究科修了
• 株式会社ワディット代表取締役社長
• 株式会社オモロキ取締役
0. イントロダクション
     問いかけ
PerlでWebアプリを
   作りたいって?
 Perlで「新しい」Webアプリをつくりたい




  HowだけではなくWhatも大切だよね




企画を含めてスモールスタート時の開発ノウハウ
対象サービス規模
• スタートアップから小∼中規模
• 月間1000万PV+αまで
• 「量は質に転化する」
• 大規模サービスと小規模だとつくり方
 が大幅に違う

小さな規模のアプリを効率よく開発し検証していこう
対象オーディエンス
• 日曜大工的にWebアプリをつくりたい人
• 少人数によるスタートアッププロジェクト
• 「Perlを学んで何をしよう...?」
• 企画/開発の人
アジェンダ
1. 企画

2. 事例その1

3. 開発

4. サービスのスケール

5. 事例その2
               http://bokete.jp
1. さぁ何をつくろう
1. さぁ何をつくろう
 企画にもプロセスがある
哲学
        個々人が持つ変わらない思い
                 料理は楽しい
                                    cookpadの例



アイデア
        哲学をかなえる具体的なアイデア
         レシピを共有、手順を紹介できる、つくれぽ ...



 テーマ
        勝負する領域
             料理についてのCGMサービス



コンセプト
        大枠。一言で言い表す
          ユーザーがレシピを共有できるサービス



デザイン
        見た目に限らないディテール
         料理写真をフューチャする、カテゴリ分け ...
企画のプロセス
• いいサービスはプロセスが一気通貫
 している

• 必ずしも順番通りじゃなくてもよい
• 人に紹介する時に有効
リスクを検証する
そこに潜むリスク
• 技術リスク
• スキルリスク    努力で解決する

• リソースリスク     回避する
             あきらめる

• 政治リスク
• 法的リスク
sandboxディレクトリで遊ぶ

• /work/myapp/sandbox
• 技術リスク、スキルリスクの検証
• 単一スクリプトで結果が面白いか?
• 例 : Web APIの利用
何をつくるか
• スタートアップにおいて「何」が大事
• 企画のプロセスが一気通貫するように
• リスクを検証する
2. 事例その1
YourAVHost
• 2007/12/27 リリース
• 現在 1,000万PV/月
• linode 2G x 1
哲学         エロ動画を試聴したい、良ければ買おう




アイデア    エログの情報を元に騙しリンクなしの動画キュレーション




 テーマ           無料エロ動画紹介サービス




コンセプト   AV女優名別などで探せて騙されず動画が見れるエロサイト




デザイン     AV女優・ジャンルタグの表示、複数動画サイトへの対応
Google Blog検索、Twitter検索から
           エログを抽出



エログの中から動画共有サイトのURLを取得




   動画共有サイトの情報を解析




    カテゴライズしてDBに保存
自動キュレーション
• システム運用だけで、コンテンツ運用
 がいらない

• 賢いバッチ処理の上、バックエンドで
 キャッシュを使う

          企画が一気通貫しているので
          サイトの方向性がぶれない
         機能追加もほとんどしていない
1. さぁ何をつくろう
    3. いよいよ開発
Webアプリを構成する要素

• ルーティング
• テンプレート
            WAF+αで実装
• モデルへの接続
• セッション管理
• バリデーション
WAF
Web
Application
Framework
WAF選定
• Catalyst
• Mojolicious    依存が極力少ないもの
                  インストールが速い

• Dancer        フルスタックの必要はない
                 (Catalyst+DBIC)
• Amon2         開発している人が複数いる


• 自作、その他
Mojolicious
• Perlの標準モジュールだけに依存
 • HTTPのreq/resオブジェクトまで自作
• 使わない機能があるけれどポータブル
枯れつつある技術を使う
• DBIx::Skinny/Teng as O/R Mapper
• Mouse as Class Builder
• MySQL as Database
• Memcached as Cache Server
Modelの扱い
• O/R Mapperを継承しただけをモデルと扱
 わない

• MyApp::API or MyApp::Model のようなビ
 ジネスロジックを含むAPIをつくる

• コントローラが肥大化することを防ぐ
• ロジックの重複を避ける
ディレクトリ構造

./lib
!"" MyApp
#   !"" DB/
#   !"" DB.pm
#   !"" Model/
#   !"" Model.pm
#   !"" Role/
#   !"" Web/
#   %"" Web.pm
%"" MyApp.pm
コントローラからの呼び出し

モデルの呼び出し

$self->model('Boke')->get_recent_entries();




                        極力コントローラは書かなく
                          てよいという方向性
Validation&FillInForm
FormValidator、HTMLFillInForm の呼び出し

if($self->form('Boke')->has_error) {
    return $self->render_fill('/boke/post');
}
スタートアップには
• 既存WAF、O/R Mapperに任せてよい
• 最低限のキャッシュ
• No NoSQL!MySQLでおそらく十分
• サーバも1台∼2台でスタートできる
4. スケーリング
サービスの利用者数が増えた




      嬉しい悲鳴




悲鳴を悲鳴のまま終わらせないように




システムが処理できる能力を上げる
スケールアップとスケールアウト
スペックを上げる

              台数を増やす




  サーバー     サーバー     サーバー




 スケールアップ      スケールアウト
サービスがスケールする時

• VPSやクラウドサービスが安いのでス
 ケールアップ/アウトが容易

• マネタイズの時期かも?
• PR、お金周りなど苦手なことは他の人
 に任せることができる
5. 事例その2
2. 事例その1
bokete.jp
• 写真で一言ボケるサイト
• 株式会社オモロキで開発
• 鎌団子→企画、UI実装
• ゆーすけべー→システム
• 2008/9/16 ベータ版リリース
5.13
事故が起こった
まとめサイト効果
• ref スラッシュドット効果
• 2chまとめ+NAVERまとめによる
• 一時的なものではなく継続した
アラートヤバイ
スケールアップとスケール
   アウトを狙う
• linode 1GB x 2で運用していた
• DBのデータがメモリに乗り切らない
• ボトルネックはAppサーバとDBサーバ
 両方にあり

• ところが...
アプリが他環境で
  動かない...
   Catalyst+Pluginに大きく依存
     動かないPlugin等が多数
アプリのコードを大幅に書き換える必要が
デルタ版に向けた改修作業

• フレームワークをMojoliciousに
• O/R MapperをDBIx::Skinnyに
• 極力依存を無くす
• スケールアウトしやすい構成に
        工数約一ヶ月の孤独な戦い
レプリケーション構成
• 参照系はSlave、更新系はMaster
• DBIx::Skinny→Master
• 自作のDBIラッパー→Slave

  Master   Slave   Slave   Slave
Bokete::DBx
• DBIのラッパー
• クエリは SQL::Abstract 形式
• ArrayRef、HashRefで返却
• search、search_by_sql、single
• 適切なinflate
• join的な動きを自動でやってくれる
 • boke -> odai -> photo
DBxのキャッシュ
 • クエリから自動的にキーをつくりキャッシュ
my $key = "dbx:$table:"
    . $self->make_key( [ '*', $where, $order ] );

my $bokes = $self->dbx->search(
    'boke',
    [ $cond, ],
    [ { -desc => 'rate_sum' } ],
    {
        limit => $limit,
        offset => $offset,
        expire => 60 * 10
    }
);
キャッシュの注意
• 更新頻度によっていつexpireさせるの
 かをサービスの特性から考える

• ボケてにおいて滅多に変わらないもの
 • Photo
 • Odai
• デッドロック?に注意
はまった点
• サイドバーのキャッシュ
• 生成するまで時間がかかる
• expireした瞬間にデータ生成
 が一気に始まる

• プロセスを食いつぶしてアプリ
 が止まる
デッドロックへの対策

  キャッシュ作成中のフラグを容易
キャッシュが無くてもフラグが立っていれば
 複製しておいたキャッシュを表示させる
7/19 リリース
• さくらVPSサーバを複数台利用
• JSを含めた表示速度が2倍以上高速に
• 全体のPVも2倍近くUP
• バグがいくつかあった
システムはボケてない
iPhone版 ボケて

10月10日リリース予定

• HALO、BraveSoftと
 共同で開発

• Web APIを用意
終わりに
マーケティング
            デバイス展開

チームビルディング                    マ
                  プロモーション


まつわることはまだある
法律関係        コンテンツ運用

  デプロイ
                   ビジネスモデル
         システム運用
Webサービスのつくり方   「ぐだぐだ言ってないでコードを書けよ、ハゲ」
               Mac一つあれば…
               エディタという道具
11月末∼12月発売予定   無ければつくる
               言語習得にまつわるエピソード
               データの表現について分かった瞬間
               僕がPerlを使うことから見る言語の選択
               Blogの効用
               勉強会に飛び込む
               ライブラリという文化
               実装までにつくる「企画」の全て
               アイデアの発想法
               そこに潜むリスク
               ユースケースを書こう
               データベース設計
               クールなURI?
               Webサービスを動かすための要素
               30分、JavaScriptで作るWebサービスのモックアップ
               月額980円のさくらVPSを個人用に使い倒す
               Web APIで巨人の肩の上に立つ
               いかにして大量のおっぱい画像をダウンロードするか
               全裸で学ぶMVC事始め
               MVCのMについて
               WAFあれこれ
               テストを書こう
               イカ娘で学ぶTwitter OAuth認証
               CSS Frameworkを持つ
               Webサービス、最初の宣伝
               「普通の」サーバ構成
               運用してこそWebサービス
               Webアプリのパフォーマンスアップ作戦
               キャッシュ、キャッシュ、キャッシュ
               サービスをスケールさせる時
やり方は一つじゃない

More Related Content

What's hot

MyBatis を利用した web application 開発についてのご紹介
MyBatis を利用した web application 開発についてのご紹介  MyBatis を利用した web application 開発についてのご紹介
MyBatis を利用した web application 開発についてのご紹介 Tokuhiro Matsuno
 
Capybaraで雑にWebスクレイピング
Capybaraで雑にWebスクレイピングCapybaraで雑にWebスクレイピング
Capybaraで雑にWebスクレイピングKoji Nakamura
 
YARAIYA! Opendata with WordPress
YARAIYA!  Opendata with WordPressYARAIYA!  Opendata with WordPress
YARAIYA! Opendata with WordPressHidetaka Okamoto
 
Node.jsでサーバプログラマ デビューしよう
Node.jsでサーバプログラマ デビューしようNode.jsでサーバプログラマ デビューしよう
Node.jsでサーバプログラマ デビューしようYuusuke Takeuchi
 
React+fluxを導入した話
React+fluxを導入した話React+fluxを導入した話
React+fluxを導入した話Yuki Ishikawa
 
BACKBONE.JSによるWebアプリケーション開発について
BACKBONE.JSによるWebアプリケーション開発についてBACKBONE.JSによるWebアプリケーション開発について
BACKBONE.JSによるWebアプリケーション開発についてToshio Ehara
 
まだ DOM 操作で消耗してるの?
まだ DOM 操作で消耗してるの?まだ DOM 操作で消耗してるの?
まだ DOM 操作で消耗してるの?Yuki Ishikawa
 
webSocket通信を知らないiOSエンジニアが知っておいて損はしない(経験談的な)軽い話
webSocket通信を知らないiOSエンジニアが知っておいて損はしない(経験談的な)軽い話webSocket通信を知らないiOSエンジニアが知っておいて損はしない(経験談的な)軽い話
webSocket通信を知らないiOSエンジニアが知っておいて損はしない(経験談的な)軽い話Yuhei Miyazato
 
JAWSUG architecture-crowler
JAWSUG architecture-crowlerJAWSUG architecture-crowler
JAWSUG architecture-crowlerTakuro Sasaki
 
短期間+大規模ゲーム開発でも破綻しないHTML・SCSS
短期間+大規模ゲーム開発でも破綻しないHTML・SCSS短期間+大規模ゲーム開発でも破綻しないHTML・SCSS
短期間+大規模ゲーム開発でも破綻しないHTML・SCSSShogo Iwano
 
RailsでReact.jsを動かしてみた話
RailsでReact.jsを動かしてみた話RailsでReact.jsを動かしてみた話
RailsでReact.jsを動かしてみた話yoshioka_cb
 
Spring bootで学ぶ初めてのwebアプリ開発
Spring bootで学ぶ初めてのwebアプリ開発Spring bootで学ぶ初めてのwebアプリ開発
Spring bootで学ぶ初めてのwebアプリ開発terahide
 
SIROK技術勉強会 #1 「Reactってなんだ?」
SIROK技術勉強会 #1 「Reactってなんだ?」SIROK技術勉強会 #1 「Reactってなんだ?」
SIROK技術勉強会 #1 「Reactってなんだ?」Naoyuki Kataoka
 
Mojoliciousでつくる! Webアプリ入門
Mojoliciousでつくる! Webアプリ入門Mojoliciousでつくる! Webアプリ入門
Mojoliciousでつくる! Webアプリ入門Yusuke Wada
 
2015年GMOペパボ新卒エンジニア研修 Web開発研修イントロダクション
2015年GMOペパボ新卒エンジニア研修 Web開発研修イントロダクション2015年GMOペパボ新卒エンジニア研修 Web開発研修イントロダクション
2015年GMOペパボ新卒エンジニア研修 Web開発研修イントロダクションTakahiro Okumura
 
Rubyによるクローラー開発
Rubyによるクローラー開発Rubyによるクローラー開発
Rubyによるクローラー開発しくみ製作所
 
Webデザインの幅を広げる、jQuery【コードを記述する】 先生:保坂 庸介
Webデザインの幅を広げる、jQuery【コードを記述する】 先生:保坂 庸介Webデザインの幅を広げる、jQuery【コードを記述する】 先生:保坂 庸介
Webデザインの幅を広げる、jQuery【コードを記述する】 先生:保坂 庸介schoowebcampus
 

What's hot (20)

Learning jQuery
Learning jQueryLearning jQuery
Learning jQuery
 
MyBatis を利用した web application 開発についてのご紹介
MyBatis を利用した web application 開発についてのご紹介  MyBatis を利用した web application 開発についてのご紹介
MyBatis を利用した web application 開発についてのご紹介
 
JavaScript 研修
JavaScript 研修JavaScript 研修
JavaScript 研修
 
Capybaraで雑にWebスクレイピング
Capybaraで雑にWebスクレイピングCapybaraで雑にWebスクレイピング
Capybaraで雑にWebスクレイピング
 
YARAIYA! Opendata with WordPress
YARAIYA!  Opendata with WordPressYARAIYA!  Opendata with WordPress
YARAIYA! Opendata with WordPress
 
Node.jsでサーバプログラマ デビューしよう
Node.jsでサーバプログラマ デビューしようNode.jsでサーバプログラマ デビューしよう
Node.jsでサーバプログラマ デビューしよう
 
React+fluxを導入した話
React+fluxを導入した話React+fluxを導入した話
React+fluxを導入した話
 
gulp芸
gulp芸gulp芸
gulp芸
 
BACKBONE.JSによるWebアプリケーション開発について
BACKBONE.JSによるWebアプリケーション開発についてBACKBONE.JSによるWebアプリケーション開発について
BACKBONE.JSによるWebアプリケーション開発について
 
まだ DOM 操作で消耗してるの?
まだ DOM 操作で消耗してるの?まだ DOM 操作で消耗してるの?
まだ DOM 操作で消耗してるの?
 
webSocket通信を知らないiOSエンジニアが知っておいて損はしない(経験談的な)軽い話
webSocket通信を知らないiOSエンジニアが知っておいて損はしない(経験談的な)軽い話webSocket通信を知らないiOSエンジニアが知っておいて損はしない(経験談的な)軽い話
webSocket通信を知らないiOSエンジニアが知っておいて損はしない(経験談的な)軽い話
 
JAWSUG architecture-crowler
JAWSUG architecture-crowlerJAWSUG architecture-crowler
JAWSUG architecture-crowler
 
短期間+大規模ゲーム開発でも破綻しないHTML・SCSS
短期間+大規模ゲーム開発でも破綻しないHTML・SCSS短期間+大規模ゲーム開発でも破綻しないHTML・SCSS
短期間+大規模ゲーム開発でも破綻しないHTML・SCSS
 
RailsでReact.jsを動かしてみた話
RailsでReact.jsを動かしてみた話RailsでReact.jsを動かしてみた話
RailsでReact.jsを動かしてみた話
 
Spring bootで学ぶ初めてのwebアプリ開発
Spring bootで学ぶ初めてのwebアプリ開発Spring bootで学ぶ初めてのwebアプリ開発
Spring bootで学ぶ初めてのwebアプリ開発
 
SIROK技術勉強会 #1 「Reactってなんだ?」
SIROK技術勉強会 #1 「Reactってなんだ?」SIROK技術勉強会 #1 「Reactってなんだ?」
SIROK技術勉強会 #1 「Reactってなんだ?」
 
Mojoliciousでつくる! Webアプリ入門
Mojoliciousでつくる! Webアプリ入門Mojoliciousでつくる! Webアプリ入門
Mojoliciousでつくる! Webアプリ入門
 
2015年GMOペパボ新卒エンジニア研修 Web開発研修イントロダクション
2015年GMOペパボ新卒エンジニア研修 Web開発研修イントロダクション2015年GMOペパボ新卒エンジニア研修 Web開発研修イントロダクション
2015年GMOペパボ新卒エンジニア研修 Web開発研修イントロダクション
 
Rubyによるクローラー開発
Rubyによるクローラー開発Rubyによるクローラー開発
Rubyによるクローラー開発
 
Webデザインの幅を広げる、jQuery【コードを記述する】 先生:保坂 庸介
Webデザインの幅を広げる、jQuery【コードを記述する】 先生:保坂 庸介Webデザインの幅を広げる、jQuery【コードを記述する】 先生:保坂 庸介
Webデザインの幅を広げる、jQuery【コードを記述する】 先生:保坂 庸介
 

Viewers also liked

Node-v0.12のTLSを256倍使いこなす方法
Node-v0.12のTLSを256倍使いこなす方法Node-v0.12のTLSを256倍使いこなす方法
Node-v0.12のTLSを256倍使いこなす方法shigeki_ohtsu
 
Nodeで操るKurentoメディアサーバー ( Kurento + WebRTC + Node.js )
Nodeで操るKurentoメディアサーバー ( Kurento + WebRTC + Node.js )Nodeで操るKurentoメディアサーバー ( Kurento + WebRTC + Node.js )
Nodeで操るKurentoメディアサーバー ( Kurento + WebRTC + Node.js )mganeko
 
power-assert, mechanism and philosophy
power-assert, mechanism and philosophypower-assert, mechanism and philosophy
power-assert, mechanism and philosophyTakuto Wada
 

Viewers also liked (7)

Node.jsでブラウザメッセンジャー
Node.jsでブラウザメッセンジャーNode.jsでブラウザメッセンジャー
Node.jsでブラウザメッセンジャー
 
Real-time Bus Location System using by node.js
Real-time Bus Location System using by node.jsReal-time Bus Location System using by node.js
Real-time Bus Location System using by node.js
 
Lev
LevLev
Lev
 
NodeFest2014 - Transpiler
NodeFest2014 - TranspilerNodeFest2014 - Transpiler
NodeFest2014 - Transpiler
 
Node-v0.12のTLSを256倍使いこなす方法
Node-v0.12のTLSを256倍使いこなす方法Node-v0.12のTLSを256倍使いこなす方法
Node-v0.12のTLSを256倍使いこなす方法
 
Nodeで操るKurentoメディアサーバー ( Kurento + WebRTC + Node.js )
Nodeで操るKurentoメディアサーバー ( Kurento + WebRTC + Node.js )Nodeで操るKurentoメディアサーバー ( Kurento + WebRTC + Node.js )
Nodeで操るKurentoメディアサーバー ( Kurento + WebRTC + Node.js )
 
power-assert, mechanism and philosophy
power-assert, mechanism and philosophypower-assert, mechanism and philosophy
power-assert, mechanism and philosophy
 

Similar to 「新しい」を生み出すためのWebアプリ開発とその周辺

スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向Tsutomu Ogasawara
 
Webフロントエンド開発の最新トレンド - HTML5, モバイル, オフライン
Webフロントエンド開発の最新トレンド - HTML5, モバイル, オフラインWebフロントエンド開発の最新トレンド - HTML5, モバイル, オフライン
Webフロントエンド開発の最新トレンド - HTML5, モバイル, オフラインShumpei Shiraishi
 
Rdbms起点で考えると見えない世界 okuyama勉強会
Rdbms起点で考えると見えない世界 okuyama勉強会Rdbms起点で考えると見えない世界 okuyama勉強会
Rdbms起点で考えると見えない世界 okuyama勉強会Masakazu Muraoka
 
サーバーレスのアーキテクチャパターンとそれぞれの実装・テストの勘所
サーバーレスのアーキテクチャパターンとそれぞれの実装・テストの勘所サーバーレスのアーキテクチャパターンとそれぞれの実装・テストの勘所
サーバーレスのアーキテクチャパターンとそれぞれの実装・テストの勘所真吾 吉田
 
2011年マイクロソフト テクノロジー振り返り~開発編~
2011年マイクロソフト テクノロジー振り返り~開発編~2011年マイクロソフト テクノロジー振り返り~開発編~
2011年マイクロソフト テクノロジー振り返り~開発編~Takeshi Shinmura
 
遅いクエリと向き合う仕組み #CybozuMeetup
遅いクエリと向き合う仕組み #CybozuMeetup遅いクエリと向き合う仕組み #CybozuMeetup
遅いクエリと向き合う仕組み #CybozuMeetupS Akai
 
Realm platform2019
Realm platform2019Realm platform2019
Realm platform2019昌桓 李
 
ブラウザだけで学ぶWebアプリ開発【デザイン編】
ブラウザだけで学ぶWebアプリ開発【デザイン編】ブラウザだけで学ぶWebアプリ開発【デザイン編】
ブラウザだけで学ぶWebアプリ開発【デザイン編】schoowebcampus
 
ゼロからのプログラミングRails講座 Codeanywhere版
ゼロからのプログラミングRails講座 Codeanywhere版ゼロからのプログラミングRails講座 Codeanywhere版
ゼロからのプログラミングRails講座 Codeanywhere版DIVE INTO CODE Corp.
 
Introduction to application architecture on asp.net mvc
Introduction to application architecture on asp.net mvcIntroduction to application architecture on asp.net mvc
Introduction to application architecture on asp.net mvcAtsushi Fukui
 
地方企業がソーシャルゲーム開発を成功させるための10のポイント
地方企業がソーシャルゲーム開発を成功させるための10のポイント地方企業がソーシャルゲーム開発を成功させるための10のポイント
地方企業がソーシャルゲーム開発を成功させるための10のポイントKentaro Matsui
 
[CTO Night & Day 2019] よくある課題を一気に解説!御社の技術レベルがアップする 2019 秋期講習 #ctonight
[CTO Night & Day 2019] よくある課題を一気に解説!御社の技術レベルがアップする 2019 秋期講習 #ctonight[CTO Night & Day 2019] よくある課題を一気に解説!御社の技術レベルがアップする 2019 秋期講習 #ctonight
[CTO Night & Day 2019] よくある課題を一気に解説!御社の技術レベルがアップする 2019 秋期講習 #ctonightAmazon Web Services Japan
 
Intalio japan special cloud workshop
Intalio japan special cloud workshopIntalio japan special cloud workshop
Intalio japan special cloud workshopDaisuke Sugai
 
WebIntentsにより拓かれる次のWeb
WebIntentsにより拓かれる次のWebWebIntentsにより拓かれる次のWeb
WebIntentsにより拓かれる次のWebKensaku Komatsu
 
20120413 nestakabaneworkshop
20120413 nestakabaneworkshop20120413 nestakabaneworkshop
20120413 nestakabaneworkshopYoichiro Sakurai
 
サーバーレスの今とこれから
サーバーレスの今とこれからサーバーレスの今とこれから
サーバーレスの今とこれから真吾 吉田
 
WordPress APIで作るモバイルアプリ
WordPress APIで作るモバイルアプリWordPress APIで作るモバイルアプリ
WordPress APIで作るモバイルアプリアシアル株式会社
 

Similar to 「新しい」を生み出すためのWebアプリ開発とその周辺 (20)

スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向
 
Tech fun rails_workshop
Tech fun rails_workshopTech fun rails_workshop
Tech fun rails_workshop
 
Webフロントエンド開発の最新トレンド - HTML5, モバイル, オフライン
Webフロントエンド開発の最新トレンド - HTML5, モバイル, オフラインWebフロントエンド開発の最新トレンド - HTML5, モバイル, オフライン
Webフロントエンド開発の最新トレンド - HTML5, モバイル, オフライン
 
Rdbms起点で考えると見えない世界 okuyama勉強会
Rdbms起点で考えると見えない世界 okuyama勉強会Rdbms起点で考えると見えない世界 okuyama勉強会
Rdbms起点で考えると見えない世界 okuyama勉強会
 
サーバーレスのアーキテクチャパターンとそれぞれの実装・テストの勘所
サーバーレスのアーキテクチャパターンとそれぞれの実装・テストの勘所サーバーレスのアーキテクチャパターンとそれぞれの実装・テストの勘所
サーバーレスのアーキテクチャパターンとそれぞれの実装・テストの勘所
 
2011年マイクロソフト テクノロジー振り返り~開発編~
2011年マイクロソフト テクノロジー振り返り~開発編~2011年マイクロソフト テクノロジー振り返り~開発編~
2011年マイクロソフト テクノロジー振り返り~開発編~
 
遅いクエリと向き合う仕組み #CybozuMeetup
遅いクエリと向き合う仕組み #CybozuMeetup遅いクエリと向き合う仕組み #CybozuMeetup
遅いクエリと向き合う仕組み #CybozuMeetup
 
Realm platform2019
Realm platform2019Realm platform2019
Realm platform2019
 
ブラウザだけで学ぶWebアプリ開発【デザイン編】
ブラウザだけで学ぶWebアプリ開発【デザイン編】ブラウザだけで学ぶWebアプリ開発【デザイン編】
ブラウザだけで学ぶWebアプリ開発【デザイン編】
 
ゼロからのプログラミングRails講座 Codeanywhere版
ゼロからのプログラミングRails講座 Codeanywhere版ゼロからのプログラミングRails講座 Codeanywhere版
ゼロからのプログラミングRails講座 Codeanywhere版
 
Introduction to application architecture on asp.net mvc
Introduction to application architecture on asp.net mvcIntroduction to application architecture on asp.net mvc
Introduction to application architecture on asp.net mvc
 
概説 Data API v3
概説 Data API v3概説 Data API v3
概説 Data API v3
 
地方企業がソーシャルゲーム開発を成功させるための10のポイント
地方企業がソーシャルゲーム開発を成功させるための10のポイント地方企業がソーシャルゲーム開発を成功させるための10のポイント
地方企業がソーシャルゲーム開発を成功させるための10のポイント
 
[CTO Night & Day 2019] よくある課題を一気に解説!御社の技術レベルがアップする 2019 秋期講習 #ctonight
[CTO Night & Day 2019] よくある課題を一気に解説!御社の技術レベルがアップする 2019 秋期講習 #ctonight[CTO Night & Day 2019] よくある課題を一気に解説!御社の技術レベルがアップする 2019 秋期講習 #ctonight
[CTO Night & Day 2019] よくある課題を一気に解説!御社の技術レベルがアップする 2019 秋期講習 #ctonight
 
Intalio japan special cloud workshop
Intalio japan special cloud workshopIntalio japan special cloud workshop
Intalio japan special cloud workshop
 
WebIntentsにより拓かれる次のWeb
WebIntentsにより拓かれる次のWebWebIntentsにより拓かれる次のWeb
WebIntentsにより拓かれる次のWeb
 
20120413 nestakabaneworkshop
20120413 nestakabaneworkshop20120413 nestakabaneworkshop
20120413 nestakabaneworkshop
 
Force.com開発基礎
Force.com開発基礎Force.com開発基礎
Force.com開発基礎
 
サーバーレスの今とこれから
サーバーレスの今とこれからサーバーレスの今とこれから
サーバーレスの今とこれから
 
WordPress APIで作るモバイルアプリ
WordPress APIで作るモバイルアプリWordPress APIで作るモバイルアプリ
WordPress APIで作るモバイルアプリ
 

More from Yusuke Wada

僕がつくった 70個のうちの48個のWebサービス達
僕がつくった 70個のうちの48個のWebサービス達僕がつくった 70個のうちの48個のWebサービス達
僕がつくった 70個のうちの48個のWebサービス達Yusuke Wada
 
スッとGoを取り入れる
スッとGoを取り入れるスッとGoを取り入れる
スッとGoを取り入れるYusuke Wada
 
東京脱出計画中
東京脱出計画中東京脱出計画中
東京脱出計画中Yusuke Wada
 
Extreme remote working
Extreme remote workingExtreme remote working
Extreme remote workingYusuke Wada
 
Podcastを支える技術、エンジニアのためのWebメディア、そしてCPAN
Podcastを支える技術、エンジニアのためのWebメディア、そしてCPANPodcastを支える技術、エンジニアのためのWebメディア、そしてCPAN
Podcastを支える技術、エンジニアのためのWebメディア、そしてCPANYusuke Wada
 
創造のプロセスを回せ!v0.01
創造のプロセスを回せ!v0.01創造のプロセスを回せ!v0.01
創造のプロセスを回せ!v0.01Yusuke Wada
 
It's not only about "REMOTE"
It's not only about "REMOTE"It's not only about "REMOTE"
It's not only about "REMOTE"Yusuke Wada
 
事故からはじまるスケールチャンス
事故からはじまるスケールチャンス事故からはじまるスケールチャンス
事故からはじまるスケールチャンスYusuke Wada
 
Google BigQueryを使ってみた!
Google BigQueryを使ってみた!Google BigQueryを使ってみた!
Google BigQueryを使ってみた!Yusuke Wada
 
Webサービスのコンテンツパターン 或いはデータの活⽤
Webサービスのコンテンツパターン 或いはデータの活⽤Webサービスのコンテンツパターン 或いはデータの活⽤
Webサービスのコンテンツパターン 或いはデータの活⽤Yusuke Wada
 
5 minutes - YAPC::Asia Tokyo 2014
5 minutes - YAPC::Asia Tokyo 20145 minutes - YAPC::Asia Tokyo 2014
5 minutes - YAPC::Asia Tokyo 2014Yusuke Wada
 
Podcastをカジュアルに 支える技術
Podcastをカジュアルに 支える技術Podcastをカジュアルに 支える技術
Podcastをカジュアルに 支える技術Yusuke Wada
 
The master plan of scaling a web application
The master plan ofscaling a web applicationThe master plan ofscaling a web application
The master plan of scaling a web applicationYusuke Wada
 
そのWebサービスは本当に「あたりまえ」だったのか?
そのWebサービスは本当に「あたりまえ」だったのか?そのWebサービスは本当に「あたりまえ」だったのか?
そのWebサービスは本当に「あたりまえ」だったのか?Yusuke Wada
 
10 things to learn from Bokete
10 things to learn from Bokete10 things to learn from Bokete
10 things to learn from BoketeYusuke Wada
 
Inside Bokete: Web Application with Mojolicious and others
Inside Bokete:  Web Application with Mojolicious and othersInside Bokete:  Web Application with Mojolicious and others
Inside Bokete: Web Application with Mojolicious and othersYusuke Wada
 
僕らの履歴書
僕らの履歴書僕らの履歴書
僕らの履歴書Yusuke Wada
 
僕らがWebサービスをつくる5つの理由
僕らがWebサービスをつくる5つの理由僕らがWebサービスをつくる5つの理由
僕らがWebサービスをつくる5つの理由Yusuke Wada
 
僕らがつくるための 「5W」について
僕らがつくるための 「5W」について僕らがつくるための 「5W」について
僕らがつくるための 「5W」についてYusuke Wada
 
Webサービス企画のコツ
Webサービス企画のコツWebサービス企画のコツ
Webサービス企画のコツYusuke Wada
 

More from Yusuke Wada (20)

僕がつくった 70個のうちの48個のWebサービス達
僕がつくった 70個のうちの48個のWebサービス達僕がつくった 70個のうちの48個のWebサービス達
僕がつくった 70個のうちの48個のWebサービス達
 
スッとGoを取り入れる
スッとGoを取り入れるスッとGoを取り入れる
スッとGoを取り入れる
 
東京脱出計画中
東京脱出計画中東京脱出計画中
東京脱出計画中
 
Extreme remote working
Extreme remote workingExtreme remote working
Extreme remote working
 
Podcastを支える技術、エンジニアのためのWebメディア、そしてCPAN
Podcastを支える技術、エンジニアのためのWebメディア、そしてCPANPodcastを支える技術、エンジニアのためのWebメディア、そしてCPAN
Podcastを支える技術、エンジニアのためのWebメディア、そしてCPAN
 
創造のプロセスを回せ!v0.01
創造のプロセスを回せ!v0.01創造のプロセスを回せ!v0.01
創造のプロセスを回せ!v0.01
 
It's not only about "REMOTE"
It's not only about "REMOTE"It's not only about "REMOTE"
It's not only about "REMOTE"
 
事故からはじまるスケールチャンス
事故からはじまるスケールチャンス事故からはじまるスケールチャンス
事故からはじまるスケールチャンス
 
Google BigQueryを使ってみた!
Google BigQueryを使ってみた!Google BigQueryを使ってみた!
Google BigQueryを使ってみた!
 
Webサービスのコンテンツパターン 或いはデータの活⽤
Webサービスのコンテンツパターン 或いはデータの活⽤Webサービスのコンテンツパターン 或いはデータの活⽤
Webサービスのコンテンツパターン 或いはデータの活⽤
 
5 minutes - YAPC::Asia Tokyo 2014
5 minutes - YAPC::Asia Tokyo 20145 minutes - YAPC::Asia Tokyo 2014
5 minutes - YAPC::Asia Tokyo 2014
 
Podcastをカジュアルに 支える技術
Podcastをカジュアルに 支える技術Podcastをカジュアルに 支える技術
Podcastをカジュアルに 支える技術
 
The master plan of scaling a web application
The master plan ofscaling a web applicationThe master plan ofscaling a web application
The master plan of scaling a web application
 
そのWebサービスは本当に「あたりまえ」だったのか?
そのWebサービスは本当に「あたりまえ」だったのか?そのWebサービスは本当に「あたりまえ」だったのか?
そのWebサービスは本当に「あたりまえ」だったのか?
 
10 things to learn from Bokete
10 things to learn from Bokete10 things to learn from Bokete
10 things to learn from Bokete
 
Inside Bokete: Web Application with Mojolicious and others
Inside Bokete:  Web Application with Mojolicious and othersInside Bokete:  Web Application with Mojolicious and others
Inside Bokete: Web Application with Mojolicious and others
 
僕らの履歴書
僕らの履歴書僕らの履歴書
僕らの履歴書
 
僕らがWebサービスをつくる5つの理由
僕らがWebサービスをつくる5つの理由僕らがWebサービスをつくる5つの理由
僕らがWebサービスをつくる5つの理由
 
僕らがつくるための 「5W」について
僕らがつくるための 「5W」について僕らがつくるための 「5W」について
僕らがつくるための 「5W」について
 
Webサービス企画のコツ
Webサービス企画のコツWebサービス企画のコツ
Webサービス企画のコツ
 

Recently uploaded

新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdfUPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdffurutsuka
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directoryosamut
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000Shota Ito
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxAtomu Hidaka
 

Recently uploaded (9)

新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdfUPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdf
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
 

「新しい」を生み出すためのWebアプリ開発とその周辺