タグ

ブックマーク / mizchi.hatenablog.com (49)

  • 型付きJavaScriptの将来についての最高のシナリオ - mizchi's blog

    typescriptが独自AST捨ててEcma準拠して今のflowと同じTypeCheckerだけの存在になって、Babel が TypeScript の型アノテーション互換になり、ESNextで型アノテーションが仕様化されるのがフロントエンド界最良のシナリオ。そうならんだろうが— Dvorak対応型人類 (@mizchi) 2015, 10月 14 実際はFacebookとGoogleとMSのメンツが掛かっててややこしくなってる— Dvorak対応型人類 (@mizchi) 2015, 10月 14 babelのsebmck(18歳)がfacebookに入ったのは吉と出るかどうか 実際外部に依存しないならflowとtypescriptの両方のサブセットでどっちでも動くコードを書くのは難しくない。castとnullable が使えないが— Dvorak対応型人類 (@mizchi) 201

    型付きJavaScriptの将来についての最高のシナリオ - mizchi's blog
    manaten
    manaten 2015/10/15
  • イカSランク到達 - mizchi's blog

    A+30から14勝5敗で Sランクに到達した。使ったのは銀ダイナモとスシコラ。ダイナモ、横に拡散するんだけど細い通路が多いホッケではとにかく弱いので、スシコラ使っていた。 B帯の辛さ B帯が一番抜けるのきつい、というのは良く聞く話なんだけど、自分もそう感じた。たぶん、A帯はそこまで酷い地雷がいないので自分のウデマエが適切に反映されるんだけど、B帯はそうじゃないからだと思う。B帯は自分が頑張ってもどうにもならない要素が強すぎたので、今いる人も諦めないで欲しい。 ガチ、自分はランクが落ちることに強いストレスを抱えていて、上達した、と確信したときだけやってて、結局A-30からS30 まで 32勝8敗、たった40戦で抜けれたので、満足感がある。ヤグラの対ブラスターだけは未だに対処ができないので避けた。 日頃ナワバリやプライベートマッチでS~S+のイカと戯れていたので、S+は撃ち負けるがSはトントン

    イカSランク到達 - mizchi's blog
    manaten
    manaten 2015/10/04
    自分もAからSまではすぐ上がったし、事故でA+に落ちてもすぐSに戻れるからB帯はほんと魔境だと思う
  • さよなら CoffeeScript - mizchi's blog

    prototype.js が jQuery に置き換えられた時、開発者が気づいたのは、自分に当に必要だったのはprototypeのメソッド拡張などではなく、クエリエンジンだったということ。 coffeescriptが当初、熱狂的に支持された背景はなんだっただろう。今思えば、それはアロー記法とクラス構文だったと思う。 javascriptの関数型への憧れ、prototypeベースの限界 javascript は断じて関数型言語ではないが、他の言語と同じぐらい関数型言語に憧れていたのも、また事実だろう。しかしビルトイン関数が高階関数を要求するデザインにしては function というキーワードはながすぎたし、その function が暗黙に作り出す this スコープの複雑な振る舞いも開発者の悩みの種だった。「あらゆる関数スコープで状態を持つことが"できすぎる"」という割れ窓だった。 ES5

    さよなら CoffeeScript - mizchi's blog
    manaten
    manaten 2015/10/02
    CoffeeScriptは置いてきた。 ハッキリ言ってこの戦いにはついてこれそうもない
  • スターエンジニアはキラーアプリを生み出すのか? - mizchi's blog

    Web技術界隈著名人の残念さ具合 - thinkchangの日々日誌 は内容自体はどうしようもないのだけど、テーマ自体は自分も日頃悩んでいたものなので書き出してみる。あ、そういえば行方不明のmalaさんは一昨日のハッカソンで振り向いたらいたんで大丈夫です。 キラーアプリの出現と技術的イノベーションに相関あるかと言われたらあるとは思うけど枯れた技術の水平思考的な余地も十分あるんでキラーアプリが必ずしも技術的なイノベーションを果たしている必要はない。ただし技術優位がない場合は企画レベルで制限かかるので、それを許容するかどうかという話— 賢さを上げて法で殴る (@mizchi) 2015, 8月 24 技術的イノベーションによって可能になったサービスはたくさんあって、たとえばデータベースを使った動的なウェブサービス、2000年前ごろにPerl CGIが現実的な速度で動くようになってから増えた

    スターエンジニアはキラーアプリを生み出すのか? - mizchi's blog
    manaten
    manaten 2015/08/25
    一発当てたくて消耗してるのわかるけど、一発当てたいのはなぜだろう。みんな違いそうだ
  • 睡眠障害で辛い - mizchi's blog

    一緒に働いたことがある人は知ってると思うけど、自分は尋常じゃなく朝に弱い。 で、自分でもさすがに酷いと思っており、様々な努力をしたが改善せず、結局睡眠科をうけて睡眠障害だと診断された。 自分がそうだと疑った理由は 睡眠障害らしきものとわたしの20年間振り返りメモ - 青いの のおかげ。inoaoさんとは違うけど、自分は 睡眠相後退症候群 DSPSに罹患して9時5時生活を送ることは、毎日6時間の時差ぼけを体験しているようなものである。患者は週日には数時間しか眠ることができないので、週末には午後まで眠って睡眠時間を補うことがよくある。週末によく眠ったり、普段昼寝をしたりすることで、DSPS患者は昼間の眠気から解放されるが、遅い睡眠相はそのまま続く。 DSPS患者は、極端な夜型の傾向がある。彼らは、夜が最も頭が冴えていて、物事がうまくでき、創造力にも溢れていると感じる。彼らは単純に早く眠ることが

    睡眠障害で辛い - mizchi's blog
    manaten
    manaten 2015/07/31
  • CoffeeScriptReduxでsuperが実装されてなかった話 - mizchi's blog

    TypedCoffeeScriptでsuperの型検査書くかーと思って試してみたら、パースに失敗する。 class X f: -> class Y extends X f: (args...) -> super こんなの。 理由 Fork元のcoffeescriptreduxで実装されてない。 代替手段 親のプロトタイプをメソッドをapplyする class X f: -> class Y extends X f: (args...) -> X::f.apply @, args まあどうせそういう風に展開されるわけだけど、super使ってるコードをこういう風に置き換えるのめんどい。一応元のjashkenas/coffee-scriptを置換しつつ型を付けられる!ってのを目的にしているわけなので。 いつ実装されるの 作者が実装しようとした痕跡がある。ただ作者はこのプロジェクトに飽きつつある。

    CoffeeScriptReduxでsuperが実装されてなかった話 - mizchi's blog
    manaten
    manaten 2015/06/17
  • 最近のReactへの言及についての違和感 - mizchi's blog

    「最近のReactへの言及についての違和感」というエントリ書いたら燃えますかね— イカid:mizchi0x (@mizchi) 2015, 6月 7 僕がみた資料の中でFluxの設計について正しい理解をしていると思えるのはげたさんのこの資料だけです https://t.co/XaKHhhuP2A— イカid:mizchi0x (@mizchi) 2015, 6月 7 みんなsetStateに騙されてる— イカid:mizchi0x (@mizchi) 2015, 6月 7 一部で「React使うとコード量が増える」という意見、サーバサイドで書いたテンプレートのレタッチをするjQueryと比べたらそりゃそうなんだけど、SPAでそもそもJS側がテンプレート握るような環境では handlebars とかで書いてたところが JSXになるだけでそれ移行コスト— イカid:mizchi0x (@mi

    最近のReactへの言及についての違和感 - mizchi's blog
    manaten
    manaten 2015/06/08
    stateはprivate変数だよね。コンポーネント同士を疎に作らないとうま味が半減。
  • スプラトゥーンくっそ面白かったので話をさせてくれ!!!(ブキ寸評+マップ寸評+その他) - mizchi's blog

    2chゲーム界隈のスレッドによく出入りしていた経験としては、良ゲーかクソゲーか議論がまとまらないのは凡作のスレッドで、真の名作のスレッドは、議論とかかまってる暇はなくて、ひたすらゲームの話しかしないもので、スプラトゥーンは、間違いなく後者だ。 はじめに 自分はエイムがガバ過ぎてFPSがまったく駄目で、なので塗りを重視したり、ローラー寄りのレビューになる。LoLはそこそこやったがここ一年ぐらいやってない。どちらかと言うとFPS脳よりMOBA脳。 まずはよく使われるブキの寸評。 プロモデラーRG 近〜中距離の鬼。特長はとにかく圧倒的な塗り速度。 トルネードとトラップはゲーム理解度が低いまま使っても活かしきれないが、ランク20までやってるとさすがにトルネードは当ててくる。 もっと上達してるプレーヤーは、高台にトラップを置いていくなどしてやらしい。自分が使った試合はBバスパークの高台にトラップ置

    スプラトゥーンくっそ面白かったので話をさせてくれ!!!(ブキ寸評+マップ寸評+その他) - mizchi's blog
    manaten
    manaten 2015/06/01
    96ガロン好きー
  • Haskellの勉強で詰まってる部分 - mizchi's blog

    まず前提として、大量に間を割いたわけではない。週末気が向いた時にちょろっとやるぐらい。わからないと放置するので全然進んでない。 このテキストについて、名前空間の扱いやcabalについて一部批判と受け取られない表現があるかもしれないが、これはおそらく僕の無知より発しているので、わかってる人はバーカと罵っていただきたい。(この界隈、教えてといっても教えてもらえないので、罵ってもらうのが楽ではある) あくまで現在の状況。すごいHは読んだが全部は理解していない。頻繁に詰まるが解説を読めばなんとかなったりならなかったりしている。 モナドについて 箱のメタファは適切ではないとかなんとか言われているのをたまにみるが、自分はアレで理解している。 Functors, Applicatives, And Monads In Pictures - adit.io 問題はモナドがわかってもモナドで包まれた値の中

    Haskellの勉強で詰まってる部分 - mizchi's blog
    manaten
    manaten 2015/04/12
  • 近年のJRPGにおけるロール概念とゲームデザインについての個人的な分類 - mizchi's blog

    追記: TRPGやD&D派生まで言及すると無限に終わらないので意図的に無視している。MMORPG以前にロール概念がなかったわけではなく、再発見されたという認識。 最近のJRPG あまりJRPGは元気がないが、MMORPGで発展したロール制の概念を取り入れよう改善しようとしている傾向がある。この記事ではそれらの理由と分析を行う。 はじめに 稿では以下のような分類を行う JRPG初期 DQ1 ~ 6, FF1 ~ 6 ロール概念を持つオンラインゲーム League of Legends World of Warcraft FF14 ロール概念の消化を試みたJRPG FF13 ラストストーリー ゼノブレイド レジェンドオブレガシー 基概念 RPGのルーツはウォーゲームにある。戦闘の数値を抽象化し、それを有利に導く諸概念は、現代のコンピューターゲームでもそのまま適用できる。 つまりは以下のもの

    近年のJRPGにおけるロール概念とゲームデザインについての個人的な分類 - mizchi's blog
    manaten
    manaten 2015/02/11
  • 俺専用ReactのSVGスケッチ環境作った - mizchi's blog

    https://github.com/mizchi/sketch-board 自分は簡単な図形の描画にSVGの手書きは全然アリだと思っていて、Jadeテンプレートで書きなぐることができるようにした。 AtomShellで作った

    俺専用ReactのSVGスケッチ環境作った - mizchi's blog
    manaten
    manaten 2015/02/02
  • React x SVG x 物理エンジン でゲーム作り始めた - mizchi's blog

    ここでプレーできる。Chrome/Firefox以外はしらん。 http://mizchi-sandbox.github.io/ar2/ gyazoのフレームレートが低いけど、実際には60FPS出てるはず。 リポジトリはここ mizchi-sandbox/ar2 · GitHub 昔作ってた mizchi/actrogue · GitHub と似たようなのを、物理エンジンのっけてReactSVGで再現したら楽なんじゃないか、という発想で作り始めた。ReactSVGのパフォーマンス面での技術検証でもある。 なにこれ 物理エンジンを60FPSで回してSVGに形状をマッピングしてReactで差分描画する。 この方式の利点は、SVGで簡単な形状を手書きしながら高速にプロトタイピングでき、描画速度も最低限確保できる点にある。弾幕を生成すると大量のオブジェクトが飛び交うので、下手に人間がチューニン

    React x SVG x 物理エンジン でゲーム作り始めた - mizchi's blog
    manaten
    manaten 2015/01/06
    ぬるぬる動く!SVGでなんやかんやするのもよさげだなー
  • TypedCoffeeScript on flowtypeの可能性 - mizchi's blog

    僕はcoffeescriptは人類がプログラミングにおいて堕落するために手に入れた最高のゆるふわ文法だと思っていて、これを殺すわけにはいかない、という気持ちがある。で、es6/typed annotationが跋扈するこの時代にふさわしいものに改造されないといけないとも思っている。最近だと、正直coffeescript方面のイノベーションはあんまりない。 そういうわけで、ちょっと前までtyped-coffee-scriptを作ってたんだけど、現状ある種の問題を迎えていて、開発が半年ほど止まっている。それをどうするかということを考えた結果、別の型付きaltjsに乗りゃいいじゃん、という発想に至った。 altjs on altjsってどうなの、っていう問題もあるが、基的にflowtypeもtypescriptもes6~以降との標準化追従する方向性であり、そう大きな問題になることはない、と認識

    TypedCoffeeScript on flowtypeの可能性 - mizchi's blog
  • 一週間自宅のみでリモートワークしてみたけど働き過ぎた - mizchi's blog

    Increments社は元々月曜日がリモートワークの日なんだけど、今週と来週は実験的にリモートワークすることになっている。 家を出てオシャレなカフェで作業したがる人も多いだけど、自分はあんまり外にでる理由がなければ家から出たくないタイプの人間なのと、今週前半は雨が降ってたというのもあって、昼飯買いに行く以外は完全に家で作業していた。 結果 正直なところ、自分はサボりぐせがある人間だと思っていたのだけど、目の前にしかかりのものが放置されるのが我慢できない凝り性でもあって、今回は凝り性な部分が勝ってしまい、完全に仕事しすぎた。 仕事しすぎたので進捗は最高に進んでいるんだけど、夜中まで働いてしまって、午前中はボッーとしている、みたいなことが多くて、オフィスに出る日だったら完全に駄目な感じだった。リモートなので朝ボーっとしているのがクリティカルになることはなかった気がする。 結果として今週めっちゃ

    一週間自宅のみでリモートワークしてみたけど働き過ぎた - mizchi's blog
    manaten
    manaten 2014/11/28
  • Angularが嫌い - mizchi's blog

    僕は当にAngularが嫌いで、もはや許せないレベルに達していて、今ではもう当に使いたくない。 イカ理由。 APIがほんっっっっっとうに糞 趣味の問題といえばそうでもあるが僕は糞だと思う 実装が黒魔術 良識あるJSエンジニアなら Function.prototype.toString() しない 実際に一部のクロージャが破壊されてて挙動が直感に反する DirtyCheckの実装、表面的にもDirtyな挙動として現れるのでデータバインドとして何も嬉しくない Googleだから許される、みたいなコミュニティの驕りが当に嫌 Angularの都合だけでChromeでObject.observeを前倒しするのやめろ Angularの内部モジュール同士が密結合 DI, module, factory, それぞれ大きなテーマなのに密結合 使いはじめるとAngularをやめることが困難 パフォーマン

    Angularが嫌い - mizchi's blog
    manaten
    manaten 2014/10/09
  • node.jsで Isomorphic フレームワーク作ってみようとしたら超辛かった - mizchi's blog

    現状どんな実装があるかはここみてください Isomorphic JavaScript - The future of web app development 主張 Node.jsは現状フロントエンドユーティリティに最も適している Node.jsは一般にサーバーサイドでの運用は難しいし、自分もそう思う どうせやるなら、Node.jsにしかできないことをやるべきだ Node.jsのキラーアプリはRailsクローンではなく単体ソースからクライアント・サーバーのコードを同時に生成するIsomorphicフレームワークであるべきだ。 これだけは他のフレームワークには絶対に真似できないので、一応可能性は検証すべきだ 自分で実装することで、MeteorとかDerbyはなぜうまくいってないのかも考えたい というわけで Isomorphicなフレームワークを自分で作ってみたいと思っていた。 今ならせめてCo

    node.jsで Isomorphic フレームワーク作ってみようとしたら超辛かった - mizchi's blog
  • はてブオフのコンテキストがブっ壊されたこと - mizchi's blog

    今日は風邪で寝込んでたんだけど気分悪いついでにあの件胸糞悪いなと考えていたら頭がグルグルしだして、グワーと書き連ねてしまった。 最初に、僕はツイキャスを途中まで見ていた勢で、現場にはいなかった。某プロポーズのシーンは見ていないが、LTは見ている。 オフ会そのものの感想 最初に感じたのは、自分が大昔にTwitterをはじめたときの、あのグチャグチャな感じがあの場で再現されていて、やっぱり行けばよかったと思う程度には楽しそうだった。ネット越しに見知らぬ人が仲良くしているのをみたときに感じる、「けまらしさ」という感情を久しぶりに思い出した。 僕はああいう場が好きだ。別種の人間がぶつかる場所。異なる価値観同士が、お互いの価値観を手探りに伺う場所。全く知らない人間が集まる場所が提供されるのは、東京に出てきて当に良かったと思えるものの一つ。まあ僕がいったとしても、運営が1/3ほど知り合いだったからそ

    はてブオフのコンテキストがブっ壊されたこと - mizchi's blog
    manaten
    manaten 2014/07/15
    地味に小池陸が普通の人間じゃないって言ってるなw
  • altjs武闘会で得られた知見 あるいはTypedCoffeeScriptの進捗と、TypeScriptリファレンスについて - mizchi's blog

    vvakameさんに誘われて、どのAltjsが最強か殴りあう会合に参加してきた。 当日の資料やどんな様子だったかはこちら。 天下一altJS武闘会 - 資料一覧 - connpass 天下一altJS武闘会 - Togetterまとめ で、TypedCoffeeScriptについて発表してきた。自分の発表資料はこれ。 基的な思想とコードを載せてるので、TypedCoffeeScript気になる人はここに載ってるとおりに遊んだらいいと思う。 小学生並みの感想 遅刻しました(完) 自分の発表は淡々としすぎてたのでもっとネタに走ればよかった。でも Altjsのモチベーションは型システムへ ぶっちゃけ構文拡張程度のAltjsはもう皆飽きてて、coffeeでお腹いっぱい感があった。動的型付けのaltjsは、他の動的型付け言語の変換ぐらいしかもう目がないような気がする。 で、後半のパネルディスカッシ

    altjs武闘会で得られた知見 あるいはTypedCoffeeScriptの進捗と、TypeScriptリファレンスについて - mizchi's blog
    manaten
    manaten 2014/06/11
  • Swift ファーストインプレッション - mizchi's blog

    とりあえずThe Swift Programming Language読んで、実際に自分で少し書いてみた感想。 諸事情でAppleにiOSデベロッパーとしてお布施していたので Xcode6beta落として少し書いてみた。プロジェクトスケルトンをswiftで生成できるので、そのコードを眺めたりしていた。 ファーストインプレッション Immutable脳の人が設計したっぽい。 スクリプト言語っぽい構文に、型注釈。これはGoとシンタックス上の設計思想が似ているんだと思う。 基的にImmutableな設計でありながら、オブジェクト指向を採用しており、Scalaっぽいマルチパラダイム感がある。Scalaの人は好きになりそう。 型推論のおかげで動的型付け言語触ってきた人にも抵抗がない感じになってる。推論のおかげで静的型付け言語が動的型っぽくみえるのはHaskellとかOCaml方面の雰囲気。 LLV

    Swift ファーストインプレッション - mizchi's blog
    manaten
    manaten 2014/06/03
    "それなりにコード書いたらまた印象変わると思う" / これに尽きるよね。言語なので、まともなもの書いてみないことには正確な評価はできない。僕はめんどくさがりなので他人の評価を待つスタイル
  • 最小最速で作るaltjs - mizchi's blog

    最近、というか昨日からTypedCoffeeScriptの開発再開してAST 気分が盛り上がってるので、簡単なチュートリアルでも。 この記事でやること ASTの取得 ASTの生成 JavaScript の出力 やらないこと 構文解析 準備 適当にプロジェクト作ります。 $ mkdir tinyaltjs $ cd tinyaltjs $ npm init # 色々聞かれるけどEnter 連打で良い $ npm install escodegen esprima prettyjson --save esprima はJavaScript のコードをASTに変換。 escodegen は AST から JavaScript を生成。どっちもConstellationさん製 escodegenはConstellationさん製で、彼はesprimaにもコミットしてます。この界隈に来ると基的に彼

    最小最速で作るaltjs - mizchi's blog
    manaten
    manaten 2014/05/16
    いいまとめだ