blog.8-p.info

Jon Ronson “The Elephant in the Room” を読んだ。著者はイギリスのジャーナリストで、日本でも『ルポ ネットリンチで人生を壊された人たち』(“So You’ve Been Publicly Shamed”), 『サイコパスを探せ!』(“The Psychopath Test”), 『実録・アメリカ超能力部隊』(“The Men Who Stare at Goats”) などいくつか訳書が出ている。

訳書がでていない作品のひとつに、アメリカの陰謀論者などを追った “Them: Adventures with Extremists” という本と “The Secret Rulers of the World” というドキュメンタリーがある。この取材で著者は、陰謀論者の Alex Jones と知り合い、Bohemian Grove というキャンプ地で行われる政財界の大物の会合に潜入している。

この潜入取材もあり Alex Jones はいまは陰謀論業界の大物で、Donad Trump の有力サポーターのひとり。そこで著者は当時のコネを利用して Donald Trump 周辺に取材を試みる、というのが本書の導入部分。

大スクープというのは無いし、大統領選全体を概観するようなものでもないけれど、陰謀論者 Alex Jones と彼のウェブサイト Infowars, 共和党系政治コンサルタント Roger Stone の活躍、保守派コメンテーター Glenn Beck の語る Donald Trump からの勧誘とアメリカの分断に加担した苦悩など、楽しくはないけど興味深い本だった。

O’Reilly の Site Reliability Engineering という本が無料になっていた。すこし前に Kindle で買っていて、でもまだ読みきっていなかったので、すこし損した気持ちになる。

読んでいて思い出すのは、『テストから見えてくるグーグルのソフトウェア開発』という本のことだ。私は Google Testing Blog を読む程度には Google ウォッチャーなので、この本は原書が出た時点 (2012年) に読みはじめてブログにも書いた。

一方で『テストから見えてくるグーグルのソフトウェア開発』と “Site Reliability Engineering” には大きな違いもある。

前者はグーグルのなかでテストに関わるエンジニア職である SET (Software Engineer in Test), TE (Test Engineer) の組織構造や仕事の内容を紹介しつつも、最後にはこれらの職の発展的な解消を予言ないし期待して終わる。一方で、後者は SRE (Site Reliability Engineer) という職を新しく定義して、これから売り込もうという本のようにみえる。

その後の James Whittaker とその後の SET

実際に『テストから見えてくるグーグルのソフトウェア開発』の著者のひとりである James Whittaker は、はじめは Test Director として Google に入社し、Google Testing Blog にも精力的に投稿する「テストのひと」だったけど、最終的には Google+ の Development Director というテスト色の薄い (LinkedIn いわく “Engineering Director for Google+ APIs and dev/test tool chain” なのでゼロではないけれど) 仕事につく。

でも、その後には Google の変化と Google+ に失望して、前職の Microsoft にもどる。Google Testing Automation Conference 2011 の基調講演が「正しくものを作るまえに、正しいものを作るべきだ」という内容の Test is Dead だったことを考えると、Google+ に失望して退職というのは、なかなか苦味のあるはなしだと思う。

一方で James Whittaker なき後の Google では、2016年に SET を SETI (Software Engineer, Tools & Infrastructure) と改名して「テスト」を名前から外してしまう。

SET から SETI への変化で、業務や組織構造が実際にどれだけ変わったのかは、Google 社員ではない私にはいまひとつわからない。ただ、テスト職の発展的解消という予言と期待は、部分的には成就したといっても良いんじゃないかと思う。

Site Reliability Engineering vs. Site Reliability Engineer

そういう歴史をふまえると、availability と latency と、あと何個かを足して “Site Reliability Engineering” と呼ぶのには便利なこともあるかもしれないけど、職種としての “Site Reliability Engineer” は発展的に解消されないのかと少し疑問に思う。

とりあえず本を読んでみます。

すこしの現実逃避で、長らくバージョン管理もしていなかった 8-p.info を Git にいれて、2017年らしく HTTP から HTTPS にリダイレクトするようにした。

8-p.info はずいぶん昔に買ったドメインで、Wayback Machine には2003年ごろの記録が残っている。2003年は大学に入ってクレジットカードを作った年なので、ドメインを買ったのもその年のどこかだと思う。ファイルを眺めていると、Trac の Wiki 記法で書いたファイルがソースになっていて、それを Text::Trac を使う Perl スクリプトで HTML に変換しているページがあったり、アクセス制御用の .htaccess があったり、Windows CE むけのソフトウェアを配布していたり、技術的にも内容的にも時代を感じるものが色々とあった。

8-p.info はブログだけが更新されるという状態に落ちついてしまってから、もう数年がたつ。本当はもうちょっとポートフォリオっぽいページにしたいんだけど、最近あまり作品と呼べるものを作っていないのだった。

アメリカに住むようになってから、英語を真面目に勉強するようになった。泥縄が過ぎる話だけど、英語ができないと困ることが増えたので仕方がない。

