社長BLOG

プログラマーズイングリッシュを作る

今日のディスカッションで話題が上がったのがプログラマーズイングリッシュ。

・I like She.
・She like I.
・I goed to school.
・I have three DVDes.
・I have two DVD playeres.
・Three classes.

こんなものだ。
できあがった背景はこんな感じ。

日本化力

日本人は昔から外来のものをそのまま受け入れず、自分たちの都合の良いように再構成する「日本化力」に優れていた。
ラーメンも、カレーももはや日本料理と言っていいし、日本語だって中国の漢字を日本化して使っている。

日本化力の衰え

ラーメンもカレーも車も言葉もうまいこと日本化してきたのに、最近はその力に陰りがでてないか?
英語なんか特にそのまま覚えようとしていない?

英語を間違う恐怖に縛られる

自分も含めて、日本人は間違った英語をしゃべることに恐怖を感じている。コミュニケーションできない恐怖よりも、間違うことの恐怖の方が優先していると思う。ひどい英語をしゃべる人はいっぱいいるし、それでもなんとかコミュニケーションはできているからいいのでは。と思うんだけれども。

はじめから間違った英語を使えば恥ずかしくないのでは?

ここで発想の転換をしてみる。正しい英語に対して、間違った英語を使うから恥ずかしいのであって、はじめから間違っている英語を使えば、全然恥ずかしくないんじゃないか?

カレーで例えると分かりやすい。

「あーそうとも!これはインドで作られているカレーの流儀からしたら間違っている。だがこれのほうがうまいんだ!」

そもそもインドカレーと作り方が違うと最初から認識しているので、とりあえず美味しければ、間違っててもいい。
という事になる。この考え方、すごく大事。自分たちがすでに持っているロジックだ。

ゴシックロリータだってヨーロッパの伝統衣装と違うけどとりあえずおしゃれなら、間違っててもいい。と思ってみんな着てるはず。

そして英語。

「そもそもこれは正式な英語の流儀からしたら間違ってるかも知れない、でもこれの方が自分達にとって使いやすいからいいんだ!」

はいキタコレ。これが言いたかった!

エスペラントのミス
世界共通語を目指したエスペラント語というものがある。全然普及していないけど。

「ねえ、エスペラント語の単語で何か知っているのある?」

「エスペラント」

こんな冗談がまかり通るぐらい、知られていない。
エスペラントのミスは何かというと、便利でなく、流通していない言語を創造してしまったこと。
これは致命的なミステイクだ。

間違ってるけど便利な英語「プログラマーズイングリッシュ」を作ってみる

わざわざ完璧に間違った言語を今から作っても仕方が無いので、
われわれプログラマーにとって扱いやすい英語というものを発明してみようと思う。
エスペラントと違うのは

・機械にとって便利
・人間にとっても覚えやすくて便利
・普通の英語としても通じるので便利

これだ。

プログラミングの世界で扱いやすいのは「規則性があるもの」反対に扱いにくいのは「例外があるもの」だ。

単数複数同型(sheep fish deer)
複数形の変化(party parties)
現在系過去形の変化(go went gone)
三単現のS(like likes)

こういうものは非常に扱いにくい。これらをフラットにした、機械的な英語を作ってしまおう。
しかもこれをそのまましゃべっても、英語としてなんとか通じるレベルギリギリを狙いたい。

コンセプトは

「プログラムによる扱いが簡単で、なおかつ普通にしゃべっても英語として通じる言語」

ギリギリ通じるんじゃないかと思う、プログラマーズイングリッシュの例文を書いてみる。

・I like She. her => She
・She like I. 三単現のSは無し、I => meの変換もなし。
・I goed to school. 過去形は全部ed
・I have three DVDes. 複数形は全部es
・I have two DVD playeres. 複数形は全部es
・Three classes. 複数形は全部es

これだと構文解析もし易いし、機械も人間(非英語圏)にも可読性が高い。
なんか通じそうな気がしない?しばらく海外サービスのサポートなどに英語でチャットするときは、プログラマーズイングリッシュで書いてみようかと。

