未来のいつか/hyoshiokの日記 このページをアンテナに追加 RSSフィード Twitter

2016-08-21

Netscapeがすごい会社だった頃の話(1996年前後)。

夏休みなので、たまたま読んでいたCoders at Work プログラミングの技をめぐる探求という本の中にJamie Zawinskiのインタビューが載っていた。この本は著名なプロラグマを集めたインタビュー集で、Unixを創ったKen ThompsonやらDonald Knuthやらすごい人たちが登場している。

その中でJamie Zawinskiはそれほど著名でもなければ誰もが使っているすごいシステムを開発したというわけでもない。私が彼の名前を知ったのはNetscapeソースコード公開時にMozilla.orgを仕切っていた頃なので、20年近く前である

彼はxemacsの開発者としても著名で、当時GNU Emacsではなくてxemacsを日常的に使っていたので馴染みにある名前だった。xemacsとGNU Emacsはのちにマージされるのだけど前者が今で言う所のバザール型開発で、後者Richard Stallmanを頂点とする伽藍型開発だった。(その当時はそのような名前はなかった。のちにEric Raymondが「伽藍とバザール」というエッセイでそのようなソフトウェア開発方法論について書いた)

Netscape社は1995年くらいのインターネット商用化の黎明期に突如登場した破壊イノベーションを具現するベンチャーだった。

今でこそウェブブラウザーは当たり前だが、1993年頃にNCSAにいた若者たちが作ったX Mosaicというブラウザ世間を席巻していて、それを作ったマークアンドリーセンらが立ち上げたのが、Netscape社だった。Microsoft社はWindows 95を発売したばかりでインターネット可能性については過小評価していた。

突然変異と言ってもいいベンチャーNetscape社だ。

当時私は、Oracle社で日々コードを書いていた。大きなソフトウェア会社の典型的な大規模ソフトウェア製品開発現場の一員だった。CIという言葉はなかったけど、毎日ビルドして毎日テストして毎日デバッグしてという日々を送っていた。

Netscape社とOracle社はビジネス領域では全く競合していなかったので、インターネット面白いよねーと無邪気に感じている日々だった。

ビルゲイツ率いるMicrosoft社は当初はインターネット可能性を過小評価していたが、すぐにそれの重要性に気がつきあっという間に方向転換をする。それがWindowsへのブラウザバンドルである

当時のソフトウェア製品はパッケージを電気製品を売ってる販売店やパソコンから買ってきてCDとかに焼かれたソフトウェア製品ユーザーがいちいちインストールするものだった。WindowsなんかもCDで買ってきてPCにいちいちインストールする。

さすがにそれだと面倒なので、PCベンダーDELLとかIBMとか)がWindowsをあらかじめインストールした製品を売っていた。逆に言うとWindowsインストールしていないPC普通に売られていたのである

Windowsが圧倒的なシェアを持つとPCにはWindowsがおまけで付いてくるように見えるのであるが、Windowsの画面にいろいろとバンドルされるものが出てくる。その一つがウェブブラウザである

サードパーティーソフトウェア製品を作っているベンダーはいかにしてMicrosoft社と競合しないかと頭を悩ますのは、MSWindowsに競合製品バンドルした瞬間、そのビジネスモデルは終焉を迎えるからである

今でこそ、そんなことは当たり前だろうと思うわけであるが、ウェブブラウザーがない時代にウェブブラウザ製品を一から作ってその市場開拓した側から見ればたまったものではない。いかにしてMSに見つからないで波風を立てないうちに市場占有するかというのが当時のソフトウェア製品ベンダーの戦略であった。

幸いなことにOracle社はMSと競合しないこともなかったがデータベース製品の主戦場はエンタープライズサーバー(主にUnix市場)だったし、当時はまだWindows NTもそれほど力を持っていなかったのでブラウザ市場ほどの競合関係にはなかった。

時代背景を説明すると長くなるね)

さてNetscapeである創業のメンバーがほとんどNCSA/Mosaicから来た。創業者にはSGI CEO歴任したJim Clarkがいる。彼がNCSA/Mosaicのメンバーに声をかけて創業したと言われている。

Jamie Zawinskiはその中でNCSA/Mosaicのメンバーではない初期の従業員だ。新規ブラウザを作っていくのだが、セカンシステム症候群にもかかることなく最初バージョンは完成する。(セカンシステム症候群というのは組織が二つ目の製品を作るとき完璧を求め不必要に複雑化する現象を言う。人月神話を書いたブルックスよって広く知られるようになった)

ザウィンスキー 私たち宗教的なくらいにデッドラインに集中していました。もし6ヶ月以内に完成できなかったら終わりだと思っていました。(p15)

(聞き手)最初リリース日を決めたら、スコープ品質限定する必要がありますね。どのようにしたんですか。

ザウィンスキー 機能については長い時間をかけて話し合いました。まあ、長い時間ではありませんでしたが、長い時間に思えました。1日に一週間分のことをするような生活をしていたからです。機能を削り落としました。ホワイトボードアイデアを書き出し、線を引いては消していきました。6人か7人くらいでやっていました。正確には覚えていませんけど、部屋に頭の良い自己中な連中が集まって、一週間くらい怒鳴りあっていたんです。

一週間が長い時間という時間感覚がそのスピード感を表している。スコープ品質限定するという常識が共有されている。素人がやると人員がいない、人員追加だという話になるが、プロがチームを作ると徹底的に話し合って、機能を削り落とす。それができるのがプロだ。

チームは少数精鋭だ。ピザを食えるくらいの人数に抑えるということでピザチームと呼ばれることになるのだが、スモールチームでデッドライン優先の製品開発をする。その現場感がハンパない

Netscape 0.96がダウンロードされていく様子を眺めていく。200万ダウンロードされ人々が自分の書いたソフトウェアを動かしていく。信じられなかった。報われた。(ダウンロードした)彼らの1日が自分達がした仕事によってより面白く、より快適で、より楽なものになった。

その当時のことを私は日記に書いている。(1998/09/03のシリコンバレー日記)

http://web.archive.org/web/19990417035415/http://www.best.com/~yoshioka/d/98/i980903.html

実のところシリコンバレーにいてもベンチャーに勤めているわけではないから,そのクレージーさっていうのは実感していなかったりする.

http://www.jwz.org/gruntle/nscpdorm.htmlネットスケープ社のJamie Zawinskiのエッセイがある.彼はネットスケープ創業からプログラマで,Unix版のネットスケープを開発した.

それをざっと読んでみよう.従業員が20人とか30人のころの話である.時は1994年夏から秋にかけて.インタネットが爆発する直前である

これは古きよき時代の話である.時は痛みを和らげ,実際より物事を楽しかったように見せる.だけど誰がすべてのものは楽しくなければいけないといったのだ.痛みは人格を作る.(時には,製品だって作るのだ)

スタートアップで働きたいって?この物語はひょっとしたらおとぎばなしとして聞いてほしい.

Tuesday, 26 July 1994, 4am.

俺がモザイクで働きはじめてから一月とちょっとたった.良く眠れない.というか,家に帰っていなかったりする.

ルーとロブがひがなラジコンの車を組み立てて遊んでいる.うるせーったらありゃしないぜ.

...

マークは俺にSGI版をIrix5.3の出荷と同時に出せと言っている.それって2ヶ月以内ってことだ.俺と来た日にゃ,まだコードはほとんど書いていねーし,本当のところ出来るか出来ねーかなんてことはわかりゃしねー,それに全体像だってわかっちゃいねー.俺にうんといわせるのなんかマークにとっちゃ朝飯前ってことだ.だけど俺だって失敗したくなかった.掛け金はすげー高かった.世界中が俺達がやるかやらないか注目してたんだ.

Thursday, 28 July 1994, 11pm.

昨日は会社で寝た.机の下で2時間爆睡したぜ.朝の11時から1時半まで.起きた時気がついたのだけど,カラーマップとディサーリングについてのミーティングに遅れちまった.ま,どーでもいいっちゃいいんだけど,ミーティングを遅らせただけだから.実際,仕事し過ぎでぶっ倒れているやつ抜きでミーティングをするつーのは不可能だってことだけどね.

Sunday, 5 August 1994, 5am.

家に帰った.前帰ったのはっていうと,...,39時間前だ.疲れてはいなかった.気力回復ってやつだ.

...

原文見てみて下さい.めまいがします.シリコンバレーのスタートアップ

そんなこんなのクレージーさはその後ビジネス的にはMSに負け今やNetscape社はない。

Netscapeはそのソースコード1998年に公開し、オープンソースOSS)という革命破壊イノベーション引き起こした。

OSSクラウドシェアリングエコノミー、フリーミアムIoTそのような言葉すらなかった時代の話である

Jamie Zawinskiのインタビューを読むだけでも価値がある一冊だ。若いプログラマお勧めしたい。熱いよ。

2016-08-14

東海道五十三次(その9)。由比から岡部まで歩いた。

青春18きっぷを使って、久しぶりに東海道五十三次を歩いた。夏休みを利用して由比から岡部までダラダラと歩いた。初日8月10日)は由比から府中まで、二日目(8月11日)は静岡でさわやかのげんこつハンバーグ*1を食って、三日目(8月12日)に府中から岡部までを歩いた。

0626 品川発で、熱海、沼津乗換で 0916 に由比に到着する。移動だけで3時間弱かかる。どんどん移動時間が増えていくので、歩く時間が減っていく。

初日銭湯は柚木の郷*2 東静岡駅のそばだった。2016年開業なので新しかった。夕食は熱海まで戻って囲炉茶屋に行った。*3

夏、炎天下。体力を消耗する。自分は暑さに弱いというのを実感した。

丸子宿の丁子屋*4で食べたとろろご飯は美味しかった。お勧めである

どんどん移動時間が長くなるのであるが、各駅停車をダラダラと宴会をしながら移動するというのも楽しそうだと思った。ほぼ電車の中で宴会して、東海道を数時間歩いて(20km以内)宴会しながら帰ってくる。

品川6時集合で0616熱海行きに乗って乗り継いで行けば、名古屋に1212に到着するのでギリギリ41番目の宮宿までは行ける。新幹線で行くとなるとやはり泊りながら距離を稼ぐという作戦になるので、どっちが楽しいか。まとまった休みを取れるのであれば、ずんずん歩くのがいいが、日帰りを繰り返すというのであれば青春18きっぷでのんびり行くというのもありかなと思う。


参考文献

今回、静岡のジュンク堂で見つけて購入した。旅手帳となっているので、メモ書きや歩いたところを塗りつぶすようになっている。鉛筆片手に書き込みながら歩くと面白いそうだと思った。地図として利用したのだが、前半の由比から府中(静岡)までの区間は持っていなかったので、興津の一里塚を見過ごしてしまった。長津一里塚跡も見過ごしてしまった。

東海道散歩の友にお勧めである

街道の概略と地図からなっている。地図はそれほど詳しくないが一里塚や宿の位置が記されているので大体の目安になる。



地図に東海道の解説をつけたという形式だ。1万分の1の縮尺はちょっと詳しすぎるかもしれない。




