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

今年は100冊電子書籍を読んだ

今年は100冊電子書籍を読みました。 正確にはBook☆Walkerで124冊 + koboで24冊 + eBookJapanで2冊だ。 買った内訳は記事最後に記載。ほとんど漫画とラノベですw そして、調べてみたら今年買った紙の本は約103冊。ついに紙超えですよ。 ちなみに参考値として2…

PTY allocation request failed on channel 0 の解決方法

うちのgentooちゃんをアップデートしたら、gome-terminal等々が下記のエラーで getpt failed: No such file or directory とか言って立ち上がらないという残念な状況に。 しかし、アップデートで起動しなくなるなんてgentoo使いにはよくあること。慌てず騒が…

JavaでHTTPアクセスを記録/再生してテスト時に使える、Betamaxを試してみた

id:ikikko さんのこちらの記事を参考にJavaでHTTPアクセスを記録/再生してテスト時に使える、Betamaxを試してみました。 このBetamaxというのはその名の通り、テープに記録/再生するものなわけですが、その対象が映像ではなくHTTPアクセスだと言うことです。…

Apacheのレスポンス分析に必要なスクリプトまとめ

最近、Apacheのログ解析をすることが多いので、備忘録を兼ねてまとめ。 とりあえず、超便利コマンドはawk, sed, grep, uniq, sortあたり。コレを駆使して色々解析する。そして、これを駆使して解析がツライ時は素直にperlやruby, pythonに処理を渡すべきかな…

GlassFishの監視JMXを取得してみた - その2

その1でGlassFishのリソースをJRuby使ってJMX経由を取得するサンプルを書いたので、 それを元にmongodbに放り込むスクリプトを作ってみた。 https://github.com/koduki/glassfish_monitor まだ、エラーハンドリングとか全然書いてないけど、とりあえずは動く…

GentooでGroovyが上手く起動しないorz

Groovy使いたくて下記コマンドを実行! emerge groovy インストール完了! 下記コマンドで実行! % groovy Traceback (most recent call last): File "/usr/bin/gjl-2.7", line 265, in vm = get_vm(pkg) File "/usr/bin/gjl-2.7", line 157, in get_vm targ…

GlassFishの監視JMXを取得してみた - その1

いくつかのシステムをGlassFishで運用しているんだけど、障害があった時とか、アクセスと負荷の相関とかを統計出来るように、監視オプションを有効にしてみた。 単に、それだけだと、管理コンソールでリアルタイムに現在のステータスがわかるだけで嬉しくな…

JPAでちょっと嵌った話。

最近、JPAを使うことがあったのですが、慣れてなくて結構ハマってしまいました。 高機能だし、面倒なことを簡単に書ける素敵な感じなのですが、普通のことを普通にかけない残念ちゃんでもあります。 メモがてら嵌ったこと書いてきます。表題は当時の気持ちで…

Androidでレガシーコードを書き続けないためのたった1つの方法

答え:テストできるように作る 周りでAndroid開発してる話を聞くのですが、どうもテストがしづらかったり、修正が大変だったりする模様。ここを直してあそこがバグるみたいな。 本屋で参考になりそうな本を探すも、入門系かリファレンス系が殆どで、「どうい…

mongodbのMapReduceでUUを求めてみた

現在、e-NDEXのアクセスログは全部mongodbに入れてお手製のアクセス解析ツールでレポートしています。 最初はとりあえずパフォーマンス無視ということで全部データを取得してRubyで解析するという荒業に出てたんだけど、現状で65万行くらいなので既にかなり…

電子書籍検索サービスのe-NDEXをkoboに対応させてみた

さてこんな感じで大人気のEINK搭載のWiFi付きARM端末のKOBO Touchなんですが、なんとデフォルトでepubリーダを始めとした電子書籍機能が充実してるんです>< と、書いてみたものの私は普通に電子書籍リーダとして利用しておりますw という訳で、e-NDEXもko…

TokyuRuby会議05 に参加してきました #tqrk05

以前から楽しそうなので、参加してみたかったTokyuRubyのLT大会に参加してきましたー。 ブログに書くまでが勉強会ということで一応なんか書いてみます。 http://regional.rubykaigi.org/tokyu05 http://twitter.com/#!/search/realtime/%23tqrk05 会場は株式…

StAXとDOMのパフォーマンスを計測してみた

今まで、javaでXMLを利用するときは専らDOM系、必要に応じてSAXにチューニングしてたんだけど、今さらながらStAXを使ってみた。 StAXはpull型のパーサーで比較的記述製が高く、かつ高速と評判。試しに書いてみたけど、少なくともJDKの素のDOMと比べるなら記…

OAuth2.0のclient_secretって本当に秘密鍵ですか?

OAuthをしているサービスをAndroid + PhoneGap経由で使いたくて調べて見ました。 そして、色々調べたり考えたりした結果、 client_secret ってそもそも秘密鍵にする必要なくね? という天啓を得たので、つらつらと書いてみます。secretって名前なのに秘密で…

ミクさんでSiri対抗アプリを作ってみた

ミクさんでSiri対抗アプリを作ってみました。 ようは音声ランチャー + 人工無脳ですが、デモ動画を作ったので、どんな感じかは下記参照。 【ニコニコ動画】ミクさんでSiri対抗アプリを作ってみた 見ての通り、まだ本当に最低限できてない状態です。一応、ベ…