このレベルなら通じそうな気がする。

手嶋屋トライアルの合格者あらわる

大学生のオガワさんが手嶋屋トライアル突破した!これはとてもめでたい。

彼は今月からインターンとして手嶋屋に参加する。

このトライアルは手嶋屋のインターンと正社員の選考プロセスで使っているのだが、
正直言って結構難しい(というかめんどくさい)。

手嶋屋トライアルは、手嶋屋で必要なWEBプログラミング技術における、センター試験のようなポジションを目指している。だから面倒なのだ。

オープンソースで修行は詰めるは、先輩ハッカーの技は盗めるわ、報奨金も出る。
ついでに地方からの参加者には住まい「手嶋荘」まで提供するよ。

インターンは毎月受け入れているので、まだまだチャレンジャーを募集している

手嶋屋トライアルはリモート、遠方からも参加可能。ぜひともお問い合わせあれ。

手嶋屋はこんな会社です「自炊してる?」

いま

「卜部さんて自炊している?」

って質問をしたら

「どちらの自炊ですか?」

と返事が返ってきた。手嶋屋はそんな会社。

通常の自炊というのは、外食をせずに自宅で食事を作ること。

もうひとつの自炊とは、「自分で漫画や雑誌、書物などを電子化する」ということ。
裁断機で裁断してScanSnapなどのスキャナで電子化して、iPadなどで閲覧する。

PHPMatsuri に参加

PHPMatsuriに参加した。

当日の状況はつぶやきにまとまっているのでこちらをどうぞ。

以下は自分のレポート。

朝10:00 土曜日の朝10:00からイベントが開始って、結構キツイ。
遅刻しそうになったので、大人のタイムマシン(=タクシー)を使ってしまった。

会場には10:02ごろ到着。自分より遅れてくる人がたくさんいた。
テーブル付きの席に座れたので、逆に良かったかも知れない。

現在(12:23)はPractical PHP5.3 Nate Abeleさん。講演風景はこんな感じ。

午後からコーディング。
自分のテーマは

OpenPNE3にTwitteAPIを載せて、iPhoneアプリからアクセス

非常に俗っぽい。

ざっと分解すると

1:接続先をTwitter.com以外に設定できるオープンソースのTwitterクライアントを調達(見栄え的にiPhoneアプリがベスト)
2:OpenPNE3のOAuthを微調整してTwitterクライアントからの認証に応える
3:iPhoneアプリを落とさないように、ひとつずつOpenPNE側にTwitter互換APIを整備していく
4:ひと通りの機能が揃ったらその時点でプレゼンテーションを作成

こんな感じで考えていた。

1:は事前準備でNatsuliphoneを調達しておいたのでバッチリだった。

2:がクセモノ。半日チャレンジしても全然認証が通らない。OpenPNE側がカバーしていない形式があるみたいだ。1時54分までやった時点でギブアップ。認証をスキップする迂回コードを書く事にする。

3:をひとつづつ実装していこう。。。

詰まったところのリスト
・OpenPNE3 $url = $this->information複合されない

・tweetee(Natsiliphone)側がoauth_verifierを飛ばしてない?、飛ばすように改造しなくては

・OAuthのリクエストは 通常の$request->getParameter()では受け取れない?


$this->tokenRecord = $this->getTokenTable()->findByKeyString($token->key);
if ($this->tokenRecord)
{
//$this->tokenRecord->setCallbackUrl($request->getParameter('oauth_callback', 'oob'));
$this->tokenRecord->setCallbackUrl($authRequest->get_parameter('oauth_callback'));
$this->tokenRecord->setIsActive(false);
$this->tokenRecord->save();
}

view raw

gistfile1.php

hosted with ❤ by GitHub

・executeAccessTokenがうまく行かない!

・ギブアップ、認証はスキップしてAPIの実装に走る