風景



f:id:hyoshiok:20160810093129j:image

由比の駅前。駅前には何もない。


f:id:hyoshiok:20160810095946j:image

(西倉沢)一里塚。薩埵峠まで1.3kmだ。

f:id:hyoshiok:20160810101852j:image

薩埵峠。駿河湾を望む

f:id:hyoshiok:20160810103239j:image

雲の向こう側は富士山。もやっていて写真ではよく見えない。冬の空気が澄んでいた時期なら絶景だったと思う。

f:id:hyoshiok:20160810113016j:image

興津駅。旧東海道から外れたせいか、興津の一里塚を見逃してしまった。

f:id:hyoshiok:20160810123351j:image

興津宿。

f:id:hyoshiok:20160810134348j:image

名古屋まで197km、浜松89km、藤枝36km。一歩一歩歩いていけば、距離はどんどん減っていく。

f:id:hyoshiok:20160810152532j:image

稚児橋。江尻宿は特に看板などがなくてそのまま通過してしまった。


f:id:hyoshiok:20160810162207j:image

草薙の一里塚

f:id:hyoshiok:20160811161748j:image

さわやかのげんこつハンバーグ

f:id:hyoshiok:20160812102136j:image

府中宿。

f:id:hyoshiok:20160812113437j:image

(府中)一里塚

f:id:hyoshiok:20160812114408j:image

弥勒(みろく)。府中宿はするが最大の宿場町で南北約3kmだったらしい。

f:id:hyoshiok:20160812114649j:image

安倍川の手前に安倍川もちのお店があった。

f:id:hyoshiok:20160812114924j:image

安倍川を渡る橋。水深が浅かった。河川敷は広かった。

f:id:hyoshiok:20160812115744j:image

浜松まで74km、藤枝17km。国道208号。

f:id:hyoshiok:20160812125809j:image

丸子宿

f:id:hyoshiok:20160812130734j:image

丸子とかいて「まりこ」と読む

f:id:hyoshiok:20160812131343j:image

丸子宿本陣跡

f:id:hyoshiok:20160812131853j:image

とろろ汁。慶長元年(1596年)創業丁子屋(ちょうじや)。

f:id:hyoshiok:20160812135415j:image

とろろご飯。酒のつまみの塩辛、はんぺん、畳鰯などが美味しかった。ごろごろのんびりしたいと思った。

f:id:hyoshiok:20160812153449j:image

国道1号線のポスト日本橋から188km。京都三条まであと300kmちょっと。ずいぶんきた気もするしまだまだ遠い気もする

f:id:hyoshiok:20160812162513j:image

宇津ノ谷峠。

f:id:hyoshiok:20160812162525j:image

明治トンネル

f:id:hyoshiok:20160812162715j:image

街道が整備されている。

f:id:hyoshiok:20160812165932j:image

民家の壁に昔ながらの金鳥看板キンチョールと対になっている。サラ金のポスターは情緒がないがけど。


f:id:hyoshiok:20160812170831j:image

岡部宿案内図。

f:id:hyoshiok:20160812170855j:image

岡部宿


f:id:hyoshiok:20160812171953j:image

川原バス停。本日2016年8月12日)はここまで。

f:id:hyoshiok:20160812181507j:image

藤枝駅までバスで移動。

f:id:hyoshiok:20160812183416j:image

焼津駅そばの黒瀬温泉で一風呂浴びた。

f:id:hyoshiok:20160812191623j:image

ビールとつまみ。タイムセールで安くなっていた。地元の常連客で賑わっていた。



東海道五十三次シリーズ

日本橋から由比まで。

宿場名 現在の住所 日本橋から距離 次の宿場までの距離
江戸(日本橋 東京都中央区 - 2里(7.9km)
品川 東京都品川区 2里(7.9km) 2.5里(9.8km)
川崎 神奈川県川崎川崎 4里18町(17.7km) 2.5里(9.8km)
神奈川 神奈川県横浜市神奈川区 7里(27.5km) 1里9町(4.9km)
程ヶ谷(保土ヶ谷) 神奈川県横浜市保土ヶ谷区 8里9町(32.4km) 2里9町(8.8km)
戸塚 神奈川県横浜市戸塚 10里18町(41.2km) 2里(7.9km)
藤沢 神奈川県藤沢 12里18町(49.1km) 3.5里(13.7km)
平塚 神奈川県平塚市 16里(62.8km) 27町(2.9km)
大磯 神奈川県中郡大磯町 16里27町(65.8km) 4里(15.7km)
小田原 神奈川県小田原市 20里27町(81.5km) 4里8町(16.6km)
箱根 神奈川県足柄下郡箱根町 24里35町(98.1km) 3里28町(14.8km)
三島 静岡県三島市 28里27町(112.9km) 1.5里(5.9km)
沼津 静岡県沼津市 30里9町(118.8km) 1.5里(5.9km)
静岡県沼津市 31里27町(124.7km) 3里22間(11.8km)
吉原 静岡県富士市 34里27町22間(136.5km) 2里30町23間(11.2km)
蒲原 静岡県静岡市清水区 37里21町45間(147.7km) 1里(3.9km)
由比(油井・由井) 静岡県静岡市清水区 38里21町45間(151.6km) 2里12町(9.2km)
興津 静岡県静岡市清水区 40里33町45間(160.8km) 1里2町(4.1km)
江尻 静岡県静岡市清水区 41里35町45間(164.9km) 2里25町(10.6km)
府中 静岡県静岡市葵区 44里24町45間(175.5km) 1里16町(5.7km)
丸子 静岡県静岡市駿河区 46里4町45間(181.2km) 2里(7.9km)
岡部 静岡県藤枝市 48里4町45間(189.0km) 1里26町(6.8km)

東海道53次距離表 ―350ml.net―より

2016-06-26

継続的インテグレーション(CI)と継続的デリバリー(CD)について知りたかったら、闘うプログラマを読め

継続的インテグレーション(CI - Continuous Integration)と継続的デリバリー(CD - Continuous Delivery)について知りたかったら、闘うプログラマー[新装版]を読もう。

これはWindows NTの開発物語だ。大規模基盤ソフトウェア現場葛藤を生々しく描いていて、ソフトウェア開発に従事しているものには必読書といっても過言ではない。

デスマーチドッグフードを食う、ビルド業界人なら誰でも聞いたことがあるジャーゴン業界用語)がちりばめられている。本書によって、それらの用語を覚えた人も少なくないと思う。

「カトラー(開発の総責任者、伝説プログラマー)は、オペレーティングシステムを開発するときは、機能を増やすより、スケジュールを短縮するべきだと考えている。最初バージョンは、機能を減らしても、早くリリースしたほうがいい。最初機能を最小限にして、つぎから増やせばよい」183ページ、ドッグフード

これはリーンソフトウェア開発でよく言われるMVP(minimum viable product)の考え方だ。先にMVPの考え方があったのではなくて、様々なソフトウェア開発プロジェクトがあって、それでうまくいったもの行かなかったものパターン抽出して、言語化したものMVPだ。

CI継続的インテグレーション)のコンテキスト理解するときに、歴史に立ち返ってみるのは無駄ではない。様々な大規模プロジェクトでの成功や失敗のエッセンスがそこにあるからだ。

Windows NT開発プロジェクトでは日々ビルドを行う。毎日毎日ビルドを行う。CIのものであるバグがあってもなくても毎日動くもの存在する。それを自分たちで利用する。それを毎日行う。そのリズムCIである

大規模ソフトウェアプロジェクトではビルドしたもの正義であるビルドに失敗するようなチェックインは許されない。バグがあろうがなかろうがビルドが、動くもの正義である。そのような価値観をメンバー全員が共有している。

SIでの開発的な要求を出す人と作る人が分かれているソフトウェア開発のコンテキストと、ソフトウェア製品自分たちで利用するという文化でのソフトウェア開発とのコンテキストの違いである

Windows NT時代ソフトウェア製品インストールするものだったので、それをMTフロッピー、CDROM、DVDなどの媒体に記録して配布していたがインターネット時代はそれをインターネット経由で配布するようになった。

さらにウェブサービスだと、媒体で配布する必要もなく、サービスを公開すればそれが配布になって、CD(継続的デリバリー)になった。

今や死語になったWeb 2.0オライリー定義にあたってみると、delivering software as a continually-updated service that gets better the more people use it *1 とあるように継続的更新されているサービスとして配布されるサービスである

Salesforceが No Software というコピースローガン)で提供している価値は、そのようなものである

CDを語るときに、自分の開発しているソフトウェアインストールするタイプであったならば、デリバリーのコストがかかるので、ネットを前提とした配布コストがゼロのものとの差分意識した方がいい。

昨今のアジャイルやDevOpsの流れの中でウェブ業界での適用がすすんだのもビルドして計測して学ぶというサイクルを高速に回せるのが、配布コストゼロのソフトウェア開発だったからである

あなたが作っているソフトウェアがそのようなタイプのものでなかったなら(組み込みだったり、インストールするタイプのもの)、CIはすぐにでも導入できるが、DevOpsのプラクティスの導入には若干時間がかかると思う。(不可能ではないけど)

世界ソフトウェアでできている。エンタープライズと呼ばれる分野も、遅から少なかれそのような価値観に収斂していくと考えている。

2016-06-08

チームで学ぶ

PBL(Project Based Learning)の授業を持っていて、その教員が集まってあーだこーだという会に参加している。PBLという手法は必ずしも教員にとっても経験豊富なものではないので学生指導方法とかに悩みが多いので、いろいろな立場の人が集まって、あーだこーだ試行錯誤や悩みについて披露し合う。

産業技術大学院大学でのPBLはウェブアプリケーションの作り方を学ぶというもので、モダンソフトウェア開発手法クラウドを前提としたツールなどを利用してチームで実際にものを作る。 *1

キーワードとして、Continuous Delivery (CD), Test Automation, Continuous Integration (CI), Version Control System, Test Driven Development (TDD), Platform as a service (PaaS), API, Agile, Scrumとか、ツールとしてgit, github, heroku, Travis CI, VirtualBox, vagrant, linux, Ruby on Rails, chef, Rakuten API, Trello, slackなどを使う。

数名程度のチームが数チームあって、各チームはそれぞれ自分たちが決めたサービス11週で作っていく。

産業技術大学院大学学生社会人が多く授業も夜間に行われる。平日の夜に集まってチームごとに進捗を管理していく。土曜日の午前中に全体で集まって、チームごとに、今週やったこと(実装したこと)、作ったものデモ、困っていること、来週やることなどを10分強で発表する。それを毎週行う。

ウェブアプリケーションなので、URLを叩けば作ったものが誰でも確認できる。みんなでいじっていると簡単にクラッシュしたりする場合もあるが、それを含めてのデモである。Demo or Die であるインストールしなくてもいいので「自分ローカル環境では動くんですけど、インストールしたら動かなくなっちゃいました」というような言い訳は通用しない。Continuous Delivery (CD)ってなによというようなことを実際に経験する。