去年は iKnowDuolingo という二つのサービス (どちらも Web と iPhone, Android むけアプリがある) を主に使っていた。iKnow は2014年から、Duolingo は2015年からずっと使っている。その他には、えいぽんたんmikan も少しだけ使った。

現時点の個人的な結論をはじめに書くと、英単語を覚えるなら iKnow が、英語全体を初心者が学ぶなら Duolingo がおすすめで、2015年と2016年は両方を、いまは iKnow だけを毎日やっている。

iKnow

iKnow は例文付きで英単語を覚えるためのサービスで

  • 例文のほとんどに音声がついている
  • 復習のタイミングを適切に管理してくれる
  • 比較的難しい単語までカバーしている

といった特徴がある。一ヶ月プランだと月額1,000円以上と、絶対値としての価格の高いサービスだけど、値段相応の価値はあると思う。

使い始めたころは電車で通勤していたので、主に通勤中にスマートフォンのアプリから、最近は徒歩通勤になったので、家から Web アプリを使っている。

コースのえらびかた

iKnow では勉強する内容が「英会話マスター400」「TOEIC」「ビジネス英語」といったいくつかのカテゴリに、カテゴリのなかにさらに「TOEIC 470点を突破しよう!」「ビジネス英語入門」といったコースがあり、そこから好きなものを選んで勉強する、というかたちになっている。

私は、iKnow を使うまえ、2013年にうけた最後の TOEIC が870点で、でも受験的なテクニック (わからなくてもマークシートは必ずどこかマークする) も駆使していた自覚があったので、最初は「TOEIC 800点を狙え!」から数コースを選んでやっていた。

いまは「SAT対策」からふたつ、「偉人たちの名スピーチ」からふたつオバマ大統領の演説をとって勉強している。同時並行ですすめるコースは少なめのほうが「このコースは終わったから、次はどのコースをとろう」というイベントが定期的に発生して、達成感を味わいつつ、気分転換になるので良い。演説をいれるのは、英語学習にありがちな「ボブはクライアントからの電話を私に転送した」みたいな文章を延々と覚えることのつらみを軽減してくれる。

毎日の勉強

毎日の勉強には、複数のコースをまとめてやるようにしている。特定のコースを選んで勉強するのも、たまの気分転換には良いけど、基本的には使わない。

iKnow には、アプリケーション内にさらにアプリケーションという概念があって、いくつかの方法で英語を勉強できる。私は iKnow (iKnow のなかにさらに iKnow があって混乱する) と Sentence Trainer を主に使っている。

勉強時間の記録も自動でつけてくれていて、私は1日15分以上を目標にしている。以前は1日の目標と一週間の目標を別にして、週末に足りないぶんを挽回していたりしていたんだけど、最近はそこまではやらなくなった。

ホーム画面には、連続継続学習日数が表示されるようになっていて、最初はこれを伸ばすのに集中するのが良い。私の場合、10日をこえたあたりから、これが途切れてしまうのがすごく勿体無いことに思えてきてしまって、日付が変わる直前に数秒だけやる、みたいな必死さがでてくる。

Duolingo

Duolingo も例文付きで英単語や英文法を覚えられるようなサービスで

  • 例文のほとんどに音声がついている
  • 復習のタイミングを適切に管理してくれる

あたりは iKnow と同じように使える。

  • 無料
  • 回答の判定が柔軟 (機械学習的な何かを使っているのだと思う) で、同じ意味のちがう単語もそれなりに認識できる
  • 精度はそれなりだけど、音声認識による発音チェックがあるので、声をだす練習になる
  • 他のユーザーをフォローして (ひそかに) 競い合える

といったところは iKnow より優れていて

  • 出題される問題の難易度があまり高くないので、長くは使えない
  • オフラインでは動かないので (機械学習的な何かがサーバー側で動いているのだと思う) 通勤電車フレンドリーではない

といったところは良くない。

コースのえらびかた (は無い)

Duolingo には「日本ができる人のための英語」「英語ができる人のための中国語」「英語ができる人のためのフランス語」みたいなコースはあるけど、それ以上の細かい区分はない。あまりいろいろ考えないではじめられるところは親切で良い。

iKnow とくらべると英語圏向けにつくられている感が強くて、日本語ができるひとのためのコースは英語しかない。

毎日の勉強

Duolingo は iKnow よりもゲーム的な作りになっていて

  • レッスンを順番にクリアしていく
  • テストをやって、複数のレッスンをクリアする

という二つの進め方がある。

前者は何度まちがえても続けらるけど、テストは何回か間違えると強制終了されてしまって、そこまでの経過はまったく記録されない。ここには「これは自信があるからテストで一発合格にするか、でも間違えたら時間が勿体無いからレッスンを地道にやるか」みたいな戦略の楽しみがある。

ゲーム的なところは、リンゴットという仮想通貨がレベルをあげていくことで貯まっていったり、それをつかって連続継続学習日数が途切れるのを防げたりと、時間制限を追加できたりと、色々にわたっている。

