[A.I.] プレ・シンギュラリティ - インターコネクトと磁界結合

台風15号の過ぎ去った中、帰宅。毎度のことながらお疲れモードだけど、こめちゃんがかわいい、見てみてと。こめちゃんとは小めだかのこと。体長2-3mmの稚魚。我が家の第二世代。稚魚用に水槽を増設、二つに増えている。あと10年で、6リットルに73億人の脳が収まる:PEZY Computing齊藤元章が描く「プレ・シンギュラリティ」の衝撃 #wiredai ≪ WIRED.jpネタ。

最早、最近の記事はほとんどSF。もっともらしい話なので、ついその気になってみたいな世界だね。インターコネクトというシステム構想が興味深い。並列とは相反するのであろうところがおもしろい。ストリーム間で相互作用しつつ、計算が進んでいくみたいな感じかな。脳内のネットワークはけっして並列処理ではないのではという発想から出ているのだろう。イメージだけで勝手な妄想だが。

[Android] Android Studioを使う

昨日は昼からみんなで広島駅で会食した後、見送り。一昨日、宮島口「他人吉」の会食時に思いがけぬ思いつきで盛り上がって、Java 8の学習だけでは不足と、ジュンク堂でAndroidプログラミング本を物色。

../images/2015/08/P_20150811_130459m.jpgAndroidプログラミングバイブル SDK 5/4 対応

この本は、2015年2月10日初版第一刷発行なのだが、今の時代においては最早少し古くなっている。新鮮さは、半年ももたないのだ。なにしろ、Android 5.1が今年の3月に出たのだから。おそらく、書棚に置いてあるものでは、今一番新しいAndroid書籍だったと思うが、書籍の中では2014年12月現在の情報ということになっている。今は、Java自体が、1.8.0になっている。この本ではJDK 7が前提、Android Studioとは別にJDKなどもインストールする手順が示されている。

../images/2015/08/npakanet_StringExm.pngStringExをAndroid Studio 1.3.1にimportしてエミュレータ上で実行

Android Studioは本日、1.3.1にアップデートのポップアップが出た。


Android Studioはインテリジェントで、日本語ユーザー名もなんのその、エミュレータはwarningを発するが、適切に問題なく動作する。例えば、次のようなwarningだ。

emulator: WARNING: Ignoring invalid SDCard path: C:\Users\文字化けした<日本語ユーザー名>\.android\avd\Nexus_5_API_22_x86.avd\sdcard.img

Android Studioの日本語パス名は単に正常に表示される場合と、上記の場合のように文字化けしてinvalidと認識される場合がある。ただし、invalidなパスでも正常に動作するのだから、インテリジェントということができるだろう。

本書にあるJAVA_HOMEの設定は、「C:\Program Files\Java\jdk1.8.0_51」に相当し、開発ツールへもPATHを設定するように指示がある。その通りにするなら、「C:\Users\<日本語ユーザー名>\AppData\Local\Android\sdk\platform-tools」と「C:\Users\<日本語ユーザー名>\AppData\Local\Android\sdk\tools」の二つになる。それが必要なら、build-toolsにもPATHが必要なのではと考えてしまうが、実際にはいずれも設定しなくても正常に動作している。

上記のように書籍のプロジェクトはインポートできる。著者の布留川英一氏の環境のままのプロジェクトデータからAndroidのSDKのパスを現環境に読み替えて、日本語名パスを含んだものを適切に実行して取り込んだ。その時にポップアップするメッセージにはAndroid SDKのパスのSJIS日本語?は正常に表示されている。むしろ、開発ツールにパスを通すと日本語ユーザー名が障害になるという警告が出たので、一旦設定したものを削除した。最初に設定していなくても問題なく動いていたので、Android Studioの新しいバージョンでは不要なのだろう。プロジェクトは警告があまり出るのも嫌なので、フォルダをCドライブのルートに置くことにした。JAVA_HOMEの設定も不要。

エミュレータ上ではアプリは正常に動作と終了を繰り返して動作するが、Androidのlogcatコンソールに次のようなエラーが出ている。

08-11 06:28:43.046 2052-2068/net.npaka.stringex W/EGL_emulation: eglSurfaceAttrib not implemented

08-11 06:28:43.046 2052-2068/net.npaka.stringex W/OpenGLRenderer: Failed to set EGL_SWAP_BEHAVIOR on surface 0xb3ee6a60, error=EGL_SUCCESS

「Messages Gradle Build」やTODOには何の問題もない。GraphicsExもインポート(File→New→Import Project...)を試してみたが、まったく同様の結果が得られた。

Amazonのカスタマーレビューでは、XMLでレイアウトする方法への言及が少ないことが指摘されているが、APPENDIXのA-1にある程度の記載があり、不十分かどうかは読者の状況次第だろう。AndroidManifest.xmlはすべてのプロジェクト・サンプルに当然存在しているし、APPENDIXのA-2に設定項目についての詳細な記載があるので、特に困らないだろう。言及すべき新しい要素があるプロジェクトについては、各章のマニフェストファイルの設定で説明されているようだ。

誤植はいろいろとあるようだが、プロジェクトをインポートしてソースファイルを参照すればよいだろう。動作しているものだから、余程のことがないかぎり問題はないはずだ。

内容的には、バラエティに富んでいるし、解説も知っておくべき要点を詳細に押さえている。参考になりそうだ。もっとも、実用的なアプリはもっと複雑だから、この本だけですべてなんとかなるというものでもない。後はどこまでWebで探せるかということになるだろう。

Android Studio自体にもSampleがあり、Import Sampleから様々なプロジェクトをインポートして試すことができる。かなりの数のSampleがある。Descriptionを読んで、適当なサンプルを調べてみるとよいだろう。すべてのプロジェクトはGitHubに存在しており、インポートすると、GitHubからソースが読み込まれてBuildされる。

TextLinkifyのような技術は使う可能性が大きいので、インポートしてみた。Apache Open Source Projectによるもので、the Apache License, Version 2.0で配布されている。Apache License - Wikipediaを参照。GPL3と同等のライセンスということ。使用、頒布、修正、派生版の頒布を制限しない。

今、Amazonで「Android 和書」で調べると続々と新しい本が出ている。まあ、この本の活用の仕方は判明したので、具体的な内容に入っていこう・・・

更新: 2015-08-12T17:28:56+09:00

[Apple] アップルのMVNO

Apple、MVNO参入か - 海外報道 | マイナビニュースネタ。一応メモしとくか・・・

もう、NiftyでMVNOを始めてしまったので、どうでもよいかもしれないが、切り替えることは可能なわけで、条件がどうなるのかは気になる。

グーグルのProject Fiは月額30ドル程度。Project Fi (04/23/2015)を参照。

[Apple] Apple Car

アップルやはりApple Carを開発中か、BMWとの協議で判明 - iPhone Maniaネタ。これもメモに過ぎないが・・・

前に取り上げたときの記事はiCarの噂など (02/21/2015)カメラ搭載ミニバンは「Apple Car」の実験か (02/27/2015)。iが齧られた林檎になったか。

Rebuild.fmはエピソード4を聴いている。

[Apple] iTunes 12.2.2 + OS X 10.10.5 + iOS 8.4.1 - iTunesはミュージックマシン

昨日から、Apple Musicが明らかにおかしくなった。今朝も「For You」のプレイリストが途中で止まってしまう。プレイリストがまともに動作しない。WindowsもOS Xも同じ。Twitterで「Apple Music」を検索してみると、iTunesの12.2.2へのアップデートが出たという。あれ、そう・・・iOS8.4.1も。

MacのiTunesでもやはりおかしいと確認しつつ、AppStoreでアップデートを調べると、OS X 10.10.5が一緒に出るという。こちらは1GB近いアップデートだ。9月の「El Capitan」に向けて徐々に地ならしアップデートなのだろう。

WindowsのiTunesではプレイリストは正常に動作するようになった。ブルース・スプリングスティーンの「Born to Run」から始まって、レナード・スキナードの「Free Bird」まで全11曲が流れた。乗りに乗ったあまりにも長い・・・がフェードアウトして終わった。「どこか遠くへ」というプレイリスト。

ようやく、MacBookのほうのOS Xを含めたアップデートが完了。

iTunesを起動。Radioのチャンネル01を聴いてみる。今時、ラップでない音楽は少ない。なぜなんだろうと思う。

