TypeScriptの宣言空間とその不満

最近TypeScriptの型を触っていてハマったあたりのまとめ。だいたい仕様書に書いてあるとおりなので、すでに仕様書を読破している諸兄にはこの記事は必要ないです。 宣言空間 (declaration space) とは 宣言空間というのは、同一宣言空間で同じ名前が複数存在…

HTML FormにPUT/DELTEは必要なのか、あるいはJSer界の分断 #桜JS

先日、都内某所で開催された#桜JSに参加したので、個人の日記レベルの感想を書いてみる。 #桜JS - Togetterまとめ 桜JSでご飯を食べながらLT大会をした | Web scratch 細かいことはazuさんのまとめを見てもらうとして、個人的におもしろかったのがHTML Form…

JavaScript Stringでサロゲートペアを扱う

JavaScriptで強力なUnicodeを扱う方法について書きます!(嘘) 先月末に発売されたWEB+DB PRESS Vol.78で「フロントエンドの国際化」の記事を書いたのは前回書いた通り。 WEB+DB PRESS Vol.78に「フロントエンドの国際化」について書いた! - teppeis blog …

WEB+DB PRESS Vol.78に「フロントエンドの国際化」について書いた!

先週発売されたWEB+DB PRESS Vol.78のJavaScript連載にて、「フロントエンドの国際化」をテーマに記事を書きました! 内容はこんな感じです。

タスクを並列超速化するgrunt-parallelizeを紹介するよ

この記事は Grunt Plugins Advent Calendar 2013 23日目の記事です。 Gruntタスクを並列で実行するプラグイン grunt-parallelize を紹介します。 ある程度プロジェクトが大きくなるとJavaScriptが1500ファイルとか超えてきてJSHintにくっそ時間かかるみたい…

Node.jsの開発を超速化するGitHub連携 三種の神器

Node.js Advent Calendar 2013 - Adventar 9日目です。 あまりネタを用意する時間がなかったので、GitHubにNode.jsのリポジトリを置いたりnpmにパッケージを公開したりしたときに便利な定番サービスを3つ紹介します。 Travis CI Coveralls David タイトルは…

3分で分かるAngularJSセキュリティ

先日のng-mtg#4 AngularJS 勉強会でLTしようと思ったけど申し込みが間に合わなかったのでブログに書きます。 先月リリースされたAngularJS 1.2はセキュリティがんばってる的なことを聞いたので、セキュリティ周りの仕組みを調べてみました。 お題は以下です…

『curry 草枕』カレー Advent Calendar 2013 2日目

さて久しぶりのブログは カレー Advent Calendar 2013(参加者募集中!) の2日目です。 1日目は@yucato_さんの荻窪 トマトでした。 今日のカレーは新宿三丁目のcurry 草枕です。 家が近いこともあって、多分いままでで一番食べてるカレーです。Foursqure見…

grunt-contrib-jshint 0.6.4で.jshintrcにコメントが書けるようになったよ

