RxTstudy vol.1に参加しました

RxTstudy vol.1に参加してきました。

参加まで

関西で初のRedmine勉強会という事が原因か、募集30名に対して応募者50名という盛況ぶりでしたが
何とか登録できたので、行ってきました。

場所はよく関西で勉強会が開かれる 株式会社クロノスさん。
13時過ぎに会場に行くと、すでにある程度の人が到着していました。

場所は自由だったのでスライドの見やすそうな真ん中を選んだのですが、
クーラー直撃で非常に寒い。上着を持ってくるべきだったと少し後悔しました。

セッションのスピーカーは@sakaba37さん、@akipiiさん、@yohhatuさん。
@sakaba37さん、@akipiiさんは「Redmineによるタスクマネジメント実践技法」の著者の方です。

セッションの感想

@sakaba37さん

Redmineというか、BTSを祖とするチケット駆動開発の発祥からいかにRedmineに繋がっていったのかを
わかりやすく説明していただけました。
従来のWF開発プロセスの課題、問題点をいかにTiDDで解決するかという話や、
TiDDの方式、適応方法(完全チケット or 補完チケット方式)、チケット管理方法(ワークフロー型 or ネットワーク型)などの対比は参考になりました。

また、最後におっしゃられていた「チケット駆動開発銀の弾丸ではない」「チケット駆動開発のメリットで改善可能なものがあれば適応したらよい」というのは同意です。

@akipiiさん

普段から自分がウォッチしている「プログラマの思索」というblogも書かれている方。Redmineの運用についてよく参考にさせていただいています。
今回の発表内容は「チケット駆動開発アンチパターン
チケット駆動開発を初めてみたけど、ハマりこんでしまうような事例と対策方法を紹介されました。

個々の事例は公開されたスライドを見るとして、
いくつか自チームではまりこんでいるパターンがあったので対策したいと感じました。
(特にチケットの粒度とワークフロー)

また質問にも答えて頂きありがとうございました。
プロジェクトのライフサイクルとリポジトリのライフサイクルを合わせる事を念頭に、リポジトリとプロジェクトを見直そうと思います。

@yohhatuさん

Redmineの実践事例紹介。
X-PJ、Y-PJ、Z-PJと3つのそれぞれ違ったプロジェクトについての事例紹介をして頂きました。
実際に導入するという事を考えると一番参考になりました。
特にRedmineの管理者権限は自分も持っていないので(プラグインが追加できない)、それでもここまでできる、というのは希望が持てました。
いつか3種の神器をすべて導入して使い倒したいです。
また、Twitterか何かは忘れてしまいましたが「導入は母性が必要」と言ったのは格言として覚えておこうと思います。

LT

導入事例、ツール布教の方法、IPAさんの開発中Redmineプラグインのご紹介などありましたが、
やはり一番熱かったのは@kuranukiさんのライトじゃないトーク

ビジネススタイルにまで踏み込んで「Point of Sale」から「Point of Use」のクラウド型受託開発へ取り組んでおられる思想は、
納得できるものがありました。

懇親会

勉強会場でピザとビールを手にスタンドアップ懇親会。あまり積極的に動ける方ではないので、多くの方とお話しができたわけではないのですが
@hiroe316さん、@akipiiさん、@fmktさん、@ahyariさんなどとお話しさせて頂きました。

総括

大変有意義な勉強会でした。
発表と関係の無い感想としては、自分の普段行く勉強会より興味のある分野が違うためか年齢層の高い方が多く感じました。
原因が同じかわかりませんが発表もアニメネタなどなく全体的に真面目な感じでした。
今回勉強したことは、ぜひいろいろとフィードバックしていきたいと思います。
RoRでのプラグイン開発もやってみたいなぁ。

分散型バージョン管理システム勉強会@京都 に参加しました

昨日、分散型バージョン管理システム勉強会@京都ダイバージェンス1%の向こう側へ〜 に参加してきました。

サブタイの元ネタはシュタゲで、シュタゲはまだ見たことがないんだけど、話題についていけないので見ようかな?

gitワークショップ @__papix__さん

gitの講師として登壇。gitは家でも一人gitとして使ってたのですが、
一人gitなだけにrebase、mergeなどの使い方を知らないコマンドを紹介していただけたのはありがたかったです。
章立てが一貫してまどマギのネタで統一されてたのには笑わせて頂きました。

