5/31/2015

RMS: How I do my computing

RMSの「How I do my computing 」(私のコンピューティング)の超訳。

Hacker News

How I do my computing

  • 私はThinkpad X60コンピュータを使っていて、FSFがフリーの初期化プログラム(libreboot)とフリーのオペレーティングシステム(Trisquel GNU/Linux)がインストールしました。これは、フリーの初期化プログラムとフリーのオペレーティングシステムを持つ商業的に販売された最初のコンピュータで、FSFが推薦する初のコンピュータ製品です。(しかし、Lenovoから販売されていません)

    その前に、私は数年Lemote Yeelongを使っていました。ところが、OLPCプロジェクトがWindowsをサポートするマシンを作ることを決めたので、使うのをやめました。私はそれを是認していると思われたくありませんでした。OLPCはWiFiのためにフリーではないファームウェアblobを使います。そのため、私は内部のWiFiデバイスを使うことができませんでした。大きな問題はなく、私は外部のWiFiデバイスを使いました。

    数百万の子供たちがOLPCでWindowsを走らせるのではないかと心配しましたが、そうはなりませんでした。その代わり、数百万の子供たちはインテルのクラスメートPCでWindowsを使っています。

    それ以前、私は完全フリーなGNU/Linuxシステムを実行していましたが、BIOSがフリーではありませんでした。私は約8年、非フリーBIOSを回避する方法を見つけようとしてきました。

  • 私は推奨のGNU/Linuxディストロを持っていません。私は全てが倫理にかなったディストロを推奨しています。はっきり言うと、それは100%フリーなソフトウェアで作られたものです。

    私はそれらの倫理にかなったディストロ間で優劣を付けないようしています。まさに、私は他の基準でそれらを判定する立場にありません。それら全てを試すには多くの作業が必要で、私がすべきものではありません。

  • 大抵は、便利さからテキストコンソールを使います。私の仕事のほとんどはテキスト編集なので、テキストコンソールがより効率的なのです。テキストコンソールなら、もし間違ってタッチパッドを触ってもトラブルを引き起こしません。

    グラフィックインタフェースを必要とする作業ではX11を使います。グラフィカル環境あるいはウィンドウマネージャに好みはありません。グラフィカル環境への私の興味は小さいのです。それらを比較することに時間を使いたくないのです。

    これは倫理上の問題ではなく、単に私自身の好みです。倫理レベルでは、フリーのグラフィカルユーザインタフェースソフトウェアを提供するフリーソフトウェアは重要だと思います。GNUプロジェクトはそれを開発するのに3つのプロジェクトをローンチしているのはそのためです。3つ目のGNOMEが成功したので、私は4つ目は必要としていません。

  • 私はEmacsでほとんどの時間を費やします。私はEmacsでM-x rmailやC-x mを使ってメールを読んだり送ったりします。他のメールクライアントプログラムを使った経験はありません。他のフリーのメールクライアントについて知りたいですが、それらを学ぶことは私にとって優先度は高くありません。私には時間が足りないのです。

  • ボランティアヘルパーがpolitical notesやurgent notesをインストールしますが、このサイトのページもEmacsで編集します。他のウェブサイトのメンテナンス方法の経験がありません。私は他の方法についても知りたいですが、それらを学ぶことは私にとって低い優先度です。私はすべきことが他にあります。

  • このサイトはとてもシンプルな方法でメンテナンスされています。例えばHTMLでも私はマニュアルで編集しています。私は単純なHTMLを知っているだけなので、トップやボトムページ、ホームページのさらに複雑なフォーマットはもっとよく知っている人が書いています。ボランティアヘルパーが毎日私からメールを受け取った後に、political notesをインストールします。cronジョブがpolitical notesを月に2回ロールオーバーしています。フォトギャラリーはこのperlスクリプトで生成されています。サイトの検索機能はこのコードを実行しています。

  • 「ユーザエクスペリエンス」というデザインコンセプトの説明は、なぜ私はひどく不快に感じるのかも説明します。なぜ私がstallman.orgが欲しいと考えるか: 「ユーザエクスペリエンス」ではなく、むしろあなたへの確かな情報、考えや行動の機会を提示する場所なのです。

  • 私は無料の代替品(GNUシステム)を開発することを決めたあとも、決してUnixを使いませんでした。私はポータブルで公平でクリーンだったので、あのデザインを選択しました。私は決してUnixのファンではありません。私にもUnixへの批判がありますが、全体モデルとしてはOKでした。

  • 90年代半ば、ひどい手の痛みを持っていました。日のほとんど、片手でタイプするだけでした。FSFが私のためにタイピストを雇ってくれて、痛みを我慢しました。数年後、私はその原因がキーボードの固いキーのためだったことを発見しました。軽いキー圧のキーボードに交換し、問題はほとんどなくなりました。

    問題は手根管症候群ではありませんでした。タイプする時、腕をまっすぐに伸ばすことを避けています。ストレスの繰り返しが原因の手の痛みがいくつかあります: あなたは思い込んではいけません。

  • なぜ、私がPOSIXと名付けたか

  • 私はインターネットを始めから使っています。私はUUCPは決して使いませんでしたが、たまにUUCP経由で伝達しなければならないアドレスへメールを送りました。

  • 私は自分がどのようにインターネットを使うか注意しています。

    私は特別に関係しているいくつのサイトを除いて、自分のマシンからウェブサイトにほとんど接続しません。いつも他のサイトからwgetのようなプログラム(git://git.gnu.org/womb/hacks.git 参照)にメールを送ってウェブページを取得してメールで戻しています。HTMLページに直接書かれたテキストを読んで分からなければ、ウェブブラウザを使うことを考えます。まずlynxを試し、画像を必要なら、グラフィカルブラウザを使います(そのような状況で他サイトから取得できない場合は、konquerorを使います)。

    たまにTor経由IceCatを使ってブラウズすることもあります。訪問したサイトに私自身を特定されたくないので、私が接続してブラウズすることを回避するには十分だと考えています。

    私は決してウェブ上で支払いをしません。ネットで支払いを要求するものを使いません。(接続が必要なsmallman.orgドメインの手数料は例外です)

    もし、匿名化できるなら、インターネット上の電子書籍あるいは楽曲のコピーへの支払いは気にならないでしょう。ただ、そのほかに倫理的なことがあります(非DRMあるいは非EULA)。しかし、その選択肢はほとんど存在しません。私は実現させる方法を探し続けています。

  • もっとも強力なプログラミング言語はLispです。あなたがLisp(あるいはその派生であるScheme)をご存じ無いなら、強力でエレガントなプログラミング言語が何を意味するのか分からないでしょう。Lispを学べば、ほとんどのプログラミング言語で何が不足しているか理解できるでしょう。

    特化したデータ型(specialized data types)を定義する今日のほとんどの言語とは異なり、Lispはいくつかデータ型を提供するのが一般的です。型の定義の代わりに、これらの型から構造を作ります。従って、list-of-this型やlist-of-that型を定義する方法を用意するよりも、Lispはデータの種類を保持できるリストの一タイプを持っています。

    他の言語は、list-of-thisを例示化できる包括的なリスト検索機能を定義する方法やlist-of-thisを探索する機能の定義を持たせられます。Lispはどんなリストでも検索する機能を書くのが簡単ですし、そのような機能の幅を提供します。

    加え、Lispの関数や式はある意味ではデータとして表され、それらの操作が簡単に作れます。

    Lispシステムを開始すると、read-eval-printのループに入ります。ほとんどの他の言語は、'read'や'eval'や'print'に相当するものがありません。なんと大きな欠陥!

    Lispは他の言語より難しくありません。プログラムを勉強したことがなく、プログラムを始めたいなら、Lispを始めて下さい。Emacsで編集を勉強すると、Emacsの編集コマンドを書くことで、Lispを勉強することができます。「free as in freedom」を学ぶためにも「Introduction to Programming in Emacs Lisp」を利用して下さい。FSFから書籍を注文できます。

    Amazonから本あるいは何でも買わないで下さい!

  • 私のお気入りのプログラミング言語はLispとCです。しかし、1992年から私はフリーソフトウェア活動を中心に行っているので、忙し過ぎてプログラミングできません。2008年、私はプログラミングプロジェクトに参加するのを止めました。結果、Perl、Python、PHPやRubyのような新しい言語を勉強する機会をあるいは時間を持てなくなりました。

    私はJavaの本を読み、Cと比較してエレガントなさらなる開発法を見つけました。しかし、それを使うことはありません。私は一度Javaでコードを書きましたが、そのコードはCやLispみたいなものでした(当時、私は単に偶然Javaだったのです)

    一方、私はC++がとてもひどいと感じています。

    人々は私にPythonは基本的にLispに似ていると教えてくれたので、Pythonのマニュアルをざっと読んでみました。私の結論はそうでもありませんでした。'read'、'eval'や'print'がPythonには全てありません。

  • 私は断固として非フリーソフトウェアをインストールすること、私のコンピュータや私のためにセットアップされたコンピュータでプリインストールを容認することを拒絶します。

    しかし、もし私がどこかを訪ね、近くで入手可能なマシンが偶然に非フリーソフトウェアを含んでいた場合、私がそうしたのではないので、私はそれらに触るのを拒否はしません。私はブラウジングのようなタスクに一時的に使うでしょう。この限定的な利用はソフトウェアのライセンスに承認を与える、あるいはコンピュータに含まれるにライセンスに責任を負うわけではありません。そして、私はこれを控えるための倫理的な責任を確かめません。もちろん、私は人々になぜフリーソフトウェアに移行すべきかを説明します。しかし、私は押し付けません。なぜなら、彼らを説得する方法がないからです。

    同じように、私が使うキオスク、公衆電話やATMの中にあるソフトウェアを心配する必要はありません。目的のためにも私はそれらをフリーソフトウェアに移行して欲しいですが、その時までそれらに触れるのを控える必要はありません。(私はそれらのマシンやそれらの所有者が私の個人データで動いていることを認めますが、たとえ彼らがフリーソフトウェアを使っても同じ問題が発生するので、それは別問題です。問題への私の回答は、私に関するデータを彼らに与えるような行動を最小限にすることです。)

    それが一時的にマシンを使う場合の私のポリシーです。もし、毎日1時間使うなら、もはや"一時的"ではありません。それは常用になります。その時点で、私はコンピュータに非フリーソフトウェアの締め付けを感じ始めるでしょうし、自由なコンピュータを準備する義務を感じるでしょう。

    同じように、私が利用するコンピュータをセットアップするどなたかに要求あるいは伝えるとするなら、そのソフトウェアを搭載する倫理的な責任があります。このような場合、マシンが私のものであった時と全く同じようにフリーソフトウェアを強く要求します。

    電子レンジなどの電化製品では、ソフトウェアの更新は当たり前ではありませんし、コンピュータでもありません。そのような場合、私はユーザはデバイスがプロセッサやソフトウェアを持っているかどうか、別の道で作られているかどうかなどを考慮に入れる必要はないと考えます。しかし、"ファームウェア更新"ボタンがあるなら、それはソフトウェアをインストールするのが当たり前だという意味で、それはコンピュータです。

    Skype(非フリーの相互運用でいない通信プログラム)は特殊ケースです。Skypeを使っている誰かと話すためにSkypeを使うことは、非フリーソフトウェアを使うよう代替ソフトを勧めます。そして、私はいかなる環境下でもそれを使わなでしょう(詳細はこちら)。

  • デジタル著作権管理(DRM)を強要する非フリーソフトウェアが必要なNetflixやSpotifyのようなストリーミングメディアのディスサービスは、自分のコンピュータにストリーミングされるデータをコピーするのをやめさせることを目的としています。破れないDRMは決して使うべきではありませんし、彼らのDRMを破ることができなければ、これらのディスサービスを使うべきでありません。

    友人がある時私に彼女と一緒にビデオ見るのか、その際、彼女はNetflixをコンピュータに表示するとしたらどうすると私に尋ねました。私は、Netflixは自由への侮辱だと言い、断るでしょう。そして、私は何があってもいかなる環境下でも利用に関わりません。

    これらのストリーミングのディスサービスは人々を反社会的にさせるために設計された悪意のある技術です。(もし、コピーを作れないなら、コピーを共有できない。) それらを拒絶することがもっとも高い倫理的な優先事項です。

    アウト、アウト、クソSpotify! フリックオフ、Netflix!

  • 検索には、ここ数年はほとんどDuckDuckGoを使っています。JSを無効にして行いますが、検索の前にリンクをフォローする必要があります。

    私もixquick.comを時々使っています。

  • 私は決してFacebookやGoogle+のアカウントを持ちません。信念に基づいて、それらのサービスを拒絶します。私の名前でFacebookのアカウントを作ったインポスターがいます。そのページは私のものではありません。私の名前のGoogle+アカウントも私のものではありません。

    私はFacebookやGoogle+を拒絶します。なぜなら、彼らが一つだけアカウントを持つことを求めるのは、個人の行動全てが一斉に集められていることを意味しているからです。彼らも個人の通名を知っていると断言してもいます。私の考えを表明します。私自身のアイデンティに誇りを持っています。私は公平で安全な立場にあるので、それを行うことができます。見える場所で名前を使うことで、報復を恐れている人たちがいます(従業員から、悪党から、弱いものいじめから、あるいは国家から)。彼らのためにも、個人の正体(リアル・アイデンティティ)にひも付けられたアカウントで接続することを求めるソーシャルネットワーキングサイトを拒絶しましょう。

    Google+はユーザの本名を隠すことを言っていますが、「established identiy」あるいは「privide ID」の立証を必要とします。スパイとしてジャーナリストを起訴するポリシーを持つ米政府から本名を隠すことができなくなっているので、私はこの要件を疑っています。事実、Gogole+はふつうは弱者をあらわにします

    その記事はGoogle+アカウントなしに生活するのは難しいと大げさに言っています。

    メッセージを投稿するには非フリーのJavascriptコードを実行するという要件がGoogle+自身のもう一つの重大な欠陥です。

    もちろん、Facebookの方がその他多く理由で悪いです。

  • 私は他のソーシャルネットワーキングサイトも使いません。彼らは私にとって本質的に迷惑です。彼らは全て非倫理的というわけではありません。いくつかがそうで、いくつかがそうではありません。ソーシャルネットワーキングサイトは配布されているソフトウェアの倫理的問題(フリーとプロプライアタリー)とは完全に異なる一連の倫理的問題を強くしています。

    私はrmspostcommentsと呼ばれるツイッターのアカウントを持っており、記事のコメントを投稿するのに他サイト上でログインするために使っています。私は決してツイッター上では投稿しません。誰かがsmallman_feedというアカウントを作り、一連の政治的なメモについて何かに投稿したと言いました。私だと言い張る他のツイッターのアカウントはインポスターです。

    gnusocial.no上のrmsアカウントはこのサイトからの政治的メモのコピーです。しかし、直接投稿はしません。そのサイトはGNU Social上で実行しています。

    それらの二つのアカウントはさておき、私だと名乗るソーシャルネットワーキングサイト上のいかなるアカウントもインポスターです。

    私は4chanにも投稿しません。私はそれらに対して何もしていません。ただ、4chanのインタビューの質問にたまに答えます。しかし、私だと名乗るいかなる投稿もインポスターによるものです。

  • 人々は時々推奨メールサービスを私に聞きます。メールサービスには2つの倫理問題 (1)非フリーソフトウェア(そのサイトから非フリーのJavascriptコードを含む)を実行せずに使うことができるかどうか、(2)プライバシーに配慮しているかどうかがあります。

    問題1には、FSFのページを見て下さい。問題2については、私は納得できるメールサービスを確かめる術をもっていません。従って、提案するべき推奨するものを持っていません。

    しかし、私は 検索エンジンに接続せずにメールサービスを使うことが賢いことだと提案できます。その方法なら、あなたのメールの内容が検索結果に影響を与えないことがほぼ確実です。あなたはどんな場合でも検索エンジンにあなた自身を識別すべきではありません。

  • デジタル著作権管理(DRM)を持つ全ての製品はあなたの自由に攻撃しています。

    従って、個人でDRMの手錠を破ることできないなら、手錠をかけられた製品は買うべきではないし、我慢すべきではありません。例えば、DeCSSあるいは他の同等のフリーのプログラムを持っていない限り、暗号化されたDVDを利用しないで下さい。そして、その手錠を破ることができなければ、Blurayディスクを利用してはいけません。読者の自由を踏みにじるAmazon Swindleあるいは他の電子書籍リーダを使わないで下さい。DRMを強制する楽曲あるいはビデオストリーミングサービスを使わないで下さい。(もし、彼らが非フリークライアントプログラムを求めているなら、それはおそらくDRMあるいはユーザの監視みたいなものを行っています。)

5/30/2015

北米のインターネット・トラフィック、下りピークの37%がNetflix

Sandvineから北米のインターネット・トラフィックの状況を記した「Global Internet Phenomena」が公表された。なんと、ピーク時間では下りトラフィック全体の37%がNetflixとのこと(Variety)。ついで、多いのがYouTubeで15.6%で両者を合わせると半分を超える。BitTorrentは減り続けており、Amazon Instant Videoはそれほど伸びていない。

# Contents Share
1 Netflix 36.48%
2 YouTube 15.56%
3 HTTP 6.02%
4 iTunes 3.36%
5 BitTorrent 2.76%
6 Facebook 2.65%
7 MPEG 2.07%
8 Amazon Instant Video 1.97%
9 Hulu 1.91%
10 SSL 1.91%

5/29/2015

Google I/O 2015

Googleの開発者会議「Google I/O 2015」の基調講演のまとめ。

  • Android M
    • アプリ単位にパーミッション
    • Chromeカスタムタブ
    • Android Pay
    • 指紋認証
    • バッテリー改善: DozeとUSB-C
    • Q3リリース、プレビュー版はNexus 5, 6, 9向けに本日リリース
  • Android Wearの強化
  • IoTのための軽量OS「Brillo」、プロトコルスタック「Weave」
  • Google Now: Now on Tap
  • Google Photos: 無料、容量無制限 (最大16MP、1080p)
  • Android One: YouTube、マップのオフライン利用
  • 開発者向け
    • Android Studio 1.3、Polymer 1.0: C++のサポート
    • CocoaPods
    • Cloud Test Lab: 20デバイスをテストできる
    • GCM 3.0: iOSをサポート
    • AdMobツール
    • Android Nanodegree: Andoridのアプリ開発コース
  • VR
    • CardboardがiPhone対応
    • JUMP: VRカメラ+GoPro

Hacker News

5/28/2015

iOSにクラッシュや強制再起動を引き起こすUnicodeバグ

アラビア文字や記号を含む特定のUnicodeメッセージをiMessage/SMSで受信するとクラッシュや再起動を引き起こす厄介なバグが見つかった(MacRumors)。ロック画面で通知を表示させていればメッセージを受信した途端にクラッシュするし、メッセージアプリをリストビューで開くたびにもクラッシュする。会話ビューを開いてもクラッシュしないが、新しい会話を始めようとするとクラッシュする。Appleはソフトウェアアップデートで修正すると表明しており、それを待つしかないが、いくつかの次善策が見つかっている。

  • メッセージの通知設定で「ロック画面に表示」をオフ、ロックされていない時の通知スタイルを「なし」
  • 次の方法でメッセージを送ってから、会話ビューで該当メッセージを消去
    • Siriでメッセージを送信
    • 写真アプリで適当な写真を選択し、共有をタップし、メッセージ経由で写真を送信

5/27/2015

MarsEditでBloggerが使えなくなる

Googleが3年前からClientLoginのサポートを終了し、OAuth 2.0に移行すると発表していたのに、Red Sweater Software (MarsEdit)が対応をサボっていたため、MarsEditでBloggerが使えなくなってしまった。

Can’t post for [blog name] because the server reported an error:
https://developers.google.com/accounts/docs/AuthForInstalledApps

と表示され、更新・投稿ができない。至急修正すると約束しているが、困ったものだ。

更新 20150531

BloggerのOAuth2に対応した修正ベータ版(3.7b1)がリリースされた。

更新 20150604

正式版3.7がリリースされた。

5/26/2015

自由貿易を守るには、TPPを抹殺しろ

コリイ・ドクトロウ氏のTPP反対表明「To save free trade, kill TPP」。

環太平洋戦略的経済連携協定(TPP)の敵は必ずしも自由貿易を妨害するわけでないのに、彼らは断固として間違いを無視し、公的支出(税金)で一部の優遇された業界を満たす秘密交渉を行っている。

NAFTAのような貿易協定やWTOは左翼には評判良くないが、まだマシだった。その一方、ACTAが失敗した。そして、交渉過程が完全に違法の結果、対立がとても広範囲であるため、TPPとTTIAが崩壊寸前にある。元IMFの首席エコノミストは手続きに合法性に欠け、間違っていると語っている。

ティモシー・B・リーは、秘密裡に通商協定の行い、自由貿易プロジェクト全体に受けが悪い著作権延長法や投資家対国家の紛争解決(ISDS)のような限定された分野をえこひいきするような受け狙いに怒っている。

私は自由貿易協定の支持者ではないが、リーが正しいと思う。この手の類に反対運動をしているアクティビストとしての私の見方からすれば、手続きの不正行為を伝えるのに単純なストーリーを持つのはいいし、理解が簡単だ。(もし国民がTPPを支持すると思うなら、誰も密室で交渉しないし、取引きについて話せば刑務所行きと国会議員を脅したりはしない)。取引きの実態は極めて好ましくない、そして伝えるには極めてテクニカルで難しい。悪党の腹黒い手続きの不正行為はあなたの抵抗へのギフトだ。

もし、自由貿易取引に未来があるなら、その透明性が合法性をもたらす。

5/24/2015

本: Mastering Emacs

ミッキー・ピータセン氏のEmacs初心者向けの入門書「Mastering Emacs」。彼のブログ「Mastering Emacs」をそのまま本にしたわけではなく、書き下ろしとのこと。印刷本ではなく、電子本(ePUBとPDF)の形で販売され、今なら35.99ドル。以下、目次。

  1. Introduction
    • Thank you
    • Intended Audience
    • What You'll Learn
  2. The Way Of Emacs
    • Guiding Philosophy
    • Important Conventions
  3. First Steps
    • Installing and Starting Emacs
    • The Emacs Interface
    • Keys
    • Configuring Emacs
    • Getting Help
  4. The Theory of Movement
    • The Baiscs
    • Window Management
    • Frame Management
    • Elemental Movement
    • Bookmarks and Registers
    • Selections and Regions
    • Searching and Indexing
    • Other Movement Commands
    • Conclusion
  5. The Theory of Editing
    • Killing and Yanking Text
    • Transpositioning Text
    • Filling and Commenting
    • Search & Replace
    • Changing Case
    • Counting Things
    • Text Manipulation
    • Keyboard Macros
    • Text Expansion
    • Indenting Text and Code
    • Sorting and Aligning
    • Other Editing Commands
  6. The Practicals of Emacs
    • Exploring Emacs
    • Working with Log Files
    • TRAMP: Remote File Editing
    • Dired: Files and Directories
    • Shell Commands
    • Shells in Emacs
  7. Conclusion

Hacker News

5/22/2015

ニューロマンサーの映画化近況

Screen Dailyが、ニューロマンサーの映画化を進めているGFM Filmsに中国のC2Mメディアグループが資本参加すると報じている。そして、監督予定だったヴィンチェンゾ・ナタリが降板し、プロデューサーのルーカス・フォスターは新しい脚本家と監督と協議に入っているそうだ。資金が集まったことは、映画化に大きな前進だろうが、最初の舞台は千葉シティーから中国に変わるかも。

Slashfilm

5/21/2015

ビル・ゲイツ氏の夏読書

ビル・ゲイツ氏推薦の夏本

  1. Allie Brosh: Hyperbole and a Half
  2. リチャード・ドーキンス: ドーキンス博士が教える「世界の秘密」(Amazon)
  3. ランドール・マンロー: ホワット・イフ? 野球のボールを光速で投げたらどうなるか (早川)
  4. ランドール・マンロー: xkcd
  5. ユーラ・ビス: On Immunity
  6. ダレル・ハフ: 統計でウソをつく法 (Amazon)
  7. Vaclav Smil: Should We Eat Meat?

Boing Boing

Logjam攻撃でTLS通信に改ざん・盗聴の危険性

セキュリティ研究チームが「Logjam」と呼ばれる脆弱性を発見したとのことだ。Diffie-Hellman(DH)鍵交換を利用しているTLS通信に影響があり、FREAKと同じようにMITM攻撃を使って、クリントン政権時代の輸出制限で使われていた512ビットの非常に弱い鍵(DHE_EXPORT)にダウングレードが可能とのこと。HTTPSを使うトップ100万サイトの8.4%に影響がある。対応はサーバ、ブラウザとも行う必要があり、現時点でこの攻撃をブロックできるブラウザはIE 11のみ、Chrome、Firefox、Safariは近日修正が行われる。また、DH鍵交換で同じ1024ビットの素数が使っているサイトがあり、盗聴の危険性もあるそうだ。こちらは、トップ100万サイトの18%に影響がある。

SlashdotCloudFlare

更新

シュナイアー氏によれば、研究者らはNSAがこの攻撃法を使っていたとみているそうだ。

5/20/2015

Safariにアドレス偽装の脆弱性

SANS Diaryによると、Safariブラウザにアドレスバーに表示されるURLを偽装する脆弱性が見つかった。PoC (http://www.deusen.co.uk/items/iwhere.9500182225526788/) は完璧ではないが、フィッシング攻撃が簡単に利用されてしまうので、間違いなく修正すべきとのこと。攻撃コードは単純で、setInterval()関数で毎10ミリ秒でウェブページをロードさせるようにすればいいそうだ(URLの乱数が変わっていくのでよく分かる)。ブラウザが本物のページを取得直前、ユーザは偽物のURLの代わりに本物のURLが見えるとのこと。

Prueba3

5/19/2015

Google無しの一週間

Googleから脱却したいと思う人は少なからずいる。Google無しで一週間を過ごして、玉砕した人の話「A week withoug Google」がHacker Newsに紹介されていた。

私はGoogle製品を使わずに一週間を過ごしてみたが、ぶざまに失敗した。プライベートでも仕事でも完全にGoogleに依存していたため失敗した。いくつかの製品の切り替えコストは高く、いくつかは低い、またあるものは代替が利かない。下記のリストで、ひどかった一週間の個人的経験を説明する。

Android

選んだ代替手段: iPhone, iOS

これは簡単だったし、たくさんの人がiPhoneを使っている。

切り替えコスト: 並 (連絡先、UX)

検索

選んだ代替手段: Bing (画像検索を含む)

ライブ検索は無いが、それ以上に違いを説明することができなかった。

切り替えコスト: 低

メール

選んだ代替手段: Yahoo! Mail (もちろん、他にも選択肢はある)

新しいメールをセットアップの方法が分からないが、古いアドレスから転送することはうまく考えられている。Yahoo! Mailは悪く無いが、Gmailとは実質的には異なる。しかし、私のソーシャルアイデンティは完全に変更できた。あなたのアドレスがx@yahoo.comだと人に伝えると、リアクションはいつも、なぜ? Yahooいいの? (Yahoo!の従業員は@yahoo-inc.comを基準としているけどね)

切り替えコスト: 低、転送cheatingを考えなければ。そうだとしたら- 不可能

カレンダー

選んだ代替手段: Yahoo! Calendar

うまく動いている、実際とても美しい。私は自分のカレンダーをGoogleカレンダーを使っている人と共有している。それが問題だが、それ以上不満は無い

切り替えコスト: 低

地図

選んだ代替手段: OS Xのマップ。私はBing Mapsも試してみたが、行き先は言うまでもなく、地図で何かを検索しても出てこなかった。

AppleマップはOS Xのアプリケーションでウェブインターフェスが無いが、やめようとはしなかった。アプリケーションが基本だが、うまく機能している。私が住んでいる公共交通についての情報が無かった。

切り替えコスト: 並

ナビゲーション

選んだ代替手段: iOSのマップ

はじめ、Wazeを選択したが、それもGoogleだった。

iOSマップのナビゲーションは驚くほど良かった。ユーザエクスペリエンスはGoogleナビゲートよりいいかも知れない。私はまだWazeが好きだけど...

切り替えコスト: 低

ストリートビュー

選んだ代替手段: 無し

Googleストリートビューと同じ範囲を持ついいものはほとんど存在しない。Bing Streetsideはあるが、たとえ誰かがやってみようと計画しても、範囲の観点から競争相手が追い付くようになるには本当に長い時間が掛かるだろう。

Google Docs

選んだ代替手段: Zoho

いい代替手段があるかどうかはそれほど問題ではなく、我々のオフィス全体の書類やスプレッドシートがGoogle Docsをベースにしているからだ。移行(あるいはなんらかの方法でデータを代行する)はとてもお金が掛かる。

切り替えコスト: 失敗

チャット

選んだ代替手段: Whatsapp

私の周りの誰もがWhatsappを使っているので、米国内で暮らしているなら、おそらく問題は無い。新しいWhatsappのウェブインタフェースで、これは非常に簡単だった。

切り替えコスト: ゼロ

国際電話

選んだ代替手段: Skype

チャットだけではなく、国際電話にGoogle Hangoutを使っている。Skypeへの移行はかなり簡単だが、一つ一つのクセがある。Skypeはとても格好悪く、ロードに時間が掛かる。

切り替えコスト: 低

Google Plus

ほんの冗談...

Google Drive (docsを除く)

私は何だかんだDropboxを推す...

YouTube

選んだ代替手段: 複雑だ

YouTubeの代替手段はあるが、問題はビデオをアップロードしなかった。問題は私がもらったほとんど全てのビデオがFacebookやWhatsappではなく、YouTubeだったこと。私はこれらのビデオを見るのを我慢するしかなかった。

切り替えコスト: 不可能

ノート

私はノートや個人的なお気に入りを保存するのにGoogleを使っている。

選んだ代替手段: Evernote

私は決してEvernoteのアイデアは浮かばなかったし、なぜそんなに成功したのだろう。なぜ、簡単なタスクにパワフルなツールを必要とするのだろう。

さらに一週間後、まだ理解できなかった...

切り替えコスト: 低

ウェブサイトの分析

私は当然Google Analyticsを委ねている。仕事でかなりヘビーに使っている一つだ。

選んだ代替手段: Piwik Analytics

私がいろいろとテストしてきたことを信頼しないだろう。それに加え、Google Analyticsの代替手段は全て有料サービスだ。

切り替えコスト: 絶対試すな

Chrome

選んだ代替手段: Firefox

Safariを選択すれば、おそらくChromeの体感に近いものだろう。面白半分に、Firefoxを選択する。インタフェースを使ってみたら、ほとんど劣らないが、おそらく遅い(ベンチマークはやっていない)。

一方開発者にとっては、Chrome以外のデバッギングや開発ツールはまさに悪夢だった。

切り替えコスト: 一時利用 - 低、開発者 - 非常に高い

他の製品

他の製品は: Chromecast、Google Fit、Google Wallet、Google Music、Google Books、Google Translate、Google Financeなど。しかし、私は生活に影響がある製品を使っていないので、よく分からなかった。切り替えはとても簡単だし、努力も必要無かった。

まとめ

別の製品の検証一週間後、私は上記のどれもこれも全て元に戻してしまった。Google、私はあなた無しでは生きられない。私と結婚してくれもらえないか?

5/17/2015

VENOM - ハイプに従って行動するか?

5月13日に、XenやKVMなどの仮想プラットフォームで利用されている「QEMU」に、仮想マシンを抜け出すことが可能な脆弱性が発見された。悪用されると、同一ハイパーバイザー上に居る他の仮想マシンからアクセスされ、任意のコードを実行される恐れがあるという。SANS Diaryに次の記事が掲載されていた。

今週、あなたは身を隠していない限り、VENOMについて耳に入っただろう。私が見た最初の記事はZDNetのヘッドライン「Bigger than Heartbleed, 'Venom' security vulnerability threatens most datacenters (脆弱性「VENOM」をセキュリティ企業が新たに報告--広範な仮想プラットフォームに影響)」だった。厄介で刺激のある代物だ。VENOMは本当にその大騒ぎするに値するものだろうか?

VENOMは「Virtualized Environment Neglected Operations Manipulation」の略だ。この洒落た頭文字語は簡単に言ってしまうと、レガシーコード中にある脆弱性をエクスプロイトが悪用することを意味する。手短に言えば、脆弱性はCVE-2015-3456で、フロッピーディスクコントローラソフトウェアfdc.cの中に見つかり、いくつかの仮想製品で使われている。もっとも一般的な製品はQEMU、Xen、KVMである。脆弱性は、仮想マシン中で管理権限のアクセスを許してしまうもので、仮想マシンを抜け出し、ホスト仮想ソフトウェアの中から別のホスト仮想ソフトウェアで任意のコードを実行できる可能性を秘めている。

最悪のシナリオは、攻撃者がゲストOSを抜け出し、同じマシンの他のゲストにアクセスすることだが、私の知る限り、誰も最悪ケースの立証に成功していない。

うろたえるべきか?

今日共通に使われている仮想プラットフォームのかなりの部分に影響を与える可能性があるので、この脆弱性は重要である。しかし、うろたえる理由は無い。

  • 脆弱性はリモートで侵害することはできない。また、この脆弱性をリモートからスキャンされる可能性も無い
  • 脆弱性をエクスプロイトしようと試みる攻撃者は、仮想ゲストへの管理者レベルでのアクセスをシェルレベルで持つ必要がある
  • 脆弱性をエクスプロイトするPoC(概念実証)が存在するとはいえ、誰もエクスプロイトを実用レベルで立証していない
  • 全ての影響ある仮想プラットフォームにパッチが利用可能である

確実にHeartbleedあるいはFREAKのような重大さは無い。適切に脆弱性のあるシステムにパッチをあてる重要性はあるが、うろたえる理由は無い。

bin、sbin、usr/bin、usr/sbinが分かれている理由

今更だけど、Busyboxの開発者ロブ・ランドリーの「Understanding the bin, sbin, usr/bin , usr/sbin split」。

ケン・トンプソンやデニス・リッチーが1969年にどんな風にPDP-7へUnixを作ったか知っていますか? 1971年には彼らはストレージ用にRK05という1対のディスクパック(各々1.5MB)が付いたPDP-11にアップグレードしました。

オペレーティングシステムは最初のRK05のディスク領域(rootファイルシステム)に収めるには大きくなり過ぎたので、ユーザのホームディレクトリ全てを置いている二つ目のディスクに置くことにしました。そこの下にOSディレクトリ全て(/bin、/sbin、/lib、/tmp...)を複製し、オリジナルのディスクに空きが無いので、それらの新しいディレクトリにファイルを書きました。次に三つ目のディスクを得た時、/homeにマウントし、全てのユーザディレクトリを置き換えました。そして、OSは二つのディスクスペース全てを使えるようになり、3MBに増えました(ワーオ)。

もちろん、彼らはシステムのブート時のルールを作りました。/usrに二つ目のディスクをマウントできることを十分にアップしている必要があります。そうしなければ、/usr/binのマウントコマンドを実行できません。そうしなければ、システムを立ち上げるのに鶏と卵問題を抱えてしまいます。簡単に言ってしまうと、35年前のUnix V6にかなり特化したものということです。

/binと/usr/binの分割(とほかの全て)は、このような人為的な影響によるものと、1970年の実装が説明しています。なぜ彼らが実行したか疑問に思わないまま数十年も過ぎ去ってしまいました。Linuxが発明される前に次の理由でやめるべきでした。

  1. 初期システムの立ち上げにはinitrdやinitramfsの条件があり、「そのファイルの前にこのファイルが必要か」という問題に取り組んでいた。すでにメインシステムをブートするための一時システムを使っていた
  2. 共有ライブラリ(バークレイによって導入)は、/libや/usr/binのパーティションを独立に更新するのを防いでいる。二つのパーティションは一致の必要があり、さもないとうまく動かない。これは1974年当時、全てが静的リンクだったので、それらは一定レベルの独立性があったためだ
  3. 安価なハードディスクが1990年には100MBを超え、パーティションのリサイズソフトウェアがこのあたりのどこかで現れてきた(Partition Magic 3.0は1997年にリリースされた)。

確かに、分割が存在すると、人はそれを正当化する別のルールを作ろうとします。RootはOSを保管するもので、/usrはサイトローカルなファイルのためのものでした。それから、/がAT&Tから来た要素で、/usrはIBM AIXあるいはDec UltrixあるいはSGI Irixで加えられた要素で、/usr/localは特定のインストレーション用のファイルのためのものでした。そして、誰かが/usr/localは新しいパッケージをインストールするには不向きだと決め、/optを加えようとなりました。私は、/opt/localが現れるのをまだ待っているのですが...

確かに、30年悩まされ、この分割がいくつかのディストリビューション固有の奇妙なルール(例えば、/tmpは再起動中に消去されますが、/usr/tmpはそうはならない)を作ってきましたが、解決する動きがあります。(Ubuntuでは言うまでもなく、/usr/tmpが存在しません。しかし、Gentooでは/usr/tmpは/var/tmpにシンボリックリンクを張っているだけなので、"再起動で消去されない"というルールを持っています。そうなんです、tmpfsは以前から存在しています。読み取りのみのrootファイルシステムで実行され、この場合は/usrは常に読み取りのみになり、/varは書き込み可能なスペースに置かれます。/は、/etcの一部を除いて読み取りのみ、/etcの一部は/varに移動させ、しばしば/etcのシンボリックリンクが/var/etcになります...)

Linuxファウンデーションのような標準組織は幸いにもドキュメントを出しますが、なぜ最初にそれが行われたのかを理解しようとせずに、どちらかといえば複雑さを加えています。『ケンとデニスが、PDP-11のRK05のディスク容量がとても小さかったため、homeに相当する場所にOSを置いてしまいました』が彼らの頭にまず浮かぶべきです。

私は、busyboxのインストールが単にバイナリを置くだけだで、それらのバイナリの別バージョンはどこにあろうと消去されます。もはや事実に基づいた理由ではありません。個人的には、/bin、/sbinや/libをシステムの/usrに相当する場所にまとめてシンボリックリンクを張っています。型にはまった人たちは理解しようと、単純化...

Hacker News

5/16/2015

HTTP/2の仕様策定完了 - RFC 7540、7541

HTTP/2の仕様策定が完了し、RFC 7540として公開された。また、HPACK (Header Compression for HTTP/2)についてはRFC 7541として別に公開された。元となる最初のドラフト(draft-mbelshe-httpbis-spdy-00)が登場したのが、2012年8月4日なので、約2年10ヶ月で完成したことになる。

Hacker News

5/14/2015

JunosのJTAC Recommended

ルータ用(M, T, PTX, MX)のJunos JTAC推奨バージョン (JTAC Recommended Junos Software Version) が更新されていた。長らく12.3だったのだが、4/27付でJunos 13.3R6に更新されている。

Feature Explorer

5/10/2015

BGPでTCP-AOを使う

BGPのセキュリティを定めたRFC 7454では、BGPのセッション保護にMD5(RFC 2385)ではなくTCP-AO(RFC 5925)が推奨されている。既にCisco IOS/XE/XR、Junosでは利用できるようになっている。ピア先で使う前に、まずはIBGPの保護から始めるといいのだろう。

TCP-AOは、TCP MD5を置き換えるもので、

  • TCPオプション(Kind=29)を利用する
  • 今までのTCP MD5で接続が可能(Kind=19)
  • アルゴリズムを選択できる(HMAC-SHA-1-96、CMAC-AES-128-96)
  • TCP接続中に鍵を変えることができる(鍵IDで識別するのであらかじめ複数の鍵を設定しておいて、あるタイミングで変更するようなことが可能)
  • 長いTCP接続で問題なる再生攻撃の防御機構(シーケンス番号拡張)
  • TCPセッション毎にユニークな鍵が保証される (マスタ鍵+ISN)

鍵の設定と更新について

マニュアルを見ると、Cisco、Juniperとも鍵は更新を考えてか、キーチェーンという形で設定し、一つのキーチェーンに64までの鍵が設定できる。鍵には有効となる期間(開始と終了)と時間のズレをtolerance(許容範囲)で設定できる。鍵の送り側がアクティブ鍵の候補は下記の条件に合致するかを確認する。

  • 開始時間 <= システム時間
  • 終了時間 > システム時間
  • 鍵の候補がなければ、ログに記録し、パケットは送らない
  • 複数の候補がある場合は開始時間がもっとも最近の鍵を送る
  • アクティブ鍵でMACを計算(TCP擬似ヘッダ、TCPヘッダ、ペイロード、TCPオプション)

受信側はTCPオプションで指定された鍵を確認し、鍵が適したものかどうかは下記で決定する。

  • 開始時間 <= システム時間 - tolerance
  • 終了時間 > end time + tolerance
  • MACを計算し、受信したMACと同一ならデータグラムを受け取る

ちなみに、Junosは終了時間の指定をしない。新しい鍵の開始時間(start-time)になったら、鍵を更新するようになっている。

ルータの設定(基本)

まず簡単なTCP-AOの設定を見てみる。Cisco IOS-XRの場合、キーチェーンで鍵を設定し(BGPで利用できるアルゴリズムHMAC-MD5とHMAC-SHA1-12)、そのキーチェーンをneighbor/neighbor-groupの中で設定すればよい。

key chain bgp-auth
 key 100
  key-string clear zyxwvuts
  cryptographic-algorithm HMAC-SHA1-12
!
router bgp 65000
 neighbor-group IBGP
  remote-as 65000
  keychain bgp-key

Junosの場合もほぼ同様だ。security authentication-key-chainsでキーチェーンを設定し、bgp group authentication-key-chainでキーチェーンを設定する。

security {
   authentication-key-chains {
      key-chain bgp-auth {
         key 100 {
            algorithm hmac-sha-1;
            secret "zyxwvuts";
         }
      }
   }
}
protocols {
   bgp {
      group IBGP {
         type internal;
         neighbor 192.168.1.1;
         authentication-key-chain bgp-auth;
      }
   }
}

ルータの設定(鍵更新)

鍵を1年に一度更新する方法を設定してみる。send-lifetimeは送信鍵の有効開始時間と有効期間を、accept-lifetimeは受信鍵の有効開始時間と有効期間を指定する。有効期間は、秒、鍵が期限切れになる時間、無限(infinite)の3通りで指定できる。

key chain bgp-auth
 accept-tolerance 200
 key 1
  key-string password abcdefghij
  cryptographic-algorithm HMAC-SHA1-12
  send-lifetime 00:00:00 May 10 2015 duration 20000
  accept-lifetime 00:00:00 May 10 2015 23:00:00 May 10 2016
 key 2
  key-string password klmnopqrst
  cryptographic-algorithm HMAC-SHA1-12
  send-lifetime 9:00:00 May 10 2016 12:00:00 August 10 2016
  accept-lifetime 9:00:00 May 10 2016 infinite 

Junosは、

security {
   authentication-key-chains {
      key-chain bgp-auth {
         tolerance 200;
         key 1 {
            algorithm hmac-sha-1;
            secret "abcdeghij";
            start-time 2015-5-10.00:00:00;
         }
         key 2 {
            algorithm hmac-sha-1;
            secret "lkmnopqrst";
            start-time 2016-5-10.00:00:00;
         }
      }
   }
}

更新 20150808

Cisco IOS、IOS-XR、IOS-XE、NX-OSではTCP-AOはサポートされていない

宇宙はまだホログラムとはいえない

The Universe is Still Not a Hologram (宇宙はまだホログラムとはいえない)」という超訳。

再び、宇宙がホログラムだと主張する時期がやってきた。言っておくが、宇宙がホログラムだという観測の証拠は無いし、刺激的な見出しの原動となった最新の研究でも存在するとは主張していない。しかし、議論する価値を持つホログラフィック原理に関する興味深い理論研究がある。

ホログラフィック原理は、ある空間領域にある情報量がその領域の表面積にある情報によって決まるという根拠を示している。例えば、スタートからゴールまでび10マイルの長さの道路を想像してみてほしい。この道路の制限速度を60mphと仮定し、車がスピード違反をしたかどうかを確認したいとする。一つの方法は、道路全長で車を観察し、その間のスピードを計測する。しかし、別の方法は車がスタートとゴールを横切った時を単純に計測する。60mphのスピードで、車は1分で1マイル移動する。だから、スタートとゴールの間の時間は10分に満たない。私は車がスピード違反をしていないと分かる。数学的には、空間は空間表面のホログラムとして表現できる。残念ながら、真実からかけ離れているわけではないが、ホログラムという用語はバーチャルリアリティのイメージや我々はマトリックスの中に生きているという考えを思い起こさせる。

理論的手段として、囲まれた体積より境界で計算する方が簡単なため、ホログラフィック原理が利用される。もっとも一般的な原理の利用の一つはひも理論で、AdS/CFT対応として知られ、一般相対性理論の幾何学の素粒子物理ひも理論のひもを理解するためにホログラフィック原理が使われる。AdSは非平坦モデルの宇宙の反ド・ジッター空間を表す。我々は宇宙が非常に平坦だと観測に基づいて理解しているので、反ド・ジッター空間は物理宇宙のモデルとして使われない。

平坦宇宙モデルの類似したホログラフィック対応があったなら素晴らしいが、証明が難しい。今、少なとくもある特定の場合において、ホログラフィック原理が平坦空間モデルに適用できるという新しい論文が登場した。研究チームは、エンタングルメントとして知られる量子理論の側面を調査した。電子のような2つのオブジェクトがもつれあっている場合、単一エンティティとして量子理論で説明できる。エンタグルメントは量子理論のいくつかの奇妙な側面の一つで、実験的には立証されているが、宇宙についての奇妙な予測も導く。研究チームが発見したのは、エントロピーを扱う特定のエンタグルメント特性の標準的な量子理論の計算は、ホログラフィック型の場合と同じ結果になる。言い換えると、標準型とホログラフィック型は数学的には同等である。彼らはモデル宇宙の中でのこれらの計算は平坦で、ホログラフィック原理が平坦空間でも成り立つことを示している。

これが一般的証明でなく、ホログラフィック原理が我々がいる平坦宇宙で成り立つことを示していないなら、それが量子システムというだけなのかもしれない。誰もがAdS/CFT対応の平坦空間バージョンが確かにある断定する前にやるべき研究がたくさんある。そして、その場合にも宇宙がホログラムであるということを意味しているわけではない。

5/09/2015

NASAのソフトウェアエンジニア、マーガレット・ハミルトンさん

マーガレット・ハミルトンさん。アポロ計画のソフトウェアエンジニアで、有人月面着陸船の制御プログラムを書いた人だ。彼女がいなければこの計画は成功しなかったとも言われるが、恥ずかしながら彼女のことを知らなかった。アポロ誘導コンピュータはBlock IIというもので、32KB ROMと4KB RAMしか搭載していなかった。そして、彼女が書いたプログラムコードを印刷して積み上げると本人の身長に達した。

BoingBoingMedium

Margaret Hamilton

更新(2016.11.24)

マーガレット・ハミルトンさんは大統領自由勲章を受賞(The Verge)。

5/08/2015

OS X YosemiteやiOS 8のネットワーク問題の原因は「discoveryd」

OS X Yosemite(10.10)やiOS 8になって、WiFiが繋がらない・不安になったとか、ホスト名に数字が付く・増える等、ネットワーク絡みの問題が報告されている。以前から指摘されていたが、これらの問題の原因は「discoveryd」とのことだ(iMore)。これまで使われてきたmDNSResponderを、Yosemiteで"discoveryd"に置き換えたのだが、この動作が不安定で悪さをしているらしい。

更新 20150527

本日リリースされた10.10.4のbetaで、discoverydが廃止され、mDNSResponderが復活したそうだ(9to5mac)。

5/07/2015

Appleのウェブクローラ「Applebot」

Appleが公式に「Applebot」というウェブクローラを認め。Appleは、SiriとSpotlightのために利用されているウェブクローラで、robots.txtやrobots metaタグのルールに従い、Googlebotの指定があっても、その指示に従うとのこと。Applebotの存在は、昨年11月にJan Moesen氏が報告しており、その時のクローラは「Go」で書かれていたらしい。ジョン・グルーバー氏によると、自身のブログ「Daring Fireball」には2月からApplebotが観測されているとのこと。

Googleに対抗して検索サービスを計画しているかは明らかではないが、Search Engine Landによれば「Appleは社内の検索グループを急速に拡大している」という。検索が、Appleのターゲットになっていることは間違いないだろう。

5/06/2015

Amazon/Apple/Facebook/Google、誰が勝ち組で誰が負け組か?

今年始めのDLD 15カンファレンスで、スコット・ギャロウェイ氏がデジタル世界の代表的な独占企業、Amazon、Apple、Facebook、Googleの中で (この4社の時価総額は韓国のGDPより大きい)、誰が勝ち組で誰が負け組か、今後の予測を講演した(Youtube)。興味深い。

Amazon (負け組)

eコマースであれブリック・アンド・モルタル企業であれ、ネットの存在なしに小売業を専業にしている会社は姿を消す。従って、Fab.com、GlitやNet-a-portのような企業は時代に遅れになってしまう。真の革新者は店舗をオープンしているeコマース企業「レント・ザ・ランウェイ」や「ワービーパーカー」で、eコマースやオムニチャネル経営を拡大している伝統的な百貨店だ。Amazonは過去10年の間もっとも革新的な企業との評判だが、株主の視点では過去5年間メイシーズがAmazonを超えている。

そして、Amazonは過去1年間、全ての主要小売業社の中で最も低い成長である。

Amazonの失速の原因となっている弱点は配送コストだ。昨年の実績では配送料金に31億ドル受け取り、66億ドル費やした。私はAmazonが今後12ヶ月以内にブリック・アンド・モルタル企業を買収すると考える。買収候補: RadioShack、米郵便公社、ガソリンスタンドチェーン

Facebook (勝ち組)

友人関係の性質を変えたこの企業は、マーケティング史上最大の「おとり商法」を成功させた企業でもある。Facebookコミュニティを作ることに投資するための説得力のあるブランド化の後、アクセスに課金を開始した。Facebookのオーガニックリーチは6%で、実質的にお金を使わないアクセスが無いブランドを意味する。Facebookは過去10年間、最高のテック企業2社、インスタグラムとWhatsappを買収している。インスタグラムは、WeChatを除き他のソーシャルプラットフォームよりも成長が速い。

Facebookは人気が下落していると言う報道はナンセンスだ。まだ全ての世代の人が最も長く過ごしているプラットフォームである。その上、Facebookは彼らの身元情報でユーザを追跡する能力を持っており、それはGoogleだけがGmailやGoogle+を通じてできている。

Google (負け組)

Googleは検索では独占企業だが、他のブランドはGoogleのシェアでは小さい。商品検索の2/3、特に高価な商品の検索は、Amazonで発生しいる。そして、Facebookでは1日で10億検索なのに対し、Googleは30億。その上、モバイルの世界はGoogleにとって部が悪く、結果的にクリック単価が下がっており、収入が減速している。ビデオ投稿のシェアも落ちている(Facebookが伸びている)。

Googleの失敗: GoogleグラスとGoogle+

Apple (勝ち組)

Appleは高級ブランドの柱、職人技、象徴的な創業者、並外れたプライスポイント、流通の垂直制御、世界レベルで誰もが知っている、自己表現的ベネフィットを持つ製品を持っている。元バーバリーやYSLのCEOだったアンジェラ・アーレンドツやポール・ドヌーヴの助けで、世界での巨大な高級ブランドになる方法をつかんだ。赤がiOS、緑がAndroid、紫が恐竜・Blackberryと表現されたニューヨークの携帯のヒートマップが証拠になる。iOSが大量にあることを示している。

AppleはApple Watchで高級品への移行を完了し、2015年には他の腕時計会社よりも多く販売すると予想される。

私はAppleが高級ブランドへの移行成功に引き続き、初の時価総額1兆ドル企業になると確信する。

OpenBSDルータ

Soekris net6501というハードウェアとOpenBSDを使ったルータの作り方が解説されている。lan1841を使えばGbEを4ポート追加できるが、PCI-Expressの無線LANカードを増設したいところだ。

ネタ元のHacker Newsを見ると、PC EnginesのAPUボードはSoekrisより安価、DIYではないが、Ubiquiti NetworksのEdgeRouterは安価で高性能とのこと。

5/05/2015

タッチ・ピアニスト

素晴らしい!!タッチ・ピアニスト」はピアノを弾けなくても、キーやスクリーンを叩くだけで、ピアノを演奏しているような気分が味わえる。ウェブ版は下記の作品が用意されている。iOSアプリも用意されている(MIDI出力可能)。

  • ベートーヴェン
    • ピアノソナタ第8番「悲愴」
    • ピアノソナタ第14番「月光」
    • ピアノソナタ第21番「ワルトシュタイン」
    • ピアノソナタ第23番「熱情」
  • ショパン
    • バラード第23番
    • 練習曲作品10 第4番、第12番「革命」
    • マズルカ作品33 第4番
    • ノークターン作品9 第2番、作品20
    • 英雄ポロネーズ
    • 前奏曲作品28 第4番
    • ワルツ作品64 第2番、作品69 第2番
    • ピアノソナタ第2番
  • サティ
    • ジムノペディ第1、2、3番
    • グノシエンヌ第4、5、6番
  • ドビッシー
    • 月の光 (ベルガマスク組曲)
    • アラベスク第1番
    • 夢想
  • バッハ
    • G線上のアリア
    • トッカータとフーガ ニ短調
    • 平均律クラヴィア曲集第1巻 第1番
    • パルティータ 第2番
  • モーツァルト
    • キラキラ星変奏曲
    • トルコ行進曲
    • ピアノソナタ第16番 第一楽章
  • ブラームス
    • ワルツ 第3番、第7番、第9番、第11番、第15番
    • ハンガリー舞曲 第5番
  • ラフマニノフ
    • 前奏曲 作品3第2番、作品23第5番
    • 練習曲 作品39第6番

Hacker News

Appleを救う101の方法 (1997)

1997年、経営危機に陥ったAppleに、WIREDが「Appleを救う101の方法」という特集記事を6月号に掲載している。それを超訳してみた。おふざけな部分もあるが、Appleが採用したのではないかと思うほど的確な助言(1, 4, 7, 10, 14, 15, 19, 30, 34, 37, 39, 44, 50, 59, 98)もある。また、101の心配は当たった。

Hacker News

  1. 負けを認めろ。ハードウェア開発から手を引け。ハードウェアの生産をアウトソースするか、全てを解体しろ。コンピュータ製造の負担が無いMicrosoftともっと正面から立ち向かえ。
  2. 考えられる限りのデバイスに向け(洗濯機から電話機やWebTVまで)、GUIを作る製造業者にAppleのブランド名と技術をライセンスしろ。全てで利用できる同じ通信プロトコルを持て。結果、スマートデバイス/ホームの市場を独占できる。
  3. 独立系ソフトウェア会社(ISV)を満足させることから始めろ。未来はユーザフレンドリで強力なソフトウェアに依存している。そのISVは自信を失い、ウィンテルのマーケットシェアに便乗するダークサイドに行ってしまったのだ。OS/2で起きたこと(不十分なアプリケーション、アップデートが遅れ、不十分なサポート)を思い出せ。IBMは全ての利益を投じたが、防げなかったではないか。
  4. ギル・アメリオはリー・アイアコッカの本から学ぶべきだ。- 給与無しで1年働き、従業員を元気付けろ。
  5. 命名規則をやめろ。プロセッサの速度にモデル番号をリンクさせるな。3400ラップトップコンピュータを買ったら、なんだ、それこそ、うまくいくのか? カタログを調べても、競合製品を比較する方法が分からない。他方、ウィンテルはプロセッサ速度を明示するだけだ。Pentium 200Mhzのコンピュータと言えばいい。
  6. 謝罪しろ。多くの熱心なユーザを裏切り、Macintoshプラットフォームの約束を果たせなかった。
  7. 小売店から撤退しないこと。コンピュータ店からスペースを借りて、Apple製品(特にソフトウェア)であふれさせろ。Appleの販売員を配置して、会社が生きていることを全ての人に見せるのです。はるか昔ではなく、ほこりをかぶった考えだ。
  8. 歌を買え。去年なら、アレサ・フランクリンの「Respect」だった。今年は、「Ain't too Proud to Beg」かな。
  9. 製品需要を予測した人間をクビにしろ。1996年、PowerBook1400のバック・オーダーが100万ドル分あったのに対し、倉庫には売れ残りのPerformaでいっぱいだった。
  10. 大規模なイメージキャンペーンを実施しろ。ブランド戦略(あるいは再ブランド戦略)を始めよう。1984のコマーシャルを1997のアクセントで再現するのもいいだろう。
  11. 四六時中、多彩なごますりを守ろうとする代わりに、将来に目を向けよう。競合の商慣行の悪い特徴を身につけることで古臭くなってしまう。
  12. 広告代理店の尻を叩け。皆はMacファミリーについて、ほのぼのとしたファジーなインフォマーシャルなど必要としていない。Todd RundgrenのPowerBookに何が入っているかなんて、誰も気にしない。
  13. いつか黒い画面にCプロンプトが光っている状態に陥るといったウィンテルユーザが密かに恐れていることにつけ込め。Macユーザであれば、決してautoexec.batやsys.iniファイルを書き直す必要がないという事実を宣伝しろ。
  14. 箱のデザインをもっとクリエイティブにして、他との差別化を図れ。オリジナルのMacは、その革新的な外観ゆえに目立ったのだ。繰り返す。ポルシェ、ジョルジェット・ジウジアーロやフィリップ・スタルクにコンピュータのデザインを任せろ。ヒョウ柄のタワーが手に入るなら、Power Mac 9600に大金をはたいてもいいと思うだろう。
  15. Newton、eMate、デジタルカメラ、スキャナを全部やめること(あるいはアウトソース)。
  16. 顧客のもっと大切にしろ。あなたは皆を必要としている。カスタマーサービスに誇りを持て。多くのMacユーザは疎遠に感じているし、逃げ出した人もいる。
  17. ビジネスコミュニティが関心を持っている優れたアプリケーションを作れ。
  18. 型にはまった会社になるのをやめて、Macの存在をまだ感じている熱狂的な人に訴求しよう。Power Computing社の「I'll give up my Mac when they pry it from my stiff, dying fingers」キャンペーンは正しい注意を非難している。テック世界では、それはまだ聖戦だ。Macコミュニティを支援しろ、そうすればMacコミュニティはあなたを支援するだろう。
  19. ケーブルを取り除け。ワイヤレスに向かうのだ。
  20. 最先端のネットワークコンピュータを作って、プッシュ型メディアに近づき活用しろ。例えば、Nintendo 64をサポートするビデオゲーム、QuickDraw 3Dのような最高のグラフィックス、実現しうる最高の通信速度とか。
  21. PowerPCメーカーのIBMあるいはモトローラに身売りしろ。モトローラが欲っしているコンピューター部門か、IBM内なら代替になるだろう。これで、大量のPowerPCデバイスを扱え、他のPowerPC製品を利活用できる。
  22. 新しい子供向けコンピュータを作れ。明るく丈夫な色をもち、ステッカーやシールは貼れて、自分の物だと呼べるようなウィンテルマシンと互換性があってアップグレード可能なもの。このコンピュータには二つのキラーアプリを搭載する: 教師向けには自動宿題採点ソフト、子供向けにはワイヤレスでノートをやりとりできるソフト。価格はアップグレード前で350ドルくらい。
  23. ロゴを新しくしろ。カラフルなAppleのロゴはもう80年代で飽きられたし、今では時代遅れだ。帽子やTシャツに新しいロゴをつけ、アンドレ・アガシやニコラス・ケイジ、アシュレイ・ジャッドに着てもらって宣伝しろ。
  24. マンガ家のスコット・アダムズに1000万ドル払って、ディルバートがPerformaの女性修理技師に恋するように描いてもらう。
  25. ポータブル、ポータブル、ポータブル。ポータブルのカテゴリの中で、ウィンテルの最善の組み合わせを選択して、更に良いものをにしろ。ウィンテルは素晴らしく多種多様な製品を持っている。
  26. 売り込んだものはちゃんとつくること。注文に応じられないなら、新製品を発表するな。それでなくとも少なくなっている顧客の怒りを買っているのに。
  27. とにかく安く作るためにバンガローに会社を移転しろ。
  28. ユーモアのセンスを失うな。巨大な救命具を作って、クパチーノの本社前に飾ってみろ。
  29. ヒューレット・パッカードと緊密に仕事をしろ。カシオでもいいし、省電力技術を持つ企業でもいい。PowerBookのバッテリーが60分以上もったことが今まであっただろうか?
  30. さかのぼって、求めろ。ターゲットを絞ったAppleローンプログラムで、大学生のハートや財布を手に入れろ。
  31. 次のいずれかの機能を搭載する250ドル以下のPDAを開発しろ。a)無線Eメール、b)56チャンネルが見られるテレビ、c)インターネット電話
  32. ギル・アメリオへの忠告: 話は短く、ズボンは細めに。
  33. 本当に変革が進んでいることを伝えるためにマーケティングと広告の視覚的表現を変更しろ。Appleの具体的な成長に集中しろ(経営と広告表現)。再生への道に沿って目標を大胆に設定し、そこに到達することが、今まで達成されない約束に集中することしかできなかったマーケティングメッセージを進化させる唯一の方法である。
  34. ハードウェア、ソフトウェア、トレーニング、実績で巨大な出資額を持つインテルプラットフォームにOSを移植しろ。無視しないで取り込んでしまうのだ。オペレーティングシステムはインストールの数に依存する。それが今の最大の障害である。WindowsとMac OSの間で機能比較や付き合わせて比較する場合ではない。
  35. PowerBookでMkLinuxやBeOSを動作するようにしろ。
  36. PowerBookのクローンを作らせろ。お粗末な5300がボロボロになったら、多くのAppleの顧客はウィンテルのラップトップに頼らざるをえなくなる。他に選択肢がなかった。もし、クローンが手に入るなら、ユーザはMacファミリーにとどまろうとするだろう。
  37. Macの新世代のソフトウェア開発者を引きつけるために、NeXTの簡単でパワフルなOpenStepプログラミングツールをうまく利用しろ。
  38. Appleとウィンテルの両方で、ISVがアプリケーションを開発にするのを容易にしろ。デスクトップがダメなら、サーバで確実にできるようにしろ。これらの改革がなければ、インストールされた基盤を維持することだけが頼みの綱になってしまう。
  39. 2ポンド(0.9kg)以下のラップトップを作れ。
  40. Appleは、単純さと純粋さを再発見と複雑さを拒絶するという基本原則に立ち返ったという広告キャンペーンで千年紀の興奮を利用しろ。
  41. 最先端のマルチメディア提供者の新しいベンチャー投資を手配しろ。これは目立ち、大衆が興味を持ってくれる分野だ。
  42. テレソンを企画しろ。ジェリー・ルイスにMacの新製品をうるんで見つめてもらう。
  43. openDVDコンソーシアムに専念し続け、デジタル汎用ディスク技術の実用化の問題に取り組む。あなたはいつもエンターテインメントとハイテク業界の橋渡し役だった。その立場を守り続けなさい。
  44. 音声認識の研究を続けなさい。ビデオ会議とリモートアクセスで競争し続けるにはこの方法しかない。
  45. Mac OSのライセンス料を値上げしない。クローンはMac OSのシェアを安定化させた上に増大させた。これはソフトウェア開発会社にとっても歓迎すべきことだ。
  46. Mac20周年を記念したスパルタカスのような軽薄な行動で時間を浪費しないこと。少なくともいまのところは、自己陶酔はあきらめろ。
  47. 普及モデルを真にアップグレード可能にする方法を編み出せ。顧客に的確で、操作しやすいアップグレードパスを提供することで、顧客を引き止め、つなぎとめることができる。人々はアップグレードや拡張を必要としているし、Appleが方針を変えるたびに、彼らはいつも行き詰まりを感じていた。IIvxをPower Macにアップグレードすることは論理的には可能だ。しかし、とても多くのハードウェアやソフトウェアの問題がある。その技能は麻薬常習の連続殺人犯に陥らせるのに十分なほどだ。
  48. ベン&ジェリーで、Appleな名前にちなんだ味わいのある名前をつけてもらう。提案: アップル・シリコン・チップ・サプリーム
  49. アンディ・ハーツフィールドや他のオリジナルMacの家族を連れ戻す。そもそも開発者にとって単純さとデザインの素晴らしさ、そしてMac唯一にしているもの、フロッピーの自動マウント、ハードウェアの自動設定、ファイルの直接操作、スペースやスリードッツ拡張子が不要な自由形式のファイル名、アプリケーションが変わってもユーザインタフェースが変わらないなどが、Macの魅力であったことを経営陣に説明してもらうのだ。
  50. スティーブ・ジョブズに新しい製品開発に大きな権限を与える。ギル・アメリオには経営に専念してもらう。トップには刺激がないし、Appleの顧客はコンピュータ革命に参加したいと感じている。もし、ジョブズが失敗しても、ドンパチしてくれるだろうから、我々はアメリオが我々に課している水責めのような避けられるだろう。
  51. 顧客に話し掛けろ。マスコミではなく、競合先でもなく、Macとともに成長してきた人々である。
  52. スティーブ・ジョブズがあごひげをもう一度伸ばすよう求めることで、昔の勢いの良かった時代に戻れ。
  53. ヨーロッパに戦略を再考しろ。PC市場の占有率は米国よりも低いし、教育を受けた人々やハイテクに興味を持つ人が多い。ここにはないチャンスがあるはずだ。
  54. レーザプリンタビジネスを売却しろ。HPとレックスマークの間でオークションを行え、日本メーカにも参加させろ。既にプリンタビジネスで利益を得ている、あるいは関連する製品を作っている会社に売却しろ。そうすれば、買い手はマーケットシェアを増やすことができる。
  55. プリンタビジネスを買い取る会社とAppleの商標のついたプリンタを製造する契約を結び、既存の販売ルートにのせるのだ。プリンタの製造資産の売却は、単発のキャッシュの注入になるし、バランスシート上の損失を小さくできる。そして、プリンタや関連する消耗品で流通マージンも稼げるだろう。
  56. スケジュールにこだわれ。待ち望まれていたコープランドをキャンセルしたあとでは、OSの期限を一度たりとも破る余裕は無い。
  57. ジョン・スカリーを呼び戻せ。彼は身代わりにうってつけだ。
  58. ソフトウェア会社が来るラプソディプラットフォーム向けの開発を呼び込むために奨励金を出せ。銀行にはお金があるので、利用しろ。
  59. ニュートンの技術に重点を置いた投資を行え。Microsoftが手を出せ無い分野の一つだ。ニュートンで音声認識や素晴らしいジェスチャー認識を作れば、デスクトップ、ラップトップやパームトップMacの新しい環境になる。ニュートンは、レジからキオスクまで、組み込みシステムの新しい世代の基礎にもなる。
  60. 獲得したMach OSを捨てろ。そして、代わりにWindows NTを採用しろ。これは、既存のPCプログラムをMac上で動かすことができる(実際、MicrosoftはMacのハードウェアで動くWindows NTを持っていた。Power PCとx86の両方で動作するNTでMacのプログラムを実行できるエミュレーションもあった)。
  61. シャキール・オニールとプロモーション/開発英訳を結べ。「シャッキントッシュ」というモデルを発表
  62. クラッシュしないコンピューターを作れ。
  63. Mac OSでJavaを動くようにしろ。そして、Sunと提携してエンタープライズコンピューティング戦略を開拓しろ。Javaは特効薬ではないが、JavaのサポートはMacの利用者にとっても嬉しいだろうし、よそのコンピュータに目が向いてしまうのを防げる。
  64. とてもコンピュータビジネスに踏み入れたいと考えているソニーと提携しろ。「Sony MacMac」を考えろ。
  65. いかしたレトロマシンとしてMac Plusを再び売り出せ。最先端のPCを使うことが、クールではなくなる。
  66. 究極のイントラネット/インターネット開発環境としてNeXTのWebObjectを売り込むため、一流のシステムインテグレータを獲得しろ。あなたはデスクトップパブリッシングを懸念に感じている。Webもそうなると考えているのか? いずれにしろ、新しいツールのこの分野に入る余地はたっぷりある。
  67. DTPの隙間市場に注力を強化しろ。プリンタとエレクトロニック両方そして、あらゆる面で支配しろ。
  68. いくら掛かってもAppleフェローを雇っておけ。ドン・ノーマンやアラン・ケイが離れた今、Big Think部門は深刻な危機にある。
  69. 社名を「Snapple」に変更しろ。クエーカーオーツが騙されてAppleを買収するかも。
  70. PC製造ラインを単純化しろ。マザーボードを減らせ、そしてはっきりとわかるようモデルの数も減らせ。
  71. グラフィックデザイン会社になれ。そして、Sunやシリコングラフィックスのようにニッ(自分の得意)チ分野で支配的になれ。
  72. 業界標準のポートを採用しろ。RS-422が最後の手段だ。
  73. 社名をパパイヤに変更しろ。南太平洋市場に強力なキャンペーンを始めろ。
  74. 経営陣を団結させろ。人を追い出したり、彼らが去るのを許していると、残った従業員の元気をなくさせる。
  75. 速度を売り物にしろ。優位な点をプッシュしろ。今年の夏、450と533Mhzのプロセッサを使ったMacを発売する。インテルに対する優位は注目に値する。これを誇示しろ。年末に向けて、OSがシフトすれば、PowerPCは素晴らしいパワーを発揮する(OSはプロセッサにとって大きな妨げである)。インテルはCPUのスピードを永遠に宣伝するだろう。AppleのCPUがより速いということをはっきりさせろ。
  76. Rhapsodyがインテルチップで動くようにしろ。Rhapsodyのインテルバージョン向けにWindows NTエミュレータを作れ。
  77. 「サイバーカフェ」のアイデアを捨てろ。なんてこった。何を考えているやら。
  78. クラリスを手放せ。そうすれば、本当にダメージを与えるだろう。
  79. K-12の教育市場での優位性を利用しろ。それは未来だ。ほとんどの生徒はマルチメディアツールとしてコンピュータを利用するし、典型的なビジネスユーザに比べれば技術的な専門知識はとても洗練されている。
  80. 何としても顧客のロイヤルティを維持しろ。無料のアップグレードや株のようなインセンティブを利用しろ。策略か? 確かに。しかし、絆を作るのを助けるし、従順に付いてくるだろう。
  81. セガと合併して、ゲーム会社になれ。
  82. 20周年記念Macintoshのような圧倒的なデザインのApple初のWindows専用機をずうずうしいくらいの名前で売り出せ(The Big Appleのような)。他のWindows PCメーカが逃げるのを見せつけ、あたかも彼らがAppleの市場参入に恐れをなしていたと、とてつもなく大きな広告キャンペーンを発表しろ。
  83. Macの上でしか動作しない専用プログラムを開発しろ。そして多いに宣伝しろ。
  84. 従業員、顧客や開発者に戦略を効果的に伝達しろ。人々はこれから何が起こるのか強い説明を求めている。
  85. Mac毎にプラットフォーム固有の筐体を作るのをやめろ。デスクトップに一つのケースとラップトップの筐体を1種類作れ。ケース、筐体そして、関連部品はシステムソフトウェアと同じようにアップグレード可能な必要がある。
  86. 大規模なベイク・セールを催せ。ガールスカウトもクッキーを売っているだぜ。
  87. 販売できる値段をつけろ。初心者に低価格でMacを手に入れられることを示し、習熟の度合いが上がるのと同じようにパワーカーブを上昇させろ。今の価格では新しい書いては近づけない。
  88. 反復性のストレス障害を持つ人々がいることを認識しろ。なぜ、忠実な顧客が分割キーボードを手にいれるのにサードパーティ製を買わなければならないのか?
  89. Macの薄灰色プラスチックをクリーニングにする洗剤を作れ。1年で汚くなるので、普通の方法ではきれいにならないし、むしろマシンを腐食させてしまうように思える。
  90. カプチーノメーカを内蔵した、「ラ・ドルチェ・ビタ」というデスクトップモデルをデザインしろ。(なんでもいいけど、ワシントンのもうひとつの素晴らしいホモジナイザー、スターバックスだけはやめて)
  91. めちゃくちゃすごい技術を創造するため、ジョブズあるいは別の情熱的でクリエイティブなデザイナが率いる新しい特別なプロジェクトグループを作れ。今度こそ、既存のMacで使えるテクノロジーに集中しろ。そして、仲間に入って飛び抜けて素晴らしい開発者かどうかを確かめろ。
  92. 新しいMacには、Appleの系譜や将来の計画を説明するCD-ROMを同梱しろ。
  93. スクリプトやコードが書かずにプログラムする方法を開発しろ。
  94. ウィンテルとAppleの違いを主張しろ。クロスプラットフォームというのはインテルPCでApple OSが動くことで、Windowsに組み込むことではない。MacをWindowsに似せたり、すべての技術をクロスプラットフォームにすることは店じまいするようなものだ。ウィンテルのデータを扱えるようにして、必要なアプリケーションウィンテルでエミュレートできるようにMacの性能を拡張・改善しろ。
  95. 反撃しろ。悲観的な報道に応える広告で立ち向かえ。特にAppleのPC市場シェアが落ちているというレポートには異議を唱えろ。これが事実とはいえ、全体のMac OSの売り上げは増えている。
  96. オラクルと提携しろ。Appleのユーザフレンドリーな機能を持つバックエンドデータベースの技術を使え。
  97. ピクサーに「3001年宇宙の旅」を作らせろ。HALをMacで置き換えろ。
  98. 証言を集めろ。Macを買ったあるいはスイッチした状況での実生活でトラブルを解決した人々を主役にしたコマーシャルを作れ。
  99. 非営利の研究組織と再編しろ。コンピュータを購入する代わりに、顧客は会費を払う。ちょうど米国地理学会と同じようなやり方だ。会員は特典の一部として、Appleのコンピュータを受け取る。会費は課税対象外となる。Appleの(結果として生じる)収益も非課税になり、会社(法人)はMicrosoftを用心させる聖戦を継続できる。
  100. ピクサーとのつながり(したがって、ディズニーとも)をベースにしたもうひとつのグラフィックス/ビデオ製品を作れ。スティーブ・ジョブズやマイケル・アイズナーはそれを決めてくれるだろう。
  101. 心配しなくていい。君たちは生き残れる。私たちが本当に心配しているのはNetscapeだ。