ConnectのBill Evansの記事の、昨日は開けなかったリンクは開けたが、米国のAppleサイトの「iTunes Preview」につながる。At Shelly's Manne-Hole (Live)、Bill Evans Trio。「View in iTunes」のボタンを押すと、iTunesに戻ってくるが該当のアルバムにはつながらない。検索してみても114件ヒットするが、同じアルバムがない。品揃えが少ないのはちょっと気になる。Amazonで「Bill Evans」をデジタル・ミュージックに限定して検索しても、アルバムとして932件ヒットする。これもどういう検索になってるのか、よくはわからないのだが。少なくとも、同じアルバムが存在する。CDとMP3の両方がある。これは傑作らしい・・・。ビル・エヴァンスは再発ものが大量にあるので、数があればいいというものではないが、いいものはいいわけで、選択肢が多いに越したことはない。該当のアルバムはオリジナル音源のremasterが売り。

さて、「サイド・マンとしてのフレディー・ハバード」が、MacBookがスリープ状態、画面が暗くなった状態になったせいか、途中で止まっていた。すぐに再開できたので、問題なし。これがうまく動かなかったんだよね。

まだ、適当に弄っていると不安定になる場面もあるみたいだ。

あーっ、Beats 1 Replaysってのがあるねえ。(これは「New」の中にある。実際の放送の内容が再生される。)

Beats 1 schedule!? どこにあるのだろう。「01」をクリックすると「LIVE NOW」、「Featured Shows」、「about」、「Upcoming Shows」の項目が出てくる。スケジュールとは「Upcoming Shows」のこと。日付が書いていないのでわかりにくいのだが、よく見ると「LIVE NOW」の時間帯が抜けて表示されている。時刻はちゃんとローカル時間になっている。

Windowsでは、Beats 1のAirPlayはアプリを使えば可能なようだが、そのままでは難しい。ただ、「Featured Shows」にある番組はプレイリストになっているので、その再生はAirPlayで可能。やはりPCのオーディオよりは本格的なオーディオで聴きたい。(こちらは「Radio」の中の話。)

これで、Radioの「Beats 1」も音楽を聴くためのツールになってきた。デザイン的にもなかなかよい。iTunesはミュージックマシンと化しつつある。

更新: 2015-08-15T18:47:16+09:00

[Apple] Hey Siri, give us a hint.

アップル、イベントを米国時間9月9日に開催--次期「iPhone」を発表か - CNET Japanネタ。様々な予想記事がずっと出続けているが、これはというおもしろいものがない。Siriに訊いても、答えてくれないらしい。

Apple、9月9日にロックゆかりの場所でイベント開催、iPhone新モデル発表へ | マイナビニュースによれば、7000人も入れる会場だ。去年の3倍。かなり大きな発表になるのかも。

12.9インチ「iPad Pro」、Apple TV登場のうわさ--Appleニュース一気読み - CNET Japanの記事が少し目を惹くね。

Apple、恒例の豪華ライブイベントを9月に開催--「Apple Music Festival」へ名称変更 - CNET Japanの記事は、「iTunes Festival」が「Apple Music Festival」に名称を変更することを伝えている。今年は、iTunesのBeats 1やConnectを使ってライブ配信するようだ。9/19~9/28。

僕が最も期待しているのは、次期「Apple TV」用OS、「iOS 9」ベースか - CNET Japanの記事にあるようなApple TVだけど・・・

さて、どうなるかな、Apple Watch 2の発表もあるかも。Apple Watch、あまり日本で売れてない? 興味薄れる傾向も… : ギズモード・ジャパンのような記事も出ているが、拡張ポートとセンサー内蔵バンドを使って高機能化するという話もどこかで読んだけど・・・

Apple Watch 2 and smart bands could both launch in 2016の記事かな。

まあ、噂ばかり読んでも仕方がないというのが、最近思うこと。発表を待とう。

更新: 2015-08-30T05:04:19+09:00

[Apple] OS X El Capitanのコンピューティング

iOSの発展の中で、実質的なAppleのコンピューティングの進化がOS X El Capitanに現れるはずだと思っている。ある意味、モバイルの限界、モバイルとデスクトップの境界もよくわかっているのが、iPod/iPhone/iPadを生み出したアップルだ。そろそろ届く「OS X El Capitan」について、林信行さんの記事で復習しておこう。

国内ユーザー向けの“One more thing”:アップルは日本語デジタル化に再び革命をもたらすか?――林信行のOS X「El Capitan」世界先行レビュー(前編) (1/3) - ITmedia PC USER「El Capitan」の魅力を徹底解説:次世代OS Xは人気アプリキラー!? 林信行のOS X「El Capitan」世界先行レビュー(後編) (1/6) - ITmedia PC USERネタ。WWDC 2015で発表された後の記事だ。WWDC 2015で訴えた人間尊重と文化創造:Appleの新しい方向性――4つの発表と3つのトレンドを林信行が読み解く (1/5) - ITmedia PC USERの記事も復習しておいた方がよいだろう。9/9のイベントを予測するには。

El CapitanはYosemiteより軽くキビキビ動くというのが、うれしい話なのだが、我がマシン、MacBookは64ビット機ながらあまりにもモタモタしていたので、2GBのメインメモリの8GBへの増設を決断したというのが先日の話。昨日のFirefox OSのハンズオンでは、我がMacBookの有名な白い筐体を知らない人がいた。知っている人は「古いMacBookです」と言っていたが、まだ、El Capitanがサポートする現役マシンだ。64ビット機だからだろうと思う。

../images/2015/08/CIMG3871m.JPG1GBメモリ

メモリ交換のために裏蓋を初めて開けたのだが、ファンがあるのには驚いた。静かだからファンレスだとばかり思っていた。

メモリは申し訳ないみたいな感じで載っている。両面合わせて8個のチップで、1GB。二層で総量2GB。

../images/2015/08/CIMG3875m.JPG4GBメモリ

4GBのメモリ基板は片面8つのメモリチップが両面に実装されている。これを二層に装着できるようになっているので、メモリ総量は8GBで4倍になった。64ビットCPU/64ビットOSの性能が遺憾なく発揮できるだろう。


それはともかく、モバイルの限界はディスプレイサイズにある。現代のパームトップ・デバイスにはCPU、搭載メモリ、ストレージに限界があるとは言えない。デスクトップの性能が手のひらに載っている。ディスプレイのサイズこそが、デスクトップとの境界を決めている。無論、画素数や解像度はデスクトップを超えているものもあるので、一概にはそう言えなくなっているのだが・・・

WindowsのExplorerは地味に進化していて、Picasa 3がWindows 10で動かない中で、WindowsフォトビュアーとGIMPを組み合わせれば画像管理・処理環境としては十分使えるなと思ったりしている。生態系をいかに住みやすくするかということがコンピューティング環境としては重要だ。

新しいメモはEvernoteキラーかというような話もある。モバイルとiCloud経由で連携するという生態系が次第に強化されていく。アプリは最終的には生態系に入るか、自らを生態系にしないと生き残れないかもしれない。

しかしながら、もう単なるメモという概念は古いという感じがしている。Worldwide Memoという概念が登場すべきだろうと思っている。

Windows 10を使いつつ、OS X El Capitanの届くのを楽しみにしつつ、Firefox OSがどう進化していくのかというのも興味深いと今更ながら思っている。昨日、Firefox OSが載ったタブレットも見せてもらったが、デスクトップにも是非進出してほしいと思った。Firefox OS Devices - Smartphones & Tabletsを参照かな。

El Capitanについてのコメントは、実際に触ってからということになるだろう。コンピューティング環境が進化しつつあり、様々な環境を混在させて使っていても、それほど違和感はない。結局、コンテンツの問題なのだというところに行き着く。後は作るだけ・・・

更新: 2015-08-30T19:38:40+09:00

[アート] アートはテクノロジー

もう一つ、ピックアップ。「Pixie Dust」落合陽一 さんインタビュー:IoTはもう古い。ポスト「モノ」時代の魔法とは? : ギズモード・ジャパン「Fairy Lights in Femtoseconds」落合陽一さんインタビュー:「アートはもうテクノロジーでしかなくなる」 : ギズモード・ジャパンネタ。

最近見た映画、「インサイド・ヘッド」、「ジュラシック・ワールド」、「ミッション・インポッシブル ローグ・ネイション」。いずれも素晴らしかったが、映画もテクノロジーなくしては最早作れない時代であることは間違いない。

落合さんのは、ディスプレイから三次元空間場にコンピュータ表現を移すという発想が新しい。

[クラシック] 小林美恵・萩原麻未デュオコンサート - 呉市文化ホール

