2011年12月25日 3:00

年初の目標を振り返ってみる

年初の今年の目標を見つけたので振り返ってみるテスト

>入院しない:元気があれば何でもできる!
入院しなかった!

>体重50kg超え:何年間連続同じ目標だw
×:現在体重47kgくらい。あとちょっとが超えられない俺ナッシュ

>Google App Engineで何か作る:ネタはあるので
○:今年はjubeat++AZusaar!がメインでした。

>AndroidアプリかiPadアプリを作る:同上
×:Titaniumの本を買って環境構築するところまではやったんですがorz

>社会人3年目ということで会社に引きこもらずにどんどん外に出る
○:社内と社外合わせると今年1年間で合計30個くらい参加していました(うち、自分がなんらかの形で発表したものは5個くらい)。去年の自分に比べたらアグレッシブに行動できた方じゃないかと思います

>OCJ-D(旧SJC-D)をとる:問題集はおろか公式にもろくな情報がねえw
→×:いつも心の片隅で考えてはいたんですが、いつか調べた時にswingでコード提出というのが気になって結局やらずじまい。試験範囲もぼんやりとしすぎてるためぶっちゃけSJC-WCだけでよくね?という結論に。

RPGツクールXP セーブデータ改変ツール Professionalをフリーウェアにしました

RPGツクールXP セーブデータ改変ツール Professional を今まで1000円のシェアウェアで公開していましたが、いろいろ思うところがあったのでフリーウェアにしました。

理由のいくつか

  • 初版から5年も経つから
  • しかも最後のアップデートから丸2年放置
  • Windowsアプリ開発に対する熱意が前に比べてだいぶ落ちた
    (ここ1?2年くらいはwebアプリしか作ってないです・・・)
  • ろくにサポートしてない状態で有償として提供しておくことの罪悪感
  • 数年前にPCを買い換えた時にアクティベーションの関係でRPGツクールXPが起動しなくなったw
    (購入直後にユーザ登録してれば大丈夫だったんですがねぇ)
  • 盆正月の帰省時に一時的にシェアウェアを無効化するのが地味に面倒
  • メールが来たらライセンスキーを返信するお仕事はもういやだお・・・

まぁこんなところですかね。

サポートに関しては今まで通り(半分放置気味)で。


返金に関しては今のところ考えていません。直近1ヶ月以内に購入された方に関してはどうしてもという場合には返金を考えてはないですが、VectorやAnyWare+の手数料を差し引いた分からさらにこちらからの振込手数料を差し引いたら雀の涙程度の金額が残りそうにないことを考えると乗り気じゃないです。

参考:
  • Vectorシェアレジの場合:1000円 - 150円(手数料15%) = 850円
  • AnyWare+の場合:1000円 - 200円(手数料20%) = 800円
他行宛の銀行振込だと手数料が200円前後かかるので返金しようとしたらそこからさらに差し引かれます。
500?600円ぽっちですがどうしても返金してほしい(かつ、僕に銀行口座を教えてもいい)場合メールで個別対応します。

メールフォームに下記を記入して送信してください(〆切は2012年1月末日)

【購入時期】 
(基本的に2011年11~12月中に購入された方が対象)
【ユーザー名】
【メールアドレス】
【ユーザーID】
【銀行口座】
(三井住友銀行なら手数料かからないのでベスト)



2011年12月15日 22:10

AZusaar!がMashupAwardを受賞しました

12/11(日)にMashup Awards 7の授賞式に参加し、AZusaar! がジオどす賞を受賞しました。

ジオどすAPIを使ってる作品が全部で4作品だけしかなかったため、最初受賞の連絡がきた時はうすうすこの賞かなぁとは思ってましたw


ジオどすの「ジオコーダ前処理API」は、京都の住所用と思われがちですが、その他の住所でも「ビル名等を判断して削除」する機能があります。
ATND、こくちーずなど、「セミナー」という性質上、ビル名・部屋名は必須情報であり、それが地図の自動表示を邪魔していることが非常に多くあります。
この作品では、対象サイトの地図が住所検索に失敗してアフリカ沖を指している(緯度経度が0度)イベントに対しても、きちんと近隣のホテル検索が機能していました。これはイベントの住所をジオどすの「前処理API」を通した上でジオコーディングしていて、まさに本APIが本領発揮できる場所で使って頂いたことを高く評価いたしました。

を読んでちょっと感動。ジオどすAPIは結構便利なのでジオエンコーディング(住所から緯度経度を算出)をするのなら使って損はないと思います。

授賞式の様子。

僕は1:36:00付近に映ってます。受賞台の上であずにゃんペロペロしたのは当日の思いつきです。iPadって便利ですねぇw

貰った物

賞状
MA7_1.png

副賞の舞妓さん無料体験券
MA7_2.png

今流行りの男の娘ですねw 京都に行くとしたら3月か5月の連休かなぁ・・・

その他、Tシャツや各種ノベリティを貰いました。


