タオルケット体操

サツバツいんたーねっとでゲームとかガジェットのレビューとかをします

Niz Atom66をiPad Pro用の最強キーボードとして認定します

ユーザーが本当に欲しかったものことiPad Pro第三世代ですが、とうとう買ってしまいました。   「1TBモデルのみメモリが6GB」という意味のわからない仕様については正直「Appleのエンジニアはもしかしてメモリとストレージの区別がついていないんじゃないだろうか…」と不安になったものですが、今のところ動作に支障はないしまぁ大丈夫だろうということで無視することにしました。もやもやするけど。

さてiPad Proといえばデフォルトではキーボードが付属していません。そして純正のキーボードとしてはSmartkeyboard Folioがありますが、これがキーボードとしては中途半端な製品な割にはクソ高い(2万円以上する)ということでもっぱらの話題です。   iPad Proには文字入力デバイスとして使うにあたってはまだいくつか問題点のある製品ではあります。
例えばCocoaキーバインドがMacと比べると貧弱です。まぁ貧弱なだけで限定的には使えるのですが。とはいえプレーンな状態でのiPad Proのテキスト入力の快適さはWindowsよりは100倍マシなので、十分現実的なスペックだと言っていいでしょう。ちなみに今のこの日記は99%をiPadProで書いてWindowsで手直ししています。

続きを読む

今後必要になる言語や大統一言語や学習効率についてのあれこれ

今後必要になる言語はお前がどういうキャリアパスを辿りたいかによって変わる。以上。
場所によってはCもCOBOLもまだ現役だし、パチンコの制御基板はアセンブラだ(確か)。そもそもPythonだってそろそろ30年選手の言語なわけだ。その影で消えていった言語は無数にあるが、優劣だけが原因で消えたわけではない。未来を予想できる人間はさっさと投資家にでもなったほうがいい。

続きを読む

World War 3がめちゃくちゃ面白い現代戦FPSなのでみんな投資しような

store.steampowered.com

BFのような広いフィールド & 戦車などの兵器。
R6Sのようなリコイルコントロールや室内戦。 細かすぎる武器カスタマイズ。

ぼくのかんがえたさいきょうのFPS。 それがWorld War 3。

発売2日で10万本売れたらしいが、それはつまり我々の体が現代戦を求めているから。軟弱なポリコレに染まった挙げ句、発売日を延期し、バトロワモードの実装は春だよ~~などとなめきった行為を連発しているEAに愛想をつかした戦士たちはインディーズゲームの荒野へと足を踏み入れる。
なお発売後しばらくはローディング地獄問題などで大炎上して返金騒ぎが起きたが今は解消しており、マッチングは非常に快適。

創設者インタビュー

fpsjp.net

WW3の良いところ

続きを読む

新しいフレームワークとかを習得するときのちょっとしたコツ

コツは、なぜそのフレームワークが作られたのかについて触れることです。

だいたいはREADMEの一番頭とか、あるいは本人やコミッターのブログになんかに作者の思想とか、フレームワークのコンセプトについて書いてあります。
それらを読んだりしていると「なぜ既存のやり方やフレームワークじゃだめだったのか」というのがみえてきます。

ここがわかっていると、ドキュメントを読まなくてもだいたいどういうAPIが生えているのか、あるいはどういう流れで実装していくものなのかの想像が付く状態になるはずです。なぜならあなたにはそのフレームワークが何を解決するために生まれたものなのかがわかっているからです。
あとは公式のチュートリアルをこなして想像と実際のギャップを埋めていきましょう。

ここで想像と、提供されているAPIに著しい差がある場合は以下の可能性が考えられます:

  • あなたの理解が間違っている/乏しい
  • コンセプトがあなたの好みにあっていない
  • 実装者の理解が間違っている/実装力不足
  • まだライブラリが枯れておらず、実装が間に合っていない
  • 思想とか特に存在してない

おそらくは高確率で一番なので、チュートリアルをこなしつつ色々なドキュメントを読んで再学習しましょう。
思想が特に存在していないライブラリとかも稀によく存在しているので、そういう場合は諦めます。

