読者です 読者をやめる 読者になる 読者になる

"Process not running: httpd"

LighttpdとApache httpdが共存していると上記のWarningが発生するみたいなのですが、/opt/zenoss/Products/ZenRRD/zenprocess.py を読むと、初期状態の正規表現では誤検知してしまう可能性があります。なので、INFRASTRUCTURE > Processes > Apache > Regula…

SPFのテストにつかえるサービス

ちょっと最近はインフラ周りでいろいろ調べ物をしていまして、それらのメモなぞを。SPF (Sender Policy Framework) はRFC4408で扱われている泣く子も黙るスパム対策の一つですが、要は送信元のSMTPサーバーを指し示しているDNSの方で以下のいずれかの設定を…

いまさらのN Queen問題

最近、Scalaのコップ本を読んでいるのですが、例題でN Queen問題が出ていて、結構すっきり書かれていてへぇ〜って思いました。そういえば、N Queen問題は試したことが無かったのと、このところコードをあまり書いていないような気がしたので、気分転換にOCam…

not a dynamic executable

$ uname -a Linux carrot 3.0.0-17-generic #30-Ubuntu SMP Thu Mar 8 20:45:39 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux $ ldd /lib64/ld-linux-x86-64.so.2 statically linked $ ldd /lib32/ld-linux.so.2 not a dynamic executableNow I remember removi…

AdMarvelという広告系のSDKが位置情報まで送っているみたいな件

どうもインストールしていたShazam絡みで動いているみたいなんだけども、logcat見ているとたまに以下のようなエラーを吐いている(UNIQUE_ID以降とGEOLOCATION以降は一部値を変えてます)。 E/admarvel( 1299): postString: &site_id=14488&partner_id=ef8a3…

