SlideShare une entreprise Scribd logo
1  sur  31
Télécharger pour lire hors ligne
恐怖 シェルショッカー 一号男! 
リッチー大佐@シェルショッカー日本支部 https://joind.in/12027 1
一人の男がいた。 2
同人誌を売るのが好きな、 ただのオタクだった……。 3 
←『有明』という 
それはそれで 
暗黒空間
売れ残る……。いつもいつも 4 
←刷りすぎだろ!
通販やらなきゃ…… ショッピングカート導入するか? 5 
同人作家の 
よくある悩み
既存のやつは 設置面倒なわりに、 使い勝手に満足できん!!! 6 
←お前はそんなに、 
高度な機能を 
要求するのか!? 
それはまぁ、おいといて… 
悩み苦しんだ
死ヱル神博士 (シェルがみはかせ) が現れた! 7 
さあ、お前は今日から 
我ら組織の 
幹部になるのだ! ! 
我ら組織は プログラマーの理想郷だ! おいでおいで~
その組織とは、 8 
シェルスクリプトで、世のプログラマーたちを洗脳する それはそれは、恐ろしい組織。POSIX原理主義集団。
シェルショッカーの掟 9 
1. 
命令通りに動かぬコードは、 rm -rf 。 
2. 
他言語に負けたコードは、 rm -rf 。 
3. 
任務に失敗したコードは、 rm -rf 。 
4. 
平和な環境でしか使えぬコードは、 rm -rf 。 
5. 
性善説で書かれたコードは、 rm -rf 。 
6. 
建設的に怠けぬコードは、 rm -rf 。 
7. 
遅いコードは、 rm -rf 。 
8. 
バグ・破損コードは、 rm -rf 。 
9. 
親子・兄弟プロセスも正常動作のためには、 kill -9 。
なに、bashだと! 10 
首領様はPOSIX原理主義者。 相当カッカしておられる。 
(『シェルショック』とか笑い者ではないかっ!) 
←こんなふうにな!
そして私は、 「秘密結社シェルショッカー」の リッチー大佐として、 生まれ変わった。 11 
今、ステージにいるこの人! 
こっち? いゃ、こっちか? それともこっち?
首領様 「お前の望みは、 ショッピングカートだったはず。 自ら開発し、それを使って 世界征服せよ!」 12 
ははっ、偉大なる秘密結社 シェルショッカーに栄光あれ!
早速、 『シェルショッカー日本支部』を 立ち上げた 13 
←どこだよ、それ!
恐怖の怪人(プログラム) ショッピングカート男の 製造に着手。 14 
もちろん 
シェルスクリプトで。
一週間後、ついに完成! 15 
偉大なる 
我ら組織の名前を 与えた 
シェルスクリプト製 
ショッピングカート 
という由来はヒミツだ! 
シ ェ ル シ ョ ッ カ | 
一 号 男 !
一号男の、恐るべきスペック 16 
1. 
Bourne Shell (not bash)+UNIXコマンド群で書かれて いる。 
• 
AWK, sed, grep, tr, echo, ls, join, … 
• 
ほぼPOSIXの範囲 
• 
範囲外は、curlやflock、あとはApacheくらい。 
⇒コンパイル不要 
コピーするだけでデプロイ完了 
どこでも動く(レンタル鯖ならほぼ100%)
一号男の、恐るべきスペック 17 
見覚えのあるUNIXコマンドたち 
CGIとのやりとりも、 
Cookieも、 
セッション管理も、 
ぜーんぶUNIXコマンド 
(一部の見慣れないコマンドも 
中身はAWKやsed等の 
UNIX標準コマンド) 
https://github.com/ShellShoccar-jpn/shellshoccar1
一号男の、恐るべきスペック 18 
2. 
RDB不要! データは全て、テキストファイル持ち。 
• 
商品マスターは、テキストエディタで編集可 
• 
joinコマンドは、 まさにINNER(OUTER) JOINのためのコマンド 
• 
在庫数は、商品毎にファイルサイズで管理! 
⇒RDBのインストール、 
バックアップ、リカバリー、…… 
そんなの不要! 
(コピーしておわり)
一号男の、恐るべきスペック 19 
ファイルサイズ=在庫数 
echoで在庫補充 
truncateで在庫持ち出し 
ls -lで在庫数確認 
4096バイト (バッファサイズ)以下なら、 アトミックに書き込まれる。 ↓ UNIXの素の機能を使えば 在庫数を増やす時でも ロック不要。
一号男の、恐るべきスペック 20 
3. 
他のWebページを「侵略」する。 
• 
商品紹介ページを作る機能がない。 
• 
「カゴに追加」、「レジへ行く」ボタンのパーツを提供す るのみ。 
• 
バナーのように、ボタンのHTMLコードを貼れば、 ショッピングサイトに改造完了。 
⇒秘密結社らしい『仕事』も 
ちゃんとやる。
一号男の、恐るべきスペック 21 
「カゴに入れる」 ボタン 
どー見てもWordPress ( https://richlab.org/blog/ ) 
「レジへ進む」 
ボタン
一号男の、恐るべきスペック 22 
どー見てもはてなブログ ( http://richlab.hatenablog.com/ ) 
「カゴに入れる」 
ボタン 
「レジへ進む」 
ボタン 
まぁ、 これは非実用的 なのだがな… (詳しくはブログを 読むがいい)
一言、問いたい! 23 
「購買意欲は、 ネットショップの中で芽生えるのか?」
一言、問いたい! 24 
「お前たちは 買う物が決まらないうちに、 Amazonへ行くのか?」 
買う物なしに、フラッと寄ることなど 
私にはないがな!
一言、言いたい! 25 
ショッピングサイト(CMS)内で、 
工夫を凝らすことに 
どれほどの意味があるというのか! 
購買意欲はネットショップで起きてるんじゃない! 
現場で起きてるんだ!
一言、言いたい! 26 
購買意欲が芽生える 
外部サイト(例えばブログ)にこそ 
買い物機能を持たせる方が、 
よっぽど賢いんじゃないのか?
一言、言いたい! 27 
だから、一号男には 
商品紹介ページ生成機能を 
付けなかった。 
我々にはデザインセンスもないし、 そもそも、プログラマーの用意したテンプレで済む ような商品紹介しかやらない店が流行るわけない。
こうやって あらゆるサイトを侵略し、 世界征服を果たすのだ!! 28 
わっはっは! 
偉大なる秘密結社 シェルショッカーに 栄光あれ!
洗脳されたら、これをポチれ! ① 29 
シェルショッカー1号男の 
詳細が載ってる薄い本 
「ななか Inside PRESS vol.5」 
1,200円+税0円 第7開発セクション 発行 
https://richlab.org/coterie/7kaip05.html
洗脳されたら、これをポチれ! ② 30 
毎号 エクストリーームな 
シェルスクリプト総合誌 
「シェルスクリプトマガジン」 
毎月25日頃発売 500円+税 (アノ博士のいる) USP研究所 発行 
https://www.usp-lab.com/pub.magazine.html
今日はこれくらいに しといてやる! 31 
リッチー大佐@シェルショッカー日本支部 https://joind.in/12027

Contenu connexe

Tendances

連装砲ちゃんロボを作ろう!
連装砲ちゃんロボを作ろう!連装砲ちゃんロボを作ろう!
連装砲ちゃんロボを作ろう!
masasann
 
和牛をおいしく食べるには
和牛をおいしく食べるには和牛をおいしく食べるには
和牛をおいしく食べるには
Masayuki Ozawa
 
カスタムメモリマネージャと高速なメモリアロケータについて
カスタムメモリマネージャと高速なメモリアロケータについてカスタムメモリマネージャと高速なメモリアロケータについて
カスタムメモリマネージャと高速なメモリアロケータについて
alwei
 
shared_ptrとゲームプログラミングでのメモリ管理
shared_ptrとゲームプログラミングでのメモリ管理shared_ptrとゲームプログラミングでのメモリ管理
shared_ptrとゲームプログラミングでのメモリ管理
DADA246
 

Tendances (12)

連装砲ちゃんロボを作ろう!
連装砲ちゃんロボを作ろう!連装砲ちゃんロボを作ろう!
連装砲ちゃんロボを作ろう!
 
初心者がOpenIndianaで自宅サーバを作ったよって話
初心者がOpenIndianaで自宅サーバを作ったよって話初心者がOpenIndianaで自宅サーバを作ったよって話
初心者がOpenIndianaで自宅サーバを作ったよって話
 
Oss builder
Oss builderOss builder
Oss builder
 
Memcache Queue
Memcache QueueMemcache Queue
Memcache Queue
 
Pine64で遊んでみた
Pine64で遊んでみたPine64で遊んでみた
Pine64で遊んでみた
 
今時のLinuxにおけるGPUエンコード事情
今時のLinuxにおけるGPUエンコード事情今時のLinuxにおけるGPUエンコード事情
今時のLinuxにおけるGPUエンコード事情
 
独学道場アセンブリの会
独学道場アセンブリの会独学道場アセンブリの会
独学道場アセンブリの会
 
CoffeeScript+enchant.jsでクロージャが気持よくかけた話
CoffeeScript+enchant.jsでクロージャが気持よくかけた話CoffeeScript+enchant.jsでクロージャが気持よくかけた話
CoffeeScript+enchant.jsでクロージャが気持よくかけた話
 
和牛をおいしく食べるには
和牛をおいしく食べるには和牛をおいしく食べるには
和牛をおいしく食べるには
 
カスタムメモリマネージャと高速なメモリアロケータについて
カスタムメモリマネージャと高速なメモリアロケータについてカスタムメモリマネージャと高速なメモリアロケータについて
カスタムメモリマネージャと高速なメモリアロケータについて
 
shared_ptrとゲームプログラミングでのメモリ管理
shared_ptrとゲームプログラミングでのメモリ管理shared_ptrとゲームプログラミングでのメモリ管理
shared_ptrとゲームプログラミングでのメモリ管理
 
elixirを使ったゲームサーバ
elixirを使ったゲームサーバelixirを使ったゲームサーバ
elixirを使ったゲームサーバ
 

En vedette

【企画書】ReceReco:新規事業討議用社内資料
【企画書】ReceReco:新規事業討議用社内資料【企画書】ReceReco:新規事業討議用社内資料
【企画書】ReceReco:新規事業討議用社内資料
Find Job Startup
 
【企画書】UIscope:MOVIDA JAPAN_Demo Day用資料
【企画書】UIscope:MOVIDA JAPAN_Demo Day用資料【企画書】UIscope:MOVIDA JAPAN_Demo Day用資料
【企画書】UIscope:MOVIDA JAPAN_Demo Day用資料
Find Job Startup
 
PIXTA_シードラウンド用事業プラン説明資料
PIXTA_シードラウンド用事業プラン説明資料PIXTA_シードラウンド用事業プラン説明資料
PIXTA_シードラウンド用事業プラン説明資料
Find Job Startup
 
【企画書】チャットワーク:社内検討用資料
【企画書】チャットワーク:社内検討用資料【企画書】チャットワーク:社内検討用資料
【企画書】チャットワーク:社内検討用資料
Find Job Startup
 
Cyta.jp_サービスEC説明資料
Cyta.jp_サービスEC説明資料Cyta.jp_サービスEC説明資料
Cyta.jp_サービスEC説明資料
Find Job Startup
 
【企画書】omiai:IVS_LAUNCH PAD用資料
【企画書】omiai:IVS_LAUNCH PAD用資料【企画書】omiai:IVS_LAUNCH PAD用資料
【企画書】omiai:IVS_LAUNCH PAD用資料
Find Job Startup
 
【企画書】gamba!(ガンバ):サムライインキュベート様向け_企画プレゼン資料
【企画書】gamba!(ガンバ):サムライインキュベート様向け_企画プレゼン資料【企画書】gamba!(ガンバ):サムライインキュベート様向け_企画プレゼン資料
【企画書】gamba!(ガンバ):サムライインキュベート様向け_企画プレゼン資料
Find Job Startup
 
BASE_プレゼン用サービス説明資料
BASE_プレゼン用サービス説明資料BASE_プレゼン用サービス説明資料
BASE_プレゼン用サービス説明資料
Find Job Startup
 
創業時の「nanapiのナマ企画書」
創業時の「nanapiのナマ企画書」創業時の「nanapiのナマ企画書」
創業時の「nanapiのナマ企画書」
Find Job Startup
 
メルカリ_サービス説明資料
メルカリ_サービス説明資料メルカリ_サービス説明資料
メルカリ_サービス説明資料
Find Job Startup
 
ストリートアカデミー_ローンチ前企画書
ストリートアカデミー_ローンチ前企画書ストリートアカデミー_ローンチ前企画書
ストリートアカデミー_ローンチ前企画書
Find Job Startup
 

En vedette (16)

POSIX中心主義と情報科学教育
POSIX中心主義と情報科学教育POSIX中心主義と情報科学教育
POSIX中心主義と情報科学教育
 
恐怖!シェルショッカーの POSIX原理主義シェルスクリプト
恐怖!シェルショッカーの POSIX原理主義シェルスクリプト恐怖!シェルショッカーの POSIX原理主義シェルスクリプト
恐怖!シェルショッカーの POSIX原理主義シェルスクリプト
 
TeX vs Wordの不毛な争い
TeX vs Wordの不毛な争いTeX vs Wordの不毛な争い
TeX vs Wordの不毛な争い
 
【企画書】ReceReco:新規事業討議用社内資料
【企画書】ReceReco:新規事業討議用社内資料【企画書】ReceReco:新規事業討議用社内資料
【企画書】ReceReco:新規事業討議用社内資料
 
P2 P 奨学金プロジェクト Ver3 5
P2 P 奨学金プロジェクト Ver3 5P2 P 奨学金プロジェクト Ver3 5
P2 P 奨学金プロジェクト Ver3 5
 
【企画書】UIscope:MOVIDA JAPAN_Demo Day用資料
【企画書】UIscope:MOVIDA JAPAN_Demo Day用資料【企画書】UIscope:MOVIDA JAPAN_Demo Day用資料
【企画書】UIscope:MOVIDA JAPAN_Demo Day用資料
 
T TIME 滞在時間割キャンペーン(第4回販促会議企画コンペティション)
T TIME 滞在時間割キャンペーン(第4回販促会議企画コンペティション)T TIME 滞在時間割キャンペーン(第4回販促会議企画コンペティション)
T TIME 滞在時間割キャンペーン(第4回販促会議企画コンペティション)
 
PIXTA_シードラウンド用事業プラン説明資料
PIXTA_シードラウンド用事業プラン説明資料PIXTA_シードラウンド用事業プラン説明資料
PIXTA_シードラウンド用事業プラン説明資料
 
【企画書】チャットワーク:社内検討用資料
【企画書】チャットワーク:社内検討用資料【企画書】チャットワーク:社内検討用資料
【企画書】チャットワーク:社内検討用資料
 
Cyta.jp_サービスEC説明資料
Cyta.jp_サービスEC説明資料Cyta.jp_サービスEC説明資料
Cyta.jp_サービスEC説明資料
 
【企画書】omiai:IVS_LAUNCH PAD用資料
【企画書】omiai:IVS_LAUNCH PAD用資料【企画書】omiai:IVS_LAUNCH PAD用資料
【企画書】omiai:IVS_LAUNCH PAD用資料
 
【企画書】gamba!(ガンバ):サムライインキュベート様向け_企画プレゼン資料
【企画書】gamba!(ガンバ):サムライインキュベート様向け_企画プレゼン資料【企画書】gamba!(ガンバ):サムライインキュベート様向け_企画プレゼン資料
【企画書】gamba!(ガンバ):サムライインキュベート様向け_企画プレゼン資料
 
BASE_プレゼン用サービス説明資料
BASE_プレゼン用サービス説明資料BASE_プレゼン用サービス説明資料
BASE_プレゼン用サービス説明資料
 
創業時の「nanapiのナマ企画書」
創業時の「nanapiのナマ企画書」創業時の「nanapiのナマ企画書」
創業時の「nanapiのナマ企画書」
 
メルカリ_サービス説明資料
メルカリ_サービス説明資料メルカリ_サービス説明資料
メルカリ_サービス説明資料
 
ストリートアカデミー_ローンチ前企画書
ストリートアカデミー_ローンチ前企画書ストリートアカデミー_ローンチ前企画書
ストリートアカデミー_ローンチ前企画書
 

Similaire à 恐怖!シェルショッカー1号男

110122 ぜろじげん講演会資料 配布用
110122 ぜろじげん講演会資料 配布用110122 ぜろじげん講演会資料 配布用
110122 ぜろじげん講演会資料 配布用
IGDA Japan
 
opensource and accessibility (Dec2000) Part 2
opensource and accessibility (Dec2000) Part 2opensource and accessibility (Dec2000) Part 2
opensource and accessibility (Dec2000) Part 2
Takuya Nishimoto
 

Similaire à 恐怖!シェルショッカー1号男 (13)

Perlcasual #5 発表資料
Perlcasual #5 発表資料Perlcasual #5 発表資料
Perlcasual #5 発表資料
 
Our docsys-pyfes-2012-11
Our docsys-pyfes-2012-11Our docsys-pyfes-2012-11
Our docsys-pyfes-2012-11
 
cocos2d ☓ OpenOffice
cocos2d ☓ OpenOfficecocos2d ☓ OpenOffice
cocos2d ☓ OpenOffice
 
採用LT「まだお祈りデプロイで消耗してるの?」
採用LT「まだお祈りデプロイで消耗してるの?」採用LT「まだお祈りデプロイで消耗してるの?」
採用LT「まだお祈りデプロイで消耗してるの?」
 
美乳とPHP7 on Docker - てきとうなさいと。べぇたばん
美乳とPHP7 on Docker - てきとうなさいと。べぇたばん美乳とPHP7 on Docker - てきとうなさいと。べぇたばん
美乳とPHP7 on Docker - てきとうなさいと。べぇたばん
 
とある Perl Monger の働き方
とある Perl Monger の働き方とある Perl Monger の働き方
とある Perl Monger の働き方
 
PHP7をDockerで動かしたという話
PHP7をDockerで動かしたという話PHP7をDockerで動かしたという話
PHP7をDockerで動かしたという話
 
入門 シェル実装
入門 シェル実装入門 シェル実装
入門 シェル実装
 
Vi Boot Camp #1
Vi Boot Camp #1Vi Boot Camp #1
Vi Boot Camp #1
 
Roppongi pm-when-camel-was-pink
Roppongi pm-when-camel-was-pinkRoppongi pm-when-camel-was-pink
Roppongi pm-when-camel-was-pink
 
110122 ぜろじげん講演会資料 配布用
110122 ぜろじげん講演会資料 配布用110122 ぜろじげん講演会資料 配布用
110122 ぜろじげん講演会資料 配布用
 
opensource and accessibility (Dec2000) Part 2
opensource and accessibility (Dec2000) Part 2opensource and accessibility (Dec2000) Part 2
opensource and accessibility (Dec2000) Part 2
 
Status Board 面白いよ!
Status Board 面白いよ!Status Board 面白いよ!
Status Board 面白いよ!
 

恐怖!シェルショッカー1号男