SlideShare a Scribd company logo
1 of 20
Download to read offline
非エンジニア*1が1ヶ月でPHPと
LARAVELのCRUD*2サイトを作るまで
2019/12/12(木) 表参道Web勉強会
Ruka Menda
画像は公式サイトから拝借しています。
用語の説明
1. 非エンジニア・・・IT系の会社(というか、もしやWeb系会
社だけ?もしくは私の前の職場だけ??)における、エンジ
ニア以外の職種の人(営業etc.)の人のこと。時に彼らが自
身のことを自 気味に「非エンジニア」と自称することも。
2. CRUD・・・クラッドと読む。それぞれCreate, Read, Update,
Deleteを意味し、これらを実装したサイト=ブラウザからの
動作により、データベースに対してこの4つの情報操作全て
が実行可能であるサイトのことを指す(詳細は後述)。
発表者について -経歴
• 北海道出身
• 2015年卒(大卒)→新卒で医療機器メーカーへ就職(営業)
• 2017年:海外へボランティアへ
• 2018年:Web系の会社Pへ入社(営業)
• 2019年11月はじめ:とあるきっかけで「プログラミングの勉強を本気でやろう、キャリアチェンジしよ
う!」と思い立ち、PHPの勉強を始める。
• 同月中旬:P社を休職。このころに掲示板サイトの完成(CRUD機能あり。PHP フレームワークなし)
• 同月下旬:P社を正式に退職。このころに口コミサイトの完成(CRUDのうちCR + ログイン機能 PHP
フレームワークはLaravel)
本LTの目的
• 転職活動
• ここ1ヶ月のプログラミング学習の成果報告
• サーバーサイドプログラミング初学者が抑え
ておくべき(?)知識の紹介 ※アペンディ
クスにて
成果物1 -掲示板
• サイト名:掲示板
• コンセプト:CRUD機能を網羅した掲示板
• 機能:投稿(Create)、読込(Read)、編集
(Update)、削除(Delete)
• URL: https://maysite.herokuapp.com/index.php
• ソースコード: https://gitlab.com/ruka04/bbc/tree/
div14
• 使用言語/フレームワーク: PHP / (なし)
• Webサーバ: Apache
• データベース(RDBMS): MySQL
成果物2 -口コミサイト
• サイト名:料理本おすすめサイト Myレシピブック
• コンセプト:料理系の本の口コミ×「作ったよ」コメン
ト(=クッ○パットのつくれぽ、もしくはインスタでの
料理自慢的な投稿と同義)
• 機能:投稿(Create)、読込(Read)、ログイン認証
• URL: https://lit-springs-31811.herokuapp.com/home
• ソースコード: https://github.com/lukamenda26/MyRecipeBooks
• 使用言語/フレームワーク: PHP / Laravel5.5, JavaScript /Vue.js
• Webサーバ: Nginx *公開サイトはApache
• データベース(RDBMS): MySQL
• その他:開発環境にDocker (Laradock)を、モジュール管理
にLaravel Mixを使用
成果物の作成を通じて学んだ
こと・苦労したこと
• PHPの関数
• クラスの利用(クラス作成、インスタンス作成、メ
ソッドの利用、継承)
• CRUD *2
• PDOの利用 *3
• MySQLの利用、コマンドからのRDBM操作、データ
ベースの概念理解 *4
• データベース設計(ER図の作成)
• Heroku (https://dashboard.heroku.com)を利用したサ
イト公開方法 *5
• Laravel フレームワークの利用方法
• Dockerを利用した開発環境の構築方法
• MVCモデルへの理解 *6
• 画像の挿入(え、file()関数って、出力結果配列な
の・・・?で何回もハマったり)
• ORマッピング&RDB利用時のN+1問題→Eager loader
で対処可能
• フロントエンドフレームワークとの併用、Webpack
の活用
• Gitでのソースコード管理方法、およびGithub, GitLab
の利用方法
今後やりたいこと
• Laravelへのより深い理解
• AWSの勉強(DBの複数台構成とコードの関係など)
• Javaの学習(静的型付け言語の学習)
• ポートフォリオサイトの作成(WordPressの使用を想
定)
成長のための3原則(プログ
ラミングに限らず)
1. 本人の適正・才能(生まれ持った個性)
2. 努力
3. メンター
1はなんともならない、でも2と3は自
力でなんとかできる!!!
お仕事をご紹介ください!
ご連絡は、お手数おかけいたしますが「compass」→本イベン
トの参加者一覧→「Ruka」をお探しいただき、そこから
Facebookアカウントへ→メッセンジャーよりお問い合わせく
ださい!(Facebookは滅多にアクセスしないので、友達申請
などではなくメッセンジャーでご連絡をお願いします)
 資料に間違い(私が勘違いしている部分など)などあれば
指摘していただけるとありがたいですが、単なる 謗中傷は
傷つくのでやめてください・・・。
フクロウの写真が目印です。
就業先は決まりました。副業としてもしお手伝いで
きることがもしあれば、何卒よろしくお願いいたし
ます。
アペンディクス
概念の説明や
おすすめの書籍など
*2 CRUD
• 右図のようなER図で示せるデータベース
の情報群に対し以下の操作をするこ
と。
• Create(データの生成)INSERT tableA
into dataB;
• Read(データの取得)SELECT hoge
FROM tableA
• Update(データの更新)UPDATE
tableA SET price=1000 where id=1;
• Delete(データの削除)DELETE FROM
tableA where id=1;
画像参照元:https://www.mysql.com/common/
images/products/
MySQL_Workbench_Visual_Design_Windows.gif
*3 PDO
• PDO = PHP Data Object = PHPからデータベースに接続して行うメ
ソッドをまとめたクラス。
• メリット1:ドライバ(データベースを制御する機能)を切り替
えれば、MySQLだけでなくPostgreSQL等他のDBMSも複数操作可
能。ドライバはアプリケーションとDBMSの間の抽象レイヤ(抽
象=同じような機能や情報がまとまっている、レイヤ=層)とし
て存在しているため、このような利用が可能となる。
• メリット2:セキュリティの向上(プリペアメントステートメン
ト、htmlspecialchars関数の利用)
参考:「PHP7+MariaDB/MySQLマスターブック」pp218
// create.php
$sql_cg = "INSERT INTO posts (name, comment,
postdate, image, imgsize) VALUES
( :name, :comment, :postdate, :image, :imgsize
)";
// dbconnect.php
$stmh = $pdo->prepare($sql);
$stmh->bindValue(':name', $nm,
PDO::PARAM_STR );
$stmh->bindValue(':comment', $cm,
PDO::PARAM_STR );
$stmh->bindValue(':postdate', $tm,
PDO::PARAM_STR );
$stmh->bindValue(':image', $ip,
PDO::PARAM_STR );
$stmh->bindValue(':imgsize', $is[3],
PDO::PARAM_STR );
$stmh->execute();
// controller.php
<p>
<!-- 投稿日時 -->
<span><?=htmlspecialchars($value['postdate'],
ENT_QUOTES)?> JST. </span>
<!-- 名前 -->
<span><?=htmlspecialchars($value['name'],
ENT_QUOTES)?> さんからの投稿:</span>
</p>
<p>
<!-- テキスト -->
<span><?
=htmlspecialchars($value['comment'], ENT_QUOTES)?
></span>
</p>
プリペアメントステートメントの
利用(名前付きプレースホルダ)
・・・SQLインジェクション(アプリケーションからのSQL指示
を上書きし、本来の意図と異なるデータベース操作を行うこと
で、個人情報などの機密情報の取得などを狙う攻撃)の防止
htmlspecialchars関数の利用
・・・変数内に含まれる可能性のあるHTMLタグを無効化し、クロス
サイトスクリプティング(悪意あるスクリプトを対象のサイトに注入
し、そのサイトを閲覧した人がそのスクリプトのリンクを開くよう仕
向ける→開くと悪意ある別サイトに飛ぶように)の防止
PDO -成果物1(掲示板)での利用例
参照元:下記ソースコード(掲示板)です!
https://gitlab.com/ruka04/bbc/tree/div14
*4 データベース
• DB = Database = コンピュータ上で扱う情報の集合。大抵は
DBMSを指している。
• DBMS = Database Management System = データベースを構築し扱
うためのソフトウェア。ex. MySQL, PostgreSQL, OracleDatabase,
Amazon Aurora etc.
• RDBMS = Relational Database Management System = リレーショナ
ル・データベース(複数の表とそれらの関係を定義)を扱う
DBMS
• Cf. RDS = (Amazon) Relational Database Service = AWSの登録商標。
AWS上でDBMSを容易にセットアップ・運用・スケーリングでき
る(らしい)マネージド型システム。https://aws.amazon.com/jp/rds/
参考:「プロになるためのWeb技術入門」pp135,136 *RDSを除く
*5 HEROKU
• 無料でWebサイトを一般公開することが可能。ただし利用に際して、いくつ
か気をつけるべき点あり。
• MySQLを利用する場合は、アドオンに「ClearDB」の指定(herokuへ要クレ
ジットカード情報登録)と、「MySQL Workbench」というアプリをPCにイン
ストールする必要がある(後者はなくてもいけるかも・・・)。
• Laravelでは画像投稿時に取得した画像データを storage/app/public/images に保
存→ public/images へのエイリアスを設定して画像表示 という仕組みを推奨
しているが、herokuだとそれができない(画像が表示されない)。ので、画
像をフォルダに保存をやめて、バイナリデータを直接データベースに書き込
む仕様に変更した(ので、実はGithubに公開しているソースコードとheroku
に公開しているサイトのそれは、画像取得部分の関数が違うのです・・・!)
// app/Services/MakePostService.php
// 本の名前
if(!empty($req->img_pass)) {
$make->img_pass = $req->img_pass-
>storeAs('public/images', 'IMG_'.$req-
>id . '.jpg');
} else {
$make->img_pass = "public/
images/NoImage.png";
}
// app/Http/Controllers/
PhotosController.php
// 本の名前
if(!empty($request->img_pass)) {
// heroku用に編集:受け取った画像データ
をbase64でエンコード
// $image =
base64_encode(file_get_contents($reque
st->image->getRealPath()));
$image =
base64_encode(file_get_contents($reque
st->img_pass));
// $make->img_pass =
$request->img_pass->storeAs('public/
images', 'IMG_'.$request->id .
'.jpg');
$make->img_pass = $image;
} else {
$make->img_pass =
base64_encode(file_get_contents("image
s/NoImage.png"));
}
// app/Http/Controllers/
MakePostController.php
public function confirm(Make $make)
{
return view('photos/confirm', [
   // 省略    
'img_pass' =>
str_replace('public/', 'storage/',
$make->img_pass),
]);
}
Github上のコード
https://github.com/lukamenda26/MyRecipeBooks
公開中サイト(Heroku)のコード
https://lit-springs-31811.herokuapp.com/home
・・・ん?ていうか対象ファイル違くない?
*6 MVCモデル
• まずはデザインとロジックの分離
• デザイン=画面表示(出力)=View
• ロジック=処理(DBMSデータ操
作、値の判定 など、当該アプリ固
有の処理)=ビジネスロジック=
Model
• ではModelの処理結果に応じてView
を変える時は?画面を遷移する時
は?誰がその振り分けを判断する?
→これを担うのがController
画像は下記サイトからお借りしました。
https://hackernoon.com/thinking-in-redux-when-all-
youve-known-is-mvc-c78a74d35133
MVCの概念理解およびサイト構築時の分離方法については、
書籍「プロになるためのWeb技術入門」pp183 219 がとて
もわかりやすいです。
Before
MVC無理解で構築すると・・・
FAT CONTROLLER
• Controllerにたくさんの処理を書き、Controllerにビジネスロジックの実行
からViewの振り分けまで、マルチタスクを背負わせること→プログラミン
グの世界ではよろしくない事態(メンテナンスがしづらくなるなど)
• 今回は、Service層なるものを新たに作成し、controllerにたくさん書いてい
た処理をそのサービス層へ移行することで対処しました(herokuで公開し
ているサイトはまだ修正できておらず、fat controllerのままです・・・)
Model Controller View
After
Model Controller ViewService
参考書籍
• 小森裕介『「プロになるためのWeb技術入門」 ――なぜ、あなたはWebシステムを開
発できないのか』、技術評論社、2010年、https://www.amazon.co.jp/dp/4774142352/
ref=cm_sw_em_r_mt_dp_U_jCS6DbQRER8YC
• 永田順伸『PHP7+MariaDB/MySQLマスターブック』、マイナビ、2018年、https://
www.amazon.co.jp/dp/4839962340/ref=cm_sw_em_r_mt_dp_U_QES6DbCW523QV
• 竹澤有貴他『PHPフレームワーク Laravel Webアプリケーション開発 バージョン
5.5 LTS対応』、ソシム、2018年、https://www.amazon.co.jp/dp/4802611846/
ref=cm_sw_em_r_mt_dp_U_YGS6DbYK27VW6
• mio『基礎から学ぶ Vue.js 』、シーアンドアール研究所、2018年、https://
www.amazon.co.jp/dp/4863542453/ref=cm_sw_em_r_mt_dp_U_6IS6DbRR49SF0

More Related Content

What's hot

ザ・ドキュメント~うまくいかないNoSQL~
ザ・ドキュメント~うまくいかないNoSQL~ザ・ドキュメント~うまくいかないNoSQL~
ザ・ドキュメント~うまくいかないNoSQL~Akihiro Kuwano
 
WordPressと外部APIとの連携
WordPressと外部APIとの連携WordPressと外部APIとの連携
WordPressと外部APIとの連携Hidekazu Ishikawa
 
Railsエンジニアのためのウェブセキュリティ入門
Railsエンジニアのためのウェブセキュリティ入門Railsエンジニアのためのウェブセキュリティ入門
Railsエンジニアのためのウェブセキュリティ入門Hiroshi Tokumaru
 
Djangoによるスマホアプリバックエンドの実装
Djangoによるスマホアプリバックエンドの実装Djangoによるスマホアプリバックエンドの実装
Djangoによるスマホアプリバックエンドの実装Nakazawa Yuichi
 
脱コピペ!デザイナーにもわかるPHPとWP_Query
脱コピペ!デザイナーにもわかるPHPとWP_Query脱コピペ!デザイナーにもわかるPHPとWP_Query
脱コピペ!デザイナーにもわかるPHPとWP_QueryHidekazu Ishikawa
 
やはりお前らのMTMLは間違っている!
やはりお前らのMTMLは間違っている!やはりお前らのMTMLは間違っている!
やはりお前らのMTMLは間違っている!純生 野田
 
MT meets PHP - PHP conference Kansai 2013
MT meets PHP - PHP conference Kansai 2013MT meets PHP - PHP conference Kansai 2013
MT meets PHP - PHP conference Kansai 2013純生 野田
 
徳丸本ができるまで
徳丸本ができるまで徳丸本ができるまで
徳丸本ができるまでHiroshi Tokumaru
 
MongoDBのはじめての運用テキスト
MongoDBのはじめての運用テキストMongoDBのはじめての運用テキスト
MongoDBのはじめての運用テキストAkihiro Kuwano
 
よろしい、ならばMicro-ORMだ
よろしい、ならばMicro-ORMだよろしい、ならばMicro-ORMだ
よろしい、ならばMicro-ORMだNarami Kiyokura
 
MongoDBのアレをアレする
MongoDBのアレをアレするMongoDBのアレをアレする
MongoDBのアレをアレするAkihiro Kuwano
 
徳丸本に学ぶ 安全なPHPアプリ開発の鉄則2011
徳丸本に学ぶ 安全なPHPアプリ開発の鉄則2011徳丸本に学ぶ 安全なPHPアプリ開発の鉄則2011
徳丸本に学ぶ 安全なPHPアプリ開発の鉄則2011Hiroshi Tokumaru
 
⑲jQueryをおぼえよう!その5
⑲jQueryをおぼえよう!その5⑲jQueryをおぼえよう!その5
⑲jQueryをおぼえよう!その5Nishida Kansuke
 
お見合いで趣味を聞かれたときに 「IoTとビッグデータを少々」と答えたいSEが読む資料
お見合いで趣味を聞かれたときに 「IoTとビッグデータを少々」と答えたいSEが読む資料お見合いで趣味を聞かれたときに 「IoTとビッグデータを少々」と答えたいSEが読む資料
お見合いで趣味を聞かれたときに 「IoTとビッグデータを少々」と答えたいSEが読む資料Monta Yashi
 
Native x Webでいいとこどり開発 ~ピグトーク~
Native x Webでいいとこどり開発 ~ピグトーク~Native x Webでいいとこどり開発 ~ピグトーク~
Native x Webでいいとこどり開発 ~ピグトーク~Kazunari Hara
 
owasp_evening_okinawa_7_owasp_top_10-2017_injection
owasp_evening_okinawa_7_owasp_top_10-2017_injectionowasp_evening_okinawa_7_owasp_top_10-2017_injection
owasp_evening_okinawa_7_owasp_top_10-2017_injectiontobaru_yuta
 
MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜
MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜
MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜Takahiro Inoue
 
アクセスプラン(実行計画)の読み方入門
アクセスプラン(実行計画)の読み方入門アクセスプラン(実行計画)の読み方入門
アクセスプラン(実行計画)の読み方入門Akira Shimosako
 

What's hot (20)

ザ・ドキュメント~うまくいかないNoSQL~
ザ・ドキュメント~うまくいかないNoSQL~ザ・ドキュメント~うまくいかないNoSQL~
ザ・ドキュメント~うまくいかないNoSQL~
 
WordPressと外部APIとの連携
WordPressと外部APIとの連携WordPressと外部APIとの連携
WordPressと外部APIとの連携
 
Railsエンジニアのためのウェブセキュリティ入門
Railsエンジニアのためのウェブセキュリティ入門Railsエンジニアのためのウェブセキュリティ入門
Railsエンジニアのためのウェブセキュリティ入門
 
Djangoによるスマホアプリバックエンドの実装
Djangoによるスマホアプリバックエンドの実装Djangoによるスマホアプリバックエンドの実装
Djangoによるスマホアプリバックエンドの実装
 
脱コピペ!デザイナーにもわかるPHPとWP_Query
脱コピペ!デザイナーにもわかるPHPとWP_Query脱コピペ!デザイナーにもわかるPHPとWP_Query
脱コピペ!デザイナーにもわかるPHPとWP_Query
 
やはりお前らのMTMLは間違っている!
やはりお前らのMTMLは間違っている!やはりお前らのMTMLは間違っている!
やはりお前らのMTMLは間違っている!
 
MT meets PHP - PHP conference Kansai 2013
MT meets PHP - PHP conference Kansai 2013MT meets PHP - PHP conference Kansai 2013
MT meets PHP - PHP conference Kansai 2013
 
Inside Movable Type
Inside Movable TypeInside Movable Type
Inside Movable Type
 
徳丸本ができるまで
徳丸本ができるまで徳丸本ができるまで
徳丸本ができるまで
 
MongoDBのはじめての運用テキスト
MongoDBのはじめての運用テキストMongoDBのはじめての運用テキスト
MongoDBのはじめての運用テキスト
 
よろしい、ならばMicro-ORMだ
よろしい、ならばMicro-ORMだよろしい、ならばMicro-ORMだ
よろしい、ならばMicro-ORMだ
 
MongoDBのアレをアレする
MongoDBのアレをアレするMongoDBのアレをアレする
MongoDBのアレをアレする
 
徳丸本に学ぶ 安全なPHPアプリ開発の鉄則2011
徳丸本に学ぶ 安全なPHPアプリ開発の鉄則2011徳丸本に学ぶ 安全なPHPアプリ開発の鉄則2011
徳丸本に学ぶ 安全なPHPアプリ開発の鉄則2011
 
⑲jQueryをおぼえよう!その5
⑲jQueryをおぼえよう!その5⑲jQueryをおぼえよう!その5
⑲jQueryをおぼえよう!その5
 
お見合いで趣味を聞かれたときに 「IoTとビッグデータを少々」と答えたいSEが読む資料
お見合いで趣味を聞かれたときに 「IoTとビッグデータを少々」と答えたいSEが読む資料お見合いで趣味を聞かれたときに 「IoTとビッグデータを少々」と答えたいSEが読む資料
お見合いで趣味を聞かれたときに 「IoTとビッグデータを少々」と答えたいSEが読む資料
 
Vue.js で XSS
Vue.js で XSSVue.js で XSS
Vue.js で XSS
 
Native x Webでいいとこどり開発 ~ピグトーク~
Native x Webでいいとこどり開発 ~ピグトーク~Native x Webでいいとこどり開発 ~ピグトーク~
Native x Webでいいとこどり開発 ~ピグトーク~
 
owasp_evening_okinawa_7_owasp_top_10-2017_injection
owasp_evening_okinawa_7_owasp_top_10-2017_injectionowasp_evening_okinawa_7_owasp_top_10-2017_injection
owasp_evening_okinawa_7_owasp_top_10-2017_injection
 
MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜
MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜
MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜
 
アクセスプラン(実行計画)の読み方入門
アクセスプラン(実行計画)の読み方入門アクセスプラン(実行計画)の読み方入門
アクセスプラン(実行計画)の読み方入門
 

Similar to Ruka 20191212

Zend Frameworkで始める携帯サイト
Zend Frameworkで始める携帯サイトZend Frameworkで始める携帯サイト
Zend Frameworkで始める携帯サイト清水樹
 
13016 n分で作るtype scriptでnodejs
13016 n分で作るtype scriptでnodejs13016 n分で作るtype scriptでnodejs
13016 n分で作るtype scriptでnodejsTakayoshi Tanaka
 
文字コードの脆弱性はこの3年間でどの程度対策されたか?
文字コードの脆弱性はこの3年間でどの程度対策されたか?文字コードの脆弱性はこの3年間でどの程度対策されたか?
文字コードの脆弱性はこの3年間でどの程度対策されたか?Hiroshi Tokumaru
 
Redmineosaka 20 talk_crosspoints
Redmineosaka 20 talk_crosspointsRedmineosaka 20 talk_crosspoints
Redmineosaka 20 talk_crosspointsShinji Tamura
 
Microsoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスド
Microsoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスドMicrosoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスド
Microsoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスドKazumi Hirose
 
最低限知っておきたい Webセキュリティーについて@MT関西
最低限知っておきたい Webセキュリティーについて@MT関西最低限知っておきたい Webセキュリティーについて@MT関西
最低限知っておきたい Webセキュリティーについて@MT関西Masayuki Abe
 
データマイニング+WEB勉強会資料第6回
データマイニング+WEB勉強会資料第6回データマイニング+WEB勉強会資料第6回
データマイニング+WEB勉強会資料第6回Naoyuki Yamada
 
CodeIgniterによるPhwittr
CodeIgniterによるPhwittrCodeIgniterによるPhwittr
CodeIgniterによるPhwittrkenjis
 
第2回品川Redmine勉強会(日本語全文検索)
第2回品川Redmine勉強会(日本語全文検索)第2回品川Redmine勉強会(日本語全文検索)
第2回品川Redmine勉強会(日本語全文検索)Masanori Machii
 
シラサギハンズオン 東京
シラサギハンズオン 東京シラサギハンズオン 東京
シラサギハンズオン 東京Yu Ito
 
Aerospike xdr (Cross Datacenter Replication)
Aerospike xdr (Cross Datacenter Replication)Aerospike xdr (Cross Datacenter Replication)
Aerospike xdr (Cross Datacenter Replication)Makoto Uehara
 
Rが苦手な人にもRを使って頂くために~RcommanderとRook~
Rが苦手な人にもRを使って頂くために~RcommanderとRook~Rが苦手な人にもRを使って頂くために~RcommanderとRook~
Rが苦手な人にもRを使って頂くために~RcommanderとRook~Kazuya Wada
 
My sql casual_in_fukuoka_vol1
My sql casual_in_fukuoka_vol1My sql casual_in_fukuoka_vol1
My sql casual_in_fukuoka_vol1Makoto Haruyama
 
Inside mobage platform
Inside mobage platformInside mobage platform
Inside mobage platformToru Yamaguchi
 
20140612_Docker上でCloudStackを動かしてみる!!
20140612_Docker上でCloudStackを動かしてみる!!20140612_Docker上でCloudStackを動かしてみる!!
20140612_Docker上でCloudStackを動かしてみる!!Midori Oge
 
Spring Framework / Boot / Data 徹底活用 〜Spring Data Redis 編〜
Spring Framework / Boot / Data 徹底活用  〜Spring Data Redis 編〜Spring Framework / Boot / Data 徹底活用  〜Spring Data Redis 編〜
Spring Framework / Boot / Data 徹底活用 〜Spring Data Redis 編〜Naohiro Yoshida
 
zozotown real time linkage infrastructure
zozotown real time linkage infrastructurezozotown real time linkage infrastructure
zozotown real time linkage infrastructureKeisukeTaniguchi2
 
シラサギハンズオン 大阪
シラサギハンズオン 大阪シラサギハンズオン 大阪
シラサギハンズオン 大阪Yu Ito
 
Building React, Flutter and Blazor development and debugging environment with...
Building React, Flutter and Blazor development and debugging environment with...Building React, Flutter and Blazor development and debugging environment with...
Building React, Flutter and Blazor development and debugging environment with...Shotaro Suzuki
 

Similar to Ruka 20191212 (20)

Zend Frameworkで始める携帯サイト
Zend Frameworkで始める携帯サイトZend Frameworkで始める携帯サイト
Zend Frameworkで始める携帯サイト
 
13016 n分で作るtype scriptでnodejs
13016 n分で作るtype scriptでnodejs13016 n分で作るtype scriptでnodejs
13016 n分で作るtype scriptでnodejs
 
文字コードの脆弱性はこの3年間でどの程度対策されたか?
文字コードの脆弱性はこの3年間でどの程度対策されたか?文字コードの脆弱性はこの3年間でどの程度対策されたか?
文字コードの脆弱性はこの3年間でどの程度対策されたか?
 
Redmineosaka 20 talk_crosspoints
Redmineosaka 20 talk_crosspointsRedmineosaka 20 talk_crosspoints
Redmineosaka 20 talk_crosspoints
 
Microsoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスド
Microsoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスドMicrosoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスド
Microsoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスド
 
最低限知っておきたい Webセキュリティーについて@MT関西
最低限知っておきたい Webセキュリティーについて@MT関西最低限知っておきたい Webセキュリティーについて@MT関西
最低限知っておきたい Webセキュリティーについて@MT関西
 
データマイニング+WEB勉強会資料第6回
データマイニング+WEB勉強会資料第6回データマイニング+WEB勉強会資料第6回
データマイニング+WEB勉強会資料第6回
 
CodeIgniterによるPhwittr
CodeIgniterによるPhwittrCodeIgniterによるPhwittr
CodeIgniterによるPhwittr
 
第2回品川Redmine勉強会(日本語全文検索)
第2回品川Redmine勉強会(日本語全文検索)第2回品川Redmine勉強会(日本語全文検索)
第2回品川Redmine勉強会(日本語全文検索)
 
シラサギハンズオン 東京
シラサギハンズオン 東京シラサギハンズオン 東京
シラサギハンズオン 東京
 
Aerospike xdr (Cross Datacenter Replication)
Aerospike xdr (Cross Datacenter Replication)Aerospike xdr (Cross Datacenter Replication)
Aerospike xdr (Cross Datacenter Replication)
 
Rが苦手な人にもRを使って頂くために~RcommanderとRook~
Rが苦手な人にもRを使って頂くために~RcommanderとRook~Rが苦手な人にもRを使って頂くために~RcommanderとRook~
Rが苦手な人にもRを使って頂くために~RcommanderとRook~
 
My sql casual_in_fukuoka_vol1
My sql casual_in_fukuoka_vol1My sql casual_in_fukuoka_vol1
My sql casual_in_fukuoka_vol1
 
Inside mobage platform
Inside mobage platformInside mobage platform
Inside mobage platform
 
データベース定義書とER図【勉強会資料】
データベース定義書とER図【勉強会資料】 データベース定義書とER図【勉強会資料】
データベース定義書とER図【勉強会資料】
 
20140612_Docker上でCloudStackを動かしてみる!!
20140612_Docker上でCloudStackを動かしてみる!!20140612_Docker上でCloudStackを動かしてみる!!
20140612_Docker上でCloudStackを動かしてみる!!
 
Spring Framework / Boot / Data 徹底活用 〜Spring Data Redis 編〜
Spring Framework / Boot / Data 徹底活用  〜Spring Data Redis 編〜Spring Framework / Boot / Data 徹底活用  〜Spring Data Redis 編〜
Spring Framework / Boot / Data 徹底活用 〜Spring Data Redis 編〜
 
zozotown real time linkage infrastructure
zozotown real time linkage infrastructurezozotown real time linkage infrastructure
zozotown real time linkage infrastructure
 
シラサギハンズオン 大阪
シラサギハンズオン 大阪シラサギハンズオン 大阪
シラサギハンズオン 大阪
 
Building React, Flutter and Blazor development and debugging environment with...
Building React, Flutter and Blazor development and debugging environment with...Building React, Flutter and Blazor development and debugging environment with...
Building React, Flutter and Blazor development and debugging environment with...
 

Ruka 20191212