「アーキテクチャ」を含む日記 RSS

はてなキーワード: アーキテクチャとは

2013-11-10

http://anond.hatelabo.jp/20131109185658

技術者の力量を見極めるためには職務経歴は参考程度にして、顧客への納品物以外で個人的にどんなプログラムを作ったかを聞いた方が早いかも。

何だかんだで企業向けシステムの開発って分業制だから一部分しか携われないけど、自分プログラムを作るってのはアーキテクチャ選定、要件定義設計プログラミング最適化etc開発プロセス最初から最後まで責任者立場担当するわけだからね。

パートナーや中途の採用に関してももっとこの点を重視する文化になって欲しい。

2013-11-06

利用したのかされたのか

http://b.hatena.ne.jp/entry/hotentry.hatenablog.jp/entry/2013/11/05/182712

サードブロガーが身内ブクマ問題でひよって謝罪始めたけど、

はてなブックマークお気に入り」を見れば、

はてなが身内によるブクマを禁止してるどころか、ソーシャルとしての可能性にかけてみた。なのは当たり前なんですよ。

じゃあ、なんて君らの行為が批判されたかというと

お前らの記事が単純に

つ ま ら な い か ら 

帰結するんですね。

もはやダブルスタンダードどころじゃない。

俺らは仲間内でも面白い記事ブクマするけど、お前らは仲間内だと糞記事ブクマするからやめろ。

このジャイアンスタイルは、本質的に間違ってない。というか、君らも心当たりあるから謝罪とかしちゃったね。

でも表の理論じゃ狂ってるのよこの理論

というより、自称情強のはてばかブックマーカーが日夜戦い続けてる普遍性という「理不尽空気」そのものなのよ。

ブラック恩恵を受けながら、ブラックを批判する。そういうダブスタこそブックマーカー本質なんだよね。


戦わなきゃ。はてなの新しい空気とかじゃないの君ら?

理論が間違ってるなら、誰かに責任なすりつけて批判とか出来るからはてなというアーキテクチャのせいとか。

なに村人に謝罪回りしてるの?

いや、違うんだよね。

君らは、本来はてななんてどうでもいいと思ってる。

はてなを動かす人達のアホくさい宣伝を「利用」しようとしただけ。

それを「利用」したら、なぜかほかのユーザーに叩かれた。

理不尽だ。でも、よい。だって。君らの目的は、はてなじゃない。

たまたまはてなという利用できるものがあっただけ。

ともだちの空気読んではてぶを利用しようとして怒られたら

ともだちの空気読んではてぶに謝罪する。

へこんだって良いものだって友達が慰めてくれるから

一番慰めてくるのは、アクセスログの人数なんですけどね。

2013-10-31

http://anond.hatelabo.jp/20131031000703

iPhoneは常にオンラインからPassbookQRコードのほうが優れている。という考え方なんだろ。

所詮NFCNFC対応チップが店側に必要からな。店舗の導入コストがかかる。

QRコードiPhone側でのオンライン認証の組み合わせなら店側は既存バーコードリーダーだけでいける。

SUICAのように認証速度を要求されるもの以外は

アーキテクチャー的に優れているのはPassbookなんだが、果たしてどうなることか。

 

NFCiPhoneに組み込むコストのものは、大したことはないが

iPhoneNFC対応することでNFCインフラ世界に広まってしまい、それによりNFC陣営に力を与えることにより

将来Appleが決済インフラ的な優位度から言ってNFC陣営に対して不利になることを考えるとNFC導入が進むかどうか。

課金インフラは常にAppleを通せがAppleの考え方だからなぁ。

2013-09-26

HTML5アプリケーションとかでも良いから誰か名称つけようよ

下見て思った。

http://mizchi.hatenablog.com/entry/2013/09/25/190313

そもそもこのスタイルキー名称が無いため

知識が離散して蓄積されてない気がする。

シングルページスタイルJavaScriptWebアプリケーションアーキテクチャ

ブラウザHTMLで動くよ!

JavaScriptMVCライブラリを利用するよ!

HTML5ヒストリー関連を利用するよ!

REST-APIを利用するよ!

メリットとかデメリットとかはいつか気が向いたら書く。

とりあえず今回は、乱立する名称候補たちを紹介

HTML5 Applications

 なんか一番ポピュラー。だけどカオス

 HTML5って言いたいだけのJavaScrtipt使ったスマホアプリフレームワークとかも呼ばれたり。

Rich Internet Applications

 このスタイル名称じゃなく、もっと汎用的なもん。

 HTML5とか言われる前にJavaScriptアプリケーションやるとこれになってた。

 GWTとかExtJS,YUIとか懐かしい。

Single Page Application

 アーキテクチャとしては、もっとも正解の名前なのだが、NET系界隈でしかきかん。

 ASP.NET MVC Single Page Applicationは、キー要素がかなり詰まってて、参考になる。

 このあたりのやろうとしてる奴は一度触っておくが吉

Large-scale JavaScript aplication

 JavaScriptMVCライブラリAMD等の依存モジュール管理とか

 最近流行を組み合わせて巨大なアプリを作る指針。

 英語ソースだと結構ポピュラーな感じの名前だが、指針的な匂いアプリケーションとは言わない感も。

 日本でも一時期、大規模Javascript開発とか言われてたが、Bakcbone.jsって名前に変わった。

JavaScript Web Applications

 Node.jsと被るために、このアーキテクチャの説明にはあんまり使われない。

 動物本の、

 「ステートフルJavaScript MVCアーキテクチャに基づくWebアプリケーションの状態管理

 原題は、「JavaScript Web Applications」

 これだけで、どのぐらい困ったか分かる感じ。

 ちなみに、JavascriptMVCアーキテクチャの解説本としてはありなので読むが吉

ダイナミックHTML

 マイクロソフト原理主義

 といっても、10年ぐらい前からXHRHTMLDOMほげるのは

 実はあんまり変わってない。

Thin Server Architecture

 Java界隈から出したかっただけ。oracleが呼んでた気がする。

 Struts死んだけど、JSFでやるの?JSF無理筋だから違うフレームワーク作るの。

 JSFみたいな抽象化使い始めると、コボルみたいにJava世界に閉じそうだけど大丈夫なの?

JavaScriptMVC

 同名のライブラリがあるせいであまり使われない名称

 このあたりのライブラリ使えば、簡単にこのスタイルアプリ作れると思ってるでしょ?

 残念ー、あくまでもMVC構造しか提供しないんすよー

Backbone.js

 上記の、キー検索ワード

 ライブラリ名称なのだが、背負ってるものは、大体この界隈全て

 だけど、使えば、この界隈のアプリが簡単に作れるかというと、そうでもない。

と、まあ名前はいっぱいあるけど、知られてないという感じもする

2013-09-18

http://anond.hatelabo.jp/20130917205043

あまちゃん評論などに呑み込まれたのでは。。RT @tkira26 批評空間とか読んでやけにとんがったブログ書いたりする若者が昔はたくさんいたものだが、今そういうインテリ予備層ってどこに行ったのだろ。社会学スター不在な感じだし。そういうのかっこ悪いという反知性主義が勝利したのか。

https://twitter.com/hazuma/status/379425536172240896

頭いい/頭悪いとメジャーマイナーは本来まったく異なっていて、「マイナーだけど頭いい」世界があるとみなが信じていたからこそ思想評論は成立したんだけど、ゼロ年代半ばに若手評論家が「結局勝ち組がいちばん頭いいでしょ、大事なのはメジャーっす」と言い出したので評論は自滅したんですよね。

https://twitter.com/hazuma/status/379426402115674112

しかし、ニコ動でも初音ミクでもあまちゃんでもAKB48でも艦これでもなんでもいいけど、すでに大衆万歳して受け入れているものを難しい言葉でごちゃごちゃ評論するほど滑稽なものはないわけで(マスコミ的には使いやすいけど)、そりゃ評論死ぬよなあと。最近はしみじみ思いますね。

https://twitter.com/hazuma/status/379426928316268544


あと、同じように、評論界では「しっかりシステム作ればあとは自動匿名的におもしろい作品は出てくるんだからアーキテクチャについて考えるほうが作品より刺激的」とかいう風潮が現れたわけだけど、それなら評論なんか書いてないで起業すればいいじゃんと。ここでも評論は死んだよね。

https://twitter.com/hazuma/status/379427504366174208


評論家って、ほんとうは、メジャーな作品についてテレビに出てごちゃごちゃ語るひとではなくて、世の中に知られていないマイナーな才能を見つけこっそり育てたり愛でたりするひとのことを言うんですよ。そういう評論家は本当にいなくなったね。

https://twitter.com/hazuma/status/379428717207891968

2013-09-01

BtoBとBtoCの技術が逆転する時代

アーキテクチャWebオンリー偏見満載で語ってるみる。

ここ10年のBtoBの成果は、共通の技術基盤という妄想のために用意された

複雑大規模で、完全に閉じてて、他には誰も使えないEclipseで動く謎のゴミ

JavaっぽいJavaっぽいJavaっぽい何かで