PBLというのは座学と違って、実際に何かをやってみて、経験することによって学ぶという方法であるソフトウェア開発などは座学でいくら教えたところで実際にやってみないと身につかないことが多いので、10週程度の時間、期間をかけて学ぶことは多い。

チームで開発することに関しても社会人ですら経験値は高くない。そのような場合大学の授業という人工的な環境の中でいろいろな実験試行錯誤)をしながら実際にプロジェクトを回しながら学んでいくことの価値は大きい。

例えば、リポジトリマージしてビルドを壊しちゃうことなんかよくある。ローカルで試してからpushすればいいだけの話であるが、それができない。理屈ではわかっているが習慣として手に馴染んでいないといきなりpushしたりする。そーゆー瑣末なことから始まって、様々な経験を積んでいく。コミットの塊は小さくするとか、コミットログの書き方がどうだとか、ソースコードの読み方、テストの書き方、デバッグの仕方、トラブルシューティング方法バグレポートイシューの書き方などなど、ちょっとしたことなんだけど、必ずしも明示的に言語化されているとは限らないが、重要なことを経験していく。

同じペースで他のチームもプロジェクトを回していて、週に一度、全部のチームが集まって、報告をする。デモ必須なので、綺麗なパワポを作る暇があったら、デモを完成させろという価値観になる。実際プレゼンパワポはいらない。Demo or Dieだし、Done is better than perfect実践する。

進捗が全然はかばかしくないチームもあれば、すごく進んだチームもある。githubコミットを見れば一目瞭然なので隠しようがない。全然コミットがないチームはなぜ進まなかったか、何に困っているかテーブルの上に出す。大きな機能実装であるとか、マージしたら壊れちゃいましたとか、様々なことがある。

他のチームのデモを見て自分以外のチームから学ぶ。チーム内での経験から学ぶことは多いが、それ以上に他のチームの経験からも学ぶことは多い。11週間で経験できることを1とすると5チームあれば5倍学べる。やってみないとわからないことを学ぶのは時間がかかる。その学びを加速するために、他のチームが経験したことを疑似体験する。実際にやったわけではないのだけど、座学で学ぶことよりもはるかリアル経験則を共有する。コンテキストや事情を共有しているので理解が腹落ちする。

githubログを見ていれば、コミットが多い週、少ない週、その差が激しいチームもあればコンスタントに進んで行くチームもある。その差はなんなのか。学びのヒントがある。いつコミットしたのか、残業徹夜禁止して、頑張らないで開発していくにはどうすればいいのか。何かにつまづいて延々悩んでいることに何か価値があるのか。1時間調べたり試してみてうまくいかなかったことは誰かに聞いた方が早いのではないか。チーム内で解決できなければ、毎週のデモの時に困っていることを相談してみるというようなこともできる。

PBLにおいてはチーム内の学び以上にこのチーム間での学びに本質的な何かがあるような気がしている。少なくとも授業という人工的な環境においては、様々な実験ができるだけに、チーム間の学びを加速させるような仕組みというか工夫が必要だと思う。

教員の中でそのような議論をした。

2016-05-25

虚数の情緒、読了。バーチャル読書会がやりたい

かれこれ二ヶ月かけて虚数の情緒―中学生からの全方位独学法を読んだ。読み終えた。一山超えた感じである

前半が自然数から虚数まで、後半が物理の話になる。

i = ¥sqrt{-1}

約1000ページ。キッチン秤で重さをはかってみた。1260gだ。重い。ゴロゴロ寝ながら読むことはできない。物理的な威圧感だ。

e^{i¥theta} = cos¥theta + i sin¥theta

a = - ¥omega^2x p826

12章で波動方程式を学ぶのだけど正直ちゃんと理解した気がしない。うーむ。残念だ。それでもどうにか先に進んだ。最後まで読んでもう一度読み返してみるといいような気がしている。ネタバレなのであるが、ちゃんと理解できれば新鮮な驚きや感動があると思う。

著者は別解探しの重要性を繰り返し述べている。(p919)

いろいろな方法で解を求めることができる。それが数学醍醐味だ。自分の目で見て考える。その楽しみを味わいたい。その意味で、もう一度読み直して自分なりの別解を考えてみるのが本書の楽しみ方なのかもしれない。他の数学書を読んで周辺を散歩してみたいと思った。

本書の読書会をしてみたい。SNSを使ってバーチャルに、読んだところの感想質問を書いていく。物理的な読書会と違って、同じペースで同じ場所を読むのではなく、自分のペースで、じっくり時間をかけて読めるところがいいと思う。

皆さんも本書を読んでみよう。一月だろうが半年だろうがどんなに時間がかかろうがのんびりゆっくり読み進むむことによって、新しい発見絶対あると思う。本の読み方に正解はない。本書の読み方の別解を探してみたいと思った次第だ。

虚数情緒

目次

http://www.press.tokai.ac.jp/bookpub.jsp?isbn_code=ISBN978-4-486-01485-0
虚数情緒
中学生からの全方位独学法

第I部 独りで考える為に
0章 方法序説学問散歩道

第II部 叩け電卓!掴め数学!
1章 自然数:数の始まり
2章 整数符号を持つ数
3章 有理数:比で表せる数
4章 無理数:比で表せない数
5章 実数連続な数
6章 実数拡張を待つ数
7章 虚数想像された数
8章 指数の広がり
9章 虚数狭間:全数学の合流点

第III部 振子の科学
10章 物理学の出発点:力学
11章 重力と振子の饗宴
12章 波と粒子の狭間索引

誤植と思しきもの

199ページ、6段落目。

誤:平行線の内側にある二重丸で示された角が互いに等しい事である

正:平行線の外側にある二重丸で示された角が互いに等しい事である

あるいは

誤:平行線の内側にある二重丸で示された角が互いに等しい事である

正:平行線の内側にある丸ないしは黒丸で示された角が互いに等しい事である

333ページ

誤:次第に4に近づいていく数の平方根を取る作業を重ねていくと、

正:次第に2に近づいていく数の平方根を取る作業を重ねていくと、

910ページ

¥frac{p^2}{2m}+¥frac{1}{2}m¥omega^2x

¥frac{p^2}{2m}+¥frac{1}{2}m¥omega^2x^2

2016-05-22

山手線を歩いて一周した

ヤマソンというイベントに参加して、山手線を歩いて一周した。*1

f:id:hyoshiok:20160522205955j:image

東京駅側のカフェ前からひたすら山手線を歩いて行って駅ごとに駅名の入った写真を撮りつつ一周するという変なイベントである。なぜか外国籍の人が多く参加している。

ヤマソンの参加は2回目であるが、自主的に何度か山手線を歩いているので(確か3回くらい歩いている)コース取りには自信がある *2

おそのいさんの会社の新人も参加して20名くらいの規模でテクテク一周した。

8時のスタートで順調に進んで、新大久保のあたりでお昼をとったのが12:40くらい。小一時間ほど昼食休憩で、その後は小グループに分かれて進んだ。小先さんチームと私のチームがずんずん行って、おそのいさん、伊藤さん、新人チームがゆっくり目のペースで回った。わたしたちは9時間30分ほどで一周した。おそのいさんたちも10時間くらいでゴールだ。初参加で10時間で一周というのはすごいと思う。

その後、銀座湯で一風呂浴びて、有楽町のサイゼリアで打ち上げをした。ワインをがぶ飲みしすぎて二日酔いが辛かった。

https://www.google.co.jp/maps/place/%E9%8A%80%E5%BA%A7%E6%B9%AF/@35.6744819,139.7680351,17z/data=!3m1!4b1!4m5!3m4!1s0x60188be3d29ab291:0x224124727a4a5e48!8m2!3d35.6744819!4d139.7702238

自撮りをもう少し上手になりたいと思った。

2016-05-14

山手線を歩いて一周のコース取りについて

昨年のコース取りを思い出しながら反省点などを考える。(ヤマソンというイベントで山手線を歩いて一周した)

  1. 有楽町から新橋。山手線の内側をひたすら線路沿いに歩く。特に注意点はない。
  2. 新橋から浜松町。国道15号線から一本内側イタリア街方面に行く。浜松町駅は北口。
  3. 浜松町から田町。15号線を素直に行くのがいい。行程は単調だ。
  4. 田町から品川。15号線を右側を歩くと直射日光に当たってばてた。左側の方が良さそうだ。距離は長いので途中でコンビニ休憩をするといいと思う。
  5. 品川から大崎。プリンスホテルの方面から行くという裏ルートがある。(内緒w)御殿山は難所である。大崎駅の看板は東口の超しょぼいやつが一階にあるので、改札階まで階段を上らない。
  6. 大崎から五反田。目黒側沿いを歩く。目黒川の右側がいいと思う。
  7. 五反田から目黒。山手線の左側を歩く。徐々に上っていく。
  8. 目黒から恵比寿。山手線の左側の尾根伝い。恵比寿駅へは途中でアメリカ橋を渡って動く歩道で楽をする。
  9. 恵比寿から渋谷。右側を歩いて、新南口。歩道橋でヒカリエ方面に出て宮益坂の交差点で山手通りの左側に行く。
  10. 渋谷から原宿。山手線の左側を歩く。歩道橋を渡って原宿。ごったがえしているので写真を撮るのが大変だ。
  11. 原宿から代々木。一旦戻る形になるが明治神宮の中を歩く。緑が多いのでリフレッシュできる。気温も若干過ごしやすくなっていて、暑さ対策になる。
  12. 代々木から新宿。踏切を渡って新南口方面に出る。ここは2015年にはなかった改札である
  13. 新宿から新大久保。昼食。山手線の右側。
  14. 新大久保から高田馬場。左側を歩く。しょぼい改札があるのでそこで記念撮影
  15. 高田馬場から目白。右側を歩く。学習院の脇をダラダラと上っていく。
  16. 目白から池袋。左側から西武池袋線のところで内側に入る。駅の看板は東口。
  17. 池袋から大塚サンシャイン通りとか都電とか最短ルートを行くのは難しい。
  18. 大塚から巣鴨。山手線の左側を行く。
  19. 巣鴨から駒込。左側を行く。
  20. 駒込から田端。途中で踏切を渡って内側へ。田端の南口で写真を撮る。
  21. 田端から西日暮里。線路の右側を歩く。
  22. 西日暮里から日暮里。山手線内側(右側)から外側(左側)に出る。踏切を渡る。
  23. 日暮里から鶯谷。距離もある。左側を歩く。内側は谷中の墓地などがあって最短ルートはないと思う。
  24. 鶯谷から上野ラブホ街を通る。内側に入る時、架線橋のところにエレベータがあるので、それを使う。日本鳩レース協会の脇を通る
  25. 上野から御徒町。アメ横を避けて通ったが距離的にはアメ横をダラダラ行くのでもいいかもしれない。
  26. 御徒町から秋葉原。内側を線路沿いに歩く。
  27. 秋葉原から神田。山手線の外に出て線路沿いの橋(歩行者のみ)を渡っていく。
  28. 神田から東京東京駅手前で内側に入る。駅の看板キッテの前くらいにあったように記憶している。
  29. 東京からゴール。お疲れ様でした。銭湯に行って有楽町のサイゼリアで打ち上げ。ワインをガブガブでへべれけです。

