2013-01-04

Renewed this blog

Just released days.gem, the simple blog system built up with Sinatra, and migrated this blog from Lokka.

And, I'll never write Japanese-only article for this blog, please see also http://diary.sorah.jp/ for Japanese entries.

Days

Days is simple blog system built up with Ruby + Sinatra.

This system's big feature is: core separated from deployment.

To set up days and start it, we have to do:

$ gem install days
$ mkdir my_blog
$ cd my_blog
$ days init
$ days migrate
$ days server

by days init, days.gem generates simple Gemfile, config.yml, and config.ru.

But you can customize appearances by placing haml views to views directory.

Core application part is included in days.gem, and it's required by config.ru and gem bundler.

I'm writing tutorial and documentation of days.gem. Stay tuned, please!

Published at 2013-01-04 05:27:50 +0900 | Permalink
2012-10-08

Pending は邪悪な物であり、邪悪な物を生み出した人間には斧を

そらはーです!

RSpec で pending 使ってテストを一時的に無効化した事ある方は大勢いらっしゃるんじゃないでしょうか!

なんらかの事情で一時的に pending せざるを得ない状況ならともかく、pending したなら責任をもって該当のテストを治すか、そもそも不要なら消すなどといった対処をしてもらいたいものですね!

でも、実際来週までには!とか言っても放置する人間や、そもそも直さず1年,2年以上放置される事もしばしばあるのが現実です………

pending を放置する事によって、実はそれは(他の人にとって)かなり重要なテストで、そんなテストがpendingされてる訳ないと思った、他のメンバーによる変更で実はそのテストがコケて事故っていたという可能性も存在するわけです。

  1. 重要なテストをAさんが pending する (「テストは追って修正する」みたいな感じで)
  2. 比較的大きめの変更を B さんが加える。一応全部テストを回してグリーンな事を確認
  3. (実は重要なテストがAさんによって pending されている事に気づいていない)
  4. 事故っている

本当は pending を使わないのが一番なんですが、やむなく使った場合はちゃんと責任を持って直しましょ… 直せ!!! というわけで、催促するツールを作りました!

Pendaxes

cookpad/pendaxes

pend(ing) axes です! 今のところ rspec をサポートしてます!

メール等でコミットした人に個別で催促メールを送ったりできます!!!!

$ gem install pendaxes
$ cd /path/to/your/git/working/copy
$ pendaxes --init
$ pendaxes
$ open report.html

とりあえず試すには、working copy の中で pendaxes --init を叩くとそのディレクトリで .pendaxes.yml を吐き出すので、そこで pendaxes を実行すると report.html を吐き出します。

後述するメール設定をすると、この report.html のようなメールがコミッター毎にその人のコミットしたpendingがメールで送られると思えば良いです。

(git grep とかを使ってるので git リポジトリと git が必要です)

(Ruby 1.9.2 以降で動きます。それ以前は保証しません)

設定ファイル

https://github.com/cookpad/pendaxes/wiki/Configuration

を参照してください… ちょっと複雑です。以下に一例を載せるので参考にしてください><

メールを送る

notifications に以下のような行を足せば動きます。mail.gemsendmail delivery_method を使って、各コミッターにメールを送信します。

- use: mail
  reporter:
    use: haml
  from: no-reply@example.com
  delivery_method: sendmail

こんなメールが飛びます:

cron で回してみる

cron で回す際は、config.yml に git clone 先と clone 元を指定してあげると pendaxes が pull まで面倒を見てくれて便利です。pendaxes --init で指定付きで生成できます。

$ pendaxes --init config.yml https://github.com/cookpad/pendaxes.git /tmp/pendaxes

で、/tmp/pendaxeshttps://github.com/cookpad/pendaxes.git を clone して自動で git fetchgit reset --hard で最新のコードに更新してくれる config.yml を生成してくれます

$ pendaxes config.yml

で生成した config.yml を実行してくれます。後は同じように config.yml を編集してメール等を送る設定を追加した上で cron で回せばいいと思います。

効果

毎朝6時に cron で回して送るようにしたところ、だいたい放置されていた大量の pending がどんどん数日で消えて行きました! わーい!

…あれ?

Published at 2012-10-08 18:10:37 +0900 | Permalink
2011-04-09

Lingr for Androidリリースしたよ

Android Marketにリリースしました。

https://market.android.com/details?id=org.ajunk.titanium.lingr

どうぞご利用ください。

titanium mobileで実装してみたのだけど、ドキュメントのパラメータ名が間違ってたりしてサンプルコードがドキュメントだということを通関した。

もう二度と使わない。時代はruboto

Published at 2011-04-09 08:09:51 +0900 | Permalink
2011-04-09

Released Lingr for Android

I released "Lingr for Android" on Android Market.

https://market.android.com/details?id=org.ajunk.titanium.lingr

It's implemented with Titanium Mobile, and I knew that a document of Titanium is sample codes in KitchenSink.

I don't use Titanium Mobile never...

Published at 2011-04-09 08:08:19 +0900 | Permalink
2011-03-20

sinsai.info というサイトを手伝っています

日本東北太平洋沖大地震がおきましたね。官房長官お疲れ様なので寝てください。

さて、ここ一週間 http://sinsai.info というサイトを手伝っています。

地震後すぐに 日本OpenStreetMapコミュニティ がUshahidiとかいう糞便言語PHPを使ったプラットフォームを借用し立ち上げました。

投稿されたレポートをデータチームが検証して承認したり、twitterから情報を集めレポートにしたりしてます。

自分は技術班でtwitterクローラをRuby + Streaming APIで作ったり (RubyとPHPの夢の融合。)