自分達でも持て余して、パッケージ導入とか、結局Strutsスクラッチ開発だったね。

まあ、商売ネタとしては成立してたけど。

Struts1のサポートが切れる蓋を開けた時の状況は、笑いどころか失笑でした。

からってBtoCも凄かったわけじゃない。

やすいはやいゴミを量産する方向にシフトした。

PHPとかPHPとかPHPとかで

そこで事件が起きる。Railsの登場。

ビジネス的には、あんまりインパクトはなかったこれだが、歴史の転換を説明するのには便利。

Railsアーキテクチャは、エンタープライズアーキテクチャパターンを程よい感じに取りこんでいる。

馬鹿にでも使えるようにしたもので、これが世に放たれた。

そこからBtoCのアーキテクチャの質が一気に上がる。

さんざんdisられるPHPの良さは、その哲学の無さだ。

Perlパクりから始まって、Javaクラスパクッて、Railsも速攻パクった。

最近は、所謂関数言語と分類されるパラダイムも最速でパクてる。

そんな感じで、RailsからパクッたフルスタックMVCフレームワークが一気に広まる。

そしてこれらのフレームワークは、金魚のフンSierにとって銀の銃弾だったStrutsを、

鼻で笑えるもので、Strutsドヤ顔してた彼らは、この時点からPHPerからも見下される存在になった。

ORマッパーを知らないおっさん。お元気?

エース開発リーダーさん。そろそろDIコンテナあたりは使えるようになった?

Javaの方が良いとか言うなら、せめてそのぐらいはフォローしたら良いんじゃないですかね。。。

さらには、大手BtoCのアーキテクチャ公開も普通になる。

アーキテクチャは、もはや商売道具じゃなくなった。

長年の秘伝の味を売りにしてたBtoBアーキテクチャは、

その汚い樽が馬鹿にされる時代突入する。

ただ、これは結果から見たもので、本来の本当の流れは、ネットの普及にある。

BtoCの市場が巨大化し、パイが増えて、それだけ技術者も集まった。

人が多ければ、優秀な人材が集まる確率も増える。

優秀な人材プロダクトを作れば、優秀なプロダクトが生まれる確率もあがる。

から進歩も速くなる。

みんなで作れば凄いものが作れるという勘違いは、決してしないように。

これはアーキテクチャにも影響して、その方向性を決めるようになった。

SOAPRESTなんかがまさに象徴

SOAPは、優れていなかったわけじゃない。ただ単に閉じた世界すぎた。

RESTは、実用的なアーキテクチャなんてほとんど無い。ただみんなが適当にやってたのに名前付けただけだ。

だいたい今はそんな感じで

今後はアーキテクチャはBtoCが主導するだろう。



ただし、これはアーキテクチャの話で、品質はまた別ですよ。

そこの社内SEさん。技術キーワードが凄いからって発注しちゃだめよ。

まともなもんが返ってくると期待しちゃいけない。

BtoBは、この鈍行の間、何もしなかったわけじゃない。

たった数パーセント稼働率を上げるために、何十倍時間や金をかけてきた。

実際、そういうものから仕方が無い。

彼らは、そういった品質に命をかけてきた。

設計書の文字のタイポレビューすると、単価計算で1万円以上は余裕でする。

大手Sier役割は、いつまでも必要だろう。

でも、その住人は、そういうものに命を捧ぐ時代である覚悟しないといけない。

2013-08-20

http://anond.hatelabo.jp/20130819210622

世界最高のMMOと言われるだけあって、WoWの影響はそんなに凄かったってことか。

件のリンクでは「良く出来てるにも程があるけどかかってる金も尋常じゃない。真似できない。」なんて書かれているけど、実際にはその後のMMOの仕組みを大きく変えてしまったみたいだし。

ちなみにECOサービス開始は2005年しかベース劣化ROと言われたほどROシステムらしいので、アーキテクチャとしてはせいぜいゼロ年代初頭~前半期のMMOなんだろう。

そう考えると「お前は10年前の話をしているのか?」と怪訝に思う人間がいるのも頷ける。

その後ゼロ年代半ば頃に登場したWoWの、ユーザにも運営にも多大なメリットをもたらす、まさにWin-Win()な新しいシステムが主流になったことで、ROFF11みたいな仕様踏襲しているタイトルは「もはや古いゲーム」と見なされると。


しかしそうすると、それだけの名作が日本殆ど知られていないし、依然としてプレイの敷居が低くなっていないのが何とも残念に思える。

もちろん日本鯖はないし、今更そんな鯖が作られる可能性は皆無にせよ、日本語UIは色々あるみたいだし、それに今は序盤が無料化されたというけど、あのバタ臭さ半端ないアバターがなあ・・・ゲームを通して目にするもの感覚的に合わないのは結構躊躇させられるというか。

でもやるんだったらWoWクローンではなく、本物をプレイすべきだろうし、悩ましい。

2013-07-26

http://anond.hatelabo.jp/20130726112229

そんなことするより、ジャイロ積んだほうが速いだろ。

カーブ区間は必ず線路が傾くんだから、傾き検知して傾きに応じた速度以上が出ていたらブレーキングすればいいだろ。

 

もっといえばブレーキング必要性すら無い ブザーで十分。運転手が気がつけば減速できる。 ジャイロとブザーだけなら滅茶苦茶安価レトロで、すぐに導入できる。

そんで、危ないところは工事して 手前から線路傾けとけよ。得意だろ鉄道会社

 

必要なのは位置情報じゃなくて路面情報

※急カーブ場合安全に曲がれるように 路面を傾けるよに線路を敷設する

それでもダメな箇所がある場合は、線路にビーコン埋め込めよ。

自動車じゃなくて電車なんだから、集中管理したりGPS管理したりする必要性はない。線路から直接路線情報を読み込んだほうがはるかに速い。

 

↑のソフトならiPhoneでもおそらく作れる。速度情報さえわかれば、速度連動も出来る。 非常に安価に導入できる。 もうちょっとアーキテクチャーを工夫すれば結構いけんだろ

2013-07-10

http://anond.hatelabo.jp/20130710224412

気配りが得意なのは個人レベルの末端のコミュニケーションだけであって、

それはプロジェクトアーキテクチャレベルUXを作り込む頭の良さとは正反対だから

ガントチャートマニュアル作りと接待仕事だと思ってるPMもどきを見てりゃわかるよな。

あれでなんとかなるのはコンビニ店長まで。

2013-06-18

http://gigazine.net/news/20130618-fastest-supercomputers/

スーパーコンピュータ京 コア数は70万5204、計算速度は10.5ペタフロップス、消費電力は12.7MW

Titan コア数は56万640、計算速度は17.6ペタフロップス、消費電力は8.3MW

やはり、Titanの性能がいいな。フロップスだけなら京も悪くないが、消費電力が倍近くて性能が半分。

仕方がないとはいえ、コアの性能というかアーキテクチャーがボトルネックになってるな。

※あくまでも応用事例として

他の分野への技術転用を考えるとダウンサイジング必須でこの排熱量は問題になってくるかもな。

ところで、京ってもう天候予測とかには使われてるの?

2013-06-07

そういう意味では、既存システムが古くなってしまって

現在の以前を参考に動作する官僚機構のようなお役所仕事では立ちいかなくなった。

お役所仕事その物はあっているが、規範が古い

 

まり官僚機構その物にメスを入れて刷新できるような政治家必要だが

調整型と呼ばれる、日本の政治家にそのような能力はなく

政治家が頼っているシンクタンクもまた官僚機構だし、電通に代表されるようなメディア企業は先端のバズワードは知っているが実際には設計できず

電通シンクタンク系のIT企業には、国家レベルの大規模設計を刷新する(過去アーキテクチャーに依存しない)のは難しい。

 

結論から言って、現状 構造改革は進まず もうどうしようも無くなって、全部破壊して焼け野原からスタートしようぜ

みたいになるまで、システムは腐敗を続ける。

なにせ、いまの安倍政権が頼ってるシンクタンクも結局は官僚機構と同じエリート機構なので、同じ官僚機構の刷新は難しいだろう。

 

政治家が調整型ではなく主導型になればまた話は別だが、そんなことが出来る人間外資に行けば数千万お金と、世界レベル仕事を任されるので政治家にはならない。

よって、あー、どうしようねと。

2013-05-22

http://anond.hatelabo.jp/20130522074654

PS3設計がそもそもの混乱の始まりだね。いくらデバイスハブ構想があっても、まず本体を普及させないとダメ。そして本体普及させるのに必要なのはゲームCellはあまりに扱いにくいし、本体価格などもあって、PS3は思うように売れなかった。PS2時代PS2にだけソフト供給すれば良かったけど、海外だとXbox360の方が売れたし、日本だとPS3の方が売れてるから海外でも売ろうとするとマルチにするしかない。すると、PS3Cellアーキテクチャはただの足枷しかWiiの方がさらに売れたから、Wiiハブってたサードはさらに苦境になってる。その結果としてソーシャル(笑)に逃げてしまってますますゲームが作れない悲惨なことになってる。PS4はその反省をふまえて作りやすゲーム機にしたけど、もうダメだね。ソニーがなくなるのがゲーム業界を救う一番の方法だな。

