Pushshift.io – reddit掲示板の過去投稿を提供するwebサービス/API

pushshift.io は、英語圏の巨大掲示板 reddit の過去の書き込みを蓄積し提供しているサイトです。ジェイソン・バウムガートナーさん(Jason Baumgartner)という個人の方による運営です。 FAQ ページを読むと、過去のデータを期間やキーワード、ユーザー等で一括取得したい時に使うサービスだということ。新規のコメントをリアルタイムで取得したい時は reddit 公式の API を使ったほうが良いとありますね。 reddit は巨大な掲示板なので、データ量も相当になると思いますが、 Pushshift は個人 +

手書き風グラフを描けるライブラリ xkcd.chart

英語圏でエンジニアに人気の線画コミックサイト xkcd には、グラフを使ったジョークネタも頻出します。こんな感じ。 xkcd に出てくるようなグラフは、だいたい手書き風のテイストで描かれているのですが、その手書き風グラフを再現できるグラフ描画ライブラリが xkcd.chart です。

親にスマホを取り上げられたため、DS、Wii、そして冷蔵庫でツイートする少女?

アリアナ・グランデのファンとしてのつぶやきをしていた15歳の少女ドロシーさんが、親の監視をかいくぐってツイートを続ける工夫によって注目を集めているようです。 母親にスマートフォンを取り上げられたドロシーさん、おそらくスマートフォン中毒のような状態でツイッター等から離れられず、学業等に支障をきたしていたのかもしれません。 im leaving forever. my mom took my phone. ill miss u all sm. im

ぶつかるたびに悪態をつくロボット掃除機ルンバ

生活に彩を与えてくれるルンバの改造ネタ。 https://twitter.com/michaelreeves08/status/1124697680116998150 YouTuber マイケル・リーブスさんが公開した動画は、話すルンバ。 衝突センサー、Raspberry Pi、Bluetooth スピーカーを追加で搭載し、障害物にぶつかると任意の音声ファイルを再生します。 こちらが10分のロング・バージョン 変な日本語を使ったり(03:04)、声の可愛いYouTuber に悪態を吹き込んでもらったり(05:20)、スーパーマーケットTarget で(おそらく勝手に)走らせて客の反応を見たり(06:30)、買ったルンバがおかしいとサービスセンターに持ち込んだり(ひどい) https://www.youtube.com/watch?v=mvz3LRK263E 動画内にあるようなフィールドテストの結果、悪態をつくルンバは面白いと思った人もいれば不快に思った人もいたようです。 悪態じゃなくて健気に頑張ってる声とかなら良いという人も増えますかね。 via Bored

アメリカ銃乱射地図

Voxメディアが公開している、インタラクティブな銃乱射記録地図です。 2012年のサンディー・フック小学校乱射事件以降の銃乱射事件のデータが使われていて、新しい乱射事件が起こるたびに更新されているようです。今日の時点、2012年からのたった7年弱で、2178件の乱射事件が記録されているということ。 州別に人口比の発生頻度で塗ったもの。マウスカーソルを当てると件数が見られます。ほとんどの州で乱射事件が起こっていることがわかります。 横軸が人口100人あたりの銃の数。アメリカは一人に銃一つなんですね。縦軸は10万人あたりの銃による死亡者数。アメリカは1万人に一人以上。国別でみるとダントツに他の先進諸国を離して右上に君臨しています。日本は左下、ほぼゼロに近いところ。 他にも、乱射事件で亡くなった人数は全体からみるとわずかで、その他の殺人や自殺に銃が使われていること、2012 年から乱射事件のある日に色をつけたカレンダー、など、パッと見るだけで異常な状態がわかる資料がよく可視化され、まとめられています。 銃事件の元データは、銃暴力アーカイブ(Gun Violence Archive)というサイトのものを使っているようです。こちらのサイトでは、今年2019年に銃乱射で亡くなった被害者が既に253名とわかります。 via Maps

スマートフォンのカメラで血圧を計る研究とそのアプリ