・どうもOAuthライブラリの本家によると http://oauth.googlecode.com/svn/code/php/example/request_token.php
このように実装していくのが本筋らしい。やはり$_REQUESTでうけてないのがきになる。

20:00 にはレッドブルガールが登場した!レッドブルカーもレッドブルガールも大好きなので、これは嬉しかったね。

ソースは http://yfrog.com/evqupej

CakePHP symfony lithium 3フレームワークのケーキが登場。どれもうまかった。

CakePHPは参加者が多く lithiumuはケーキの体積が少なくてすぐに完売。
smyfonyが余っていた。symfony押しの自分はたくさん食べられれたわけだ。


ソースは http://twitpic.com/2ty0bw

25:00 になっても、かなりの人達がプログラミングをしていた。
自分は夜型なので、このぐらいからの方が逆に乗ってくるんだけど。

ソースは http://twitpic.com/2u0c9q

二日目は寝坊をしたり、自分の発表準備が忙しかったりで、ブログを更新する余裕が全然なかった。

会の最後で知ったのだが、主催者にはかなりの負担(作業、金銭)がかかっていたようだ。

とても素晴らしいイベントだったので、無理せずに次回も開催できるといいね。

オープンソースにはもっと若いうちから参加するほうがいいと思っているので、

手嶋屋から川原さん、海老原さんの20代前半コンビが参加してくれたのは嬉しかった。
周りからもずいぶん深くsymfony触ってますね。なんて言葉をいただいたし。

今回は世界の魔法使いたちが何人も集まり、そのエディタさばきや設計思想、風貌に接することができた。
「あれ、意外と普通の人じゃない」なんて思うことができたらしめたもの。

手嶋屋からも何人もウィザード級のエンジニアを輩出したいね。

エンジニアのキャリアにとって、オープンソースは欠かせない存在になる。
今回は法人スポンサーとして参加したが、次回は会社か個人かはわからないけど、
若いエンジニア向けに奨学金(費用の半分もつよ、等)を出すような形での参加も考えてみたい。

【アイデア】エンジニアのポートフォリオを証明するサイト

エンジニア個人が評価される時代が来た。と自分は主張している。

だけれど、自分でポートフォリオサイトをつくるのもなんだか小っ恥ずかしいし、そもそも自分で書いたことが証明になるのか?

というのも疑問だ。

そこで、エンジニアのポートフォリオを代わりに証明したり、そのサイトを作ってあげるサービスはどうだろうか?

Twitterアカウント、Github、オープンソースプロジェクトでの活動履歴などを簡単に申請するだけで、事務局側が正式なポートフォリオをまとめてあげるサービスだ。特にオープンソースの活動履歴は、プロジェクトでどんな活動をしているか調査が難しいと思う。

エンジニアの地位向上にもつながるので、ノンプロフィットでやっても、とても有意義だと思う。

手嶋屋トライアルはリモートからも参加可能

手嶋屋トライアルは学生インターンや、自分のポートフォリオを持っていないエンジニアのために手嶋屋が用意した選考プログラム。WEBプログラム界のセンター試験のような課題づくりを目指している。

OSのセットアップからOpenPNE3のプラグイン開発までを10のチェックポイントに分け、
トライアル期間中貸し出されるサーバ(今はさくらのVPS)上に実際に組み立てていく。

手嶋屋トライアルを通過すれば、学生であればインターンに即採用、
正社員であれば、書類選考通過というメリットがある。

現在はリモートからも参加可能にしている。

※ぜひ腕試しに挑戦してください!

オープンソース活動実績はエンジニアのポートフォリオになる

ここのところ絶賛求人中の手嶋屋。

「自分が過去に一人で作ったプログラムのソースコード」
「自分が開発し、運営しているWEBサービス」
「自分が活動しているオープンソースプロジェクト」
「自分が執筆している技術ブログ」

このうちひとつでも送ってください。

と応募者にお願いしている。