2013-05-14

プログラミング大好き男に「どの言語が好き?」と訊ねられたとき、女はどう答えたらいいの?

あ、まず前提として、

貴女プログラミング大好き男を夢中にさせることが、

はたして貴女幸福にするかどうか、それはまた別問題だけれど。

はいえ、プログラミング大好き男たちは玉石混交ながら、

IT系の超かしこい男なども多く、

多くっつーかIT系でないのにプログラミング大好き男っていうのは超かしこ学生まぁこれは有望株)か研究者系なんか、

あとはまったくかしこくもないクセに頭いいつもりして「Lispやってます(キリッ ハローワールドくらいですが」とか言っちゃうアホしかいないわけで、

したがって、釣り師たる女たちにとっては、

なかなかあなどれない釣り場です。

では、プログラミング大好き男に「どの言語が好き?」と訊ねられたとき

貴女は、どう答えれば理想的でしょう?

まず最初に、その男COBOLのようなタイプレガシーコード

あとはC/C++、そして(TechEdに参加するほどではないけれど)VisualBasicが大好きな、

そんなタイプ場合は、

貴女はかれの目を見て、微笑みとともに質問など無視して、こう言いましょう、

「わたしが、仕様書を作ってあげる♪」

これこそまさに必殺の答えです。

そこでプログラミング大好き男が、えへへ、とやにさがったならば、

貴女は、ひそかに、「コピペ量産しやすい技術的ポイントを抑えた仕様書」あたりを

ひそかに練習しておきましょう。これで成功まちがいなしです。

しかし、ここでは、もう少しハイブロウな(?)いわゆるプログラミング好きの男の

落とし方をお伝えしましょう。

この場合貴女は、こう答えましょう、

「わたしは、JVM上のScalaが好き。

型推論もあるしラムダ式クロージャスクリプト言語みたいに書けるの、豊富組み込みのコレクションメソッドはいつも便利だし、

XMLリテラルCaseクラスによるパターンマッチもTraitベースMixi-inも、大好き♪」

もしも貴女がそう答えたならば、

その瞬間、プログラミング大好き男の目はきらりと輝き、

かれの貴女への恋心は、

20%増量になるでしょう。

なぜって、Scalaは、

ちょっぴりお洒落Ruby風味に記述できて、

Maybeモナド差し込んで、

コンパイルは遅いながらも、そこがまた

ちょっぴりメモリを多く積めばいい富豪プログラミングみたいなふんいきをかもしだしていて。

しか関数型言語としての不変変数・不変Listを実装して

質高くふるまっていて、なおかつ、

JVM上で動くくせにJavaが「やるやる」と言ったまま実装してなかったラムダ式と仮想拡張メソッド型推論を実装した功績もあって。

したがってScalaこそは、

本来なんの接点もないまったく縁もゆかりもない別々の世界に生きている、

インタプリタ言語大好きな綺麗系OLと、玉もあれば石も混じっている、そんなプログラミング大好き男たちが、

この世界で唯一(いいえ、JVM系列のJRubyClojure と並んで唯三)遭遇しうる場所です。


では、参考までに、危険な回答を挙げておきましょう。

プログラミング大好き男に「どの言語が好き?」と訊ねられたとき

貴女がこう答えたとしましょう、

MicrosoftVisual Basic for Applicationが好き♪ 週3回は Excelコーディングするの。」

その瞬間、プログラミング大好き男の貴女への恋心は消えます、

なるほどMicrosoftは、世界最大のOS供給メーカー

特にOfficeは平凡ながら、ま、無難にまとめてあるものの、

しかし、「新UIのリボンUI!」「メトロUI対応!」とかなんとか無意味な自慢を吹聴し、

VBAはさらプログラミングについての謬見を撒き散らした罪がありますからプログラミング大好き男にとっては天敵なんです。

ティーガー戦車乗りのオットー・カリウスは「ティーガー乗りなら誰でも片側の履帯がはずれ僚車に牽引されて帰ってきた経験を持つはずだ」 って言ったけど

社内SESIerなら誰でもクソみたいな前任者が書いたクソみたいなExcel-VBAコードを直した経験があるはずなんです。

また、もしも貴女が「PHPが大好き♪ あたしが書いたPHPのWebサイトが、さくらサーバに7件あるよ♪」

と答えたとしても、同様の効果をもたらすでしょう、

なぜって、PHPは、1990年代にはWeb系を目指す人にとっては簡単で要件を満たすWebサイトが簡単に作れる輝きの道だったものの、

しかし2000年代うそうからセキュリティ関係の問題で転落し、

いまや、あの貧弱な言語能力では、Rubyの魅力に遥かに及びません。

(注1)

またもしもたとえあなたプログラミング言語が大好きで、

「わたし、.NET FrameworkのC#が好き、フォームアプリでも書くけど、

最高に好きなのはASP.net♪ SQLServer連携も、ajax control toolkitもすっごくおいしいの。」

と、答えたとしたらどうでしょう

なるほど、貴女の趣味は高く、

しか.NET Frameworkは、C# が cool であるのみならず、

.NET Framework上で動く F# や IronPythonIronRubyマネーJScriptも最高においしいんですけれど、

しかし、貴女の答えを聞いて、プログラミング大好き男はきっとおもうでしょう、

(なんだよ、MS信者な女だな、カネかかりそう)って。

(注2)

貴女が、プログラミングが大好きで、言語の名を挙げるにしても、

たとえば、JavaScript(node.js)ならば安心でしょう、

なぜならば、JavaScriptは、かけだしのプログラミング初心者にもマニアにもともに愛されるめずらしい言語で、

貴女がその名前を挙げても必ずしも、(jQueryがやっとの初心者と思われることはあっても)あなたプログラミング言語おた宣言をしているとは受け取られないでしょう。

しろへぇ。ちゃんとprototypeは使ってる?」と聞かれたら「当たり前じゃない。むしろnode.jsでいいMVCフレームワークが分からないんだけど…」と話を振ってみましょう。

男は嬉々として、30個くらいのnode.jsフレームワークを教えてくれることでしょう。(まぁどれもどれで帯に短し襷に長しなんですが)

あるいはRighno上で動かしたコードをnodeへ移植する話とか、CoffeeScript、甚だしきはClojureScriptを振ってみてもいいかもしれません。

しかし、たとえば、世界が(つーか竹内先生ポール・グレアムが)誇る超絶関数型言語の名作、Common Lispにせよ、

selfと書きまくることと海外で使われてることに定評のあるPythonにせよ、

バージョンアップごとに言語仕様が変わり、かなり素敵なものではあるもののobsolatedな罠にはまりやすRubyにせよ、

まったく読めない$_だらけで頭悪い仕様リセットしてPerl6にする(そしてまた全く読めない)Perlにせよ、

気さくなクジラ飛行机さんがふるまう素敵においしい日本語プログラミング言語ひまわりなでしこにせよ、

基地外トリッキー言語の代表BrainFxck・Glass・Missa・WhiteSpaceにせよ、

そういう言語名前をいきなり挙げるのは、ちょっぴり微妙。

ましてや貴女が、「Haskellが大好き♪ わたし、プロジェクトオイラーの問題もうほとんどHaskellで、解いちゃった♪」

と答えたならば、どうでしょう

これはかなり博打な答え方で、

なるほど、Haskellは、純粋関数型でありつつも副作用のある操作が行える超絶名言語ゆえ、

あなたがそう答えた瞬間、プログラミング大好き男がいきなり超笑顔になって、

へぇ、やっぱりHaskellなら大抵の問題は4行以内くらいで解いちゃった?」とか言いながら

鼻の下がだら~んと伸びちゃう可能性もあるにはありますが、

しかし、逆に、(なんだよ、この女、プログラミングおたくかよ)とおもわれて、どん引きされる可能性もまた大です、

なぜって、必ずしもプログラミング大好き男がプログラミング大好き女を好きになるとは、限らないですから

しかも、この答えには、もうひとつ問題があって、

男たちは、女を導き高みへ引き上げてあげることが大好きゆえ、

もしも貴女が、「Haskellが大好き♪」なんて言ってしまうと、

そこにはもはや、男が貴女圏論モナド教育する余地がまったく残されていません、

したがって貴女のその答えは、

プログラミング大好き男の貴女への夢を潰してしまうことに他なりません。

ま、ざっとそんな感じです、貴女の目にはプログラマーたちはバカでスケベで鈍感に見えるでしょうが

しかし、ああ見せて、プログラマープログラマーで繊細で、おざなりに扱われると傷つきやすく、ローカル変数名前一つにも気を使い、女と自分の将来に夢を持っています、

貴女の答え方ひとつで、プログラマー貴女への夢は大きくふくらみもすれば、

一瞬で、しぼんでしまいもするでしょう。


では、スキットを繰り返しましょう。

「わたしは、JVM上のScalaが好き。

型推論もあるしラムダ式クロージャスクリプト言語みたいに書けるの、豊富組み込みのコレクションメソッドはいつも便利だし、

XMLリテラルCaseクラスによるパターンマッチもTraitベースMixi-inも、大好き♪」

そして、その瞬間、プログラミング大好き男の目がらんらんと輝いたなら、

貴女はこう重ねましょう、

それからね、いま、わたしが使ってみたいWebアーキテクチャは、

Play Framework、素敵なリアルタイム嗜好のアーキテクチャって噂を聞いたから。

あなたのお暇なときがあったら、わたしをPlayへ連れてって♪」

これでもう完璧です。

PlayFrameworkと、Play(遊ぶ・じゃれる)のダブルミーニングでかれの股間も刺激しちゃえます。

そうなったらこっちのもの

デートの日には、ペアプロ用に Happy Hacking Keyboard をばっちり決めて、かわいい下着をつけて(注3)、

github.comの通販で売ってるoctcatのTシャツか、facebookの「いいね!ボタンがムネのところにあるTシャツ、 あるいは初音ミク(ないし彼のお気に入りアニメキャラ。北米ならMyLittlePonyで鉄板なんだけど)のコスプレを着てゆきましょう。

その日からプログラミング大好き男は貴女の虜になるでしょう。

では、釣り師としての貴女の、愛の幸運幸福をお祈りします!

注1:

(と、書いたもののPHPの現状をよく知りません。グローバル変数だらけになるのとか旧ASPみたいなもんなのかなぁ。count($array); とか書くのアホと思うがpythonも同じだった)

(あと、マジで機能とかTwitter連携とか診断メーカー的なのでもPHPで7つも作ってる女子居たら付き合いたい)

注2:

もっとも。objective-Cなんていう言語をやることに比べれば個人で行う程度なら金のかからない手法もなくはないのですが。

注3:

プログラマーにとっての「かわいい下着」と、女性にとっての「かわいい下着」の定義にずれがあるので注意。

半数くらいのプログラマーしましまぱんつが可愛いと思ってる気がするので、妙齢の女性が着用するには抵抗あると思うが、ボーダー柄のコットンショーツ(ただしキャラ絵のは除く)とか、

過度でないていどにフリルがついたものオススメ。また、色は、レッドだとプログラミング大好き男は引いてしまう(だってそれはコンパイルエラーときの色だ)ので、薄ピンクホワイト、薄ブルー、せめて黒(に差し色でピンクとか)あたりに留めたい。

補記:

 元ネタhttp://tabelog.com/tokyo/A1301/A130101/13002457/dtlrvwlst/3464106/

補記2:

  「プログラマー」か「プログラマ」かの問題については、特に意味は無いが前者を採用した。

補記3:

 言うまでも無いけど、ネタです。 

 また、COBOLとVB、C++ではまったくもって難易度が違うことも分かっています。後者になるほど圧倒的に難しい。

2013-05-09

http://www.nikkei.com/article/DGXNASGG08015_Y3A500C1EA1000/

新たなアーキテクチャーを創設するくらいならオープンソース分散並列(OpenMP-MPI)のハイブリッド(CPU-GPU)数値処理ソフトウェア開発に力を入れたほうがいい。

少なくともオープンソースで動くOpenMP-MPI CPU-GPUの基本的な数値計算ソフト(特に行列計算)は世界最先端研究内容。こういったソフトを毎回アーキテクチャーごとに作るのは金の無駄だし、x86-x64環境で動くようにすればいい。

現状の数値シミュレーションなんてKrylov methodなどの行列処理が主な作業なんだから、それを汎用アーキテクチャで使えるようにしたほうがいい。CPU-GPUOpenMP-MPIで動く行列処理のソフトがあればそれが汎用の処理として使えるんだからくそみたいにコンパイルがめんどくさいアーキテクチャを作るくらいなら、汎用で使えるオープンソースソフトを作れよ。



そんなコードがTrilinosなんだけどね。

2013-02-23

ぼくのかんがえたPS4分析 - SONY製造業としての業から解き放たれたPS4

http://anond.hatelabo.jp/20130223090512

に触発されて俺なりのPS4分析をしてみた。

ハードウエア製造業の夢より、ソフトウエアクリエイタの夢 - ハードからソフトへと言う現実

一言で言うと↑これがPS4だと思う。

三行でまとめると

PSのビジネスモデルを振り返ってみるのだが、この切り口から行くとPSはSONY半導体戦略、そしてSONY製造業と言う性質とと切っても切れない関係がある。

利用上の注意

なおすべて妄想となっておりますので、これを真に受けて被った損害などについては一切責任を取れません。皆様におかれましてはその旨ご了解のうえご覧いただけますよう、よろしくお願いいたします。ご協力頂けない場合につきましては、いい歳こいたアラフォーの髭ヅラ男が涙目になると言う非常にウザイ状況が発生することとなり、誰も得をしません。ご理解とご協力をお願いいたします。

PSの歴史SONY戦略について

初代PSとそれがもたらしたもの

SONYゲーム機を一緒につくろうと言って任天堂に近づいたものの交渉が決裂してできあがったのがPSであったわけだがこれが大ヒット。

さらにPSでは、内部で使われている半導体を自社設計・自社かそれに近いFabで作る事によって

など副次的な効果もあり、さらに「SONYの旗艦」といったイメージを作り上げることができた。この他に、CD-ROMを手がける部門や、SONYのCDプレス工場部門等々、PS景気により、直接的なPSによって生み出される効果以外に、PSという揺るぎない需要存在する事で、設備投資などに積極的になれたといった効果がうまれた。

PS2では完璧芸術品であったDreamcastを殺すほど大成功

初代は始めどこまで意図されいたかは不明だが2台目ではそれらの経験が生かされる事となりより強化された。まず一番は半導体工場で有り、旺盛なその需要と、それによって得られた利益投資に回し新プロセスを開発、シュリンクすることによって最終的な黒字を目指すことで赤字で販売をスタートすることとなる。

ゲームハード赤字でも、ソフトが売れれば黒字。こんなの当たり前だろ、と言う話であるが、総合情報機器メーカであるSONYでは少し事情が異なる。これは、ソフトウエアライセンス事業による利益によって、間接的に半導体生産設備投資を補填すると言う形を意味する。もちろんそれ以外にもSONYの製造部門にもPS2赤字でも販売すると言う行為によってもたらされる間接的な利益が流れた。

ご存じの通り、PSは我が愛する芸術品たる至高のゲーム機Dreamcastを完膚なきまで叩きのめし世界最高の企業セガプラットフォームから引きずり卸しパチンコ屋に買われる所まで追い込む等大成功をとげた。そしてゲーム機生産により、SONY製造業部門を引っ張っていくという当初の見込みは大成功した。

それをさらに強化したのがPS3、そしてCellであった。

PS3Cell BE が見た夢

PS3時代になると、パソコンの旺盛な需要の元、急速に進化した集積回路は、プロセッサの新規開発コストさら半導体プロセス開発に必要な資金が膨大に膨らむという現実に、様々な企業が立ち向かうよう時代が来ていた。世界の巨人たるIntelと、それ以外という構図が生まれ、世界中でFabの統廃合が進んでいた。

その中で目をつけられたのがゲーム機という存在であるパソコンに対抗できるほどの膨大な需要を生むゲーム機は、薄利という性質を持ちながらも数が出るため、生産設備を拡大しやすプロセス開発の資金を捻出する事に有利であった。さらSONYは、ゲームハードウエアが、当時のパソコンなどに比べて圧倒的に高い性能を持っていなければ存在価値が無い、と言う観念を持っていた。これはかつて任天堂がもっていた思想であった。

さらIBMなどの思惑とも一致、開発がされたのがCell B.E.であり、この存在PS3を生んだ。そう、ここまで来てSONYは、半導体のためにゲーム機デザインしたのである

もちろんこの説にはいろいろな異論はある。しかし俺は順序としては、ソニーグループ全体の長期的な戦略にPSが生む半導体工場の増設という戦略が大規模に組み込まれていたのは間違いないのでは無いかとみている。そこで完成したマシンは、化け物であった。現在まで続く潮流であるGPGPU的な動作もこなCell B.Eがもたらす高性能と、高い拡張性を備え、既にゲーム機では無いとまで言わしめるものができた。この性能は当時の最新鋭コンピュータを大幅に上回るものであった。

しかし……。GPGPU概念は早すぎた。性能を引き出すことが、当人であるSONYでも難しかったのである。そしてこれはミドルウエアや開発ツールの乏しさにも繋がる。そのためスタートアップに失敗した。この失敗は、PSがゲーム機として優れていなかった、あるいは、他者装置に負けた、と言う意味で失敗では無い。製造業としてのSONYが、自社の思惑通りに事を運べなかったと言う事での失敗である

ハードウエアの夢、ソフトウエアの夢

結果SONYは、PS3需要を当て込んだ生産設備リストラ・売却するなどの対処をを迫られる。さら韓国勢などの追い上げ、AV市場の急速な変化、SONY本体の体力の低下、パソコン高速化などにも影響を受けることになる。

PS3のものは、OSの改良、ミドルウエアや開発ツールの向上などにゆっくりではあるが立ち上がってきたが、製造業としてのSONYPS3に期待した効果は得られず、ハードウエア屋、製造業がみた夢はここに破れた。

さら時代は動き、集積回路は、Intelプロセスで1世代以上先を行き、それ以外はすべて後から追うという構図が完全に定着してしまった。SONYも、SONY半導体と言えば、集積回路ではなく画像素子、と言う時代が来て久しい。世界中半導体製造業者の統廃合は進み、国内半導体産業は衰退した。新プロセス開発の難易度や、集積回路の大規模化から来る開発コストの上昇はいかんともしがたくなっていた。

ゲーム必要とするスペックはもはや飽和している。少しでもリアルに、少しでも高性能にと言う方面はすでにマニアのものだけになってしまい、それら需要だけで、そのとき販売されているパソコンを上回る高性能チップを開発、載せるコストを満たすことはできなくなっていた。具体的に言えば、ウルトラハイスペックの、GeForece GTX SLIクラスにも勝ちうるGPUを、専用設計オーバーヘッドを極力少なくすることができるとはいえ新規設計することが難しくなっていたのであるさらにはゲーム機業界ではスペック競争を離れた任天堂Wii、あるいはDSを生み出し、ケータイ、そしてスマフォとと言う存在カジュアルゲーム市場をかっさらうようになった。特に日本では据え置きゲーム機リビングルームに置かれ、パーソナルな空間に置いてゲーム機携帯ゲーム機になったのである

そして決定的だったのが、ゲームエンジンの躍進と越境であろう。従来はゲームエンジン製作環境ゲーム会社門外不出のものであった。しかしそれらが会社を通じて流通し始め、さらには専門業者も現れるようになったのである

家庭用ゲーム機と言えば、ゲーム機の性能を引き出すためにソフトごとにアセンブラ最適化チューニングを施す。それを行っても常に動作が一定になることがメリットとして、パソコンに比べてゲームは常に一定の動作をすることが担保できるためにゲーム製作に専念することができた。しかし、パソコンは十分に高性能になった。家庭用ゲーム機も十分に高性能になった。その結果、チューニングを行わなくてもそこそこの画面が作れるようになってきたのである。そこで余った能力ゲームエンジンオーバーヘッドを許容するようになり、ゲームエンジンの躍進に繋がった。さらゲームエンジンプラットフォーム間の差異すら吸収し始めた。あるゲームエンジン採用すれば、あまり手間をかけること無く、パソコン版、PS版、XBOX版、Wii版と複数プラットフォームで出せるようになったのである。これは、ゲームエンジンが新たなるゲーミングプラットフォームとして君臨する可能性を示唆していた。

しかし、チューニングなどといった、ユーザとは直接関係の無い部分に手間をかける必要が無く、作ったゲームがどこでも動く。これはクリエイタとしては非常にありがたい事なのでは無いか

ビジネス書に出てくる例えがある。ユーザねじ回しが欲しいのでは無い。ねじを回したいのである。同じように、客はゲームがしたい、もっといえば楽しいことがしたいのであって、別にゲーム機が欲しいわけでは無いのであるクリエイタはゲームを作りたいのであって、ゲームハードウエアを使いたいわけでは無いのである。ここに合致したのがクロスプラットフォームゲームエンジンであり、そしてこれらはクリエイタに作りやす環境提供し始めた。さらゲームエンジンは新たに現れたライバルであるタブレット/スマートフォンにも対応している。

しかゲームエンジンの躍進は、プラットフォームビジネス崩壊意味したし、PS3は性能を引き出すには高いレベルの専門的チューニング必要であった。しかゲームエンジンはそこにコストを払う事を選択せず、PS3は高い性能を持ちながらも、それ以外のあまり高性能ではないプラットフォームとほぼ同等、せいぜい高解像度テクスチャーに入れ替えられた程度のゲームしか提供されない、と言った事が発生するようになっていた。

ソフトウエアの夢が花開くのがPS4,PSVita

そしてPS4が出た。

PS4は有り体に言って、x86-64アーキテクチャコンピュータに、OpenGL/CL対応GPUを搭載した、本質的にはそこらのパソコンと変わらない構成である

さらに言えば、最新のCorei7+GeForce GTX…と行かなくとも、そこらのパソコンに較べ、性能は高くない。しかし、根本的にゲーム専用機が持つ、汎用パソコンには無い特徴

を備えている。さらには、GPUを扱いにくくする要因の一つとして上げられる、GPUCPUメモリ転送をほぼ考えなくて良いと言う仕様を打ち出してきた。これはCellCPUプログラミングが分断され、非常に開発を困難にしていたPS3反省ダイレクトに生かしてきたと考えられる。これはAMDが出していたコンセプトだ、と話題に上がるが、あくまでもパソコンの話であって、ゲーム機の分野では少なくとも、PS2プログラミングが困難な部分を、高速なバスで繋ぐことで隠蔽するよな仕様であったように記憶している。

さらx86-64アーキテクチャにしたことで、ゲームエンジンがPC向けエンジンの次に、素早くPSにも対応できる素地を整えた。Power向けに施す必要のあるチューニング不要にしたのである。従来はパソコンで開発されたクロスプラットフォームゲームは、パソコン向けと、家庭用ゲーム機向けの2種類作られた。そして家庭用ゲーム機向けは往々にして、ターゲットとなるハードウエアの中で一番性能の低いところに合わせたデータで作られた。平たく言えばPS3の方がXBOX360よりもはるか映像表現は優れているのに(※ただし使いこなせれば) XBOX360との差異はテクスチャムービー解像度程度の違いだけになってしまう事を意味していた。しかx86-64にしたことで、家庭用ゲーム機向けに統一してダウングレードされたデータからPS版を生成させるのではなく、パソコン向けのデータから生成させた方が早いと言う状況を作り出し、他の家庭用ゲーム機にくらべてアドバンテージを得ようとしているのでは無いだろうか。これはPS VitaARM採用したことも同じ事である

さらに、SONYは、PSVitaから進めてきた戦略として、自社による強力にプラットフォーム感の差異を吸収するミドルウエア群…これはゲームエンジンと読んでも良いのかも知れないが…を提供してくるだろう。x86ならば従来の資産を生かすこともできるし、世の中に出ているコンピュータ向けのライブラリも利用できる。急速に開発しやす環境を立ち上げているのではないだろうか。これはゲームエンジンにより脅かされる、プラットフォームビジネスへの対抗措置でもあるだろう。

これにより「雑事に捕らわれること無く、ゲームの楽しさ・表現のものに専念する」と言うクリエイタの夢を叶えるハードウエア、それがPS4であろうと思う。

平たく行ってしまうと、自社の半導体商売が死んだことにより、その死絡みから解き放たれたPSは、クリエイタ主導でゲームを作ると言う根本に立ち返って作ったのがPS4だ、と言う話である

しかしこれだとハードウエア製造業の夢はどうなってしまうのだろうか?そしてユーザ別にクリエイタの夢などはどうでもいい。下手をすると高性能なハードウエアを所有していると言う欲を満たせなくなる分だけこちらの方がまずいかも知れない。それをどうカバーするのか?と言う話になる。

「夢」PS4

ハードウエア/製造業の夢はどうなるのか

SONYは、次世代戦略として明らかにソフトウエア重視に舵を切っている。SONYは今、収支から見ると製造業では無く金融業であるが、その次に利益を生み出しているのは音楽映像ソフト部門とゲーム部門である

まずはここを潰してしまっては会社として立ち行かなくなる。それはまずい。ではどうするかというと、従来の「製造業としてのSONYを強くするために、PSの需要を利用する」のではなく「コンテンツ・製造複合体としてのSONYの核にPSを据え、関連商品を生み出す形で恩恵を得る」と言う形に舵を切ってくることになる。PS3でも一部行われているが、たとえばPSのリモートプレイを可能にするパソコンタブレット、PSを再生装置としてコンテンツ供給できるメディアサーバといった具合である

しかしこれらに対応させるために大切なPS本体の魅力を失わせては困ると言う事は強く意識されなければならないし、意識されていくだろうと思う。

ユーザの夢はどうなるのか

ユーザの夢は、将来的には作りやすゲームプラットフォームが生み出す新しいコンテンツという形で満たされることになるだろうが、直近では、ソーシャルへの展開という形で示されていると思う。将来的にはいかにコンテンツを集められるかと言う事にかかっている。が、ぶっちゃけていうとユーザから見たら、これほど夢の無い話は無いと言わざるをえない。

今回発表されたタイトルデモなどは実際にはチャンピオンで有り、実際にプレイして得られるのはPS3とそれほど感覚的に、革新的に良くなったと感じる部分は薄いと思う。この点で、PS4は、PS3と実働コンテンツはそれほど変わらないと思っている。マイナーバージョンアップ程度。パソコンWindows XPで評価が固まったようなものである。これはおそらく次に発表される新型Xboxでも同じだ。任天堂は少し別格の応えを出したが苦戦している。

結論 またしてもセガは早すぎた

かつてセガが出した芸術品とも言える至高のゲーム機DreamcastOSWindows CEを搭載した。プロセッサこそ独自であったがそれは当時のWIndows CEではあたりまえであり、むしろそこにWindowsと言う汎用のソフトウエアを利用したことで非常にゲームが開発しやすく、PCゲーム移植やす環境を作り上げた。それらはアーケードのnaomiプラットフォームや、ワンチップで埋め込まれたパチンコなどで今でも生き続ける。

任天堂WiiUコントローラに画面をつけDreamcastに追いついたように、SONYは、PS4で作りやすゲーム機という点で追いついたと言える。

またしてもセガは早すぎた。時代セガに追いついていなかったのであるDreamcastはその名の通り「夢を投げる」存在であったのだ。

PlayStation4は夢が無い」という幻想をぶち壊す

最初に言っておくと、増田SCEが嫌いな方でPS3Vitaも持っていない。

PSPスパロボの新作が出るまで持っていなかったほどだ。

そんな増田だが、PlayStation4発表でのハードウェアに対する誤解の数々を見てちょっとばかり怒りを覚えたので少し書いておく

x86」ではなく「AMD64

いきなり「何が違うんだ?」と思う人や「何も違わないだろ?」と言う人も居るかも知れない。

だが後半を語る上でもこれは重要な話なので省略しないでおく。

最近PCは当たり前のように64bitのメモリ空間を扱えるようになった。

この増田を読んでる人でも64bit OSを使っている人は少なくないはずだ。

これをもたらしたのは、x86 CPUを作ったIntelではなくx86互換CPUを作っていたAMDである

じゃあIntelは何をしていたのかと言うと、64bit CPUを作っていた。x86を完全に捨てて。

Intelは「IA-64」という64bit CPUを開発して商品も出していたが、これは現在ではほぼ完全に消えている。

何故かと言うと、x86が動かなかったからだ。

確かにIA-64は64bitをネイティブで扱えて「x86の古臭い負債」が全く無かった。しかし、現実世界x86で作られた既存ソフトウェアを求めたのだ。ゲーム業界でも似たような話を聞いた気もする。

それに対して、AMDは「64bitを扱えるx86」を作ってしまった。これが「AMD64」であり、現在業界標準としてx86-64と呼ばれているものである

知っての通り、x86-64現在Intel CPUでも対応している。AMDが作った命令を使わされる事になったIntelは何を思っただろうか。逆に、これまでIntelの命令を使ってきたAMDは何を思っていたのだろう。

Cellが目指した「理想的」なヘテロジニアスコンピューティングGPUが実現した「現実的」なヘテロジニアスコンピューティング

PS3に搭載されていたCellは、非x86スカラプロセッサPowerPC CPU(PPE)と、複数のベクトルプロセッサSPEを組み合わせたヘテロジニアス(非対称)プロセッサだった。(スカラベクトルについてはググろう)

スカラプロセッサが得意な処理、ベクトルプロセッサが得意な処理を両方とも高速に実行できる。それがCellの目指した「夢」だった。

しかし、知っての通りCellが目指した夢は破れた。

スカラプロセッサベクトルプロセッサプログラム最適化は全く別の概念で、プログラマーにとっては野球サッカーを同時にやらされるような物である

しかも、スカラプロセッサベクトルプロセッサの間でデータの交換もある。野球サッカーキャッチボールて。

スーパーコンピュータ「京」スカラベクトルの合わせ業で池田某氏に何度も叩かれるほどの超絶難産だった事は記憶に新し…いっけ?

それが原因でPS3の性能を最大限に引き出したソフトほとんど存在せず、こともあろうにXbox360とのマルチソフトが溢れる結果となった。(ちなみに増田360も持ってないのでエルシャダイプレイ出来ていない、問題だ)

それに対し、PC世界ではPS3360が発売してしばらく後に新たなヘテロジニアスコンピューティングが生まれていた。

CPUに比べて進化が止まらないGPUベクトルプロセッサの代わりとして使う試みだ。

GPUスパコン用のベクトルプロセッサCellSPEと違い、最近のどのPCにも搭載されているので量産効果で割安というメリットがある。

DirectXバージョンも2桁に突入機能が増えるにつれて、「もうこれで計算すれば良いんじゃね?」となったわけだ。

結論から言うとこの試みは無茶苦茶ヒットした。近年開発されたTOP500スパコンGPUが使われていないものを探すのが難しくなってきたし、

最近Photoshopなんかの比較的身近なツールもGPUコンピューティング対応してきてヌルヌル動くようになっている。

しかし、そんなGPUにも欠点はある。「CPUメモリから絶望的に遠い」のだ。

IBM発明MS-DOSWindowsが動くことで爆発的に普及した今のPCは、GPUを外付けにすること前提で設計されていた。

DirectXOpenGLのような例外を除いて、基本的に現代OSCPUとメインメモリソフトを動かすように出来ている。

GPUも、一旦メインメモリ上でGPURAMに載せるためのデータを生成し、CPUからGPU動かすよー」という命令を出さなければ動かせないのだ。

これはGPUにとって致命的すぎる欠点だった。これが原因で、遅さを跳ね返せる最新のミドルレンジハイエンドGPUでなければ逆にCPUより遅くなってしまうケースばかりだ。

現実的な理由で始まったGPUコンピューティングがぶち当たった現実的な壁である

CPUGPUAPU(加速するプロセッサ)の夢

このGPU欠点を克服する方法について、AMDはかなり前(少なくともGPUコンピューティング流行るより前の2007年以前)から取り組んでいた。

GPUコンピューティングが遅いのはCPUから物理的に遠いため命令を送る時間が掛かり、メモリの扱いも異なるせいである。

なら同じ場所に載せてしまえば良いのだ。

CPUからGPUに命令を送る遅延を無くし、CPUメモリGPUメモリを交換する時間も減らせばGPUコンピューティングデメリットは消え失せる。

夢のある話だ。

しかし、AMDには発想と設計技術はあったがカネと製造技術Intelと比べて絶望的に劣っていたため、

初めてのCPUGPU統合したプロセッサIntelに先を越されてしまった。(IntelGPU絶望的に遅いからって実質出てないなんて言っちゃダメだ)

これにはAMDもかなり堪えただろう。けれどもAMD戦略を曲げなかった。

IntelGPU絶望的に遅いのでほとんど意味は無かったが、少なくとも前世代のIntel GPUに比べると格段に実効性能が上がっていたのだ。CPUGPUを近付ける統合には間違いなく意味があったということである

AMDCPUGPUを同じチップにするだけでは無く、メモリアドレス空間」も一緒にする道を目指した。

こうなるとCPUの使っているメモリGPUから直接扱え、GPUの使っているメモリCPUから直接扱えるようになる。

これが実現するとCPUGPUが完全なヘテロジニアスコンピュータに一歩近付くのだ。

しかし、そんな夢のあるCPU+GPUの開発は当然難航した。

半導体工場部門を分社化して売り払ってもまだ開発は遅れた。

2011年にやっとAMD初めてのCPUGPUであるAPUを出せたが、メモリアドレス空間はまだ別々だった。

2012年になってもメモリ空間は別々のままだったが、AMDARMiPhoneAndroidWindows Phoneに載っているARMである)と合同でHSA(ヘテロジニアスシステムアーキテクチャ)を推進すると発表した。

