Home > twitter

twitter Archive

携帯版Twitterサイトへのステータス付きリンク

この記事の所要時間: 147

携帯版Twitterサイトにステータス付きリンクを貼る方法です。

Webサービスやblogによくある「Twitterで報告する」といったリンクですね。

クリックするとTwitterページに遷移して、ステータス(つぶやき)を入れるテキストエリアにすでにメッセージが入っています。あとは「UPDATE」をクリックするだけで、つぶやくことができます。

PCだと「http://twitter.com/home?status=AAA」がおなじみなのですが、この方法だと携帯版(twtr.jp)ではステータスがうまく引き継げずにstatus=AAAの内容がテキストボックスに入りません。

携帯版ではリンクの記載方法を変えることにより、同じ動作が可能です。

携帯版ステータス付きリンク

これはリンク先とパラメータが変わるだけです。

http://twtr.jp/status/create/?text=XXX

XXXがテキストボックスにセットしたい内容です。

ただtwtr.jpではキャリアによって文字エンコーディングが異なるのでXXXの部分のエンコーディングをキャリアに合わせて記述してやる必要があります。

キャリア別文字エンコーディング

キャリアに合わせて以下の文字エンコーディングで記述します。

DoCoMo au SoftBank
utf-8 CP932 utf-8

DoCoMoはcookie対応機が手元に無かったので試していません。誰かもし持っていれば「なんでも判定ツクール」で試して頂ければ嬉しいです:-D

追記:DoCoMoですがutf-8で問題無いそうです。@H_O_0221さん、テストありがとうございました!

なんでも判定ツクールでは、基本UTF-8で記述しておいて、auだけCP932に変換しています。

URLエンコーディングを忘れずに

どの文字エンコーディングに変換してもXXXの部分はURLエンコード(PHPならurlencode())する必要がありますので、お忘れなく。

2009年Twitterユーザに最も使われたプログラム言語は?

この記事の所要時間: 111

2009年に書いたプログラム言語を列挙する企画がTwitterで開催されています。

参加する

方法は簡単でハッシュタグ「#code2009」を付けて、2009年に書いたプログラム言語をカンマ区切り並べるだけです。

例えば私なら、こう。

集計を見る

postしたtweetはこちらのサイトで集計されます。
http://www.ioncannon.net/projects/code2009/

集計結果は4つのグラフでまとめられます。

例えばこんな感じ。

最も使われたのはJavaScript

2009年、Twitterユーザに一番使われている言語は「JavaScript」でした。(2010/01/02現在)

2位以下は「Ruby」「Java」「Python」「PHP」と続いています。

ちなみにプログラム言語のランキングとしておなじみのTIOBE Software(2009/12)では、一位が「Java」で、「C」「PHP」「C++」「VB」となっています。

Twitterユーザのランキングを見るとWebシステムで良く使われる言語が並んでいるので、やはりTwitterユーザにはWeb系の人が多いという当然の結果ですね。

まだpostしていない方は2009年のふりかえりに参加してみてはどうでしょう。

イブの夜、ustreamで2,000viewersを熱くしたDJ @okadadada

この記事の所要時間: 211

12/24未明、ustreamで日本人DJが2,000viewers以上を集めるパフォーマンスを魅せました。

深夜のアメトークを見つつ、そろそろ寝ようかなと思ってた時間帯。何気にTwitterを見ると、とあるDJがusreamでplayしているよ、というpostを見ました。

8畳間で深夜に踊るDJ

誰かがustでDJしているのはよくあることなんですが、なんだか異様に盛り上がっているらしいので、リンクからustreamへ。

