その手の平は尻もつかめるさ

ギジュツ的な事をメーンで書く予定です

2014-01-01から1年間の記事一覧

デプロイ考,あるいは仕組み化考

良い感じに酔っ払っているのでここ最近デプロイについて考えていることについて記す. デプロイの仕組みが単純であれば単純であるほど良い,というのは総意だと思っている. 単純な仕組みによってデプロイされるのと,複雑な仕組みによってデプロイされるの…

Validation Nightやりました

色々あって報告が遅くなりましたが,去る12月4日にValidation Nightというイベントを催しました.Validation Night (2014/12/04 19:00〜)多岐にわたるValidation (或いはConstraint) の知見が惜しみなく披露された非常に良い会になったのでは無いかと思いま…

Javaで空いているポート番号を取ってきたい

Javaで空いてるポート番号取ってきたかったんで,以下のように書いたらポート番号取れて便利でした. int port; try (Socket socket = new Socket()) { socket.bind(null); port = socket.getLocalPort(); } ドキュメントによると,Socket#bind()の引数にnul…

実行中のプログラムの進捗度を手っ取り早く確認したい

完了するまでに結構時間がかかるプログラムを実行している時,そのプログラムの進捗度を確認したくなることがままあると思います.ほんとに動いてんのかお前,みたいな. そうした時に考えうる最も簡単な方法は,こんな感じで進捗度を標準出力に流してしまう…

Validation Nightやります

ちょっと色々立て込んでいて,テンプレートエンジンNightやりましたよエントリを書きそびれてしまったんですが, テンプレートエンジンやりました! 発表者の皆様,参加者の皆様まことにありがとうございました!さて,きたる12/4 (木) ですが,前回のテンプ…

文字列内のバックスラッシュを区別したい的な

タイトルが適当すぎて何を言っているのかわからないと思いますが,まあそういう事がごくごく稀にあります.結論から言うとヒアドキュメント使えば良いです.以下の様な文字列を考えた時, my $string = '\n\\'; これを1文字ずつ処理しようとすると, say $_ …

Regexp::Lexerってやつを書いた

https://metacpan.org/pod/Regexp::Lexer https://github.com/moznion/Regexp-Lexer Perlの正規表現を解析したいなー,と思った時にまず目につくのはRegexp::Parserだと思うのですが,このモジュールは解釈できないメタ文字や構文が多い為,実用にあたっては…

location-utilってやつ書いた

JavaScriptのライブラリです.moznion/location-utilnpmとbowerにも出しておいた. https://www.npmjs.org/package/location-util URLを食べて, よしなにURLの一部分だけ抜き出したり よしなにURLの一部分を書き換えたり よしなにURL組み立てなおしたり 出…

トークナイザーとパーザーについて,結合するということについて

トークナイザーとパーザーについて,それに準ずる物を書いていて,その最中ふと思った事について記す.トークナイザー書くよりもパーザー書く方が圧倒的に労力が高くて,そのパーザー書く苦労を軽減するためにトークナイザーを弄って後段のパーザーの理解を…

Excel::Writer::XLSXのset_optimization()について

基本的にExcel::Writer::XLSX使うときは my $workbook = Excel::Writer::XLSX->new('yabai.xlsx'); my $worksheet = $workbook->add_worksheet(); ... みたいな感じで使うと思うんですが,素朴にこれでやっていこうとするとExcelの行数が増えた時にメモリを…

JavaScriptで\x特殊文字と同等の事を\xを使わずに実現する

JavaScriptの文字列中では\xという特殊文字が利用できます.ドキュメントによると, \xXX 00 から FF までの 2 桁の 16 進数 XX で指定された、Latin-1 エンコーディングの文字。例えば、\xA9 は著作権記号を示します。 とのことで,まあここに書いてある通…

minifyされたJSON文字列をJavaScriptで整形する

var indentation = " "; JSON.stringify(JSON.parse('{"foo": [1, 2], "bar": {"buz": "quz"}}'), null, indentation); みたいに書くと, { "foo": [ 1, 2 ], "bar": { "buz": "quz" } } という風な整形された文字列が返って来て便利だった

Perl Casual #06に行ってきた

行ってきたついでに話してきました. Perl::Lint is over, for the present from moznion とりあえず先日Perl::Lintが出来たので,その一連の開発で得られた知見に就いてシェアーさせて頂きました.大体スライドに書いてある事をしゃべりました. 発表時は軽…

今週金曜日はテンプレートエンジンNightです

今週金曜日 (10月12日) はテンプレートエンジンNightです!!テンプレートエンジンNight on Zusaar テンプレートエンジンNight on Zusaar多くのテンプレートエンジン関連の発表が目白押しとなっております. 各位におかれましてはふるってご参加いただきたく…

PHPでお手軽にベンチマークを取るためのツール BenchMarker を書いた

php

PerlにはBenchmark.pmというお手軽にベンチマークを取るためのライブラリがあって,これがまあ便利なわけです. そこで,深い事情により最近書いているPHPにもこういうツールがあると便利だろうなーってことで書いたのがこのBenchMarkerになります.moznion/…

Goでforkしたいとかgoroutine IDが欲しいとか言わない

