島根県松江市美保関町北浦海岸でyurufuwa開発合宿

f:id:iR3:20150505122903j:plain

ゴールデンウィークもすでにかなり過去になりつつありますが、今年の5/2〜5/6は、島根県松江市美保関町北浦海岸へ6名でyurufuwa開発合宿に行ってきましたので、忘れる前に、記録を残しておきます。

 

開発合宿は、一昨年4月の日光霧降高原「はじめのいっぽ」、昨年暮れの草津温泉はなみずき」につづく私にとっては3回目でした。

Ruby界隈の仲間達との開発合宿はいつも楽しいのですが、今回も素晴らしいものでした。

5/2 に私は、隠岐の島海士町からフェリーで七類港経由で、直接民宿中村屋さんに夜に合流。

畳の上に敷物を敷いて、机と椅子を準備して頂きました。6人だと丁度収まりよし。

https://instagram.com/p/2LWH5JiqED/

松江市美保が関 北浦 の合宿民宿 中村屋さんに無事到着。

 

海岸にとても近くて、窓の外はすぐに抜群の眺め。

f:id:iR3:20150503161201j:plain

https://instagram.com/p/2NDij-CqCO/

開発中の窓からは、見事な海と山! #yurudev

5/3, 4は丸2日間各自それぞれのテーマでみっちり開発に専念。

テーマと成果はこれ→ 

github.com

 5/4はお約束の海岸コーディング

https://instagram.com/p/2PwQ92CqFJ/

ナイス! 島根県松江市北浦海岸 #yurudev 合宿

 

 

5/5 はシーカヤック

先生や地元の愛好者の方々とご一緒に

f:id:iR3:20150505095942j:plain

 

お天気に恵まれて最高でした♪

https://instagram.com/p/2SonZ4iqMz/

シーカヤックって楽しい! 島根県松江市美保関町北浦海岸 #yurudev 合宿!

 

途中で海水浴もありました

https://instagram.com/p/2SntHfiqL8/

カヤック転覆さあ大変 #yurudev

 

https://instagram.com/p/2Sn5TyCqMD/

無事救出! #yurudev

 

カヤック手作りの教室も見学

https://instagram.com/p/2SfMYbCqDY/

島根県松江市 手作りカヌーの教室を見学 #yurudev

https://instagram.com/p/2SgNrvCqEa/

おしゃれなカヌーとfukayatsuさん #yurudev

 

 

 

中村屋さんの食事は、海の幸たっぷりでそれは素晴らしいものでした。

https://instagram.com/p/2MovxzCqOR/

#yurudev 合宿の朝ごはん

https://instagram.com/p/2Mo6suiqOj/

卵かけご飯! #yurudev

 

https://instagram.com/p/2QRy1CCqHn/

蟹さん沢山! #yurudev 島根県松江市美保関町北浦海岸 合宿

https://instagram.com/p/2Qb67_CqC_/

島根県松江市のお酒といえば豊の秋 #yurudev

https://instagram.com/p/2Qcf9uiqDv/

島根県松江市には、李白 も! #yurudev

https://instagram.com/p/2M-hrICqIe/

#yurudev 合宿に大変お世話になった方々。井上さんと松江市市民部の田中さん!ありがとうございます。素晴らしい差し入れも頂きましたm(_ _)m

 

抜群の合宿でした!

f:id:iR3:20150506073903j:plain

 

また次行きたいですね

 

 

 

 

 

クラウド基幹システムを「おひとりさま開発」しよう勉強会 #おひとりさま開発 #xead


6月22日(金)19:30〜渋谷の株式会社VOYAGE GROUP セミナールーム「パンゲア」で渡辺幸三講師による『クラウド基幹システムを「おひとりさま開発」しよう勉強会&懇親会』が行われました。

講師の渡辺幸三さんは、分析・設計方法論「3要素分析法」の提唱者でありXEADの開発者で著書には「業務システムのための工程入門」、「データモデリング入門」などがあります。

以前 2006.8.19にRuby関西のRailsの勉強会に講師で来て頂いたときに2次会ではカラオケで一緒に歌ったことがありまして、それからあっという間の6年ぶりです。

今年1月の関西IT勉強宴会の際に、下山さんから頂いた「業務システムのための上流工程入門」に今日はサインを頂戴しました。