チュートリアルを終わらせたらもっと複雑で、実際的な機能をもつものの実装に移ります(権限があるならば、業務にぶちこむのもありでしょう。実験だよ実験!)。
実践的なものを作っていると、チュートリアルレベルでは考えなくて良かった様々なものに対する問題が立ち上がってくるでしょう。ここで気をつけないといけないのは以下のことになります:

  • 複雑化するモジュールの構成をどう管理するか
  • エラーのハンドリングまわり
  • 値の整合性(バリデーション)
  • パフォーマンスの調整(非同期サポートとか)

この辺に対するガイドラインが存在しない、サポートが薄い場合、特にエラーのハンドリングまわりのサポートが未熟な場合はそのライブラリがまだ若いか、実践レベルで利用しているユーザーが存在しない可能性があります。
時間とモチベーションにあふれている場合はコントリビューションチャンスですが、忙しい業務などでは避けたほうが無難だとおもいます。

まとめ

いきなり思想がどうとか、作者のお気持ちだとか、国語の教師かよテメーって感じではありますが、結局がこれが一番効率よく習得できます。
例えばReduxですが、ぱっとみのボイラープレートの多さが異常なだけで、フレームワークが提供(強制)しているAPIはほぼなく、大体はただの関数です。丸暗記とコピペでアプリを組もうとするとこれほどシンドいフレームワークもないかもしれないですが、コンセプトさえちゃんと理解すれば覚えるのは一瞬です*1

APIの丸暗記だけの知識はそのフレームワークが死んだら終わりますが、思想への理解は次に繋がります。
なぜなら次世代のフレームワークというのは、前世代の否定か洗練だからです。例えばフロントエンドフレームワークの進化の歴史はstateの管理とviewへの反映方法の洗練(Railsが歪める前のMVCの移植)からはじまっています。fluxはMVCを洗練させたもの、そしてstate -> viewの部分ではDOM操作を否定する方向に進化しています。

そういうところさえ押さえておけば、次にまた新しいものが出てもちゃんとついていけるんじゃないかなと。
ちなみに僕は最近仕事でRailsを使う羽目になっていてヒーヒー言っています。大抵のやり方は気に食わず、やろうとすることがことごとくうまくいかないのでたぶん思想レベルで相容れないんだとおもいます。そういうこともあるとおもいます。

だんだん何言いたいのかわからなくなってきたので今日は以上です。

*1:実践レベルで使おうとすると大変ですが、今ではかなり楽になりました

最近のゲームは本当に面白すぎてダメ

無限に時間を奪われてしまうので本当にダメ。

しかもWitcher3みたいな超美麗グラフィックで音楽もよくてストーリーも最高な数十年に一本レベルの作品だったとしてもDLCとかを出してしまい、もっと遊びたいというファンの欲望を満たしてしまう。
スパイダーマンなんて最初のPVだけ観てファンボーイ向けのムービーゲーなんでしょとおもってたら良作に仕上がってしまっている。こんなの一昔前じゃ考えられなかった。

しかも現代はオンラインが基本なのでNPCみたいなしょうもないロボットじゃなくて人類といつでも戦える。Overwatchとかは最高に面白くて、僕は下手くそなんだけど今でもときどき遊ぶくらいだ。

アクションゲームだけでも、モンハンみたいにややこしくてプレイに時間がかかるゲームから、Dead by Daylightみたいにルールは超シンプルでちょっとの時間だけ遊べるような、それでいてやりこみの余地が十分にあるようなゲーム、レトロな2Dゲーム、クラフト系、サバイバル系、サメ系…… しょうもないやつから神ゲーまで色々買えてしまう。
しかもとんでもなく安い値段で*1だ。スーファミ時代のゲームは9000円や10000円くらいしていたような気がする。今どき買うのに10000円かかるのはEAとかUBIのゲームくらい(しかもDLCとかシーズンパス同梱版)のもんじゃなかろうか。

2018から2019年にかけて発売されるうち、僕の心を掴んだタイトルだけでも「BFV」「Metro exodus」「Anthem」「World War 3」「Days Gone」etcetc…… っていうか2月22日に発売日集中させすぎじゃね???
とにかく大変なことになっている。そして未だ発売日未定のタイトルのうち、僕が知っている超有名なやつだけでも「Last of US Ⅱ」「Death Stranding」「Cyberpunk 2077」があるし、恐らく僕がまだ知らないだけで海外では有名なタイトルとか、あるいはPUBGみたいにいきなり現れて全てをかっさらっていくダークホースも出てくるはずだ。

