あの後、とりあえずMemcacheを使って必要最低限のデータアクセスで済む様にプログラムをチューンアップしてみて、実際にデータストアへの接続回数は改善された。が、どうにも改善されすぎている・・・。ー昨日は半日も持たずにDROが臨界点に達していたのに、昨日確認すると2%ほどしか消費されていない。Googlebotの巡回の量が減ったのかな?と思ったのだけど、そこまで目立った変化は無さそうだし、どうにも解せない。プログラムでコンテンツを表示する以上、キャッシュを使うといっても限度があり、普通に考えてそこまでの成果が出るとは考えにくい(厳密には他にもチューニングはしてるのだが)。
あれこれ考えてみて、一昨日はGAEの管理コンソール上でDatestore Viewerでデータの中身を確認していたことに思い出し、それが何か関係しているのかと調べてみたら、やっぱり管理コンソール上での作業もデータアクセスとみなされる模様。しかも管理コンソール上では、データは20件ずつ表示されるのだが、これはどうも全件取得してからそのうちの20件を表示すると言うような動きをしているみたい。(GQLコンソールを確認すると“SELECT FROM ***”でデータ取得を行っていた)
僕が保持しているデータストアの総数は1000件以上あるわけだけど、全件見ようとしたら1000×50でこれだけで一日のDROを消費されてしまうというからくりということが分かった。
公開して日も短く、Googlebot以外には殆どユーザーのアクセスが無い状況でこれだったので、途方にくれていたけど、まだGAEに関しては何とかなりそうで少し安心。むしろ早い段階でプログラムのチューンアップをする機会になってよかったと思う。
後はAmazon Product Advertising API のリクエスト制限(2000/h)の問題だけど、こればっかりはどうしたもんか・・・。
]]>WEBサービスを作るにあたって最も苦慮した点としては、やはりサーバー等の準備だろう。PHPなどと違って、Javaは無料のレンタルサーバーで利用が可能なケースが殆どなく、あったとしても審査がかなり厳しかったりなどハードルは決して低くは無かった。そういう事情もあって取れる選択肢が実質的に“Google App Engine(以下GAE)”一択だった訳だが、どうにもこれが相当に使いにくい。
第一に、GAEではRDBが使えない(課金すればMySQLが使えるみたいだが)、第二にプログラミング上で様々な制約がある、そして第三に無料で使える要領が相当にタイト、ということが挙げられる。
RDBが使えないことについては正直慣れの問題で、もともとプログラマでもない僕にとっては、にわか仕込みで身に付けたMySQLからJDO(GAEで採用しているデータ格納の形式)に鞍替えするのには正直そこまで苦労はしなかった。今では手続きが簡素で、データ型にコレクションクラスが使えるJDOの方がやりやすいとまで感じている。プログラミング上の制約についても、利用可能なクラスが制限されていたりするが、基本的にはそこまで問題ではなかった。
しかし、三番目の無料で使用できるリソースについてはかなり厄介だ。現時点で躓いてしまい、回避方法を模索中だが、中々に根深いと感じる。因みに今躓いているところはタイトルにもあるとおり、“Datastore Read Operations( データストアに格納されているデータの読み込み )”についての制限だ。GAEのガイドラインには一日に0.05M回(つまり50,000回)が限度とされており正直ここいらへんは最初にざっと読み通していただけ出し、「5万回もありゃ充分やん」程度にしか考えていなかった。しかし、ここが落とし穴でこのRead Operationがどの単位で行われているかを理解しなかったため、本日サービスの一時停止という憂き目にあってしまった。
最初読み通していたときには、5万回データ取得が可能という風に考えていたが、実際には一回のデータアクセスでも1回に1000件のデータを抽出したとすると1000回分のOperationが実行されたとカウントされるようだ。
なので一度の多くのデータを抽出することを前提にアプリを作っていると、あっという間に許容量をオーバーしてしまい、一時的にサービスが停止してしまう。もっとも課金すれば上限を増やせるらしいのだが、サービスが軌道に乗るまではあまりお金を掛けたくないというのが実情。
また、setRange()メソッドで抽出するデータ量の制限を掛けたところでも、内部的に全件取得してから該当するレンジのデータを抽出するという形をとっているみたいで、これでも結果は変わらないという報告も出ている。
そうなると、“Select From ***(データベース名)”という実行の仕方ではいかんともしがたく、“Select From *** where id == ● ● ”みたいな形でデータを取得する必要がありそう。しかし、これだとかなり窮屈なつくりになってしまうのでもう何手間か必要になってきそう。
現時点で考えられる手法としては、
1.MemCacheを使ってデータストアへのアクセスを必要最低限にとどめる。
2.XML等でデータストアとは別に読み込み専用のデータを用意し、定期的にデータストアと同期する。
といったところだろうか。
なんにせよ、GAEを使ってまともなアプリを作るのはかなり難易度が高いということだと思う。
]]>僕は普段から映画を見ることはめったに無いが、HipHopグループ「ライムスター」の宇多丸氏(現在では映画評論でもおなじみだが)がこの作品を絶賛しており、かねがね彼のロジカルな映画評論に感心していた僕は、この作品にとても興味を惹かれ、近所の某ツタヤでレンタルしてきたのである。
この作品は、1993年に実際に起きた埼玉愛犬家連続殺人事件をベースにしている映画作品であり、『ヒミズ』や『愛のむき出し』でおなじみの園子温(そのしおん)が監督を務めている。
ざっくりとした話の流れは、静岡で小さな熱帯魚店を営んでいる社本が、娘の万引きをキッカケに同業を営んでいる村田という男と関わることになる。そしてこの村田が引き起こす一連の殺人事件に巻き込まれ凄惨な結末を迎えてしまう、といった感じ。
本作品を見た感想なのだが、とても刺激的な描写(グロともいう)とスリリングな展開で目が離せないのは確かだし、かなり楽しめたのだけど、絶賛するほど良い映画かと言われるとなんか微妙。元となった事件のWikiを見た時は言い知れぬ恐怖を感じたものだが、この作品からはそこまでの恐怖を感じることは無かった。
なぜかと言えば、元になった事件というのは、あくまでも殺人という行為は問題解決の為にすることであり、殺人行為そのものに愉悦を感じているわけではなく極めて現実的な動機であることに対し、その躊躇の無さや徹底した、それも通常の神経では思いも付かないような残忍な証拠隠滅方法 ― それを狂っていない正常な人間が実行できることに現実味があり恐怖を覚えたのだ。もちろん、本作品でもその点はある程度留意して作られているとは思うのだが、如何せん映画というエンターテイメントとして表現する以上物語に味付けをしなければならず、その点がどうしても上記を阻害しているように思える。端的に言えば狂人の犯行のように思えるのだ。例えば、劇中での死体の解体描写。ありふれた日常感を出したいが為の演出なのかも知れないが、村田夫婦は作業中実に和気藹々としている。しかし傍から見れば解体作業を楽しんでいるようにしか見えず、どこにでもいる普通の人間が残忍な行為をしているというよりは殺人嗜好の狂人のように見えてしまう。その他にも行為そのものを楽しんでいるように見える描写は少なくは無かった。
また、事件の猟奇性を直接的に画で表現しているが、これにも一因があるように思える。確かに非常に刺激のある画なのだがどこと無くチープ感があり、また劇中で村田が言っていた「こんなのは慣れなんだよ」というように、絵面としてはどの殺人でも大して変わらないため、確かに終盤には画としての刺激は薄れてしまった。あくまで僕個人はということだが。
後は物語の展開についてだが、正直村田が社本を巻き込んだ理由が全然理解できない。はっきり言ってリスク以外の何者でもないはずなんだが、何故か知り合って間もない社本をいきなり殺人に巻き込み証拠隠滅の手伝いをさせる。元の事件での社本のモデルとなった人物は元々犯人の部下であり、また群馬の人里はなれた山奥に住居を構えていたことから、事件に巻き込むメリットが理解できる。でも社本は赤の他人であり、しかも言ってしまえばご近所さんな訳で、事件に巻き込むと秘密が漏洩してしまう恐れがあるだけで、メリットがどこにも見つからない。
また、物語の序盤で村田は社本の妻を手篭めにかけるのだが、そのシーンにも納得がいかない。村田)奥さんの境遇に同情しますよ→村田)脱げ→嫁)嫌嫌→村田)暴力→嫁)もっと殴って(^q^) という流れなんだけど、イヤイヤねーだろ、と思ってしまった。このように少々不自然に思える描写も多くはないが確かにあった。
とは言いつつも、決して駄作ではなく、むしろ良作と言って良いと思う。感動もメッセージ性もエンターテイメント性も0点、その代わり刺激やスリル、エロスは満点といった作品。上でも書いたけど、かなりキツいグロ描写があるので、苦手な人は見ない方がよいですが。
今までやってきた仕事はWebディレクターという職種といい、技術的な面よりも寧ろ人と人の間に立ってプロジェクトを成功させることに重点が置かれていました。Webディレクターで独立している人はいることはいるのですが、やはり在職中に多くのコネを築き上げていた人が多く、あくまで社内プロジェクトを社内メンバー+外注で回してきた僕としてはこの部分について自信はありませんでした。
もとより、前職と同じくWebディレクターを行うのであれば、あまり独立する意味はないと考えていました。仕事を請け負ったとしても、あくまで外部の人間という扱いになるので権限も与えられない、人間関係も案件ごとにイチから築いていかなければならない、といった経験するまでも無く苦労がしのばれるからです。
なので今までの経験は経験として、やるなら今までと違うことをやろうと考えていました。その一つが自分で何かWebアプリを作ってそれを収入源にするということです。
今までWebディレクターとしていくつかのサイトを立ち上げてきましたが、僕自身に何か技術力があるわけではなく、HTML、スタイルシートくらいは出来るとしてもプログラミングについてはまったくの素人であるため、まずはプログラミングが出来るようにならねばと思い、プログラミングの習得を試みました。
プログラミングの習得にあたり、独学というのも考えましたが、決まった時間に決まった分だけ勉強する時間を確実に確保することが重要だと考え、どこかプログラミングを学べる場所はないかと探してみたところ、公共職業訓練でもプログラミング(Javaコース)を学べると知り、それに応募することにしました。
公共職業訓練に応募するメリットは主に三つ、一つは無料で受けられること、もう一つはすぐに失業給付を受けられること(既に受けていた場合でも訓練中は給付を受けられる)、そして最初の二ヶ月は月二万ほどの通諸手当が受けられることが挙げられます。
こうして公共職業訓練に応募するのですが、まず職業訓練を受けるには試験にパスしないといけません。試験内容は実施している地区で変わるかもしれませんが、僕が受けたところは国語と数学と面接が実施されていました。
募集要項には中学卒業程度の問題が出るとありましたが、実際にはもう少し簡単な問題ばかり出題されていました。数学はどちらかというと算数に近いレベルのもので時間だけが問題ですし、国語に至っては日常での読み書きが出来れば充分満点を狙える程度のものでした。面接は一人当たり5分程度で質問内容は3点で僕の場合は、
という内容に加え、質問はあるかというものでした。面接についてはあまり自信はありませんでしたので、もしや落ちるかもと考えていましたが、何とか合格していました。(後に聞くとプログラミングコースはかなり倍率が低いらしく、時には志望者≒定員ということもあるそうです)
こうして3ヶ月の職業訓練が始まることになりました。ネットで検索すると職業訓練では殆どスキルが身に付かないだとか失業給付を伸ばすためのものといった、あまりポジティブとは言いがたい内容が多く出てきますが、個人的には受講してよかったと感じています。確かに専門的なコース、特にJavaプログラミングコースだと3ヶ月でかなりのことを詰め込まれるし、付いていけない人も多かったですが、それでも独学でやるよりも随分とスムーズに学習できたと感じています。因みにJavaプログラミングコースは3ヶ月で
を学ぶことになるので、習得するにはかなりの覚悟が必要になります。それでも環境構築の仕方から用語の意味、プログラムの手続きの流れを初心者向けに無料で解説してくれるという機会はとてもありがたいことだと思います。それに僕自身はプログラムを学ぶことがとても楽しかったので、3ヶ月で考えていた以上に色々と出来るようになり、自信にもつながりました。
独立を考えている人もそうでない人も、会社を辞めた後は職業訓練を受けてみることをおススメします。
]]>不正表示についての具体的な内容としては、 こちらについても人口カバー率の問題のようで、auのカタログやホームページ上で、同社が展開する “au 4G LTE” について「サービス開始時より全国主要都市をカバー」、「4G LTE(iPhone5含む)対応機種なら」、「受信最大 75Mbpsの超高速ネットワークを実人口カバー率 96%に急速拡大。(2013年 3月末予定)」という表記を2012年秋から2013年3月末まで掲載していたということですが、 同社が販売するアップル社製スマートフォン「iPhone 5」については対応機種に含まれておらず、 3月末の時点で、人口カバー率は14%程でしかなかったというのが問題になった模様。
KDDIは今後、 再発防止策として広告チェック体制の強化と内部監査の体制強化、従業員への周知徹底や教育を掲げているとのことです。
つい先日100Mbpsのサービス導入を発表したばかりですが、今度こそは真摯な告知をお願いしたいところです。
ソース)日本経済新聞
]]>OS | Android4.1 |
プロセッサ | Snapdragon S4 Pro APQ8064 1.5GHz(Quad Core) |
ディスプレイ | 5インチ(1920×1080) フルHD Reality Display |
背面カメラ | 1310万画素 Exmor RS camera sensor搭載 |
前面カメラ | 約31万画素 |
RAM | 2GB |
ストレージ | 16GB |
バッテリー容量 | 2,300mAh |
重量 | 約145g |
サイズ | 高さ 約 135mm×幅 約 71mm×厚さ 約 10.5mm |
防水・防塵 | 防水IPX5 / IPX8 防塵IP5X |
Bluetooth | Bluetooth4.0 |
Wi-Fi | 802.11 a/b/g/n |
カラー | ホワイト、ブラック、ピンク |
OS | Android4.1.2 2013年8月~9月にAndroidTM 4.2にOSバージョンアップ予定 |
プロセッサ | Snapdragon S4 Pro APQ8064 1.5GHz(Quad Core) |
ディスプレイ | 4.6インチ(1280×720) HD Reality Display |
背面カメラ | 1310万画素 Exmor RS camera sensor搭載 |
前面カメラ | 約31万画素 |
RAM | 2GB |
ストレージ | 32GB |
バッテリー容量 | 2,300mAh |
重量 | 約141g |
サイズ | 高さ 約 131mm×幅 約 67mm×厚さ 約 10.5mm |
防水・防塵 | IP55/IP58相当 |
Bluetooth | Bluetooth4.0 |
Wi-Fi | 802.11 a/b/g/n |
対応サービス | NFC、おサイフケータイ、ワンセグ、NOTTV、赤外線通信、おくだけ充電 |
カラー | ホワイト、ブラック、ピンク、ミント |
au Q&Aプラス:2013年夏の新商品[夏モデル]の発表日はいつですか?
リンク元によると同日11:00からauのホームページ上で新作の情報が掲載される模様です。 今回のau夏モデルの目玉といえば、 やはりソニー『Xperia UL(コードネームGaga)』とHTC『HTC One』でしょう。 『Xperia UL』については事前のリーク情報で、 5インチフルHD、 クアッドコアCPUにチップセットは最新のの“Snapdragon 600”が搭載され、RAM2GB、内部ストレージ32GBというまさにハイエンドモデルといってふさわしい機種であることがわかっています。 なおデザインは『Xperia Z』の兄弟機である『Xperia ZL』のデザインに近いとのことです。
ソニーモバイルも“FireFox OS”搭載端末の開発を表明!2014年に端末発売か
このことについて、まずはエントリーモデルからの投入になるという予想がされていましたが、Mozilla社のモバイルデバイス担当副社長であるLi Gong氏がインタビューで、ソニーがハイエンド“FireFox OS”搭載スマートフォンの製造を計画していることを明らかにしました。Li Gong氏曰く、「ソニーは品質とユーザーエクスペリエンスで知られており、彼らは非常にハイエンドな層をターゲットとしている。 我々は現在、 彼らとそのような製品についての議論を行っている」と語っています。
FireFox OSはカーネルこそAndroidをベースにしているものの、HTML5やJavascriptといったWeb標準技術でアプリケーションの開発が可能であったり、また完全にオープンな環境を目指して作られたプラットフォームあるので、Androidよりも更に柔軟な展開が見込まれます。 Androidが飛躍したことの大きな要因ははやりオープンソースであったが為に企業やデベロッパーの参入が盛んになり、短期間で世界中に伝播したというのが大きいと考えられますが、 このFireFoxOSでも同様の現象、 もしかするとそれよりもダイナミックな展開が期待できるかも知れません。
また、日本の携帯キャリアでFireFoxOSを取り扱う意思を表明しているのはKDDIであり、NTTドコモはそれに対抗してか、Tizenを推進しています。もし日本での発売があるとしたらやはりKDDIからの販売ということになりそうですね。
ソース)Computerworld
]]>正式な発表は5月15日12時から開始される、NTTドコモの夏モデル発表会で行われると噂されているので、これは要チェックです。
OS | 不明 |
プロセッサ | 1.5GHz Snapdragon S4 Pro |
ディスプレイ | 4.6インチ(1280×720) |
カメラ | 1300万画素 Exmor RS camera sensor搭載 |
RAM | 2GB |
ストレージ | 8GB(microSDカードに対応) |
バッテリー容量 | 2,300mAh |
バッテリー容量 | 2,300mAh |
その他 | 防水・防塵機能(IP55/IP58) |