OAO

開発とかBTSとかIDEとかスクラムとか 書くかもしれないブログです たぶん

Linqに詰まる等

class hoge

{

  public int ID {get; set;}

  public string Name {get; set;}

}

List<hoge> hogelist = new List<hoge>();

みたいなリストがあって

hoge fugafuga = hogelist.Where(n=> n.ID == 1).Select (n=>n);

みたいな事できるかなーと思ったら

listからhogeクラスに変換できないよバカン

とエラーが出た・・・

 

ふむん。

 

<追記>

IEnumerable<hoge> fugafuga  =  hogelist.Where(n=> n.ID == 1).Select (n=>n);

だとエラーがでないようだ。。。が

謎だ。もうちょっと勉強しよう。

 

<追記その2>

String hogefuga = fugafuga.Select(n=>n.ID).First().ToString();

で取れる所まではいけた。

(whereで絶対値指定してるので1件しかない前提ですが)

 

 

Windows7 + Jenkins + 自動ビルド (その1)

(注意)テストの自動化はやってません。レガシーコードです(´・ω・`)

動作環境

 OS:Windows7 Enterprise 64bit SP1

 VS:2008 Professional

 対象:C#

 .net Framework:3.5

 デプロイ先:DAS領域

 

1.Jenkins公式からJenkinsをDL&インストール

  ・Jenkins公式

   warでもセットアッパでも好きな方で。

 

2.プラグインのインストール

  ・DVCSのプラグイン(私の場合は Jenkins GIT Plugin)

  ・Growlのプラグイン(好みです)

  ・MSBuildのプラグイン

 

3.プラグインの設定

  ・Jenkinsの管理->システムの設定

  ・(必要に応じてGitの設定)

  ・MSBuildの設定

   Nameはわかるように(私は.net 3.5)

   Path to MSBuildMSBuildの指定

   (ex:C:\Windows\Microsoft.NET\Framework\v3.5\MSBuild.exe)

  ・Growlの設定(好みですよ!)

 

4.ビルドの設定

  ・Gitリポジトリの設定 (同一マシンなので file://c:¥hogehoge¥.git)

  ・post-commitでwgetしようとしたけど上手く行かないのでSCMポーリングで。(課題)

  ・5分おきにポーリング(*/5 * * * *)

  ・ビルド設定

   ビルド手順の追加->Build a Visual Studio project or solution using MSBuild

   MsBuild Version:自分で設定したアレ

   MsBuild Build File:たぶんワークスペースから見た時のslnとかprojの位置(私はルートのhoge.sln)

  ・Growl設定(略

 

とりあえず、ビルドはこれでおk。      

StartupGroovy #1

StartupGroovyに参加&スタッフしてきました。

 

細かい部分はいつものあの御方を見ていただくとして・・・

いつものあの方のアレ

 

私の動作ログ:

 午前中の基調講演はいろいろバタバタで見れませんでした。

 実はクロージャの理解が足りてなかったのでクロージャの話を聞きたかった・・・

 お弁当のセッティングをして、お昼ごはんへ。

 

IDEAについて:

 途中でIDEAの質問がいくつか来たので、Default Keymap Referenceの話をしました。

 MAC版はこれです

 お昼ごはんの時にIDEAの何がいいのか という質問がありました。

 私の回答は・インストールした段階でほぼすぐ使える

 一応関連:インタビューズ

 

午後からはテストにあわせて実装するというお題でした。

もりもりカタカタと皆さんがんばってましたね。

 

テストについて:

「テストはGreenだけどいいのかなー」

という声はちらほら上がってたと思います。

※個人的見解でテストやTDDに詳しくない人の意見です

不安ならテストを増やすといいと思います。

@Test

    public void test指定されたstringのsrcをrepで置換するときに範囲で指定する(){

        assert stringExample.指定されたstringのsrcをrepで置換する("ABCDEF", "C-E", "c-e") == "ABcdeF"

    }

 

例えばこのテストコードの場合、範囲指定が正しく処理されているか不安になると思います。

 

 

@Test

    public void test指定されたstringのsrcをrepで置換するときに範囲で指定する2(){

        assert stringExample.指定されたstringのsrcをrepで置換する("ABCDEFGHIJKL", "B-G", "b-g") == "AbcdefgHIJKL"

    }

こういうテストを追加したらどうなるでしょうか。
 
こういうのを三角測量というそうです。この追加で足りているかは微妙ですが。
どう足すか、が肝だと思います。
 
 
まとめ:
とりあえず、なんとか全部実装は出来ました。
青い本をこういう形で写経するととても理解が早いと思います。
コードはこちら
 
闇LT:
基本的な話は他の方にお任せして、自分でネタを振った所に関して。
 
Rubyを使うプロダクトの環境設定のめんどくささは異常
 とみーさんがこんなソリューションあるぜ!とまとめていただけました。
 
・いいWikiありませんか
 個人的にはConfluenceがオススメです。
 
 いいと思っている所:
 ・ウオッチに入れることで更新動作のたびにメールが送られる
 ・変更履歴がすべて残るし、過去に戻ることもできる
 ・CTRL+Vでスクリーンショットが貼り付けられる
 ・Codeのスタイルフォーマットがついてる
 ・インストールがとても簡単
 
こんな所でしょうかー。
他にも色々あるかもしれませんが、Twitterとかで質問していただければ。
 
JGGUGさんでこういうイベントをどんどんやるといいと思います。
 

アジャイルサムライ 読書会 埼玉道場 を開催します。

アジャイルサムライ 読書会 埼玉道場を開催します。

 

コンセプト

有りそうでなかった埼玉県で道場を開催することにしました。
仕事場が埼玉県だと、仕事帰りに都内へ出るために、早退やお休みを取らないと
難しい人たちが居ます。より参加しやすい道場を目指すべく、地元埼玉県内での
開催に踏み切りました。

 

進行スタイル

埼玉道場では以下のスタイルで月1〜2回の開催を目指します。
チームに分け、読書と議論をする回と
解決しなかった点を講師を交え全体で解決する回
この2回を1イテレーションとし、進めていきます。

 

運営者

@inda_re @alterakey

 

ハッシュタグ

#agilesamurai #埼玉道場

 

開催予定

第一回 2012/03/11 15:00~ 場所:未定

募集ページ:アジャイルサムライ 読書会 埼玉道場(第1回)

第一回ということもあり、参加人数が読めないため、場所は未定ですが

川口か浦和近辺で行う予定でおります。

鼻メガネ 第二シーズン(打ち切り回避)

内容の細かいところはみんながまとめてくれてるのでそっち見てね!

会長:@riskrisk

部下A:@shinyaa31

ちゃんげこわいまじこわい:@changeworld

おれんじさん:@orange_clover

ゆとりこわい:@megascus

こうちゃんこわいまじこわい:@macneko_ayu

きょんくん兄弟まじ兄弟:@kyon_mm

まぐかっぷさんイケメン:@alterakey

あんまり話せなかった: @ryos_

 

で、内容より裏話でもしますか。

実はお店は危険地帯だった

一部TL見てた人は気づいてるかもしれませんが、当初のお店と違うところです。

当初のお店は

[ラブホ][ラブホ][ラブホ]

[ラブホ]   [ラブホ]

[ラブホ][ラブホ][ラブホ]

な感じでした・・・

で、やばくね?という話になり、今の店になりました・・・

 

ちゃんげこわい

幹事より幹事してましたね!

僕らは象徴に進化すべき?

 

こうちゃんこわい

あのお方は怖い!

でも正論をおっしゃってる方なので、怖いけど同意する事多々。

「きちんと相手の話を聞きましょう」

 

神速たんかわいい神速たん(;´Д`)ハァハァ

