閑古鳥

オールドプログラマの日記。プログラミングとか病気(透析)の話とか。

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

新はてなブックマークのインタレスト機能がべんり

新しいはてなブックマークに搭載された「インタレスト」という機能が便利です。新はてなブックマークについては公式でまったく言及が無く、当該機能もヘルプが見当たらないので「これは何」と言われても正しく説明できないのですが、任意のキーワードを登録…

はてなブログもTwitter連携に対応してくれました

アクセス解析も追加されたようですし、欲しい機能は揃ってきた感じでしょうか。あとはソースコードを手軽に載せられるよう、スーパーpre記法辺りが搭載されれば言うことなしですね。ああ、はてなダイアリーから移行するなら、データの移行も欲しいところです…

惜しい!

Evernoteでブログの下書きをして、はてなブログに貼り付けたらリッチテキストがそのまま反映された*1! これは素晴らしい。ソースコードの貼り付けに使えるかも! と思いましたが、改行が入ると行間がかなり開いてしまい、ちょっと残念な感じに。見たまま編集…

Enumerable.Aggregateの戻り値無し版が欲しいなぁと思ったという話

あまりいい例ではないのですが: string[] arr = { "X", "Y", "Z" }; for (int i = 0; i < arr.Length - 1; ++i) { Console.WriteLine("{0}, {1}", arr[i], arr[i + 1]); }これをLINQで書きたい。Aggregateメソッドを使うとシーケンスの現在の値とその次の値…

はてなブログ

タイトル決めるの面倒だというのを解決して欲しい。 ロードマップとかあるんだろうか。現状のはてなダイアリーの何割の機能をカバーしているのかとか。新しいはてなブックマークの方は、こちらは年内に公式公開みたいな事が書かれていたけれど、はてなブログ…

招待してくれる人がいなかったので、http://staff.hatenablog.com/entry/2011/11/17/120005 これに申し込んでみましたよっと。ああ、登録した時点で満足してしまう……。ゲームやDVDを買ったときと同じ間隔。 アカウント名いつも悩む。最近は「wata_d」が多く…

プログラミングへの失われた情熱。再び火をつけるには?

プログラミングへの失われた情熱。再び火をつけるには? | スラッシュドット・ジャパン デベロッパーこの動画を見る、とか。 個人的には、何かすごい成果物とか、新しい言語だとか、面白い問題だとかを目にしたときに、やる気が沸いてきたりすることがある。…

C# 3.0(以降)で自動プロパティにブレークポイントを設定する

C#

C# 3.0から自動プロパティが実装され、フィールドの定義を省略できるようになりました。これはとても便利なのですが、getter/setterを書かないため、ブレークポイントが張れないという問題がありました。通常のプロパティでは下図のようにget/set内でブレー…

Processingで画像の切り取りをしてみた

とある画像の一部を切り抜いて別のファイルに保存したい、という時に、1ファイルならドローツールでも使って手動でやればいいのですが、ファイルが複数あったので自動化したくなりました。で、C#かRuby辺りでやろうかと最初は思ったのだけれどC#は大仰だしRu…

Evernoteでブログを書く

ブログ書いてから、その内容をEvernoteに溜め込んでおけるといいなあと思っていたのですが、大抵のブログツールはメール投稿に対応しています。このはてなダイアリーも。 なので、Evernoteで何か書いてからEvernoteのメール送信機能使ってブログサービスにメ…

MindOnTrack - マインドマップでタスク管理

やることリストみたいなのを考えるとき、マインドマップを使うと捗ります。たとえばFreeMindで書いてみると以下のような感じになります。しかし、これを回すときは、チェックリストとかTODOリスト、あるいはWBSと呼んでも良いですが、箇条書きみたいになって…

Pythonメモ

グローバル変数を使いたい globalを使う。 global_variable = 'hello, world!' def func(): global global_variable # これ print global_variable 空のループを回したい ループに限らず、空のブロックを作りたいときはpass文を使う。 for _ in range(0, 100…

Twitter連携のテスト - Javascriptでクリップボードに任意のテキストをコピーする方法

前に職場で使うChrome拡張作ったとき、クリップボード操作できないからalert出して、そこからC-cでコピーするような形にしてお茶を濁したんだけど、githubとか見ると普通にクリップボードにコピーできてるな。あとでソース見てみよう2011-06-11 19:48:25 via…

Rainlendar2 Proをばいなうした

Rainlendar2というクールなカレンダーを2007年頃から愛用しています。ずっとフリー版を利用していたのですが、最近Remember The Milkに対応したそうなのでPro版を購入してみました。昔は15ユーロだったものが9.95ユーロに値下げされたらしく、さらに円高の影…

Chrome拡張のソースを読もう

Google Chromeの拡張を自分で書こうというとき、既存の拡張のソースを読むと参考になりそうですよね。 というわけで拡張機能のソースを読む方法についてのメモです。まず、拡張機能のソースをダウンロードするためにインストールします。 ChromeのWeb Store…