しかし困ったことに、どれも送れないという人がいる。
例えば「ソースコードは仕事で関わったのでNDA上提供できない」
というような理由が多い。

自分としては、個人的に書いたソースコードが無いっていうのはちょっと。
と思ってしまうわけ。※もちろん、こうした実績がなくても非常に優れたエンジニアはいるのだけれど。

プログラムができなくても、ドキュメントやコミュニティ運営という形でオープンソースプロジェクトで活動するというのでもかなり評価できる。プロジェクトでの活動経験は、エンジニアの成長にとって非常に重要だと思うから。

実際手嶋屋を卒業した学生スタッフは、手嶋屋やOpenPNEプロジェクトでの活動を就職活動にうまく役立てていたようだし。

オープンソースプロジェクトだったら、コミュニティ内での活動や周りから評判も成果になるし、もちろん書いたソースコードは公開されているので、自分のポートフォリオとして使える。

「伽藍とバザール」×「尖閣諸島問題」

オープンソース開発者はみんな読んでいる「伽藍とバザール」

オープンソース業界の古典だ。
※まだ読んでなかったら、無料なので必ず読んでみて欲しい

この本はプログラムのことだけが書かれているだけでなく、経済やモノの価値、人間の業やモチベーションについても指摘されていて、ビジネスモデルやコミュニティ運営までも含めて、OpenPNEプロジェクトを立ち上げる際にとても役に立った。

伽藍とバザールの第二弾「ノウアスフィアの開墾」では、土地の所有権についての考察もされている。そこでは土地の所有権を手に入れるには3つの方法がある、と言っている。

1:未開の地の開墾
2:土地所有権の移転
3:占拠

今の日本では基本的に2:しか考えられない。
日本にはほとんど未開の地はないし、(あったとしても埋立地くらいか?)
土地の所有権は法律に基づいて移転されている。

今回の尖閣諸島問題では、ひとつの土地に対して2者(日本と中国)が互いに所有権を主張している状態だ。こうなると2:で決着することは殆ど無く、3:の手段をとることになる。占拠のやり合い。漁船が入って捕まると言うのは、占拠のためのつばぜり合いをしていることになる。

自分は本能的に考えると、太古の昔「ナワバリ」の時代から始まっているので、法律的に土地の所有権が決まるという現代の感覚の方にこそ違和感がある。

今回の問題については、土地にしばられない情報社会を自分はつくろうとしているので、あまり気にならない。

それでも、日本にはあと100年ぐらいは現状維持で行って欲しいと思う。

※伽藍とバザールはドキュメントの二次利用が自由なので、第五章を全文掲載する。