経皮的工学イメージング(Transdermal Optical Imaging)によるスマートフォン血圧測定 というトロント大・杭州師範大学附属医院の共同研究が発表されています。スマートフォンのカメラで撮影するだけで、映った人物の血圧を計るという研究です。 現在のスマートフォンのカメラでも、顔の表皮付近のタンパク質から反射された光を検出できるそう。特に、血液中のヘモグロビンに反射した光を追跡することで、表面近くを流れる血流の変化が取れます。これを機械学習によって処理することで、1328人の被験者の95%程度の正確さで血圧を当てることができたということ。 ただ、この1328人のほとんどが白人系と東アジア系だったということで、今回の検証モデルでは、色が濃い肌の人についてはまだまだ正確に計れないのだそう。 この研究をベースにしたスマートフォン用のアプリ Anura が Android, iPhone 向けに配布されています。 僕の手持ちのスマートフォンは対応していなかったので試せていませんが、現バージョンでは顔の表面を撮影した短い動画から、安静時心拍数とストレスレベルを測定することができるそうです。今回論文発表された血圧測定についても、すべての人が使えるようになるには数年掛かるそうですが、テスト的に搭載されるのも近いかもしれません。 今でも個人が自宅で血圧測定することはできますが、専用の機械はそれなりの値段がしますし、毎日腕に巻いて計り記録をつけるのもたいへんです。既に高血圧と判定されて医者から気をつけるように言われた人ぐらいしか測定はしていないでしょう。 カメラで写すだけで測定できる今回の技術、すべての人種に対する判定の精度があがれば、パソコンのカメラや監視カメラも併せて常に人々の血圧が測定され、健康状態の変化がフィードバックされたり異常な状態が素早く検知されて医療的な対処が提案されたり、というSF的な未来も近づいているのかもしれませんね。 https://itunes.apple.com/app/anura/id1358813934 via

日曜は PHP 勉強会

昨日の Java 読書会に続き、日曜は PHP 勉強会に参加してみた。

mixi の PHP コミュニティから発生したらしいこの勉強会、会自体は3回目のようだが、当然これまでは参加していない。何か発表するものを、という話だったので、自分が書いたわけじゃないが CyDE2 の開発環境を持って行き、インストーラとユニットテストをどうやってるかあたりをちょろっと紹介させていただいた。他の発表を聞いてみて比べると、あまり技術的じゃない。宣伝臭いし。

他には、PHP フレームワーク Maple の作者の方が、AOP による DB アクセスの Maple へのウィービングについて実装発表されていて、面白かった。

あとは、PHP に関する洋書のレビュー発表など。アメリカに居たとき本屋でパラパラと見ていた本がいくつか出てきて興味深かった。

全体的に、昨日の Java 読書会が「最近面白い本出てないねぇ」といった感じだったのに比べて、PHP 勉強会のほうが活気があるように見えた。

でも、土曜日にあった Lightweight Language Day and Night (LLDN) に参加されてた方も多く、そちらでは Ruby や Perl のヒトタチが元気だったということで、PHP もがんばらないとね、という雰囲気もあった。

それと、いつも PHP 関連の雑誌記事などでお世話になっている著者のみなさんと直接お会いできたのは非常によかったと思う。来月もあるようなのでぜひまた参加したい。

この記事は移転前の古いURLで公開された時のものです

  • ブックマークが新旧で分散している場合があります。
  • 移転前は現在とは文体が違い「である」調です。(参考)
  • 記事の内容が古くて役に立たなくなっている、という場合にはコメントやツイッターでご指摘いただければ幸いです。最新の状況を調べて新しい記事を書くかもしれません

土曜日は Java 読書会

Java 読書会 に参加してきた。一冊の本を、毎月一回集まって「読む」というもの。インターネット協会の部会ということになっているが、参加者は興味のある有志の集まりだ。

僕も、転職でアメリカのサイボウズに行く前はよく参加していた。今回はひさしぶりの参加となる。

今回は翻訳者の瀬谷さんにも来ていただき、読んでいて難しい点など直接解説していただくこともあり、非常によかった。

今月分で読了となった、「アジャイルソフトウェア開発の奥義」だが、今回読んだ中で「付録C: 皮肉な運命」が読み物として面白かった。

同じプロジェクトを実施することになった二つの会社の話を、横に二つ並べて小説風に描く、というもので、一つはガチガチのウォーターフォールで大混乱になり、もう一方はアジャイル的な手法でなんとか成功する、というオチ。

悪い方の例では硬直したプロジェクト管理や理不尽な上司の要求、と言ったものが書かれている。思わず「あるある」と言ってしまうところも多い。ちょっとだけ触りを抜粋すると

上司「即刻開始する必要がある。分析にはどれくらいの時間がかかるかね?」
あなた「仕様要求がわからなければ分析にかかる時間を申し上げられません」
上司「仕様要求が出てくるまでには4~5週間かかるだろう。だから、仕様要求が今君達の目の前にあるものと仮定したまえ。君達は分析にどれぐらいの時間が必要なのかね」

さて上記の流れは変だ、とあなたは思うだろうか? あるいは、いったい何がおかしいというのだ、と思うだろうか。

アジャイル開発についての本なので、アジャイル開発に対してちょっと甘いかな、という気もするが、二つを並べて読むことで、果たして自分達の開発プロセスはどうだろうか、という良い自省ができる話かなあ、と思った。