5/04/2015

iOS開発を学ぶには、SwiftあるいはObjective-C?

これからiOSの開発を始めようとする場合、SwiftがいいのかObjective-Cがいいのか、多くの議論がなされてきている。簡単に言ってしまうと、日曜プログラマならSwift、プログラミングを仕事にしたいならObjective-Cになる。

意欲のあるiOS開発者にとって、Appleの新しいプログラミング言語のSwiftか、30年以上の長きに渡って使われているObjective-Cか、どちらがいいのかネット上で多くの議論がある。

Googleで検索しただけでは、選択すべき方向を間違えてしまう可能性がある。

この疑問への間違った回答は、二つとも学べだ。異なるシンタックスを持つ二つのプログラミングを同時に学ぶのはとても難しい。圧倒されてしまうと感じるだろうし、多分すぐにでもタオルを投げてしまうだろう。我々はそれは望んでいない、さあどうする?

真実は、あなたが目標を自覚しているなら、正しい答えはとても単純だ。

まず、答えはこうだ。

あなたは最終的に最初のiOSアプリを開発・公表したいのか? それともiOS開発者としてキャリアを作りたい(職を得たい)のかだ?

あなたは最終的に最初のiOSアプリを作りたい場合

それなら、もちろんSwiftに取り組んでほしい。