山手線を歩いて一周は、一周マニア登竜門である。関東地方には、山手線以外にも大江戸線、ユーカリが丘線、ディズニーリゾートラインなど環状線が4つあるので、ぜひ制覇したい。

2016-05-08

趣味で数学の本を読む 虚数の情緒、8章指数の広がりから、9章虚数の狭間:全数学の合流点まで読んだ

いつの頃だろうか、自分の中で数学を暗記する教科としてしまったのは。

公式をひたすら覚えて、テストクリアする。

理解するのではなく暗記する。練習問題を覚えてその回答をなぞる。暗記なので解いていても楽しくない。だんだん嫌気がさしてくる。なるべく関わりたくない。そのような教科にしてしまった、そのような向き合い方をしてしまった自分がいる。

なんとなく数学は苦手だ。

いつ頃からそんな向き合い方になってしまったのだろうか。

学ぶことは楽しいはずだ。知らないことを知って、なるほどそういうことかと理解する瞬間は快感に満ちている。喜びを感じる。数学に限らず何かを学ぶことは自分知的好奇心を刺激する。

虚数の情緒―中学生からの全方位独学法を読みながらそんなことを感じている。

初老のおじさんが独学で数学を学んでいる。

だんだん話が難しくなる。スーッと頭に入ってこない。同じところを行ったり来たりする。わかるところもあれば、すぐわからないところもある。読むペースは遅い。遅い早いも気にしない。何度読んでもわからないところはとりあえず今は置いておいて先に進む。そんな読み方をしている。

円周率に限らず、ここで議論している数は”覚えるもの”ではなく、”求めるものであると著者は主張する。

公式は覚えるものではなく、求めるものである

e^{i¥pi} = -1 ネイピア数と円周率虚数を仲立ちとして結びついた式。(567ページ)

e^{¥pm i¥theta} = cos¥theta ¥pm i sin¥theta オイラーの公式(583ページ)

虚数」「指数関数」「三角関数」という互いに独立数学的要素が「オイラーの公式」で融合した。(615ページ)

正直に言えば、自分理解オイラーの公式まで説明をなぞっただけで、誰かにそれを説明できるかと言われればできない。理解しているとは到底言えない。

まあ、それでもテストを受けるための勉強ではなく、趣味で本を読んでいるのだから全然困らない。趣味数学の本を読むことは時間がかかるけど、今まで知らなかったことを知ることになるので楽しいちょっと苦しいけど、それでも楽しいのは、ちょっとした山をハイキングしているようなものかもしれない。なんで苦労して山に登るのかという問いに似ているかもしれない。

後半の読書は険しい登山になるのだろうか。楽しみだ。

i = ¥sqrt{-1}

虚数情緒

Tex記法http://denko-laboratory.ddo.jp/pc/latex/latex_command_math.htm を参照した。

2016-05-03

虚数の情緒、6章 実数:拡張を待つ数〜7章 虚数:想像された数まで読了

虚数の情緒―中学生からの全方位独学法読書の続き。

いよいよ実数のアレヤコレヤにの議論が始まった。

円周率は覚えるものではなく、求めるものであると著者は言う。

円周率を多角形から徐々に求めていく方法を紹介している。

二次方程式二次関数。最大値、最小値、接線の傾きと極値平方根を四則から求める。

とりあえず読んだだけで、人に説明できるほど理解できていない。うーん、残念だ。

アルキメデスの取り尽くし法はなんとなく分かったつもりになった。

7章でついに虚数が出てくる。

物理学者ファイマンは『”わかる”とは、少なくともそれに関して二つ以上の説明方法を持つ事、それができた時、初めて私は”本当にわかった”と感じる』

知識として虚数は知っているがまだまだ”わかった”感じはない。

本書の約半分を読んだ事になる。

http://www.press.tokai.ac.jp/bookpub.jsp?isbn_code=ISBN978-4-486-01485-0
虚数情緒
中学生からの全方位独学法

6章 実数拡張を待つ数
6.1 二次方程式
 6.1.1 根の公式
 6.1.2 誤差と相対誤差
6.2 円周率を求める
 6.2.1 三平方の定理と漸化式
 6.2.2 桁落ちを避ける
 6.2.3 角度と弧度
6.3 二次方程式二次関数
 6.3.1 二次関数の最大値と最小値
 6.3.2 接線の傾きと極値
 6.3.3 関数連鎖
 6.3.4 等積変形から反比例へ
6.4 平方根を四則から求める
6.5 美の論理自然神秘
 6.5.1 複写用紙の幾何学
 6.5.2 黄金分割
 6.5.3 見事な,余りにも見事な
 6.5.4 フィボナッチの数列
 6.5.5 黄金数フィボナッチ数の精妙な関係
6.6 天才アルキメデスの剛腕
 6.6.1 不世出天才の業績
 6.6.2 取り尽くし法
 6.6.3 二段階帰謬法
7章 虚数想像された数
7.1 虚数誕生
7.2 数の多角形
 7.2.1 1のn乗根
 7.2.2 ガウス素数
 7.2.3 アイゼンシュタイン素数
7.3 二次方程式確率
 7.3.1 サイコロ確率
 7.3.2 虚根の確率
7.4 誕生日確率
 7.4.1 鳩の巣論法
 7.4.2 誕生日と鳩の巣
7.5 階乗と「いろは歌」
7.6 虚数情緒
 7.6.1 数学感情 
 7.6.2 虚数への旅路を振り返る
 7.6.3 原子と光の物理学万物虚数である
 7.6.4 時空の物理学世界虚数である
 7.6.5 我々は虚数である

0章から5章までの目次は下記の通り。

http://www.press.tokai.ac.jp/bookpub.jsp?isbn_code=ISBN978-4-486-01485-0

虚数情緒
中学生からの全方位独学法
第I部 独りで考える為に
0章 方法序説学問散歩道

第II部 叩け電卓!掴め数学!
1章 自然数:数の始まり
2章 整数符号を持つ数
3章 有理数:比で表せる数
4章 無理数:比で表せない数
5章 実数連続な数

虚数情緒

2016-04-27

虚数の情緒、5章 実数:連続な数まで読了

虚数の情緒―中学生からの全方位独学法読書の続き。

1週間で1章かあ。なかなか進まないけど、まあいい。

知識として知っていることと理解していることの差を本を読みながら確認しているところである自然数は数えるときに使うし、有理数は比で表せる数だし、無理数は比で表せない数だ。などということは知識として知っている。

理解しているということはどのようなことなのだろうか。それは、その本質説明できることだ。

例えば、3章で「有理数の濃度は自然数の濃度に等しい」というようなことが出ている。知識としては知っている。十分理解しているかと言われると心もとない。人に説明できるか。今なら本書を読んですぐ記憶が新しいので、説明できそうだ。人に説明できれば、一応理解したと言ってもいいだろう。ある公式証明できることも理解した証になる。

無理数音楽関係が4章に出てきた。そこで十二平均律というのを知った。なんだかピンとこなかったがピアノ調律半音を2の十二乗根でするという知識を得た。一オクターブには半音12個あるので、オクターブ上の音の振動は倍になる。倍の振動の音は聞いていて気持ちが良い。

ただこれだと、和音(ドミソとかファラドとかシレソ)の振動数整数比にならないので若干響きを犠牲にしている。そこでそれを整数比にした純正調音律というのがある。というような知識を得たのだが、正直言って誰かに説明できるとは思えない。よーするにちゃんと理解していないような気がする。

5章も実数の濃度(ℵ)が自然数の濃度(ℵ0)とは異なるというようなことが書いてあって一気に理解が追いつかなくなった。p349

区間(0、1)内の実数を数えて番号を振るというような話が出ているのだけど、その記法がよくわからなかった。カントル対角線論法という単語も出てきた。よくわからないので、よくわからないまま、次に進むことにした(おい)p352

まあ、そんなこんなであるが、5章まで読み終わった。

もう一度、実数の濃度の説明に立ち返ってみた。「自然数を用いて番号附ける」ことができれば、自然数と同じ濃度である。仮に番号をくまなく附けられたとしよう。その集合の中に絶対含まれない数を作ることができて、それはすべての実数に番号をつけることができるという仮定に反するから自然数と同じ濃度であるという仮定が間違っていることになる。自分でもよく理解できていないことがよくわかる。

対角線論法なんてものをよく思いついたものだと感心する。

ピアノ調律といえば、「羊と鋼の森」を読んだのだけど、調理師の卵とピアニストを目指す双子姉妹女子高生)の物語は読後が爽やかだった。十二平均律とか純正調音律とか本書を読んでいたおかげでなんとなく馴染みがあった。数学音楽関係は奥が深い。


http://www.press.tokai.ac.jp/bookpub.jsp?isbn_code=ISBN978-4-486-01485-0
虚数情緒
中学生からの全方位独学法
第I部 独りで考える為に
0章 方法序説学問散歩道
0.1 数学教育問題点
 0.1.1 数学は積み重ねか
 0.1.2 数学は暗記科目か
 0.1.3 数学は役に立つか
0.2 選択の自由個性
 0.2.1 選択の自由とは何か
 0.2.2 個性とは何か
 0.2.3 生き甲斐とは何か
0.3 子供とは如何なる存在か
 0.3.1 子供は無邪気か
 0.3.2 子供自分をどう見ているか
 0.3.3 「民主主義」とは何か
0.4 文明文化と
 0.4.1 読書意味
 0.4.2 時代表記法干支元号
0.5 「科学」と「技術」
 0.5.1 歴史小説と歴史年表
 0.5.2 狩猟民族としての科学者
 0.5.3 適性を見抜く
 0.5.4 高次のロマンを求めて
0.6 物理数学関係
 0.6.1 数式と記号:なぜ数式を用いるのか
 0.6.2 推論の道具として
 0.6.3 帰納演繹
 0.6.4 特殊から一般へ
0.7 数学を敬遠するとどうなるか
 0.7.1 人を愉しませる文化
 0.7.2 無意味区分け
 0.7.3 二分法を越えて
 0.7.4 マスコミの影響
 0.7.5 人文嫌いは何故生まれるか
 0.7.6 数学に挑む
0.8 知性の誕生
 0.8.1 宇宙誕生
 0.8.2 物質誕生
 0.8.3 星の誕生
 0.8.4 太陽地球、そして生命誕生
 0.8.5 人類誕生
 0.8.6 文化誕生
 0.8.7 我々は如何なる存在か
0.9 旅立ちの前に
 0.9.1 研究とは何か
 0.9.2 もの見方
 0.9.3 過去の全人類頭脳の集約として
 0.9.4 第一部の終りに

第II部 叩け電卓!掴め数学!
1章 自然数:数の始まり
1.1 すべては自然数から始まる
 1.1.1 素読の勧め
 1.1.2 計算の初め:九九
1.2 計算規則
1.3 数の原子素数
 1.3.1 素数素因数分解
 1.3.2 エラトステネスの篩