5 ロックと土地所有権

 この生成パターンを理解するには、ハッカーの通常の関心領域をはるかに離れて、こうした慣習と歴史的に類似した例を見るのが役に立つ。法制度史や政治哲学を学んだ人ならお気づきのように、ハッカーたちが暗に主張している所有理論は、英米慣習法における土地所有権の理論とほとんどまったく同じなんだ!

 この理論では、土地の所有権を獲得する方法は3つある。

 未開の地(フロンティア)には、これまで所有者のいなかった土地がある。そこでは人は、開墾(homesteading)することで所有権を獲得できる。つまり、自分の労働を所有されていない土地に混ぜ込み、囲いをつけて自分の地権を守ることによって。

 入植済みの地域での土地移譲は、ふつうは土地所有権の移転によって行われる。これはつまり、前の所有者から証書を受け取ることだ。この理論に基づけば、所有権の連鎖という概念が重要になる。所有権の証明として理想的なのは、証書とその移転の連鎖が、その土地のそもそもの開墾時点にまでさかのぼれることだ。

 最後に、慣習法理論は土地の所有権が失われたり放棄されたりすることがあるのを認識している(たとえば所有者が相続人なしに死んだり、空き地に対する所有権の連鎖を確立するための記録が失われていたりする場合)。このようにして遺棄された土地は、占拠によって所有権の主張を行える――だれかがそこに入居して、整備を行い、そして開墾時と同じようにそこの所有権を防衛するわけだ。

 この理論はハッカーの慣習と同じように、中央権力が弱いか存在しないような場面で有機的に発達してきた。それは千年以上もかけて、ノルウェイやドイツの部族法から発展してきたものだ。それを近代の初期に体系化して合理化したのがイギリスの政治哲学者ジョン・ロックだったので、これはよく所有物の「ロック」理論と呼ばれる。

 論理的によく似た理論は、ある物件が経済的または生存上で高い価値を持っていて、しかも稀少財の配分について、中央集権的に強制するだけの力を持った単一の権威が存在しないところでは必ず生じるようだ。これは、ときどきロマンチックに「所有」の概念がないと考えられたりもする狩猟採集文化でも成り立つ。たとえば Kgalagadi (カラハリ) 砂漠のクンサン・ブッシュマンの伝統では、狩猟場には所有権は存在しない。でも、井戸や泉については所有権が存在して、その理論は明らかにロックの理論と似ている。

 クンサン・ブッシュマンの例は示唆的だろう。というのも、これはロック式の所有権慣習が、その資源からの期待リターンがそれを独占して守る期待コストよりも大きい場合にのみ生じることを示してくれるからだ。狩猟場が所有権の対象にならないのは、狩猟のリターンがすごく予想しにくくて変動しやすく、さらに(すごく高く評価はされるけれど)日々の生存にとって絶対的に必要なものではないからだ。一方の井戸は、生存にとって不可欠だし、守りきれるくらい小さい。

 この論文の題名に出てくる「ノウアスフィア(noosphere)」というのはアイデア(観念)の領域であり、あらゆる可能な思考の空間だ[N]。ハッカーの所有権慣習に暗黙に含まれているのは、ノウアスフィアの部分集合の一つであるすべてのプログラムを包含する空間での、所有権に関するロック理論なんだ。だからこの論文は「ノウアスフィアの開墾」と名付けた。新しいオープンソース・プロジェクトの創始者がみんなやっているのがそれだからだ。

 Fare Rideau (rideau@ens.fr)}は、ハッカーは純粋観念の領域だけで活動しているとはいえないと指摘している。これは正しい。かれの主張だと、ハッカーが所有しているのはプログラミング・プロジェクトなんだ―― これはつまり、物質的な労働(開発、整備など)の意図的な焦点で、ここに評判、信用性なんかが結びついている。ここからかれは、ハッカーのプロジェクトが覆っている空間はノウアスフィアではなく、むしろその分身のような、ノウアスフィアを探索するプログラム・プロジェクトだと主張する(読者のなかの天文物理学者たちに敬意を表しつつも、語源的にいえばこの分身空間を「エルゴスフィア」または「作業のスフィア」と呼んでまちがいない)。

 現実問題としては、ノウアスフィアとエルゴスフィアとの区別はこの論文の目的からいえばだいじじゃない。Fare が主張するような純粋な意味での「ノウアスフィア」が、なんら意味あるかたちで存在すると言っていいのかは、実はよくわからない。そんなものを信じるには、プラトン主義哲学者にでもなるしかないだろう。そしてノウアスフィアとエルゴスフィアとの区別が実際的な重要性を持つのは、アイデア・観念(ノウアスフィアの要素)は所有できずそれをプロジェクトとして実体化したものだけが所有できると考えたい場合だけだ。この問題から出てくる課題は、知的所有権の理論的な問題につながるもので、この論文の範囲を超える。[DF]

 でも混乱を避けるために言っておくと、ノウアスフィアもエルゴスフィアも、時に(多くのハッカーたちは顔をしかめるけれど)「サイバースペース」と呼ばれる電子メディア内での仮想位置全体とはちがう。サイバースペースでの所有権はまったくちがった規則にしたがって統制されている。その規則は物質的な世界での規則のほうに、むしろ似ている――基本的には、その「サイバースペース」の一部を宿しているメディアやマシンを所有している人物が、そのサイバースペースを結果的に所有していることになる。

 ロック的な構造は、オープンソースのハッカーたちがその慣習をまもるのは、なにか自分たちの努力からの、一種の期待収益を守ろうとしているからだろうと強く示唆している。この収益は、プロジェクト開墾の努力や「所有権の連鎖」を記録したバージョン履歴を維持するコスト、そして捨て子になったプロジェクトを占拠するまでに公的な通達を出してしばらく待つという時間コストよりもずっと大きなものでなくてはならない。

 さらに、オープンソースからの「収益」は単なるソフトの利用価値以上のものでなきゃならない。プロジェクトの分裂によってダメになったり減ったりしてしまうようなものでなければ。もし利用価値だけが問題なら、分裂に対するタブーはないし、オープンソースの所有権も土地所有権とは似てもにつかないはずだ。事実、既存のオープンソース・ライセンスから導かれるのは、こういう(利用価値だけが唯一の収益となる)別世界だ。

 いくつか候補としてあがる収益はすぐに却下できる。ネット接続上では有効な脅しがかけられないので、権力追求はまったく成り立たない。同じく、オープンソース文化はお金や内的な稀少性経済に類するものは持っていないから、ハッカーたちも物質的な富とあまり似たものを追求していることはあり得ない。

 ただし、オープンソース活動で人々がもっと金持ちになれる方法が一つなくはない――そしてそれは、その実際に動機に貴重なヒントを与えてくれるものではある。しばしば、ハッカー文化で人が獲得した評判は実世界でも反映されて、それが経済的に意味をもってくることがある。もっといい仕事が得られるとか、コンサルタント契約が手に入るとか、あるいは本の執筆依頼がくるとか。

 でもこの種の副作用は、よくいってもまれだし、ほとんどのハッカーにとっては副次的なものでしかない。唯一の説明として説得力を持つには、多くのハッカーにはあまりに縁遠いものだ。それにハッカーたちはなんども、自分たちは金のためにやってるんじゃない、理想と愛のためにやってるんだ、と主張している。まあこれは割り引いてきくにしても。

 でも、こういう経済的な副作用が処理されるやり方は検討する価値がある。これから、オープンソース文化そのもののなかでの評判の力学だけでも、かなりの説明力があることを見てみよう。