世の中の現実的な人々は笑った。「アーキテクチャだけを作ってもハードソフトが出てこないんじゃ話になりませんよ」と。

同じ2012年AMD2013年中にHSAの第1世代製品を出すとだけ発表し2012年は終わった。

ぼくのかんがえたヘテロジニアスコンピューティングマシン

そして2013年2月21日米国時間20日)、Sony Computer EntertainmentPlayStation 4を発表した。

Cellコケしまったので載らない事は誰もが知っていたが、載っているハードウェア一部の人が驚いた。

―HSAであるPC用のHSA対応APUがまだ正式発表されていない中で、なんとHSAを載せてきた。(2013年末発売だから当たり前だというツッコミは止めろ!)

CPUx86-64Jaguar 8コア(ちなみにPC向けJaguarは4コアまでだ)、GPURadeon HD 7800相当でPS3と違いガチで1.8TFLOPS(理論上1秒間に計1.8兆個の小数点を含む計算を実行可能)のスペックを持つ代物だ。

このCPUGPUは8GBのGDDR5メモリを共有して動作する。8GBと聞くと最近PCから考えると少なく聞こえるかも知れないが、(わたしのメモリは16GBです)

GDDR5とはGPUの描画計算を速く済ませるために作られた超高速メモリであり、ご家庭のDDR3メモリとは比べ物にならない速さが出せる。