Boost.Filesystem - ディレクトリ関係の操作

カレントディレクトリの取得とか。 // 初めてこの関数を呼んだときのcurrent_pathの値 path initial_path(); // カレントディレクトリを取得 path current_path(); // カレントディレクトリを変更する void current_path(path const&); // テンポラリディレ…

boost::filesystem::unique_path関数

unique_path関数は実は引数を取るようになっています。 path unique_path(const path& model="%%%%-%%%%-%%%%-%%%%"); path unique_path(const path& model, system::error_code& ec); デフォルト引数があるため引数を渡さなくても利用できますが、引数を渡…

Evernoteクライアントは定期的に再起動した方が良いかも

PCを使い続けていると徐々に動作がもっさりしてきて、原因がどこにあるのか悩んでいました。 で、ふとタスクマネージャのGDIオブジェクトの欄を見たらEvernoteが確保しているGDIオブジェクトの数がとんでもない数字になっていたので、再起動したところ一気に…

boost::filesystem::pathに対する操作、問い合わせ

Boost.Filesystemには「pathを受け取って何かする」という関数が用意されています。 問い合わせ namespace fs = boost::filesystem; fs::path const dir("C:\\hom"); fs::path const file("hom.txt"); fs::path const path = dir / file; // ファイル or デ…

boost::filesystem::path

Boost.Filesystemにはファイル名やディレクトリ名といったパスを表すためのpathクラスがあります。 パスに対する色々な操作を行うことができます。 初期化 文字列を渡して初期化します。 boost::filesystem::path path("C:\\hom\\hom.txt"); パスの出力 oper…

IronPython Cookbook

IronPython CookbookIronPythonのレシピ集。かなり充実していて、やりたいことから逆引きできるので便利です。IronPython自体はマニュアルもあり、ネット上に情報も多いのですが、C#との相互運用に関してはあまり情報が多くないようで、ここにある小さなサン…

任意のディレクトリの下にあるファイルを再帰的に見に行く

C++

昨日の、任意のディレクトリの下にあるファイルを再帰的に見に行く処理をC++でもやってみましょう。 Boost.Filesystemのboost::filesystem::recursive_directory_iteratorを使うと、再帰的に見てくれます。 #define BOOST_FILESYSTEM_VERSION 3 #include <boost/filesystem/operations.hpp> in</boost/filesystem/operations.hpp>…

転んでも泣かない

ブログ等に自分の考えとか知っていることを公開する利点として、勘違いや誤った知識を公開してしまっても(運が良ければ)それを正して貰えるという点があると思います。 また、よりよい方法を教えて貰えることもあるでしょう。 自分の考えに自身が持てず、「…

任意のディレクトリの下にあるファイルを再帰的に見に行く

C#

特定のディレクトリの下にあるすべてのファイルを再帰的に見たい、という場合、Directory.GetFilesメソッドに再帰オプションを指定すると良いようです。 // GetFilesの第三引数に SearchOption.AllDirectories を指定すると、サブディレクトリも再帰的に見て…

アウトプット重要

Twitter始めてから……いや元々だったかもしれませんが、アウトプットが少なくてインプットばかりに偏ってきてしまっています。 情報は発信している人の元に集まると言いますし、なんでもいいのでアウトプットを続けるのは表現自体に慣れるだとか、メリットし…

Boost.Inspect Tool

Boostのtoolsを眺めていたらInspect Toolなんてものがありました。ライブラリのソースがBoostの求めるガイドラインに従っているか調べてくれるツールのようです。これは構文のチェックなどもしてくれるのかな、と見てみたら、ライセンスの表記がちゃんとある…

bjamのビルド

Boostをビルドするためのツールであるbjam*1はBoostにソースだけ同梱されています。Boostをダウンロードして展開するとルートディレクトリにbootstrap.bat(bootstrap.sh)がありますので、これを実行するとビルドが実行され、ルートディレクトリの下にbjam.ex…

このBoostライブラリは、あのBoostライブラリを利用しています

Boostのライブラリは他のBoostのライブラリを利用して実装されていることが多いです。AsioはThreadを利用していますし、MPLはその他の色々なライブラリの実装の助けになっています。そういった関係を抜き出してみました。ただの暇つぶしで特に意味はありませ…

ExcelをC#で操作する

C#

Excelで何かしようと思ったらVBAを使うのが普通なのでしょうが、VBはあまり好きじゃないのです。POIを使えばJavaやScala等でもファイルを吐けますし、Win32OLEを使えばRubyや、あるいはPerlなどでも操作できますが、インテリセンスが使えるのでC#がお手軽じ…

Launchyのカタログ作成だけを行うツールを作りました

Launchyというキーボードランチャがあります。MacでいうQuickSilverのようなランチャです。Launchy: The Open Source Keystroke Launcher前から愛用しているのですが、Launchyには一点だけカタログの更新が遅いという問題があり、少しストレスを感じていまし…