1.4 約数と倍数
 1.4.1 原子論
 1.4.2 数の原子論
1.5 奇数偶数
1.6 空きの記号「0」
 1.6.1 記数法:10進数
 1.6.2 指数法則
 1.6.3 記数法:60進法
2章 整数符号を持つ数
2.1 数としての「0」
2.2 自然数から整数へ
 2.2.1 整数の持つ方向性
 2.2.2 指数法則整数場合
 2.2.3 整数の濃度
2.3 暗算の秘術
 2.3.1 法則を探る
 2.3.2 式の展開と因数分解
2.4 パスカル三角形
2.5 基本的な図形の持つ性質
 2.5.1 太陽光線と同位角
 2.5.2 三角形の内角の和
 2.5.3 地球を測った男
 2.5.4 図形の等式:合同とは何か
 2.5.5 図形の拡大と縮小:相似とは何か
2.6 三平方の定理
 2.6.1 ピタゴラス数
 2.6.2 プリンプトンNo.322
2.7 フェルマーワイルスの定理
3章 有理数:比で表せる数
3.1 分数の加減乗除
 3.1.1 足し算・引き算
 3.1.2 掛け算・割り算
3.2 電卓ホラー表示
3.3 小数の種類
 3.3.1 有限小数無限小数
 3.3.2 循環小数の「新しい表現」
3.4 少数の表し方
 3.4.1 10進数指数表記法
 3.4.2 2進数ととエジプトの数学
 3.4.3 2進小数
3.5 電卓の誤差
3.6 小数分数相互の変換
3.7 計算の精度
3.8 バビロニアン・テーブル秘密
3.9 有理数の濃度
4章 無理数:比で表せない数
4.1 帰謬法の考え方
4.2 無理数と少数の関係
4.3 ギリシャの思想無理数
 4.3.1 タレス
 4.3.2 ピタゴラス
 4.3.3 もう一つの粘土板
 4.3.4 プラトン
 4.3.5 洞窟比喩イデア論
4.4 平方根の大きさを見積る
4.5 無理数の居場所
4.6 無理数有理数関係
 4.6.1 指数法則有理数場合
 4.6.2 無理数を近似する有理数
 4.6.3 指数法則無理数場合
4.7 数を聴く・音を数える
 4.7.1 ピタゴラス音律
 4.7.2 純正調音律
 4.7.3 十二平均律
4.8 無理数の「循環する表現」
5章 実数連続な数
5.1 実数連続性
 5.1.1 繰り返し計算の行き着く先
 5.1.2 数の減り方
5.2 実数の濃度
5.3 数と方程式
 5.3.1 式に関する用語
 5.3.2 一次方程式の解法
 5.3.3 方程式関数
5.4 座標と関数グラフ
 5.4.1 グラフと座標
 5.4.2 一次関数グラフ
 5.4.3 連立方程式グラフ
 5.4.4 座標の交換
5.5 等号の意味と怪しい用法
 5.5.1 等号の用法
 5.5.2 英文法と等号
5.6 実数の濃度と平面の濃度

虚数情緒

2016-04-20

虚数の情緒、第II部 叩け電卓!掴め数学!4章 無理数:比で表せない数まで読了

id:hyoshiok:20160321:p1 で紹介した最初に読む本、虚数の情緒―中学生からの全方位独学法を読んでいるのだけど、一月経ってもまだ三分の一。やっと三分の一だ。

遅々として進まず。途方に暮れているが、それでも、どうにかこうにか三分の一きた。

読んだところの目次は、1章 自然数:数の始まり、2章 整数符号を持つ数、3章 有理数:比で表せる数、4章 無理数:比で表せない数である

中学生からの全方位独学法なので、説明は簡単で中学生リテラシーがあれば読みこなせるはずであるしかし、読むのに時間がかかる。

本に付箋を貼りながら理解しながら読むので時間がかかる。時間がかかること自体は悪いことではない。

自然数は終わりの数がない。当たり前と言っては当たり前なのだが、ふむふむと理解しながら読み進める。脚注はいろいろ面白そうな本が紹介されている。寄り道したら楽しいだろうなあと思うが、そうすると決してゴールにたどり着けないような気がする。

途中で電卓の話が出てくるが、それも面白い

規則から法則へ、そして再び規則へ(142ページ)、「規則体験する事」の重要性を説いている。

さて電卓である。(233ページ)

0.00000000001を2で割ると0になるという。手元のAndroid付属電卓アプリでやってみても、0にはならない。5.E-12と表示される。これは5*10**(-12)の事。10のマイナス12乗だ。ゼロにはならない。

電卓の誤差。(251ページ)

1/4096*4096は1にならないと書いているが、Androidアプリだと1になった。同様に1/3*3や1/7*7など循環小数も見事1になる。電卓アプリ恐るべしである

イデア論。(290ページ)そのもの本質イデアと呼ぶ。普遍的定義と言ってもいい。『数学の新しい定理を導いた時、殆どのものがそれを「発見」したと言い、「発明」したとは言わないものである』。その心は『「”定理”は既に存在しており、誰もそれを見出していないだけである。そして、その定理自分が”掘り出した”のだ」と考えているからである』(292ページ)

夏目漱石の『夢十夜』で、運慶が仁王像を掘っていく様を、あれは鑿(のみ)で掘っているのではなく、木の中に埋まっている仁王の顔を、まるで土の中から石を掘り出すようにしているのだ、と若い男が解説している、というエピソードを紹介している。見えている人には見えているのだろうなあと思った。(293ページ)

2の12乗根。(312ページ)

絵画や彫刻は、「空間の芸術」で、音楽は「時間の芸術」と呼ぶのがふさわしい。そして、2の12乗根がここで出てくるのである半音とは2の12乗根の事である。(325ページ)

数学音楽がこんなところで融合していたのかとビックリポンなところであった。

誤植と思しきもの

199ページ、6段落目。

誤:平行線の内側にある二重丸で示された角が互いに等しい事である

正:平行線の外側にある二重丸で示された角が互いに等しい事である

あるいは

誤:平行線の内側にある二重丸で示された角が互いに等しい事である

正:平行線の内側にある丸ないしは黒丸で示された角が互いに等しい事である

333ページ

誤:次第に4に近づいていく数の平方根を取る作業を重ねていくと、

正:次第に2に近づいていく数の平方根を取る作業を重ねていくと、


2016-03-21

虚数の情緒、第1部独りで考えるために0章方法序説:学問の散歩道、読了

数学教科書をガッツリ読みたいプロジェクト (id:hyoshiok:20160312:p1) で最初に読む本は虚数の情緒―中学生からの全方位独学法にした。

中学生からの全方位独学法と副題がある。

1000ページを超える大著である。読む前からビビる。一気に流し読みにするというようなことはできない。途中で挫折した人もいる。一気に読むことができないなら、途中経過日記に記すことにする。

数学の本は、読んで考えて理解して、読んで考えて理解することの繰り返しになる。読んでわからなければじっくり考える。じっくり考えてもわからなければもっと考える。それでもわからなければ、とりあえず、そこの部分はなかったことにしてもう少し先まで読む。そして考えて理解してを繰り返す。

理解したことをぼちぼちメモって自分理解確認する。メモを書いている時に疑問が湧くこともある。自分理解が間違っていることに気がつくことがある。そして正しい理解に近づくこともあれば、誤解したまま進むこともある。それを含めての読書体験である

巻頭言

さあ諸君(しょくん)、勉強(べんきょう)を始(はじ)めよう勉強を、数学(すうがく)に限(かぎ)らず、凡(およ)そ勉強なんてものは、何(なん)だって辛(つら)くて厳(きび)しい修行(しゅぎょう)である。然(しか)し、それを乗(の)り越(こ)えた時(とき)、自分(じぶん)でも驚(おどろ)く程(ほど)の充実感(じゅうじつかん)と、学問(がくもん)そのものへの興味(きょうみ)が沸(わ)き起(お)こってくる。昔(むかし)から、楽(らく)して得(え)られたものなんて、詰(つ)まらないものに決(き)まっている。怠(なま)けを誘(さそ)う甘(あま)い言葉(ことば)は、諸君(しょくん)に一人前(いちにんまえ)になって貰(もら)いたくない、という嫉妬(しっと)である。思(おも)い切(き)り苦労(くろう)して、一所懸命(いっしょけんめい)努力(どりょく)して、素晴(すば)らしいものを身(み)につけてようではないか。

原文は初出の漢字にルビがふってあって、中学生でも読めるようにしている。若干やりすぎの気もしないではないが、慣れると気にならない。

構成は、0)方法序説学問散歩道、1)自然数:数の始まり、2)整数符号を持つ数、3)有理数:比で表せる数、4)無理数:比で表せない数、5)実数連続な数、6)実数拡張を持つ数、7)虚数想像された数、8)指数の広がり、9)虚数狭間:全数学の合流点、10)物理学の出発点:力学、11)重力と振子の饗宴、12)波と粒子の狭間で、となっている。1章から9章が数学で、10章から12章が振子の科学となっている。

この大著最初の0章方法序説学問散歩道を読んだ。最初のうちは数学の話はほとんど出てこないで、なんで数学を学ぶのかとか科学技術のこととか、物理数学関係とか、知性とは何かということについてこれでもかこれでもかと著者の持論が展開される。お腹いっぱいであるが、このような著者の立ち位置を明確にするというスタンスはすばらしい。

理系文系という言い方がある。著者はその分類そのもの有害だと断罪する(58ページ)。

本書を読んで数学を好きになるのか、苦手が克服できるか。読者次第である

0章を読んだだけではあるが、残りの章をじっくり読んでみたいと思った。本書の魅力をほとんど伝えられないのが残念だ。この独特の世界観を是非数学嫌いの人にこそ味わってほしい。



2016-03-19

ICT Design Trek 2016に参加した

はこだて未来大学で開催されたICT Design Trek 2016 (冬)に参加した。

f:id:hyoshiok:20160318145454j:image

SF映画をみて映画世界インタフェースを作ろう!ワークショップです。段ボールやスチロールなどを使って動くプロトタイプを3,4人のチームに分かれて作ります

<動くプロトタイプ

プロトタイプ作成のためにArduinoiPadプロジェクタスクリーン等を用意しています。もしこだわりの機材、使ってみたい機材がありましたら各自持ち込み歓迎です。

https://ed4bffb52a20331e96dfe5eb2a.doorkeeper.jp/events/38387

f:id:hyoshiok:20160317093123j:image

Star Trekを観て、それを題材に映画に出ていない何かを妄想して、それのプロトタイプを作るというワークショップである。(何を言っているかからない。私もよくわかっていなかった)

スター・トレック?/リマスター版スペシャル・コレクターズ・エディション [Blu-ray]

Star Trek1960年代に流行った米国の宇宙モノのSFTV番組である。それの劇場版映画1979年に公開された。今回の課題は、それを観て、その世界観に沿った何かを段ボールやスチロールで作るということである

f:id:hyoshiok:20160317093048j:image