実際の所PS4がHSA対応かは正式発表されていないのだが、PC向けJaguarはHSA対応と発表されており、SCEPS4APUCPUGPU)と呼んでいてこの変態メモリ構成とすると、発売までにクッタリスペックダウンしない限りHSA確定と見て良いはずだ。

また、PlayStationはこれまで一度もx86CPU採用した事が無く、これが最初(で最g)のx86採用機となる。

Intelが初代XboxCeleron搭載)であっさり諦めたx86ゲーム機市場制圧の夢を、AMDが思いもよらぬ形で果たしたのだ。

これまでPCしか発売されてこなかったDiabloが、x86-64PS4向けに初めてコンシューマ版を発表した事もx86-64採用が決してつまらない事ではなかった証だろう。(Diabloと戦うハメになるサードの方々にとっては非常につまらないが)

CPUGPUの”フュージョン”…(HSAは以前はFusionと呼ばれていた。そういえばドラゴンボール映画も今年やな…)

AMDが長年の間見てきた夢が、PS4で初めて現実世界に現れることになる。(※ただし次世代XboxもHSA採用PS4より先に発売したりしない世界線に限る)

こんな馬鹿らしいほど夢が詰まったマシンを「x86搭載だからPCみたいで夢が無い」という一言で切り捨ててしまう人に増田絶望した。

