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

天下一プログラマー2009予選落ちしましたorz

天下一プログラマー2009の予選に参加したのですが落ちてしまったようです。 問題文の解釈を間違えたりきちんと回答の確認をしていなかったのが敗因だと思います。ICPCの場合はリグレッションテストに通ればOKというルールのため可否の判定がシンプルなのです…

ICPCの練習をするとコードが綺麗に書けるようになるワケ

まずはこの記事を読んでもらいたい。ITmedia エンタープライズ:キミのコードが汚い理由 (1/3) http://www.itmedia.co.jp/enterprise/articles/0701/12/news011.html2年半も前の記事に突っ込みを入れるのもアレだが、気になったので書いておく。問題となるの…

eclipseが直った

例外発生時に毎回デバッガが一時停止する症状が直った。やったことはプロファイルの削除と再作成・・・。根本的な解決にはなっていないが、とりあえず良しとする・・・orz

eclipseでGWTを使ったwebアプリケーションをデバッグ中の出来事

GWTを使ったwebアプリケーションをデバッグ中、自分のノートPCでは何もおきないのに、研究室のPCでは例外をキャッチしまくるという現象が起きた。いろいろ調べていくうちに、研究室のeclipseで動かした場合だけ例外がthrowされるとeclipseのデバッガが反応す…

firefox3.5のプロファイルを自宅サーバー経由で共有してみる

今までDropBoxでプロファイルを共有していたのだが、firefoxの終了後からプロファイルの共有完了まで若干の時間がかかり、微妙に不便だった。これを解決する為に自宅サーバにプロファイルを保存できないかと考えてやってみた。実は前にも一度試したことがあ…

Norton AntiVirus 2010βをインストールしてみた

Norton AntiVirus 2010βをインストールして利用している。2009のようにブルースクリーンになることもドライバの互換性の警告が出ることも無い。特に問題なく動いているようだ。強いてあげればcygwinの起動速度が遅くなったように感じられる。が、気になるほ…

Norton AntiVirus 2010β

Norton AntiVirus 2010のベータ版が公開されていた。バイトから返ったらインストールしてみようと思う。Antivirus Free Software - Spyware Free Protection | Norton Beta Center http://www.symantec.com/norton/beta/

Firefox 3.5のプロファイルを複数のマシンで共有する

Firefox 3.5のプロファイルはWindows7RCの場合「C:\Users\(ユーザー名)\AppData\Roaming\Mozilla\Firefox\Profiles」に保存さるようだ。こいつをDropBoxを使って複数のマシンで共有するには以下の手順を踏めばよい。 about:configで「browser.cache.disk.par…

Javaのgenerics Tips

今日はじめてこの書き方を知った。 public class Comparer { public static <T extends Comparable<T>> boolean greater(T t1, T t2) { return t1.compareTo(t2) > 0; } public static <T extends Comparable<T>> boolean less(T t1, T t2) { return t1.compareTo(t2) < 0; } }genericsに使用するクラスの型を</t></t>…

cygwinのsshで時間がたつと切断されてしまう症状への対処

echo ServerAliveInterval 120 >> ~/.ssh/configこれで自動的に接続を保ってくれるそうです。 iTakahiro's D - OpenSSH - ServerAliveInterval http://takabsd.jp/d/?date=20080224

eclipseでssh+svnを使うための設定

eclipseでssh+svnを使うためには以下の設定をすればよいらしい。 sshの鍵を用意する TortoiseSVNをインストールする 環境変数にSVN_SSHという名前で「C:\\Program Files\\TortoiseSVN\\bin\\TortoisePlink.exe -C -l (ユーザー名) -i (ppkファイルのパス)」 …

Pythonを使ったC++プログラムの拡張

かなり前にC++からPythonスクリプトを使いたいと思いboost::pythonを調べたことがあった。特にPythonから元のC++のプロセスが持っている関数を呼び出せたら便利だと思っていろいろ調べたのだが、結局やり方がわからなくてそのままになっていた。今日バイト先…

「PC^2」最新版をいじってみた

現役の時には非常にお世話になり、OBとなった今でも模擬地区予選の運営などでよく利用するソフトだ。ACM主催国際大学対抗プログラミングコンテスト(以下ICPC)で使用されているジャッジソフトで「PC^2」というソフトがある。先日最新版となるVersion 9.1.2が…

Fedora11にアップグレードした

自宅サーバーで使用しているFedoraを11にアップグレードしてみました。 前回アップグレードしたときと同様にfedora-releaseとfedora-release-noteをrpm経由でインストールし、yum upgradeで終了・・・だと思ったのですが、yum upgradeがエラーを出してとまっ…

動画のダウンロード