午後3時から5時過ぎまで。プログラムにない麻未さんのソロ二曲とアンコール三曲の大盤振る舞い。音楽を満喫する遅い午後だった。二時少し前に出発し、三時半には呉市文化ホールのすぐそばの蔵本駐車場の4階に車に停めていた。呉市文化ホールで聴くのは、NHK交響楽団 呉公演 2013 (07/28/2013)に続いて二度目。この時も麻未さんの演奏を聴くためだった。

../images/2015/08/CIMG3879r1m.JPGPiece for Peace Hiroshimaのパンフ表紙

オープニングは、「J.アルトハウス:アフリカン・アレルヤ(ピアノ:城本朝子、ジャンベ:中川幸恵)、岡野貞一:朧月夜~祈り~(ピアノ:三井明子、シンセサイザー:中川幸恵、フルート:城本朝子)、冨澤裕:時の彼方へ(ピアノ:萩原麻未)指揮:松原里香 出演:呉少年合唱団」。呉少年合唱団の澄んだ爽やかな声が印象的だった。


小林美恵さんの超絶技巧のヴァイオリンは安定していて破綻がない。始めから最後まで。クール・ビューティーという言葉がぴったり当てはまる。様々なヴァイオリンの高度なテクニックが披露された。一方、麻未さんはいつもながら、情感を込めたホットな演奏。高度な技量を持つ両者のクールとホットの掛け合いが見事に溶け合った。

演目

*** 休憩 ***

小林美恵さんを最初に知ったのは、小林美恵と萩原麻未 (05/04/2012)の記事のテレビだった。

更新: 2015-08-31T22:00:08+09:00

[Cloud] WTM81「WTM + GCPUG広島」にて - ContainerとBigQuery

Google Cloud Platform(GCP)のユーザーグループ、GCPUG(ジーシーパグ)広島とWTM(Web Touch Meeting)の共催で、第81回のWTMがあったので、きのう昼から聴きに出かけた。

話が最初から逸れるようだが、Rebuild.fmの初回まで既に遡った。初回は2013年2月13日の配信。過去2年半ぐらいのIT開発の最新の状況をある程度知ることができたことになる。その状態で、GCPの話を聴かせてもらった。

そうすると、さっそく、PaaSの話の中で、Dockerの話が出てきて、こんなところにつながるのかと思う。DockerとRebuild.fmをググってみると、RebuildfmからDockerに関する回だけを抽出してみた(JavaScriptで) - Qiitaのようなページが見つかった。Rebuild: 14: DevOps with Docker, chef and serverspec (naoya, mizzy)(Jun 22 2013)がDockerを最初に取り上げたエピソード、第14回。

Dockerについて、わかりやすいのは、いまさら聞けないDocker入門(1):アプリ開発者もインフラ管理者も知っておきたいDockerの基礎知識 - @ITのシリーズだろう。VMwareのようなOS単位のハイパーバイザー型仮想マシンに比べて、アプリケーションの実行環境単位(コンテナ)の仮想というのも考えられるわけだ。この記事では、FreeBSDのjailがコンテナの技術として最初に上げられている。jailはハイパーバイザー型仮想マシンVMwareがポピュラーになったころには既に存在していたので、もうかなり昔から存在していたということになると思う。

調べていくと、2015年6月23日に[速報]「Open Container Project」発足。Docker、CoreOS、マイクロソフト、Amazon、Googleらが合流し、コンテナは統一仕様へ - Publickeyという記事が出ている。ここ数年のホットな話題が新しい流れを生み出しつつあるのかな。

Containerについての詳細は、Containers Explained: 9 Essentials You Need To Know - InformationWeekから調べるとよいだろう。既に、Linux、Solaris、FreeBSDはコンテナを持っていて、Windowsのコンテナは、Dockerが生成することができるのだそうだ。

GCPのハンズオンは、プロジェクトを作って、WordpressのインストールとBigQueryの体験。クラウドは軽々と動く。Webの基盤として、Cloudが一般的になること、重要性を体感できた。使い道を考えていく必要があるね。

やはり凄いのはBigQueryかな。正規表現によるパターンマッチング検索を分散処理によってかなり高速に実現できる。今後、PCによる分散処理ということも有り得るかと思っていたが、BigQueryは既に存在している現実である。

更新日記は現時点、インデックスなどを除く本文だけで全174ファイル、計11.4MBに過ぎない。この程度なら現代のPCはほとんど待つことなく正規表現で検索し尽くすことができる。それでも瞬時にできるならそれに越したことはないわけだ。ただ、分散処理は、実際上、多数のサーバー上で効率よくできるかという問題に直面するはずなので、このような小さな問題に適用することは、おそらくそれほど簡単ではないかもしれない。大規模な検索なら当然メリットは出てくるはずだが・・・

僕が当面興味があったのは、デスクトップでマルチコアのCPU/GPUで分散処理を行うようなプログラムをPerl 6などで簡単に書けるのかどうかということだったのだが、BigQueryが現実的な選択肢に入ってきたということになる。それはともかく、Java 8のプログラミングをまずは調べてみよう。

更新: 2015-08-11T01:35:40+09:00

[Computing] MetalとDirectX 12

【後藤弘茂のWeekly海外ニュース】Appleが新言語「Swift」とAPI「Metal」を発表して「iPhone 6」を発表しなかった背景 - PC Watchネタ。先の1年以上前の後藤氏の「DirectX 12」記事の後の記事だが、現前しているAppleの動向を表している。マイクロソフトとアップルは同じ方向を同時に目指している。

今や、マイクロソフトがWindows Vistaで目指した3Dコンピューティング環境がようやく実現しようとしているとも言える。ハードウェアの性能が向上し、新しいGPUとそれを活かすグラフィックスAPIが登場した。

いわゆるグラフィックスだけでなく、デスクトップの描画にもGPUを使う方向性になっているらしい。デスクトップが3D表現化されていく。Rebuild.fmでも、Metalによってアイコンさえ3Dになる、という話もあった。2Dグラフィックス専門のデザイナーは滅亡する運命にあるというわけだ。

ただ、普通のお絵描きは、紙やディスプレイの二次元表面に描くわけだからねえ。コンピュータの入力デバイスの革新が必要な感じがするけど。

注目される「WebGL」--プロが示すHTML5でのフロントエンド演出の勘所 - builder by ZDNet Japan当たりの話が注目どころなのだろう。Canvas、SVG、WebGL。UnityがWebGLを出力するようになるとか。

おもしろい時代になったものだが・・・

[Computing] スマホとPC - コンピューティングとPCの形態の未来

シリコンバレー101 (622) 平均販売価格600ドル超でも売れるiPhoneと400ドルを下回る不振のPC | マイナビニュースネタ。PCとiPhoneの第二四半期の販売台数がそれぞれ、6610万台と5200万台程度、価格はそれぞれ、379ドルと624ドル。最早、デスクトップPCよりiPhoneの売り上げの方が多いのだ。

こんな事態になるとはだれも予想していなかったかな。

比較すること自体に意味がないかもしれない。片や電話であり、片やコンピュータである。ただ、どちらもインターネットに接続して情報を入手できるところが共通している。インターネット・メディア・プレーヤーという意味では同じデバイスに分類される。

PCユーザーとしては、PCのコストパフォーマンスが増大するのは歓迎だ。何も言うことはない。コンピューティングの未来はデスクトップPCにあることは間違いないのだから。

ただ、PCの形態が今のままだとは考えられないということについても誰もが同意するのではないか。超高性能スマホにBLE接続のキーボード、ディスプレイ接続はAirPlayのようなWiFiなもの、WiGigかな。ストレージはNASだろう。

少なくとも、次のPCはもっと小さいものになるだろうね。

更新: 2015-08-01T22:28:02+09:00

[Computing] 謎の「3D XPoint Technology」

今日のRebuild.fmのライブでHakさんから出てきた、話題の「3D XPoint Technology」ネタ。エピソード103として配信されるだろう。

【福田昭のセミコン業界最前線】Intel-Micron連合が発表した“革新的な”不揮発性メモリ技術の中身 - PC Watch【後藤弘茂のWeekly海外ニュース】HMB3、Wide I/O3、DDR5……次々世代広帯域メモリの方向性 - PC Watchネタで取り上げようと思っていたところ。

Analyzing Intel-Micron 3D XPoint: The Next Generation Non-Volatile Memoryの記事は昨日か。ニュース - 米Intelと米Micronが新不揮発性メモリー「3D XPoint」を発表、NANDより1000倍高速:ITproは早いね。7/29だ。