前半の講演の内容に関しては、以下レジメの項目です。

<1>「おひとりさま開発」に必要な社会的リソース

  • モデル基幹システムのOSSライブラリ
  • モデル基幹システムを実行・改修するためのOSSプラットフォーム
  • インフラのクラウドサービス

<2>「おひとりさま開発」に必要なスキル

  • 分析・設計スキル
  • 軽量言語のコーディングスキル
  • 基本的なインフラ設定スキル

<3>「おひとりさま開発」に要らないもの

  • 単一工程の専任要員(単能工)
  • 洗練されたプロジェクト管理技術やツール
  • 従来型SIを前提にした見積もりや契約、および多重下請構造

<4>「おひとりさま開発」がもたらすもの

  • 企業の基幹システム取得・運用コストの大幅削減
  • ソフト技術者のやりがいとQOLの向上
  • 業界の経済社会への貢献

ツイートされた内容はtogetter「クラウド基幹システムを「おひとりさま開発」しよう勉強会」にまとめました。

講演ではXEADの画面で「モデルに処理(スクリプト)を組込み、処理をダラダラ書く事を避けるのが良い構造」という内容の説明がありました。ちょっとマイクが不調?で聞き取りにくかったのが残念でした。

XEADの説明自体は渡辺さんのblogが(当然)詳しいです。↓
Excel方眼紙をやめて「実行可能な仕様書」を書こう



Ruby on Railsでは複合キーが使えない(DHHさんのポリシー)という話から「複合キー問題」「サロゲートキー」にテーマが移り、「複合キーが使えずサロゲートキーで代理していると、関係が崩れることが起こりうる」ということの図解でした。

【参考】Ruby on Railsで複合キーを使うための取り組みはあるようですが、なかなか難しそう。
Ruby on Railsで複合キーを扱う


あと懇親会で話したテーマ私が話した内容について忘れないようにメモ

  • 従来自然にサーバ(インフラ)エンジニアとアプリーケーションエンジニアで役割が分担していたが、PaaS(HerokuやMOGOKU)によってクラウド側でサーバまわりを引き受ける流れでエンジニアはアプリケーション開発に専念でき、「おひとりさま開発」の環境が整備されてきている。
  • テストコードをきちんと書いて変更時にマシンを走らせてテスト項目を動作確認する方式は、必須になってきている。→ 従って従来DB構造設計をしっかりやって実装時にDB構成を変更することは出来るだけ避ける方式であったが、Ruby on Railsでの実装しながら頻繁にDB構造変更しつつ固めてゆくという方式に移りつつあるのではないか。
  • 業務システムにもどんどんスマホやパッドを使う流れがあり、端末側でjQueryで画面を組み立てる方式に移りつつある。 テストでDBまわりだけでなく画面遷移(aJaxなど)も確認できる環境はRuby界隈が進んでいる。
  • 「おひとりさま開発」ではやはり規模の限界はあるだろう。テーブル数10程だとありありでもテーブル数が100を越える規模は難しいのではないか。



【感想】
XEAD仕様書&実装に進化していて凄そう。仕様書のひな形、エディタとしてだけでも有り難い。

・ある規模を越えるシステムではDB構造設計をきちんとやることは当然必要。ただし杓子定規に正規化しないで必要に応じて緩さを残す方が良いように、カチカチのDB構造設計でなく柔らかさも必要で、テストをきちんと書くことで変更に強くできる。複合キー問題もレアならばRails方式で実用上は問題なさそう。まあこれはケースバイケース。

・下地さんのRmenuDOAをふまえつつJSON受け渡し、画面はjQuery編集という方式で実装されているのは、良い方向であると再認識。

XEADはモデルにロジックを埋め込む方式だが、RailsでもRails1→Rails2→Rails3と進むにつれモデルにロジックを配置する方式に(コントローラでなんでもかんでもやらない)移ってきているのは、ロジックを集約しようと整理してゆくと必然なのだろう。

【最後に】
・このような機会を作って下さった講師の渡辺さまをはじめスタッフの皆様、参加され一緒にお話できた皆様ありがとうございました。

感想