4名ないし5名で1チームを作り、3チームで作業をした。それぞれのチームでアイデアだし、模型製作、発表、展示などを行った。

私が所属したチームは、はこだて未来大学学部生3名と私で4名編成だ。午前中にスタートレックのあらすじをジオラマを作って再確認した。

f:id:hyoshiok:20160317113816j:image

その作業を通じて、映画では表現されていないことを見つけ出した。

f:id:hyoshiok:20160317172422j:imageストーリージオラマ再現する)

宇宙船風呂ってどーなってんだろ。シャワーなんだろうか。とかなんとか考えて、宇宙船風呂を作ることにした。

f:id:hyoshiok:20160317162518j:image(絵を描きながらアイデアを出している)

f:id:hyoshiok:20160317161437j:image議論をしている)

スチロール材や段ボールみたいなものを使って実物大モデル工作する。日頃そんなことをしたことがないものから、その作業自体楽しい。ハサミやカッターで作ること自体楽しい。しょぼいんだけど楽しい

f:id:hyoshiok:20160317161419j:imageベット型の風呂イメージしている)

実物大模型なのででかい。人も入れる大きさである

f:id:hyoshiok:20160318124901j:image(循環系)

水を再利用している。

f:id:hyoshiok:20160318130754j:image(全体図)


f:id:hyoshiok:20160318143029j:image世界観表現するためにスタートレックの映画再現した)


f:id:hyoshiok:20160318145933j:image(縦型、シャワー)

人間洗濯してくれる。

f:id:hyoshiok:20160318145917j:image(デザイン案、議論最中に書いたり消したりした)

絵をもとに議論を重ねる。

f:id:hyoshiok:20160318145907j:image(スペースパ)

名前を決めた。当初は人間洗濯機だったのだけど、名称がイマイチだったので変えた。

f:id:hyoshiok:20160318145902j:image(全体図)


f:id:hyoshiok:20160318144854j:image記念写真w)

実物大模型を作ることによってアイデアが具体的に見えてくることを実感した。一方で議論の進め方などのファシリテーションが十分うまくいかなかったという反省もある。この手のデザインワークショップに参加したのは初めてだった。日頃の自分思考方法と全く違ったもの経験できた。

自分絵心が全くないので、今回ほど絵を描けるようになりたいと思ったことはない。絵の練習をしてみたいと思った。(ユーキャンのイラスト講座を受けるべきかと思った)

はこだて未来大学木塚さんには大変お世話になった。ありがとうございました。

2016-03-16

仮想通貨革命、野口悠紀雄著。読了。

仮想通貨革命---ビットコインは始まりにすぎないを読んだ。

話題ビットコインの仕組みを日本語で平易に紹介している。

特に第2章でビットコインの仕組み(ブロックチェーン)について詳細にわかりやすく解説している。

ビットコインは、1)電子署名を用いてビットコインを送る、2)取引P2Pネットワークで維持するブロックチェーンに記録する、3)ブロックチェーン改ざん防止のために、プルーフ・オブ・ワークの計算を課す。(67ページ)という特徴を持つ。

AさんがBさんにXビットコイン送ったということをAさんは自ら電子署名する。その記録をブロックチェーンと呼ばれる取引台帳にAさんは記帳して、それをネットワークに放流する。ブロックチェーンはそのネットワークに参加していれば誰でも見れるし、どんどんコピーされていくので、後からAさんがやっぱやめたとか、取引改ざんすることは難しくなる。さらに第三者がそのブロックチェーンをプルーフ・オブ・ワークで裏書するので、正しさが担保される。

ブロックチェーンという台帳を公開しているので、誰でも改ざんは(原理的には)可能なのだけど、公開鍵暗号を利用した電子署名プルーフ・オブ・ワークによって、現実的にはできない仕組みになっている。

ブロックチェーンの仕組みが大まかに理解できれば、そのインパクトが理解できるようになる。

特別管理主体がないというのが最大の特徴で直感的にはそのようなものがうまく行くはずがないと考えるわけだが、どこの馬の骨ともわからないやつが参加するネットワークがなぜうまくいくのか。

自分はそれを精密に記すことはできないが、ビットコインは、分散管理がうまくいくということを示した貴重な例だと言える。

ブロックチェーンという技術についてはもう少しちゃんと勉強したほうがいいと思った次第である

2016-03-12

数学の教科書をガッツリ読みたいプロジェクト

工学部卒業したので、大学時代数学勉強したはずなのだがすっかり忘れている。小中学校の頃は算数とか数学最初の方は結構好きだったのであるが、高校の中盤から後半にかけてすっかりちんぷんかんぷん理解が遅れてしまい、大学数学はさっぱりだった。

大学物理数学は何のために学ぶのかというモチベーションを見つけられないまま単位を取るために仕方なくこなしていた。

正直言って電子回路設計とか構造体の設計仕事にでも従事しない限り大学時代物理数学日常的に使うということはない。

コンピューターサイエンス勉強ちょっとはしたが、物理数学のような学問に比べると、理論的な積み重ねは薄いし、コンピューターサイエンスサイエンスと呼ぶのはおこがましいような気もしないでもない。

なんてことをつらつら思っていたのだが、最近数学をガッツリ学び直したいと思っている。

数学を学んだところで仕事にすぐに役立つわけでもないし、それによって何か経済的に豊かになるというわけでもないが、趣味としての数学とかを一から学んでみる。

大学初年度で使っている教科書をどうにかこうにか読めるようになるというのを当初のゴールに置いておく。

大学時代は仕方なく単位を取るために学んだのだが、これからは楽しむために学ぶ。趣味数学だ。

数学にはもともと興味があるので興味のある範囲数学を消費する。人類の英知を追体験する。時間軸に沿った散歩になる。おそらく17世紀あたりの数学くらいまではどうにか行けるのではないかと想像するが、20世紀にたどり着くには、どのくらいかかるだろうか。

幸いのことに友人知人に物理数学専門家もいるので、数学の道で迷子になったら彼らの助けを借りて溺れない程度に楽しみたい。

いきなりエベレストに登頂は無理だが愛宕山程度から散歩してみたい。

下記は知人から教えてもらった、田崎先生教科書で、草稿をオンライン無償)で読める。とっかかりはここからにする。

数学:物理を学び楽しむために

2016-02-28

ハッカソンの発表に自己紹介はいらない。デモをしろ。

本日開催した、「声優ハッカソン」に審査員として参加した。

https://apps.rakuten.co.jp/special/rakkathon201602/

声優ハッカソンというのは、プロの声優の声を使ったアプリを作るというイベントだ。何を言っているか、実のところわたしも参加するまでわからなかった。頭の中に?マークがぐるぐるしながら参加した。

f:id:hyoshiok:20160228163743j:image:w360

アプリの題材はなんでもいい。ゲームでもいいし、VRやARでもなんでもいい。ゲームであれば、ナレーションプロの声優にやってもらう。とかなんとか。

2日間でアプリを完成して、最後に2分間のプレゼンをする。

プレゼン評価ポイントデモである。どんなに高尚なアイデアであろうが実装されていないもの価値はない。ハッカソンは作ってなんぼという価値観支配している。

それを勘違いしているグループがいくつもあった。

自分審査員として、どんな作品もなるべくいいポイントを見つけてそこを評価したいと考えている。しかし、デモができないグループや、2分という時間を大幅にオーバーする発表には低い評価しかできない。

ハッカソンプレゼンテーションデモがすべてと言っても過言ではない。

わたし評価軸は、アイデアデモアイデアが良くてもデモが出来なければゼロだ。アイデア凡庸でもちゃんとデモが出来て、動いていれば合格だ。アイデアデモが秀逸であればそれが高評価になる。

そのために限られた時間配分アイデアが固まって実装が出来たらテストなどの安定化プロセスをへたら、デモの練習にエネルギーを費やすことをお勧めしたい。

プレゼンをしている最中に落ちたりしたら最悪だ。そのような事体に陥らないように練習を繰り返す。

機能の追加や修正バグフィックス以外は行わない。ともかく動くものデモする。これを done is better than perfect原則と言うが、ここではそれについては触れない。

作品表現するのはデモであるデモをしながら、その作品のネライや良さをアピールする。それしかない。作品の良さを引き出さない一切の情報は2分と言う限られた時間の中に入れてはいけない。

多くのチームが間違いを犯していた。最初のページが自己紹介になっている。2分のプレゼン自己紹介はいらない。有害である作品を紹介する最良にして最終的な方法デモ完璧にすることである

今回最優秀賞を受賞した作品デモ完璧であった。

Demo or Die (デモなくば、死を)なのである

学生さん質問されたので、そのようにお話をした。

大変楽しいハッカソンであった。

f:id:hyoshiok:20160228192128j:image:w360 審査員からぱちり。

f:id:hyoshiok:20160228185242j:image:w360 審査員のみなさま。審査員会で村井 純さん(慶應義塾大学環境情報学部長教授楽天株式会社社外取締役)や濱 健人さん(所属:賢プロダクション)たちと。

f:id:hyoshiok:20160228201640j:image:w360 審査員の稲川 英里さん(所属:賢プロダクション )、森 正弥さん(楽天株式会社 執行役員楽天技術研究所 代表)、わたしでぱちり。

2016-02-25

職業としての小説家、村上春樹、読了

職業としての小説家 (Switch library)を読んだ。

1)小説家は寛容な人種なのか、2)小説家になった頃、3)文学賞について、4)オリジナリティーについて、5)さて、何を書けばいいのか?、6)時間を味方に付けるーー長編小説を書くこと、7)どこまでも個人的フィジカルな営み、8)学校について、9)どんな人物を登場させようか?、10)誰のために書くのか?、11)海外へ出て行く。新しいフロンティア、12)物語のあるところ・河合隼雄先生の思い出

村上春樹自身が取れなかった芥川賞のことや海外での自作プロモーション方法などを赤裸々に語っている。作家論でもあり人生論でもある。

職業としてのプログラマというフレームを思いついた。

プログラミングについて語ります、というと最初から話の間口が広くなりすぎてしまいそうなので、まずとりあえずプログラマというものについて語ります。その方が具体的だし、目にも見えるし、比較的話が進めやすいのではないかと思います

自身村上春樹の熱心な読者というわけではないが、新刊が出ればちょっと気になって読んでみたりする。「風の歌を聴けからリアルタイムで読んでいるので同時代作家という感じがする。

僕はその前の年に村上龍長編小説コインロッカー・ベイビーズ』を読んで、「これはすごい」と感心したのですが、でもそれは村上龍しか書けないものです。pp247

小説家になるためには本を読みまくる。読書が嫌いな作家はいない。プログラマも一緒だ。優れたプログラマになるためにはプログラムを読みまくる。そんなことを思ったエッセイである

読め。

2016-02-20

デブサミの帰り道に軽く呑んで自分にとってのロックスターの話をした(プログラミング作法を読め)

今年のデブサミはアンオフィシャル飲み会がないそうなので、(相対的に)若い人たちと軽く呑みに行った。知り合いばっかしと呑むというのはいかがなものかと思いつつ、かといっておじさんばっかしというのもどうかと思い、講師控え室にいた智美ちゃんに声をかけ、いそいそとでかけた。