今回の賞は自分だけの力だけで獲れたというわけではなく、かわいいあずにゃんを描いてくれたのみあっきゅさん@akkyu323)とデザイン修正をしてくださったほっしーさん@hossie)、各種APIを提供してくださった企業様、普段参加しているGoogle App Engineの勉強会(appengine ja night)のナレッジのおかげだと思います。

本当にありがとうございます!

来年こそは100万円を獲りたいところ。(それ以前にネタを思いつくかどうか怪しいですがw)

【2012/1/7追記】
授賞式の写真がupされました

2011年12月 6日 0:00

実録!TDD風景 #TddAdventJp

TDD Advent Calendar jp: 2011 の6日目で @shuji_w6e さんのエントリの次です。

他の人のエントリと比べると内容がかなりぶっとんでいるのであしからず(笑)

TDDを学ぶ上で何が一番いいなぁと考えたのですが、実際にコーディングしている風景を見るのがいいかと思い動画を撮ってみました。既出かどうかはシラネ


今回はTDDBC横浜のお題でTDDしてみました(言語はJava)

コード

本来なら課題4までやっていたのですが動画が途中で壊れていたので課題2まで収録しています。(githubには課題4まで収録)

不自然に間が空いているのは途中何度もサブPCでググったりしてるからです。一発撮り無編集なのであしからず。
実際のコーディング風景からTDDのリズムを感じ取ってもらえれば幸いです。

Quick JUnitではなくS2JUnit4 Pluginを使っていますが、使い方はだいたい一緒です。仕事がSeasar2中心なのでその流れでWinにはS2JUnit Pluginを入れています。(MacにはQuick JUnitだけどw)

キー入力表示には拙作の「見えるキーボード」を利用しています。


よく使うEclipseのショートカット(Macの人はCtrlをCommandに読み替えてください)

  • Ctrl + Space: コード補完
    • 「tes」まで入れるとテストメソッドのテンプレートが作れる
    • カーソル位置がそのままだとJUnit3用のテストメソッド(testXxxxメソッド)
    • カーソルを1つ上に移動させるとJUnit4用のテストメソッド(@Testメソッド)
  • Ctrl + 1: クイックフィックス。その場に応じた補完ができる
    • エラーや警告があればそれを解決
    • テストファーストで先にテストケースだけ作り、必要なメソッドがない状態でコンパイルエラーにしておいた状態からメソッドを作るのは日常茶飯事
    • メソッドの戻り値をローカル変数やフィールド変数に代入
    • とにかくいろいろできるすぎるのでとりあえず困ったらCtrl + 1しておくと吉
  • Ctrl + Shift + O: インポートの編成。足りないimport文や余分なimport文の整理ができる
  • Alt + Shift + R: クラス名、メソッド名、変数名などの変更。
    • 直接参照している箇所はもとより、Javadocの中も全部まとめて変更できるので超便利
    • ただしリフレクションで参照してるのは無理なので、リファクタリングのことを考えるとリフレクションは極力使わない方がいい
  • Alt + Shift + L: 選択範囲をローカル変数に抽出
  • Alt + Shift + M: 選択範囲をメソッド抽出
  • Alt + Shift + I: インライン展開。ローカル変数抽出やメソッド抽出の逆
右クリック→リファクタリングは便利なコマンドが揃ってるので、一度全部使ってみてどんなことができるか確認してみるといいです。


以下はQuick JUnit or S2JUnit plugin専用(JavaでEclipseでTDDやる上ではどちらかは必須)

  • Ctrl + 0: テスト実行(テストメソッド内であればそのメソッドだけ、それ以外ならテストクラス全体)
  • Ctrl + 9: テスティングペアの移動。なければ新規作成ダイアログ

その他や詳しいショートカットはこちらが参考になります



自分がTDDをやり始めて1年くらい経つのでついでに雑感など。

そもそも自分の場合、初めからTDDをやろうとしてたわけじゃないです。
前のPJとかその前のPJとかでテストコードをほとんど書いてなくて苦労してた苦い経験があり、丁度新しいPJということで今度は何が何でもがっつりテストコードを書こうと勝手に決心したのが始まりです。

その頃はTDDという言葉は知っていても具体的にどんなことかは知らず、ただ闇雲にテストを書きやすい開発スタイルを追求していったら自然とTDDのRed→Green→Refactoringの黄金の回転らしきものが見についていました。

※たぶん同時期にリファクタリングやクリーンコードも読んでいたと思いますが、「テストコードのリファクタリング」という言葉を知らない時期に書いたテストコードはいい加減リファクタリングしたいです。(この間リファクタリングして1クラス4000行から3000行くらいには減ったけどw)

そして実際にTDD BootCampに参加し和田さんの講演を聞いたり実際にペアプロをやったりして、自分の開発スタイルがTDDであることを再認識し自信をもつ頃が出来ました。

5年後とか10年後とか先のことは分かりませんが、とりあえず現時点で自分に一番相性のいい開発スタイルはTDDなので飽きるまではこのスタイルで行くと思います。


まぁ、何が言いたいかと言うと

べ、べつに好きでTDDをやっているんじゃないんだからね!///

ということです(ぇー