超大陸パンゲア上での日本の場所を特定できるサイト

イアン・ウェブスターさん(Ian Webster)の制作したAncient Earth globeは、太古からの地球の大陸移動をブラウザ上で閲覧できるというサイトです。 昔の大陸の地図に、今の国境の線が引かれていて、2億年前の大陸のどの部分が、今どの大陸や島になっているのか、というのを追うことができます。右上の検索ボックスにJapanなど地名を入れると、今その場所になっている当時の陸地の位置が表示されます。 # 学問的に今までわかっている範囲での予想、であることはもちろんですが キーボードの左右のカーソルキーで、年代を移動することができて、これで連続で切り替えていくと、大陸がどのようにわかれて、今のような大陸の配置になったのか、が見て取れます。 ウェグナーの指摘した海岸線の形の類似しているところの人には興味深い大陸移動説やパンゲアですが、現在の地名や国名から太古の昔の位置を見ることができると、世界のいろいろな場所の人にとっても興味を喚起することができるかもしれないですね。 via The

World Cup Calendar Blocker – ワールドカップの試合時間にフェイクの予定を入れるため(だけ)のサイト

World Cup Calendar Blockerは、サッカーの試合の予定時間に、適当に作られたそれっぽい用事を追加するためだけに用意されたウェブページです。 6月18日 19:00 イングランド対チュニジアの試合時間にあわせた「バザーでデイブの手伝い」というスケジュールを、ワンクリックで Apple, Google, Outlook, Yahoo

担当者を責める404ページ

emailcenter の 404 Not Found ページが英語圏の巨大掲示板 reddit で話題となっていました。 「この受け入れがたい失敗に関して、我が開発チームの誰かに罰が与えられるべきです」 というメッセージと共に、Lukeさん、Jamesさん、Martinさん、Chrisさんの4人の誰を責めるべきか選んでくれ、というボタンが出てきます。 誰か一人を選ぶと、 選んだ人に「おまえは解雇だ!」というメッセージと、うなだれた当人の写真に。選ばれなかった3人がいい顔してますね。 「彼は暇な時間がいっぱいできたから、クリンゴン語検定の勉強がはかどるね」と。ここのメッセージも選んだ人によって変わります。 # なお、このエラーページは responsive デザインで、ページ幅が少ないモバイル端末等では、このネタは表示されません。PC で見てください reddit のコメントで出てた、同じ種類の他の404ページも紹介します。 What Uni?

米ドミノピザ、くずれないピザのために道路の穴を直す事業を始める

Paving for Pizza (ピザのための舗装)は、ドミノピザがアメリカで始めたキャンペーン。 「道路の穴、ヒビ、凸凹などは、あなたがドミノピザを家に持ち帰る際にピザに修復不可能なダメージを与えることがあります。ピザの上のチーズが片方に寄ってしまったり、トッピングが落ちたり、ピザが裏返ってしまうことに、私たちは耐えられません。これらの悪路からピザを守るために、全国の街で舗装をお手伝いすることにしました。」 サイトのトップでは、路面の状態の4段階のひどさにあわせて、運ばれるピザがどのようなトラブルに合うかを、ボックス内カメラで撮影したものを見ることができます。 すでにプロジェクトは始まっていて、カリフォルニア州バーバンク、テキサス州バートンビル、デラウェア州ミルフォード、ジョージア州アセンズで、自治体と協力して道路を補修したそうです。 工事の車にドミノのロゴが。 直した個所にもロゴ。宣伝効果もあるのかな。ピザを運んでるドライバーからは見えないような気がするけども。 サイトから「自分の街も直しに来てくれ」と依頼を投げられるようになっています。この補修チームが直せる道路の量なんてたかが知れてると思いますが、本来自治体がやるべきだが予算が無かったりして荒れているところに、大企業が宣伝の形で手伝うという形、自社の宣伝をしつつ社会問題にも注目させるという意味ではいいキャンペーンなのではないでしょうか。 ピザのために道路を直す、という無理のある動機も、笑い話としてソーシャルで伝搬しやすいかもしれません。 via

ニュージーランドがない世界地図

blocks で公開されたスニペットMaps with New Zealand(ニュージーランドのある地図)は、ページの右下に常にニュージーランドを表示するというJavaScriptコードです。でもなんのために? ニュージーランドのない地図(Maps without New Zealand on them) という名前の reddit 掲示板があり、ここではニュージーランドを描き忘れている世界地図の事例を、様々な人が報告しています。 「日本で見た」というのもいろいろと出てきます。 日本だって端っこの島国なので、仲良く両方ないケースも。 毎日のように投稿があるのがすごいですね。毎日世界のどこかで、ニュージーランドを忘れた世界地図が見つかっている。それぐらい忘れられている(笑)。 この reddit

人が見ていると恥ずかしがってちゃんと動かないソート関数

Lynnさん(@chordbug)がツイッターで公開したデモがこちら。 https://twitter.com/chordbug/status/1005701513719754752 「見てる時だけちゃんと動くソート関数を書いてみた」 JavaScript で書かれた sort() という関数に配列を与えて呼び出しています。 カメラに正面から顔が映っている状態では正しくソートされた結果が返ってくるのに対して、横を向いたリ顔を隠したりした状態で呼んだ時には、結果は毎回異なる適当な順番になっています。 もう一つの動画もあって、こちらは逆に「見ていると緊張して正しくソートできない」関数のデモ https://twitter.com/chordbug/status/1005703638323429377 リプライでの質問に対して、Lynnさんはこのウェブページのソースコードを公開してくれています。 tracking.jsという人の顔を認識するライブラリのサンプルをベースに、顔が認識されている時のフラグを用意して、フラグがオンの時だけ正しくソートし、そうでない時はランダムに並べていることがわかります。 ブラウザのカメラ入力を許可し、JavaScriptコンソールで同じように sort()

土曜日は 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で公開された時のものです

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

Google の新サービスが水曜日に登場か

ニューヨークタイムズの記事によると、Google が新しい「コミュニケーションツール」を今週水曜日(日本だと木曜か)にリリースするとか。

このツールとは Google で長らく開発されているというメッセンジャーではないか、というのがこの記者の見方。

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

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

akky's work blog