なおこの増田Core i7GeForceで書かれた模様


追記

予想以上に反響が大きくてビビったので

でも、それってユーザーの夢にどう繋がるの?

という趣旨感想についてだけ補足。

性能の引き出し易さがPS3と比べて格段に良くなるのでPS3ラストレムナント人喰いの大鷲トリコのような非情現実が減る。以上。

2012-05-06

http://anond.hatelabo.jp/20120322025117

外資系蹴って未来検索ブラジル行けよ

全文検索エンジンgroongaの開発、またはgroongaを用いたアプリケーションの開発を行っていただきます

以下の条件を満たしている必要があります

以下の技術分野に関する知識・経験があるとなお良いです。

http://razil.jp/recruit.html

英語論文が読めて、アルゴリズムについて知識がある人材求めているぞ

2012-03-13

書き直したって、いいんだよ

http://www.yamdas.org/column/technique/hatenablog.html

 なお、タイトルに PART I とあるが、このネーミングはメル・ブルックスの『珍説世界史 PART I』にちなんだもので、PART II 以降は存在しない。つまりあなたソフトウェア企業)が絶対すべきでないことは、Joel Spolsky にとってこの文章に書かれることだけなのだ。それは何か?

 プログラムスクラッチから書き直すことに決めることだ。

まぁ、そんなわけないんだけどね。