なんかの流れでGOというプログラミング言語の話になり、それを作ったRob Pikeはわたし愛読書であるプログラミング作法の著者で、わたしにとってはロックスターである

プログラミング作法はそれこそ何度も何度も繰り返して読んだ。英語版出張の時にゲットして穴のあくほど読んだ。日本語訳もわりとすぐ出た記憶がある。

当時はC言語プログラムを書いていたので、Cの言語としてのいけてなさにぶつくさ思いをはせながら正しいプログラミングのお作法というのもはなんだろうなあと悶々としていた頃にこの「プログラミング作法」に出会った。

1)スタイル、2)アルゴリズムデータ構造、3)設計実装、4)インターフェイス、5)デバッグ、6)テスト、7)性能、8)移植性、9)記法プログラミングでおさえるべきことを網羅している。プログラミング入門書としてプログラミング作法以降の教科書ですら、上記を網羅していないことを鑑みると、本書の価値現在でも減ってはいない。

特にから8については簡潔に必要最小限のおさえるべきポイントをおさえている。

GO設計するにあたってCでの間違いを修正マルチコア時代プログラミング言語を作り上げた。

UnixとかCとか時代を作った人たちが、そこから学んだことを新しい時代向けに作り上げる。すごいなあ。自分にとってのロックスターだということを(相対的に)若い人たちに熱く語ったのがデブサミ2016の後の飲み会である

f:id:hyoshiok:20160220105122j:image:medium

2014年楽天でGoCon (Go言語カンファレンスで、ゴーコンと発音する)を開催したのだがそのときプログラミング作法サインをしてもらった。

プログラミング作法、一読をお勧めする。

2016-02-13

美徳のよろめき、三島由紀夫著、読了

美徳のよろめき (新潮文庫)を読んだ。

国会議員が婚外セックスをする時代古典的不倫小説を読んでみるというのも悪くない。(これを言いたかっただけ(笑)

無垢なヒロイン、倉越婦人節子が、若いイケメン土屋によろめいてしまうという小説である姦通とか不貞とか背徳とか昨今使われない語彙が頻繁に出てくる。昭和30年代に発表された作品なので電話は出てくるが携帯は出てこない(当たり前だ)

節子と土屋不倫旅行をするシーンもなかなかいい。

2016-02-06

CROSS 2016 に行って来た

勉強会コミュニティCROSS2016に行って来た。チラシ200枚と楽天ステッカー500枚を配布した。

http://2016.cross-party.com/

会場は今年も横浜港大さん橋ホール。天気にもめぐまれ気持ちいい。

及川さん、伊勢さん、森藤さんとのパネルディスカッションに出た。

http://2016.cross-party.com/program/x4

f:id:hyoshiok:20160205170518j:image 会場の様子

f:id:hyoshiok:20160205170515j:image 伊勢さんと森藤さん

f:id:hyoshiok:20160205170509j:image 及川さん

会場から、会社から勉強会の参加が禁止されているという話を聞くのですが、そのような場合はどうしたらいいですか、という趣旨説明を受けた。

世界ソフトウェアで出来ているという時代にわれわれは生きている。ソフトウェアは人が創る。そのためによい人材雇用するのが経営トッププライオリティになる。勉強会への参加や発表を奨励することはあっても禁止することはナンセンスだ。そんなこともわからない経営者の会社には未来がないので、とっとと辞めた方がいい。転職をするめるというのが誠実な回答になる。とかなんとか暴言を吐いた。

及川さんはそれに加えて、会社からYoutubeを観れないとか、Qiitaを観れない会社はつぶれちゃえとますますヒートアップしていた。

いい人材を獲得することが技術系の会社のプライオリティであることは間違いない。当たり前の会社は技術者をちゃんと処遇する。技術者を安く買いたたくようなことはしない。日本ではなかなか当たり前が通用しないのが悲しい。

参加して大変おもしろセッションだった。みなさまはいかがだっただろうか。

togetter まとめ

http://togetter.com/li/934576

http://www.shigemk2.com/entry/cross_2016_engineer

まとめのまとめ

http://togetter.com/li/934599

2016-01-30

リモートチームでうまくいく、倉貫義人著、読了

傳智之さんから送っていただいた倉貫さんの近著リモートチームでうまくいく マネジメントの?常識?を変える新しいワークスタイルを読んだ。ありがとうございました。

わたしじしんは現在在宅勤務をしているわけではないが、いろいろと倉貫さんらの試みについて聞いたり、本を読んでみたりして、想像するに、新しい働き方のひとつであることは間違いないのだけど、マネジメントおよびチームメンバーには高度な専門性や自立性が要求される仕組みだと思った。

会社に行って仕事をするという「従来型」の仕事になれたものにとってリモートでの仕事の進め方には、それなりに必要スキルがあって、チーム運営でのコツが必要かと思う。そのコツについて、本書はこれでもかこれでもかと記している。

在宅勤務の人たちがチームになって働くことをリモートワークと言う。フリーランスの人がひとりで在宅勤務をするという形ではなくて、チームで働くことが特徴になる。

むかし、未踏ソフトウェアプロジェクト従事していた頃、在宅勤務をしたいたことがあった。家族にはあらかじめ理解をもとめていたが、それでも日常的に自宅にいると、ちょっとしたことを頼まれて仕事が中断してしまうことがあった。家族にとっては仕事をしているのかしていないのかが分かりにくいという問題がある。リモートワークには家族の協力が必要というのは本書が指摘するとおりだと思う。このような実践的なノウハウが本書につまっている。

会社に行くことが仕事をすることだと自分も含めて勘違いしているところが多いが、改めて仕事をすることとは何かを問いかける非常によいきっかけになる一冊だ。

東京で会社勤めをしていると過酷な満員電車に1時間以上乗って通勤をすることが珍しくない。(わたしなんかは現代奴隷船だと思っている)地方勤務のいいところは通勤時間の短縮や満員電車に乗らなくてもすむことなどをあげる人もいる。その究極の姿が、通勤時間ゼロのリモートワークに他ならない。リモートワークによるメリットデメリットを上手にバランスをとって実践すれば素敵な人生があるのかもしれないと思った。

本書はそれを実践している倉貫さんチームのケーススタディである。新しい働き方を模索しているすべての人にお勧めの一冊になっている。


2015-12-31

今年もよく歩いた。3年連続年間歩数500万歩越え

今年もよく歩いた。一昨年(5043927)、昨年(5624652)に続き年間歩数500万歩を越えた。3年連続である。(12/30までの実績値)*1

昨年は東海道五十三次や山手線一周なんかを歩いちゃったり、9月からは Ingress を始めたりしたため、11月の時点で年間500万歩を達成していて、さらに通年で月間40万歩を下る月がなかった。

今年は、それに比べると随分落ち着いていて、月間30万歩台の月が2月6月9月12月と6ヶ月もあった。特に会社が9月に二子玉川に引っ越しから月間40万歩を達成していない。8月にIngressがLV16になって、Ingress欲がおさまったためムダに歩くということをあまりしなくなったのも歩数が伸びなくなった原因ともいえる。

はいうものの歩いているせいか、風邪も引かないし、腰痛とかぎっくり腰とかもないので、すこぶる健康である肥満度というか体脂肪率特に問題となるレベルではない。歩く以外これといった運動をしない。歩くだけでストレス解消、健康増進、医療保険費削減に貢献といい事尽くめだ。

体が若干硬いので、ストレッチとか柔軟体操なんかをして、体も心も柔らかくしたいと思う。怪我もしにくくなりそうだ。

12345 6789101112total
2012283740 293135 296967 279559 302958 302025 297354 305660 276634 349358 315477 357783 3660650
2013352739 434632 386880 412944 419847 392677 405226 471046 386020 406772 385983 5877505043927
2014440867 403852 493074 439495 428917 465034 412872 484037 523405 502709 518291 512099 5624652
2015 529879 348984 406319 493469 473982 350083 451526 671315 311881 342236 380556 336399 5096629

2015-07-14

OSS Hack Weekendに参加した

楽天スポンサーになっているOSS Hack Weekendという学生向けのワークショップ形式勉強会に参加した。プログラミングが好きな学生のための成果発表 OSS Hack Weekend | SEゼミ

一応、学生向けということもありスポンサーからバリバリハッカーメンターとして参加して、ハンズオンを支援する。学生経験豊富なエンジニアからメンタリングを受けられ、企業は優秀な学生とのコンタクトを得られる。Win-Winな関係がある。

f:id:hyoshiok:20150712100123j:image

(会場)

勉強会エバンジェリストのわたしとしては会社枠で物見遊山的に参加した。(メンターじゃないのかよ>自分

4回シリーズになっていて、

という構成だ。

須藤さんが講師役で、大まかな作業の流れを示す。ゴールとしてはOSSへPull Request (PR) を出す。出し方を学ぶ、実際に経験してみるというのが今回の特徴である参加者学生)が選んだOSSをそれぞれの参加者が実際に動かしてみて、問題発見し、githubのissueを書いて、可能であれば、パッチなどを書き、pull requestをupstreamに送るという作業をする。

言語ごとにグループ分けをして、それぞれのグループにメンターがつく。直すOSS学生自分で決める。興味のあるOSSを選ぶというのが最初ポイントになる。

わたしはC言語にはちょっと土地勘があるので、というか、C言語くらいしか土地勘がないので、C/C++のグループに座ってみた。

今回担当した学生さんが選んだのが、Gnu EmacsとかRustとかbhyveとか、非常に骨のあるプロダクトだ。

前回のOSS Hack 4 Beginnersで、OSS開発の大まかなワークフローは学んだので、今回はそれの実践編になる。前々回で、GitGithubの基礎を学んだので、PRがどうだとかIssueがどうだとかいリテラシーはある。今回は、それらの基礎的な知識を駆使して、実際に本家PRを出すと言う経験をしてみる。

この手のワークショップは学校では教えてくれないし、企業でも現場経験するしかなくて、研修コースとして整備されているものはほとんどない。

OSSにどう貢献するかということに関して言語化されたものとして、例えば下記のUpstream Trainingが有名である。どうしても断片的なコミュニティー特有の事情が出てしまうのだが、それでもないよりは遥かによい。

https://wiki.openstack.org/wiki/OpenStack_Upstream_Training/Info/ja

問題発見してコミュニティとのやり取りの最初は多くの場合質問コミュニティに投げることになる。自分の期待する動きと違うことを発見したときに、それをいきなりバグだと声だかに言うのではなく、開発者意図確認するために質問する。それが意図したものであれば、その意図を聞く。

意図したものでない場合に初めてバグの可能性があることになる。

パッチ作成してPRを投げる。

もっといい方法があるかもしれないし、すぐに取り込まれることもあればリジェクトされることもある。それをオープン議論する。

問題認識していることを言語化して何が問題で、それをどう直したかなどを説明する。これらは平易な英語で書く。

GNU Emacsなど老舗のFLOSSはGithubホスティングされていない。メーリングリストでやりとりをするのが開発プロセスであるPRという言葉が出てくる前から存在するので、そこのお作法に則った作業が必要になる。

GithubによってPRというパラダイムシフトが起こったということを再度認識した次第である

でもって、各参加者がもくもくと作業をしている間、試しにGNU EmacsやRUSTのソースgit cloneしたりした。ついでにREADMEやらINSTALLなどを読んで $ ./configure; make; make installなどをする。

f:id:hyoshiok:20150712184319j:image

(ワタシハリナックスガチョットデキル)

わたしのMacCPUぶんぶん回っている感じがいい。

わたしが何か指導をするとか言うことも特になく、そもそもGNU Emacsについて一家言持つなんて言うのは百年早い感じがするので、作業を眺めているくらいしか、貢献できない。rustなんかは初見だし、bhyveに至っては初めて聞いた。

ということで、適度にお茶を飲みながら雑談をする。おじさんてきにはOSSいいよねー、楽しいよねー、みたいな毒にも薬にもならない話ばっかりで申し訳ないっす。

一方でメールの書き方くらいは相談に乗れないこともないので、PR構成についてあれやこれやアドバイスらしきことをした。

パッチそのものの説明ではなくて、何が問題かということを説明する。それがWhyである。それをきちんと説明できれば勝ったも同然である別に勝ち負けを争っているわけではないけど。

GNU Emacsに果敢にチャレンジした学生さんは、大きなプロダクトなので、ドキュメント不具合などを発見して、それに対する提案を書いた。

そんなこんなでそれぞれがPRを書いていた。PRを出すと、☆のシールを参加証にはって貰う。

OSSの開発のプロセスの一端を経験したことになる。怖くないということを知って経験を積んだのがこのイベントハイライトである

参加者40名くらいに30名くらいのメンターがいて、ワークショップ環境としては素晴らしいものであった。メンタリングがほぼマンツーマンで受けられる。

この手のワークショップイベントが増えて行けばOSSの貢献も増えて行くのではないかと思った。

学生向けだけではなく社会人向けのワークショップが強く望まれるのだが、コストをどう回収するのかとか課題は多い。そもそもメンターを30名も集められないし、スケールする方法も思いつかない。持続可能なビジネスモデル発見できればすごいことになると思う。

おまけ

なかなか学生さんと打ち解けることが難しい感じだったんだけど、昼休みになぜかIngressの話題になって、 hyoshiokさんイングレスやってんすか?リチャでオニキスっすか、まじすげー、A15なんすか、ちょーすげーっす、と筑波の学生さんとの距離がイングレスのおかげで急激に近づいた。筑波のポータル密度東京のそれとは随分違うので全く異なるゲームをやっている気分なんだろうなあと思った。

2015-02-28

Regional Scrum Gathering Tokyo 2015に参加した。 #rsgt

Regional Scrum Gathering Tokyo 2015に参加した。

Regional Scrum Gathering Tokyo 2015: Schedule

Day 1 program

Regional Scrum Gathering Tokyo 2015: Schedule

からJames Coplienの話を生で聞けるなど豪華なセッションがあって、お得感満載なイベント産業技術大学院大学スポンサーになっていてenPiTのちらしなどを配布していた。弁当もがっつりでていた。美味しかった。

f:id:hyoshiok:20150301074619j:image(James O. Coplien)

スクラムについての誤解などを解説、議論していた。わたしはスクラムの基本を彼から習ったので、そーゆーもんだと思っているが、ちまたに流布されているスクラム的なあれやこれやについて、それは違うというスタンスで解説した。ある意味、そもそもなんでスクラム必要なのかというところに立ち返るので、スクラムマスターがいなくちゃいけないとかプロダクトオーナーがいなくちゃいけないとか、そーゆー形式的なところにとらわれてはいかんというお話である自律的な開発ができるとか、リスペクトを忘れないとか、信頼をするとか、そのような価値観実践することが重要である。若干、エキセントリックに、あるいはエネルギッシュに話をするので、原理主義的に感じることがなくはないが、思想は一貫している。日本には、おもてなしの心があるので、スクラムを導入しやすいという持論を盛っている。


f:id:hyoshiok:20150301074617j:image(竹葉さん)

産業技術大学院大学 enPiT受講生の竹葉さんの発表。2014年度PBLで「あいまいらんち」というサービスを作った。その経験お話しした。

もともとスクラムには興味があって、昨年のScrum Gathering に参加し、スクラムへの違和感、なんか違う感をモヤモヤ持っていた。QConで永瀬さんのenPiT PBLのLT(lightning talkというショートプレゼン)を聞き、enPiTに参加してみることにした。講義を受講してPBLで実際に「あいまいらんち」というサービススクラムで作った。*1 そこで得た気づきを発表した。授業なので仕事と違って、「失敗をすること」を奨励される。試してみて、うまく行かないことを経験できる。そこから学びとれる。仕事場合は、「失敗」ということは許されないので、同じ結果だとしても、「成功」したものとして報告される。仕事ではなかなか経験できない試行錯誤経験することができた。

f:id:hyoshiok:20150301074618j:image写真を撮る猫耳をつけた川口さん(右端))


