SlideShare a Scribd company logo
1 of 79
Download to read offline
The Passionate Smalltalker: 
情熱Smalltalker 
SmalltalkとAWSでクラウドサービスを実現するための挑戦 
SORABITO株式会社 / 吉田 翔 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 
知らない方のために 
情熱プログラマー 
Chad Fowler (著), でびあんぐる (翻訳) 
出版 オーム社
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 
プロフィール 
• 吉田 翔(よしだしょう) 
• 1986年生まれ 28歳 
• Smalltalker 
• 昔,東京の会社のSEだった 
• 趣味 昼寝とピアノtwitter: @newapplesho 
facebook: newapplesho
SORABITO株式会社(http://www.sorabito.com) 
• サービス企画・開発・運営 
• 相見積業務改善サービス「Mikata(ミカタ)」 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 
• ウェブシステム開発 
• ウェブ制作・ウェブマーケティング
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 
メンバーよりMacが多い
開封の儀をするとシリーズがそろう 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 
30歳までにやりたかった夢 
自分たちで考えたサービスを作りたい
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 
Smalltalkerとしての自分 
学生時の研究テーマの実装から予約システムなどで 
Smalltalkを使い続けてきた 
Smalltalkは実戦でも使える 
Smalltalkって最高! 
もっと日本のSmalltalkの事例を増やしたい
Smalltalkで 
クラウドサービスを 
作ってみよう 
やっちまったな・・・・ 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
建設機械相見積もりクラウドサービス Mikata 
https://mikatacloud.com/ 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 
建設機械について 
• 油圧ショベル(ユンボ)、ブルドー 
ザー、ダンプなど建設現場で使う機械 
• 主に建設会社や建設機械レンタル会社 
が所持しています 
• 新品はすぐには手に入らない 
• 生産調整もあって中古の建設機械は重 
要(売れます) 
• 世界中のどこかで建設機械は使われて 
いる
市場を選ぶ 
• 建設機械業界はIT活用を考え始めている 
• レンタル会社が国内の4割の機械を保有している 
• レンタル会社は、レンタル・修理・販売・中古機械の 
買取を行っている 
建設機械の売買について注目 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
レンタル会社の建設機械売買について 
よくあるご質問 
 
%
・相見積もりが必要 
・自社保有機だけではなく,客先機械も売買する 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 

	 

 
' 
$# #%
!
相見積もりの問題 
• 営業担当者の貴重な時間が少なくなり,他の営業活動 
の機会が損なわれる 
• 何度も同じ質問を返答することがある 
• メールの誤送信の可能性 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
メールサーバーの容量が小さいことが多々あり 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 
写真の送付作業について 
リサイズメール 
DRYじゃない
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 
解決案 
全国の買取会社に対して査定を 
依頼・管理できるクラウドサービス 
Mikata
サービスの特徴 
1. いつでもどこでも入力項目に従うだけで利用可能 
2. 複数の買取会社に相見積もり可能 
3. 案件の管理・マネージメントができる 
4. 新たなソフトウェアは不要 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
1.ウェブからいつでもどこでも利用可能 
機械ごとに査定に必要な情報を入力するだけ 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
1.ウェブからいつでもどこでも利用可能 
Mikata 
写真はそのままアップロード。 
リサイズ作業は「Mikata」にお任せください。 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
2.複数の買取会社へ相見積可能 

	 
 
ウェブでやり取りすることで記録に残る 
電話は成約直後だけ 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
Mikata
2.複数の買取会社へ相見積可能 
査定機械の質問・回答画面 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 
3.案件が管理できる 
査定案件が管理できるため、お客様のフォローが容易。 
管理者も閲覧することで営業担当のサポートも可能。
4.新たなソフトウェアは不要 
ミカタ 
ブラウザで利用可能。 
ソフトウェアの更新は不要。常に最新機能が利用可能。 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 
どうやって進めていくか 
• リーンスタートアップを実践 
• 2枚の画面フロー図と10枚のスライドでサービス提案 
• アイディアの修正を繰り返し行い,サービス利用者が 
見つかるまで作らない
査定希望の機械を選択してください 
お客様名○○様 
ユンボ 
形式 
PC-28UU 
保管場所愛知 
期限4/16 
担当○○ 
備考買い替えによる 
・査定買取会社録質問2014/03/31 
お客様より2014/03/31 
希望金額確2014/03/31 
希望金額確・・営業担当者・記録に担当・実働時間も・お客様に対MIKATA 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 
概要マネージメントサービス「ミカタ」営業担当者様のフロー 
作成日2014/04/09 作成者吉田 翔更新者更新日 
MIKATA 
ID 
pass 
login 
login 
オリジナルアカウントで 
ログイン 
MIKATA 
今月は○○件査定中 
査定を依頼する 
依頼中案件一覧 
成約案件処理 
menu 
MIKATA 
ユンボ 
ダンプクレーン 
溶接機草刈機発電機 
select machine 
MIKATA 
ユンボ査定 
メーカー 
形式 
稼働時間 
保管場所 
次へ 
order form 
パスワードを忘れた人はこちら 
MIKATA 
状況編集 
いすず 
order list 
査定一覧 
査定レポート 
更新日 
更新日 
更新日 
更新日 
更新日 
更新日 
溶接機 
2014/03/ 
31 
2014/03/ 
31 
コマツ 
編集 
編集 
PC-120 
2 
形式 
4 
依頼中 
2014/03/ 
31 
カテゴリ 
草刈機 
編集 
ユンボ 
メーカー 
HMA-120 
0 
相見積 
3 依頼中 
PC-28UU 
査定依頼日 
コマツ 
no 
1 
成約 
デンヨー 
編集 
ダンプ 
編集 
2014/03/ 
31 
5 
2014/03/ 
31 
xxx 
編集 
ゼノア 
ユンボ 
成約 
MIKATA 
ユンボ査定 
confirm and Q  A 
買取 
カテゴリ 
ゴム 
キャタ 
情報の修正 
記録質問査定結果 
Q.旋回モーターに漏れはありますか? 
Q.引き取り条件を教えてください 
Q.希望金額はありますか 
ユンボ査定 
confirm 記ページめくりで案件を閲覧可能 
・ソート可能 
・印刷もできるとよい? 
・査定に必要な最低入力項目を容易 
・機械に合わせ入力フォームを変更する 
・入力チェック 
・質問のやり取りはウェブ上で可能にする 
・質問と回答を全ての買取会社に公開する 
更新日 
更新日 
no 査定依頼日 
2014/03/ 
状況形式 
報告 
4 2014/03/ 
31 
カテゴリ 
草刈機 
メーカー 
HMA-120 
0 
成約 
ゼノア 
成約案件処理 
報告 
Copyright © 2014 AOKI Development Co., Ltd All Rights Reserved. 社外秘 
select
Smalltalkで 
クラウドサービスを 
はじめてみる 
https://mikatacloud.com/ 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
Nagoya 7/4 
Sendai 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 
Mikataの営業 
6/19 
6/24 
6/24 
6/26 
7/1 
7/3 
Matsuzaka 
Tokyo 
Fukuoka 
Wakayama 
Wakayama
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 
川にも飛び込む
※映像は開発途中の画面であるため実際と異なる場合がございます 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 
Mikata紹介ビデオ 
http://youtu.be/dw5wyykigWw
どうやって作るか 
• サービスの拡大に合わせてスケールできるクラウドサー 
バー(AWS)を利用 
• 少数メンバーで運用するためのサービスを活用 
• 機械毎に異なる情報を保存するためNoSQLを活用 
• 写真はオリジナルファイルだけを保存 
• トランザクションメールを配信 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 
AWSで利用したサービス 
• EC2(仮想サーバー) 
• ELB(ロードバランサー) 
• Route53(DNS) 
• Amazon RDS for PostgreSQL(RDB) 
• Amazon DynamoDB(NoSQL) 
• S3(写真,ログ等のストレージ)
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 
Amazon DynamoDB 
• キー・バリュー型のNoSQLデータベースサービス 
• 管理不要で信頼性が高いデータベース 
• データセンター間の自動同期レプリケーション 
• 高速なアクセスが可能 
• SSDを利用している 
• ストレージ容量制限がない 
• プロビジョンスループットだけを指定するだけ 
• API(SDK)経由で利用できる
Availability Zone Availability Zone 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 
Region 
PPoossttggrreeSSQQLL 
RDS 
PostgreSQL 
PPoossttggrreeSSQQLL 
RDS 
PostgreSQL 
DynamoDB 
S3 
Amazon EC2 
Amazon EC2 
Internet 
Amazon Route 
53 Hosted Zone 
Elastic Load 
Balancing 
SSL 
SSL 
SSL 
SSL 
構成図 
同期同期
SmalltalkerがAWSを使う際の問題 
nodeJS 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 
iOS 
iOS Java 
Javascript 
Net 
PHP Python 
nodeJS 
Android 
Ruby 
Ruby 
あれSmalltalkは?
SmalltalkerがAWSを使う際の問題 
ないじゃないか! 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 
Amazonさんに聞いてみた 
SmalltalkでAWS(DynamoDB)使い 
たいけど,どうしたらいいですか? 
MongoDBならパッケージが 
あるからいいんですけど・・・ 
※Smalltalkには 
あのKent Beckが作った 
MongoDBのパッケージがある
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 
Amazonさんの回答 
https://www.flickr.com/photos/mendhak/4850482798/ 
REST APIを叩くのじゃ 
Smalltalkならできるはず
AmazonさんのMongoDBへの回答 
https://www.flickr.com/photos/mendhak/4850482798/ 
スケール時に大丈夫? 
バックアップとか大丈夫? 
マシン台数いるから費用も大丈夫? 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
クラウドサーバー「Mikata」を支えるSmalltalk 
開発言語Smalltalk(Pharo 3.0beta) 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 
Web Framework 
Seaside 3.1(継続ベースの 
Web Framework) 
O/RマッピングGlorp 
ログNagare(Fluentd) 
AWS SDK Smalltalk版を作る
別にSmalltalkしかできないわけじゃないんだからね 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 
なんでSmalltalk? 
• Java プロトタイプ作りで例外ばっかり考えたくない 
• PHP デバッグしながら開発できるか不安 
• Ruby よい。でもチューニング方法詳しくない 
• Scala よい。あこがれ。学習時間がなかった。 
• Perl そんなに詳しくない。 
• Python そんなに詳しくない。 
• Node.js スケールが心配。 
I♥️ 
Smalltalk 
すばやく短い期間かつ仕様変更歓迎でやるには 
言語は好きなものを使いたい
The Passionate Smalltalker: 
情熱Smalltalker 
SmalltalkとAWSでクラウドサービスを実現するための挑戦 
愛せよ、さもなくば捨てよ 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
SmalltalkでAWS SDKを攻略していみる 
AWS Signature Version 4 
多くのAWSサービスとやり取りするとき必要 
Signature version 4 signing process 
http://docs.aws.amazon.com/general/latest/gr/signature-version-4.html 
ページをよく読んでSmalltalkで作ってみる 
(英語ツラい) 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
AWS Signature Version 4 for Smalltalk 
SHA256が必要 
PharoにはなぜかSHA1しかない 
そんなこともあるさ、気にするな 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 
冷静にパッケージを追加で対応 
MCHttpRepository 
location: 'http://smalltalkhub.com/mc/Cryptography/Cryptography/main' 
user: '' 
password: ''
AWS Signature Version 4 for Smalltalk 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
SmalltalkでDynamoDB HTTP APIを攻略する 
• SSL接続 
• URLは全て/。URLで処理内容を指定しない 
• ヘッダーのx-amz-targetで処理内容を指定する 
• エンドポイントはデーターセンターの場所を指定 
• JSON形式で送信、JSON形式で受信 
• ヘッダーにx-amz-dateというISO 8601形式(例: 20130315T092054Z)の 
日付を入れなければならない 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 
DynamoDB HTTP APIについて 
詳しくは 
http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/MakingHTTPRequests.html
AWS DynamoDB Client for Smalltalk 
ISO 8601形式の日付フォーマット出力が必要 
Pharoにはなぜか標準装備されていないっぽい 
(いつからないの? 
 知らないだけであるかも。 
 日付系クラスどうにかして欲しい) 
そんなこともあるさ、気にするな 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
AWS DynamoDB Client for Smalltalk 
文字列データはUTF8でなければならない 
Pharoの文字列をマッピングする際に 
UTF8にしなければならない 
いつものことさ、気にするな 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
AWS DynamoDB for Smalltalk 
低レベルAPIの必要なところだけ実装 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
例:DynamoDBのテーブルの一覧 
dy := DynamoDBRowClient new. 
dy awsConfig accessKeyId:'アクセスキー'. 
dy awsConfig secretKey:'シークレットキー'. 
! 
operationName := #ListTables. 
requestBody := '{}'. 
resp := dy operationName: operationName contents: requestBody. 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
AWS DynamoDB for Smalltalkを気をつけること 
API作成だけでお金がかかってしまう 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
API作成の際にはDynamoDB Localがおすすめ 
商用では使えない 
APIの確認程度ぐらいしか使えない 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 
DynamoDB Local 
Javaで動くローカル版DynamoDB 
詳しくは 
http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ 
Tools.DynamoDBLocal.html
DynamoDB Localも対応しております 
dy := DynamoDBRowClient new. 
dy awsConfig accessKeyId:'アクセスキー'. 
dy awsConfig secretKey:'シークレットキー'. 
dy awsConfig useSSL: false. 
dy endpoint: ‘localhost:8000'. 
! 
operationName := #ListTables. 
requestBody := '{}'. 
resp := dy operationName: operationName contents: requestBody. 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
PCとmobile対応 
データベースメールバッチ 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 
システム構成 
サービスサービスロジック 
ウェブサービス 
ブラウザ 
営業担当者 
取引先担当者 
クラスタリングは検討 
RDB(MultiAZ), DynamoDB 
ログ記録 
お客様情報を記録する 
簡易API作成Fluentd 
RDSとの接続のために 
Stunnelを用いる 
fileupload module 
image filter 
冗長化サーバ 
ログの保存先はS3 
画像の格納先 S3
Smalltalk(Seaside)でHTML5を攻略する 
• Mikataはスマートフォン,タブレット,PC対応 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 
• ウェブブラウザで利用可能 
• HTML5を使えばファイルアップロードも可能 
• UIはLESSを使って独自CSS Frameworkを構築
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 
SeasideとHTML5 
Seasideのページによると 
WAComponent  updateRoot:aHtmlRoot 
super updateRoot: aHtmlRoot. 
aHtmlRoot beHtml5. 
でもXHTMLのよけいな物が残る 
そんなこともあるさ、気にするな
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 
SeasideとHTML5 
不要な情報は消せばいい 
WAComponent  updateRoot:aHtmlRoot 
super updateRoot: aHtmlRoot. 
aHtmlRoot beHtml5. 
aHtmlRoot htmlAttributes removeKey:'xml:lang'; 
at:'lang' put:'ja'; 
removeKey: 'xmlns'. 
self setHtmlHeader: aHtmlRoot.
SeasideでSSLを攻略する 
• Mikataは常時SSL。Seasideのセッションキーを 
SSL通信時のみ送信する(セッションジャック 
対策) 
• セッションの固定化対策をすること 
WAComponent (class)initialize 
self initialize 
| app | 
app := (WAAdmin register: self asApplicationAt:'app') 
preferenceAt: #sessionClass put: MSession; 
yourself. 
app preferenceAt: #serverProtocol put: 'https'. 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
SmalltalkでRDS for PostgreSQLを攻略する 
• RDS for PostgreSQLへの接続はSSL 
• PostgresV2はSSL接続対応していない 
• Stunnel(SSL Proxy)を使って対応 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
Smalltalkでログを攻略する 
• @UmejavaさんのNagare(Fluentd)を使いましょう 
• ソフトウメヤ 梅澤さんありがとうございます! 
• Fluentdのプラグインを用いてログはS3に出力 
https://github.com/mumez/nagare-logger 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 
nagare-logger
RDBをNoSQLのハイブリッドの実現 
• DynamoDBのクエリは物足りない 
• NoSQLはスキーマレスが必要なところだけ利用 
• スキーマが固定できるのはRDBにマッピングして利用 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
その他 
• 画像やcssは外部url参照(Smalltalk imageは軽くする) 
• 業界的にメール送信はUTF8非対応クライアントもあるた 
めRubyに任せる 
• メールを送信はSendGrid(https://sendgrid.kke.co.jp/)を 
活用 
• 画像アップロードやリサイズはNginxに任せる(Smalltalkで 
処理しない。Smalltalkに優しくする) 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
コマンドライン操作も可能になった 
GUIを立ち上げなくてもログレベルだって変更できる 
./pharo.sh ./Pharo3.0.image eval NgSettings default logLevel: 0. 
Smalltalk snapshot: true andQuit: true. 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 
Pharo 3.0でかわったこと 
GUIなし起動方法がかわった 
nohup ./pharo.sh ./Pharo3.0.image --no-quit  /dev/null 21  /dev/null
Smalltalkで 
クラウドサービスを 
公開 
2014年7月試験運用開始 
2014年9月一般公開 
https://mikatacloud.com/ 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
The Passionate Smalltalker: 
情熱Smalltalker 
Smalltalkプログラマーの幸せへの挑戦 
Demo 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
Mikata 
建設機械・重機・車両の売買に関わる方のための 
エコインフラシステム「Mikata」 
No.1 クラウドサービスを目指します 
http://mikatacloud.com 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
The Passionate Smalltalker: 
情熱Smalltalker 
SmalltalkとAWSでクラウドサービスを実現するための挑戦 
終わりのない道 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 
Seasideについて 
• 大きくなり過ぎ 
• だいぶ古くなっている(特にCanvas周り) 
• 継続であるためAP間のセッションの共有化が難しい 
• 画面周りの自動テストが難しい 
軽量かつStateless Web Frameworkが欲しい
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 
DB周りについて 
• PostgreSQLのドライバーが古すぎる 
• O/Rマッピングが苦行(イケていない) 
• MySQLもそろそろ使いませんか?(SmalltalkHubにはあるけど修羅な 
気が・・・) 
• マイグレーションが大変 
梅澤さん曰く,「VisualWorksならありますよ」
開発力からデプロイ数向上へ 
Smalltalkのデバッガー開きながら構築するのは最高 
• imageを育てることをそろそろやめたい 
• 「Immutable Infrastructure」みたいに「Immutable 
Smalltalk Image」を実現したい 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
インフラの管理ツールとしての道 
• Smalltalkで仮想サーバーをコントロールしたり,inspecterで素早く 
状態確認ができたらいいのでは? 
• SmalltalkならEC2の操作も容易にできる気がする 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 
• EC2 for Smalltalk検討中 
• AWS CLIはちょっと複雑な気がする
The Passionate Smalltalker: 
情熱Smalltalker 
SmalltalkとAWSでクラウドサービスを実現するための挑戦 
昨日よりよく 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 
SmalltalkでGCP
最初にGCPで対応したいサービス 
Google Cloud DataStore(NoSQL) 
GCP for Smalltalk作成予定 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
実はGCP上ではSmalltalkは動いている 
先日某大学の簡易書籍管理システムで 
Smalltalk(Seaside)を使ったWeb Systemを 
Google Cloud Compute Engineで動かしている 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 
他のCloudは? 
使う機会がないので予定なしです 
ご希望があればSDK作ります
感想 
• Smalltalkはクラウドサービスでも使える 
• Web Framework周りを充実すれば、ユーザー向上も狙 
えると思う 
• Scalaなどを勉強してSmalltalkもう一度学び直したい 
• Smalltalkエバンジェリストへの道は遠い 
Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.

More Related Content

What's hot

20141112 Tech Valley #3 note - スタートアップでこだわったこと - takamaru
20141112 Tech Valley #3 note - スタートアップでこだわったこと - takamaru20141112 Tech Valley #3 note - スタートアップでこだわったこと - takamaru
20141112 Tech Valley #3 note - スタートアップでこだわったこと - takamaruShoei Takamaru
 
サーバサイドKotlinへの入門 Ktor編
サーバサイドKotlinへの入門 Ktor編サーバサイドKotlinへの入門 Ktor編
サーバサイドKotlinへの入門 Ktor編虎の穴 開発室
 
20170622 Heroku Meetup #17 スタートアップのインフラ選び 高丸翔英 How to choose infrastracture...
20170622 Heroku Meetup #17 スタートアップのインフラ選び 高丸翔英 How to choose infrastracture...20170622 Heroku Meetup #17 スタートアップのインフラ選び 高丸翔英 How to choose infrastracture...
20170622 Heroku Meetup #17 スタートアップのインフラ選び 高丸翔英 How to choose infrastracture...Shoei Takamaru
 
中国Firefox OS勉強会 3rd 組み込み屋さんから見たFirefox OS
中国Firefox OS勉強会 3rd 組み込み屋さんから見たFirefox OS中国Firefox OS勉強会 3rd 組み込み屋さんから見たFirefox OS
中国Firefox OS勉強会 3rd 組み込み屋さんから見たFirefox OSMasami Yabushita
 
とあるアプリの開発運用(トラブルシュート)
とあるアプリの開発運用(トラブルシュート)とあるアプリの開発運用(トラブルシュート)
とあるアプリの開発運用(トラブルシュート)Takafumi ONAKA
 
[db tech showcase Tokyo 2016] C21: JR東日本で利用されたIoTによるBIインテグレーション by 株式会社インサイトテ...
[db tech showcase Tokyo 2016] C21: JR東日本で利用されたIoTによるBIインテグレーション by 株式会社インサイトテ...[db tech showcase Tokyo 2016] C21: JR東日本で利用されたIoTによるBIインテグレーション by 株式会社インサイトテ...
[db tech showcase Tokyo 2016] C21: JR東日本で利用されたIoTによるBIインテグレーション by 株式会社インサイトテ...Insight Technology, Inc.
 
AWSスポットインスタンスの真髄
AWSスポットインスタンスの真髄AWSスポットインスタンスの真髄
AWSスポットインスタンスの真髄外道 父
 
ソーシャルアプリを分析してみた
ソーシャルアプリを分析してみたソーシャルアプリを分析してみた
ソーシャルアプリを分析してみたDrecom Co., Ltd.
 
AutoScale×ゲーム ~運用効率化への取り組み~
AutoScale×ゲーム ~運用効率化への取り組み~AutoScale×ゲーム ~運用効率化への取り組み~
AutoScale×ゲーム ~運用効率化への取り組み~Ryo Fujiwara
 
爆速でAndroidアプリを ビルドするための仕組み DeNA TechCon #denatechcon
爆速でAndroidアプリを ビルドするための仕組み DeNA TechCon #denatechcon爆速でAndroidアプリを ビルドするための仕組み DeNA TechCon #denatechcon
爆速でAndroidアプリを ビルドするための仕組み DeNA TechCon #denatechconYosaku Toyama
 
Yahoo! JAPANが考えるテクノロジーとITエンジニアの未来 #devsumi
Yahoo! JAPANが考えるテクノロジーとITエンジニアの未来 #devsumiYahoo! JAPANが考えるテクノロジーとITエンジニアの未来 #devsumi
Yahoo! JAPANが考えるテクノロジーとITエンジニアの未来 #devsumiYahoo!デベロッパーネットワーク
 
DeNAのゲーム開発を支える技術 (クライアントサイド編)
DeNAのゲーム開発を支える技術 (クライアントサイド編)DeNAのゲーム開発を支える技術 (クライアントサイド編)
DeNAのゲーム開発を支える技術 (クライアントサイド編)denatech2016
 
これからはじめるインフラエンジニア
これからはじめるインフラエンジニアこれからはじめるインフラエンジニア
これからはじめるインフラエンジニア外道 父
 
すごいログ解析の話
すごいログ解析の話すごいログ解析の話
すごいログ解析の話Satoshi Hirata
 
Yahoo! JAPANが実践するOpenStackと大規模環境でのコンテナ利用 #devsumi
Yahoo! JAPANが実践するOpenStackと大規模環境でのコンテナ利用 #devsumiYahoo! JAPANが実践するOpenStackと大規模環境でのコンテナ利用 #devsumi
Yahoo! JAPANが実践するOpenStackと大規模環境でのコンテナ利用 #devsumiYahoo!デベロッパーネットワーク
 
Firefox OSアーキテクチャクイックツアー - FxOSコードリーディングミートアップ#21向け追記版
Firefox OSアーキテクチャクイックツアー - FxOSコードリーディングミートアップ#21向け追記版Firefox OSアーキテクチャクイックツアー - FxOSコードリーディングミートアップ#21向け追記版
Firefox OSアーキテクチャクイックツアー - FxOSコードリーディングミートアップ#21向け追記版Masami Yabushita
 
CEDEC 2015 Cocos2d-x と社内基盤の付き合い方 〜アップストリームファーストを目指して〜
CEDEC 2015 Cocos2d-x と社内基盤の付き合い方 〜アップストリームファーストを目指して〜CEDEC 2015 Cocos2d-x と社内基盤の付き合い方 〜アップストリームファーストを目指して〜
CEDEC 2015 Cocos2d-x と社内基盤の付き合い方 〜アップストリームファーストを目指して〜Drecom Co., Ltd.
 
【基礎編】社内向けMySQL勉強会
【基礎編】社内向けMySQL勉強会【基礎編】社内向けMySQL勉強会
【基礎編】社内向けMySQL勉強会Yuji Otani
 
株式会社 デンショク 会社案内
株式会社 デンショク 会社案内株式会社 デンショク 会社案内
株式会社 デンショク 会社案内Furumasa
 

What's hot (20)

20141112 Tech Valley #3 note - スタートアップでこだわったこと - takamaru
20141112 Tech Valley #3 note - スタートアップでこだわったこと - takamaru20141112 Tech Valley #3 note - スタートアップでこだわったこと - takamaru
20141112 Tech Valley #3 note - スタートアップでこだわったこと - takamaru
 
サーバサイドKotlinへの入門 Ktor編
サーバサイドKotlinへの入門 Ktor編サーバサイドKotlinへの入門 Ktor編
サーバサイドKotlinへの入門 Ktor編
 
20170622 Heroku Meetup #17 スタートアップのインフラ選び 高丸翔英 How to choose infrastracture...
20170622 Heroku Meetup #17 スタートアップのインフラ選び 高丸翔英 How to choose infrastracture...20170622 Heroku Meetup #17 スタートアップのインフラ選び 高丸翔英 How to choose infrastracture...
20170622 Heroku Meetup #17 スタートアップのインフラ選び 高丸翔英 How to choose infrastracture...
 
中国Firefox OS勉強会 3rd 組み込み屋さんから見たFirefox OS
中国Firefox OS勉強会 3rd 組み込み屋さんから見たFirefox OS中国Firefox OS勉強会 3rd 組み込み屋さんから見たFirefox OS
中国Firefox OS勉強会 3rd 組み込み屋さんから見たFirefox OS
 
とあるアプリの開発運用(トラブルシュート)
とあるアプリの開発運用(トラブルシュート)とあるアプリの開発運用(トラブルシュート)
とあるアプリの開発運用(トラブルシュート)
 
[db tech showcase Tokyo 2016] C21: JR東日本で利用されたIoTによるBIインテグレーション by 株式会社インサイトテ...
[db tech showcase Tokyo 2016] C21: JR東日本で利用されたIoTによるBIインテグレーション by 株式会社インサイトテ...[db tech showcase Tokyo 2016] C21: JR東日本で利用されたIoTによるBIインテグレーション by 株式会社インサイトテ...
[db tech showcase Tokyo 2016] C21: JR東日本で利用されたIoTによるBIインテグレーション by 株式会社インサイトテ...
 
AWSスポットインスタンスの真髄
AWSスポットインスタンスの真髄AWSスポットインスタンスの真髄
AWSスポットインスタンスの真髄
 
ソーシャルアプリを分析してみた
ソーシャルアプリを分析してみたソーシャルアプリを分析してみた
ソーシャルアプリを分析してみた
 
AutoScale×ゲーム ~運用効率化への取り組み~
AutoScale×ゲーム ~運用効率化への取り組み~AutoScale×ゲーム ~運用効率化への取り組み~
AutoScale×ゲーム ~運用効率化への取り組み~
 
爆速でAndroidアプリを ビルドするための仕組み DeNA TechCon #denatechcon
爆速でAndroidアプリを ビルドするための仕組み DeNA TechCon #denatechcon爆速でAndroidアプリを ビルドするための仕組み DeNA TechCon #denatechcon
爆速でAndroidアプリを ビルドするための仕組み DeNA TechCon #denatechcon
 
Yahoo! JAPANが考えるテクノロジーとITエンジニアの未来 #devsumi
Yahoo! JAPANが考えるテクノロジーとITエンジニアの未来 #devsumiYahoo! JAPANが考えるテクノロジーとITエンジニアの未来 #devsumi
Yahoo! JAPANが考えるテクノロジーとITエンジニアの未来 #devsumi
 
DeNAのゲーム開発を支える技術 (クライアントサイド編)
DeNAのゲーム開発を支える技術 (クライアントサイド編)DeNAのゲーム開発を支える技術 (クライアントサイド編)
DeNAのゲーム開発を支える技術 (クライアントサイド編)
 
これからはじめるインフラエンジニア
これからはじめるインフラエンジニアこれからはじめるインフラエンジニア
これからはじめるインフラエンジニア
 
すごいログ解析の話
すごいログ解析の話すごいログ解析の話
すごいログ解析の話
 
Yahoo! JAPANが実践するOpenStackと大規模環境でのコンテナ利用 #devsumi
Yahoo! JAPANが実践するOpenStackと大規模環境でのコンテナ利用 #devsumiYahoo! JAPANが実践するOpenStackと大規模環境でのコンテナ利用 #devsumi
Yahoo! JAPANが実践するOpenStackと大規模環境でのコンテナ利用 #devsumi
 
Firefox OSアーキテクチャクイックツアー - FxOSコードリーディングミートアップ#21向け追記版
Firefox OSアーキテクチャクイックツアー - FxOSコードリーディングミートアップ#21向け追記版Firefox OSアーキテクチャクイックツアー - FxOSコードリーディングミートアップ#21向け追記版
Firefox OSアーキテクチャクイックツアー - FxOSコードリーディングミートアップ#21向け追記版
 
CEDEC 2015 Cocos2d-x と社内基盤の付き合い方 〜アップストリームファーストを目指して〜
CEDEC 2015 Cocos2d-x と社内基盤の付き合い方 〜アップストリームファーストを目指して〜CEDEC 2015 Cocos2d-x と社内基盤の付き合い方 〜アップストリームファーストを目指して〜
CEDEC 2015 Cocos2d-x と社内基盤の付き合い方 〜アップストリームファーストを目指して〜
 
【基礎編】社内向けMySQL勉強会
【基礎編】社内向けMySQL勉強会【基礎編】社内向けMySQL勉強会
【基礎編】社内向けMySQL勉強会
 
activerecord-turntable
activerecord-turntableactiverecord-turntable
activerecord-turntable
 
株式会社 デンショク 会社案内
株式会社 デンショク 会社案内株式会社 デンショク 会社案内
株式会社 デンショク 会社案内
 

Similar to 情熱Smalltalker SmalltalkとAWSでクラウドサービスを実現するための挑戦

NHNグループ合同勉強会 ライブドア片野
NHNグループ合同勉強会 ライブドア片野NHNグループ合同勉強会 ライブドア片野
NHNグループ合同勉強会 ライブドア片野livedoor
 
Automation with SoftLayer and Zabbix
Automation with SoftLayer and ZabbixAutomation with SoftLayer and Zabbix
Automation with SoftLayer and Zabbixsoftlayerjp
 
IETF90 IoT関連WG報告 #isocjp
IETF90 IoT関連WG報告 #isocjpIETF90 IoT関連WG報告 #isocjp
IETF90 IoT関連WG報告 #isocjpKaoru Maeda
 
おすすめインフラ! for スタートアップ
おすすめインフラ! for スタートアップおすすめインフラ! for スタートアップ
おすすめインフラ! for スタートアップKoichiro Sumi
 
サーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話しサーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話しAkira Nagata
 
Unityゲームにオンラインランキングとゴースト機能を追加しよう!
Unityゲームにオンラインランキングとゴースト機能を追加しよう!Unityゲームにオンラインランキングとゴースト機能を追加しよう!
Unityゲームにオンラインランキングとゴースト機能を追加しよう!史識 川原
 
20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応
20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応
20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応v6app
 
アイデンティティ2.0とOAuth/OpenID Connect
アイデンティティ2.0とOAuth/OpenID Connectアイデンティティ2.0とOAuth/OpenID Connect
アイデンティティ2.0とOAuth/OpenID ConnectShinichi Tomita
 
【HackerWars 】ニフティクラウドmobile backend
【HackerWars 】ニフティクラウドmobile backend【HackerWars 】ニフティクラウドmobile backend
【HackerWars 】ニフティクラウドmobile backend史識 川原
 
SORACOM User Group Tokyo #10 | SORACOM US奮闘記! / SORACOMとIPアドレスと私
SORACOM User Group Tokyo #10 | SORACOM US奮闘記! / SORACOMとIPアドレスと私SORACOM User Group Tokyo #10 | SORACOM US奮闘記! / SORACOMとIPアドレスと私
SORACOM User Group Tokyo #10 | SORACOM US奮闘記! / SORACOMとIPアドレスと私SORACOM,INC
 
20130118 movable type_seminar
20130118 movable type_seminar20130118 movable type_seminar
20130118 movable type_seminarSix Apart
 
Mobage Connect と Identity 関連技術への取り組み - OpenID Summit Tokyo 2015
Mobage Connect と Identity 関連技術への取り組み - OpenID Summit Tokyo 2015Mobage Connect と Identity 関連技術への取り組み - OpenID Summit Tokyo 2015
Mobage Connect と Identity 関連技術への取り組み - OpenID Summit Tokyo 2015Toru Yamaguchi
 
Web api開発をするなら ドキュメントは自動生成にしておこう__ph_per_kaigi2021_
Web api開発をするなら ドキュメントは自動生成にしておこう__ph_per_kaigi2021_Web api開発をするなら ドキュメントは自動生成にしておこう__ph_per_kaigi2021_
Web api開発をするなら ドキュメントは自動生成にしておこう__ph_per_kaigi2021_Akito Tsukahara
 
JAWS-UG山形 AWSのきほん 2016/11/12
JAWS-UG山形 AWSのきほん 2016/11/12 JAWS-UG山形 AWSのきほん 2016/11/12
JAWS-UG山形 AWSのきほん 2016/11/12 Gyori Nagafuchi
 
JNSA西日本支部 技術研究WG AWSを使ったセキュアなシステム構築
JNSA西日本支部 技術研究WG AWSを使ったセキュアなシステム構築JNSA西日本支部 技術研究WG AWSを使ったセキュアなシステム構築
JNSA西日本支部 技術研究WG AWSを使ったセキュアなシステム構築Tomo-o Kubo
 
AWSオンリーで実現するIoTクラウド基盤
AWSオンリーで実現するIoTクラウド基盤AWSオンリーで実現するIoTクラウド基盤
AWSオンリーで実現するIoTクラウド基盤Godai Nakamura
 
AITCオープンラボ: Pepper x IoT x Web
AITCオープンラボ: Pepper x IoT x WebAITCオープンラボ: Pepper x IoT x Web
AITCオープンラボ: Pepper x IoT x Webdsuke Takaoka
 
AWSによるサーバーレスアーキテクチャ
AWSによるサーバーレスアーキテクチャAWSによるサーバーレスアーキテクチャ
AWSによるサーバーレスアーキテクチャ真吾 吉田
 

Similar to 情熱Smalltalker SmalltalkとAWSでクラウドサービスを実現するための挑戦 (20)

NHNグループ合同勉強会 ライブドア片野
NHNグループ合同勉強会 ライブドア片野NHNグループ合同勉強会 ライブドア片野
NHNグループ合同勉強会 ライブドア片野
 
Automation with SoftLayer and Zabbix
Automation with SoftLayer and ZabbixAutomation with SoftLayer and Zabbix
Automation with SoftLayer and Zabbix
 
IETF90 IoT関連WG報告 #isocjp
IETF90 IoT関連WG報告 #isocjpIETF90 IoT関連WG報告 #isocjp
IETF90 IoT関連WG報告 #isocjp
 
おすすめインフラ! for スタートアップ
おすすめインフラ! for スタートアップおすすめインフラ! for スタートアップ
おすすめインフラ! for スタートアップ
 
サーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話しサーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話し
 
Unityゲームにオンラインランキングとゴースト機能を追加しよう!
Unityゲームにオンラインランキングとゴースト機能を追加しよう!Unityゲームにオンラインランキングとゴースト機能を追加しよう!
Unityゲームにオンラインランキングとゴースト機能を追加しよう!
 
20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応
20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応
20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応
 
アイデンティティ2.0とOAuth/OpenID Connect
アイデンティティ2.0とOAuth/OpenID Connectアイデンティティ2.0とOAuth/OpenID Connect
アイデンティティ2.0とOAuth/OpenID Connect
 
SkyWay HandsOn
SkyWay HandsOnSkyWay HandsOn
SkyWay HandsOn
 
【HackerWars 】ニフティクラウドmobile backend
【HackerWars 】ニフティクラウドmobile backend【HackerWars 】ニフティクラウドmobile backend
【HackerWars 】ニフティクラウドmobile backend
 
SORACOM User Group Tokyo #10 | SORACOM US奮闘記! / SORACOMとIPアドレスと私
SORACOM User Group Tokyo #10 | SORACOM US奮闘記! / SORACOMとIPアドレスと私SORACOM User Group Tokyo #10 | SORACOM US奮闘記! / SORACOMとIPアドレスと私
SORACOM User Group Tokyo #10 | SORACOM US奮闘記! / SORACOMとIPアドレスと私
 
20130118 movable type_seminar
20130118 movable type_seminar20130118 movable type_seminar
20130118 movable type_seminar
 
Mobage Connect と Identity 関連技術への取り組み - OpenID Summit Tokyo 2015
Mobage Connect と Identity 関連技術への取り組み - OpenID Summit Tokyo 2015Mobage Connect と Identity 関連技術への取り組み - OpenID Summit Tokyo 2015
Mobage Connect と Identity 関連技術への取り組み - OpenID Summit Tokyo 2015
 
Web api開発をするなら ドキュメントは自動生成にしておこう__ph_per_kaigi2021_
Web api開発をするなら ドキュメントは自動生成にしておこう__ph_per_kaigi2021_Web api開発をするなら ドキュメントは自動生成にしておこう__ph_per_kaigi2021_
Web api開発をするなら ドキュメントは自動生成にしておこう__ph_per_kaigi2021_
 
Jaws-warrantee
Jaws-warranteeJaws-warrantee
Jaws-warrantee
 
JAWS-UG山形 AWSのきほん 2016/11/12
JAWS-UG山形 AWSのきほん 2016/11/12 JAWS-UG山形 AWSのきほん 2016/11/12
JAWS-UG山形 AWSのきほん 2016/11/12
 
JNSA西日本支部 技術研究WG AWSを使ったセキュアなシステム構築
JNSA西日本支部 技術研究WG AWSを使ったセキュアなシステム構築JNSA西日本支部 技術研究WG AWSを使ったセキュアなシステム構築
JNSA西日本支部 技術研究WG AWSを使ったセキュアなシステム構築
 
AWSオンリーで実現するIoTクラウド基盤
AWSオンリーで実現するIoTクラウド基盤AWSオンリーで実現するIoTクラウド基盤
AWSオンリーで実現するIoTクラウド基盤
 
AITCオープンラボ: Pepper x IoT x Web
AITCオープンラボ: Pepper x IoT x WebAITCオープンラボ: Pepper x IoT x Web
AITCオープンラボ: Pepper x IoT x Web
 
AWSによるサーバーレスアーキテクチャ
AWSによるサーバーレスアーキテクチャAWSによるサーバーレスアーキテクチャ
AWSによるサーバーレスアーキテクチャ
 

More from Sho Yoshida

OpenRestyを用いてイケイケなサービスを作る方法
OpenRestyを用いてイケイケなサービスを作る方法OpenRestyを用いてイケイケなサービスを作る方法
OpenRestyを用いてイケイケなサービスを作る方法Sho Yoshida
 
Continuous Integration for Pharo Smalltalk Part 2 (Smalltalk and Travis CI)
Continuous Integration for Pharo Smalltalk Part 2 (Smalltalk and Travis CI)Continuous Integration for Pharo Smalltalk Part 2 (Smalltalk and Travis CI)
Continuous Integration for Pharo Smalltalk Part 2 (Smalltalk and Travis CI)Sho Yoshida
 
今時なウェブ開発をSmalltalkでやってみる?
今時なウェブ開発をSmalltalkでやってみる?今時なウェブ開発をSmalltalkでやってみる?
今時なウェブ開発をSmalltalkでやってみる?Sho Yoshida
 
Continuous Integration for Pharo Smalltalk - Smalltalkと継続的インテグレーション
Continuous Integration for Pharo Smalltalk - Smalltalkと継続的インテグレーションContinuous Integration for Pharo Smalltalk - Smalltalkと継続的インテグレーション
Continuous Integration for Pharo Smalltalk - Smalltalkと継続的インテグレーションSho Yoshida
 
Elasticsearch for Pharo Smalltalk
Elasticsearch for Pharo Smalltalk Elasticsearch for Pharo Smalltalk
Elasticsearch for Pharo Smalltalk Sho Yoshida
 
Source Code Management with Pharo Smalltalk - Pharo Smalltalkソースコード管理方法
Source Code Management with Pharo Smalltalk - Pharo Smalltalkソースコード管理方法Source Code Management with Pharo Smalltalk - Pharo Smalltalkソースコード管理方法
Source Code Management with Pharo Smalltalk - Pharo Smalltalkソースコード管理方法Sho Yoshida
 
AWS SDK for Smalltalk
AWS SDK for SmalltalkAWS SDK for Smalltalk
AWS SDK for SmalltalkSho Yoshida
 
How Smalltalker Works
How Smalltalker WorksHow Smalltalker Works
How Smalltalker WorksSho Yoshida
 
Smaltalk驚異の開発(私が使い続ける2012年の話)
Smaltalk驚異の開発(私が使い続ける2012年の話)Smaltalk驚異の開発(私が使い続ける2012年の話)
Smaltalk驚異の開発(私が使い続ける2012年の話)Sho Yoshida
 
もしイチゴ農家の園主がSmalltalkの「Seaside」(で作られたシステム)を使ってみたら
もしイチゴ農家の園主がSmalltalkの「Seaside」(で作られたシステム)を使ってみたらもしイチゴ農家の園主がSmalltalkの「Seaside」(で作られたシステム)を使ってみたら
もしイチゴ農家の園主がSmalltalkの「Seaside」(で作られたシステム)を使ってみたらSho Yoshida
 
今日から使おうSmalltalk
今日から使おうSmalltalk今日から使おうSmalltalk
今日から使おうSmalltalkSho Yoshida
 
Iliad or Seaside
Iliad or SeasideIliad or Seaside
Iliad or SeasideSho Yoshida
 
Pharo(Smalltalk)でAPI作りをはじめよう
Pharo(Smalltalk)でAPI作りをはじめようPharo(Smalltalk)でAPI作りをはじめよう
Pharo(Smalltalk)でAPI作りをはじめようSho Yoshida
 

More from Sho Yoshida (14)

OpenRestyを用いてイケイケなサービスを作る方法
OpenRestyを用いてイケイケなサービスを作る方法OpenRestyを用いてイケイケなサービスを作る方法
OpenRestyを用いてイケイケなサービスを作る方法
 
Continuous Integration for Pharo Smalltalk Part 2 (Smalltalk and Travis CI)
Continuous Integration for Pharo Smalltalk Part 2 (Smalltalk and Travis CI)Continuous Integration for Pharo Smalltalk Part 2 (Smalltalk and Travis CI)
Continuous Integration for Pharo Smalltalk Part 2 (Smalltalk and Travis CI)
 
今時なウェブ開発をSmalltalkでやってみる?
今時なウェブ開発をSmalltalkでやってみる?今時なウェブ開発をSmalltalkでやってみる?
今時なウェブ開発をSmalltalkでやってみる?
 
Continuous Integration for Pharo Smalltalk - Smalltalkと継続的インテグレーション
Continuous Integration for Pharo Smalltalk - Smalltalkと継続的インテグレーションContinuous Integration for Pharo Smalltalk - Smalltalkと継続的インテグレーション
Continuous Integration for Pharo Smalltalk - Smalltalkと継続的インテグレーション
 
Elasticsearch for Pharo Smalltalk
Elasticsearch for Pharo Smalltalk Elasticsearch for Pharo Smalltalk
Elasticsearch for Pharo Smalltalk
 
Source Code Management with Pharo Smalltalk - Pharo Smalltalkソースコード管理方法
Source Code Management with Pharo Smalltalk - Pharo Smalltalkソースコード管理方法Source Code Management with Pharo Smalltalk - Pharo Smalltalkソースコード管理方法
Source Code Management with Pharo Smalltalk - Pharo Smalltalkソースコード管理方法
 
AWS SDK for Smalltalk
AWS SDK for SmalltalkAWS SDK for Smalltalk
AWS SDK for Smalltalk
 
How Smalltalker Works
How Smalltalker WorksHow Smalltalker Works
How Smalltalker Works
 
Smaltalk驚異の開発(私が使い続ける2012年の話)
Smaltalk驚異の開発(私が使い続ける2012年の話)Smaltalk驚異の開発(私が使い続ける2012年の話)
Smaltalk驚異の開発(私が使い続ける2012年の話)
 
もしイチゴ農家の園主がSmalltalkの「Seaside」(で作られたシステム)を使ってみたら
もしイチゴ農家の園主がSmalltalkの「Seaside」(で作られたシステム)を使ってみたらもしイチゴ農家の園主がSmalltalkの「Seaside」(で作られたシステム)を使ってみたら
もしイチゴ農家の園主がSmalltalkの「Seaside」(で作られたシステム)を使ってみたら
 
エコSmalltalk
エコSmalltalkエコSmalltalk
エコSmalltalk
 
今日から使おうSmalltalk
今日から使おうSmalltalk今日から使おうSmalltalk
今日から使おうSmalltalk
 
Iliad or Seaside
Iliad or SeasideIliad or Seaside
Iliad or Seaside
 
Pharo(Smalltalk)でAPI作りをはじめよう
Pharo(Smalltalk)でAPI作りをはじめようPharo(Smalltalk)でAPI作りをはじめよう
Pharo(Smalltalk)でAPI作りをはじめよう
 

情熱Smalltalker SmalltalkとAWSでクラウドサービスを実現するための挑戦

  • 1. The Passionate Smalltalker: 情熱Smalltalker SmalltalkとAWSでクラウドサービスを実現するための挑戦 SORABITO株式会社 / 吉田 翔 Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
  • 2. Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 知らない方のために 情熱プログラマー Chad Fowler (著), でびあんぐる (翻訳) 出版 オーム社
  • 3. Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. プロフィール • 吉田 翔(よしだしょう) • 1986年生まれ 28歳 • Smalltalker • 昔,東京の会社のSEだった • 趣味 昼寝とピアノtwitter: @newapplesho facebook: newapplesho
  • 4. SORABITO株式会社(http://www.sorabito.com) • サービス企画・開発・運営 • 相見積業務改善サービス「Mikata(ミカタ)」 Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. • ウェブシステム開発 • ウェブ制作・ウェブマーケティング
  • 5. Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. メンバーよりMacが多い
  • 6. 開封の儀をするとシリーズがそろう Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
  • 7. Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 30歳までにやりたかった夢 自分たちで考えたサービスを作りたい
  • 8. Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. Smalltalkerとしての自分 学生時の研究テーマの実装から予約システムなどで Smalltalkを使い続けてきた Smalltalkは実戦でも使える Smalltalkって最高! もっと日本のSmalltalkの事例を増やしたい
  • 9. Smalltalkで クラウドサービスを 作ってみよう やっちまったな・・・・ Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
  • 10. 建設機械相見積もりクラウドサービス Mikata https://mikatacloud.com/ Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
  • 11. Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 建設機械について • 油圧ショベル(ユンボ)、ブルドー ザー、ダンプなど建設現場で使う機械 • 主に建設会社や建設機械レンタル会社 が所持しています • 新品はすぐには手に入らない • 生産調整もあって中古の建設機械は重 要(売れます) • 世界中のどこかで建設機械は使われて いる
  • 12. 市場を選ぶ • 建設機械業界はIT活用を考え始めている • レンタル会社が国内の4割の機械を保有している • レンタル会社は、レンタル・修理・販売・中古機械の 買取を行っている 建設機械の売買について注目 Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
  • 15. !
  • 16. 相見積もりの問題 • 営業担当者の貴重な時間が少なくなり,他の営業活動 の機会が損なわれる • 何度も同じ質問を返答することがある • メールの誤送信の可能性 Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
  • 17. メールサーバーの容量が小さいことが多々あり Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 写真の送付作業について リサイズメール DRYじゃない
  • 18. Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 解決案 全国の買取会社に対して査定を 依頼・管理できるクラウドサービス Mikata
  • 19. サービスの特徴 1. いつでもどこでも入力項目に従うだけで利用可能 2. 複数の買取会社に相見積もり可能 3. 案件の管理・マネージメントができる 4. 新たなソフトウェアは不要 Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
  • 21. 1.ウェブからいつでもどこでも利用可能 Mikata 写真はそのままアップロード。 リサイズ作業は「Mikata」にお任せください。 Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
  • 22. 2.複数の買取会社へ相見積可能 ウェブでやり取りすることで記録に残る 電話は成約直後だけ Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
  • 25. Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 3.案件が管理できる 査定案件が管理できるため、お客様のフォローが容易。 管理者も閲覧することで営業担当のサポートも可能。
  • 26. 4.新たなソフトウェアは不要 ミカタ ブラウザで利用可能。 ソフトウェアの更新は不要。常に最新機能が利用可能。 Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
  • 27. Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. どうやって進めていくか • リーンスタートアップを実践 • 2枚の画面フロー図と10枚のスライドでサービス提案 • アイディアの修正を繰り返し行い,サービス利用者が 見つかるまで作らない
  • 28. 査定希望の機械を選択してください お客様名○○様 ユンボ 形式 PC-28UU 保管場所愛知 期限4/16 担当○○ 備考買い替えによる ・査定買取会社録質問2014/03/31 お客様より2014/03/31 希望金額確2014/03/31 希望金額確・・営業担当者・記録に担当・実働時間も・お客様に対MIKATA Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 概要マネージメントサービス「ミカタ」営業担当者様のフロー 作成日2014/04/09 作成者吉田 翔更新者更新日 MIKATA ID pass login login オリジナルアカウントで ログイン MIKATA 今月は○○件査定中 査定を依頼する 依頼中案件一覧 成約案件処理 menu MIKATA ユンボ ダンプクレーン 溶接機草刈機発電機 select machine MIKATA ユンボ査定 メーカー 形式 稼働時間 保管場所 次へ order form パスワードを忘れた人はこちら MIKATA 状況編集 いすず order list 査定一覧 査定レポート 更新日 更新日 更新日 更新日 更新日 更新日 溶接機 2014/03/ 31 2014/03/ 31 コマツ 編集 編集 PC-120 2 形式 4 依頼中 2014/03/ 31 カテゴリ 草刈機 編集 ユンボ メーカー HMA-120 0 相見積 3 依頼中 PC-28UU 査定依頼日 コマツ no 1 成約 デンヨー 編集 ダンプ 編集 2014/03/ 31 5 2014/03/ 31 xxx 編集 ゼノア ユンボ 成約 MIKATA ユンボ査定 confirm and Q A 買取 カテゴリ ゴム キャタ 情報の修正 記録質問査定結果 Q.旋回モーターに漏れはありますか? Q.引き取り条件を教えてください Q.希望金額はありますか ユンボ査定 confirm 記ページめくりで案件を閲覧可能 ・ソート可能 ・印刷もできるとよい? ・査定に必要な最低入力項目を容易 ・機械に合わせ入力フォームを変更する ・入力チェック ・質問のやり取りはウェブ上で可能にする ・質問と回答を全ての買取会社に公開する 更新日 更新日 no 査定依頼日 2014/03/ 状況形式 報告 4 2014/03/ 31 カテゴリ 草刈機 メーカー HMA-120 0 成約 ゼノア 成約案件処理 報告 Copyright © 2014 AOKI Development Co., Ltd All Rights Reserved. 社外秘 select
  • 29. Smalltalkで クラウドサービスを はじめてみる https://mikatacloud.com/ Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
  • 30. Nagoya 7/4 Sendai Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. Mikataの営業 6/19 6/24 6/24 6/26 7/1 7/3 Matsuzaka Tokyo Fukuoka Wakayama Wakayama
  • 31. Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 川にも飛び込む
  • 32. ※映像は開発途中の画面であるため実際と異なる場合がございます Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. Mikata紹介ビデオ http://youtu.be/dw5wyykigWw
  • 33. どうやって作るか • サービスの拡大に合わせてスケールできるクラウドサー バー(AWS)を利用 • 少数メンバーで運用するためのサービスを活用 • 機械毎に異なる情報を保存するためNoSQLを活用 • 写真はオリジナルファイルだけを保存 • トランザクションメールを配信 Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
  • 34. Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. AWSで利用したサービス • EC2(仮想サーバー) • ELB(ロードバランサー) • Route53(DNS) • Amazon RDS for PostgreSQL(RDB) • Amazon DynamoDB(NoSQL) • S3(写真,ログ等のストレージ)
  • 35. Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. Amazon DynamoDB • キー・バリュー型のNoSQLデータベースサービス • 管理不要で信頼性が高いデータベース • データセンター間の自動同期レプリケーション • 高速なアクセスが可能 • SSDを利用している • ストレージ容量制限がない • プロビジョンスループットだけを指定するだけ • API(SDK)経由で利用できる
  • 36. Availability Zone Availability Zone Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. Region PPoossttggrreeSSQQLL RDS PostgreSQL PPoossttggrreeSSQQLL RDS PostgreSQL DynamoDB S3 Amazon EC2 Amazon EC2 Internet Amazon Route 53 Hosted Zone Elastic Load Balancing SSL SSL SSL SSL 構成図 同期同期
  • 37. SmalltalkerがAWSを使う際の問題 nodeJS Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. iOS iOS Java Javascript Net PHP Python nodeJS Android Ruby Ruby あれSmalltalkは?
  • 38. SmalltalkerがAWSを使う際の問題 ないじゃないか! Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
  • 39. Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. Amazonさんに聞いてみた SmalltalkでAWS(DynamoDB)使い たいけど,どうしたらいいですか? MongoDBならパッケージが あるからいいんですけど・・・ ※Smalltalkには あのKent Beckが作った MongoDBのパッケージがある
  • 40. Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. Amazonさんの回答 https://www.flickr.com/photos/mendhak/4850482798/ REST APIを叩くのじゃ Smalltalkならできるはず
  • 41. AmazonさんのMongoDBへの回答 https://www.flickr.com/photos/mendhak/4850482798/ スケール時に大丈夫? バックアップとか大丈夫? マシン台数いるから費用も大丈夫? Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
  • 42. クラウドサーバー「Mikata」を支えるSmalltalk 開発言語Smalltalk(Pharo 3.0beta) Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. Web Framework Seaside 3.1(継続ベースの Web Framework) O/RマッピングGlorp ログNagare(Fluentd) AWS SDK Smalltalk版を作る
  • 43. 別にSmalltalkしかできないわけじゃないんだからね Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. なんでSmalltalk? • Java プロトタイプ作りで例外ばっかり考えたくない • PHP デバッグしながら開発できるか不安 • Ruby よい。でもチューニング方法詳しくない • Scala よい。あこがれ。学習時間がなかった。 • Perl そんなに詳しくない。 • Python そんなに詳しくない。 • Node.js スケールが心配。 I♥️ Smalltalk すばやく短い期間かつ仕様変更歓迎でやるには 言語は好きなものを使いたい
  • 44. The Passionate Smalltalker: 情熱Smalltalker SmalltalkとAWSでクラウドサービスを実現するための挑戦 愛せよ、さもなくば捨てよ Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
  • 45. SmalltalkでAWS SDKを攻略していみる AWS Signature Version 4 多くのAWSサービスとやり取りするとき必要 Signature version 4 signing process http://docs.aws.amazon.com/general/latest/gr/signature-version-4.html ページをよく読んでSmalltalkで作ってみる (英語ツラい) Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
  • 46. AWS Signature Version 4 for Smalltalk SHA256が必要 PharoにはなぜかSHA1しかない そんなこともあるさ、気にするな Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 冷静にパッケージを追加で対応 MCHttpRepository location: 'http://smalltalkhub.com/mc/Cryptography/Cryptography/main' user: '' password: ''
  • 47. AWS Signature Version 4 for Smalltalk Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
  • 48. SmalltalkでDynamoDB HTTP APIを攻略する • SSL接続 • URLは全て/。URLで処理内容を指定しない • ヘッダーのx-amz-targetで処理内容を指定する • エンドポイントはデーターセンターの場所を指定 • JSON形式で送信、JSON形式で受信 • ヘッダーにx-amz-dateというISO 8601形式(例: 20130315T092054Z)の 日付を入れなければならない Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. DynamoDB HTTP APIについて 詳しくは http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/MakingHTTPRequests.html
  • 49. AWS DynamoDB Client for Smalltalk ISO 8601形式の日付フォーマット出力が必要 Pharoにはなぜか標準装備されていないっぽい (いつからないの?  知らないだけであるかも。  日付系クラスどうにかして欲しい) そんなこともあるさ、気にするな Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
  • 50. AWS DynamoDB Client for Smalltalk 文字列データはUTF8でなければならない Pharoの文字列をマッピングする際に UTF8にしなければならない いつものことさ、気にするな Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
  • 51. AWS DynamoDB for Smalltalk 低レベルAPIの必要なところだけ実装 Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
  • 52. 例:DynamoDBのテーブルの一覧 dy := DynamoDBRowClient new. dy awsConfig accessKeyId:'アクセスキー'. dy awsConfig secretKey:'シークレットキー'. ! operationName := #ListTables. requestBody := '{}'. resp := dy operationName: operationName contents: requestBody. Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
  • 53. AWS DynamoDB for Smalltalkを気をつけること API作成だけでお金がかかってしまう Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
  • 54. API作成の際にはDynamoDB Localがおすすめ 商用では使えない APIの確認程度ぐらいしか使えない Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. DynamoDB Local Javaで動くローカル版DynamoDB 詳しくは http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ Tools.DynamoDBLocal.html
  • 55. DynamoDB Localも対応しております dy := DynamoDBRowClient new. dy awsConfig accessKeyId:'アクセスキー'. dy awsConfig secretKey:'シークレットキー'. dy awsConfig useSSL: false. dy endpoint: ‘localhost:8000'. ! operationName := #ListTables. requestBody := '{}'. resp := dy operationName: operationName contents: requestBody. Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
  • 56. PCとmobile対応 データベースメールバッチ Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. システム構成 サービスサービスロジック ウェブサービス ブラウザ 営業担当者 取引先担当者 クラスタリングは検討 RDB(MultiAZ), DynamoDB ログ記録 お客様情報を記録する 簡易API作成Fluentd RDSとの接続のために Stunnelを用いる fileupload module image filter 冗長化サーバ ログの保存先はS3 画像の格納先 S3
  • 57. Smalltalk(Seaside)でHTML5を攻略する • Mikataはスマートフォン,タブレット,PC対応 Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. • ウェブブラウザで利用可能 • HTML5を使えばファイルアップロードも可能 • UIはLESSを使って独自CSS Frameworkを構築
  • 58. Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. SeasideとHTML5 Seasideのページによると WAComponent updateRoot:aHtmlRoot super updateRoot: aHtmlRoot. aHtmlRoot beHtml5. でもXHTMLのよけいな物が残る そんなこともあるさ、気にするな
  • 59. Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. SeasideとHTML5 不要な情報は消せばいい WAComponent updateRoot:aHtmlRoot super updateRoot: aHtmlRoot. aHtmlRoot beHtml5. aHtmlRoot htmlAttributes removeKey:'xml:lang'; at:'lang' put:'ja'; removeKey: 'xmlns'. self setHtmlHeader: aHtmlRoot.
  • 60. SeasideでSSLを攻略する • Mikataは常時SSL。Seasideのセッションキーを SSL通信時のみ送信する(セッションジャック 対策) • セッションの固定化対策をすること WAComponent (class)initialize self initialize | app | app := (WAAdmin register: self asApplicationAt:'app') preferenceAt: #sessionClass put: MSession; yourself. app preferenceAt: #serverProtocol put: 'https'. Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
  • 61. SmalltalkでRDS for PostgreSQLを攻略する • RDS for PostgreSQLへの接続はSSL • PostgresV2はSSL接続対応していない • Stunnel(SSL Proxy)を使って対応 Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
  • 62. Smalltalkでログを攻略する • @UmejavaさんのNagare(Fluentd)を使いましょう • ソフトウメヤ 梅澤さんありがとうございます! • Fluentdのプラグインを用いてログはS3に出力 https://github.com/mumez/nagare-logger Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. nagare-logger
  • 63. RDBをNoSQLのハイブリッドの実現 • DynamoDBのクエリは物足りない • NoSQLはスキーマレスが必要なところだけ利用 • スキーマが固定できるのはRDBにマッピングして利用 Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
  • 64. その他 • 画像やcssは外部url参照(Smalltalk imageは軽くする) • 業界的にメール送信はUTF8非対応クライアントもあるた めRubyに任せる • メールを送信はSendGrid(https://sendgrid.kke.co.jp/)を 活用 • 画像アップロードやリサイズはNginxに任せる(Smalltalkで 処理しない。Smalltalkに優しくする) Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
  • 65. コマンドライン操作も可能になった GUIを立ち上げなくてもログレベルだって変更できる ./pharo.sh ./Pharo3.0.image eval NgSettings default logLevel: 0. Smalltalk snapshot: true andQuit: true. Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. Pharo 3.0でかわったこと GUIなし起動方法がかわった nohup ./pharo.sh ./Pharo3.0.image --no-quit /dev/null 21 /dev/null
  • 66. Smalltalkで クラウドサービスを 公開 2014年7月試験運用開始 2014年9月一般公開 https://mikatacloud.com/ Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
  • 67. The Passionate Smalltalker: 情熱Smalltalker Smalltalkプログラマーの幸せへの挑戦 Demo Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
  • 68. Mikata 建設機械・重機・車両の売買に関わる方のための エコインフラシステム「Mikata」 No.1 クラウドサービスを目指します http://mikatacloud.com Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
  • 69. The Passionate Smalltalker: 情熱Smalltalker SmalltalkとAWSでクラウドサービスを実現するための挑戦 終わりのない道 Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
  • 70. Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. Seasideについて • 大きくなり過ぎ • だいぶ古くなっている(特にCanvas周り) • 継続であるためAP間のセッションの共有化が難しい • 画面周りの自動テストが難しい 軽量かつStateless Web Frameworkが欲しい
  • 71. Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. DB周りについて • PostgreSQLのドライバーが古すぎる • O/Rマッピングが苦行(イケていない) • MySQLもそろそろ使いませんか?(SmalltalkHubにはあるけど修羅な 気が・・・) • マイグレーションが大変 梅澤さん曰く,「VisualWorksならありますよ」
  • 72. 開発力からデプロイ数向上へ Smalltalkのデバッガー開きながら構築するのは最高 • imageを育てることをそろそろやめたい • 「Immutable Infrastructure」みたいに「Immutable Smalltalk Image」を実現したい Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
  • 73. インフラの管理ツールとしての道 • Smalltalkで仮想サーバーをコントロールしたり,inspecterで素早く 状態確認ができたらいいのでは? • SmalltalkならEC2の操作も容易にできる気がする Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. • EC2 for Smalltalk検討中 • AWS CLIはちょっと複雑な気がする
  • 74. The Passionate Smalltalker: 情熱Smalltalker SmalltalkとAWSでクラウドサービスを実現するための挑戦 昨日よりよく Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
  • 75. Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. SmalltalkでGCP
  • 76. 最初にGCPで対応したいサービス Google Cloud DataStore(NoSQL) GCP for Smalltalk作成予定 Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
  • 77. 実はGCP上ではSmalltalkは動いている 先日某大学の簡易書籍管理システムで Smalltalk(Seaside)を使ったWeb Systemを Google Cloud Compute Engineで動かしている Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
  • 78. Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved. 他のCloudは? 使う機会がないので予定なしです ご希望があればSDK作ります
  • 79. 感想 • Smalltalkはクラウドサービスでも使える • Web Framework周りを充実すれば、ユーザー向上も狙 えると思う • Scalaなどを勉強してSmalltalkもう一度学び直したい • Smalltalkエバンジェリストへの道は遠い Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
  • 80. The Passionate Smalltalker: 情熱Smalltalker SmalltalkとAWSでクラウドサービスを実現するための挑戦 One more thing… Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.
  • 81. future := [ self company add: Smalltalker ]. future value. 10月より新たなSmalltalkerがSORABITOにジョイントします Copyright © 2014 SORABITO Co., Ltd. All Rights Reserved.