Skip to content

Instantly share code, notes, and snippets.

@imaya
imaya / Makefile
Last active Jul 22, 2017
事前に zstd にして zip ファイルをコンテナとして扱うやつ
View Makefile
test:
which /bin/bash || { echo "please install bash to /bin/bash"; exit 1 ; }
which base64 || { echo "please install base64"; exit 1 ; }
which find || { echo "please install find"; exit 1 ; }
which sed || { echo "please install sed"; exit 1 ; }
which unzip || { echo "please install unzip"; exit 1 ; }
which xargs || { echo "please install xargs"; exit 1 ; }
which zip || { echo "please install zip"; exit 1 ; }
which zstd || { echo "please install zstd"; exit 1 ; }
@imaya
imaya / crc32.asm.js
Created Jun 9, 2017
CRC-32(asm.js)
View crc32.asm.js
function crc32_asm() {
var table = new Uint32Array([
0x00000000, 0x77073096, 0xee0e612c, 0x990951ba, 0x076dc419, 0x706af48f,
0xe963a535, 0x9e6495a3, 0x0edb8832, 0x79dcb8a4, 0xe0d5e91e, 0x97d2d988,
0x09b64c2b, 0x7eb17cbd, 0xe7b82d07, 0x90bf1d91, 0x1db71064, 0x6ab020f2,
0xf3b97148, 0x84be41de, 0x1adad47d, 0x6ddde4eb, 0xf4d4b551, 0x83d385c7,
0x136c9856, 0x646ba8c0, 0xfd62f97a, 0x8a65c9ec, 0x14015c4f, 0x63066cd9,
0xfa0f3d63, 0x8d080df5, 0x3b6e20c8, 0x4c69105e, 0xd56041e4, 0xa2677172,
0x3c03e4d1, 0x4b04d447, 0xd20d85fd, 0xa50ab56b, 0x35b5a8fa, 0x42b2986c,
0xdbbbc9d6, 0xacbcf940, 0x32d86ce3, 0x45df5c75, 0xdcd60dcf, 0xabd13d59,
View adler32.asm.js
function adler32_asm(array) {
function asm(stdlib, foreign, heap) {
"use asm";
var array = new stdlib.Uint8Array(heap);
function adler32(length) {
length = length | 0;
return update(1, length) | 0;
@imaya
imaya / fix_phantomjs.js
Created Mar 28, 2014
PhantomJS で String.fromCharCode.apply の第二引数に Typed Array を渡すとバグるのを回避
View fix_phantomjs.js
if (window.Uint8Array !== void 0) {
try {
String.fromCharCode.apply(null, new Uint8Array([0]));
} catch(e) {
String.fromCharCode.apply = (function(fromCharCodeApply) {
return function(thisobj, args) {
return fromCharCodeApply.call(String.fromCharCode, thisobj, Array.prototype.slice.call(args));
}
})(String.fromCharCode.apply);
}
@imaya
imaya / jser.md
Created Mar 17, 2014
JavaScript プログラマの職種は4種類くらいに分けるべき
View jser.md

はじめに

JavaScript を使っていると「JavaScript出来るの? jQuery / AngularJS / Node.js etc... で困ってるんだけどさー」みたいな話を振られることがあります。 そういった時に、自分は一般的なライブラリの使い方やフレームワークに対して大した知見も興味もないので、わざわざ説明するのも面倒なのでこうして文章にしておきます。(本当に届いて欲しい人に限って、こういう文章が届かないのはわかっていますが、文章を書くこと自体が気晴らしだと思って諦めます。)

「フロントエンドエンジニア」という言葉の汎用性

先ほどのような話は自分に限ったことではなく、たぶん経験のある人も多いでしょう。 振られた話が自分の分かる範囲、あるいは興味のあるものならばまだ良いのですが、そうでないことがあまりに多すぎます。 話を振られるだけならともかく「JavaScriptできるんでしょ? じゃあ jQuery つかったこのサービスのメンテしてほしいんだけどー」みたいに仕事として振られることもあり、そう言う時は脳みそ取り出して洗剤で洗った方が良いのでは、と思うことも多々あります。

@imaya
imaya / poem.md
Created Mar 3, 2014
生産性とチームと技術的負債
View poem.md

生産性とチームと技術的負債

当然だけど正しいとは限らない。 普段思っている事を書きなぐった。

生産性

理想的には一人が最高。 コミュニケーションコストは人によってはコードを書くよりも遥かにコストが高い。

@imaya
imaya / nucon.md
Created Feb 13, 2014
nucon で cacoo について聞いてきたのでメモとそれについての感想
View nucon.md

はじめに

趣味でお絵描きツールをつくっていることもあって、ブラウザで動くドローイングツールの cacoo には興味があったので nucon で cacoo について聞いてきました。 結構実装についても話していたので大変参考になりました。 個人的な感想としては「あーやっぱりそうなるよねー」という感じだったのですが、すぐに忘れてしまいそうなのでここに残しておきます。 メモを元に書いているので、脳内補完が働いている部分が多分にあると思いますので、そこは注意して読んでください。

操作まわりの実装、 Undo/Redo 機能、共同編集機能

操作に関しては State パターンを使って実装している。

@imaya
imaya / html5study044.md
Last active Aug 29, 2015
html5study#44
View html5study044.md

HTML5 とか勉強会

HTML5 security

  • 概要
    • 攻撃者にとっても便利
    • 攻撃の幅もひろがる
    • HTML5 で脆弱性になってしまうケース
    • 検証や周知が追い付いていない
  • 調査報告書の紹介
@imaya
imaya / gist:8662106
Last active Jan 4, 2016
やりたいことリスト
View gist:8662106

絶対やるけどいつやるかわからないリスト

zlib.js もろもろ

zlib.js 圧縮高速化

@imaya
imaya / gist:8241778
Last active Jan 2, 2016
アルバイトとして働くことになりました
View gist:8241778

アルバイトとして働くことになりました

このエントリは以前書いた転職先募集エントリに対する報告エントリとなります。

転職先募集エントリ

正直、エントリを書いた時点では面白がる人はいても実際に声をかけてくる人はいないだろうなと思っていました。 自分自身のスキルセットややりたい事などを考えると、マッチするところは限りなく少ないか、あるいはあったとしても偶然自分の書いたエントリを目にすることなど少ないだろうと思っていたからです。 前回のエントリは「いやあ、転職先は一応探したんだけどダメだったから仕方なく、本当に仕方なく光の戦士として生きていくしかないなあ」という自分に対する言い訳をするためのエントリという面もあったのです。