PHPのコードをいじってちょこちょこと利便性高める仕事をしてたりします。

PHPよくわからないしやっぱり糞便言語だということを再認識しました。

というわけで被災地 (関東含みますよ) からの情報をお待ちしています。

http://sinsai.info/ をどうぞご利用ください。

Published at 2011-03-20 03:27:05 +0900 | Permalink
2011-01-26

B-mobile wifiのバッテリー残量などを表示するiOSアプリ、bm-wifi infoが公開されました!

こんにちは!

b-mobile wifiのバッテリー残量などを表示するiOSアプリがついにリリースされました!

既知の問題

  • mao.bmobile.ne.jpなどのHTTPプロキシを利用すると情報が取得できない。

    • この問題はソフトウェア側で改善することができないため、後述する「プロキシを利用する場合は」を閲覧してください。

注意事項

  • b-mobileは日本通信の登録商標です。日本通信とは全く関係がないため、このアプリの質問を日本通信にしないようにお願いします。

入手

icon

bm-wifi infoをApp StoreでDLする

使い方

  • b-mobile wifiにiOSデバイスを接続する。
  • bm-wifi infoを起動する。
  • 取得できない場合は、ホームの設定アプリを開き、bm-wifi infoに進んでIPアドレス、ユーザ名、パスワードを確認する。
  • 再度bm-wifi infoを起動し、リロードボタンを押す。

プロキシを利用する場合は

iOSのAPIの仕様で、プロキシを利用している場合はプライベートIPアドレスにアクセスできないため、PACファイル (プロキシ自動設定ファイル) の機能を利用し回避する必要があります。

そのためPACファイルを動的生成するWebツールを作成しました。

たとえば、b-mobileのWebアクセラレータ mao.bmobile.ne.jp (ポート32080) を利用する場合は

http://pac.ajunk.org/pac?p=mao.bmobile.ne.jp:32080 を、

設定→Wi-Fi→b-mobile wifiのAP名の>アイコンをタップ→プロキシ設定の「自動」

に設定すればOKです。 その他のプロキシの場合は、http://pac.ajunk.org/pac?p=ホスト:ポート を埋めてそれを設定すればOKです。

また、プロキシに認証を利用している場合などはサポートしておりません (あくまでもb-mobileのWebアクセラレータを利用する場合のみを考えたため)

そのため、その場合は自分で調べてPACファイルをWebに配置し、それを参照するようにしてください。

スクリーンショット

2a2413b60fcf18bf081e78923a05479d.png

サポートについて

この記事のコメント欄までどうぞ。

Published at 2011-01-26 03:11:18 +0900 | Permalink
2010-09-28

b-mobile wifiの電池残量とか表示するiOS向けアプリつくりました

App Storeに上手くリリースできました。 http://codnote.net/2011/01/26/bm-wifi-info

できました! http://github.com/sorah/bmwifiNotificatorForiOS RT @sora_h: これからbmwifiNotificator for iOS作る

ええと、OSX版も作ったし次はtouchとかiPhone向けに作ろうと思ったのでカッとなってつい。

コード自体は同じObj-CでiOSでもつかえるRegexKitLiteを使ってるので、View作ってすこしいじっただけで完成した。

本当ならLocal Notificationで電池残量警告とかしたかったんだけどiOS4のデバイスがないのでパス。

で、提出なんだけどこういうのってちょっとパスするの難しいだろうし残念ですが開発者用にさせてください。

ライセンスの元adhoc配布とかたぶん自由。まあ勝手にインストールしてください。

ソースおよび使い方はこちら: http://github.com/sorah/bmwifiNotificatorForiOS

Published at 2010-09-28 02:26:25 +0900 | Permalink
2010-09-27

b-mobile wifiの電池残量と電波強度をメニューバーに表示するアプリ bmwifiNotificator for Mac OS X を作りました

iPhone, iPod touch向けできました! http://codnote.net/2010/09/28/bmwifi-notificator-for-ios/

b-mobile wifiを買いました

DSCF7561.JPG

電池残量と電波強度を表示するのにいちいち管理画面みるのはだるいので、メニューバーに表示させるアプリケーションを作ってみた。

対象

  • Mac OS X 10.5以降 (10.6でしかテストしてないけどたぶん動く)
  • B-mobile wifi (BM-MF30) 素のMF30でも動くかはしらない

インストール

パッケージ: http://github.com/sorah/bmwifiNotificator/downloads

ソースコード: http://github.com/sorah/bmwifiNotificator

使い方

設定

login failed preferences

  1. アイコンをクリック
  2. Preferencesをクリック
  3. MF30のIPアドレス、管理用のIDとパスワードを入力
  4. Preferencesを閉じる

再読込

  1. アイコンをクリック
  2. Reload をクリック

自動更新

もしMF30を設定する場合、自動更新をオフにしないとログイン画面にすぐ戻される場合があります。

自動更新はMF30を見失ったときに自動でオフになります。

  1. アイコンをクリック
  2. Auto Reloadのチェックをはずしたりいれたりして切り替え

アイコンとメニューの説明

通常

normal

電波強度とバッテリの残量は常にメニューバーに表示されています。クリックするとキャリアやステータスを見ることができます。

エラー (だいたいログインに失敗)

login failed

クリックして詳細を見ることが出来ます。

MF30 has missed

mf30 not found

mf30を見失うと自動更新はオフになります

例: MF30から切断した, 電源を切った, 電池切れ

その他

  • 制作者は日本通信と全く関係ありません
  • "B-mobile WIFi" 等は日本通信の商標です
  • 無保証です, 自己責任で
Published at 2010-09-27 23:05:31 +0900 | Permalink