最近はてな体たらくへの失望感名前を付けたい」というだけの文章にマジレスするのも我ながらどうかと思うし、気持ちは分からなくもないんだが、最近は「はてブ」以外全く使ってない俺でも、長年お世話になってきたはてなに対してそれなりに愛着というものがあるわけで、ディスられるばかりの流れに少しばかり反抗を試みたい。これは、それだけのエントリだ。

というわけで、以下に書くのは、技術の話でも倫理の話でもない。どうか気軽に読んでほしい。

書き直してはいけないのか

実例を挙げる。

今やワールドワイドな影響力を持つ勝ち組ソーシャルサービスTwitterだが、彼らは、ここ数年でバックエンドの大半をスクラッチから完全に書き換えたしかも、RubyからJavaへと、使用言語すら変更してしまった。

http://d.hatena.ne.jp/teppei-studio/20110709/1310168002

もう一つ。Tumblrも、LAMPアーキテクチャからJVMベースへ切り替えた。その過程で、Twitterオープンソース化した技術を取り入れたりもしている。

http://blog.kyanny.me/entry/2012/02/19/002256

『「古いコードクズだ」というのは錯覚だ』というJoelの意見は、一面では正しいが、他の面では間違っている。なぜなら、あるソフトウェアに求められていること(要件)は、時間と共にどんどん変化するから

書き直そうが、書き直すまいが、一番ダメソフトウェアとは「ユーザの要求に応えられないソフトウェア」だ。規模や環境の変化によって古い技術技術限界に直面したり、ビジネス環境の変化に追随する必要が出てきたのなら、「スクラッチから書き直す」のは立派に一つの選択肢だ。

技術の変化

はてなダイアリー最初バージョンがどういうものかは俺もよく知らないが、おそらく「LAMP」がエッジなキーワードとして持て囃されていた頃に書かれたプロダクトなんじゃないかな(間違ってたら突っ込みを)。それから時代下りRuby on Railsに代表されるCoCフレームワークの登場を経て、今や大規模分散や非同期を前提としたアーキテクチャが当たり前の時代。当然改修はしているだろうけど、MySQL職人芸で負荷分散していた時代から大分遠いところに来たのは間違いない。

何より、はてなダイアリーといえば「はてな記法」とカスタマイズ自由度の高さがウリだったわけだが、これらの存在が、今や機能追加や改良の妨げになっているとしても不思議じゃない。

はてなブログ開発の動機として「今どきの技術で、最初からやり直す」というのがあるのは間違いないが、それは「スクラッチからの書き直し」だから悪手なのだろうか。結局のところ、レガシーコードメンテナンスを続ける場合と比べてどちらがより低コスト、という話の結論によるとしか言えない。

ビジネス環境の変化

はてダソーシャル要素といえば「トラックバック」と「idコール」と「キーワードリンク」だったわけだが、全部Twitter(とTogetter)に持っていかれたよね、という話。

から、「はてダver.2」や「ブログ2.0」を望む声が大きいのは理解できるけど、ぶっちゃけ、そんなもんに開発リソースを突っ込んでも勝ち目なんか無い。んで、それに代わるアイディアを持ってる奴はどこにもいないと。だから既存コードの改良ではなくスクラッチから書き直し、スモールスタートでフィードバックを受けながら方向性を考えていく、という方向性はそんなに間違っていないと思う。

ただ、現状を放置すると「それTumblrでできるよ」という話にしかならん、というのはその通りで。それ以外だと、もしgithubblogサービスを始めたりすると、かなり客を持っていかれるのではないかという予感はする。いっそのこと、Tumblrのデッドコピーから始めるのが一番早いのかもしらんね。

技術の体系化の弱さ

少し別の話を。

https://github.com/twitter

これは、Twittergithubレポジトリだ。上でも書いた通り、Twitterサービススクラッチから書き換えた。で、その過程で開発した内部向けのフレームワークを、どんどんオープンソース化している。彼らが、内部の技術をきちんと体系化して再利用可能にしていることの証左と言える。

一方、はてなgithubレポジトリ。正直、サンプルとかプラグインばかりですね、と。

https://github.com/hatena

色々と理由はあるんだと思うが、一つ思うのは職人芸頼りで自分たちの技術を体系化するという部分が弱いんじゃないか、ということ(はてな発のオープンソースで広く使われてるのって何かあったっけ?)。

先ほどから散々「書き直していい」と主張しているが、誰かが言っていた通り、技術本質を捕まえきっていない状態でフルスクラッチをやっても、失敗する可能性は高い。はてなブログがどちらなのかは、中の人しかからないことだけど。

マネタイズ

はてな経営的にあまり状況がよろしくない、という推測はおそらく当たっているのではないかと思う。

タイムラインで、誰かが「まっとうな方法収益化する方法を真面目に考えるべきだった」と言っていたのを見た。それをしていれば、今回のような事態を招くことは無かったのだろうか。

だが、「まっとうなビジネスモデル」とは何だろう。実際問題として、ここ最近成功しているネットサービスビジネスモデルで「ターゲティング広告」と「マスなユーザベースから抽出したビッグデータを解析して売る」以外で何か有力なものはあっただろうか。FacebookにせよTwitterにせよ、収益化の原動力はユーザ行動解析だったりするわけだ(彼らがオープンソース化に積極的なのはインフラ技術差別化の源ではない、という面もある)。

まぁ、あとはガチャだが、どちらにせよ現状では高木先生逆鱗に触れるようなものしかないよね。

そんなわけで、それらに代わる第四のマネタイズモデルを思いついた人は、ぜひ近藤さんに教えてあげると良いんじゃないかな。あればだけど。

最後

今後はてながどうなるかは分からないけど、一つ希望したいことがあるとすれば、故伊藤計劃氏のダイアリーがこの先も保全されることを望みたい。

それは、エントリを全て魚拓しろ、という話ではもちろんない。彼の生前に書かれたエントリは、当時の「はてな」という生態系を構成する一部でもあるわけで、そこから切り離して文章だけをアーカイブしてもあまり意味がない。

まりネット過去を作ってきたものとして、現在適応しながら、未来へと生き残って欲しいと、そういうことです。

2012-03-08

Apple厨変節の歴史

iPhoneアップデート待ってる間に書く。

もう少し増やす予定

2011-12-16

http://anond.hatelabo.jp/20111216202640

性能だけならAMDC-50ノートで初代X-Box+HDビデオ程度の性能はらくらくこなすでしょ。

PCアーキテクチャに詳しくないからよく分からんが、問題はその「初代X-Box+HDビデオ程度」のPCゲーム全然充実していないって点じゃね。

PCゲームって、「高いコストを支払ってでも最高の画質で遊びたい」っていう、少ないけどカネ払いは良い層で成り立ってるような状態なんでしょ。

それ以外の「PCにそんなにカネ掛けられないけど最新ゲームを遊びたい」って需要ゲーム機がごっそり奪っちゃう。だからエントリーPC向けのゲームが商売として全然成り立たないんだろう。

2011-10-18

Steve Yegge の Googleプラットフォームに関するぶっちゃけ話を訳した(前編)