なぜか?

  • Objective-Cよりもはるかに美しい = あなたは学ぶのがとても楽しくなるだろう
  • Objective-Cよりも冗長ではない = あなたは同じ結果を得るのに少ないコードを書ける
  • 既に良質のチュートリアルや参考書(Apple自身も含む)が多くあり、もはや使われていない古いSDKを使っている古いチュートリアルはほとんどない

iOS開発者として職を得たい場合

それなら、もちろんObjective-Cに取り組んでほしい。

なぜか?

  • スタートアップ(既にアプリを持つ)はまだObjective-Cのコードベースを持っており、チームに加わりたいと思うなら、多くのObj-Cコードを通じて理解やナビゲートする必要がある
  • ほとんどの新しいスタートアップは新しすぎてバグが多いため、Swiftを使うことに気が進まないでいる
  • たとえ、彼らがSwiftでアプリを作ることについて考えているとしても、Objective-Cの基本的理解を持つ開発者をまだ探している

もし、両方望んでいるとしたら?

ええと、当然経験ゼロのiOS開発者として仕事を得ることはできない。その場合、Swiftで最初のアプリをまだ作ろうとするなら、そしてそれを理解し、Objective-Cに手をつけ始め、二つの言語の間で並行して引き寄せよう。

まとめ

Swiftは美しい言語で、きれいなコードを書かせ、楽しくさせる。他方、変わったシンタックスを持つ"古い"Objective-Cは、まだ多くで使われ、業界の中で求められている。なんでもいいので選択するなら、Objective-Cに出くわすだろう。Appleのコアライブラリ、外部ライブラリ関係なく、プロジェクトの中に加えられる。しかし、あなたの目的が定まっているなら、一つ言語を選んで、コーディングすることで実際に学び始めることができる。正しい決断をすれば、すぐに理解できるだろう。