PUBGことPlayer's Unkown Battle Groundはゲーム後進国(あるいは老衰寸前の超先進国?)になりつつある日本におけるエポックメイキングな作品だったんじゃなかろうか。
PUBGのためにゲーミングPCを新調したという話を結構きいた。僕の友人も買ってた。まるで一昔前、WizardryをプレイするためにクソたっかいApple Ⅱを買ったうちの親父やその同類みたいな話だ。プロゲーマー、e-sports、そしてゲームのストリーミングみたいなキーワードが日本人の広い層に浸透したのもPUBGのブームとは無関係ではあるまい。
いわゆるバトロワ系タイトルがジャンルとして定着した*2のもここからで、荒野行動みたいなしょうもないパクリゲーからFortniteみたいな「やり方は上手だけどお前らに仁義はないの」ゲームが生まれてて、恐らく来年とか再来年あたりになって人気が落ち着いたあたりで日本でもキャラゲータイトルとして出てくるんじゃないかもしらん。

「最近のゲームは3Dとかがスゴイので手作りのバグの暖かみがないのでダメ」などとほざきながらスマッホで調べることもせずにSNSで横から失礼している腰抜けのあほは当然爆発したダチアが突き刺さって死ぬので放っておけ。
ゲームというのはテクノロジーと人間の血と汗の結晶体なので、人間が血と汗を捧げるほどすごいものが出来上がるが、テクノロジーの進歩もゲームの完成度に貢献する。これはボトルネックという理論によって正しいことが照明されている。
ゲーム作りに人生を賭けていたのは昔の人間だけなのか? これにはおれはノーと答える。
実はおれにも5年間ほどゲームを一切やらない時期があった。社会人になり、プログラミングを覚えてからの5年間だ。言われたことに従う他のなかった学校と比べて、圧倒的に自由度の高い社会というものと、プログラミングの勉強が面白すぎたこと、ネトゲの村社会への疲れ、PS3末期の倦怠感……そういったものがおれをゲームから遠ざけた。
だがドラゴンズクラウンを徹夜でプレイしまくり、その後GTA5を徹夜でプレイしまくったあとのおれは完全にゲーマーとして復帰するための身体つくりが出来上がっていた。そして全くタイプの違うこのふたつのゲームからは、作り手の熱意が強く伝わってきた。それが何よりもおれの心を強く打ったのだ。だから先の答えには強くノーと答える。

つまりゲーム作りに情熱を捧げているすごいやつらはまだ沢山いるし、テクノロジーもめっちゃ進化しているので今のゲームは昔のゲームより当然おもしろい。
昔と今は何もかもが違う。それを受け入れられず、感性の更新ができないやつはそのまま老いてしまい…孫とかが出来て、やがてミカン農園で家族に看取られて死ぬ。

何度でもいうが、最近のゲームはマジで面白い。
そして今はVRというフロンティアが存在しており、向こう10年は進化し続けることが確定している。VRの世界はいまだ体験を支える「ルール」が確立されていない。いわばファミコンとかメガドラとかそういうのが大量発生したケオスの時代を経て今のコントローラーが出来上がったようなメキシコを追体験できる。

AAAタイトルが好きなやつは僕が上であげたやつのどれかを買うだろう。
そうじゃないやつ、レトロなのが好きなやつはまずSteamにアカウント登録をしてTandledeep(https://store.steampowered.com/app/628770/Tangledeep/)とかそういうやつを手当り次第に買ってみるといいだろう。人を食うのがすきやつはForestとかConanとかを買え。
あとここでSteamの名前を出したことでちょっとマイナーなタイトルを出してマウントを取りたい人間が色々なタイトルを紹介してくれるとおもうのでそういうのも参考になるだろう。

以上。

*1:競争力の激化と安値のせいでインディーズスタジオはどこも大変らしいので諸手で喜ぶわけにはいかないけどね

*2:PUBGが初ではない