積層メモリや不揮発性メモリの現実性が高まりつつある。超高性能モバイルコンピュータ、すなわちスマホというマーケットのニーズが開発を促進するだろう。

もう2013年の古い記事だが、前記ITproの記事からリンクされているCloseUp - “第3のメモリー”の衝撃、ストレージとDBが一変する:ITproが、今後現れてくる未来を予想している。内容はまったく新しい。

HBMについてはAMD's high-bandwidth memory explained - The Tech Report - Page 1の解説記事がよさそうだ。

更新: 2015-08-02T07:37:58+09:00

[デスクトップ] Electron

日々が過ぎ去り、過ぎ去り・・・世界は進歩し続ける。いつの間にか、デスクトップとWebの融合も当たり前の時代になった。気が付いたら、デスクトップはタブレットやスマホなどのデバイスに変化していた。デスクトップ・アプリはHTML+CSS+JavaScriptが記述言語となり、マルチプラットフォームで書ける。そういう謳い文句で、Electronは登場した。元はAtom Shellと呼ばれていたらしい。

今となってはどこで見つけたか定かでないのだが、2015.32 The Onset Of Upheaval | Weekly changes in and around Perl 6の最後にazawawi/perl6-electronを見つけたので、取り上げることになった。もっとも、rakudoにpandaでElectronはまだうまくインストールできないのではあるが・・・

大元のElectronをnpmでインストールして試した。atom/electronを参照。

../images/2015/08/electron_hello_worldm.pngElectronのHello World

ElectronのWYSIWYG出力にdeviceと言うタブがあり、そのタブはデバイスを選択できるようになっている。デスクトップがデバイスに変化したというのは、Electronの仕様を見てそう思ったわけだ。実際、そういうことなんだと変に感心した。

[日記] 灯篭流しは欠席の巻 - 2015「平和の夕べ」コンサートの翌夜のこと

鈴が峰トンネルと観音高架道路でそれぞれ4台の玉突き事故を見る。みんな気を付けてね。毎日のように疲れて帰ってくる。昨日は、マルタ・アルゲリッチのベートーヴェンのピアノ協奏曲第一番ハ長調を聴くために、2015「平和の夕べ」コンサートに出掛けたのだが、遅くなったので、サイゼリアでビールと簡単な食事を済ませて、帰宅してしばらくするとすぐダウン。今日はもう出るのは止めといたらとのお達し。今日も歯を磨いていつでも倒れる準備完了。そうして書いている。

昨日、コンサートで平野啓一郎と朗読したアニー・デュトワさんはアルゲリッチの娘さんなのだそうだ。その経緯はシャルル・デュトワ - Wikipediaに詳しい。

それはともかく、演奏は素晴らしかった。オケの演奏に合わせて身体を揺らしながら、余裕のあるタッチで、軽やかにニュアンスのある音を引き出していく。もっと音量が欲しいけど、高音のピクシー・ダストが煌めくように広がる響きが伝わってきた。その時々の気持ちで如何様にでも弾きこなせるという雰囲気を漂わせている。現在、テクニックを含めて世界最高のピアニストだろう。

その凄さを示したのはアンコールで速弾きしたシューマンの幻想小曲集から「夢のもつれ」。ダイナミックな力強い演奏でテクニックの凄さを見せつけた。夢がもつれているようには聴こえないところが難点かもしれない。夢がほどけて、伸びていった。

DropBoxに、今朝の平和記念式典の様子に続いて、灯篭流しの写真が入り始めた。

Apple Musicで幻想小曲集を検索して、「夢のもつれ」をいくつか聴いてみたが感心しなかった。線が細い。イェルク・デームス先生のシューマン・ピアノ曲集を思い出して、昨日から聴かねばと思っていたので、調べた。CD5の10がTraumes Wirrenであることを確かめて、プレーヤーにセットした。あーっ。やはりダイナミック。音が豊かだ。

CD5の最初から通して聴いたのだが、10曲目のTraumes Wirrenは予想とは違う、ダイナミックだが、むしろ繊細なものだった。音楽に構造が見えてくる。この曲はこんなふうに弾くんだよという感じ。これも素晴らしい。

[Facebook] Aquilaのレーザー光線

Facebook、太陽光で飛び続ける全翼ドローンAquila発表。成層圏からレーザー光線インターネット中継 - Engadget Japaneseネタ。

Facebook の モバイル広告: すべての収益の 75% を埋めつくす、すばらしい成長を達成! | Agile Cat --- in the cloudと絶好調だからできることかな。

[Firefox OS] Android版FirefoxとFirefox OS 2.5

Android 版 Firefox - モバイル Web ブラウザ - 柔軟なカスタマイズと、プライバシーを重視するブラウザ - Mozilla11月に開発完了--次期「Firefox OS」はユーザー体験を重視 - CNET Japanネタ。

8/29の「中国 Firefox OS 勉強会 3rd」を思い出して、最近のFirefox OSを調べていると、Android版Firefoxは設定→ツール→アプリでFirefox Marketplaceからアプリをダウンロードして動作させることができることを知った。最近はChromeばかりで、Firefoxをあまり動かすことはなかったので、気づいていなかった。もう少しわかりやすいところにメニューがあると気が付きやすいと思う。それはともかく、なかなか素晴らしい。

MacBookのFirefoxも16ぐらいをインストールしたままになっていたので、最新版に置き換えた。もうバージョンは40を越えている。研究会に備えて、WebIDEに「Firefox OS シミュレータ2.0」をインストールした。

Firefox OSのアプリがHTML+CSS+JavaScriptであることはよく知られていることなのだが、その実態(ソース)を具体的に確かめたことはないので、サンプルを研究しておく必要があるかな。WebIDEの開発環境を含めて。

Firefox OS 2.5の新機能についても話してもらえるといいね。

[Firefox OS] PhoneGapでFirefox OSアプリを作る

Firefox OSはこれしかないはずなので、PhoneGap API Documentation: Firefox OS Platform Guideを試してみた。

上記のガイドのインストールに従うと、「cordova plugin add」のところがエラーになるはずで、packages with keyword ‘cordova-firefoxos’cordova-plugin-devicecordova-plugin-vibrationを使うようにメッセージが出るはず。

../images/2015/08/Hello_Codova_on_Firefox_WebIDEm.pngHello Cordova on Firefox WebIDE(Windows 10 Pro)

「Manifest に 'icons' 項目が足りません。」という警告が出る。これがどういうことなのかが、よくわからないけど。



../images/2015/08/Hello_Cordova_on_Firefox_OS_Simulatorm.pngFirefox OS Simulator 2.2 on Firefox(Windows 10 Pro)

2.0と2.1は起動できるが、HelloCordovaを正常にインストールできない。2.2で成功。3はシミュレータをエラーで起動できない。



[Firefox OS] 中国 Firefox OS 勉強会 3rd

胡町のMovin'onで表題勉強会があったので、参加。午後1時から5時まで、5時半から海音で懇親会。

今回は初めてのハンズオンということで、8GBにメモリを増設したMacBookが大活躍。貸し出されたau Fx0をUSBで接続して、FirefoxのWebIDEからアプリをインストールしてリモートデバッグ。MacBook自体に慣れていないのが、まず大きな問題なのだが、今日は随分とWebIDEのエディタを使いこなした。saveのショートカットはコマンド+Sなんだね。そして、Macを使うとき、いつも忘れがちになるのは画面最上段に出てくる操作メニュー。

Hello Worldのアプリのapp.jsを書き直しただけの照度センサーのアプリがFx0上で動くのに最も感動した。あーっ、こんなもんなんだと・・・

../images/2015/08/2015-08-29_21.24.28m.jpgOpen Web Boardとau Fx0のパンフレット

Open Web Boardが無償配布された。Firefox OS 1.4で動作する。


Apache Cordovaのアプリケーションをインストールして、シミュレータで動作させた経験が生きたね。

アプリを作るイメージはだいぶ掴めた。もちろん、意味のあるものを作るのはそんなに簡単なことではない。

次は、WebVR on Mobile devices | Firefox os Centralらしいけど。NightlyのFirefoxを入れるか・・・

更新: 2015-08-30T09:08:44+09:00

[Google] GoogleからAlphabetへ

How Sundar Pichai rose to become CEO of Google - Business Insiderの記事を見て、あれっと思ったのだが、なんと! グーグルが新会社「Alphabet」を設立、本体は子会社に : ギズモード・ジャパンの記事を見て、あれあれと思ったが、納得せざるを得ない。