golangでforkってどうやるんだ— 単位落としました (@moznion) 2014, 9月 14 @moznion できねぇよ— Daisuke Maki (@lestrrat) 2014, 9月 14 @moznion 外部プロセスの起動、ならできる。— Daisuke Maki (@lestrrat) 2014, 9月 14 @moznion でもforkしたい、と…

CUDAのエラーチェックを楽にする

CUDAの組み込み関数はほとんどcudaError_tというエラーコードのenumの値を返してくるので,これを適宜見てエラー処理をする必要があります.最近ではそこまででもないですが,CUDAの組み込み関数はカジュアルにエラーを吐くのでちゃんと見てやらなければなら…

テンプレートエンジンNightやります

ページャNightなるイベントが開催されてからはや2ヶ月, あの「なんとかNight」が帰ってきた!!!! テンプレートエンジンNight on Zusaar テンプレートエンジンNight on Zusaar 今回はテンプレートエンジンNightです.その名の通りテンプレートエンジンと…

CUDAで特定の条件に合致したGPUのIDを持ってきたい

CUDAで,特にマルチGPUプログラミングなどをやっておりますと,特定の条件に合致したGPUのIDを持ってきたいという要求に高確率でぶち当たる事となると存じます.俺はぶち当たる. GPUがマザーボードに5枚刺さっていて,そのうち4枚は映像のアウトプット端子…

YAPC::Asia Tokyo 2014に参加致しました

YAPC::Asia Tokyo 2014に参加致しました.例年はgihyo.jpのリポータという事で参加していたのですが,今年は僕の怠慢でリポータではなく,初の一般参加でした.とはいえ, YAPC::Asia Tokyo 2014でPerl::Lintについて喋りました - その手の平は尻もつかめる…

YAPC::Asia Tokyo 2014でPerl::Lintについて喋りました

タイトルのとおりです. スライドは以下です. もうちょい詳しく話す予定だったんですが,冒頭のライブリリースに失敗するなどして出鼻をくじかれテンパってしまいました…… ちょっと詳しい話をすると, ポリシー周り 各ポリシーがトークンを受け取って,それ…

YAPC::Asia Tokyo 2014でPerl::Lintについて喋ったりします

おわび Perl::Lint出来てません 本題 明日8月28日(木)から3日間に渡ってアジア最大のPerlのカンファレンスであるところのYAPC::Asia Tokyo 2014が開催されますね! 楽しみですね! 夜も眠れないですね! さて,そのYAPC::AsiaでわたくしPerl::Lintという開発…

OS Xのクリップボードとtmuxのクリップボードを共通化する

OS Xのクリップボードとtmuxのクリップボード *1 を共通にする設定に関するメモです. なお,tmuxのバージョンは1.9a,reattach-to-user-namespaceのバージョンは2.3です. 1. まずreattach-to-user-namespace入れる $ brew install reattach-to-user-namesp…

XSのABRTをキャッチしたい

このPerlコード実行するとSIGABRT発生するんだけど,これなんとかtrapできないのかな https://t.co/HeB6uvrl5z— Lint it (@moznion) 2014, 8月 17 supervisord使ってても,アプリで使ってるXSライブラリがABRTを吐いたらアプリごと死んでついには生き返らな…

Published “Perl::Lint Playground”

(またしても日本語は下にあります / Japanese follows English) I published “Perl::Lint Playground”. http://perl-lint.moznion.net/ You can try feature of Perl::Lint easier on this playground. However this and Perl::Lint have not been completed…

git grepの代わりにgit agを使う

git

git grepが便利なので,同じ感覚でag (The Silver Searcher)を使ってみたいという話です.何事も速いほうが良い. 前提 ぶっちゃけagは,デフォの状態で.git/以下の内容や.gitignoreに書かれてるファイルやディレクトリなんかを検索の対象から排除するのであ…

Released Perl::Lint as underdevelopment

(日本語は下にあります / Japanese follows English) I've just released Perl::Lint as underdevelopment. https://metacpan.org/release/MOZNION/Perl-Lint-0.01_01 Development of Perl::Lint is in progress, but I need feedback about this module. Th…

先読みとautovivificationの話,あるいはマイクロオプティマイゼーションの話

Perlの話です.が,先読みの辺りはどの言語でも共通なのでは,という感じです. 追記 なんか先読み関係ない感じになってるのでコメント見ると良いです.この記事の情報は誤っているので後で書き直す. ここから先は読まなくても良い さて,配列を走査するよ…

Table要素をCSVとかXLSXとかに変換して保存出来るChrome拡張書いた

皆さん年に2,3回は,「ウェッブページのTable要素をXLSX (もしくはCSV) に変換して保存したいワ!」となることがあると思います.僕はあります.そういう時は,「心をこめてTableをコピーしてExcel (もしくはお好みのヒョーケーサンソフト) にペースト!」…

ページャNight 1ページ目という勉強会やりました

そういえば昨日「ピクシブ株式会社」って言おうとして3回くらい噛んだ気がする— プリントゴッコ (@moznion) 2014, 7月 5 ページャNight,僕が当初想定していたよりも1000倍位有益な会になって本当に嬉しかったです.あとで記事等書きます.— プリントゴッコ …