ものがたりのはじまりはじまり...
2006年9月26日 ファーストリリース
ちょうど10年前、0.1.01 がリリースされました。 厳密には、それよりも前に DaoGen という名前で、 企業内でそれなりに利用されていましたが、 オープンソースとして誕生したのがその日でした。 そのときのソースコードがありますね。 もうすでに ConditionBean って感じですが、 SubQueryはずいぶんともっさりしてますね(^^ LdBookTest.java | Github このときはまだ、S2Daoの自動生成ツールという 感覚でした。ConditionBeanはありましたが、 S2Daoだけだと足りないから追加しているみたいな。 ただ、どんどん改善していくうちに、 DBFluteらしさが前面に出てきて...
Seasarカンファで登壇登壇
[2007年5月27日] Seasar Conference 2007 Spring 「DBFluteの紹介」 blog: Seasar カンファレンス 2007 | jfluteの日記 slide: PDF そして、2007年10月頃です。 Seasarカンファでの出会いをきっかけに、 WEB+DB PRESS の執筆にも関わることができ、 DBFluteを6ページに渡って紹介させて頂きました。 これ読んで使い始めたというユーザーをたくさん耳にしました。 WEB+DBプレス!初執筆 | jfluteの日記 [2007年11月11日] Seasar Conference 2007 Autumn 「現場ソリューション DBFlute」 blog: SeasarConf & 現場ソリューション振り返り | jfluteの日記 slide: PDF [2008年5月24日] Seasar Conference 2008 Spring 「DBFluteはどうなの?」 blog: Seasarカンファ2008 - DBFlute | jfluteの日記 slide: PDF [2008年9月6日] Seasar Conference 2008 Autumn 「現場ソリューション2 DBFlute」 blog: DBFluteセッション来場感謝! | jfluteの日記 slide: PDF [2009年3月14日] Seasar Conference 2009 White 「DBFlute ライトニングConditionBean」 blog: Seasar Conference 2009 White The End | jfluteの日記 slide: PDF [2009年6月13日] Seasar Conference 2009 Spring 「DBFlute導入ポイント & MavenDBFlutePlugin」 blog: カンファとDBFluteユーザ集い無事終了 | jfluteの日記 slide: PDF [2009年9月12日] Seasar Conference 2009 Autumn 「DBFlute ライトニング外だしSQL」 blog: ライトニングの後... | jfluteの日記 slide: PDF [2010年6月13日] Seasar Conference 2o1o 「DBFluteのバージョンって今いくつ?」 blog: Seasarカンファレンス 2010 終了 | jfluteの日記 slide: (見当たらない...手元にもない...)
カンファ後のDBFluteユーザーの集い
Seasarカンファの後、食事会としての "DBFluteユーザーの集い@神楽坂" をやっていました。 ここから色々な伝説も生まれたんですよね。 DBFluteユーザーはみなパワフルで、 毎回毎回大盛り上がりでしたね笑。 2008年5月のDBFluteユーザの集い @神楽坂SHUN・本家 2008年9月のDBFluteユーザの集い @(店わからず...) 2009年3月のDBFluteユーザの集い @うまい魚【海】 2009年6月のDBFluteユーザの集い @アッシジ 2009年9月のDBFluteユーザの集い @アッシジ 2010年6月のDBFluteユーザの集い @アッシジ ブログのコメントでハンドルネームで参加表明して集まるって、 なかなか今考えるとすごいですね。 ほとんど初めてお会いする方ばかりでしたからね。 よく待ち合わせできたなーって(^^。 ※2008年9月からは禁煙のお店で開催させて頂きました。 みなさん、ご協力ありがとうございます。![]()
2009年2月1日 S2Daoフォーク! 0.9.0
長らく S2Dao と共に生きてきたDBFluteですが、 S2Daoのjarファイルとお別れするときが... allcommonをJARファイル化 | jfluteの日記 その頃、フォークって言葉は使っていなかったですが、 Apacheライセンスの S2Dao のコードを、 新しく作ったDBFluteランタイム(jar)に取り込んで、 Seasarへの依存のないDBFluteに仕上がりました。 そもそもそれまでは、DBFluteランタイムに入っている ようなクラスたち (例えば、CBのスーパークラスとか) もすべて自動生成されていました。 それらもVelocity管理されているので、 何かを変更しようとするとコストがかかりました。 業務DBに依存しないクラスたちなので、 本来はjarになっているべきものたち、 整理整頓してなんとかjarにまとめることができました。 OGNLも使うのをやめて、 IFコメントなどは自前でパースするようにしました。 ランタイムの依存は commons-logging だけに。 S2Daoへの依存を外すなんて想像もしてませんでしたが... 結局、そうなってしまいました。
2012年9月26日 SandBox卒業! 1.0.0
とうとう、1.0.0 をリリース! DBFlute-1.0.0 Released | jfluteの日記0.9.x時代が長過ぎでしょ、 って感じですがようやくでしたね。 1.0.0 という名に恥じない品質で、 1.0.0 を出したかったというjfluteの思いが あったからでした。 リリースパーティーも盛大にやりました(^^ 出会いのDBFlute (1.0リリースパーティー) | jfluteの日記 中目黒レインボーバードランデヴーから、 お祝いのケーキも頂いちゃいました。 ありがとうございます。
![]()
2015年1月1日 Java8版リリース 1.1.0
Java8ベースのバージョン 1.1.0 をリリース! DBFlute-1.1.0 Released | jfluteの日記 奇跡的にハピネス・オン・ハイと「まったく同時に」 デプロイすることに成功しました。![]()
List<Member> memberList = memberBhv.selectList(cb -> { cb.setupSelect_MemberStatus(); cb.query().setMemberName_LikeSearch("S", op -> op.likePrefix()); cb.query().existsPurchase(purchaseCB -> { purchaseCB.query().setPurchasePrice_GreaterEqual(200); }); cb.query().addOrderBy_Birthdate_Desc(); });
DBFluteの大きな転換でした。 Lambda前提のインターフェース、 Optionalのがっつり採用、 互換性を崩して次の時代に合わせた飛躍をしました。
恒例の元旦リリース
8年連続で元旦リリースしていますね... 2009年1月1日 DBFlute-0.8.8 Released | jfluteの日記 2010年1月1日 DBFlute-0.9.6.3 Released | jfluteの日記 2011年1月1日 DBFlute-0.9.7.8 Released | jfluteの日記 2012年1月1日 DBFlute-0.9.9.2C Released | jfluteの日記 2013年1月1日 DBFlute-1.0.1 Released @DisneySea | jfluteの日記 2014年1月1日 DBFlute-1.0.5B Released @DisneySea | jfluteの日記 2015年1月1日 DBFlute-1.1.0 Released @DisneySea | jfluteの日記 2016年1月1日 DBFlute-1.1.1 Released @DisneySea | jfluteの日記 さらに、DisneySeaの中でリリースを行う、 というのが恒例化しています笑。![]()
まったく理由はないんですけどね。。。
![]()
... 2017年もやらないといけないんでしょうか?
独立イベント、DBFluteフェス
Seasarカンファも途絶えてしまいましたから、 DBFluteの独立イベントをやろう!と思い立ちました。 ビズリーチのみなさんの協力あって実現できました。 本当に本当にありがとうございます。 最初は、DBFluteフェスという名前じゃなかったんですね。 DBFluteユーザの集いが独立イベントになったという感じ。 2011年9月25日 DBFluteユーザの集い2011 | jfluteの日記2012年5月26日 DBFluteユーザの集い2012 | jfluteの日記
... そして、名前をDBFluteフェスに。 ここから2セッション方式になりました。 あっちでもこっちでもセッション。 ロックフェスのように自由な参加スタイルで! 2013年10月19日 DBFluteフェス2013 | jfluteの日記
... 2014年11月22日 奇跡のDBFluteフェス2014終わり | jfluteの日記
Domaのnakamuraさんをゲストとして、 パネルディスカッションをしました。 新しい試みのフェスでした。 ... 2015年11月21日 笑顔のDBFluteフェス2015終わり | jfluteの日記
1000円取る方式、いきなり懇談会方式、 チャレンジ過ぎる企画にも関わらず、 大勢の方に来ていただきました。 ... そして、今年も!?
LastaFluteなんてものも
DB周りだけではなく、Webフレームワークにも 手を出してしまいました。LastaFluteです。 だいぶ無茶してしまいましたが... さすがに「ワーク"ワークのためのライフ"バランス」考える | jfluteの日記でもでも、 喜んでくれる人がいるので、やって良かったです。 LastaFlute First Impact | Speaker Deck そして、 まだまだ冒険ですね...
最後最後のSeasarカンファ
久しぶり復活のSeasarカンファで、 Seasar/SAStrutsをフォークした LastaFlute を公表しました。 どーん!2015年9月26日です。 LastaFlute in Seasarカンファ | jfluteの日記... ... そして...2016年9月24日 Seasarカンファレンス2016 Final | jfluteの日記
ある意味で、DBFluteは本当に帰るところがなくなったと言えるかも。 しっかり DBFlute で生きていかないとですね。
出張勉強会もやるように
招待されて (or 自分からお願いして)、 様々なところで講演する機会を頂きました。 仙台でのDBFluteショー | jfluteの日記 DBFlute出張講演会あっとアットウェア | jfluteの日記 ClubDB2でDBFlute語り | jfluteの日記 ウルシステム's DBFlute | jfluteの日記 u-next DBFlutist | jfluteの日記 JPOUGに登壇させていただきました。 | jfluteの日記 リクルートテクノロジーズさん's DBFlute | jfluteの日記 大阪で開催された "わんくま同盟" でも講演させて頂きました! (ごめんなさい、ブログ書けてない...) DBFluteではないですが、 CROSS2016にもお誘いいただきました。 RDB界のそうそうたるメンバーの中に混じって、 jfluteもパネラーとして参加させて頂きました。 最近のRDB四方山話 | CROSS2016 相談していただければ、 DBFlute語りに飛んでいーきまーすよー♪
関連プロダクトも増えたよ
DBFluteに加え... o EMecha (Eclipse Plugin) o DBFlute Maven Plugin o DBFlute Intro o DBFlute Hamcrest o UTFlute o Lasta Di o LastaFlute o MailFlute o TomcatBoot o JettyBoot DBFluteを広めるために、 DBFluteと連携をするプロダクトを作らないと いけないと思ったんですね(若干後付け)。 ※協力頂いているコミッターのみなさま、 本当にありがとうございます。 ... あと、DBFlute.NET も忘れてはいけません。 C#プログラマーのユーザー、確実にいらっしゃいます。 なかなか着手できないジレンマがありますが、 使ってくれる方がいらっしゃる限り、 なんとかしたい気持ちはずっと持っています。 ... そして、まだ道半ばですが、Scala版も暫定開発しました。 DBFlute on Scala | DBFlute まだ、Scalaという世界観で、 DBFluteらしさをどう表現したらいいのか? 迷うところがたくさんあるのですが、 勉強にもなるので薄く長くアプローチしていこうかなと 思っています。(ユーザー全くいないし)
jfluteも成長したよ
なんといっても、 これだけのオープンソース活動をやってきたことで、 ずいぶんといろいろと鍛えられました。 まだまだ足りないところだらけですが、 ぜんぜんプログラマー自信のなかったjfluteだったのですが、 なんとかやってきただけのことはできるようになってきました。 とにもかくにも、行動することですね ... DBFluteのフォローイング、アドバイザリーなど、 DBFluteにまつわること、DBFluteがきっかけで 仕事がもらえるようになってきました。 個人オープンソースプログラマーのジレンマ、 "オープンソースではなかなか食べていけない" (少なくとも自分で作ったオープンソースでは) 自分は、そこに対してチャレンジをしている 真っ最中と言えるでしょう。![]()
時が経つのは速い?遅い?
遅い! 1年前の自分やDBFlute, 3年前の自分やDBFlute, 5年前の自分やDBFlute, 全然違いすぎる。 思っていることも考えていることも、 気にしていることも気にしているものも、 ノウハウや視点も、環境も状況も... まだ1年しか経ってないの? まだ3年しか経ってないの? まだ5年しか経ってないの? って、思えるのです。 あまりに色々とありすぎて... だから、 1年後の自分やDBFlute, 3年後の自分やDBFlute, 5年後の自分やDBFlute, って考えると、 全然違うんだろうなぁと。 めちゃ不安だし、わくわくします。 いつまでこんなことやってるんでしょうか? ... 細かいところでたくさん色々と失敗して、 いま思い出しても「どしーん」とへこむこと、 たくさんありますが... それでも! この10年間 DBFlute に注ぎ込んできて、 後悔はないですね まあまだ冒険の途中だから後悔のしようがないのかな。 また後でゆっくり考えましょうか。後悔するかしないか。 なので、とりあえず、 今まで通り反射神経で行動していきます(^^。 DBFlute, Happy Birthday!![]()