もちろん、本文の方も充実した内容で、XP、デザインパターンについて実例をなぞりながら勉強することができる。いい本だと思った。

Java 読書会 は9月から新しい課題書(まだ決まっていない)で最初からスタートするので、会社の外で業務とは別に勉強してみたい、という方は参加してみてはどうだろうか。

こういった社外の勉強会は、Java 読書会の場合は「Java」というキーワードはあるものの、ウェブサービス系や組み込み系などさまざまな業務をしている人(もちろん仕事は全然 Java じゃないが自分で勉強してる人も)が集うので、見聞を広めるのにも役立つと思っている。

この記事は移転前の古いURLで公開された時のものです

  • ブックマークが新旧で分散している場合があります。
  • 移転前は現在とは文体が違い「である」調です。(参考)
  • 記事の内容が古くて役に立たなくなっている、という場合にはコメントやツイッターでご指摘いただければ幸いです。最新の状況を調べて新しい記事を書くかもしれません

商用アプリ開発に関する PHP の利点と欠点

現在サイボウズ本社でいちばん使われているコンピュータ言語は、と訊かれれば、それは PHP という言語になるだろう。

PHP はそもそもウェブサイトを作るために開発された、目的のはっきりとした言語で、ウェブアプリケーションの世界では非常にユーザー数の多い言語である。PHP のエンジン部分を開発している Zend 社の調査では、インターネット上のウェブサイトの 20% 超は PHP で書かれているともいう。

また、PHP の言語としての文法は C 言語に似せて作られていて、C 言語風のスクリプト言語といえる。専門学校や大学などの授業で C 言語や C++/Java など C 言語に似た言語が使われることも多いため、比較的とっつきやすいとも言えるだろう。

そういった普及度からすると、PHP を多用することには、プログラマーが足りなくなったときに社外から人材を集めやすい、あるいは協力会社を探しやすい、という利点がある。

2年以上前から準備され、今回発売となったガルーン2 では、この PHP が大きな部分を占めている。それ以前は独自のスクリプト言語(Cybozu Labs 社長でもある畑の名前を冠した、Hata-Script である)を使っていた。これもまぁ、Office6 までのサイボウズ製品を見ていただければわかるように、軽量できびきび動く、いい言語ではあったのだが、やはり PHP のユーザベースの大きさというのは意味がある。

この変更では、内製も含めて様々なオプションが検討されたわけだが、サイボウズ製品の特性や技術者の確保のしやすさ、などいろいろな観点を総合し、PHP が選定された。

ただし、その選定の際には、満場一致ですぐに PHP を使うことに決まったわけでもない。(主に反対していたのは僕だが)

どんな言語も完璧ではありえない。PHP にも危惧されている問題点はあった。言語としての出来、や、インタプリタの安定度、リソースの消費量、処理の速度、利用できるライブラリの量や質、利用や配布に関する制約、などなど、について、問題があるかどうか、あるとしたらどう解決するか、解決法が現実的な対処であるか、といった事柄について多数の討論をおこなった。

そういった技術やライセンスの問題については一つずつ問題点をつぶしてきており、今のところ大きな問題点は残っていないと言ってもよさそうだ。僕自身は早い段階で CyDE2 のプロジェクトから離れており(==米国の子会社に帰った)、実際にそれらの改善を辛抱強くおこなってきたのは本社の開発部の面々である。

それでも残る問題は、一部の硬派プログラマーから、PHP は「初心者向けの言語」と思われていることにある。こればかりは、サイボウズの開発部ががんばるだけで解決する問題ではない。

まぁ、現在主流のバージョン 4、PHP4 では、言語としていいかげんなところや使いづらいところもたくさんあり、技術力のあるプログラマー達の多くが「一番好きな言語」とか「一番使いやすい言語」に選ぶ言語だ、とまでは言えないだろう。

「弘法筆を選ばず」というから、真にできるプログラマーならどんな言語であってもちゃんとした成果を残せるのかもしれない。しかし、実際問題として、そのとっつきやすさ、はじめやすさがかえって災いし、「PHP ができます」という人の中に「PHP *しか*できない人」も多い。

理想としては、どんな言語でもすばやくマスターでき、PHP インタプリタの挙動に疑問点があれば、PHP のソースまで遡って調査することも全然苦にならない、といった人がたくさん来てくれるといいんだろうな。ま、これは主に本社側の話だが。

サイボウズ・ラボでのこれからの開発は、必ずしもサイボウズ本社と同じ言語を使う必要はないため、たとえば PythonRuby のような言語を使ってもよいし、LispJSF/Java でもいい。それは入ってきた人が自分で先導して決めていってしまえばいいのだ。いまのところ、そのへんはまるっきり流動的だ。