Google エンジニアの Steve Yegge 氏、Google+ への懸念を漏らす
http://japan.internet.com/busnews/20111013/8.html

記事になってたけど、原文とちょっと要旨が変わっちゃってサービスへの警鐘みたいになってしまってたので、全文訳してみた。くそ長い。お暇な方どうぞ。

2011/10/19 08:14)ありがたい誤訳の指摘をいただいたので3カ所修正

Stevey の Google プラットフォームぶっちゃけ

僕は6年半ばかり Amazon にいて、今はそれと同じくらい Google にいる。この二つの会社について強く感じることは(しかもその印象は日々強まるのだけれど)、 Amazon は全てにおいて間違っていて、 Google は全てにおいて正しいということだ。そう、やりすぎな一般化だけど、驚くほど正確だと思う。いやもうとにかくね。百、いや二百のポイントで二つの会社比較することが出来るだろうけど、僕が正しく覚えていれば、 Google はそのうち三つを除いて優れている。実にある一点に関してはスプレッドシートを書いたんだけど、法務が外に出すなって言うんだ。リクルーティングは惚れ込んだみたいだけどね。

まり、まあ簡単に言えば、 Amazon の人事採用プロセスってのは基本的に欠陥品なんだ。だって、チームがチーム毎に、自分達のために人を採用するんだぜ。だから、色々平均化の努力はしてるみたいだけど、採用基準はチームによって信じられないくらいバラバラさ。そんでもって作業工程ってのも腐ってる。ソフトウェア信頼性工学なんてお呼びじゃないし、エンジニアに何でもやらせようとするんだ。コーディングする時間もないくらい。もちろんこれもチーム毎にバラバラで、要するに、運次第ってところ。施しやら困った人を助けるのやら、コミュニティに貢献するのやら、そんなのはもってのほかバカにしに行くんでもなけりゃ、近寄るべきじゃないね。それにまた施設も染みだらけの壁に囲まれた箱みたいな家畜場で、装飾やらミーティングエリアなんてものには一銭も使ってない。給料やら福利厚生なんてのも最悪だ。まして最近じゃあ Google やら Facebook っていうライバルがいるのにね。社員特典なんてものも見たこと無かったな。採用通知の番号を照合して、ハイ終わり。コードベース悲惨のものエンジニアリング基準ってものがないんだから。チームによっては個別にがんばっていたくらいかな。

公平に言えば、彼らは良いバージョン管理ライブラリシステムを持っていた。これは僕らもまねるべきだし、僕らのところには同様のものが無い、良い pubsub システムもあった。でも多くの部分で彼らが使っていたのは、ステートマシン情報RDBMS に突っ込んだり読み出したりするだけのくそみたいなツールの塊だった。僕らならただでも欲しくないようなね。

僕が思うにその pubsub システムライブラリ管理システムが、まさに AmazonGoogle より優れている三つのうちの二つだ。

早期にリリースして、狂ったようにイテレートするってのも彼らのうまいところじゃないかって言うかもしれない。けど逆もまたしかり。彼らは早期にリリースすることを何にもまして優先する。品質保持やらエンジニアリング規則、その他長い目で見たら重要になってきそうなものはみんな後回し。そんなだからたとえ市場競争相手よりアドバンテージがあったとしても、結局ちょっとしたことをやるのにも問題を起こしちゃうよね。

でも、一つ、そんな政治的な、思想的な、技術的なへまを補うだけの、彼らが本当に本当にうまくやってることがある。

Jeff Bezos悪名高きマイクロマネージャーだ。彼は Amazon の小売りサイトの1ピクセルまで管理する。彼は以前 Larry Tesler を雇った。 Apple主任科学者で、たぶん世界で最も有名で尊敬される HCI エキスパートさ。そんでもって、 Jeff は Larry が言ったことを、 Larry が辞めるまで3年間無視し続けた。 Larry は大規模なユーザビリティ研究もやっただろうし、少しの疑いの余地も無く誰もそのひどいサイト理解できないってことをデモしたに違いない。けれど、 Jeff は1ピクセルたりとも動かさせはしなかった。トップページにぎっちりつまった内容の1ピクセルたりともね。それらはまるで何百万という彼の貴重な子供達なのさ。けれど Larry はそうじゃなかった。

マイクロマネジメントAmazon が僕らよりうまくやっている三つ目ってわけじゃあない。つまり、まあ、彼らはうまくマイクロマネジメントをやっていたと思うけど、それを強みって言いたいわけじゃ無い。まずは何が起こっているかみんなに理解してもらうための文脈を準備しているだけさ。僕らはこれから公衆の面前で、 Amazon で働きたけりゃ私に金を払えと言ってのける男について話すわけだからね。誰かが彼に反対したときは、彼は彼の名前入りの小さな黄色ポストイットを手渡して、誰が会社を動かしているかを常に忘れさせまいとする。思うに彼は全くの… Steve Jobs なのさ。ファッションデザインセンス抜きのね。 Bezos はとんでもなく頭が切れる。誤解しないで欲しい。彼の前じゃ、普通コントロールフリークなんてヤクが極まったヒッピーみたいなもんだよ。

それであるJeff Bezos が指令を出した。まあ彼がいつもやってることなんだけど。その度にみんなはピコピコハンマーで叩かれるありんこみたいに走り回るんだ。でもそのある一度、2002年かそのくらいのことだったと思うけれど、彼は指令を出した。とんでもなく巨大で、目の玉が飛び出るほど重たいやつを。普段の指令が頼んでも無いボーナスに思えるようなやつを。

彼の巨大な指令はこんな感じだった。

1)この時点より、全てのチームはサービスインターフェースを通じて全てのデータ機能を公開すること。

2)各チームは各々そのインターフェースを通じて通信しなければならない。

3)その他の全てのプロセス間通信は許可されない。ダイレクトリンク、他のチームのデータソースから直接データを読むこと、メモリ共有モデルバックドア、全てを禁じる。ネットワーク越しのサービスインターフェースを経由した通信だけが許可される。

4)使用する技術は問わない。 HTTP 、 Corba 、 Pubsub 、 カスタムプロトコル、何でも良い。 Bezos は気にしない。

5)全てのサービスインターフェースは、例外なく、外部に公開可能なようにゼロから設計されなければならない。すなわち、チームは全世界デベロッパに向けてインターフェースを公開することができるよう、設計し、計画しなければならない。例外は無い。

6)そうしない者は解雇される。

7)ありがとう!良い一日を!

ハハ!。ここにいる君たち150人ちょっとの元 Amazon 社員ならもちろんすぐにおわかりの通り、7番は僕が付け加えたジョーク。 Bezos は間違いなく君たちの一日なんかに興味ないからね。

それでも、6番は、本当だった。だからみんな一生懸命会社に行った。 Bezos は、さらに上級のチーフブルドッグであるところの Rick Dalzell に率いられた数人のチーフブルドッグを雇って、成果と進行を監視させた。 Rick は元レンジャーで、陸軍士官学校出身で、元ボクサーで、元 Wal(ごにょごにょ)Mart で拷問のような削減をやってのけた人物で、デカくて愛想の良い、「堅牢インターフェース」という言葉連呼する男だった。 Rick は歩き回り、「堅牢インターフェース」について語り回り、そして言うまでも無く、みんなたくさんの進展をし、 Rick にそれを知らせた。

それからの数年間、 Amazon 内部はサービス指向アーキテクチャに姿を変えていった。その変化を形にしている間に、彼らは非常に多くのことを学んだ。 SOA に関する学問論文は当時もいくつかあったけれど、 Amazon のとんでもない規模からすれば、そんなものインディ・ジョーンズに向かって「通りを渡るときは左右をよく見るんだよ」って言うくらいの意味しかない。 Amazon の開発スタッフはその途上でとにかくたくさんの発見をした。そのほんの一部をちょっぴり挙げると、こんな感じだった。

  • ポケベル通知( pager escalation )はどんどん難しくなった。だってチケットの本当の持ち主がわかるのに、20回は行ったり来たりしないとならなかった。もしあるチームからの一回の応答に15分かかったとしたら、正しいチームがそれを受け取るまでに何時間もかかってしまう。たくさんの前準備と測定としっかりしたレポーティングをやるようになった。

とまあこれらがほんの一例。他にもたくさんの、おそらく何百の、 Amazon が見つけた個別発見や教訓があった。外部サービスにはおかしなところがいくつもあったけれど、君たちが考えるほどじゃあない。サービスに対して組織するってことは、外部のデベロッパを信用できないのと同じように、お互いを信用することなんてできないんだということを、チームに教えてくれたんだ。

中編に続く

2011-08-12

http://anond.hatelabo.jp/20110807022427

アーキテクチャランキングのみに絞って考える意味がよく分からない

マイナー性癖もどんどん可視化されてる感覚があるし、新しいのも生まれてる

それはアーキテクチャとは関係ないのかな

宣言で言うなら、メガミマガジン自分スキャンするってネットと全く関係ないよね、で終わりじゃないか

ログイン ユーザー登録
ようこそ ゲスト さん