大元を知るには、Google new operating structure - Business Insiderを読めばいいかな。Google Announces Plans for New Operating Structure - Investor Relations - Googleのプレスリリースも載っている。

最初にWeb上に現れた時も今と変わらぬ簡素な検索インターフェースだったが、世界を変える切っ掛けを作った。今、世界のあらゆることを調べることができるのはGoogleのおかげと言ってよい。Alphabetという名称はアルファベット圏の文化を象徴しているが、ひらがな・カタカナ・漢字・アルファベット圏である日本はさてどこに向かうのだろう。世界はどう変化していくのだろう。「熱風」8月号の「鈴木さんにも分かるネットの未来」刊行記念座談会を読みながら、いろいろと考えた。

結局、世界を観察し続けるしか、答えは見つからないだろうと思うわけだけど。Google社はネットワークのインフラにも投資しているし、やるべきことはすべてやっている。サーバー・スイッチなどのハードウェアも分散型データベースなどのソフトウェアもすべて自社開発。自社でやらないと未来を見通せないということだろう。

Alphabet社のホームページのURLが判明。Alphabet

更新: 2015-08-11T20:45:00+09:00

[ひろしま] 戦後70年、盆休み最終日

原爆の日の前に『2015「平和の夕べ」コンサート』に参加して、長崎の原爆の日を迎え、昨日、終戦記念日を迎えた。戦争を二度としてはならないという二次大戦経験者の話をテレビでいろいろと聴かせてもらう。終戦、1945年当時20歳の方もいまや90歳、終戦の年に生まれた方でさえ、70歳という時代。戦争体験を風化させないことができるうちに、体験をできるだけ引き継ぎたい。

マルタ・アルゲリッチは「A Tribute to Hiroshima」で、「第二次世界大戦で私たちが目撃したもっとも恐ろしい犯罪は広島・長崎に投下された原爆とポーランドを襲ったホロコースト(ユダヤ人の大量殺戮)だと思います」と述べている。アニー・デュトワさんと平野啓一郎氏の朗読は、チャールズ・レズニーコフの詩集「ホロコースト」と原民喜の「鎮魂歌」からの一節だった。

日本が様々な危機に見舞われながらも、戦争だけはせずに70年を過ごせたことは歴史的にどのような価値があるのだろう。負けたはずの米国に親近感を抱く、戦争を知らないが故の奇妙な精神構造の中で、戦後に作られた戦争映画で米兵の味方をしていることに、それほど大きな違和感を持たなかった。第二次大戦だけでなく、歴史に学ぶことは重要だろう。世界の歴史は戦争の歴史でもある。特に20世紀は大量殺戮戦争の時代でもあった。

まだ、現在、ささやかでも文化的な生活を送れることに感謝しなくてはならない。現在の平和は、先人たちの犠牲の上に成り立っていることを忘れないようにしたい。世界をよりよくするためにはどうしたらよいのだろうか。そういう視点が最近の議論から抜け落ちているようにも思う。

[Internet of Things] CerevoとUPQ

Cerevo、重さ2gのIoT開発モジュール BlueNinjaを発表。『活動量計レベルなら簡単に作れる』 - Engadget JapaneseCerevo、ニキシー管スマートウォッチを試作。IoTモジュールBlueNinjaでスマホ連携、活動量計測 - Engadget Japaneseネタ。

日本でも本格的で、かなり活発な動きが出てきた。素晴らしい。Cerevo - Homeを調べると、2007年設立なので、もうキャリアは十分、米国にもオフィスがある。注目かな・・・

もう一つ、動画:汗臭いハードウェアスタートアップさよなら、Cerevoが語る国内売価の不思議。UPQ発表会 - Engadget Japaneseによれば、CerevoはUPQ SIMフリースマホ、50型4K開発秘話。私の作りたいように作り私のものにする決意(更新) - Engadget JapaneseのUPQとも協力関係にあるそうだ。

更新: 2015-08-07T23:27:22+09:00

[Internet of Things] 久しぶりの村井先生

IoT時代はGoogle支配にならず日本にも勝機 - "日本のネットの父"、村井氏に聞く"IoT" (1) SFCの授業とは? | マイナビニュースネタ。

だいぶ前にSFCグローバル・キャンパスのビデオ授業を受けたことがある。しかしながら、なにごとも手間が掛かるし、時間が掛かる。経験も必要だ。結局、プログラミングもそうだが、何をするかが問題なので、IoTも同じ。何をするかが決まらないと何も進まない。当たり前か・・・

アイデアが思わぬところから生まれた。具体的なことが核になって、いろいろなものが結びついてくる。それほど大したものではないが、ドライビング・フォースになる。思考の触媒のようなものだ。普段は考えないようなことが発想され、ふと浮かんでくる。くだらないかもしれないが、発想が浮かぶところがおもしろい。

さて、IoTと結びつくかな。Raspberry Pi 2 と Arduino での Windows 10 IoT アプリの開発がいよいよ動き出している。かなりよくできたチャートリアルがある。これもVisual Studio Community 2015を開発に使う。これまでの試みの積み重ねで、準備は既にできているのだが、人のアイデアで動いても仕方がない。もっと視野を広げて発想していこう。

生体センサーってやはりウオッチかな・・・

まずは最初の構想に近いところから、プロトタイプを書いていこう。

[メモリ] 謎の「3D XPoint Technology」 II

Intel, Micron unveil 3D XPoint as first new class of memory tech in decades | ZDNetネタ。この記事は8月18-20日のIDFや年末に出るSkylakeとの関連などに期待した書き振りになっている。

Intelのサイトを調べると、7/28のプレスリリースがある。インテルとマイクロン、画期的なメモリー技術を開発(Intel and Micron Produce Breakthrough Memory Technology)を参照。

要は、新しいクラスの不揮発性メモリの製造を開始するという発表だ。

2013年の世界のデータ量は4.4ZB(zetabytes)、2020年には44ZBになると予測されている。したがって、世界のデータ処理能力は10倍に高める必要がある。それにしても人間の記憶・理解能力が10倍に高まるわけではないと思うのだが・・・

画期的な情報処理アプリが必要になるだろう。

更新: 2015-08-02T08:50:03+09:00

[メモリ] AMDの動向 - HBM

【後藤弘茂のWeekly海外ニュース】IPCが40%向上したAMDの次世代CPU「Zen」と2017年までのロードマップ - PC Watchネタ。Intel/Micronの3D XPointの発表は不揮発性メモリに関わるものだったが、AMDはHBM(High Bandwidth Memory)をGPUに着実に応用しようとしている。

ネタ記事にはPlayStation 4やXbox Oneへの言及があるのだが、いずれもAMDのCPU/GPUを使っている。これらのゲーム機の動向も重要になるだろう。

[マイクロソフト] Blend for Visual Studio

お盆に入って、少し涼しくなりました。今朝は窓を開けて作業している。昨日気になったBlend for Viusual Studioについて調べ始めた。

Blend for Visual Studio を使用して UI を作成するに答えがある。XAMLベースのWindowsアプリを作る環境。それで、Apache Cordovaが出てこないわけだ。了解だけど、どこで、Blend...が出てきたのだろうねえ。

Visual Studio Community 2015を使えばよいということははっきりした。

[Music] 音楽のメタデータとコンテキスト

今日は休日に入ってから何度目かのお墓参り。明け方降って、久しぶりの雨。午前中一旦止みかけたが、昼からまた強く降ってきた。お盆直前、市内やバイパスも車で混んでいて、渋滞モード。九州は記録的豪雨。長崎駅は冠水とのニュースが流れている。Ze_shuさんは恵みの雨とか言われていたが大丈夫だったかな。台風13号の名残の雨雲が中国大陸から流れて、西日本に掛かってきた。Apple Music、トライアルメンバーが1か月で1,100万人に達する | スラド アップルネタ。

この話の元、Apple Music hooks 11 million trial members, App Store has record Julyを見ると、ビジネス的には世間は冷たい関心しかない。努力して何を実現したところで、株価の変動によって失われる1130億ドルと比較すべくもない。

仮想の価値を追ってても仕方がないので、実体のある話に戻らねばならないが、こちらの音楽などのコンテンツも仮想的な性質を持っている。「コンテンツの価格は人の依存度によって決まる」と言ったのは川上量生氏だが、「コンテンツは生きるためにはいらないもの」と言ったのもそうなのだ。先の「熱風」での座談会のお話。