yokohama.rbには行ってみたいと思いつつなかなか行けなかったが、今回地域Ruby会議という形ですばらしい企画を立てられて見事に成功したと思います。満足度は高いです。スタッフの方、講演された方、いろいろな形で参加された方にほんとうに感謝です。ありがとうございました。第2回にも是非参加したいです。特筆するとソーシャルコーディングとBGMそしてスタッフの手作りPCバックが見事でした。

懇親会

横浜まで出てFoodium Bar 一瑳 横浜店にて18:00開始予定が17:30には到着して21時までばっちり楽しい懇談のひとときが過ごせました。@Kirika_K2さんとは沢山お話できたし。よかったよかった。

#minatork01

6月2日(土)は、神奈川県立公文書館で行われた第一回みなとRuby会議に参加しました。昨年でRuby会議は終わってしまったので、今年は地域Ruby会議かRubyWorldConferenceしかないのでRuby大好きな人にとって大事なイベントのひとつです。

最近神奈川界隈にはめったに足を踏み入れていないので、遠足気分で出掛けました。

ちょこちょこ撮った写真はpicasaでアップしたので、こちらをご覧ください。

渋谷まで出て東急で横浜経由で行くのと、下北沢で小田急線に乗って大和で相模鉄道に乗り換えるのとでは、何と小田急線経由の方が早く二俣川に着けることがわかったので小田急に。そうすると車内で@fukajunにばったり。神奈川の内陸部って結構開けていることを実感しつつ「中央林間」がここか!と通過して「大和」で乗り換えて生まれてはじめて相模鉄道に乗車。「二俣川」で下車し、バス停の案内はあったものの陸橋を渡っているうちに運転免許センター方面の道がはっきりしたので、そのまま歩いて20分弱、坂道を登った山の中に立派な施設の公文書館がでで〜んと登場。「みなと」というネーミングにかかわらず海からは遠い。

@1syoさんからテーマは「はじめの一歩」という説明があってオープン。

ソーシャルコーディング

ソーシャルコーディングではペアを組んでコーディングを楽しむことに。課題はこれ。ペアを組むのにうちのテーブルでは5人がまずviかemacsかで宗派で分かれて、4人のvi派の中であみだくじかEnglish Numeralsかでペア成立。私はWeb男子で有名な@sugamasaoさんとペア。vim で quickrun 技を教わった。ありがたい。成果はこちら

面前デモペアプロしたチームは、時間内に両方の問題を解いていて凄すぎ。

招待講演は、コミュニティの話 → Railsを中心にしたWebアプリ開発の話 → 最後にRuby本体の話。

「yokohama.rbとminami.rbのおいしい関係

まずminami.rbの@satomicchyつじたさんが「yokohama.rbとminami.rbのおいしい関係」と題してyokohama.rbとの交流や沖縄合宿Hackathon in okinawaの企画で okinawa.rbとの交流が始まったことをお話された。okinawa.rbのファウンダも登場して、英語でもスピーチ。凄い!。
minami.rbはもともとRuby@関西からの(もっとローカル)地域.rbとして生まれたし、地域.rb同士の交流というレイヤでは最前線を行っている気がする。コミュニティ運営に関してみんなになんともいえぬ力と勇気をふりまいた良いお話でした。

「ごきげんRails

次は @nay3大場寧子さんの「ごきげんRails」。資料はこちら。
Railsは簡単ではなくなっている。」
「変更に強いテストは関心事にフォーカスし、すべてを確認しようとしないこと。」
RSpecを楽しむには結果を確認するのでなく仕様を書いているようにする。」
「(集合操作に)mapやcollectを使うとすっきりする。」
「変数をメソッドは区別がつかない方がRubyらしい。」
「同じオブジェクトの処理が連続する場合は書く場所が間違っている。
 そのオブジェクトの操作はくくりだす。」
質疑応答では、@Kirika_K2さんの「テストのコード量は、実行コードの5倍程書いているが、みんなはどれぐらい?」という質問で「〜3倍くらい」「テストやりすぎ注意(変更のためのテストがテストを変更するのが面倒で変更の敷居が高くなる本末転倒を招く)」という指摘が印象に残りました。

「怠惰なRubyistへの道:Enumerator::Lazy の使いかた」