むしろ、自分の好きな言語や環境について熱く語れて、まわりを引っ張って巻き込んでいけるような、そんな人であれば面白いし、僕もぜひその人からいろいろ学んでみたいものだ、と思う。

この記事は移転前の古いURLで公開された時のものです

  • ブックマークが新旧で分散している場合があります。
  • 移転前は現在とは文体が違い「である」調です。(参考)
  • 記事の内容が古くて役に立たなくなっている、という場合にはコメントやツイッターでご指摘いただければ幸いです。最新の状況を調べて新しい記事を書くかもしれません

成功する Web2.0 企業になるための 10 のステップ

成功する Web2.0 企業になるための 10 のステップ より。

  1. 利用者の問題をよく理解したうえで、最小単位から解決せよ
  2. 反応のよい、意見を言ってくれる利用者を獲得せよ
  3. 今すぐ公開せよ。明日公開せよ。毎日公開せよ
  4. データを配布しまくれ
  5. 利用者のデータを囲い込まないこと
  6. おどろくほど単純にせよ
  7. 無料でありつづけよ
  8. マーケティング費用は無駄
  9. 投資しすぎないこと
  10. どのサービスにも見るべき点がある

詳細は元エントリをどうぞ。いくつもの実サービスを例にあげて、成功したネットサービスに共通の要素を解説してくれている。

この記事は移転前の古いURLで公開された時のものです

  • ブックマークが新旧で分散している場合があります。
  • 移転前は現在とは文体が違い「である」調です。(参考)
  • 記事の内容が古くて役に立たなくなっている、という場合にはコメントやツイッターでご指摘いただければ幸いです。最新の状況を調べて新しい記事を書くかもしれません

Google Talk 登場

Google の新サービスが水曜日に登場か で書いた、噂の Google 新コミュニケーションツール、やっぱりあったようだ。その名も Google Talk

ベータということだが、早速ダウンロードしてぶちこんでみた。Gmail のアカウントが必要ということ。入れるとほどなくログイン状態に。

Google Talk は gmail のアドレス帳と連動していて、検索窓に名前やメールアドレスを入れると過去に gmail でやりとりした相手がリストアップされる。相手が Google Talk を使っていなければ、使うための招待メールが送れる。

メールも IP 電話も、個人と個人を結ぶメッセージングツールという点では同じなので、gmail と共通アカウントにしてきたのはうなづける。

この記事は移転前の古いURLで公開された時のものです

  • ブックマークが新旧で分散している場合があります。
  • 移転前は現在とは文体が違い「である」調です。(参考)
  • 記事の内容が古くて役に立たなくなっている、という場合にはコメントやツイッターでご指摘いただければ幸いです。最新の状況を調べて新しい記事を書くかもしれません

ユーザ名簿とタグ(Folksonomy)機能

企業内のアプリケーションに関して、タグによる分類機能は助けとなるか? というブログ記事を見つけた。

サイボウズのグループウェアで言えば、たとえばユーザー名簿に「技能」のタグづけをできたとする。使われるだろうか?

全員が「私はこんなこと知ってますよ」「こんなことできますよ」というのを登録して、社内でわかる人を探せるようにする、というのは結構いろんな会社でやろうとするけれど、実際に大きく成功している、という話は聞かない。

原因のひとつは、そうやって質問や作業が依頼される人にとってのインセンティブ不足だと思われる。社内のいろんな人を助けても、自分の仕事をする時間が無くなるだけかもしれないし。

与えられたタスク以外の、そういった突発的な依頼への対応が、ちゃんと労働時間として評価されて、見合った報酬が得られれば、あるいはまわるのかもしれない。そして、そういうこまごました時間のやりとりを支援できるとしたら、それは IT の仕事なのだろう。

Experts Exchange みたいな Q&A システム(日本だったら はてな みたいな、と言うべきか)をイントラネットで運用する、というのもその一つの方法だと思う。誰が誰を助けた、という仕事の評価が、ポイントといった数値で見えてきて、その数値がちゃんと会社からの評価につながる(ここ重要。数値化しただけで何も起こらなければ、インセンティブが働かない)といいのかも。

この記事は移転前の古いURLで公開された時のものです

  • ブックマークが新旧で分散している場合があります。
  • 移転前は現在とは文体が違い「である」調です。(参考)
  • 記事の内容が古くて役に立たなくなっている、という場合にはコメントやツイッターでご指摘いただければ幸いです。最新の状況を調べて新しい記事を書くかもしれません

akky's work blog