まあ、それでどうしたらよいのっていうと、答えはないのだけど。なるようにしかならないとも言えるが、建設的な意見を言う人もいる。シリコンバレー101 (625) 混乱するし、もったいない! 音楽ストリーミング時代にCD時代のメタデータ | マイナビニュースですね。毎度。

Apple Musicの半分は成功している。「For You」と「New」。いいのか悪いのかよくわからないのが「Radio」と「Connect」。見たらわかるよね。まず見掛けが聴こうという気にならない。見掛けがあまり変化しないからだ。そして、それほど興味があるようなものがない。あるのかどうかも見掛けでわからない。

実際上、ユーザーサイドから見ると「For You」だけでほとんど十分。後は検索して調べる時にメタデータがしっかりしていることが重要との話が山下氏のコラム。

僕が思うのは、その曲なりアルバムを聴こうと思うコンテキストを記録したいというか、外部世界からのつながりみたいな情報が欲しいということ。RadioやConnectにそのような役割が果たせればもっとおもしろくなるかもしれない。

もっとも、現段階で、RadioやConnectに評価を下すのは時期尚早だろう。いろいろと使ってみないとわからないこともある。食わず嫌いでは新しい世界を切り開くことはできない。Connectは音楽にコンテキストをもたらそうとしていることは間違いないし、それには蓄積が必要なのだ。

たまたま昨日Connectを覗くと、アルゲリッチとバレンボイムの共演アルバムらしきものが、バレンボイムの記事になっていた。今朝、試していると、先日聴いたばかりのベートーヴェンのピアノ協奏曲第1番ハ長調が流れてくる。ブエノスアイレスでのライブらしい。共有のためのiTunesへのリンクも取れる。アルゲリッチ&バレンボイム ライブ・イン・ブエノスアイレス(このリンクはつながらないかも)というタイトルだ。アルバムをクリックして開くと「iTunesスタッフメモ」が付いている。まあ、それなりか・・・

Connectの記事にあるリンクを色々試してみると、iTunesの米国サイトへのリンクのようだが開けないものもある。前記のブエノスアイレス・ライブのアルバムの共有のためのURLも開けない。また、開けるリンクもiTunesプレビューのWebサイトにつながるだけで、そこから、iTunes経由で開くことができない。iTunesのダウンロードを促すページで止まってしまう。まだまだ、データや仕組み自体が未完成の感じ。

Connectもユーザーの好みに合わせて、記事を表示しているような感じを受けるが、あまり最初から好みを推定して絞りこむのは危険だと思う。この程度の記事しかないのと思ってしまうからね。一般的なお勧め記事は混ぜるのが常識だと思う。今のところそんな感じで捉えている。「For You」は少しずつクラシックが増えてきたのでよかったと思う。

Radioのほうは聴いた曲のリストは出てくるが、何を聴けるかは運任せだ。Radioの各チャネルの番組表みたいなものがあるといいかもしれない。あれ、今、Beats 1は止まっている。スムースジャズでいこうか。

../images/2015/08/CIMG3867mc.JPGRadioの履歴

ちょっと見辛い写真だけど・・・


あっ、そうそう、「For You」のプレイリストも検索できるとよいかもしれない。新着表示も欲しい。

三か月間を無料としたのはプレビュー段階、α版あるいはβ版レベルだからということもあるだろう。正式サービスとしたらクレームが山ほど来る。Connectの記事の本文は今のところすべて英語だし、一般ユーザーを取り込むためには翻訳も必要だろう。大変だね。

そこまで、完成すれば、1億ユーザーも夢ではないかもしれない。

更新: 2015-08-13T09:43:33+09:00

[Podcast] Rebuild.fm ep105(meetup)、バイリンガルニュース、Talk Python to Me、mozaic.fm、The Ruby Rogues

今日は、Rebuild.fmのmeetupが日経カンファレンスルームであった。アフタショーから加わられたまつもとさんが「Railsは書けない。Cプログラマだからね。」というのが一番おもしろかったが・・・

最近、disるのを真面目に批判するツイートがあって、まあ、適当にいい加減な僕としては割り引いて聞いてるよと思ったけどね。仲間うちの会話なんでしょ。だから好きなことを言っておもしろい。

Rebuild.fmは一応すべて聴き通したので、一週間に一回では最早足りない。話に出てきたポッドキャストを聴きはじめた。

バイリンガルニュースを何回か聴いた。これは日本語と英語の掛け合いがおもしろい。題材に何を選ぶのかが難しいだろうね。

Martin FowlerのPodcastを調べると二つ見つかったので、そのうちの一つ、The Ruby Roguesの最新回を聴いた。英語の勉強だが・・・

Talk Python to Meの英語はクリアで聴きやすい。意味が全部わかるとは言わないけど^^;)

mozaic.fm。これは日本語だけど、最新19回のES7のSideshowを含めて聴いた。ESというのはECMA Scriptのこと。要はJavaScriptの標準のお話。ゲストはWebkitのJavaScriptエンジンを実装している@Constellation氏。20歳、学生とはね。世界を相手に凄い仕事をしている。

既にES6が実装済みということは、ES5対応の「JavaScript 第6版」は最早古くなった。新しく実装されたSymbolが重要な要素らしい。イテレータがJavaScriptで書けるようになったのだそうだ・・・後、Promise - JavaScript | MDNか・・・SymbolもMDNのリンクを残しておこう。Symbol - JavaScript | MDN

WebAssemblyの話もあったね。この流れで行くと、Perl 6のバックエンドにWebAssemblyを選択する前に、JavaScriptが先という話になっていきそうだ。

[プログラミング言語] 開発に何を使うか

基本はPerlにあるのだが、Perl 6を基本におけるようになるにはもう少し時間が掛かるかもしれない。1年ぐらい前にEclipseを使ってAndroidプログラミングを少し試みた。すなわち、Javaプログラミング。簡単なものが、NEXUS 7(2012)で動いた。それはそれ以上発展することはなかったが、最近、何かアプリを作ってみたいという気持ちが湧いてきた。Rebuild.fmのお蔭かもしれない。

Androidプログラミングは、今なら、Android Studioということになるのだろうということは知っていた。少し前にインストールは済ませたが、今日調べると、同時にJavaも1.8.0の64ビット版がインストールされていた。いわゆるJava 8なのだろう。

Rebuild.fmはまつもとさんが出られるぐらいだから、おそらくRuby贔屓になっている。Rails、RubyMotionの話題も多い。どちらかというとJavaにはそっけない。まあ、Oracle社とGoogle社の訴訟が、2010年ぐらいから続いている。JavaのAPIに著作権を認めるという控訴裁の判決に対する上告を、最近、最高裁が却下したことが話題になった。Rebuild.fmもこの話題を取り上げた。ニュース - 米最高裁がGoogleの訴えを却下、OracleとのJava著作権訴訟で:ITproによれば、次はフェアユースかどうかが争われるらしい。Sun MicrosystemsがJavaと一緒にOracleに買収されて以来の問題で、Javaの人気は一時的に低落気味だったが、昨年、Java 8が出たことによって、人気が回復してきたらしい。

そういう話が、TIOBE Software: Tiobe Indexに出ていた。TIOBE Index for August 2015にAugust Headline: Java stronger in the leadとJavaがダントツでCを抜いてトップに立った。iOSの開発言語であるObjective-Cが後継のSwiftの登場で大きく低落したのに対し、Swiftの上昇分はそれを補わず、Javaが大きく上昇したというお話。

まあ、これで、僕のプログラミング言語は、Perl 6か、Java 8か、Swiftか、Rails/Rubyかというところに選択肢は絞られるわけだが・・・もちろん、PythonでもJavaScriptでもよいが、すべてWebブラウザでアプリを作るという方向性がモバイルアプリによって変化しつつある。WebとNativeが融合を始めている。デスクトップとWebを融合させるというコンセプトが、デスクトップCGIだったのだが、当然、他のアプローチが有り得る。モバイルUI/アプリの登場で次第に混沌としてきたのだ。Webは究極的にはハイパーリンクを持つアプリの集合になっていく可能性が高い。Webブラウザを中心に考えると、WebAssemblyからも目が離せないが・・・WebAssembly: Webのためのユニバーサルバイナリとテキストフォーマットのリンクを残しておこう。

