プログラミング

"check_oppai"という名前を使いたくない

check_xxx がなんでダメなのか - Yamashiro0217の日記 より "A doctor is checking oppai." 僕もメンバーには「"check" じゃ何するかわかんないから使わないで」とちょくちょく言っている気がするので考えなおしてみた。 "check" を使ってほしくない理由は2…

タイパー的 Python と Perl の比較

お久しぶりです。特にブログをやめたくなったわけでもなく、いつものようになんとなく半年間何も書かなかっただけです。今日もなんとなく書きたくなった話を一つ。結論:タイピング好きが typing.io で Perl と Python 打ち比べたらこうなりました。 Perl (M…

サイ本15章ドキュメントの制御

友達と一緒に読み進めて気づいたら15章まで来てました。 第13章第2部以降はJavascriptの言語そのものではなく、ブラウザ実装におけるJavascriptの話です。例えばサーバサイド実装であるNode.js等には関係のない話ですが、Javascriptを語る上でブラウザ上のク…

javascriptで正規表現ぺろぺろ

正規表現の話はweb上の至る所に書いてあるので、今さら書くまでもないですが復習ついでにちょろっとまとめておきます。プログラマーなら知っていて当然、知らなきゃもぐり認定されます(します)。プログラマー以外のPC事務に携わる人にとっても便利な概念だ…

パーフェクトPHP教室

今話題のパーフェクトPHPが届きました。 パーフェクトPHP (PERFECT SERIES 3)作者: 小川雄大,柄沢聡太郎,橋口誠出版社/メーカー: 技術評論社発売日: 2010/11/12メディア: 大型本購入: 32人 クリック: 1,058回この商品を含むブログ (50件) を見るなんでPHP本…

keyhac改造

姫踊子草からkeyhacに乗り換えました - tomoemonの日記で書いたようにkeyhacでWeatherTypingは打てるようになりましたが、依然TOD(Typing of the Dead 2004)では正しく動きませんでした。正確に言えば、「った:tta」のような同じキーの連続打鍵をkeyhacがエ…

「気を抜かないように気をつけて」テストする

昨日は疲れていたのでこんなてきとうな精神論を掲げて寝ました。 たった5分10分のテストが1つ抜けただけでその数十、数百倍の時間を取られてしまうことを考えると、テストするときは本当に気を抜けないな、とあらためて思いました。 気を抜かないよう心がけ…

TWtoWeb・TWtoGRのこと

思いのほかたくさんの方からご指摘いただいてますのでここに書いておきます。というか、連絡が遅くなって申し訳ないです。 仕様というわけではないのですが、現在配布しているTWtoWebとTWtoGRには以下の制限が存在します。 1000日分を超える数のログを調べる…

registという単語

タイトル見ただけで何の話か分かった人は読まなくても結構だと思いますが、仕事をしていると関数名やら変数名やらエラーメッセージやらに「REGIST」という単語が「登録」「登録する」という意味で頻出します。本当にみんな大好きです。 そんな単語ねーから!…

MySQLでもStrictモード

PHPにはstrictモードってのがあって(Perlにもあるね)怪しいことしてたら何らかの警告を出してくれるんだけど、同じような概念がMySQLにもあるとは知らなかった。ローカルでいくら動かしてもエラーにならないのに、別の人が動かすとSQLの実行時に失敗してし…

開発者の幸せと全体の幸せ

文中に全体最適という言葉がありますが、全体の最適化って一体なんなんでしょうね。別にkeraさんに突っ込んでいるわけではなく自問しているだけなのですが、「書類作成まで含めた上での最適化」にしろ「ユーザさんだったり、IT関連の事務の人だったりのコー…

C#からIronPython2.6を呼び出す方法

IronPython2.6RC3が出ているというのに、C#からIronPythonを呼び出して使う方法についてはIronPython1.1の情報だったり2.0系列が多いのでちょいとメモを残しておきます。 IronPython自体のマニュアルに載せてくれればいいんですが、チュートリアルとかには載…

Pythonでvar_dump

PHPでコードを書いててちょっと動作確認したいというときにvar_dumpは本当に便利。元からあるデータ型だろうが、自作のクラスだろうがきれいに整形してすべてのデータを表示してくれる。 # => array(3) { [0]=> int(1) [1]=> int(2) [2]=> array(3) { [0]=>…

タスクトレイアイコンのクリックをエミュレートする

Svitchのタスクトレイアイコン対応がロードマップに入っているので、そろそろ実装しようと思って技術的な問題を調べてみました。 タスクトレイに登録されているアイコンとウィンドウを列挙する タスクトレイアイコンへのクリックをエミュレートする どちらも…

Svitch-0.8.3公開(fuzzyfinderモード追加)

ダウンロードはいつもどおりこちらから http://code.google.com/p/my-software/downloads/list 前のバージョンからお使いの方 次のファイルを上書きしてください svitch.exe CommandPlugin.dll 新機能 ヒントを表示しているときに"/"を入力すると、タイトル…

会社で調べたいろんなこと

ブログに残していきたいんだけど、会社で書くわけにはいかないしねー。かといって、最近はそれぐらいしか書くネタがないので、それを書かない結果が今のありさまなわけで……。というわけで、先週ちょっと気になったネタ。 人工知能の話題: TDギャモン (TD-Gam…

上限数を決めて協調しない外部プログラムを動かす

元はこっちがきっかけで、大量のHTMLファイルをレンダリングして画像化しようと思って「CrenaHtml2jpg」を使ったのだけど、1個ずつ動かしていくと毎秒1枚程度しか処理できなかったので複数個同時に動かしたかった。 Pythonでおそらく一番簡単な外部コマンド…

上限数を決めて協調しないスレッドを動かす

協調しないで並行作業を行うスレッドを使いたくなったのでちょっとテスト。協調しない並行作業ってのはスレッドが起動したときに割り当てられた仕事を「他のスレッドの状態にまったく依存せずに」行う作業のこと(勝手に定義したよ)。各スレッドは決められ…

八重タイちょこっと改造

YAE-typing - 八重タイピング - How To Become A Typer八重タイでもAZIKの練習をしようと少しプレイしてみたんだけど、キー入れ替えソフトとキー入力による画面遷移の相性がよくないことに気づいた。というのも八重タイ(e-typing)は画面を切り替えるたびに…

最適化検討ツールを親指シフトに対応しました

タイピング最適化サポート 機能追加した点はこちら。 使い方を掲載 デバッグウィンドウで詳細な入力データを表示 前のキー押下後の経過時間表示に加えて初めのキー押下後の経過時間表示も追加 押した時間に加えて離した時間も測定 無変換,スペース,変換,Shif…

最適化検討用ツール公開しました

珍しくWeb上で動くツールです。 タイピング最適化サポート 昨日最適化について「こっちの方が速いはず」みたいなこと書きましたが、やはりきちんと確かめないと意味がないので、入力した文字の打鍵間隔をミリ秒単位で測定するツールを作ってみました。 下は…

タイプウェルって何で重複単語を出す仕様なんだろう

つっこみお待ちしております - 思考停止中 検算してみましたけど問題ないと思います。と自信を持って言えないのがあれですが、不安なときはコードを書くと安心する人種なのでデータで安心しましょう。 # n個の一意な要素のリストからr個無作為に抽出したとき…

はてなダイアリーのタグ分析

最近ニコニコ研究会のデータ分析が話題になったりしましたが、グラフとか図を出すとなんか分析できた気になりますよね。というわけで、ちょいと自分の日記の様子が気になっていたのでグラフ化する簡単なツールを作ってみました。ダウンロード(hatena_tool)…

今年の目標@プログラミング

言語処理系を作る オブジェクト指向・デザパタへの理解を深める 理由付けて他人に説明できるような設計をできるようになる

今年の目標。というか計画@タイピング関連

タイピング 競技タイピングへの取り組みは現状維持(意図的にはほとんど何もしない)。今から全力で練習に取り組んだとしておそらく望める速度向上は5%から10%といった程度だろうから、それに時間をかけるよりもソフト制作に力を入れた方が面白いと思う。…

金を払わないとC#のプロファイリングツールは手に入らないのか

Stopwatchクラスを使えばマイクロ秒ぐらいの精度で経過時間を取得できるので、こいつをちょこちょこ埋め込んでいけば関数の処理時間を調べることはできるんだけど、ボトルネックになっている関数を見つけるまでにかなりの手間がかかる。 using System; using…

Svitch-0.8.0公開:大幅機能追加!

方々からこんな時期にお前は何やってんだって突っ込まれそうですが、まるまる三日つぶれただけです。キニシナイキニシナイ。 Svitchに関する情報こちらにまとめています。 ソフトウェア/Svitch - トモえもんの押し入れダウンロードはこちら今回はSvitchの基…

コマンドプロンプトを使ってPythonスクリプトを起動するVimプラグイン

とりあえずVimからPythonのスクリプトを起動したい場合は普通は次のようにすると思うけど、これだと少し不便なことがある。 :!python % "または :!start python % "%は現在編集しているファイル名に自動的に置換されるWindowsの場合は前者の方法で起動すると…

さくさくファイルを開くVimプラグイン

同じディレクトリに入っているファイルを順番にどんどん開いていくためのプラグイン。ファイルの中身を目視で確認したいときや、ちょっとした修正を複数のソースファイルに渡って行うときに使うと便利。 秀丸でも同様のマクロを使っていたのでVim用に作って…

指回りスキル判定ゲームのプログラム化

上のエントリで言及したゲームについて。 リコーダーJP 「指回りスキル」判定ゲームこういうのをプログラム化するとゲームとして楽しめるし、わかりやすい学習の目安も作れるんじゃないだろうか。基本的にはカラオケの採点と同じではあるんだけど、事前に習…

IronPython2.0正式リリース

予定通りやってきました.これは早速Svitchで使ってみよう. CPython2.5とIronPython2.0のパフォーマンス比較. IronPython - Performance Comparisons トータルで+62.7%程度CPythonに比べて遅くなっているだけで十分な性能を示していると思う.例外を投げる…

Svitch-0.7.1公開しました

概要、ダウンロード、質問などはこちらへ。 ソフトウェア/Svitch - トモえもんの押し入れ 今回の追加・修正点一覧はこちら↓ [NEW] ウィンドウの移動・リサイズを行うmoveコマンドを追加 [NEW] 入力を受け付けるためのライブラリinput_formを追加 [NEW] 外部…

Svitch 0.7.0公開しました

Wikiにページを作りました。 ダウンロード、要望、バグ報告などはこちらへ。 ソフトウェア/Svitch - トモえもんの押し入れ >>ソフトの概要はこちら。(後で全部Wikiに移します) 今回の追加・修正点一覧はこちら↓ [NEW] マクロ機能を追加(macro.iniに記述…

Vimperator風ウィンドウ切り替えツールSvitch(5)

左手だけでウィンドウが切り替えられると書いてるわりに、ウィンドウの最大化なんかは「;」を打ってモードを変更する必要があったので、直接コマンド(イミディエイト)モードに移行するホットキーを登録できるようにしました。デフォルトではコマンドモー…

Svitchを64ビットVistaに対応しました

Vista x64を使われているというid:ruiccさんから動かないという報告をいただいて64ビットVistaでも動くようにしてみました。動作確認は研究室のx64マシンで。こういうときにリモートデスクトップできると便利です(違 Svitchのダウンロード >>スクリーンシ…

Vimperator風ウィンドウ切り替えツールSvitch(4)

一週間かかって大体あらかじめ考えていた機能は実装できました。誤解の無いように説明しておくと、このツールはコマンドモードなんて搭載していていかにもキーボード派!って感じですが、マウスメインの人にとって使いにくいというわけではありません。デフ…

Vimperator風ウィンドウ切り替えツールSvitch(3)

バージョンが上がってだいぶ趣の違うソフトになりました。「:」とかでモード変更できたらVimっぽくね?とコマンドモードを実装してみたら案外面白いものになったと思います。command.iniにファイルのパスを入れることでランチャになったり、IronPythonでコ…

Vimperator風ウィンドウ切り替えツールSvitch(2)

Vistaでもまともに表示できるように修正。それに伴ってちらつきが無くなって、メモリ消費量も少し減った。描画周りの大幅な変更だけど透明な背景を持つウィンドウを作るのが楽で助かった。さすが.NET。 動作環境 WindowsXP SP3(Pro)とVista SP1(Business)で…

Vimperator風ウィンドウ切り替えツールSvitch

Vimperator風って書いてもわかる人は少ないと思いますが、ホットキーでタスクバー上にヒントを表示して、目的のウィンドウに切り替える。こんな感じのツールです。マウスよりキーボードという方にお勧め。 次のような特徴があります。 キーボードから簡単に…

ウィンドウ切り替えツール(2)

とりあえずこんな感じかな。下の画像では数字にしてるけど、ヒントに出す記号は「窓替え」と似たような方法を用意するつもり。あと、タスクバーを縦にしてるときはタイトルとか実行ファイル名を表示する予定。 「Taskbar Shuffle」をはじめとするタスクバー…

ウィンドウ切り替えツール(1)

Vimperatorのime_controller.jsを導入して満足し、Vimの操作方法にも慣れてキーボード派に移行しつつある今日この頃ですが、ウィンドウの切り替えをAlt+Tabでやるのが面倒になってきた。窓の杜 - 【今日のお気に入り】ウィンドウ切り替えを素早く快適に「窓…

一生貴方についてゆきます!

外部スクリプトを使用しないpythonによるフィルタリング処理 - サイト更新停滞ちうっ pythonを利用したフィルタリングをしたい。でも、使い捨ての処理に外部ファイルをいちいち用意するのは面倒。そんな人向け。 むきゃー。まさにこんなことができるエディタ…

静的にできることを動的にしないというライフハック

上記のエントリをもう少し抽象的に扱うのがこっちのエントリ。なので上のエントリはここの具体例。骨子はこちら。 「音」は必ず時間的な制約がついた上で成り立つものなので、再生して確認するためには(テンポが同じであれば)常に同じ時間を要するが、見て…

VimカスタマイズのついでにATOKカスタマイズ

IMEのON/OFFはトグルより別のキーを使ったほうが良い(と思う) - Tosikの雑記 ATOKのキーカスタマイズ。さすがにIMEのON/OFFのやり方を変更するのは慣れるのに時間がかかりそうだけどちょっと実験してみる。Unix(Emacs)使いな人たちは英数キーにCtrlを割り…

唄のリズムに合わせてタイプするゲーム

@W/Hさんより UTyping、歌に合わせて歌詞をタイピング@ITPro すごく……デジャヴを感じる画面ですw 軽くプレイしてみたけどその名は唐子ちゃん - tomoemonの日記と同じようなコンセプトを同じように考えて実装したんだろうなと思った。そしてこれの作者も太…

打鍵のtomo2.0α6を公開

id:kuidaore2さんの記事を見てはたと思い出して公開しました.すいません.ずっと前に修正してたのに「あとこれとこれを修正してから公開しよう」とか思ってたらこんなことになってましたorz ※kuidaore2さんが遭遇した問題は3/13日付に修正したものと思われ…

FlexBuilder3を使い始めたよ

ビルダーを使えばMXMLを手書きすることってほとんど無いんだろうなーと思ってたら、んなこたなくてわりと手書き調整が多い。VisualStudioほど親切ではないらしい。さらに、MXMLのビュー部分とActionScriptのロジック部分って基本的に分離させてるのかと思え…

Pythonの実行スクリプト,importスクリプトのパス取得

スクリプト自身やメインスクリプトのパスを取得する方法.非常に基本的な内容だけど,メインスクリプト内,importされるスクリプト内で微妙に違うので注意が必要.以下のtest1.pyとtest2.pyをデスクトップに作成してtest1.pyを実行. test1.py(実行スクリプ…

拡張機能を使っても背景ランダム表示は難しそう

前の(id:tomoemon:20080910,id:tomoemon:20080909)続きでFirefoxの背景画像をいじろうという話題です。私用で使う分にはローカルサーバを使う方法で問題はないのだけど、やっぱり別プロセスが動いているのは美しくない。同じくグリモンで背景をいじっている…

アンケート作るのは大変だね

例のアンケートについての解説と謝罪 - 西尾泰和のはてなダイアリー プログラミングに詳しい人に質問です。大学でプログラミング経験.. - 人力検索はてな Python使いの西尾さんがはてなでアンケートをやったら軽く炎上したという話。以前はてなでアンケート…