3番目は@nagachika近永智之さん「怠惰なRubyistへの道:Enumerator::Lazy の使いかた」発表資料とblog
Rubyでeachのイテレータが、めちゃ便利だと実感していたが、それが来年2月にRuby20周年を記念してリリースされるRuby2.0ではLasy(怠惰)が拡張されるという話。
「Enumerator.new でブロックで直接eachになるような動作を書ける。簡易なイテレータを作れる。」
「lazyは、force されるまで処理を実行しない。だからlazy」
「ワークエリアを順番に使用するので、一気に確保してしまう現状よりメモリ効率が上がる」
とても勉強になりました。

RubyKajaはじめます

最後の話は@tyabe矢部さんからRubyKajaの話題。資料はこちら
海外には「Ruby Hero」という貢献した人を称える場があるので、日本でもシャイなRubyistを称賛することができる制度を作ろうという話。

「褒め合い賞賛し合う文化を!」という趣旨は多いに賛同いたします。31の地域Rubyコミュニティから選出し、9月14〜16日のSapporo RubyKaigi2012で発表する予定で、日本Rubyの会の後援も受けて実践が開始されたそうです。

クロージング

@dan5yaだんさんから「3年後にはパシフィコで」というお話で締まりました。

うわぁ写真が逆さまになったけどうやって修正すればよいのかわからないのでそのまま。やり方があれば教えてください。こういうので目を引くというのもあるのかしらん。
せっかく写真をpikasaでアップしてもはてなダイアリーに貼付けできないのは相当残念だ。別途どうするか考えよう。
github blogに写真を貼付けできるとうれしいけど無理っぽいし。

片付け

見事な運営で、時間ばっちりで、終了。
スタッフの集合写真もこちらにアップしてます。

RubyWorld Conference2011 一日目

[RubyWorld Conference2011]RubyWorld Conference 1日目
今年はくにびき大橋が『RubyWorld Conference2011』の のぼりで一杯。

くにびきメッセの玄関

ちなみに昨年のRubyWorld Conference2010とほぼ同様。

百聞は一見にしかずなので
今日のところは写真をご覧ください。→ 1日目の写真

最後のRubyKaigi 第3日目(最終日)

アップした写真→https://picasaweb.google.com/ofukui/RubyKaigi2011718
 