更新日記のアプリ化は必然だ。ようやく本格的にそういうことを考えるべきと思い始めた。Webサービス化していく。Webサイトのリソースの問題もあるので、今はスタテッィクなWebページに過ぎない。が、デスクトップで生成したページをWebに送り込んでいるのだから、アプリ的な要素は既にある。今後考えていくものは、単なる日記やブログというよりは、更新日記のような複雑で多様な内容を収容・整理・関連付け可能な、もっと汎用的なフレームワークになるだろう。そのような一種の分類をテストできるように更新日記を意識的に書いてきているとも言える。もっと、抽出やタグ付けのようなものは必要かもしれないが・・・それはPerlと正規表現によるパターンマッチングを使えば簡単にできることだ。

今日はGoogleの方が広島に来られる。Google Cloud Platformがメインテーマだけど、Google App Engineの話もあるようだ。開発言語はJavaかPythonあたりになるのだろう。GAEは前回の話では、Python、Java、PHP、Goということだったが。GCPがどんなことになっているのか、楽しみだね。

今日は雑用、趣味、プライベートと盛りだくさんな一日になる。また、疲れそう^^;)

更新: 2015-08-08T09:33:23+09:00

[プログラミング] 開発に何を使うか II

さて、ZenPhone 2をモバイルデバイスの中心に持ってきたし、身の回りにAndroidデバイスを使っている人もいる。しかし、iPhone/iPadなどのiOSデバイスがモバイル時代の最先端にいることも間違いない。iPad 2はメインのモバイルデバイスだし、自分自身をユーザーとして考えても、iOS/Android両方のアプリ開発を考える必要がある。

ReBuild.fmに登場した開発ツールとしては、RubyMotionとTitaniumがある。前者はRuby、後者はJavaScriptが開発言語だ。威勢よく、Java 8とSwiftを使うと言ったが、スクリプティング言語に慣れているが故に、若干、えーっ、面倒だな、もっと簡単に書けないのと心の中でつぶやきながら、Android Studioを使っている。昨年、JSONで構造化されたデータからHTML5のCanvasを描画するJavaScriptを生成するCGIを、Perlで書きながら思ったのは、やはり面倒だなということ。HTML5/CSS/JavaScriptでも面倒であることは変わりないのだけど。

そんなこんなで、先日、気になっていたRubyMotionを調べると、64bit版のMacを使う必要があるということだった。OS X 10.9 Mavericksが推奨環境だ。我がMacBookをMactrackerで調べると、64bitマシンだし、OS X Yosemite 10.10.4が曲がりなりにも動いている。が、アプリがピョンピョン跳ね続けるし、なかなかスムースに動作するとは言えない。次のバージョンは軽くなるとはいえ、限界があるだろう。メモリ2GBを増やすかなと、Mactrackerを見ると、Appleのスペックでは4GBだが、Actualでは8GBと記載している。確かに、同じ種類のメモリ 1067MHz DDR3は4GBの製品が存在しているので、二枚挿せば8GBになる。

Androidはともかく、iOSプラットフォームを開発の対象とするなら、Macは必須の開発環境となる。実は、MacBookの64bit CPUの性能をフルに生かすにはこれしかないと、今日、メモリが届いたので増設した。増設の作業は裏蓋を取り外すための十字の精密ドライバさえあれば、WebのアップルのサポートサイトやYouTubeなどを参考にして簡単にできるはずだ。MacBookのシステムレポート、ハードウェア概要も8GBのメモリを認識している。アプリの起動が早くなり、これまでの鈍足環境と較べると超快適になった。

が、Cross-platformとは言っても、RubyMotionの中味を見ていくと、Titaniumも同様のようだが、iOSとAndroid、それぞれ書き方は違ってくる。同じソースが使えるわけではないようだ。GUI表現が違うのだから当然ではある。開発言語を一緒にできることがメリットということかな。おそらく新機能に関しては後追いになるだろうしと、いろいろ考えていると二の足を踏みそうになっている。

スクリプティング言語でGUIを持っているのは、Tcl/Tkが有名だ。Webができて、描画にHTMLなどのテキストを使うことになって、Webブラウザがアプリのプラットフォームになると、触ることが少なくなって、遠ざかっていた。しかしながら、GUIを簡単に記述できる表現力は、モバイルの世界で新しい意味を持つかもしれない。調べてみると、AndroWishというアプリがある。インストールして動かしてみたが、Tcl/Tkそのものの感じだった。狭い画面でさらに小さいWindowが動くというのはちょっと無理がある。難しいことだろうが、インターフェース・デザインをAndroidに合わせることができればと思った。まだ、思うように動かせず、未完成な感触。

Perl 5.20はAndroidでも動くようにBuildできるようになってきているが、具体的な使い方が問題になるだろう。期待して見ている。

だいぶ前に、「iPhoneアプリケーション開発ガイド HTML+CSS+JavaScriptによる開発手法」(オライリー・ジャパン、Jonathan Stark著、増井俊之監修、牧野聡訳、2010年)を購入していたことを思い出した。Webアプリケーションをネイティヴ・アプリケーション化するPhoneGapの使い方が書かれているある意味画期的な本である。その前に、WebアプリケーションをiOSアプリとほぼ同じように動作させるにはどうしたらよいかが書かれていて、むしろそのほうが画期的かもしれない。

PhoneGapはほとんどの携帯電話に搭載されている機能を抽象化し、APIを通じて利用できるようにしてくれます。つまり、異なるデバイス上でも同じコードを使ってこれらの機能を利用できます。アプリケーションをデバイスにインストールする際にはベンダーが提供するSDK(Software Development Kit)が必要になりますが、アプリケーションのコード自体には変更は必要ありません。

(上掲書、119ページ)

実際、PhoneGapをAndroid Studioで使う環境を構築するというWebページもある。そうなると、元々の構想のHTML5+CSS3+JavaScriptという構想に戻ってくるわけだが・・・さて、ネイティヴの環境ではないので、RubuMotionやTitanium Mobileと同様の問題を抱えていると予想されるが・・・

そうこうしているうちに、PhoneGapを検索していると引っ掛かってきた大物・・・これは次回に回そう。インストール中^^;)えーっ、そんなことも知らなかったのと言われるかもね・・・知ってはいたけど、PhoneGapと関係があるとは思っていなかったということ。

更新: 2015-08-14T00:07:12+09:00

[プログラミング] 開発に何を使うか III - PhoneGap = Apache Cordova

ようやく、Apple Music騒動は新バージョンの登場で収まったが、昨日からVisual Studio騒動にもはまり込んでいた。PhoneGapはApache Cordovaになっていた。それは、マイクロソフトにも影響を与えていたのだ。Apache Cordovaを使ったマルチプラットフォームの開発がVisual Studioで構想されていた。

レッスン1。Install Visual Studio Tools for Apache Cordova

../images/2015/08/vsc2015_dev_mode.pngMicrosoft Visual Studio Community 2015 開発者モード

レッスン2。Create Your First App Using Visual Studio Tools for Apache Cordova

../images/2015/08/vsc2015_cordova_hello.pngVisual StudioのAndroidエミュレーション

とにかく、知らないということはおそろしいことで、「開発者モードではありません」と言われて、何、開発者モードではない開発環境があるのかと・・・。最初、Blend for Visual Studioというのが立ち上がっていて、惑わされ、New Projectの中に「Blank App (Apache Cordova) JavaScript」が選択肢として出てこないことに苛立っていた。Blend...は、どうもVisual Studioを包含するものではないらしいと気が付いたが、どこで、Visual Studioが立ち上がってきたのかは定かでないし、どのようにして開発者モードになったのかも今一つ覚えていない。Manage ConnectionでTeam ProjectにGitHubを選んで、LocalのGit Repositriesに自動的になんらかの接続を確立してからだと思うけど(GitHubのアカウントが役に立った^^;)。

それはともかく、TypeScriptバージョンのサンプルを選んでしまったのに後から気が付いたが、当然のことながら、問題なく、Helloは動いた。何か自分で少しでも書いたわけではない。インストールして、Debuggingから「F5 Start Debugging」を起動しただけ。環境の構築が適切にできていることの確認だろう。

Apache Cordova用のプロジェクトにあるscriptsフォルダにあるTypeScriptで書かれたスクリプト群は、Microsoft Open Technologies, Inc.の著作権表示があり、the MIT Lisenceで配布されている。MIT License - Wikipediaを参照。重要部分に著作権表示は必要だが、無償・無制限に使用してよいというもっとも緩やかなライセンスだ。

Install tools for iOSによれば、ホストにMacの環境は必要だが、iOSへのインストールもできるような仕組みをリモートで作れるらしい。なかなか凄い。

