SlideShare a Scribd company logo
1 of 51
Download to read offline
Twitter4Jハンズオン
5/1
Twitter4Jハンズオン
• Twitter APIの概要
• プロジェクトの作成
• アプリケーションの登録
• ツイート
• 検索
• レートリミット
• ログイン
Twitter botのコツ
• Botの種類とAPI
• API
• レートリミット
Twitter APIの種類
Twi$er'API
REST'API'
API
Web 	
 'API
:' '
:'Java,'Objec8ve9C '
:' ,' '
:'Java,'PHP,'Ruby,'.Net,'Objec8ve9C '
:'Web '
:'HTML,'JavaScript'
Streamed'Tweets'
'
'
'
'
'
'
'
'
'
'
'
' '
アプリケーション
• Twitterにアクセスする単位
• ユーザーとは異なる
• ユーザーはアプリケーションにアクセス権限を委譲する
アプリケーションの登録
• https://dev.twitter.com/apps/new より
Application Type : 重要
アクセスタイプ
アクセスタイプ
Read,Write, &
Access direct messages
Read & Write Read only
タイムラインなどの取得
○ ○ ○
ツイート
○ ○ ×
ダイレクトメッセージ送信
○ ○ ×
ダイレクトメッセージ受信・削除
○ × ×
デフォルト
演習
• https://dev.twitter.com/apps/new よりアプリケーションを登録
• http://twitter4j.org/ よりtwitter4j-4.0.2.zip をダウンロード
• twitter4j.propertiesのoauth.consumerKeyとoauth.consumerSecretを
設定
• getAccessToken.sh/cmdを実行してアクセストークンを取得
REST API
REST API
• プル型
‣ タイムラインの取得
‣ ユーザーのフォロー
‣ ツイート
‣ ダイレクトメッセージの送受信
等々100近くのエンドポイント
REST API
• REST: REpresentational State Transfer
• HTTPでAPI呼び出し
GET /1.1/statuses/public_timeline.json HTTP/1.1
Host: api.twitter.com
HTTP/1.1 200 OK
Date: Tue, 08 Feb 2011 07:52:51 GMT
Server: hi
Status: 200 OK
Content-Type: application/json; charset=utf-8
Vary: Accept-Encoding
Connection: close
[{"source": "<a href="http://foursquare.com" rel="nofollow">foursquare</a>",
"text": "I'm at IKEA 新三郷店 (新三郷ららシティ2-2-2, 三郷市) [pic]: http://4sq.com/
eOHZdS", ...
"user": {
"description": "Javaエンジニア山本裕介。rn映画、アーチェリー、Java 好きrn#twitter4j
#samurai", "name": "山本 裕介", ...}
},
...]
リクエスト
レスポンスヘッダ
レスポンスボディ
Twitter のREST API
• 全部で100近くのエンドポイント
• 15の「リソース」に分類されている
• リソース毎にパスが異なる(RESTful)
Timelineリソース
https://api.twitter.com/1.1/statuses/***.json
Userリソース
https://api.twitter.com/1.1/users/***.json
Direct messageリソース
https://api.twitter.com/1.1/direct_messages/***.json
等
REST APIのテスト
• https://dev.twitter.com/console より
Twitter4Jの概要
• 主要クラス
• TwitterFactory: Twitterオブジェクトのファクトリクラス
• Twitter: 各種APIを呼び出すための
• User / Status : ユーザー、ツイートを表すインターフェース
Twitter4Jの使い方
• twitter4j.properties: 各種キー、設定を記載。classes/以下に配置
• TwitterFactoryよりTwitterインスタンスを取得
• Twitterインスタンスのメソッド呼び出し
演習: Twitter4Jのインスタンス化
public static void main(String… args[]) throws TwitterException {
Twitter twitter = TwitterFactory.getSingleton();
}
<dependencies>
<dependency>
<groupId>org.twitter4j</groupId>
<artifactId>twitter4j-core</artifactId>
<version>[4.0,)</version>
</dependency>
</dependencies>
必要に応じてmaven依存追加
演習: twitter4j.propertiesの設定
oauth.consumerKey=****
oauth.consumerSecret=****
oauth.accessToken=****
oauth.accessTokenSecret=****
resources/twitter4j.properties
Userオブジェクト
• Twitterのユーザーを表す
• 取得できるもの:
• スクリーン名(@yusuke等) : User#getScreenName()
• ユーザーID(API上の識別ID): User#getId()
• プロフィールテキスト: User#getDescription();
• 等
演習: 自分のユーザーオブジェクトを取得
public static void main(String… args[]) throws TwitterException {
Twitter twitter = TwitterFactory.getSingleton();
User user = twitter.showUser(“yusuke”);
System.out.println(user.getScreenName());
System.out.println(user.getId());
System.out.println(user.getDescription());
}
Statusオブジェクト
• ツイートを表す
• 取得できるもの:
• ツイートテキスト : Status#getText()
• ツイートID: Status#getId()
• 埋込メディア: Status#getMediaEntities()
• 等
演習: Statusオブジェクトを取得
public static void main(String… args[]) throws TwitterException {
Twitter twitter = TwitterFactory.getSingleton();
Status status = twitter.showStatus(20);
System.out.println(status.getText());
System.out.println(status.getUser().getScreenName());
}
ツイート
• updateStatusメソッド
• Twitter#updateStatus(text)
@ツイート
• updateStatusメソッド
• Twitter#updateStatus(“@スクリーン名” + text)
演習: @yusuke宛ての@ツイート
public static void main(String… args[]) throws TwitterException {
Twitter twitter = TwitterFactory.getSingleton();
Status status = twitter.updateStatus(“@yusuke Hello!”);
System.out.println(status.getText());
System.out.println(status.getUser().getScreenName());
}
ストリーミング API
• プッシュ型
‣ 特定のユーザーのアクティビティをリアルタイムに取得
または
‣ 指定したキーワードにマッチするツイートをリアルタイムに取得
ストリーミング API
• ツイート、DMなどを受信し続けられる
• レートリミットがない
• 利用出来る場面ではREST APIより優先的に利用
• 技術
• 普通のHTTP
• レスポンスに終わりがない
• cometでもWebSocketでもない
演習
• printSampleStream.sh/cmdを実行
ストリーミングAPIの接続
• 十分に帯域のある環境で利用
• 3G接続は推奨されない(モバイルアプリ不可)
• 再接続アルゴリズムを正しく実装
• アグレッシブに再接続すると一時的に使えなくなる
再接続アルゴリズム
•最初に接続切れを起こした場合
即座に再接続を試みる。
•TCP/IPレベルのネットワークエラーが発生した場合
250ミリ秒から始め、最大16秒までエラー毎に250ミリ秒足していくなど線形的に
待ち時間を増やしていく。
•HTTPエラー(ステータスコードが201以上)が返った場合
10秒から始め、失敗する毎に待ち時間を最大で240秒まで倍ずつ指数関数的に増
やしていく。
HTTPエラーは認証情報の間違いやプロキシの不具合などアプリケーションの設定
に起因する問題の可能性があるのでユーザーへ通知することも考慮に入れる。
参考:Twitter APIポケットリファレンス P265
https://dev.twitter.com/docs/streaming-api/concepts#connecting
ストリーミングAPIの種類
• Streamed Tweets
• パブリックタイムラインを取得
• User Stream
• 単一ユーザーのタイムライン、イベントを取得
• Site Stream
• 複数ユーザーのタイムライン、イベントを取得
Streamed Tweets
• sample
• filter
• firehose
• links
• retweet
Streamed Tweets
• sample
• filter
• firehose
• links
• retweet
sample
• パブリックなツイートのうち1%を取得
• エンドポイント(GET)
‣ https://stream.twitter.com/1.1/statuses/sample.json
• パラメータ
‣ なし
• レスポンス
‣ statusオブジェクトのjson (REST APIと同じ)
sample
• 使いどころ
• ツイート分析
• 言語
• クライアント
• 流行の固有名詞抽出
• 等々
FAQ
• sample.jsonを複数接続すれば・・・・
• 同じツイートが返るので無意味。1%以上はとれない
filter
• 指定した条件のツイートを取得
• エンドポイント(POST)
‣ https://stream.twitter.com/1.1/statuses/filter.json
• パラメータ
‣ 色々(次ページ)
• レスポンス
‣ statusオブジェクトのjson (REST APIと同じ)
filterのパラメータ
• follow
• 指定したユーザーIDのツイートを取得
• track
• 指定したキーワードを含むツイートを取得
• 1キーワードは60文字まで
• 日本語はトークナイズされない
• 日本語ハッシュタグは指定可能
follow=1235,5678
track=%25twtr_hack,%25twtter4j
filterのパラメータ(続き)
• locations
• 区域を指定してツイートを取得
locations=138.927,35.500,139.932,35.795
138.927,35.500
139.932,35.795
南西 北東
経度・緯度順なのに注意
FAQ
• 日本全体をカバーする区域を指定すれば・・
• ヒットするツイートが多すぎる場合はその旨が通知される
• 大量の区域を指定したい場合は?
• 要相談
• プロテクトアカウントのツイートは?
• 取得できない。User StreamかSite Streamを利用
{"limit":{"track":1234}}
User Stream
• 単一ユーザーのタイムライン、イベントを取得
• 目的: デスクトップの通知ツールなど
• タイムラインのツイート、DM、fav / follow等を受信
• プロテクトアカウントのツイートも受信可能
• 要OAuth( or XAuth)
User Stream
• エンドポイント(POST)
‣ https://userstream.twitter.com/1.1/user.json
• レスポンス
‣ statusオブジェクトのjson等
演習
• printUserStream.sh/cmdを実行
Site Stream(beta)
• 複数ユーザーのタイムライン、イベントを取得
• 目的: Twitter連携するサービスなど
• タイムラインのツイート、DM、fav / follow等を受信
• プロテクトアカウントのツイートも受信可能
• 要OAuth
Site Stream
• エンドポイント(POST)
‣ https://sitestream.twitter.com/1.1/site.json
• パラメータ
‣ follow: 受信するユーザーIDをカンマ区切りで指定、100人まで
• レスポンス
‣ statusオブジェクトのjson等
follow=1234,5678,91023,45324....
Site Streamのコネクション管理
• 接続時に指定できるユーザーは100人まで
• 事前にOAuth認証しておく必要がある
• コントロールストリームでユーザーの追加、削除可能
• 1コネクションで最大1000人まで受信可能
コントロールストリーム
• Site Stream接続時にコントロール用エンドポイントが返る
• RESTでコントロール用エンドポイントを操作
https://dev.twitter.com/docs/streaming-api/control-streams
{"control": {
“control_uri":"/1.1/site/c/1_1_54e345d655ee3e8d"
}}
https://sitestream.twitter.com/1.1/site/c/1_1_54e345d655ee3e8d”
コントロールストリームのメソッド
• ユーザーの追加 (POST)
• パラメータ
• user_id: カンマ区切りのユーザーID(100人まで)
https://sitestream.twitter.com/1.1/site/c/****/add_user.json”
コントロールストリームのメソッド
• ユーザーの削除(POST)
• パラメータ
• user_id: カンマ区切りのユーザーID(100人まで)
https://sitestream.twitter.com/1.1/site/c/****/remove_user.json”
ベストプラクティス
• 可能な限りストリーミング APIを使う
• 参照系はレートリミット回避のためできるかぎりREST APIよりもストリーミン
グ APIを利用
• gzipを使う
• 帯域を節約
• 接続ネットワークを確認
• 3G接続での利用は推奨されない。接続が切られることも
FAQ
• ストリーミングAPIはJavaScriptから使える?
• 使えない。サーバサイドの仕組みが必要
• 1%以上のツイートにアクセスしたい
• http://gnip.com/
• firehoseは?
• 一般に提供はされていない

More Related Content

What's hot

WatchKitを実際にさわってみてわかったこと
WatchKitを実際にさわってみてわかったことWatchKitを実際にさわってみてわかったこと
WatchKitを実際にさわってみてわかったことShuichi Tsutsumi
 
広島IT勉強会カレンダー(仮)はRubyを使っています
広島IT勉強会カレンダー(仮)はRubyを使っています広島IT勉強会カレンダー(仮)はRubyを使っています
広島IT勉強会カレンダー(仮)はRubyを使っていますYoshitake Takata
 
Googleアナリティクス ランキング概要
Googleアナリティクス ランキング概要Googleアナリティクス ランキング概要
Googleアナリティクス ランキング概要AppBank
 
watchOS 2 新機能の細かい話
watchOS 2 新機能の細かい話watchOS 2 新機能の細かい話
watchOS 2 新機能の細かい話Shuichi Tsutsumi
 

What's hot (7)

WatchKitを実際にさわってみてわかったこと
WatchKitを実際にさわってみてわかったことWatchKitを実際にさわってみてわかったこと
WatchKitを実際にさわってみてわかったこと
 
appengine活用事例資料@TDDBC札幌2.1
appengine活用事例資料@TDDBC札幌2.1appengine活用事例資料@TDDBC札幌2.1
appengine活用事例資料@TDDBC札幌2.1
 
Apple Watch 間通信
Apple Watch 間通信Apple Watch 間通信
Apple Watch 間通信
 
広島IT勉強会カレンダー(仮)はRubyを使っています
広島IT勉強会カレンダー(仮)はRubyを使っています広島IT勉強会カレンダー(仮)はRubyを使っています
広島IT勉強会カレンダー(仮)はRubyを使っています
 
Googleアナリティクス ランキング概要
Googleアナリティクス ランキング概要Googleアナリティクス ランキング概要
Googleアナリティクス ランキング概要
 
watchOS 2 新機能の細かい話
watchOS 2 新機能の細かい話watchOS 2 新機能の細かい話
watchOS 2 新機能の細かい話
 
Elastic Beanstalk 概要
Elastic Beanstalk 概要Elastic Beanstalk 概要
Elastic Beanstalk 概要
 

Similar to Twitter4jハンズオン 5/1 #twtr_hack

python-twitterを用いたTwitterデータ収集
python-twitterを用いたTwitterデータ収集python-twitterを用いたTwitterデータ収集
python-twitterを用いたTwitterデータ収集Hikaru Takemura
 
StreamingAPIを使用したTwitter Bot @waketi の紹介
StreamingAPIを使用したTwitter Bot @waketi の紹介 StreamingAPIを使用したTwitter Bot @waketi の紹介
StreamingAPIを使用したTwitter Bot @waketi の紹介 kaiba d
 
Streaming API で実現する クラウド ⇔ イントラ連携
Streaming API で実現する クラウド ⇔ イントラ連携Streaming API で実現する クラウド ⇔ イントラ連携
Streaming API で実現する クラウド ⇔ イントラ連携Shinichi Tomita
 
Twitter連携chrome extension作り方
Twitter連携chrome extension作り方Twitter連携chrome extension作り方
Twitter連携chrome extension作り方Hiroshi Oyamada
 
仙台 iOS開発者勉強会 2011/11/03 - TwitterAPIについて
仙台 iOS開発者勉強会 2011/11/03 - TwitterAPIについて仙台 iOS開発者勉強会 2011/11/03 - TwitterAPIについて
仙台 iOS開発者勉強会 2011/11/03 - TwitterAPIについてtototti
 
CharpTwitter
CharpTwitterCharpTwitter
CharpTwitterytanno
 
第四回Web apiを使ってwebアプリケーションを作る勉強会テキスト2
第四回Web apiを使ってwebアプリケーションを作る勉強会テキスト2第四回Web apiを使ってwebアプリケーションを作る勉強会テキスト2
第四回Web apiを使ってwebアプリケーションを作る勉強会テキスト2脇村 隆
 
Google App Engineでできる、あんなこと/こんなこと
Google App Engineでできる、あんなこと/こんなことGoogle App Engineでできる、あんなこと/こんなこと
Google App Engineでできる、あんなこと/こんなことa-know
 
Google App EngineでTwitterアプリを作ろう
Google App EngineでTwitterアプリを作ろうGoogle App EngineでTwitterアプリを作ろう
Google App EngineでTwitterアプリを作ろうkenji4569
 
学生向けAndroid勉強会(入門編)
学生向けAndroid勉強会(入門編)学生向けAndroid勉強会(入門編)
学生向けAndroid勉強会(入門編)Itsuki Kuroda
 
Webサイト向けAPI #twtr_hack
Webサイト向けAPI #twtr_hackWebサイト向けAPI #twtr_hack
Webサイト向けAPI #twtr_hackYusuke Yamamoto
 
Twitterのデータを取得する準備
Twitterのデータを取得する準備Twitterのデータを取得する準備
Twitterのデータを取得する準備Takeshi Arabiki
 
Data APIの背景と活用方法
Data APIの背景と活用方法Data APIの背景と活用方法
Data APIの背景と活用方法Hajime Fujimoto
 
[日本語・Japanese] Creative Technical Content for Better Developer Experience
[日本語・Japanese] Creative Technical Content for Better Developer Experience[日本語・Japanese] Creative Technical Content for Better Developer Experience
[日本語・Japanese] Creative Technical Content for Better Developer ExperienceTomomi Imura
 
20131030 dstnハッカソン - ワークショップ
20131030 dstnハッカソン - ワークショップ20131030 dstnハッカソン - ワークショップ
20131030 dstnハッカソン - ワークショップdstn
 
初めての Data api cms どうでしょう - 大阪夏の陣
初めての Data api   cms どうでしょう - 大阪夏の陣初めての Data api   cms どうでしょう - 大阪夏の陣
初めての Data api cms どうでしょう - 大阪夏の陣Yuji Takayama
 

Similar to Twitter4jハンズオン 5/1 #twtr_hack (20)

python-twitterを用いたTwitterデータ収集
python-twitterを用いたTwitterデータ収集python-twitterを用いたTwitterデータ収集
python-twitterを用いたTwitterデータ収集
 
StreamingAPIを使用したTwitter Bot @waketi の紹介
StreamingAPIを使用したTwitter Bot @waketi の紹介 StreamingAPIを使用したTwitter Bot @waketi の紹介
StreamingAPIを使用したTwitter Bot @waketi の紹介
 
Streaming API で実現する クラウド ⇔ イントラ連携
Streaming API で実現する クラウド ⇔ イントラ連携Streaming API で実現する クラウド ⇔ イントラ連携
Streaming API で実現する クラウド ⇔ イントラ連携
 
Twitter連携chrome extension作り方
Twitter連携chrome extension作り方Twitter連携chrome extension作り方
Twitter連携chrome extension作り方
 
仙台 iOS開発者勉強会 2011/11/03 - TwitterAPIについて
仙台 iOS開発者勉強会 2011/11/03 - TwitterAPIについて仙台 iOS開発者勉強会 2011/11/03 - TwitterAPIについて
仙台 iOS開発者勉強会 2011/11/03 - TwitterAPIについて
 
CharpTwitter
CharpTwitterCharpTwitter
CharpTwitter
 
1030 twitter講座.key
1030 twitter講座.key1030 twitter講座.key
1030 twitter講座.key
 
第四回Web apiを使ってwebアプリケーションを作る勉強会テキスト2
第四回Web apiを使ってwebアプリケーションを作る勉強会テキスト2第四回Web apiを使ってwebアプリケーションを作る勉強会テキスト2
第四回Web apiを使ってwebアプリケーションを作る勉強会テキスト2
 
Google App Engineでできる、あんなこと/こんなこと
Google App Engineでできる、あんなこと/こんなことGoogle App Engineでできる、あんなこと/こんなこと
Google App Engineでできる、あんなこと/こんなこと
 
Google App EngineでTwitterアプリを作ろう
Google App EngineでTwitterアプリを作ろうGoogle App EngineでTwitterアプリを作ろう
Google App EngineでTwitterアプリを作ろう
 
学生向けAndroid勉強会(入門編)
学生向けAndroid勉強会(入門編)学生向けAndroid勉強会(入門編)
学生向けAndroid勉強会(入門編)
 
Webサイト向けAPI #twtr_hack
Webサイト向けAPI #twtr_hackWebサイト向けAPI #twtr_hack
Webサイト向けAPI #twtr_hack
 
Chatterを使ったカスタムソーシャル
Chatterを使ったカスタムソーシャルChatterを使ったカスタムソーシャル
Chatterを使ったカスタムソーシャル
 
Twitterのデータを取得する準備
Twitterのデータを取得する準備Twitterのデータを取得する準備
Twitterのデータを取得する準備
 
Data APIの背景と活用方法
Data APIの背景と活用方法Data APIの背景と活用方法
Data APIの背景と活用方法
 
Twitter4Jとテスト
Twitter4JとテストTwitter4Jとテスト
Twitter4Jとテスト
 
[日本語・Japanese] Creative Technical Content for Better Developer Experience
[日本語・Japanese] Creative Technical Content for Better Developer Experience[日本語・Japanese] Creative Technical Content for Better Developer Experience
[日本語・Japanese] Creative Technical Content for Better Developer Experience
 
1023 twitter講座後半
1023 twitter講座後半1023 twitter講座後半
1023 twitter講座後半
 
20131030 dstnハッカソン - ワークショップ
20131030 dstnハッカソン - ワークショップ20131030 dstnハッカソン - ワークショップ
20131030 dstnハッカソン - ワークショップ
 
初めての Data api cms どうでしょう - 大阪夏の陣
初めての Data api   cms どうでしょう - 大阪夏の陣初めての Data api   cms どうでしょう - 大阪夏の陣
初めての Data api cms どうでしょう - 大阪夏の陣
 

More from Yusuke Yamamoto

株式会社サムライズム 新製品発表会 物理イカリングのご紹介 #gbdaitokai
株式会社サムライズム 新製品発表会 物理イカリングのご紹介 #gbdaitokai株式会社サムライズム 新製品発表会 物理イカリングのご紹介 #gbdaitokai
株式会社サムライズム 新製品発表会 物理イカリングのご紹介 #gbdaitokaiYusuke Yamamoto
 
これからはじめるGit、GitHub #stapy
これからはじめるGit、GitHub #stapyこれからはじめるGit、GitHub #stapy
これからはじめるGit、GitHub #stapyYusuke Yamamoto
 
誰も知らない IntelliJ IDEA凄技100選 #kotlin_sansan
誰も知らない IntelliJ IDEA凄技100選 #kotlin_sansan誰も知らない IntelliJ IDEA凄技100選 #kotlin_sansan
誰も知らない IntelliJ IDEA凄技100選 #kotlin_sansanYusuke Yamamoto
 
JetBrains IDEハンズオン
JetBrains IDEハンズオンJetBrains IDEハンズオン
JetBrains IDEハンズオンYusuke Yamamoto
 
Java Küche 2016 LT 在室状況自動通知ボット #JavaKueche
Java Küche 2016 LT 在室状況自動通知ボット #JavaKuecheJava Küche 2016 LT 在室状況自動通知ボット #JavaKueche
Java Küche 2016 LT 在室状況自動通知ボット #JavaKuecheYusuke Yamamoto
 
Java Küche 2016 #JavaKueche
Java Küche 2016 #JavaKuecheJava Küche 2016 #JavaKueche
Java Küche 2016 #JavaKuecheYusuke Yamamoto
 
JavaOne2016 #CON5929 Time-Saving Tips and Tricks for Building Quality Java Ap...
JavaOne2016 #CON5929 Time-Saving Tips and Tricks for Building Quality Java Ap...JavaOne2016 #CON5929 Time-Saving Tips and Tricks for Building Quality Java Ap...
JavaOne2016 #CON5929 Time-Saving Tips and Tricks for Building Quality Java Ap...Yusuke Yamamoto
 
WebStormから始まる快適Web開発ワークフロー #html5jk
WebStormから始まる快適Web開発ワークフロー #html5jkWebStormから始まる快適Web開発ワークフロー #html5jk
WebStormから始まる快適Web開発ワークフロー #html5jkYusuke Yamamoto
 
データクラスから始めるKotlin / JetBrainsに行ってきました #kotlin_kansai #jkug
データクラスから始めるKotlin / JetBrainsに行ってきました #kotlin_kansai #jkug データクラスから始めるKotlin / JetBrainsに行ってきました #kotlin_kansai #jkug
データクラスから始めるKotlin / JetBrainsに行ってきました #kotlin_kansai #jkug Yusuke Yamamoto
 
Troubleshooting Slowdowns, Freezes, Deadlocks : Introduction to Thread Dump #...
Troubleshooting Slowdowns, Freezes, Deadlocks : Introduction to Thread Dump #...Troubleshooting Slowdowns, Freezes, Deadlocks : Introduction to Thread Dump #...
Troubleshooting Slowdowns, Freezes, Deadlocks : Introduction to Thread Dump #...Yusuke Yamamoto
 
カジュアルにスレッドダンプ - @yusuke #javacasual
カジュアルにスレッドダンプ - @yusuke #javacasualカジュアルにスレッドダンプ - @yusuke #javacasual
カジュアルにスレッドダンプ - @yusuke #javacasualYusuke Yamamoto
 
Excel方眼紙アプリケーションサーバと侍の新機能 #jjug
Excel方眼紙アプリケーションサーバと侍の新機能 #jjugExcel方眼紙アプリケーションサーバと侍の新機能 #jjug
Excel方眼紙アプリケーションサーバと侍の新機能 #jjugYusuke Yamamoto
 
株式会社サムライズム@samuraismがcoincheck for ECを使ってビットコイン決済に対応した話 #gbdaitokai
株式会社サムライズム@samuraismがcoincheck for ECを使ってビットコイン決済に対応した話 #gbdaitokai 株式会社サムライズム@samuraismがcoincheck for ECを使ってビットコイン決済に対応した話 #gbdaitokai
株式会社サムライズム@samuraismがcoincheck for ECを使ってビットコイン決済に対応した話 #gbdaitokai Yusuke Yamamoto
 
Botを使った業務効率化 / Java8を使ったBot実装効率化 @yusuke #jjug
Botを使った業務効率化 / Java8を使ったBot実装効率化 @yusuke #jjugBotを使った業務効率化 / Java8を使ったBot実装効率化 @yusuke #jjug
Botを使った業務効率化 / Java8を使ったBot実装効率化 @yusuke #jjugYusuke Yamamoto
 
Java デバッガ活用術 ~勘デバッグ・print デバッグから抜けだそう~ #jjug_ccc #ccc_h4
Java デバッガ活用術 ~勘デバッグ・print デバッグから抜けだそう~ #jjug_ccc #ccc_h4Java デバッガ活用術 ~勘デバッグ・print デバッグから抜けだそう~ #jjug_ccc #ccc_h4
Java デバッガ活用術 ~勘デバッグ・print デバッグから抜けだそう~ #jjug_ccc #ccc_h4Yusuke Yamamoto
 
貧乏人のHeroku活用術 #herokujp
貧乏人のHeroku活用術 #herokujp貧乏人のHeroku活用術 #herokujp
貧乏人のHeroku活用術 #herokujpYusuke Yamamoto
 
リーンスタートアップ x Java #jjug #jjug_ccc #ccc_h4
リーンスタートアップ x Java #jjug #jjug_ccc #ccc_h4リーンスタートアップ x Java #jjug #jjug_ccc #ccc_h4
リーンスタートアップ x Java #jjug #jjug_ccc #ccc_h4Yusuke Yamamoto
 
JavaScript時代のJava #kansumiB7 #kansumi
JavaScript時代のJava #kansumiB7 #kansumiJavaScript時代のJava #kansumiB7 #kansumi
JavaScript時代のJava #kansumiB7 #kansumiYusuke Yamamoto
 
テンプレートエンジンの話 #jjug
テンプレートエンジンの話 #jjugテンプレートエンジンの話 #jjug
テンプレートエンジンの話 #jjugYusuke Yamamoto
 
失敗から学ぶAPI設計 #ccc_h4 #jjug #jjug_ccc JJUG CCC 2013 Spring
失敗から学ぶAPI設計  #ccc_h4 #jjug #jjug_ccc JJUG CCC 2013 Spring 失敗から学ぶAPI設計  #ccc_h4 #jjug #jjug_ccc JJUG CCC 2013 Spring
失敗から学ぶAPI設計 #ccc_h4 #jjug #jjug_ccc JJUG CCC 2013 Spring Yusuke Yamamoto
 

More from Yusuke Yamamoto (20)

株式会社サムライズム 新製品発表会 物理イカリングのご紹介 #gbdaitokai
株式会社サムライズム 新製品発表会 物理イカリングのご紹介 #gbdaitokai株式会社サムライズム 新製品発表会 物理イカリングのご紹介 #gbdaitokai
株式会社サムライズム 新製品発表会 物理イカリングのご紹介 #gbdaitokai
 
これからはじめるGit、GitHub #stapy
これからはじめるGit、GitHub #stapyこれからはじめるGit、GitHub #stapy
これからはじめるGit、GitHub #stapy
 
誰も知らない IntelliJ IDEA凄技100選 #kotlin_sansan
誰も知らない IntelliJ IDEA凄技100選 #kotlin_sansan誰も知らない IntelliJ IDEA凄技100選 #kotlin_sansan
誰も知らない IntelliJ IDEA凄技100選 #kotlin_sansan
 
JetBrains IDEハンズオン
JetBrains IDEハンズオンJetBrains IDEハンズオン
JetBrains IDEハンズオン
 
Java Küche 2016 LT 在室状況自動通知ボット #JavaKueche
Java Küche 2016 LT 在室状況自動通知ボット #JavaKuecheJava Küche 2016 LT 在室状況自動通知ボット #JavaKueche
Java Küche 2016 LT 在室状況自動通知ボット #JavaKueche
 
Java Küche 2016 #JavaKueche
Java Küche 2016 #JavaKuecheJava Küche 2016 #JavaKueche
Java Küche 2016 #JavaKueche
 
JavaOne2016 #CON5929 Time-Saving Tips and Tricks for Building Quality Java Ap...
JavaOne2016 #CON5929 Time-Saving Tips and Tricks for Building Quality Java Ap...JavaOne2016 #CON5929 Time-Saving Tips and Tricks for Building Quality Java Ap...
JavaOne2016 #CON5929 Time-Saving Tips and Tricks for Building Quality Java Ap...
 
WebStormから始まる快適Web開発ワークフロー #html5jk
WebStormから始まる快適Web開発ワークフロー #html5jkWebStormから始まる快適Web開発ワークフロー #html5jk
WebStormから始まる快適Web開発ワークフロー #html5jk
 
データクラスから始めるKotlin / JetBrainsに行ってきました #kotlin_kansai #jkug
データクラスから始めるKotlin / JetBrainsに行ってきました #kotlin_kansai #jkug データクラスから始めるKotlin / JetBrainsに行ってきました #kotlin_kansai #jkug
データクラスから始めるKotlin / JetBrainsに行ってきました #kotlin_kansai #jkug
 
Troubleshooting Slowdowns, Freezes, Deadlocks : Introduction to Thread Dump #...
Troubleshooting Slowdowns, Freezes, Deadlocks : Introduction to Thread Dump #...Troubleshooting Slowdowns, Freezes, Deadlocks : Introduction to Thread Dump #...
Troubleshooting Slowdowns, Freezes, Deadlocks : Introduction to Thread Dump #...
 
カジュアルにスレッドダンプ - @yusuke #javacasual
カジュアルにスレッドダンプ - @yusuke #javacasualカジュアルにスレッドダンプ - @yusuke #javacasual
カジュアルにスレッドダンプ - @yusuke #javacasual
 
Excel方眼紙アプリケーションサーバと侍の新機能 #jjug
Excel方眼紙アプリケーションサーバと侍の新機能 #jjugExcel方眼紙アプリケーションサーバと侍の新機能 #jjug
Excel方眼紙アプリケーションサーバと侍の新機能 #jjug
 
株式会社サムライズム@samuraismがcoincheck for ECを使ってビットコイン決済に対応した話 #gbdaitokai
株式会社サムライズム@samuraismがcoincheck for ECを使ってビットコイン決済に対応した話 #gbdaitokai 株式会社サムライズム@samuraismがcoincheck for ECを使ってビットコイン決済に対応した話 #gbdaitokai
株式会社サムライズム@samuraismがcoincheck for ECを使ってビットコイン決済に対応した話 #gbdaitokai
 
Botを使った業務効率化 / Java8を使ったBot実装効率化 @yusuke #jjug
Botを使った業務効率化 / Java8を使ったBot実装効率化 @yusuke #jjugBotを使った業務効率化 / Java8を使ったBot実装効率化 @yusuke #jjug
Botを使った業務効率化 / Java8を使ったBot実装効率化 @yusuke #jjug
 
Java デバッガ活用術 ~勘デバッグ・print デバッグから抜けだそう~ #jjug_ccc #ccc_h4
Java デバッガ活用術 ~勘デバッグ・print デバッグから抜けだそう~ #jjug_ccc #ccc_h4Java デバッガ活用術 ~勘デバッグ・print デバッグから抜けだそう~ #jjug_ccc #ccc_h4
Java デバッガ活用術 ~勘デバッグ・print デバッグから抜けだそう~ #jjug_ccc #ccc_h4
 
貧乏人のHeroku活用術 #herokujp
貧乏人のHeroku活用術 #herokujp貧乏人のHeroku活用術 #herokujp
貧乏人のHeroku活用術 #herokujp
 
リーンスタートアップ x Java #jjug #jjug_ccc #ccc_h4
リーンスタートアップ x Java #jjug #jjug_ccc #ccc_h4リーンスタートアップ x Java #jjug #jjug_ccc #ccc_h4
リーンスタートアップ x Java #jjug #jjug_ccc #ccc_h4
 
JavaScript時代のJava #kansumiB7 #kansumi
JavaScript時代のJava #kansumiB7 #kansumiJavaScript時代のJava #kansumiB7 #kansumi
JavaScript時代のJava #kansumiB7 #kansumi
 
テンプレートエンジンの話 #jjug
テンプレートエンジンの話 #jjugテンプレートエンジンの話 #jjug
テンプレートエンジンの話 #jjug
 
失敗から学ぶAPI設計 #ccc_h4 #jjug #jjug_ccc JJUG CCC 2013 Spring
失敗から学ぶAPI設計  #ccc_h4 #jjug #jjug_ccc JJUG CCC 2013 Spring 失敗から学ぶAPI設計  #ccc_h4 #jjug #jjug_ccc JJUG CCC 2013 Spring
失敗から学ぶAPI設計 #ccc_h4 #jjug #jjug_ccc JJUG CCC 2013 Spring
 

Recently uploaded

論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 
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
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 

Recently uploaded (9)

論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 
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
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 

Twitter4jハンズオン 5/1 #twtr_hack