bazaar紹介 @aroma_black さん

gitワークショップが想定より早く終わったため、LT枠を拡大して急きょ登壇されて
bazaarの紹介をされました。
Bazaarはgit/mercurialに比べてあまり使っている人は少なそうなイメージ。
公式ドキュメント以外には資料も少ないですね。
ちなみにtwitterでDarcsってどうなんだろ?と呟いたら、
Darcsなんて無かったと返されました。
Haskellで書かれていることを初めてしりましたが、HaskellコンパイラGHC
Darcsから乗り換えているとのことで、Darcsは無いものとして扱ってもよさそうです。

mercurialワークショップ @naoina さん

mercurialのご紹介をされました。mercurialとbazaarはプラグインで拡張するタイプ、
gitは自前で全部するタイプ(しかしオプションが多い)とそれぞれ特徴があります。
gitは家で一人gitとして使っていますが、Mercurialは触った事がないので参考になりました。

git/mercurial/bazaarと図らずも3種類の分散型バージョン管理システムの紹介をしていただきましたが、
それぞれに思想が違い、同じバージョン管理を目的にしても運用方法は変わりそうだと感じました。
Bazaarはsvnからの移行がしやすいため、svnから周囲をさせたいときに使えそうですし、運用は一番柔軟に変えられそうですが、
Mercurial、gitはそれぞれ思想が違うので、好みに合ったほうを使うと良さげです。
ちょっと調べたらそれぞれのリポジトリを相互変換はできそうなので、
気になったものをいろいろ触ってみたいと感じました。

Amazon EC2でのJenkinsのインストール

ひょんなことから、Amazon Web Service EC2で
JenkinsやらRedmineやらを立ち上げる必要に迫られたので、方法を忘れないうちにメモ。

単純に立ち上げなら下記でOK. (AWSのアカウントや、インスタンスの立ち上げは終了している体で)

sshでログイン後、適当なフォルダで

wget http://mirrors.jenkins-ci.org/war/latest/jenkins.war

java -jar jenkins.war

ブラウザなり他PCから

http://<インスタンスのPublicID>:8080/

AWSのManagementConsoleから、SecurityRuleで8080を有効にすることを忘れない事。
(これで1時間近くはまった)

以上。

他の運用方法はまだ調査中。

ささやかなVim勉強会 に参加しました

6/25に立命館大学びわこ・くさつキャンパスで開催された、ささやかなVim勉強会に参加しました。

http://atnd.org/events/16581

主催者は @lnial さん

参加前からいきなりのトラブル

当日の朝、摂津富田駅で人身事故があり、会場入りできたのは30分遅れ……ご迷惑をおかけしました。

会場到着後も

普段は自前のWimax端末でネットを参照するんですが、会場はWimaxの圏外……南草津を甘く見ていました。
会場に用意していただいたWiFiに乗れたので、Twitterはできました。次回以降はテザリングできる端末を持っていこうと思います。

感想

vim初心者向けの勉強会という事で、vimレベル1〜3くらいの方がほとんどでした。かくいう自分もvim病は発症するもののレベル2、やはりレベル3の壁は厚いようです。
また主旨が「vim友を作ろう」という事で、ペアプロならぬペアvimという試み。ぼっちにならなくてよかったです。
各人のコーディングスタイル発表!!というのがあり自分も発表しましたが、やはり人前で話すのは苦手で何を言っているか自分でもわからなくなりました。
個人的に思った事は、最近何の勉強会に行っても思うのがMac率の高さ。
今回画面に繋いでLTやコーディングスタイル発表などしていた人はほぼ全員Macだったと思います。
Windows7を使ってる自分は非常に肩身が狭いので、次回からはUbuntuにでもしようかと。

驚きコマンド

勉強会中にしった便利コマンドは下記の通り。
全部は記憶しきれていませんが、残りは:helpの力で何とかします。

  1. → 行頭選択  文字入力 →全部の行頭に文字入力
  2. 数値の上で → 数字がインクリメントされる

気になったプラギン

  1. neocomplecache
  2. surround
  3. opsplo
  4. snipet

綴りがあっているかはわかりませんが、調べてみようと思います。

