latest log

酩酊状態で書いたエンジニアポエムです。酩酊状態で読んでください。

タバコを嫌うエンジニアは多いが、同じようにローマ字入力も嫌うべきだ

最近の小学校の先生はローマ字入力しか教えられないらしく、せっかく子供をかな打ちで育てても、学校でローマ字入力に矯正させられる。 もしくはそういう「ローマ字入力以外は認めない」といった教育要項があるのかもしれないが、ああいうのは今後止めてもら…

Image resize in github flavored markdown.

GitHub markdown は ![](url) により画像を表示できますがリサイズできません。 僕達が本当にやりたい事は、![](url | width=100) や ![](url =200x400) といったお手軽にリサイズする方法なのですが、現状そのような機能は存在しないようなので、なんとかす…

WebKit が WebAssembly の実装を開始したようですが iOS 9 には入りません

2015-08 の初週には、iOS 9 に入る機能が決定されます。あと数日ですね。 ということで、iOS 9 に入りそうな機能候補をまとめたページを更新しました。 以下の機能は iOS 9 には含まれません。iOS 10 に期待しましょう。 MediaSession WebAssembly WebCompon…

アホロートルエンジニアから見た特許

昨年特許を出願した時にいろいろと勉強した事もあり、老害知識を絡めて書いてみました。10分LT向けのボリュームです。 盛り込めなかった要素もたくさんあり、一部過激な部分はカットしてお届けしております。 弱い特許を強い特許にするにはどういったやり方…

nginx: Avoid CORS and reverse proxy settings

ブラウザから XHRでAPIサーバにアクセスして JSON が欲しいんじゃあ、 でもサーバに(Access-Control-Allow-Origin *)は置けないんじゃぁ、 CORS 嫌いじゃぁぁぁぁ という状況。実によくあると思います。 nginx でその辺やったことなかったので、やってみたら…

Update GitHub/WebKitChangeLog.wiki

I have updated Compare Revisions · uupaa/WebKitChangeLog Wiki · GitHub, It is one month value of progress.

Block modal dialogs inside a sandboxed iframe

JavaScript の Array#sort で return 0 すると要素の順番は不定になります

Node.js - v8(Node/Chrome)のソートは崩壊しました(非安定ソート) - Qiitaqiita.com を拝見してました。心当たりがあるのでメモ程度に。 JavaScript の Array#sort は仕様的に非安定ソートで、実際もそうです。実装により異なる結果が得られます。 より具体…

iPhone/iPad/Android 用のサイズ違いのアイコンを自動的に作成してくれるサイト

それが http://iconogen.com/ 作成したアイコンをまとめて zip でダウンロードすることもできます。 (ε・◇・)з o O ( waifx2 がめっちゃ活躍しそうなサービスだ!

HTML の linkタグに prefetch 機能が追加され、より便利になるようです