undefined method `class_inheritable_accessor'

最近、ほとんどRailsに触っていないことに気がつき、なおかつRails3に触ってなかったことにも気がついたので、感触をつかむ第一歩として前に作っていたRails2のコードをRails3に移植している最中、表題のエラーがでたので対応した際のメモを残しておこうかと…

パーセプトロンの練習

最近、機械学習に興味を持ち始めていて、SVMを実装してみようと思ったら、挫折したのでやはり段階を踏むべきであろうということでパーセプトロンから試してみた。komamitsu/ocaml-perceptron · GitHub perceptron.ml let ($) f g = f g let print x = Hashtb…

Android WidgetアプリをMarketに登録してみたの巻

NAVER Topic Widget - Google Play の Android アプリ NAVER検索(http://www.naver.jp/)のトップに流れるトピックワードを、AndroidのWidget上で順番に表示します。情報の更新は20分間隔、トピックの切り替えは15秒間隔でおこないます。スリープ中は処理を…

Android上でWeb serverを動かしてみた

Wifi環境であればPCからAndroidにアクセスできるはずで、すなわちAndroid上にWeb server立ててPCからアクセスできるんじゃないかなぁ、と思ったのと、NanoHTTPD has moved to github という酷くかわいいhttpd(Java source file一枚!)を見つけてしまったの…

マルコフ連鎖で圧縮新聞っぽいことを

マルコフ連鎖って実際に使ったことが無かったので試してみた。 三階のマルコフ連鎖(でいいのかな?) 四階にしてみたらほとんど原文のままで面白くなかった.

再帰下降パーサーの練習

最近、あまりRuby触って無かったのでリハビリがてら...

using multiple databases with Spring iBatis

Spring経由でiBatisを使いつつ、複数のデータベースを利用しようと思ったら結構ハマったのでまとめておきます。 やりたいこと database1にはpersonというtableがあって、database2にはprojectというtableがあり、それぞれにアクセスしたい。 解決方法の概要 …

merge sort

Gistが貼っ付けられるかテスト

memo for "Redis latency problems troubleshooting"

http://redis.io/topics/latency をみて個人的にメモりたくなった点を以下に。 RedisはRDB snapshotとかAOFを作るときにfork()するので、マルチコア推奨 GET commandとかはO(1)だけど、LREMとかO(N)のものもあるので http://redis.io/commands で計算量確認…

2011年のふりかえり

気がつけば大晦日。急いで書きます。 趣味のこと お仕事が忙しくて自分の時間があんまり無かったのであれなんですが、プログラミング言語ではScala, Haskell辺りをさわってみていた記憶があります。あとOCamlのLwtも少し。Scalaはう〜んどうかなぁ... 個人的…

Non blocking IOでecho server

まぁクリスマスなんですがJavaのNon blocking IO周りについて少し調べてました。非リアですね。参考にしたのはうっすらと全体を網羅していたっぽいこちら => http://tutorials.jenkov.com/java-nio/index.htmlで、手を動かさないと理解できない人種なので簡…

functor適用するときtypeに直接record型を定義すると怒られる件

↑のpostで引っかかったので単純な形にして確認してみた。 functor.ml (functorの定義) komamitsu@carrot:~/lab/ocaml$ cat functor.ml module type HogeType = sig type t val string_of_t : t -> string end module Make(Hoge : HogeType) = struct let pri…

A* search algorithm用のモジュールを書いてみた

仕事ではOCamlもA* search algorithmも全く使っていないのですが、自宅で気分転換/リハビリがてら何か書こうとすると、すぐOCamlでA* search algorithmを書いてしまいます。たまにダイクストラ法で何かgraphを探索するやつも書きます。毎回同じようなものを…

List的なものをパースしたい

まぁ全く必要に迫られている訳では無いのですが、日々JavaでかつAndroidアプリ開発をしていると、精神衛生上いろいろとあるので、少し触って放置していたParsecで遊んでみることに。前回四則計算をやったような気がするので、今回もこじんまりとリストのパー…

初Lwtでecho server

書いた。 https://gist.github.com/1362149これ↓を参考に https://github.com/avsm/ocaml-cohttpserver/blob/master/server/http_tcp_server.ml 適当に書き始めたのだけど、途中で「やばい徹底的にmonadicに書かないと動かないというかコンパイル通らない」…

Issue 7933: Closing a socket from another thread doesn't generate IOException

う〜ん、どうやら全力でこいつを踏んでいるみたい... http://code.google.com/p/android/issues/detail?id=7933

そもそもAndroidOS2.2以前では別ThreadからのSocket#close()が効かない件

http://d.hatena.ne.jp/komamitsu/20111103/1320338412 の続きで少し見てみたら、HttpRequestBase#abort() -> AbstractClientConnAdapter#abortConnection() -> SocketHttpClientConnection#shutdown() -> Socket#close() と来ているので、やっぱりこの辺か…

AndroidではHttpGet#abort()が効かないみたいな疑惑

OpenJDKでもOracleJDKでも、org.apache.http.client.methods.HttpGetのexecute()でblockしている間, 以下のように別Threadからabort()させることができます。 public class App { public static void main(String args[]) { final String hostname = "localh…

ORMLite使ってみたメモ

ここ半年位、Android Appを開発しています。関係者一同の頑張りもあって100万ユーザーという非常にうれしい状況なのですが、結構なハードスケジュールで開発が進んだので割と力技で泥臭く実装している箇所があったりします。Database周りもゴリゴリSQL文…

maven-android-pluginを使う & m2eclipseと連携するメモ

今更なのですが、メモを残しておこうかと。というか http://code.google.com/p/maven-android-plugin/wiki/GettingStarted と http://rgladwell.github.com/m2e-android/ 見ればいいだけなんですが、まあ一応。ちなみにADTからproject作っちゃった場合向けで…

ScalaでA* Algorithmで経路探索

ふと気がつけば 函数プログラミングの集い 2011 in Tokyo - PARTAKE が開催されていたりしていて、数ヶ月前の状況を考えると「絶対参加できぬ... 変な期待は持たぬが吉...」みたいな感じだったのですが、今となってみると参加できたじゃん的な状況でUST観て…

ASPIRE 5750で輝度調節が効かない件

自宅のデスクトップがイカれ始めていて尚且つ以前から騒音状態だったので、適当なノートに乗り換えることになりコストパフォーマンスが素晴らしかったASPIRE 5750を購入。Ubuntu11.04を入れてみたら輝度調整が効かなくて目が疲れてきたので対応することに。…

Logicoolのtrackballでwheel scroll

mouseが壊れちゃったので初めてtrackballというものを買ってみたのだけど、結構良い。でも、Linuxだと付属のwheel scrollソフトが使えないので何とかしようと。で色々見てみたら/etc/X11/xorg.confをごにょごにょすれば良さそうなんだけども、最近はそれはあ…

merge sortの練習

この二ヶ月間ちょい、仕事の方で一杯一杯だったので、全然趣味的なプログラミングができずに、割と悶々としておりました。で、最近になって落ち着いてきたので、以前少し触っていたScalaを思い出そうとしたら完全に忘れていることに気づきリハビリがてら何か…

縦分割して左半分の続きを右半分に

Vim

素晴らしかったので引用http://markmail.org/message/kbnyhxffy6zs7picvia http://twitter.com/#!/tetsutan/status/66080475680227328 Hello!Place the following into your :" -------------------------------------------------------------------- " ema…

Icon Badge的な何か

iPhoneでよくある例のやつです。Androidでは標準で無いので自前で何とかしないといけなさそうですが、どうもサンプルコードが見当たらないのです。悲しい…嘆いていても仕方が無いので自分で書いてみました。 ImageWithBadge.java package com.komamitsu.andr…

ScalaでBinary Tree

Scalaを始めてみました。実のところOOPとFPの融合という点で「使いこなせないのではなかろうか?」という不安が結構あったので、ちょっと消極的だったのですが、色々な人に「仕事でJava、趣味でOCaml?じゃあScalaでしょう」と言われる機会があり、やってみ…

x86_64環境でのocaml-mysqlが上手く動かなかった件

先日から、AWS EC2上にFree usage tierのインスタンスを作って、CPU使うようなことはそちらで行おうとしています。まぁきっかけは節電なんですが、もともとEC2に興味があったので。それはさておき、動かそうとしているのはMySQLをstorageとしたOCamlのプログ…

failed command: READ DMA EXT

昨夜、PCを立ち上げたら下記のようなエラーをdmesgに吐きつつ、initramfsプロンプトに落ちてた。 : [ 7.012183] ata3.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x0 [ 7.012189] ata3.00: BMDMA stat 0x24 [ 7.012195] ata3.00: failed command: RE…

Tomcat5.5メモ

ひょんなことからTomcat5.5を触っているのだけど、日頃の行いが悪いせいか落とし穴に落ちまくっていたので、経験則的に「これでとりあえず動く」ような設定をメモっておきます。ほぼ完全に自分用のメモです。補足すると、「JSP fileにて、c:forEach with EL …

MySQLからRedisへのimport tool

この程度のことは何かしらの言語を使って、一瞬で作らなきゃだなぁ、と思って何が適当か少し考えてみた。想定される制約条件は以下。 いろいろなサーバーで実行したい Root権限が無いケースも想定 インストールされているのは Perl, Python, Java(Maven入り)…

短縮URLサービスの入力チェック色々

ちょっと調べてみたら各社いろいろバラバラなのでまとめてみました。 サービス名 URI schema無 許容されるURI schema RFC1034的にダメな文字 アンダースコア TLD無 bit.ly ○ http, https, ftp △(読み飛ばされる) △(読み飛ばされる) × goo.gl ○ http, https, …

2800万件つっこんでランダムアクセス

http://twitter.com/#!/koma_mitsu/status/42589756168749057Twitterでもメモっておいたんだけど、後で探し辛いのに気がついたのでこちらにもメモ。Redisに2800万件のレコード(300バイト程度)を突っ込んでランダムアクセスをさせてみたら、性能落ちずに140…

Hibernate触ってみたメモ

そろそろ仕事がらこの辺りもからんできそうなので家事育児の隙をついて弄ってみました。という備忘録的メモ。まぁ実際はSpring経由でやりそうなんですが、まず直接使ってみたいなぁと。方針は以下。 できるだけAnnotationで Maven! Maven! Maven! -1. 事前準…

"The Apache Modules Book" 中のサンプルコードのバグ

PRENTICE HALLから出ている本なんだけども、"3.5.4.1 Arrays" で書かれている以下のコード apr_array_header_t* arr = apr_array_make(pool, sz, sizeof(my_type)); (snip) /* Iterate over all elements */ for (i = 0; i < arr->nelts; i++) { /* A C++ re…

Redisレプリケーションメモ

最近、NoSQLと分類されるRedisで遊んでいるのですが、レプリケーションをさせてみるメモを残そうかと。まず、masterとslave用の設定ファイルを作成します。ほとんどデフォルトのままですが、ファイルが衝突しないように変更しているの、とレプリケーション用…

Parsecで四則演算パーサー

前回から始まったParsec編も今回でついに最終回となりました。今回は少し背伸びをして四則演算パーサーに思い切って挑戦してみたいと思います。 えいっ! import Text.ParserCombinators.Parsec main = do cs <- getContents case parse expr "" cs of Right…

はじめてのParsec

昨年の暮れから、空いている時間を見つけてはHaskellのお勉強をしているのですが、ここ数日はParsecを触っていてエラーメッセージが分かり辛いとか、そういうお正月を過ごしています。普通であれば、手始めに四則演算なぞをパースしてみるところな気がします…

ことしのこと

ふと気がつけば大晦日で、少し手が空いたので今年のことを簡単に振り返ってみます。 0歳の長男 日中から夜中まで面倒をみているカミさんに比べれば全然大したことはないのですが、私が家にいて火急の用事が無いとき&長男が(?:暇そう|泣いている|転びそう|危…

背景画像ありの画像付きボタン

を作りたい場合に気がつかなくて少しハマったのでメモ。 ImageButtonを使えばよろし。 <ImageButton android:id="@+id/hoge_btn" android:layout_height="wrap_content" android:layout_width="wrap_content" android:layout_weight="20" android:focusable="true" android:src="@drawable/icon_xxx" android:background="@drawable/sel_bg_button" /></imagebutton>

UbuntuからIS06にUSB接続

まぁ買いました。IS06。何だか自宅のPCより軽快なのは気のせいでしょうか...で、Androidアプリをちょこちょこ作っている手前、IS06に接続できないと話になりませんので試してみましたメモ。Android SDKやらは既にインストール済みという前提で。あとUbuntuは…

画像ダウンロード中にローディングっぽい表示を出しておきたい

という需要が良くあるのだけど、標準のSDKのライブラリにはピッタリのものがないので、それっぽいものを書いてみた。まず、画面のレイアウト。今回はListActivityを使うのでそのように。今回の本筋とは関係ない。 layout/main.xml

java.lang.ClassCastException:android.widget.LinearLayout$LayoutParams

LayoutInflaterでinflate()を使っていたら、こんなエラーが出てちょっとハマってしまったのでメモ。API referenceをみると、 http://developer.android.com/reference/android/view/LayoutInflater.html#inflate%28int,%20android.view.ViewGroup,%20boolean…

りはびり(Ordシグネチャーとファンクターを使って独自のTreeモジュールを作る)

久しぶりにOCamlでも書いてみようかと思ったら、全然書けなくなっていたのでリハビリをすることに。お題は @osiire さんの http://d.hatena.ne.jp/osiire/20101101 のレベル3。といってもこれまでの経験上、最初の「Ordシグネチャーとファンクターを使って独…

java.lang.NoClassDefFoundError: org/apache/log4j/Logger

ちゃんとpathが通っているにもかかわらず、Tomcat起動時にこのエラーが出まくるときは、ServerをCleanするとなおることがある。というメモ。