おふくろさまより愛をこめて

mmmpa ふとしです。誠実なプログラミングを心がけたい。

2016/05 entries

2016/05/25 14:10:26

通販で自転車を買った思い出

いままで直近3台全部が通販で購入した自転車だった。 次は店頭でロードを買いたい。仕事がみつかったらね……。 Be.BIKE 16STREET 38,000円 楽天で見つけたミニベロで、アルミ製、サスあり。黒くてカッコ良かった。 届いてわーいと乗り出したところ、ブレーキがほとんど効かず死にかけた。あとハンドルの方向が歪んでいた。ブレーキはワイヤーを調整したらち

2016/05/19 22:43:00

Windowsをメインで使っている時にRails開発環境を作った話

(具体的な方法や手順についての話はありません) 現在わたしはデスクトップ機でDebianを使用していますが、もともとWindowsユーザーでした。 なにしろ前職に転職したきっかけがFlashでしたし、前々職はホームページ屋さん勤務でしたから、開発はWindowsでやるというのは別に普通でした。 さて、転職後Flash案件も無事鎮火した後、前職はRuby推しのところでしたので、R

2016/05/14 01:20:01

ActionCableで遊んでたらなんかリロード毎につながったりつながらなくなったりすんですけど?って時。

あたらしいもの好きなのでActionCableをいじっています。WebSocketは別に新しくない?おかたいことを言わないで。 ところでこの解決策は推測でしかないんですが、とりあえず解決したので暫定メモ的なアレですが、困ってる人はどうですか。 Redisががんばったまま おそらく開発中に、ブラウザから接続したままでサーバーを再起動したりしてると、適切にConnectionが切断

2016/05/13 20:47:49

ぐぐりんぐしてなんとなく使う、という癖を治すためにとりあえずRails 5.0.0.rc1のドキュメントを入手する。

最初はドキュメントを頭からケツまで読んだほうが良いと思うんですよ。その時使わないポイントも頭に入れておくと、それが使えるタイミングが来たら、あれ、見たことあるぞ?となると思うんです。 歳を取ってくると結構実感するレベルで記憶力が弱ってきて、全部とは言わないまでも、新しいクラスなどを頭からケツまで気合入れて読むタイミングを設けないと駄目なんじゃないかという気がしてるのもあります。 Ra

2016/05/12 15:52:25

2016年なのでgulpfile.coffeeをgulpfile.jsに書きなおした。

1ファイルとかだとdecaf onlineでやり直してチョロチョロ書きなおすだけでよくて楽でした。 ところで最初に用意したのは1年前ぐらいだったのですが、バージョンが進んでいたりdeprecatedが発生していたりで、ライブラリの刷新が必要になりました。 Node.js 6ではナマでES2015が使える というか、Node.jsぐらいならナマでいけるだろと適当に書きなおしてい

2016/05/12 13:32:19

ブラウザの拡大率を取得できたことにより生まれそうな邪悪さ

ブラウザの拡大率、ズームレベルを取得した。 - Qiitaという半分冗談みたいなエントリーを投稿しました。 zoomer.mmmpa.netで試せますが、Firefox+Flashが動く環境でしか動作せず、被弾環境が少なすぎるので「冗談」です。 ところでなつかしの文字サイズ固定 はるか昔、InternetExplorerでは大中小などといった文字サイズをユーザー側で設定し

2016/05/11 00:23:32

自分じゃないReact.Componentから上がってくるドラッグイベントを処理する。

のはつらい。 同一Component内で処理するのは楽 Marker Workbookではそのようにやりました。簡便に書くと以下。 startDrag(e){ e.preventDefault(); let div = e.currentTarget; let store = []; let startPosition = {x: e.pa

2016/05/10 22:49:43

WatchifyとBabelifyでES2015とReactをする。(no Gulp)

BabelがわりにTypeScriptを使うという雑なことを続けていましたが、Babelでも作業できるようにします。 ├ public/ │ ├ js/ │ │ └ build.js # 書きだされたjs │ └ index.html │ └ src/ ├ js/ │ └ index.js # ES2015のjs ├ out # ../publi

2016/05/10 15:10:14

TypeScriptでmixinした時に型情報が見れないのをある程度なんとかする。

わたしが使っているのはこういうやつで、"Real" Mixins with JavaScript Classes由来のやつです。 gist.github.com このようにインします。 export default class Mixed extends (mix(BaseClass).mix( Mix1, Mix2, Mix3 ) as typeof BaseC

2016/05/09 22:35:28

ES6のDestructuring assignment(分割代入)でさらに便利記法

分割代入 - JavaScript | MDN 分割代入というのは let {a, b} = {a: 'a', b: 'b'}; console.log(a, b); // a b というオブジェクトのキーをもとに変数に展開できる、これだけでも十分便利なものですが、さらに便利にする記法もあります。 変数に別名をつけられます。 let {a: aa, b: bb}

2016/05/09 20:26:45

TypeScriptのコード規約をIntelliJのデフォルト設定任せにしていたので、TSLintでちゃんとやる。

*lintは自分で、あるいは社で作成された一定の規約に従ったコードを書かないと怒られシステムです。 人の目とか感覚ではなく、機械が機械的に怒ってくれるので感情が沸かないのが良いですね。 TypeScriptにはTSLintがある 現在JavaScriptを書くにあたってはバベルがわりにTypeScriptを使っているので、TSLintを設定します。 TypeScriptと

2016/05/08 22:49:35

Reactで右クリックを扱う

ReactにはonContextMenuが用意されているので楽です。 render() { let onClick = (e, isRight?)=> { e.preventDefault(); if(isRight){ // 右クリック }else{ // 左クリック } };

2016/05/04 15:24:04

アンドゥリドゥの案メモ

実装 gist.github.com テストも書いてまぁ動いたのでこれで。 gist.github.com 最初のメモ gist.github.com こんな感じかな。未実装。 運動後にやってみる。

2016/05/03 23:42:01

JavaScriptで確実にmouseupをつかんでblur()する。

Marker Workbook PDF.jsとReactでブラウザ上で完結する暗記帳的なものをつくった。 - Qiita ではキーボード・ショートカットでスペースを使うのですが、ボタン押下後にスペースを押すと、そのボタンにフォーカスが残っていて再度押下されてつらいということになりました。 というわけで押下後はフォーカスを外していきたいのですが、マウスアップにe.curren