JSer.info #177 - ビルドツールであるgulpの3.7.0がリリースされました。
altjs - gulp 3.7 リリース: CoffeeScriptネイティブに - Qiita
でも紹介されていますが、大きな変更点としては今までは設定ファイルは.js
以外で書こうとすると以下で書かれているようなgulp --require coffee-script
という引数指定が必要でした。
3.7.0からはgulpfile.coffee
というファイル名で書いた設定ファイルがあるなら自動的にcoffeescriptとして実行されるようになりました。
これはtkellen/node-liftoffというモジュールがそのような設定ファイルを元にした実行の補助をしてくれて、拡張子とコンパイラ(モジュール)の対応辞書はtkellen/node-interpretを利用しているようです。(jsVariantsに書かれている形式なら設定ファイルを書けるという事)
Compassと並んでいつ1.0がでるのかと言われていたSocket.IOですが、 ついにSocket.IO 1.0がリリースされました。
Socket.IO — Introducing Socket.IO 1.0にてどのような変更があったかが詳しく解説されています。
先月末にJavaScriptの最大級のイベントの一つであるJSConf US 2014が開催されました。
まだ、公式のまとめはきていませんが、JSConf 2014 Slides, Codes and Notes.に公開されているスライドと@chantasticさんによる一枚絵等がまとめられています。
Notes from @nzgb's @jsconf talk “Front End Ops Tooling” pic.twitter.com/y4WpW3CmYS
— Michael Chan (@chantastic) May 28, 2014
スライドのセクションで気になったものを一部紹介しています。
また、動画の方は後日JSConf - YouTubeにあがるようなので、気になる人はこちらをチャンネル登録などしておくといいかもしれません。
ヘッドライン
Release 3.7 · gulpjs/gulp
streamベースのビルドシステムツールであるgulp 3.7リリース。
設定ファイルをjs以外、coffeescriptなどでも書けるようになった(node-liftoffを利用)
The Pure Blog — Pure 0.5.0
Pure 0.5.0リリース。
Gridの仕組みが改善されて、大中小でいくつのカラムになるのかを指定できるように。サイトのドキュメントがアップデートされた
RequireJS 2.1.12 Released ~ James Burke
RequireJS 2.1.12リリース。
Socket.IO — Introducing Socket.IO 1.0
Socket.IO 1.0リリース。
WebSockets等のtransport周りのクロスブラウザ対応はEngine.IOという別モジュールへレイヤー分け、Coreの軽量化、バイナリのサポート、デバッグツールの展望等
アーティクル
Love Generating SVG With JavaScript? Move It To The Server! | Smashing Magazine
JavaScriptでSVGを作成する方法について。
PhantomJSを使っての生成やsvableを使った方法について
スライド、動画関係
JSConf 2014 Slides, Codes and Notes.
JSConf US 2014 のスライドまとめ
rpflorence/jsconf2014
Ember,Angular,React,Polymer,Backbone ライブラリについて、それぞれがどのような目的で作られたのか、またどのような要素/特徴を持ってるについてよくまとまってるスライド
Hacking with Unicode // Speaker Deck
ユニコードとJavaScriptについて詳しく書かれたスライド(と動画)
ユニコードでの問題として文字数とlengthの違い、ノーマライズ、反転時の問題、正規表現でUnicode symbolがマッチしない問題。
ES6での正しくコードポイントやサロゲートペアを扱う方等について。
それを利用したMySQLやXSSの事例についても
Front End Ops Tooling // Speaker Deck
ビルドファーストという考え方、ビルドツール、プロセス、ワークフローについてのスライド。
Grunt/gulp/npm run-scriptそれぞれの特徴。またCommonJSで書いてbrowserifyでビルドすることの利点について。
Everything is broken, and I don’t know why. // Speaker Deck
JavaScriptのエラースタックトレースについてのスライド。
スタックの読み方や各ブラウザでの違い、どのようにエラー情報を回収するかについて。
またSentryというサービスとRaven.jsについて
- Sentry: Track exceptions with modern error logging for JavaScript, Python, Ruby, Java, and Node.js
- getsentry/raven-js
eval everything - Running Student Code at Code School // Speaker Deck
チュートリアル等で見かけるページ内でJavaScriptを実行出来るiframeのSandboxをどのように作るかについてのスライド。
入力されたコードを実行するだけではなく、Lintやテストを行う話
Unshackling JavaScript with Macros // Speaker Deck
sweet.jsのマクロを使ったEmojiScriptについてのスライド。
sweet.jsを使ったHygieneなマクロ、パターンマッチ等についても紹介してる
ソフトウェア、ツール、ライブラリ関係
then/promise
ES6 Promisesなライブラリ。
仕様にはないけどよく使いそうなdenodeify
、nodeify
、done
が用意されてる。
またPromiseの拡張方法(継承とdelegateとprototype)について書かれてる
ask11/storage · GitHub
localForageのラッパライブラリ。 バッチ処理、nodeスタイルのコールバックの対応(localForageはPromiseが基本)、シンプルなAPI
TremayneChrist/ProtectJS
prototypeに実装されてるメソッドで_
で始まるものをprivate method的に呼べなくするライブラリ。
(protectしたオブジェクトを作成する)
Empeeric/asynctrace
node.js 0.11以降のtracing apiと https://github.com/othiym23/shimmer を使ってMochaでのテスト実行時に深いスタックトレースを表示できるnode module
サイト、サービス
XSS game
XSSについて問題を解きながら学べるゲーム形式のサイト
書籍関係
#buildfirst · bevacqua.io
ビルドファーストについての書籍。
ウェブアプリケーションを作るワークフロー、ツール. サンプルやスニペット等が公開されてる