タグ

2014年12月17日のブックマーク (13件)

  • web workers三兄弟

    Service workersの仕様を説明していて思ったのだが人々はどれぐらいweb workersのことについて詳しいのだろうか。 あんがい知らない気がするので簡単に解説してみる。まあ俺もニワカです。 共通部分 ブラウザのなかで、ウェブページとはある程度独立して、ある種の処理をするためのスクリプトを実行するモノのことをworkerと呼んでいる。ようするにJSの実行環境というかVMインスタンスというか。 ブラウザのなかでふつうのJSの実行環境であるタブの中とはいろいろ違うが、 windowオブジェクトがない。一部のJS APIは使えないしdocumentなどは持たない。DOMツリーもさわれない ただしメッセージループは持つ。windowはないがselfというやつがいてこいつを使う(self.onmessage = function() { ... } みたいな感じ) タブのなかとはmess

    Jxck
    Jxck 2014/12/17
    service worker と shared worker の違いという点ではこの辺に書かれてる https://github.com/slightlyoff/ServiceWorker/blob/master/explainer.md
  • React.jsとserver-side rendering - Qiita

    server-side renderingとは文字どおりサーバーサイドでHTMLを生成してrendering出来るようにするものです。SinglePageApplicationのようなJavaScriptでDOMを組み立てるようなアプリケーションの場合、サーバーから返されるHTMLには空のdivだけがあってそこからJavaScriptを読み込んでtemplateを描画することになり、これには2点の問題点があります。 初期のロード時間 HTMLが返されてJavaScriptを評価してそこからtemplateの表示になるので、サーバーサイドからHTMLが返される場合と比べて当然時間が掛かります。なので別途ローディングを見せるなどの工夫が必要になります。 SEO 最近だとGoogleのクローラーがJavaScriptを解釈するようになったのでGoogleについては問題ないと言えるかもしれませんが

    React.jsとserver-side rendering - Qiita
    Jxck
    Jxck 2014/12/17
    server side rendering
  • Google グループ

    Google グループでは、オンライン フォーラムやメール ベースのグループを作成したり、こうしたフォーラムやグループに参加したりすることで、大勢のユーザーと情報の共有やディスカッションを行うことができます。

    Jxck
    Jxck 2014/12/17
  • jq コマンドを使う日常のご紹介 - Qiita

    jq コマンドとは http://stedolan.github.io/jq/ JSONから簡単に値を抜き出したり、集計したり、整形して表示したりできるJSON用のgrepとかawkみたいなコマンドです。 WebサービスがJSONを吐いたり、AWS CLIが JSON を吐いたりする現代社会で大変便利なコマンドです。 マニュアル だいたいここ読めばOK. http://stedolan.github.io/jq/manual/ あ、これで、終わってしまう。だけど気にせず進めます。 簡単な例 まず、空気をつかみましょう。 以下jqコマンドの記法を見ていきます。JSON { "hoge": "value" } があった場合、 . がルート {} を表します。.hoge で "value" を表現します。だいたいこんな感じです。 ただの整形 しばらく下記のJSONを例に進めます。itemsには配

    jq コマンドを使う日常のご紹介 - Qiita
    Jxck
    Jxck 2014/12/17
  • Mozilla and Web Components: Update – Mozilla Hacks - the Web developer blog

    Thanks! Please check your inbox to confirm your subscription. If you haven’t previously confirmed a subscription to a Mozilla-related newsletter you may have to do so. Please check your inbox or your spam filter for an email from us. Laurentj >Mozilla will not ship an implementation of HTML Imports HTML imports are not only related to web components. I don’t understand your choice to not implement

    Mozilla and Web Components: Update – Mozilla Hacks - the Web developer blog
    Jxck
    Jxck 2014/12/17
    Mozilla はとりあえず HTML Imports を実装しないらしい。 ES6 module や Service Worker もあるので、とりあえず様子を見てから考えたいというコメント。
  • Dartで仮想DOMライブラリの「vdom」だけでMV*なビューを書くのは大変でした - Qiita

    こんにちは、らこです。今日はDartで仮想DOM使って遊ぼうと思います。こちらの仮想DOMライブラリの「virtual-dom」だけでMV*なビューを書くという記事に触発されてやりました。同じようなことをDartで書きます。はじめに言っておきますが、Dartで仮想DOM使うのを推す記事ではありません。 仮想DOMを使うにあたってJavaScriptの「virtual-dom」と同じようにDartでは「vdom」を使います。 サンプルコード(ボタンとカウンター) シンプルに、ボタンを押したらカウンターが更新されるビューを書きました。 HTMLにはマウント用の要素をおいているだけです。 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Vdom-Dart</title> <link rel="stylesheet" href

    Dartで仮想DOMライブラリの「vdom」だけでMV*なビューを書くのは大変でした - Qiita
  • JavaScript Developer Survey 2014 - Google Forms

    Jxck
    Jxck 2014/12/17
    JavaScript Survey 結果出てた。 mocha より jasmine がちょっと多いのかぁ。
  • 2014年のWebパフォーマンスふりかえり - 来年以降の期待etc

    ひさびさにWebフロントエンドパフォーマンス系の話題をつらつらと書いてみます。例によってモバイル系開発者寄りの視点かもしれません。文中の参照リンク多め。 ファクタ まずはパフォーマンスに影響を与えるファクタについての所感。Webパフォーマンスにおけるイニシャライズとランタイム ::ハブろぐ で示した分類に基づきます。 イニシャライズ(いわゆるページロード) 4GやLTEが普及してもコンテンツの肥大化には追いついていない concat と CSS Sprites の呪いが解けない HTTP/2 の Streams and Multiplexing に期待 HTTP/2 の Server Push にも期待 画像周りだと <picture> 関連仕様も使いたい(srcsetだけならいける?) WebRTC とか WebSocket とかストリーミングとかは? (やや疎い、てかイニシャライズじゃ

    2014年のWebパフォーマンスふりかえり - 来年以降の期待etc
    Jxck
    Jxck 2014/12/17
    フロントエンドからの HTTP2 ノウハウ蓄積も来年の課題だよなぁ。
  • Kyndryl United States

    Kyndryl Bridge An open integration platform delivering IT solutions. Learn more

    Kyndryl United States
    Jxck
    Jxck 2014/12/17
    API 設計からデプロイ、マイグレーション、モニタリング、全部入り GUI ツールらしい。 StrongLoop 攻めてるな。
  • AkamaiがGoogle Public DNSに対応:Geekなぺーじ

    Google Webmaster Central Blogで、AkamaiGoogle Public DNSに対応したことが公表されています。この対応が行われるまでは、Google Public DNSを利用することによって、大手Webサイトの表示やiOSのダウンロード速度が低下しがちだったのが、これによって改善するかも知れません。 Google Public DNS and Location-Sensitive DNS Responses Google Public DNSがサービスを開始したのは2009年です。スノーデン事件の影響で利用者数が減った地域もあったという調査結果も2013年にあったものの(参考)、Google Public DNSユーザが世界中で非常に多いようです。たとえば、先月公開されたAPNICのブログでは、全世界で約10%のユーザがGoogle Public DNS

    Jxck
    Jxck 2014/12/17
    8.8.8.8 で引いてる人も akamai 経由のコンテンツ取得が早くなるという意味かな?
  • 処理開始後の例外処理では「サニタイズ」が有効な場合もある

    このエントリでは、脆弱性対処における例外処理について、奥一穂氏(@kazuho)との会話から私が学んだことを共有いたします。セキュアプログラミングの心得として、異常が起これば直ちにプログラムを終了することが推奨される場合がありますが、必ずしもそうではないというのが結論です。 はじめに Webアプリケーションの脆弱性対策では、脆弱性が発生するのはデータを使うところであるので、データを使う際の適切なエスケープ処理などで対処するのがよいと言われます。しかし、処理内容によってはエスケープができない場合もあり、その場合の対処についてはまだ定説がないと考えます。 エスケープができない場合の例としては、以下があります。 SQLの数値リテラルを構成する際に、入力に数値以外の文字が入っていた メール送信しようとしたが、メールアドレスに改行文字が入っていた 入力されたURLにリダイレクトしようとしたところ、U

    Jxck
    Jxck 2014/12/17
    サニタイズとバリデーションの話
  • テストをテストする方法-ミューテーションテスト- #gadvent - うさぎ組

    はじめに これはG* Advent Calendarの12日目の記事です。今日はミューテーションテストについて書きます。明日はid:nobusue さんです。 概要 PITというツールの紹介です。「Javaプロダクトコードを機械的に変更してからテストを実行したときに、テストはそれを検知できるのか?」ということを調べてくれるツールで、SpockのテストやGradleからの実行に対応しています。 ミューテーションテスト ミューテーションテストとはざっくりと言えば「プロダクトコードを変更したなら、その振る舞いも変わるはず。テストはその変更された振る舞いを網羅できているかを調べる」というテストです。 対象規模が小さければ手動で毎回やってもいいわけですけど、ツール化されていると楽なことこの上ないです。ということで、今回はJavaプロダクトコードをミューテートするライブラリであるPITについて紹介しま

    テストをテストする方法-ミューテーションテスト- #gadvent - うさぎ組
    Jxck
    Jxck 2014/12/17
    AST などいじってコードの条件式などを意図的に変更して、それをテストが検知できるのかを調べるミュテーションテストの話。
  • GitHub で submodule ではなく subtree を使うべき理由

    GitHub には、タグを打つとソースパッケージを自動的にリリースするという機能があります。スクリプト言語においては、それぞれの言語について一般的なパッケージ管理システム注1があるため、この機能を使うことが少ないかと思いますが、デファクトのパッケージ管理システムが存在しないC等の言語で書かれたプログラムや、単独で動作する管理用のスクリプトを GitHub で開発・配布する際には、機能はとても便利なものです。 しかし、この機能は git-archive コマンドのラッパーとして実装されているため、サブモジュールのファイルが含まれないという問題を抱えています。この点は GitHub の人たちも認識しているものの、今のところ GitHub で独自に対応するということは考えていないようです注2。 私がこの問題を 知ることになったのは、picojson の issue で指摘を受けたからです。pi

    Jxck
    Jxck 2014/12/17
    Subtree 初めて知った。