3月のどこかで神速さんとダーツしに遊びに行きますよー。

 

よしむらさん初上陸

一緒に埼玉道場立ち上げを手伝ってくださる方 &

日本Android友の会 埼玉支部 よるもくでご一緒してる方です。

とても頭の回転が早い方なので今後共、参加することがあれば皆様

よろしくお願いします。

 

2/3がアナタドナタデスカ状態

ちょっとこれは問題だと思うので、参加者に負担かけない方向で

なんとかしましょう to @riskrisk

 

3次会はオレの家でやったわけですが

オレ @riskrisk @kyon_mm @yujiorama

の4名でした。

 

二次会の内容よりもなによりも家のそばのコンビニで氷とつまみを買って

家に向かってる時に、故障車と遭遇しまして。

「だいじょうぶー?」

なんて感じで、話しかけて、車を押すことに。

あんちゃんとおねーちゃんはその後無事に保険屋呼べたんだろうか・・・

 

その他の話の内容は会長とうさみみのブログを見てください。

あまり、俺からどうこうと補足する事もないので。

 

あ、あった補足

・買っておいた焼酎が、ほとんどうさみみの胃袋に吸い込まれた。

・頂いたウィスキーはまだ残ってます。

・俺以外リア充。可及的速やかに自爆しろ。

 

またななんか思いついたら書きます。

SQLite のGUIツール

なんか需要があるそうなので。

 

SQLite Manager

f:id:inda_re:20120205142006p:plain

というわけでFireFoxのAddonですね。

 

特に難しいことは無いです。

データベースメニューからファイルを作ったり、もともとあるファイルを開いたり。ですね。

新しくファイルを作ると拡張子は「.sqlite」になります。

 

Tableの作成UI

f:id:inda_re:20120205142309p:plain

 

f:id:inda_re:20120205142455p:plain

 

難点は20個弱くらいまでしか初期にカラムを設定できないくらいですかね。

もちろんそのあとの画面で増やせます。

f:id:inda_re:20120205142505p:plain

もちろんSQLを直接書いて実行もできるので、普通な事は全部できそうです。

 

C#のアプリでローカルDBにsqliteを使おうと思って導入しましたが

C#でこいつが作ったテーブルにアクセスできない謎現象に襲われたので

これ以上は調べてません (´・ω・`)

C#でSQLiteこのあたりとかに書いてあります。

解決法があれば教えて下さい(´・ω・`)