linkタグに pre fetch 機能を追加する仕様 (Editor's Draft)が上がってきています。 Chrome - indevelopment IE - サポートするかも Firefox - 不明 Safari - 不明 <link rel="preload" href=“…" as=“…" onload=“…” onerror=“…”> 従来は、new Image や XHR と DOM API を使ってリソース毎に別々のJavaScriptを記述する必</link>…

Xperia Z4 の標準ブラウザは使わずに、Chrome を使ってください

docomo, au, Softbank から発売されている Xperia Z4 には、2種類のブラウザ(標準ブラウザ, Chrome)がプリインストールされた状態で出荷されていますが、標準ブラウザで Canvas を使った場合に、アニメーションの表示順番がおかしくなるという問題を抱えてい…

Android 5.0 バージョンアップ予定端末から見る、購入後も安心できるメーカーと、売りっぱなしなメーカーとの光と影

先日、Android 5.0 バージョンアップ予定の端末について、キャリア各社から発表がありました。 docomo au SoftBank Xperia Z3 1機種のみ メーカー別の対応率 メーカー別のAndroid 5.0対応状況をまとめてみました。 2013 Q3 〜 2014 Winter に発売された端末…

Optimize a variable using a reference to the TypedArray.

(ミ・◇・ミ) まゆつば。まゆつば

iOS 9 MobileSafari に入るかもしれない機能の一覧 (2015-04-28 update)

https://github.com/uupaa/WebKitChangeLog/wiki/iOS9.x.x.changesets と関連するページを更新しました。 ES6 Modules はこれから ES 6 の主要な機能はだいたい実装できてきています。あとは ES6 Modules が入れば… という段階ではないでしょうか。 WebKit …

Chrome 42 で NPAPI プラグインが無効化されました。開発が間に合わない人は泣きましょう

Chromium 開発チームは過去に NPAPI プラグインを廃止すると宣言しており、2015/4/14 にリリースされた Chrome 42 Stable ではデフォルトで無効になりました。 2015/9 頃にリリースされる予定の Chrome 45 で完全に利用不能になる予定です。 Unity Web Playe…

iOS 9 MobileSafari に入るかもしれない機能の一覧

以前は、https://github.com/uupaa/Spec.js/wiki にぶら下げていたのですが、専用のブランチに移動しました。 https://github.com/uupaa/WebKitChangeLog/wiki/iOS9.x.x.changesets このような機能が利用可能になると予想しています。 HTML/DOM/CSS ES6 のテ…

Re: Freezing Chrome for Ice Cream Sandwich

2015-03-03 にこういった記事が踊りました。 Freezing Chrome for Ice Cream Sandwich Google、Android 4.0向けChromeのサポート打ち切りへ ついネガティブな思考に囚われた人もいるとは思いますが、あらかじめこのような事態を想像していた人も少なからずい…

requestAnimationFrame and Date.now in WebKit

2015-03-03 の一連のツイートがこちら performance.now() iOS 8.0 で追加されて、iOS 8.1 で削除されてた— コラーゲンたっぷりさん (@uupaa) 2015, 3月 3 正しくは、「iOS 8.1.1 で」ですね performance.now() 削除されてたのソース。 WebKit のとこ https:/…

GPU Rasterization in Chrome

Chrome で requestAnimationFrame を使うとジワジワとヒープが増えていき、定期的にGCが走ってしまう

Mobile Browser にも そろそろ Extenssion を

MSの新ブラウザSpartanが発表される数日前に、Spartan は Chrome Extenssionをサポーするという噂があったのだけど、これを見た時の僕の反応は、 (ε・◇・)з Chrome で Adblock とか使いたいよね (ε・◇・)з でも端末スペックや検索事業などの色々な事情があっ…

JavaScript でも、Ruby のように、より破壊的なメソッドの末尾に何か記号を付けたい

Qiita のエントリ を拝見して、 JavaScript も メソッド名には ! が使えないけど、$ は使えるので、Ruby の tr と tr! のように、 メソッド名から「より破壊的なメソッド(≒レシーバーの内容を変更するメソッド)」がわかると、どうなるのかな(良い作用がある…

get next power of two in javascript

周囲の協力を得つつ身軽でありつづけなければ、チャレンジなんて続けられるもんじゃないよ? という考え方

どんどん新しい事を取り入れればチャレンジしている気になるかもしれませんが、その人しかメンテできないとか、引き継げないような手離れが悪い物を生産する人は、いずれ自分が生産し貯めこんだゴミに追いつかれ、手足が止まる。 身軽さを維持したいなら、尚…

最も基本的なコードは残しつつ、徐々に最適化を行うという考え方

まずシンプルで説明的なコードを組む(当然遅い)。これをAとして最後まで保持する。次に様々な条件を設定し測り改修効果がありそうな場所を探す。削ったコードを測定する。Aと付きあわせて削りの正しさを証明する。 これらは至極当然の事。これを知らない人が…

感想はモグモグしてから

「◯◯は無価値クソだ」という人は◯◯にこれだけ長期的に投資が行われているという現実と、投資を行ってきた技術者や企業の活動も無価値だから「クソ」とか言ってるとすると、「何かにつけて文句ばかりを言い結果を出さない人は分け前をもらえない」という法則…

WebModule version 0.3.0

HTMLCanvasElement ベースの Custom Element が作れない メモ

Custom Element spec: http://w3c.github.io/webcomponents/spec/custom/ HTMLCanvasElement ベースの Custom Element が上手く機能しないのは不具合なんだろうか? 仕様なんだろうか的メモです。 var p = Object.create(HTMLCanvasElement.prototype); p.cre…

This is the implementation of the animation PNG renderer by pure JavaScript.

(ε・﹏・)з そろそろ、Custom Elementを勉強しないとなー (ε・﹏・)з 一日勉強したら、どんな事ができるようになるんだろう? (ε・﹏・)з やってみよーー の結果がこちら。 WebModule demo, APNG and Custom Element ... Animation PNG を再生する <a-png> カスタム</a-png>…

みんな大好き WebWorkers (WorkerMessage.js 作った)

WebWorkers(以下Worker)をハンドリングするのは結構大変で、ちゃんと意味があるコードを書こうとすると、 Worker が応答無くなったらどうしよう。エラーハンドリングどうしよう。どんなエラーがあるんだろう Worker に job 投げて結果を受け取ってクローズし…