懇親会

懇親会ではvimの話以外にはlang-8という英語学習サイトの話などが出てきていたと思います。
正直途中からの記憶があまりないんですが、主催の @lnial さんが潰れていたのが印象に残ってます(笑)

総括

職場にもvim使いはあまりいないので、今回は貴重な経験が出来ました。
また次回もあれば参加したいと思います。

ありがとうございました。

事のはじまり

OpenGrokという、WEBブラウザ上からソースコードを参照できるシステムがあると聞き、
何となくセットアップを試みた。
一応成功したっぽいので、手順を残しておく。

インストール

前提条件

Excuberant Ctags はインストールされている
tomcat6も設定されている
対応したVCS(うちではgit)がインストールされている

手順

OpenGrokのバイナリを取得
http://hub.opensolaris.org/bin/view/Project+opengrok/files

今回は opengrok-0.10.tar.gzを選択
※-srcのついていないほうを選択

tar zxvfで解凍

/usr/opengrok としてコピー

/var/opengrokを作成して、オーナーをtomcat6にしてから755のパーミッションを与える。

/usr/opengrok/binに移動して、./OpenGrok deploy を実行
※失敗する場合、OpenGrokがtomcatのパスを検出できていないらしいので、

OPENGROK_TOMCAT_BASE=/path/to/my/tomcat/install ./OpenGrok deploy とする

/var/oepngrok/srcを作成して、オーナーをtomcat6にしてから755のパーミッションを与える。
作成したディレクトリに参照したいソースツリーを格納

/usr/opengrok/binに移動して、./OpenGrok index を実行
※別ディレクトリにソースを格納して参照したい場合、 ./OpenGrok indexの後にソースディレクトリのパスを記載する

以上で完了。

GNU GLOBALとどう違うのか?はおいおい確認してみようと思います。

RCカーをマイコンで動かしてみたい

市販のRCカーを改造してマイコンから動かせないかと妄想。
AVRマイコンカーとか結構やっている人がいるので、
とりあえずラジコン買ってきて制御できそうか調査してみた。

対象のラジコン。ビッグカメラで2000円也

これを精密ドライバーを使い適当に分解します。と
こんなんになりました。

あまりの適当さに愕然とします。
流石チャイナクオリティ……というか、2000円のものなんてこんなモノでしょうか?

気を取り直して、今回のマイコンカーの方針です。
リモコンから指示されるデータパターンを解析し、
マイコン側で疑似ればRCカー本体にあまり手を加えずに対応できそうです。

中央の基板を眺めていると、アンテナに繋がる線があったのでそこを辿っていくと、
15ピンのICが一個だけありました。

しかし黒いシリコンのようなもので全面コーティングされており
名前も何もわからず。。。
とりあえず駆動時にICに入力されている波形を確認してみました。

安物のオシロで測った限り、
700Hzと340Hzの波形が、前進時は16ms/10ms、後進の時には60ms/10ms間出力されているようです。

ふむふむ……なるほど、まったくわからん。

リモコンの波形を解析するのは無理ですね。
モーター駆動制御を奪うような形で再検討が必要なようです。

次回はモーターへの出力を探すことにしましょう。

感想:電撃文庫「なれる! SE」 夏海公司 著

電撃文庫の「なれる!SE」を読んだ。

SEの過酷な実態コミカルに語る、というだけあって
「ねーよ」はあるけど、「あるある」と言った内容も結構あり、なんというか切ない気持ちになったorz

本シリーズはこれまでに4巻出ていて
1巻がSE入門、2巻はシステム構築、運用の話、3巻でシステム提案、4巻でプロジェクト管理が題材になっている。

同じ技術者とはいえ、普段は関係しないSIer関係の話なので「へぇ〜」と興味深く読むことができた。

著者の方は元SEをやっていた方らしく、本文の中で出てくる技術系の話はざっくりとしているが、
技術系の知識の無い読者に雰囲気を伝えることには充分だと思う。

主人公は巻が進むにつれて技術屋ではなくリーダー、マネージャー系にシフトしていってる気がしており、どこへいくのだ主人公?という感じだけど、
先が楽しみな小説でした。

個人的には3巻に出た橋本課長がすごく良いキャラしてるので大好きです。