一方で、前述のとおり問題の難易度はあまり高くない。私の場合、日本語ができる人のため英語のコースは、半年もしないうちにすべて終えてしまった。コースを終えてしまうと、Duolingo が忘れかけていると判断した単語を覚え直しながら、いまひとつ計算方法のわからない語学レベルをあげるとか、連続継続学習日数をのばすくらいしかやることがなくなってしまい、だいぶ面白みが減ってしまう。

えいぽんたんと mikan

そのほかにもえいぽんたんと mikan も少しだけ使ってみた。

えいぽんたんはソーシャルゲーム風のサービスで、キャラを育てたりイベントがあったり、いわゆるゲーム風の要素が多めに作られている。はじめはそれが楽しかったけど、だんだん英語学習以外の要素が面倒になってやめてしまった。

mikan は Tinder 風のシンプルなユーザーインターフェースで、ひたすら英単語と日本語の意味をペアで覚えていくには向いている。ただ、iKnow の「英単語を英文の中で覚える」というのに慣れた身からすると、覚えた単語をどういうときにどう使うのか、という部分を学びにくいように思う。

まとめ

  • 英語全体を初心者が学ぶなら、まずは無料でシンプルな Duolingo
  • Duolingo が物足りなくなってきて、もっと英単語を覚えたいなら iKnow

あわせて読みたい

私が過去に書いた iKnow, Duolingo がらみの記事 (2015)

TechCrunch 西村さんの mikan の紹介記事。自身が英語学習ソフトを自作 (!) しているだけあって、新規性の検討などがちゃんとされていて面白い。

morrita さんの英語学習遍歴。ひとの紆余曲折は参考ないし励みになる。

刺身さんの Duolingo, iKnow 比較。私と逆のはじめかた (Duolingo をやってから iKnow) なので、感じかたに違いがある。

higepon さん、小関悠さんの、英語の不得意さを補う話。小関さんは「天邪鬼に」と書かれているけど、資料を用意するくだりなんかは higepon さんの丁寧さに通じるところがあると思う。

Derek Sivers が「目標は人に言わずにおこう」と言っていた。かっこいい目標を公言すると、それだけでほめられたりして、それを達成したような錯覚がともなうので、結果として目標達成を妨げるらしい。

というわけで、はじめは Keep / Problem / Try で分けて書こうと思っていたんだけど、Problem と Try は目標めいたものになりがちなので、今日は良かったことだけ書いておこうと思う。

子供が生まれた

子供が生まれて父親になった。アメリカの出産では立ち会うのが普通らしく、陣痛から出産までずっと一緒にいた結果、3回くらい泣いてしまった。子供はかわいい。

以前に私は、結婚して子供をつくったり住宅ローンを組んだりすると、生活の可搬性はどんどん失われていって、結果として海外で暮らすようなことは無くなるんだろうと思っていた。

数年たってみると、現実問題として可搬性は失われていて、ギークハウスに住んだりはもうできない。一方で、結婚して子供をつくってアメリカに住む、くらいまでなら実現できたのは発見だった。もちろんそれは、慣れないアメリカの生活についてきてくれた妻のおかげで、これについては感謝しかない。

仕事で Peer Recognition Award をもらった

仕事は、年のはじめに近所の (真上のマネージャーは変わるけど、その上のマネージャーは同じような) 新しいチームに異動して、そこで一年間はたらいた。外から見て「ここを作りました」といいづらい地味なところだけど、良いチームで気に入っている。

中頃には Peer Recognition Award をもらった。私には、日本のチーム解消にまぎれてアメリカに来たという、なりすまし症候群のような後ろめたさがちょっとあったので、個人で表彰されたのは励みになった。

グリーンカードの手続きをかなり進めた

グリーンカード (アメリカ永住権) の手続きをかなり進めることができた。

アメリカに来た当初は、ビザをとるまでの様々な書類仕事に疲れていたこともあり「グリーンカードのことは、今のビザが切れそうになってから考えよう」と思っていた。でも、その一年後 (2015年10月) に Twitterの大解雇があり

  • アメリカ企業というのは解雇するもので
  • 解雇されたときに私に残された選択肢は、大変なもの (短期間での日本への帰国か、転職活動 + ビザとりなおし) しかなく
  • いまの雇用先のグリーンカードをとってくれる条件に私は合致している

それならば、グリーンカードをとっておくべきだろう、と考えを改めた。

マラソンした

いままで Color Run のような記録を測らないファンランには何回か出ていたんだけど、今年は Hot Chocolate 5k/15k で 15km を、Seattle Marathon 10k で 10km を真面目に走った。タイムは遅かったものの、どちらも完走できた。

機械学習と Hadoop に入門した

機械学習は Coursera の Machine Learning を途中までやって (途中で挫折して)、いまは Udacity の Intro to Machine Learning を少しずつ進めている。

Hadoop にも Amazon Elastic MapReduce で少しだけ入門した。

どちらも入門半ばで、どのくらい取り組むかはまだ未知数だけど、はじめられたこと自体は良かった。