本家のJSHintでは、.jshintrcのなかでこんな感じでコメントが書けるんですけど、 { // Enforcing "bitwise" : true, // true: Prohibit bitwise operators (&, |, ^, etc.) "camelcase" : false, // true: Identifiers must be in camelCase "curly" : true,…

Google HTML/CSS Style Guideについて、そろそろひとこと言っておくか

話題になっていたので、 <html>,<body>は要らない?Googleが推奨するHTMLファイルの記法 - Qiita [キータ] 便乗して、一年以上前に社内勉強会で作った資料があったので今更ながら公開してみます。 Best practice from Google HTML/CSS Style Guide</body></html>

Docker = LXC + aufs + GitHub Culture

先日、社内勉強会のLTでDockerについて発表というか紹介しました。 DockerがYAVAY! from teppeis Dockerは各方面で噂は聞いていたんだけど、先月のTesting Casual Talks #1 : ATNDで、mizzyさんのDocker上でserverspecを走らせるデモを見てガツンとやられま…

超高速レビュー: TypeScript 0.9.1

タイトルは今日のネタから頂きました。与沢さんじゃないです。 さて本日TypeScript 0.9.1がアナウンスされたので、変更点などを見てみます。 Announcing 0.9.1 - TypeScript - Site Home - MSDN Blogs

Re: RequireJSを使うのを止めた理由

RequireJSを使うのを止めた理由 | それなりブログ を読んで、ほぼ同意だったのですが、意識が高まったのでいくつかコメントを。

URL移転前のはてブを表示するChrome拡張『hatemove』をTypeScriptで作った。

はてブさんいつもお世話になってるんですが、サイトのURLが移転しちゃうと過去のデータ引き継げないっていう問題があります。 ここ最近GitHub PagesとGistのURLが変わっちゃって、「あれ、これ前に見たっけ?」っていうことが増えてきたので、移転前のはてブ…

WEB+DB PRESS Vol.75でTypeScriptの記事を書きました!

本日発売のWEB+DB PRESS Vol.75のJavaScript連載にて、TypeScriptの記事を書かせていただきました。 WEB+DB PRESS Vol.75作者: 栗林健太郎,柴田博志,黒田良,安宅啓,松下雅和,桑野章弘,Jxck,伊藤直也,佐藤鉄平,中川勝樹,登尾徳誠,奥野幹也,近藤宇智朗,堀江幸…

サードパーティCookieをブロックしたまま『はてなブログ』を管理する

Chromeで『サードパーティのCookieとサイトデータをブロックする』をチェックすると、はてなにログインしててもはてなブログのヘッダーとかが未ログイン状態の表示になっちゃいます。 はてなブログがhatenablog.comドメインなので、hatena.ne.jpのCookieがブ…

第38回 HTML5とか勉強会でテストについて話しました。

先週の4/26に開催された第38回HTML5とか勉強会「Webアプリ×テスト最新事情」で、JavaScriptのテストについて話させてもらいました。 発表資料はこちら。 JavaScript Unit Test Why? What? How? from teppeis

brew install ackでエラーになる件

mac

ack 2.0がリリースされてたのでHomebrewで入れたらエラーになった件のメモ。 $ brew install ack ==> Downloading http://beyondgrep.com/ack-2.02-single-file Already downloaded: /Library/Caches/Homebrew/ack-2.02.02-single-file ==> pod2man /usr/loc…

Closure Compilerの型テンプレートが進化してる件

altjsガチ勢のみなさんこんにちは。 TypeScriptの次期バージョンでジェネリクスが入るぜ!なんて話題になってたりしますが、Closure Compilerのテンプレートまわりも人知れず進化しているので紹介。 なぜかドキュメントにはさっぱり載ってないので、Compiler…

Effective JavaScript勉強会 #1

社内でEffective JavaScriptの勉強会を始めました。 第1回の資料をslideshareに上げたので、シェアさせていただきます!(春なので意識高め) Effective JavaScript Ch.1 from teppeis スライドにも書いたけど、これまでだと類書で薄いのは『JavaScript: The…

ArrowFunctionのthis: ES.nextとCoffeeScriptとTypeScript

Firefox 22(Nightly) で ArrowFunction が実装されたが、扱いが難しい - hogehoge @teramako id:teramakoさんの記事を読んで、ES.nextのArrow Functionって単純な省略記法じゃないんだーっとか思ったけど、よく考えたらCoffeeScriptだってfat arrowならthis…

WEB+DB PRESS Vol.73にJSのユニットテストについて書きました!

本日(2/23)発売の WEB+DB PRESS Vol.73 にて、JavaScript連載第6回『最新ツールを使ったモダンなユニットテスト Mocha, Testem, Sinon.JS』を執筆させていただきました! WEB+DB PRESS Vol.73作者: 設樂洋爾,白土慧,はまちや2,大和田純,松田明,後藤大輔,ひ…

1年前のSass/Compassを振り返ってみた

昨年末のブログを見てみたら、Sass/CompassでPass風のメニューを作って遊んでました。 当時はSass 3.2のリリース前で、あれこれとダーティハックをしていたので、最近のSass/Compassだとどうなるのか?と思ってアップデートしてみました。 https://github.co…

はてなブログに移行した。

さすがにはてなダイアリーもどうだろうと思いつつ、octopress的なものもちょっと面倒だなと思っていたところ、 最近のはてなブログならはてブもスターもワンボタンで移行できる上にリダイレクトまで設定してくれるということで、さくっと設定してみた。 ホン…

WEB+DB PRESS Vol.71のJavaScript連載にjQuery再入門の記事を書いたよ。

本日10/24発売のWEB+DB PRESS Vol.71のJavaScript連載に「プログラマのためのjQuery再入門 〜パフォーマンス,イベント制御,非同期処理〜」という記事を書きました! WEB+DB PRESS Vol.71作者: 竹迫良範,Jxck,じょさん,後藤秀宣,藤原俊一郎,奥野幹也,堤智代…

Mountain LionでHomebrewがこける件

mac

クロネコさんからMacBook Airを受け取って、いつもの流れでXcode入れてHomebrew入れてもろもろbrew installしていったところ、brew install svnの途中でmakeが見つからないエラーで止まる。どうやらXcode入れるだけじゃだめで、Xcodeの設定画面から"Preferen…

WEB+DB PRESS Vol.69にRequireJSネタを書いたよ。

本日6/23発売のWEB+DB PRESS Vol.69のJavaScript連載にて「RequireJSでらくらくモジュール管理」という記事を書きました。WEB+DB PRESS Vol.69作者: 大塚弘記,渡辺修司,堤智代,森田創,中島聡,A-Listers,はまちや2,川添貴生,井上誠一郎,近藤宇智朗,ヒノケン,…

Closure Templatesのオートエスケープが最強すぎる件

rails3以降のWEBアプリケーションにありがちなXSS - hanagemanの日記ではない この記事を読んで、ちょうど最近使っているGoogle Closure Templatesがいい感じだったので紹介します。 コンテキストが異なる/重なるポイントでのエスケープ問題 最近のほとんど…

Stylus/mochaがやってるGlobal leakテストとNode.js Debugger

先日、Stylusのコードをいじってたらグローバルリークがあったので、修正してPullリクエストしました。(TJが即マージしてリリース済みだよ!)リークを見つけたのは、StylusのテストコードにGlobalオブジェクト汚染を検出するテストがあってそれをたまたま…

Mac OS X & Homebrewでcairoのインストール

node-canvasをインストールするために、依存するcairoをbrewで入れようとしたらなんかエラー。 $ brew install cairo ... ld: lto: could not merge in .libs/cairo-analysis-surface.o because Unknown instruction for architecture x86_64 collect2: ld r…