練馬文化センターでの最後のRubyKaigi3日目(最終日)今日は私もLTするので、昨夜 パーティから帰ってすぐに一寝入りして、なでしこJapanの応援に早起き。奇跡的なプレーの数々をリアルタイムで堪能した。リア充(違。
 
2日目の写真をアップ、感想書き込み後、LTの発表の予行演習。なかなか5分に収まらないので、いろいろ削ったり、しゃべりを早くしたり、何とか5分に収まる目処を立てて、昼すぎから参加。
 
Ruby折り紙は、@hs9587 さんが今年もやっていた。GJ!

「テスティングフレームワークの作り方」 須藤功平さん
途中から会場入りしたが、いつもの切れ味とはトーンが違ってた感じ。
 
Rubyを持て、世界に出よう!」 浅里洋嗣さん
・「英語を勉強するには動機が必要。」まったく御意。
外国で働くためのビザの話や、英語マスター教室。
先人からのノウハウ伝授。コードの話ではない生き方の話も貴重なコンテンツと感じ入る。
 
・「科学の世界の公用語は英語じゃない...下手な英語だ」
のフレーズは、リツイートが繰り返されていました。

質問した人には、Tシャツを配るというTDQ(T-shirts Driven Question)の新しい技が繰り出されていて今後の流行になるかもしれません。
 
Ruby の教えてくれたこと」島田浩二さん
Rubyに出会って、島田さん自身が変わったことを熱く語っていて感動的でした。
2007年のDave Thomasの基調講演同様 Rubyへの愛は共感を誘います。
 
今をときめくRuby札幌ですが、コミュニティ立ち上げ時の基盤整備(Wikiやサイト..)にはRuby@関西が雛形になったとのお話でRuby@関西を立ち上げたひとりとしてとてもうれしかったのでした。
 
「プログラミングは楽しい。楽しさが持つ力に感動。言語がプログラマに与える影響を体感。」
 
『たのしいRuby』大きな大きなキーワード♪

それにしても島田さんが居なければRuby札幌は無かった訳で、Ruby札幌に集った人々のパワーの源となった貢献は偉大です。そしてこのRuby会議を運営し、日本中、世界中のRubyist集める渦の間違い無く中心に居るひとりである状況は誠に幸せそうで、その笑顔は魅力一杯です。
 
「Lightning talks 2」
アジャイルUX公開実演 結果報告 , 樽本徹也さん (アジャイルUCD研究会)
浮動小数点数リテラルが無い世界 , 村田賢太さん (株式会社ジェネティックラボ)
BioRuby -- 生物情報科学用ライブラリ , 後藤 直久さん (大阪大学微生物病研究所附属遺伝情報実験センター)
・新人教育に、もっとRubyを! , 吉田裕美さん (EY-Office inc.)
・コミュニティと勉強会の間で , 三村益隆さん (takkanm)
・define_method define_method , 大林一平さん (京都大学数学教室/京大マイコンクラブ(KMC))
Rubyist に不足しているのは会計(そろばん)! , 福井修(私です♪) (株式会社iRubySystemsは2009年Goldスポンサーです)
ActiveLdap が Rails3.1 で動くようになったよ。 , 吉本任利さん *1
pebbles: rubygemsにおけるジョークモジュールの名前空間について , 塩谷啓さん (株式会社ドワンゴ / 東京Basic Technology勉強会)
・C、イ?。 , 郡司啓さん (Asakusa.rb)
 
2006年のLTに落選して以来、最後のRubyKaigiなので応募しました。いやぁ本番では、5分で収めることができず、実に残念でしたが、やはりまだ修行が足りないということを素直に反省。どこかでリベンジするぞ。それにしても時間ぴったりで見事に終わらせる技を披露された皆さんはすごい!特に@kwappaさんのはコンテンツも含めすべてがカッコよかったですね。あこがれます。
 
「三題噺: 振子とPGと百年の言語」まつもとゆきひろさん
いや〜今年のは痛快でしたね。
 ↓
Ruby会議は無くなるわけではないよ
肩書きコレクタ
蠱毒(こどく)「壺の中に虫を入れる。殺し合わせる。生き残ったもので呪術を行う」
次の言語は日本からそれは「ハッカー言語、優れたUX、新規性より「おもてなし」」
知られざるMatz「「新言語ぉ?」「わしが潰す」」
百年の言語「百年経ってもRuby
まとめは
「大人げない大人になろう」「未来を作ろう」

「閉会の辞」高橋会長
いつもcoolな会長が 感 極まるのが良く伝わりました。
 
「クロージング」スタッフのみなさん
裏方として貢献されたスタッフの皆さんも全員壇上に上がって、最高に盛り上がったクロージング。
ほんとに会場が一体となって、感謝・感激の空気に包まれた感動のひととき。

笑顔がいいですね♪

参加者(スピーカ含む)とスタッフの一体感はコミュニティの集まりならではですね。
いや何度経験しても、たのしい時が刻まれました。みなさんほんとに有難う。
 
Herokuの宴会場は、全く収容人数が足りなくて、いろいろ分裂して私は、梟キッチンへ
女帝(@yamashitam)さんが居たり、Matzもあとから登場して、大撮影大会。
いや 楽しいひとときでした。

@cuzicさんの宴会仕切りにはお世話になりました。
 
充実した3日間も過ぎてしまえばあっという間の出来事でした。











 

*1:株)マーキュリー・ブレイン・システムズ) ・MmapScanner作ってみた , とみたまさひろさん (長野ソフトウェア技術者グループ(NSEG

最後のRubyKaigi 第2日目

アップした写真→ https://picasaweb.google.com/ofukui/RubyKaigi2011717

練馬文化センターでの最後のRubyKaigi2日目 ちょっと遅刻して小川さんの講演の途中から。

jpmobileのベストプラクティス」小川伸一郎さん
jpmobile はRails3 に対応してどんどん進化している。面倒なキャリア間・新旧機種間のコード変換、絵文字変換を見事にサポートしてくれていることがよくわかった。 小川伸一郎さんGJ!

「たのしいRails」松田明さん
毎日 最新のRailsの更新ログをチェックすべし。そうするとRailsも英語もマスターできる。なるほど。

本は21日のジュンク堂イベントで買うことに決めたので、それまでおあずけ。


「Rubyマスターへの道」原悠さん
「とりあえず10年やればだいたいなんでも上手くなる」
「料理に似ている。実践しないと上手くならない。」
「わりと早い段階から(それなりの)ものが手に入る」
「ブログを書こう。発表しよう。人と違うことをしよう」
「やる気が出ないときは、諦めてやりたくなるまで待つ」
いやぁ 名言連発でした。
 

昼飯はアンチぼっち企画にのっかり4人組になって魚力 海鮮寿司へ
昼からビールを頂きました。お祭りお祭り♪
 

「BDD style Unit Testing」台湾から Wen Tien Changさん
・RubyTaiwanを立ち上げた方
・中国の影にどうしても隠れてしまいますが、台湾もIT大国なので、ソフト開発もいろいろやっている訳でRubyがアジアにもどんどん浸透していることがよくわかりました。
 
「5year know-how of RSpec driven Rails app. development」諸橋恭介さん
・テストは、Modelから導入。
・データ環境準備は面倒だが、データの属性(マスター、リソース、イベント(トランザクション))に応じて準備の方式を変えれば良いよ。
・Testing context は何度も繰り返されるものはShareするのが良い。
 
「Efficient JavaScript integration testing with Ruby and V8 engine.」Chris Kowalikさん
ポーランドから
・Headless browser ってよくわからなかったのですが、「テストに時間がかかるので、早くしたい。
 そこでブラウザのV8エンジンを取り出した、テスト環境を構築して、最速なテストを行うのだ」
 みたいな話だったような。凄そうだった。

「Advancing Net::HTTP」 Yehuda Katz
・実にパワフルでした。 Rubyの内蔵ライブラリを改造して非同期通信を改善する話。
 なんか写真をとると「シャッター音がウザイ」と流れたような気がしたので、自重したのでショット少なめ
 
「The Gate」角谷信太郎さん
・来日キャンセルとなったDave Thomasの弟子として代わりに。
・ほんとに2007年の感動のDave Thomasさんの基調講演は伝説的だった。
・「Rubyは会社を変えるのではありません。Rubyが変えるのは人なのです。それが業務や業界を変えるのです。」
・「コミュニティの一員になる」

それにしても「たのしいRuby」は本の名前でもありますが、Rubyの本質をよく現しているものだと思います。

・「昨日は過去のもの、明日は未知ものも、そして今日という日は、贈りもの。だから現在を「プレゼント」と呼ぶのですよ。」引用にあったこれはいい言葉。

メッセージは伝わりました。
 
Lightning Talks
一応 写真のショットは撮ったつもり
ruby trunk changes 統計版 , 近永智之 (Yokohama.rb)さん
RubyでつくるOS , 吉原陽香さん (東京農工大学 工学府 情報工学専攻 並木研究室)
・Connecting Japanese Rubyists with the World , Paul McMahonさん (Tokyo Rubyist Meetup)
・The Limited Red Society , Joseph Wilk さん(Songkick.com)
・るりまを便利に使う方法 , ヽ(´・肉・`)ノ さん(Ruby札幌)
・James: An electronic butler that you can talk to. , Florian Hankeさん (Melbourne University)
・別の "ASP.NET MVC 3 vs. Ruby on Rails 3" , こんどうようへい (http://phosphor-escence.blogspot.com/)
・Rios Proxy - コマンドラインインタフェースのためのプロキシフレームワーク , 小山田昌史さん (株式会社クリアコード / 筑波大学)
・rubykaigi.orgを支える技術 , 関口 亮一さん (株式会社ディー・エヌ・エー)
・A Hayabusa-speed talk about living under the MacRuby rainbow , Eloy Durán & Vincent Isambartさん (MacRuby core contributors *and* procrastinators.)
・erbをすごく偲んで , 関将俊さん (druby.org)
・車椅子のかた http://www.codersdojo.org
 
池袋 サンシャインシティ クルーズ・クルーズでの懇親会
 
400名ですか、ぎっしりで盛り上がりました。toRubyの池澤さんとお話できてよかったです。
外人さんとは、Paulさんと少しだけ(日本語で)

いや英語でどんどんしゃべれるかどうかは、人生を分けますね。

まだまだ人生はこれからこれから。