無料開発ツール - Visual Studio Community 2015を参照。

Xcode、Android Studioから、とうとうMicrosoft Visual Studio Community 2015を試してみることになったのだが、さて、どうしたものか。Apache Cordova(PhoneGap)をベースに考えるのが、最も開発効率がよさそうだが。

もう一つマイクロソフトから出てきたアプリの考え方、MVVM。Model、View、ViewModel。Model View ViewModel - Wikipediaを参照のこと。

当面、HTML5+CSS3+JavaScriptだけでiPhoneのインターフェースをエミュレートする、Jonathan Stark氏の方法を使って、アプリを作るのがよさそうだ。それがプロトタイプになるだろう。

[プログラミング] 開発で何を使うか IV - 結局、Perlという思考変換マシン...

「iPhoneアプリケーション開発ガイド HTML+CSS+JavaScriptによる開発手法」を真面目に読み始めたが、さて、アプリのプロトタイプを三つの言語で構想するのは何かピンとこない。HTMLでModelを考えるのは冗長なので、やはり、Perlで書くことにした。アプリのプロトタイプを考えながら不自由な言語で記述しようとするのは、思考の流れが阻害されて頗る具合が悪いからだ。

しかしながら、PerlのCGIで書いたものをHTML/CSS/JavaScriptに移植することはどういうことなのだろう。CGIはHTML/CSS/JavaScriptそのものを出力するのだけど。Cordova(PhoneGap)と、jQueryとjQTouchをJavaScriptのライブラリとして使う。PhoneGapの機能はモバイルデバイスだけの機能なんだろうねえ。

W3Cを調べると、Device APIs Working Group - W3Cが進んでいけば、すべてはWebアプリで実装できる。それが、WebAssemblyでネイティヴ化すれば、他になにかいるというわけでもない。WebAssembly Community Groupを見ていく必要があるだろう。

Perl 5は5.20でperlandroidというドキュメントが出ているがapkが配布されている状態ではない。環境がないと動かせないから、環境ごと準備が必要だろう。いろいろと調べていると、CCToolsというAndroid上のC/C++のIDEがあって、これが凄い。LuaJitがインストールできることがアピールされている。Add-onを調べるとPerlもあって、インストールしてTerminalで起動してみると、5.18だった。ただ、ライブラリ関係がどうなっているのかはよく調べていない。少なくとも、cpanは起動できなかったし、LWP::Simpleもだめだった。

Androidが今後どうなるのだろうとは思うが、もうプログラミング言語の問題ではないというかね。デザインやコンテンツやコンテキストの問題になっていくだろうと思う。

更新: 2015-08-16T00:48:58+09:00

[プログラミング] 開発で何をつかうか V - MSOpenTechとWindows 10か、Webか

マイクロソフト、オープンソース専門子会社Open Technologiesを再統合 - ZDNet Japanネタ。

Visual Studio Community 2015を使ってみる過程で、Home - MS Open Techを知ることになった。Apache Cordovaを見る限りは、Windows 10への言及が見当たらず、最新状態に更新されているとは言えないが、相当力が入っていることは間違いない。当然のことながら、Windows/Windows Phone中心の世界観であり、iOS/Android開発者をWindowsアプリ開発に引き込むことが目的のように見える。

しかし、このサイトは内容も豊富でかなりよくできているが、異常に重い。注目され、アクセスが多くなっているのではないか。MSOpenTechはWindows系開発者のiOS/Androidアプリ開発への道を開くとも言える。

マイクロソフトが「.Net Foundation」を設立し、オープンソースへの取り組みを本格化 | ReadWrite Japanは、.NET Foundation - .NET Foundation Projectsのような状況になっている。いろいろとあるけど、もっとシンプルにならないのと思うこと頻りである。オープンになったのはよいとして、何ができるのか、何が特徴なのかをわかりやすく説明してほしい。

個人的には、デスクトップ・ローカルの開発でもClient/Serverのフレームワークで、Webの技術を使うのがもっとも合理的と思う。Apache Cordova(PhoneGap)を見るにつけ、Webの表現力が強化され、高速化するにつれて、この方向性は間違いないものになりそうに思える。

fglock/Perlitoは、Perl5/6によるコンパイラだが、Perl5/6のスクリプトをJavaScriptなどにコンパイルできる。CGIも究極まで抽象化すれば、PerlなどがHTML/CSS/JavaScriptのコンパイラになるはずだ。プログラムからデータ(パラメータ)を分離すると、データ駆動型のプログラムのようなものになっていくと予想される。

[Windows] Windows 10 続報 - Windows 10を入手する

「Windows 10を入手する」アイコンが復活したので初めてクリックしてみると、あなたのPCはWindows 10をインストールする準備ができているとのお達し。Windows 10では、DirectX 12が来るはず。性能上、最も問題が起きる可能性のあるグラフィックスボードに問題がないことは昨日確認したので、そうであろうと思っていたが。

昨日、調べたAMDのサイトには、WDDM 2.0の記載もあった。Windows Display Driver Model - WikipediaMicrosoft DirectX - Wikipediaは見ておこう。3D表現が今後は一般化していく。Xboxとの融合が進むということでもある。【後藤弘茂のWeekly海外ニュース】GPUの進化に対応したMicrosoftの次世代API「DirectX 12」の背景 - PC Watchを参照。

OSのアップデートはマシンを買い替えて、性能のアップと一緒にというのが過去の常識。データだけ移行する。古いマシンのまま、アップデートした経験は一度か二度しかない。もう昔のことで忘れてしまった。

互換性のないアプリもないし、データも移行可能と明示された。それなら予約するしかない。

../images/2015/08/2015-08-01_08.23.04m.jpg「Windows 10を入手する」状況

予約とほぼ同時にダウンロードが始まっていた。3GBをダウンロードする必要がある。

Windows 10予約成立のメールが届いた。



[Windows] Windows 10 Proへのアップグレード完了

慎重にと思っていたが、それほどいろいろなアプリをインストールしているわけではないので、データを外付けのUSB-HDDにバックアップしてアップグレードを開始。Windows 8 ProからWindows 8.1 Proへのアップグレード時とあまり変わらない感じだったと思う。Rebuild.fmの過去のエピソード18を聴きながらアップグレードを完了。まったくトラブルなし。

../images/2015/08/CIMG3860m.JPGWindows 10アップグレード画面

USB Radioも最初の起動時は「device not found」になるが、サウンドの録音の設定を有効にすると動き始めた。Windows 8で動作させた時と一緒の対応は必要ということ。

すぐに、XAMPPのApacheやMySQLも動き始めたし、そのまま移行した感じ。結局、UIは変化しているが、中味はWindows Vista/7以降それほど変化はないのではと思う。USB RadioのアプリはWindows 7用のままだ。

Windows 10上のiTunesでApple Musicのビル・エヴァンスの「From Left to Right」を聴きながら書いている。タスクビューからZedをトップに切り替える。これがまあ一番便利かな。開いているアプリをすべてデスクトップに展開して選べるのだ。ウインドウの重なりを掻き分けて選ぶ必要がない。誰にも喜ばれるインターフェースだろう。

すぐ慣れるのだろうけど、フォントが少し小さいバランスになっていて見難い。それから、iTunesのAirPlayで聴くと、音のバランスで高域が強調されている感じを受けるが、音にカチッと芯が出てきて、よくなったのかもしれない。

Zed上のPerlスクリプトも軽々と動く感じだ。GIMPもWinSCPもLivreOfficeも問題ない。もちろん、我がデスクトップCGIも快調だ。

USB Radio以外、システムの設定は何も必要はなかった。そのまま自動移行。

更新: 2015-08-01T18:55:54+09:00

[Windows] Windows 10出だし好調か!?

Windows 10の世界シェア、4日間で2.47%に到達。英国では5%を超える | スラド ITネタ。

Windows Vistaの時は、かなりハードに投資しないとまともに動きそうもなかったので、アップグレードを避けたのだが、時代が追いついてきて、Windows 8は悪くない選択になった。Windows 7よりも起動は早いんじゃないかな。まあ、自宅の方がスペックはかなり上だが。Windows 10はその延長線上にある。

ZenPhone 2のZenLinkのうち、PC LinkとShare Linkを昨日初めて使ってみた。無線LANでつながる。なかなか凄いし、便利だね。Windows 10にアプリをインストールして、そのままOK。

Apple MusicもPCのiTunesからのAirPlayが決まり。