そして、最後に思い出してほしい。すべては第一段階で決まるのだ。そして、決断を下して、アプリを作ろう!

Hacker News

更新

未来はSwiftを支持する10の理由

  1. Swiftは読みやすい
  2. Swiftはメンテナンスが楽
  3. Swiftは安全
  4. Swiftはメモリ管理が一つにまとめられている
  5. Swiftは少ないコードで済む
  6. Swiftは速い
  7. オープンソースプロジェクトで名前の衝突がおきにくい
  8. Swiftはダイナミックライブラリをサポートする
  9. SwiftのPlaygroundsは対話的コーディングを後押しする
  10. Swiftは将来を左右する

5/02/2015

テスラモーターズ、家庭用バッテリーに参入

テスラモーターズが家庭用のバッテリー「Powerwall」を発表、米では今夏から発売で、既に予約を受け付けている。来年初めに日本でも発売するとのことだ。バッテリーは縦130センチ、横86センチ、厚さが18センチで、壁に取り付け可能。10kWhのタイプが3500ドル(約42万円)、7kWhが3000ドル(約36万円)となっており、従来の製品より大幅に安い。供給電力は連続で2kW、ピークで3kW、バッテリーは10年保証、バッテリーは9つまで並列に接続して使用できるので、最大容量63kWh-90kWhとなる(普通の家庭なら1台で十分)。利用法としては、夜間の安い時間帯に電力を貯めて、日中利用という方法かな。

Slashdot

5/01/2015

有名絵画のモデル

ハンガリーの写真家・グラフィックデザイナー、フローラ・ボルシ氏、モディリアーニやピカソなど有名絵画の現実のモデル「The Real Life Models」と題する作品を発表している(よく似たモデルをデジタル加工したのだろう)。

Boing Boing

155ca89e963fd5bbf7d6b69d1f53a896