f:id:hyoshiok:20150301074616j:image(椎葉さん)

スクラムマスターなんていらないという主張はCopeさんの発表と通じるものがある。自社での開発経験スクラム開発方法論の文脈で語って行った。

自分エンジニアとして働きやすいチームを作るのが自分のゴールとして設定し、そのゴールを達成する障害をみつけて一つ一つ解消して行く。エンジニアに対する低い期待値に異を唱える。プロジェクトを通して成長することを期待する。ちいさな失敗を早めにすることによって学んで行く。みんなが働きたいと思う組織をみんなで作るというのが本当のゴールだ。組織というプロダクトをみんなで作る。みんながプロダクトオーナーだ。楽しいスクラムマスターはいらない。

椎葉さんの独特のかたりでぐいぐいと聞いている人たちを引きつけた。付箋を使ったプレゼンテーションスタイルは素敵だ。椎葉メソッドと呼びたい。作り方を教えてください。

f:id:hyoshiok:20150301074615j:image(Agile adoption - Vietnamese IT Higher Education)

セッションそのものには出ていなくて、最後ちょっとだけを後ろから聞いた。IT教育におけるアジャイル技法を試してみたというお話らしい。

f:id:hyoshiok:20150301074614j:image大学でのIT教育におけるアジャイル開発の取り組み)

f:id:hyoshiok:20150301074613j:image

産技大から中鉢さん、永瀬さん、東工大森本さん、はこだて未来大学木塚さん、筑波大学、嵯峨さん、渡辺さん、今川さんが発表した。パネルディスカッションというよりもショートプレゼン

内容はenPiTでの教育内容とそこでの気づきなど。

実践的なIT教育を行うためにはいろいろな試行錯誤必要で、そのひとつとしてPBL (Project Based Learning)というのがある。大学教員が必ずしもソフトウェア開発経験者でもないので、従来の教員が教える方法には限界がある。演習のような答が決まっている問題を解かせるのではなく、実際のプロジェクトとして学生にシナリオのない問題を解かせることによって経験をつませるという方法論になる。様々な大学がその取り組みをはじめた。筑波の今川さんは学生としてPBLに参加していて、その経験を話していたが、教員とはまったくことな視点が非常によかった。教員はすごくうまく行っていると思っているのだが、学生モチベーションは非常に低いというような事例は、管理者と非管理者というロールでもよくありがちなことで、それに気がつくというのはPBLならではなのかもしれない。

いろいろな試みがあり、非常に面白いイベントであった。

川口さん、永瀬さんはじめとする実行委員のみなさま、素晴らしいイベント提供していただき、ありがとうございましたー。

2015-02-27

金曜日はタモリ倶楽部だ

二週連続JR鶴見線、南武線を行く。先週は空耳アワーをすっ飛ばしたので、今週は二週分の空耳アワーだった。なんとお得な。

いつかは出たいタモリ倶楽部。

f:id:hyoshiok:20140222003121j:image

2015-02-26

一回休み

いろいろとお休みしたい気分で、すごろくで言うと一回休み

人生におけるプライオリティってなんなんだろう。とか、ガラにもないことを考えてみる。健康ニコニコ笑って生活できれば、それだけで十分だな。お酒と美味しいものとか、いろいろ言い出すときりがなくなるから家族幸せが一番だ。というわけで、オチがない。

2015-02-25

シェルスクリプトマガジンに寄稿した

シェルスクリプトマガジン vol.23寄稿した。

同誌の記事の中でもっとシェルスクリプトから遠いおちゃらけの記事になっていると思う。読者諸氏の感想を聞きたい。

新連載。よしおかひろたかIT散歩日記。(いったいどんな記事なのか皆目検討がつかない)

2015-02-23

EGMサミットに顔をだした

EGMサミットに参加した。

f:id:hyoshiok:20150228222857j:image

EGMサミット2015 "会社というコミュニティーでやりたいこと" - EGMサミット参加者コミュニティー | Doorkeeper

テーマに対するショートプレゼンテーションとその後のパネルディスカッションという形式で開催された。

諸般の事情で途中で失礼したが、ゆるい感じの発表が心地よかった。最後まで参加できなかったのがちょっと残念だった。

2015-02-22

大人の休日10周年パスがすごい

大人の休日10周年パスというのが、4日間JR東日本乗り放題で15000円。新幹線も乗れるので、超お得だ。ただし、大人の休日倶楽部会員限定なので、満50歳以上でないと利用できない。若い人はごめんなさいだ。

大人の休日倶楽部:JR東日本

JR東日本全線(新幹線を含む)に加え、青い森鉄道線、IGRいわて銀河鉄道線、三陸鉄道線、北越急行線、富士急行線、伊豆急行線の特急急行快速普通列車普通車自由席およびBRTが4日間乗り降り自由です。

新幹線も含んで乗り放題というのがすごいなあ。

2015-02-21

産業技術大学院大学(AIIT)2014年度enPiTプログラム成果発表会に参加した。 #enPiT

産業技術大学院大学で開催しているenPiTプログラム成果発表会に参加した。前日に続いて、こっちは産技大で開催したPBL全チームでの発表となる。全チームによるプレゼンテーション成果物デモ、そしてパネルディスカッションという構成だ。

ファイルが見つかりません

f:id:hyoshiok:20150222113559j:image川田誠一産業技術研究科長)

川田先生のご挨拶からはじまった。

グローバルコースは英語での発表になっていて、意欲的な構成だった。来年グローバルコースのミーティングにも時々おじゃましてみたいと思った。

参加者による投票によって、最優秀賞、優秀賞を選んだ。

f:id:hyoshiok:20150222113600j:image(チーム土曜日、最優秀賞)

f:id:hyoshiok:20150222113601j:image(チームwassermann、優秀賞)

おめでとうございます

なお、下記に、それぞれのソースコードサービスなどへのリンクがある。

GitHub - aiit-enpit/2014s: 2014年度スクラムによるWebアプリケーション開発コースのリポジトリです

打ち上げは、盛り上がった。へべれけであったw