その時はまだviewersが300人くらい。まず目に飛び込んできたのが、マンガだらけの部屋。激しく踊るDJの姿。そしてその光景に似つかわしくない(w PLAYが耳に流れてきます。

おおーこれは気持ちいいと思いつつ、TLを見ていると彼が @okadadada というIDでTwitterをやっていることが分かりました。

まあ画像を見るのが早いのでご紹介。

マンガ一杯の普通の部屋。滋賀県だそうです。

okada01_xmas2

踊るDJ、okadadada氏。

okada01_xmas1

2,000viewers! All Live 1位!

そして凄かったのがustのviewers。その素晴らしいplayに引き寄せられるようにあっという間に加算されていきます。400を超え、500を超えとなり、勢いが付いてからは一気に1,000を突き抜けました。

その頃にはustのAll Liveで堂々の 1位(!)に躍り出ました。

okada01_xmas_alllive

その後も勢いは加速する一方で、3:30を超えた頃には2,000viewersを超えました。

今これを書いている時点でも、まだviewersは増え続けており、okadadada氏のPlay、ダンスの勢いはとどまる事を知りません。

Twitterによる情報伝播の波

バンバンviewersが増えていったのですが、それに呼応にてTwitterのTLも @okadadada 一色となっていきました。ustのchatを見ていると2chやニコニコからの人も多かったようなのですが、Twitterからもかなりの人が見に行ったように思います。

Twitter上で火が付くと、RTであっという間に情報が伝播していく様は壮絶ですね。

Happy Merry X’mas!!

いやあ、とにかくすごいです。単純にDJ PLAYを見ている、聴いているのも楽しいのですが、イブの深夜に酔いしれるこの感覚を2,000人と共有しているのがたまんないですね。

いいもの見せて貰ってます。okadadada氏に感謝!

Twitterクラッキングによるアカウント乗っ取りを図にした

この記事の所要時間: 216

今日の15:00頃にtwitter.comがクラッキングされて、全く異なるトップページが表示されていたようです。

私が見た時は単に接続ができない状態だったのですが、DNSを不正に書き換えられてtwitter.comが別サーバに向くようになっていました。

すでに各サイトで技術的な解説はされているので、タイムラインで懸念されているアカウント乗っ取りについて図を書いてみました。

通常時

OAuthを使っていない多くのTwitterクライアントは、Basic認証を使ってアカウントの認証を行っています。つまりTLを取得するなり、postするなり、twitter.comへのリクエスト毎にアカウントIDとパスワードを毎回送信しています。

twitter_cracked_20091218_1

今回のクラッキング(DNS書き換え)

今回のようにDNSを書き換えられて、twitter.comがクラッカーのサーバを指し示すようになると、当然ながらリクエストがクラッカーのサーバに送信されます。

Twitterクライアントは、それがクラッカーのサーバとは知らないので、せっせとアカウントIDとパスワードを送信してしまいます。

もしクラッカーのサーバに送信されたIDとパスワードを保存する仕組みを持っていたら、がっつり収集されてしまいます。

twitter_cracked_20091218_2-1

復旧後

現在は無事に復旧して、twitter.comは本来のサーバを指すようになっています。

しかしクラッカーのサーバには収集したIDとパスワードがたんまりと残っています。もしその気になればIDとパスワードを使ってアカウントを乗っ取るのは造作もないことです。

twitter_cracked_20091218_3

じゃあ、どうするか?

じゃあ、パスワードを変更すれば良い、というのが一般的なアプローチです。

パスワードさえ変えてしまえば、クラッカーが収集したパスワードではログインできませんので、一件落着です。

しかし、Twitter自体にも問題があって「パスワードを変更するとアカウントがロックされてしまう」というような話があります。

もう2ヶ月も前の話なので、今は大丈夫かもしれません。ただアカウントをロックされる可能性もあるので、パスワード変更も積極的にはおすすめできなかったりします。

ということで何とも動きが取りづらいのが正直なところです。。。アカウントロックの問題が解消されているのであれば、パスワード変更した方が良いのですが。

御座候のTwitter botを作りました

この記事の所要時間: 111

御座候という回転焼き(a.k.a. 「今川焼き」「大判焼き」「二重焼き」「びっくり饅頭」)を知っていますか?

gozasorop

関西ではメジャーな甘味であちこちの駅やショッピングセンターに店舗があります。

あんこがぎっしり詰まっているのですが、それほど甘みが強くないのでペロッといけちゃいます。寒くなってきたので、温かい御座候と渋めのお茶の組み合わせはたまりません。

そんな御座候。毎日でも食べたい勢いなのですが、事務所の近くには店舗が無く、Twitterで想いをつぶやく日々(1, 2)が続いていました。

せめて、写真だけでも!ということで、Twitterでbotを作りました。良かったらフォローして下さい。

@gozasoro

フォローしておけば、良い感じの時間に御座候に関する内容をつぶやきます。タイムラインに御座候アイコンが登場すると嬉しくなります:-D

ちょい技術話

GAE+Pythonで作りました。

日本語文字列の扱いでちょっと躓いたりしましたが、やっぱりGAE+Pythonは良いです。あとPHPの良さも再認識したりもします。

今回も色々なサイトのノウハウを拝借したので、ある程度溜まったら自分からもアウトプットします。

というわけで、これからの季節にぴったりな御座候。タイムラインにもどうぞ。

ちなみに私は赤あんが好きです。

CakePHP日本語情報をつぶやくTwitter botを作りました

この記事の所要時間: 212

TwitterでCakePHP日本語情報をつぶやくbot「@cakephp_jp」を作りました。

cakephp_jp

なんとなく息抜きにTwitter botが作りたいなというのと、そういえばフォーラムへの投稿をTwitterで知りたいな、ということでさくっと作りました。

いまのところ以下のフィードを読んでpostしています。

良かったらfollowして下さい

@cakephp_jpをfollowする。

技術話

大したことは何もしてないのですが、参考に。

PHP

今回はCakePHPは使わずに素のPHPで作っています。後述するTokyoTyrant+TokyoCabinetを使ってますが、他のRDBMSは使ってません。

パパッと作れるのがPHPの利点ですね。

Yahoo! pipes

各フィードを寄せ集めるにはYahoo! pipesを使ってます。今後フィードを追加する際はここにガシガシ追加していくだけでokです。

出力をPHPのシリアライズデータで受け取れるので、unserialize()するだけですぐに連想配列として使えて便利です。

サンプル:$arrayにfeedが連想配列で入る

$data = file_get_contents('http://path/to/pipes');
if (!empty($data)) {
  $array = unserialize($data);
}

Pipes: CakePHP-jp

TokyoTyrant + TokyoCabinet + Net_TokyoTyrant

Twitterへのpostがこけた時のリトライ処理用にTokyoTyrant + TokyoCabinetを使ってます。この組み合わせを使った理由は単に使いたかっただけです:-D

PHPからの接続にはPEARライブラリのNet_TokyoTyrantを利用しています。

TokyoCabinet
TokyoTyrant
Net_TokyoTyrant – Openpear

bit.ly

リンク先のURL短縮にはbit.lyを使っています。

QUERY_STRINGで元URLを渡すとJSON or XMLで結果を返してくれるので楽チンです。

bitly-api – Project Hosting on Google Code

PHPカンファレンススピーカーのTwitterアカウント集

この記事の所要時間: 412

PHPカンファレンスお疲れ様でした!

カンファレンスでは数多くの素晴らしい発表があったわけですが、そんなスピーカーの方々のTwitterアカウントを集めてみました。スピーカーの方々の今後にも要チェックということで:-D

勝手に載せていますので、載せるな、間違っている等々あれば連絡下さいm(_ _)m

# 廣川さん[2010/09/13] コメントで教えて頂きました:DとBrianさんが分かりませんでした。分かる方教えて下さい。。。

[2009/09/15] mocapapa氏のidが誤っていたので、修正しました。ご指摘ありがとうございました。

ビジネスデイ

  • @suzuki
    [B-1]イントロダクション
    日本PHPユーザ会 トライコーン株式会社 鈴木則夫氏
  • @nagasheep
    NetCommonsでオープンソース・ビジネスモデルの実現
    NPO法人コモンズネット理事 OSSコンソーシアム理事兼CMSビジネス部会リーダ オープンソース・ワークショップ 代表 永原 篤氏
  • @naokomc
    [B-3]世界標準パブリッシングプラットホーム WordPress
    WordPress 日本語チーム / Automattic, Inc. マクラケン直子氏
  • @teilnehmen
    [B-4]eZ Publish ディスクール– エンタープライズWebCMSに求められる機能とその実現 —
    eZ Systems Japan Business Development Manager 藤田 拓氏
  • @hiito
    [B-5]Oracleで加速させよう!PHPのビジネス活用~スケーラブルで高可用性でクラウドで~
    日本オラクル株式会社 マーケティング本部 シニアマネジャー 伊東裕揮氏
  • @tanakayoshikazu
    [B-6]ソーシャルメディア GREE
    グリー株式会社 田中 良和氏
  • @ockeghem
    [B-7]45分で分かる、安全なWebアプリケーション開発のための、発注・要件・検収
    HASHコンサルティング株式会社 代表取締役 徳丸 浩氏

テックデイ[メイン会場]

  • @yando
    [T-100]オープニング / [T-105]CakePHPストーリー
    CakePHPの何か 安藤 祐介氏
  • @rui_hi
    [T-101]基調講演
    日本PHPユーザ会 廣川 類氏
  • @finjonkiang
    [T-102]台湾PHPコミュニティの日々
    Taiwan PHP User Group 江 明宗氏

  • [T-103]APCによるハイパフォーマンスの実現
    Facebook,inc Brian Shire氏
  • @shin1x1
    [T-104]PHP を見える化する
    新原雅司
  • @moriyoshi
    [T-106]PHP を「いじり」倒す 10 の方法
    moriyoshi氏
  • @nowelium
    [T-107]Q4MとFlareを使ってスケーラブルなサービスを作る!
    漢祐介(nowel)氏
  • @fabpot
    [T-108]Symfony, a web framework for professional websites
    Fabien Potencier氏
  • @k1Low
    Tokyo Tyrant + PHP
    小山健一郎氏
  • @hnw
    phpall:PHPの全バージョンの挙動を試す
    hnw氏
  • @yohgaki
    PHP4の現状とセキュリティパッチサービス
    大垣靖男氏
  • @takayuki_h
    クラウド対応型フレームワーク「Monocheros」
    萩原崇之氏
  • @yokkuns
    初めてのPHP Extension
    yokkuns氏

テックデイ[サブ会場]

  • @kashioka
    [T-202]~PHP初心者講座~ WEB業界で生き抜くために
    日本PHPユーザ会 有限会社アリウープ 柏岡秀男
  • @pugpug9
    [T-203A]はじめてのyii
    mocapapa氏
  • @MugeSo
    [T-203B]PHPアプリケーションフレームワーク Agavi入門
    田中康一(MugeSo)氏
  • @kunitsuji
    [T-203C]フレームワークCodeIgniterを使ってのアプリケーションプラットフォーム作成による、業務案件、アプリ開発の効率化について
    辻岡国治(kunitsuji)氏
  • @yoya
    [T-203D]Flash 書き換え PHP extension (第二回)
    山崎義弘(よや)氏
  • @kenji_s
    [T-205A]『PHP逆引きレシピ』とセキュリティのこと
    Kenji Suzuki氏
  • @kanreisa
    [T-205B]現役高校生のPHP開発
    菅礼紗氏
  • @sotarok / @riaf
    [T-205C]新しくなったOpenpear
    sotarok氏とriaf氏
  • @2chdephp
    [T-205D]PHP初心者勉強会について
    永原智聡氏
  • @hirookun
    [T-208]マイクロソフトのWebサーバー(IIS)と一緒にPHPを動かそう! ~構築手順 詳細解説と実演~
    マイクロソフト株式会社 エバンジェリスト 奥主 洋氏

シンプルなTwitter検索「findTwitter」を作りました&ソース公開

この記事の所要時間: 326

AutoPagerize対応したシンプルなTwitter検索「findTwitter」を作りました。

findTwitter

Twitterのつぶやきを検索

機能はシンプルです。テキストボックスに検索したいキーワードを入力して、「検索する」ボタンをクリックするとキーワードに合致したつぶやきを表示します。

「shin1x1」で検索

find_twitter_screen

検索パターンとしては以下のような組み合わせが可能です。

  • 単語で検索。(ex. [CakePHP])
  • スペースで単語を連結してAND検索。(ex. [PHP カンファレンス])
  • 「OR」で単語を連結してOR検索。(ex. [shin1x1 OR msng])

仕組み

TwitterAPIを叩いているだけ

仕組みはごくごく単純でTwitterの検索APIを叩いてるだけです。

検索結果はAPIの挙動に依存しているので、検索漏れや古いつぶやきが検索対象にならないなど現象があります。

CakePHP

CakePHP1.2.4を利用しています。上記のようにAPIを叩いてるだけなのでDBは使っていません。

レンタルサーバで動作

ごく普通のレンタルサーバに置いているだけです。

ソースを公開

このサービスの本質はこちらです。

findTwitterのソースコードはgithubにて公開しています。

動作環境は、PHP5以上でCakePHPが動けば問題無いと思います。ライセンスはCakePHPに習ってMITライセンスにするので、ご自由にご利用下さい。

githubは分からない方にはZIPアーカイブも用意しています。下のリンクからもダウンロードして下さい。

CakePHPで動くサンプルを

CakePHPはフレームワークとしては多くの導入事例があるのですが、CakePHPを利用したオープンソースシステムが公開されている例は実はあまりありません。

最近では、私も(いちおう)参加しているPHP版Redmine「candycane」があるですが、これはRedmineという開発のプロが実務で利用しているシステムの移植ということで、これからCakePHPを使いたい人が参考するには大きいかな、という印象があります。

そこで全体は小さいものの、一つのシステムとして稼働するサンプルとしてfindTwitterを作りました。

WebサービスAPIを使ったシステムということで、手軽にサービスを作ってみたい人にはサンプルとして参考になるかと思います。

フレームワークを除いたソースは少しだけなので、特に難しいところは無いと思うのですが、いずれblogで解説を書くなり、発表するなりしたいと思います。findTwitterをベースにWebサービスを作る勉強会なんかも良いですね:-D

フレームワークだけで

こういった主旨なのでCakePHPの機能だけで作りました。

普段は自社で蓄えているプラグインやライブラリを活用しているのですが、今回は素のCakePHPだけで作っています。まあ、findTwitterは仕様も単純ですし、もともとCakeは機能が揃っているので特に困りませんでした。

また、どこでも動くようにということでfind-twitter.inはレンタルサーバ(チカッパ!)に設置しています。

レンタルサーバに設置するだけで動くCakePHPの良さを再認識しました:-D

楽しさを

Webサービスを作るのは大変なこともありますが、本当に楽しいものです。特にTwitterがある今ではユーザさんからリアルに反応を貰うことができます(もちろん非難もありますが><)。自分が作ったサービスで誰かがわくわくしているかもと思うと、ニヤニヤが止まりません:-D

findTwitterをきっかけに新たなWebサービスが生まれて、その楽しさを皆で享受できれば嬉しいです。

Twitter フォローokな人を探す「follow ok」を作りました

この記事の所要時間: 31

Twitterでフォローokな人を探すサービスを作りました。

follow-ok

誰をフォローすれば?

ある時、ふとTwitterでフォローする人を増やしたいなと思い立ちました。そこでふと湧いた疑問が2点。

1. フォローする人をどうやって探す?
まず誰をフォローしようかと。フォローする人リストはあちこちのサイトにあるので、そこからフォローするのが早いです。(ちなみにPHPな人ならこんなリストがあります。)
ただこういったリストに入っている人は有名人な分野が偏っていたりで、多様な人をフォローしたいというニーズには合いません。また有名人系はそもそもフォローしてたりするので、さらに増やすとなると他で探す必要があります。
フォローするためにユーザ一覧が欲しいな
2. この人フォローしてもok?
何とかフォローしたい人は見つけたとして、いざフォローしようとした際、フォロー/フォロワーが20人以下のユーザだと何となく気が引けませんか?
もちろんTwitterではprotectedな人以外はフォロー自由なので、特に気にする必要は無いのですが、フォローする人のフォロー/フォロワーが少ないと「身内だけで楽しんでいるのかな?」といらぬ気を遣って、何だかフォローするのをためらってしまいます。
フォローしてもokなことを表明してくれるとフォローしやすいな

follow ok

という流れで作ったのが 「follow ok」 です。

「follow ok」では、二つの機能があります。

1. ユーザを探す

フォローしたいユーザを探します。このサービスではユーザが自ら登録を行っているので、安心してフォローすることができます。

1-1. キーワードを入力して検索

follow_ok_textbox

登録ユーザは自分のキーワード(タグ)を登録してるので、キーワードを指定することにより、該当するユーザを検索することができます。

1-2. キーワード(タグ)をクリックして検索

follow_ok_user

ユーザ表示の下部にはそのユーザが登録したキーワード(タグ)が表示されています。これをクリックすると同じキーワードを登録しているユーザが表示されます。

2. 自分を登録する

自分自身もフォローokなら「follow ok」に登録しましょう!

登録はTwitterから「@follow_ok」につぶやくだけでokです。

follow_ok_twit

つぶやいて数分経つと 「follow ok」 に表示されます。

キーワード(タグ)を登録する

つぶやく時はキーワード(タグ)を指定しましょう。登録したいキーワードを[]で囲んで下さい。上の画面例なら[cakephp][iphone][大阪]の4つがキーワードとして登録されます。

@follow_ok」につぶやけば何度でもキーワードを登録することができます。キーワードは毎回上書きされるので、最後につぶやいたものが登録されます。

下のアイコンをクリックするとそのまま@follow_okにつぶやけますよ:-D

follow_ok_register

follow okからのフォローも

Twitterでリリースをつぶやいて、100人超の方に登録頂けました(ありがとうございます!)。Twitterだと反応が直ぐに貰えるので、とても嬉しいです。中には「follow okからフォローしてもらえたよ」と言って頂ける方もいらっしゃいました。

今後も何か気になることがあれば「@shin1x1」までつぶやいて下さいm(_ _)m

フォローする相手を探す方も、フォロワーを募りたい方も、活用して頂ければ嬉しいです。

よろしくお願いします!

Twitter 25,000 followersを体験する

この記事の所要時間: 27

Twitterで、25,000 followersというのはなかなか想像が付かない世界です。

なにか一言つぶやくと25,000ユーザのTLに流れるわけです。考えるとスゴイですね。

例えばそんな状況でblogのURLでも投げたら、どれだけアクセスが来るのでしょうか。

ちょうど「Twitter アイコン画像は元画像が残っていることに注意」をpostした時そんなことをTwitterでつぶやいてみました。

@shin1x1: . @kengo さんがURL貼るとガッとアクセス来たりするもんだろうか

http://twitter.com/shin1x1/status/2757818064

するとTLにこんなPostが。

@kengo: Twitter アイコン画像は元画像が残っていることに注意 | Shin x blog http://bit.ly/9bzVg

http://twitter.com/kengo/status/2757854392

@kengoさんご本人が登場!Twitter恐るべし:-D

しかもbit.lyでのアクセス集計画面まで教えて頂きました。

実はちょうどApacheのアクセスログをtail -fしていたので、急に流れが速くなったのでどこかに載ったのだろうなとは思ったのですが、まさか@kengoさんとは。

25,000 followersを疑似体験してみて

上にも書いたように@kengoさんにblogのURLを張って頂いた直後から一気にアクセスログが流れ出したので、やはりつぶやきに対する影響力はかなり大きいのだろうなと感じました。

ただTwitterの特性上、TLはどんどん流れていくので25,000 followersと言ってもその全てのユーザにリーチするわけでは無いのでしょう。

実際にどの程度blogにアクセスがあったかと言うとbit.lyでのアクセスカウントでは以下な感じでした。

bit_ly_000000

テストで直後に私がbit.lyのURLを張ってみたのが以下です。

bit_ly_000001

Twitterにpostしている内容が違うので単純比較はできないですが、600 followers程の私とでは大きく数字が離れています。

Postするタイミングや内容を工夫すればもっとアクセスを集めることもできるでしょうね。followersが多いと下手な事はつぶやけなさそうです:-D

という事でご協力頂いた@kengoさん、本当にありがとうございました。

ホーム > twitter

検索
フィード
メタ情報

Return to page top