今さら聞けないスマホ時代のOSSライセンスの基礎知識 - あなたのアプリ規約違反かも?

スマホアプリ開発が大人気かと思いますが、自分の妄想ではスマホアプリを開発している人の少なくない数がWeb屋さんな認識です。 で、そこで気をつけないといけないのがライセンスです。これまた妄想(というか身近な人ベース)ですが、Web屋さんオンリーな人…

JavaEEでもTDD - JPA編 - 2

こっちの続きです。 環境構築はできたと思うので、本命のTDD入ります。まだの人は前回の記事見るか、githubからできたものをを落としてください。 1. 記事の投稿をしよう! まずは、記事の投稿機能を実装します。現在、ArticleにはIdしか存在しないので、タ…

JavaEEでもTDD - JPA編 - 1

JavaEEでUnitTest書く方法はモックを使うとかglassfish-embedded使うとか色々合ったわけですが、先日コンテナ非依存のテストツールであるArquillianがJBossより正式リリースしたので、試して見ることにしました。まずは、こないだ痛い目を見たのでJPA周りをT…

sbtで環境依存ファイルを変更するためのカスタムタスクを書いてみたよ

Scala使うならsbt. これはもはや基本装備だと思うのですが、ちょっと困ってることがあります。というのも、mavenのprofileに相当する機能が分かんなくて(というか無い?)環境依存の設定を開発環境と本番環境で手動で切り替える事にorz というわけで激しく…

異なるストアの電子書籍をまとめて管理するためのたった一つの方法

答え:人力 さて、iPadの登場以来、日本でも何度目かの電子書籍ブームがやって来ました。今回のブームはかつてのそれと違って、一社(ないしは1グループ)の提供じゃなくて、複数のサービスが百花繚乱に咲き乱れてるのが特徴でしょうか。 有名どころはグロ…

xsbt-web-plugin-0.2.11をglassfish3.1で動かすとclass file needed by ServletRenderContext is missingとか言われる

昨日まで普通に動作していたモジュールを今朝GlassFishにあげると エラーが出て動かなくなるという素敵体験をしたのでメモ。 ローカルのjetty(sbt container:start)では普通に動作しているのに、GlassFish上にあげるとこんなエラーになる。 [#|2012-05-20T01…

scalatraで404や500のエラーページをカスタマイズする方法

ちょっとハマったのでメモがてら。 scalatraで例外とかだすと、スタックトレース満載のエラー画面になって大変便利です。でも、この状態でサービスインするとクラッカーの皆さんにも大変便利、というか普通に恥ずいw なので、エラー画面を変更しようと思い…

javaとかScalaで全角を半角に変換する方法

Scalaでテキストの類似度計算の前処理として全角を半角に変換したいんだけど、commonsとかにも無いみたい。まあ、日本人とかにしか関係ない処理だしなぁ。 正規表現でゴリゴリやっても良かったのだけど、どう考えても車輪の再発明だと思って探してみたらIBM…

レーベンシュタイン距離で文字列の類似度を計算してみる

電子書籍のタイトルをAmazonAPIに投げて、その結果からISBNを取得しようとコードを書いてるんだけど、Amazonさんの検索結果上位だからといって、必ずしも検索したい文字列に最も近い語というわけではないみたい。きっと、色々良い感じの補正をかけているので…

Twitter製のScala向けConfigライブラリのutil-evalが素敵すぎる

現在作ってるアプリで設定ファイルを作りたくなったので、Scalaで人気の設定ファイルライブラリであるutil-evalを使ってみた。 このライブラリの特徴は何と言っても設定ファイルをScalaで記述できること。XMLやYAML, プロパティファイルじゃなくて内部DSLで…

新人エンジニアにオススメする6つの本

そろそろ新人も入ってくる頃のなので、新人エンジニアに読んで欲しい6つの本をピックアップしてみた。 レベルとしては研修でif文とかfor文とかは習ってる感じ。目先の入門書というより土台作りの本です。DBやサーバ関係は外して一旦プログラミング特化。とは…

CSS lessな開発のススメ

個人的にWeb系の技術で気に入ってることの一つにHTMLとJSとCSSによる、構造、振る舞い、デザインの分離がある。これはかなり自分の価値観にマッチする。ただ、デザインを担うCSSがPoorすぎるのが問題点。 といっても表現力の話じゃない。CSS3はかなり表現力…

コーディングのアンチパターンを自分なりにまとめてみた

コードレビューをしてると「なんじゃこりゃぁ!?」というコードにまれに出くわします。既存のコードとの兼ね合いでなってる場合は、致し方無くても、新規コードまで真似するのは良くないですよね。 そろそろ新人エンジニアの中には「はじめてのこーでぃんぐ…

AmazonWebServiceをScalaから呼んでみた

amazon web serviceをScalaからお手軽に呼んでやろうと思ってたんだけど、今はシグネチャが付いてるからちょっとプログラミングが必要になったみたい。いい感じのライブラリを無かったので、公式のサンプルとid:tantackさんの記事をみながら自分に必要な部分…

組込みJettyとsinatraで作るお手軽Web環境

作業用スクリプトの管理ツールみたいなのをサクッと作りたかったんだけどRubyやpythonで普通に作るとgemとかの依存ライブラリの管理が面倒。その点は依存ライブラリをwarに固めてJVMさえあればどこでも動くJavaは本当にすごいと思う。 というわけで、JRubyを…