09/24 「OpenPNEはすべての組織のプラットフォームに」

本日PHPカンファレンスでセミナーを講演した。


※TwitPicにあがっていたものを借りました!

OpenPNE Ver3.6の目玉機能「モバイルオープンソーシャル」「リアルタイムWEB対応」「パフォーマンス」を紹介。

OpenPNEのゴールである

すべての組織のプラットフォーム

これを実現するための進化に向けて、Ver3.7の開発系でも着々と進化を続ける予定だ。

こんな話をした。

明日のテックデーもフルタイムで参加する。
※緑色の手嶋屋Tシャツを見つけたら、ぜひ声をかけてください。

09/24 13:35 PHPカンファレンス(ビジネスデー)で講演します

9/24 9/25 PHPカンファレンス2010の初日(ビジネスデー)で講演します。

13:35〜 ルームBにて

~モバイルオープンソーシャルにも対応!~ OpenPNE Ver3.6紹介

というテーマで講演します。

・OpenPNEプロジェクトの紹介
・10月リリース予定のVer3.6の最新機能
 ・モバイルオープンソーシャルの搭載
 ・リアルタイムコミュニケーション
 ・スケーラビリティ
 ・追加プラグイン
・今後のロードマップについて
以上を中心に話す予定です。

ぜひイベントに参加してください!

http://phpcon.php.gr.jp/2010/

OpenPNE�~�蓈���񋟃T�[�r�X�̂��m�点

  • ��K�̓z�X�e�B���O
  • �Z�p�T�|�[�g
  • �J�X�^�}�C�Y
  • OpenPNE Manager
  • ���q���܃T�|�[�g

ページの先頭に戻る