歌ってみた動画を作るときに他の方がアップロードされた動画を使用したい場合がある。こういう場合は大抵ローカルに保存しなければならないのだが、ほとんどの動画サイトはローカルに保存できるようにはなっていない。ところが、あれげな方法を使えば簡単に…

UTPC2009

東京大学実践的プログラミングセミナー主催(?)のプログラミングコンテスト「UTPC2009」に参加しました。結果は5位!競技プログラミング人生の中で五本の指に入る成績だと思います。問題Fがちゃんと解けた点が一番大きかったのだと思います。 本番で使用した…

Windows7RCにCygwin-1.7betaを入れてみた

以前Windows7RCにCygwin-1.7betaをインストールしようとしたことがあるのだが、インストールプロセスの最後の段階で毎回落ちてしまい、インストールを完了させることができなかった。今日なんとなくCygwin-1.7betaのインストールに再チャレンジしてみようと…

【プログラミング】 Let's ICPC 入門編 (5) 【コンテスト】

【プログラミング】 Let's ICPC 入門編 (5) 【コンテスト】アップしました。 今まで音声が乱れる不具合があったのですが、音声のエンコードセッティングで2pass+wavモードにしたら直りました。なんだったんでしょうか・・・。 今回はグラフ理論の解説です。…

Javaで外部プロセスを起動したときの落とし穴

Javaで外部プロセスを起動してwaitFor()で終了待機をすると動作が止まってしまう場合がある。原因は外部プロセスの出力が出力バッファに溜まった後にデッドロックしてしまうためだそうだ。これを防ぐにはwaitFor()を呼び出す前に、標準出力と標準エラー出力…

Windows 7 RCでクイック起動バーを表示する

現在自分のノートPCではWindows7RCが順調に動いている。Vistaからの操作の変更にもほとんどなれ快適に使えているのだが、一点だけ気になっていることがあった。Cygwinのアイコンをタスクバーに登録できない点だ。Cygwinの起動アイコンはバッチファイルへのシ…

Google Apps Engine Java (6)

Apache xml-rpcの使い方を調べたのだが、現在開発中のアプリケーションにとってはオーバーキルなのではないかと感じた。クライアントとサーバーの言語が違うのであればxml-rpcを用いた通信は非常に便利だと思うのだが、今回は両方ともJavaで作ることがほぼ確…

Google Apps Engine Java (5)

諸事情によりブラウザからのアクセスとは別に一般のJavaアプリケーションからもアクセスする必要が出てきた。現時点ではそれっぽいRPCをでっち上げて通信しているのだが、どう考えても開発効率が悪い。そこでXML-RPCを使用しようと考えている。XML-RPCはRPC…

Google Apps Engine Java (4)

データストアを使うときに直列化したデータを入れられるという事が分かった。これを使わない手はない。 早速試してみたのだが、微妙に意図したとおりに動いてくれない。直列化したデータの中身を書き換えてもデータストアの中身に反映されないのである。多分…

Google Apps Engine Java (2)

作りかけのアプリをサーバーにアップロードしてみた。ちゃんと動くかどうか試してみたところ、いきなりデータストアでこけた。いろいろと調べてみるとデータストアで使用するIndexが生成されていないことが分かった。Indexは自動生成されるようなのだが、自…

Google Apps Engine Java (3)

第一目標としていたところまで作り終えることができた。一つ問題が起きていたが何とか解決することができたので備忘録として書いておく。 自分で作成したServletにアクセスしたとき、web.xmlを正しく記述しているにもかかわらず「405 Method Not Allowed」が…

Google Apps Engine Java 勉強中

あるサービスを作ることになってGoogle Apps Engine Javaを勉強中です。とりあえず今まで行ったことは、 Google Plugin for Eclipseのインストールした Google Web Toolkitがいつもどおり使えることを確認した Datastoreなるものでデータをデータベースに格…

幾何計算のTips

点(x0,y0)と点(x1,y1)の長さがR以下かどうかを判定するプログラムを書くときは、いきなり(x0-x1)*(x0-x1)+(y0-y1)*(y0-y1)

サーバー強化

自宅サーバーのメモリを増設し、4GBとしました。今まで微妙にスワップ気味で速度が低下していたのが、これで改善されると思います。

Eclipseのアップデートを高速化する

Ecipseのアップデートが遅いのでネットで解決策を調べていたら、まさにどんぴしゃの方法が見つかった。やり方は以下のとおり。 Help -> Software Update -> Available Software -> Manage Sites -> Exportでアップデータサイト一覧をエクスポート xmlファイ…

新サービスRelatwitter

Twitterのタイムラインからユーザーの類似度を表示するwebサービス、Relatwitterを公開しました。↓のような感じで#の後にスクリーン名をカンマ区切りで書くと、その人たちの類似度が表示されます。 http://kishibe.dyndns.tv:8080/Relatwitter/#wata_orz,iwi…