タグ

ブックマーク / teppeis.hatenablog.com (10)

  • 3分で分かるFacebook Flow - teppeis blog

    というか3分ぐらいの情報しかまだ出てきてないんだけど。 先月の@Scale 2014で発表されたFacebookのFlowについて、おそらく唯一のオフィシャルな情報であるこの発表動画を見て分かったことを紹介(ざっと見ただけなので間違ってたらごめんなさい)。 JavaScript Testing and Static Type Systems at Scale - @Scale 2014 - Web 静的な型チェックができるトランスパイラ シンタックスはTypeScript互換 なのでnew languageとかaltjsとか言ってない Code Intelligent Server: コンパイラはサーバー型 モジュール毎にインクリメンタルに型解析をアップデートする 高度に並列化していて高速 クライアントツールは、コンパイラサーバーに型情報のクエリを投げる ES6の各種シンタックスをサポート

    3分で分かるFacebook Flow - teppeis blog
    laiso
    laiso 2014/10/29
  • HTML FormにPUT/DELTEは必要なのか、あるいはJSer界の分断 #桜JS - teppeis blog

    先日、都内某所で開催された#桜JSに参加したので、個人の日記レベルの感想を書いてみる。 #桜JS - Togetterまとめ 桜JSでご飯をべながらLT大会をした | Web scratch 細かいことはazuさんのまとめを見てもらうとして、個人的におもしろかったのがHTML FormのPUT/DELETEについての議論。 なぜ html の form は PUT / DELETE をサポートしないのか? - Block Rockin’ Codes Jxckさんの経緯まとめを踏まえて、じゃあこれからHTML FormにPUT/DELETEを追加する必要あるの?っていう点で意見が割れた。 個人的には、この話を聞いたとき、確かに仕様としては欠けてる感じがするけど、いまさら実装されても自分はForm PUT/DELETE使うことはないだろうなと思っていた。理由は、FormでPUT/DELETE

    HTML FormにPUT/DELTEは必要なのか、あるいはJSer界の分断 #桜JS - teppeis blog
    laiso
    laiso 2014/04/09
  • 3分で分かるAngularJSセキュリティ - teppeis blog

    先日のng-mtg#4 AngularJS 勉強会でLTしようと思ったけど申し込みが間に合わなかったのでブログに書きます。 先月リリースされたAngularJS 1.2はセキュリティがんばってる的なことを聞いたので、セキュリティ周りの仕組みを調べてみました。 お題は以下です。 CSRF JSON CSP (Content Security Policy) Escaping CSRF ユニークなトークンをHTTPリクエストに載せてサーバーでチェックする対応が世の中では主流(最近はカスタムヘッダのチェックによる対策も) AngularJSでは、XSRF-TOKEN Cookieにトークンが載っていると、$httpを使ったHTTPリクエストのヘッダに自動的にX-XSRF-TOKENヘッダーが付く。 XSRF-TOKEN CookieはもちろんNot HttpOnlyで。 Angular界ではCS

    3分で分かるAngularJSセキュリティ - teppeis blog
    laiso
    laiso 2014/02/17
  • Google HTML/CSS Style Guideについて、そろそろひとこと言っておくか - teppeis blog

    話題になっていたので、 <html>,<body>は要らない?Googleが推奨するHTMLファイルの記法 - Qiita [キータ] 便乗して、一年以上前に社内勉強会で作った資料があったので今更ながら公開してみます。 Best practice from Google HTML/CSS Style Guide はい、当時流行っていたimpress.jsを使いたかっただけの資料ですね。 読めば分かるように、これはGoogleさんの中の人のためのスタイルガイドっていう側面が強くて、とにかく1byteでも削ることに命を懸けてます。省略できるところは全部削っていくスタイル。 われわれ平民の提供するサービスとはトラフィックの桁がいくつも違う世界の話なので、鵜呑みにすると悲しいことになりますのでお気をつけて。 ちなみに、 HTML and CSS, including GSS files のGSSっ

    Google HTML/CSS Style Guideについて、そろそろひとこと言っておくか - teppeis blog
    laiso
    laiso 2013/08/29
  • URL移転前のはてブを表示するChrome拡張『hatemove』をTypeScriptで作った。 - teppeis blog

    はてブさんいつもお世話になってるんですが、サイトのURLが移転しちゃうと過去のデータ引き継げないっていう問題があります。 ここ最近GitHub PagesとGistのURLが変わっちゃって、「あれ、これ前に見たっけ?」っていうことが増えてきたので、移転前のはてブを表示するChrome拡張を作りました。 インストールはこちらからどうぞ↓ https://chrome.google.com/webstore/detail/hatemove/olhdaknacbkplofejfmcfjgkjdjpggml 移転があったらアイコンが緑に、移転前のブクマがあったらカウントを表示します。 自分がブクマしてたらチェックマークが黄色くなります(アイコンしょぼくてごめんなさい)。 御馴染みhokaccha先生の神プレゼンも、公式はてブ拡張と並べると荒稼ぎっぷりが一目瞭然です! ちなみにこのうち60人は移転前

    laiso
    laiso 2013/07/17
  • ArrowFunctionのthis: ES.nextとCoffeeScriptとTypeScript - teppeis blog

    Firefox 22(Nightly) で ArrowFunction が実装されたが、扱いが難しい - hogehoge @teramako id:teramakoさんの記事を読んで、ES.nextのArrow Functionって単純な省略記法じゃないんだーっとか思ったけど、よく考えたらCoffeeScriptだってfat arrowならthisをbindするわけで、むしろ自然だし便利ですよねと思い直しただけの記事です。 ES.next var obj = { threshold: 3, getOverThreshold: function (items) { return items.filter(n => n > this.threshold); } }; filterメソッドの中を普通のfunctionで定義しちゃうとthisがglobalオブジェクトになっちゃうんでselfとか

    ArrowFunctionのthis: ES.nextとCoffeeScriptとTypeScript - teppeis blog
    laiso
    laiso 2013/04/09
  • WEB+DB PRESS Vol.73にJSのユニットテストについて書きました! - teppeis blog

    日(2/23)発売の WEB+DB PRESS Vol.73 にて、JavaScript連載第6回『最新ツールを使ったモダンなユニットテスト Mocha, Testem, Sinon.JS』を執筆させていただきました! WEB+DB PRESS Vol.73 作者: 設樂洋爾,白土慧,はまちや2,大和田純,松田明,後藤大輔,ひろせまさあき,小林篤,近藤宇智朗,まかまか般若波羅蜜,Mr. O,川添貴生,重国和宏,柳澤建太郎,奥野幹也,佐藤鉄平,後藤秀宣,mala,中島聡,堤智代,森田創,A-Listers,WEB+DB PRESS編集部出版社/メーカー: 技術評論社発売日: 2013/02/23メディア: 大型購入: 12人 クリック: 131回この商品を含むブログ (4件) を見る 内容はこんな感じ。 最近のJS開発におけるユニットテストの位置づけ やたらと盛り上がっているJSのテスト

    WEB+DB PRESS Vol.73にJSのユニットテストについて書きました! - teppeis blog
    laiso
    laiso 2013/02/25
  • Stylus/mochaがやってるGlobal leakテストとNode.js Debugger - teppeis blog

    先日、Stylusのコードをいじってたらグローバルリークがあったので、修正してPullリクエストしました。(TJが即マージしてリリース済みだよ!) リークを見つけたのは、StylusのテストコードにGlobalオブジェクト汚染を検出するテストがあってそれをたまたま走らせただけなのですが、このテストがシンプルかつ効果的でいいなと思いました。 https://github.com/LearnBoost/stylus/blob/master/test/run.js // Testの初期化時にデフォルトのグローバルオブジェクトのキーを保存。 var globals = Object.keys(global); ... // Testが終わったらグローバルオブジェクトの差分をチェック function done() { Object.keys(global).forEach(function(nam

    Stylus/mochaがやってるGlobal leakテストとNode.js Debugger - teppeis blog
    laiso
    laiso 2012/01/17
  • neocomplcache に乗り換えた。 - teppeis blog

    Vim の自動補完にはずいぶん長く AutoComplPop を使っていたのですが、最近は neocomplcache がモダンらしいとのこと。 neocomplcacheとは? VimScriptによって実装された究極の補完環境。 Presentation file - neocomplcache - GitHub 確かに、AutoComplPop の日本語入力との相性の悪さが気になってたんですよね。 というか、究極っていいですよね。究極ですよ究極! ということで、重い腰を上げて乗り換えてみました。 AutoComplPop の各種ファイルを削除してから、vimball で一発インストール。 $ wget -O neocomplcache-5.1.vba http://www.vim.org/scripts/download_script.php?src_id=13456 $ vim n

    neocomplcache に乗り換えた。 - teppeis blog
    laiso
    laiso 2010/09/26
  • vimrc, runtime の優先順位を理解して Windows と Linux で Vim の設定を共有する - teppeis blog

    Vim の設定ファイルと言えば .vimrc ですが、これが Windows だとファイル名が異なって _vimrc とされています。 また、プラグインファイルを設置する runtime ディレクトリの名前も OS によって異なっています。 別々に管理するのは面倒なので、設定ファイルの優先度を調べながら、同じリポジトリを使用して一元管理する方法を探ります。 vimrc の共有 まず、vimrc にはシステム vimrc とユーザー vimrc の2種類があります。 システム vimrc → ユーザー vimrc の順で読み込まれ、重複する設定はユーザー vimrc で上書きされます。 システム vimrc に使用されるファイルは、基的には $VIM/vimrc ですが、システムにより異なります。 正確にはコマンドラインで :version を実行すると使用しているシステムでの vimrc

    vimrc, runtime の優先順位を理解して Windows と Linux で Vim の設定を共有する - teppeis blog
    laiso
    laiso 2009/01/24
  • 1