ラベル 勉強会 の投稿を表示しています。 すべての投稿を表示
ラベル 勉強会 の投稿を表示しています。 すべての投稿を表示

2018年11月14日水曜日

CI/CD Test Night #1/#2 に参加してきた

CI/CD Test Night #1
CI/CD Test Night #2


1日目は、補欠だったのですが当日繰り上がったので参加。
2日目は、当選してたので予定通り参加してきました。
(ブログ参加枠ではないのでテキトーに書きます)


(両日参加でパーカーもらえたようですが、Tシャツを着ていく必要があったようで、思いっきりネタTシャツで行ってしまいもらえなかった・・・)

感想
Bitrise の方が来日してくれたこともあって、Bitrise の話題が多かったです。
Bitrise は自分にとっては使っている CI サービスの1つくらいの認識で、モバイルに強いという印象がある程度でした。
特に自分ではその強みの恩恵を受けてはいないので(iOS/Androidアプリを作っているわけじゃないので)、LT を聞いててみんな使ってるんだなーという感想。あとは Circle CI も強いんだなという感想。


Bitrise をより深く使ってみた
公演でワークフローのヒントをいろいろもらったので、やってみました。

設定の diff と restore
ワークフローとかパイプラインとか作ってるときって、結構トライアンドエラーが多いので Restore できるのはありがたい。
他のサービスよりも diff が見やすいなーと思いました。


並行実行
ワークフローを直列に実行するのではなく、2つに枝分かれさせて並行実行させる方法のブログ記事が紹介されたので、試してみました。



方法としては、別のワークフローをキックするステップが用意されているので、それを入れ込むだけです。
上記ブログで紹介されているのは、「Bitrise Start Build」を使った方法です。
(Bitrise Start Build Step でも Trigger Bitrise workflow でも、どっちでも実現できたましたが、Start Build のほうは待ちができます。)
(Start Build の方は Personal Access Token が、Trigger workflow の方は Build Trigger Token が必要になります。)

やってみた結果としては、そもそも Free プランだと 1並列 だけなので、ビルドが詰まって無理でした。。。


異なるスタックのビルドを1つのワークフローで実行したい
並行実行はできたらいいなくらいだったので、Free プランでできないのは致し方ないですが、
iutest では、iOS / Android ビルドのために、Mac と Ubuntu のスタックをそれぞれ利用しています。
そのため、これまではプロジェクト自体を分けて対応していました。
ただ、1 push に 2 ビルド消費してしまうので、1つのワークフローで iOS / Android ビルドができないかなと思ってました。

ただ単純にワークフローをつないだときに、スタックの切り替えもしてくれると良かったんですが、そううまくはいかないものです。。。



(Hybrid スタック使えばいいんでしょうが、その前に Android ビルド環境を整えねば・・・)
Workflow ごとのバッジがほしい
バッジ集めが趣味なので、ワークフローごとのバッジがほしいなーと思ってます。
(ワークフローで iOS/Android を別途書くことが多いと思うのですが、それぞれでバッジを出したい)
(今は並列実行の件もあってプロジェクト自体を2つ作ってますが・・・そうすると両方の結果を加味したバッジ表示ができないので、それもまた困っているところ)


すでにできるのかもしれないですが、やり方がわからず。
情報あればコメントいただけると嬉しいです。

(ここでワークフロー選択ができるといいんですが。。。)

最後に
Jenkins 以外で CI メインの勉強会って、たぶん初めての参加だったのですが、楽しかったです。
やっぱり CI 面白いですわ。

あとは、Bitrise のワークフローを見直すイイ機会になりました。
今まではただ使ってるって感じだったので、もっと使い倒していこうと思います!
(とりあえず、この記事で書いた未解決な件はもう少し考える)

では。またどこかで。

2017年11月13日月曜日

「第11回 Jenkins勉強会」に参加してきました

どうも僕です。仕事が始まって1週間。こちらでの生活にも慣れてきました。
そんなこんなで「第11回 Jenkins勉強会」に参加してきました。
東京来て一発目の勉強会!久しぶりの参加報告って感じですね。

今回の講演は3つ + LT 3本立て。
「初めての自動テスト meets Jenkins」


最初は「初めての自動テスト ―Webシステムのための自動テスト基礎」を翻訳された玉川紘子(@nkns165)さんの講演。

原著者がアジャイルサムライを書いた人と一緒とか、CI の章がないが CI があっての自動テスト(あるの当たり前)とか、翻訳こぼれ話とか、興味深い話が聞けました。
自分も本に関わってみたいなぁー



「Jenkins World 2017 の報告」
2つ目は Jenkins World 2017 で「Most Valuable Advocate」受賞の中村知成(@ikikko) さん!
(そのへんは @ikikko さんのブログへ)



Jenkins Advisor はじめて知りました。さっそく使ってみようと思いました。

Jenkins world の動画はここかな?
https://www.youtube.com/user/CloudBeesTV


「Jenkins PipelineとBlue Oceanによる、フルスクラッチからの継続的デリバリ」
最後は川口さん!

↓は今回の講演と(たぶん)同じヤツ




#はい

when で任意ブランチでのみ stage できるっぽいので、iutest のパッケージビルドを Jenkinsfile にお引っ越ししようと思いました。


LT
ここから LT
遠くの"計画"よりも今日の"CD"(継続的デプロイ)


タミヤ カムプログラムロボット工作セットで作るXFD


開発者(個人)のためのJenkins 運用編


感想
参考になる話、知見、情報と持ち帰るものが予想以上にあってよかった。
LT はホントいつも面白いし、すごい!
懇親会でも色々いいお話聞けたのでとっても大満足。

最後に、テクマトリックスさん、スタッフのみなさん、そして講演者の方々、ありがとうございました~

2016年12月15日木曜日

「第8回大阪Jenkins勉強会」で発表してきた

タイトルのとおり、「第8回大阪Jenkins勉強会」で発表してきました。

発表資料はこちら




補足
いやーとっても緊張しました。スライドは結構うまくできたかなーと思ってたのですが、やっぱり1回は話す練習しとかないと言いたいこと言いそびれますね。。。
というわけで、補足。

CI サービスの特徴
質問で特徴について聞かれて、あんまり特徴がない…と答えたものがありましたが、iutest 開発での利用範囲ではあまり特徴に差がないということです。
特にデプロイ関係はノータッチなので、ご了承ください。

Groovy 使えばなんでもデキル
狂ったように Groovy 推ししてましたが、職人技で難解な Jenkins を作ることを推してるわけじゃないです。
なんかあったら Groovy 使って解決できるから大丈夫。という心の余裕を持てるようになって欲しいという点と、(新人・後輩に)全能感を味わってもらうことで Jenkins 仲間に引きずり込もうという考えです。

テーマ
気づいた方もいるかと思いますが、スライドテーマは BlueOcean をイメージして作りました。
スライド自体は reveal.js を使っているのですが、それ用の theme です。
もし使いたい方がいれば、ご自由に使ってください。
github から取ってこれます。

最後に
前回に引き続き、今回も超絶面白勉強会でした。
他の方の発表はどれも、すごいなぁと思ったり、なるほどと思ったり、そしてクソ笑えたり、
いやー濃いですね。


ともあれ、自分はもっとうまく話せるようにならないとダメだなぁと思いました。
来年も挑戦できたらいいなぁ~

というところで、以上。
では、またどこかで。

2016年6月21日火曜日

「第7回大阪Jenkins勉強会」に行ってきた


第7回大阪Jenkins勉強会」に行ってきました。

前回から約2年半ぶりだったんですね。
ブログズミ: 第6回大阪Jenkins勉強会に参加しました
久しぶりの大阪Jenkins勉強会でしたが、今回はヒジョーーーに内容の濃い勉強会でした。
すべてを書くのはとっても大変なので、簡単に発表の紹介をしつつ感想なりを書いておきます。

前半戦
前半戦は、Jenkins 2.0 をインストールするところから始まり、事例や 1.X との比較と順番に良い流れでした。

「初めての自動化、Jenkins」
Jenkins 2.0 のインストールしてみたときの躓いたポイントを交えながらの発表でした。
Jenkins 2.0 になって、インストールの時の手順が少し変わったので知らない人も結構いたのではないでしょうか?

Jenkins Pipeline Plugin と Android アプリ開発
Jenkins 2.0 を使ってみた事例
個人的には Android な話がもっと聞けたら嬉しかったです。

実録!隣のJenkins2
Jenkins 1.X + Build Pipeline と Jenkins 2.X + Pipeline Plugin の比較。
自身のデモ動画にツッコミながら解説する新しいスタイルの発表でした。比較もわかりやすくて良かったです。

そしてフォローありがとうございます。


Jenkins 2.0の紹介
川口さんのセッション。Jenkins 2.0の紹介
このスライドは読んだことがあったのですが、やはり本人(しかも Jenkins の生みの親である川口さん)から聞けたのがすごーくうれしかった。
ちなみに、Pipeline plugin の DSL は Pipeline script と呼んでいるそうです。

Blue ocean UI
Jenkins 新しい UI プロジェクト。https://jenkins.io/projects/blueocean/

Blue Ocean の紹介と実際に動作しているところを見せていただきました。(通訳川口さんとの掛け合いも面白かった)
見たい情報が見やすくなる(入力待ちのステージや失敗したステージが上にくる)とか、ちょっとしたアニメーションとか、Jenkins 見てくれない問題の解決に近づくかなーという期待が持てました。

Travis, Circle, そしてJenkins 2.0
Jenkins の問題点は、「Jenkins がすご過ぎること」。
そして、プラグインもりもり、独自のジョブ構成、属人化…の末に Jenkins 職人が生まれてしまうこと。

私の会社でもそんな感じになってますね…
こちらの発表でもあったように、CI サービスのほうが手軽で管理が楽なので、個人的な趣味プロは CI サービスに移行しちゃってます。

しかし、CI サービスの恩恵を受けた Jenkins 2.0 は、Jenkins 職人業を減らすことができるようになったのでは?という話ですね。
Blue Ocean も個人的には期待が持てますし、会社では今後も Jenkins を使っていくことでしょうし、とにかく、まぁ Jenkins 職人業が減るといいですよね。

ピザ待ち質問大会、そして LT へ
ビアバッシュのビールとピザ待ちの間に、川口さんへの質問大会となりました。
付箋に聞きたいことを書いて、答えていただく形式。
私も何個か質問を書きました。

そして、待ちに待ったビールとピザの登場。
(ピザの登場タイミングもすごいタイミングよくてびっくり)
おなかも膨れて、いい感じにお酒も入ったところで LT 大会へ。


うん、もうどれもすご過ぎて説明できない!!
ホント LT のレベル高すぎでした(やらなくてよかった~)

まとめ
本編・ビアバッシュともに大変満足。楽しかったー
ぜひ、第8回もやってほしいです!

最後に、会場となった楽天さんありがとうございました。

2016年1月19日火曜日

「Effective Modern C++読書会 vol.3」に行ってきた

Effective Modern C++読書会 vol.3」に行ってきました。



読書会、前々から行きたいな~と思っていたものの行けてなかったですが、
本も新しくなったし、今年こそは!ということで行ってきました。

知らなかったこととかがさらっと出てきたりして、非常に勉強になりました。
あとラムダのサイズで警告云々の話は、見返してみたらちょっと勘違いしてました。
ラムダから関数オブジェクトを返してて、警告されてたのはそれでした。
ただ、ラムダがそれぞれサイズが異なるというのは今まで意識したことがなかったので、新鮮でした。
[Wandbox]三へ( へ՞ਊ ՞)へ ハッハッ http://melpon.org/wandbox/permlink/W1fPrqECoaRu8hG0


また余裕があるときには参加したいです。

2015年12月8日火曜日

「DevLOVE現場甲子園2015『西日本大会』」に参加してきた

DevLOVE現場甲子園2015『西日本大会』に参加してきました。
参加したセッションは以下。

一回戦【クリスタルファンタジアを支えきった技術と技術だけではどうにもならない話】
内海 恵介
(ゲーム)
二回戦【“ワンフレーズゴール”がもたらしたもの - チーム改善の達成と失敗】
阪田 浩一
(サービス)
三回戦【メンバーの成長を促進する組織マネジメント】
細谷 泰夫
(現場支援)
四回戦【自動化とは何か?ゲーム開発において実践した自動化とは?】
森田 和則
(ゲーム)
五回戦【エンジニアが幸せな人生を過ごすための学び方、関わり方、あり方。】
久保 明
(現場支援)
再演賞【エンジニアが幸せな人生を過ごすための学び方、関わり方、あり方。】
久保 明
(現場支援)

参加した理由
DevLove 甲子園は今回が初参加でした。
参加した理由は、テーマの「受託開発、サービス、ゲーム、現場支援」がどれも興味のあるものだったからというのが一番の理由です。
あとは Twitter でフォローしている人が発表することになっていたので、どんな人か会ってみたかったってのもあります。

熱い内容でした
参加したセッションすべて熱いお話しが聞けました。
自分はゲーム業界の人間ですが、同じ業界も別の業界もどちらもまさに現場の直の声が聞けた、というの良かったです。別の会社、別の業界でどのような仕事をしているのか知る機会というのは本当に少ないのでこういった勉強会はすごく刺激になりました。

総評
個人的な勉強会は久しぶりでしたが、やはりいいですね。
あとやっぱり懇親会で得られる刺激というのも大きくて、特に今回は自分とは全く違う現場の話が聞けたので楽しかったですね。
Diff を知り、自分の現場に活かせるとても良い勉強会、そして交流ができました。
ありがとうございました。

2014年9月22日月曜日

Boost.勉強会#16 大阪に行ってきました

Boost.勉強会#16 大阪に行ってきました。

久しぶりの勉強会参加です。
今回は LT で発表してきました。
勉強会でしゃべるのは初めてのことでとても緊張しました。
あまりうまくしゃべれなかった気がします。。。

発表資料はこちら

話した内容は iutestWandbox 対応したという話でした。
LT では触れませんでしたが Google Test にはない機能もたくさんありますので、ドキュメントをみていただけると幸いです。
今回これを実装した理由は、Wandbox でテスティングフレームワークを使おうとした場合、選択肢が Boost.Test しかなかったので、普段 Google Test を使っている身としては Google Test の構文で書きたいなと思ったからです。

まだパッケージリリースはしてませんが、trunk で確認できます。(trunk/tools/wandbox)
詳しいことはリリースしたときに、このブログに書きたいと思います。

これができるようになったことで、C++ に対応していない CI サービスでも Wandbox を使ってテストをすることができます(たぶん)。現在、Shippable を使って検証中ですので、これもまたブログに書けたらと思います。

最後になりましたが、発表者・参加者の皆様お疲れ様でした&楽しい時間をありがとうございました。

2014年3月17日月曜日

勉強会勉強会から1年経過して

さて、勉強会勉強会から1年以上経ちましたが、いかがお過ごしでしょうか?
私は去年はあまり対外的な活動が出来ませんでした。

というのも、去年は入籍・結婚でプライベートが忙しく、また仕事も大変忙しかったからです。イイワケ

このブログを見に来る方の殆どが技術情報が目当てだと思いますし、私もそのつもり書いています。
でも、たまにこのような雑記も書いたりするわけですが、大してページビューもありませんし、今回は私の気が済むまで言い訳にイイワケイイワケを重ねて、スッキリしたいと思います。

あれはどうなった?

あれはまだデキテナイ。
ブログを見れば分かると思いますが、Jenkins の(社外)勉強会を開催したいと言ったものの実現できてないです。
まぁ、それも去年忙しかったからショーガナイ。 イイワケ

忙しい忙しい言ってても芸がナイので、もう1つ理由をあげると、
「Jenkins に対するモチベーションが下がった」ってのがあります。イイワケ
Jenkins に関わる勉強会を!と言っていたのに、です。

なぜモチベーションが下がったのか
自分で(調べて)解決できることが増えたから
Jenkins を使い始めて3年以上経ちました。色々とノウハウが貯まってきて、多少の問題は自分で調べて解決できるようになりました。
なので、「他の人はどう対処しているのだろう?」という疑問が薄れてしまいました。イイワケ
もちろん、自分のやり方がベストだとは思ってません。機会があれば、他の人の運用とか聞きたいです。

安定化・規模拡大
2つ目は、仕事/プライベート含めて Jenkins が安定化したため、昔ほどプラグインを試したり、ジョブの設定を弄ったりする必要がなくなりました。(ジョブは安定してなくて赤かったり、黄色かったりしますが…)
また、規模が大きくなったため Jenkins を再起動させたり、プラグイン更新(でバグを踏まないように)したり、弄くるのがちょっと大変になってきました。
これらのことから、現状維持に意識が傾いてしまいました。イイワケ

(自分にとって)自由な Jenkins でなくなった
3つ目です。
Jenkins の管理者は私一人ではないのですが、
知らん間にプラグインがアンインストールされてることが何回かありまして・・・
まぁ、やる気がなくなりました。イイワケ

今は Jenkins がチームに浸透してますし、プログラマー集団なので Groovy とかも見れば直ぐ理解してメンテナンスできると思いますし、ビルドスクリプトは既に個々が書いてます。
なので、もう自分がいなくても大丈夫だな~って感じで、嬉しさはありますが・・・

それからどうするのか
ふー…スッキリ(^o^
とはいえ、このまま何もしないのも・・・と、思ってはいます。
社外勉強会を自社で・・・という思いもあります。
それが Jenkins なのかは分かりませんし、実際やるのは3年先かもしれません。マエ イイワケ

あと、この一年何もしてなかったわけではナイです!

以前からやっていた社内勉強会のスケールが大きくなりました。
これまでは課で行っていたものを社内全体の勉強会として開催できました。
それも定着してきていて着々と回を重ねています。これは私だけの功績ではなく協力者の方々のおかげだと思ってます。あとは、勉強会を開く・参加するということを会社が評価してくれているので、そこも定着した理由の1つかと。

というわけで、社内向けにはそれなりに活動していました。してたんです!イイワケ
今後は、このブログ以外で外に向けて発信していけたらと思います。
(できることからコツコツと…)

最後に
最後にですが、勉強会勉強会は今年もやるようです。
勉強会勉強会 〜君がッ 参加するまで 勉強会をやめないッ!〜 - DevLOVE関西 | Doorkeeper
興味のある方は行ってみてはどうでしょうか?(既に満席のようですが・・・)

2013年12月25日水曜日

[C++03][iutest] 日本語テスト名機能の紹介

2013/12/16 に京都で行われた 「江添とボレロ村上の京都C++勉強会」 に参加しました。
やはり、人に解説してもらうと頭に入りやすくていいですね^^
参加者のレベルも高くてすごいなと感じました。

さて、
質疑応答の中で日本語識別子の話が出て、テスト名に使えるねって声がありました。

それ C++03 でもできるよ!
(※ それ = テスト名に日本語を使う)

iutest は私が個人的に作っている Google Test ライクなテスティングフレームワークです。
特徴としては、ヘッダーオンリー・Google Test の拡張機能・C++11 対応などがあります。

その中の機能の一つとして日本語テスト名に対応しています。
(v1.5.0 から対応。執筆時点での最新バージョンは v1.7.0
v1.5.0 をリリースしたときの変更履歴に書いただけで、詳しく書いてなかったので今回紹介することにしました。

はじめに
この機能を紹介するまえに。

C++11 からは識別子に日本語が使えるようになりました。
このため、C++11 以降の環境では今回紹介する機能を使わずとも日本語テスト名が書けます。
なので、日本語テスト名が使いたければ素直に C++11 対応のコンパイラーを使いましょう。


サンプルコード
それでは、サンプルコードを見てみましょう。
#include "iutest.hpp"

IUTEST(JapaneseTest, IUTEST_JAPANESE_NAME(かきくけこ))
{
    IUTEST_ASSERT_STREQ("かきくけこ"
        , ::iutest::UnitTest::GetInstance()->current_test_info()->name());
}

class FixedTest : public ::iutest::Test {};

IUTEST_F(IUTEST_JAPANESE_NAME_F(FixedTest, あいうえお)
    , IUTEST_JAPANESE_NAME(かきくけこ))
{
    IUTEST_ASSERT_STREQ("あいうえお"
        , ::iutest::UnitTest::GetInstance()->current_test_info()->test_case_name());
    IUTEST_ASSERT_STREQ("かきくけこ"
        , ::iutest::UnitTest::GetInstance()->current_test_info()->name());
}

int main(int argc, char* argv[])
{
    IUTEST_INIT(&argc, argv);
    return IUTEST_RUN_ALL_TESTS();
}

日本語テスト名を使う場合は、通常テスト名を書くところで IUTEST_JAPANESE_NAME を使うだけです。
簡単ですよね?
テストフィクスチャーを使う場合は、IUTEST_JAPANESE_NAME_F を使って、第一引数にフィクスチャークラス名を指定します。

実行画面


いかがでしょうか?
ちょっとでも iutest を使ってみたくなりましたでしょうか?
iutest はヘッダーオンリーなのでソースコードをダウンロードするだけで、すぐに使えます!

是非是非、使ってみてください。
SourceForge: http://osdn.jp/projects/iutest/
github: https://github.com/srz-zumix/iutest

2013年11月20日水曜日

第6回大阪Jenkins勉強会に参加しました

第6回大阪Jenkins勉強会に参加しました。
前回参加したのが、第2回でしたので久しぶりにおじゃましました。
Ust があれば見るようにはしてましたが、今回は Windows系の話があったので行くことにしました。

遅刻した!
仕事ががが…
そんなわけで、神谷さんのセッションははじめから聞けなかったので、
あとで資料をじっくり読むとして、感想は控えておきます。
とりあえず、スクリプト大事。

窓辺に立つ執事
今回の目的のセッションで、期待通り自分が知らなかったことを色々聞けてよかったです。
主にツール周りの情報が沢山あったので嬉しかったです。Jenkins 周りはあるある~ッて感じでした。

気になったツールを自分用メモとして書いておきます。
  • Gallio
  • SonarQube
  • White
  • SpecFlow
  • Sikuli

初耳のものが多かったので、とりあえず詳細調べて良さそうなら試してみようかと。

Sonar(Qube) で C++ の静的解析ができるって情報は知ってましたが、現在は Cppcheck を使用中。
時間があれば試す。

White は UI 操作言語?みたいなので、今使っている AutoIt とくらべてみたい。

SpecFlow はデモみた感じでは使ってみたいなと思ったが、大変そうとも思った。

Sikuli は検証してみたことがあるが、その時は狙った操作が上手く書けず、それっきり放置状態。
画像の選別や一致率とかの設定が難しかったイメージ。
試したのが1年くらいなので、もう一度トライしてみようかな。

というわけで、いろいろと収穫の多い勉強会でした。
殴り書きで申し訳ないですが、感想おわり。

2013年6月29日土曜日

「Boost.勉強会 #12 大阪」に参加してきました

Boost.勉強会 #12 大阪」に参加しました。
今回は、会社の同僚が何人か参加するらしいのでぼっち飯しなくて済みそうです。

それでは行ってきます。


というわけで行ってきました。
各セッションの資料は Boost.勉強会のページにまとまっていますので、そちらからご覧ください。
簡単ではありますが、感想を書きました。

C++で作るWEBアプリケーション
C++で作るWEBアプリケーション: @fadis_

Emscriptien を使うと C++ から JavaScript に変換できるとのこと。
OpenGL (ES) や OpenAL が使えて、ファイルシステムもあるそうで、Unreal Engine が動いたとか。
普通にゲーム作れそうですね。

自分が(仕事で)で使うことはないかと思うが、
自作プログラムでも変換してみますか。

C++初心者のためのBoost.MPL入門
C++初心者のためのBoost.MPL入門: @suibaka

高校生ですごいなってのが一番の感想。
Boost をほとんど使ったことなく、当然 MPL も知らないので、参考になりました。
ただ、ちょっと説明が分かりにくかったかなぁ。

boost::multiprecisionと適応型無誤差演算
boost::multiprecisionと適応型無誤差演算: @oniprog

これまた自分とは関わりの薄い分野でしたが、勉強になりました。
無誤差演算がこの先いつか必要になるかもしれないので覚えておきたいです。

constexpr中3女子テクニック―実践と濫用そしてC++14へ
constexpr中3女子テクニック―実践と濫用そしてC++14へ : @bolero_MURAKAMI

1時間半超…ぶっちぎりの constexpr でした。
長いなぁとは思ってましたが、そんなにオーバーしていたとは(^^
constexpr は使ってみた程度にしかやってないのですが、
C++14 で constexpr の制限も緩くなるので、楽しみです。

iutest でも新しい C++ の機能は積極的に取り込んでいるので、
constexpr でも何かできないかなぁと考えてます。
まぁ、14 も 1y も気になりますが、個人的には VC++ が気になります。VS2013…

Allocators@C++11
Allocators@C++11: @Cryolite

ネタが満載でとてもおもしろかったですw
以上!

…ではなく、色々なテクニックが紹介されていてとても勉強になりました。
特に、pointer 型のカスタマイズや Scoped Allocator Model が気になりました。

実は一番実践的なセッションだったのではないでしょうか。
しかし、これが C++03 でできないのは残念です。。。

君はまだ、本当のプリプロセスを知らない
君はまだ、本当のプリプロセスを知らない: @decimalbloat

去年の Boost.勉強会 #8 大阪 ではついていくのがやっとな感じでしたが、
去年のスライドを読み、 魔クロ 力を上げたおかげか、
今回は話がちゃんと理解できました。

私の魔クロ力はともかく、今回はとても分かりやすい発表だったと思います。
ちょっと難しいなぁと思った方は、こちらのスライドを合わせて読むことをオススメします。
[Boost.勉強会 #8 大阪 - プリプロセッサこわい]

C++コミュニティを作る
C++コミュニティを作る: @cpp_akira

最後は @cpp_akira 氏のセッション。
今まで Twitter やブログ経由でしか知らない、よく分からないけどスゴイ人という認識でしたが、
今回のお話でどのような経歴を経て、どのような考え方を持っているのか分かり、改めてスゴイ人だなと思いました。

今の自分にできること
とりあえず、できるところからということで、Google Test の Google Group に「[gtest] ASSERT_* マクロで void 以外を return できるようにする」のバッチを送ってみました。
(送ってみたけど反応なくて、チンプンカンなことしてないかとても不安…)

また、このブログは週1回は更新していますので、こちらは継続していきたいです。

最後に
今回も充実した一日でした!
(遠方の会場だと厳しいですが)また、Boost.勉強会に参加したいです。

2013年2月11日月曜日

「勉強会勉強会」に参加して来ました

DevLOVE関西「勉強会勉強会」に参加して来ました。

勉強会勉強会は勉強会についての勉強会でございます。

勉強会の参加はいつも「行こうかなどうしようかな~」と悩みがちなのですが、
今回は反射的に参加ボタン押してました。

というのも、以前から「社内勉強会があまりうまくいっていない」「社内でもっと勉強会をしたい」と思っていました。
勉強会のことで悩んでいるときに、「勉強会勉強会」なんて知って迷っている暇はありません。しかも、関西。

参加ボタンはいつ押すか?
今でしょ!

社外勉強会にも・・・
セッションの内容については、他の方々の参加報告などを見ていただくとして、
(※こちら にリンクがまとまってます。)
ここでは、私個人のことについて書かせて頂きます。

当初、社内勉強会の悩み解決が主な目的でしたが、
ちょっとしたハプニングで皆さんの前で自己紹介することに。
お酒も入っていたのと突然のことで、何言ったのかハッキリ覚えてないのですが、
「ゲーム業界向けに Jenkins の勉強会やってみたい」的なことを口走ってしまいました。

正直、社外の勉強会はやったことがないし、会場探しどうすんの?とか、人が集まるの?とか、
分からないことだらけで自分にはまだ早いと思ってました。

しかし、
会場「じゃあやろうか」

って感じで、じゃあどうしようかって話し合い(個別相談会)がスタート。

「興味がある人は結構いるんじゃないかな?」
「Jenkins じゃなくて、 CI/CD にして範囲を広げるのがいいかも」
「会場なら貸せますよ~」
「お手伝いしますよ」
そんな感じで色々ご意見頂いて、いやホントありがとうございましたm(__)m

まとまったのかまとまってないのかわからないけど、
とりあえず、Doorkeeper でイベント作ります。(作ったらブログや twitter で報告します。)

2人いれば勉強会
社内勉強会の悩みは、勉強会勉強会に参加して
「こういうやり方もあったのか」「やってみよう」という気持ちに変わりました。
皆さんの話の中にたくさんヒントがあり、とても参考になりました。

特に、中村さんの発表にあった「1人でやるのは勉強。2人でやれば勉強会。」ってのはなるほどと思いました。
同じことに興味のある人を見つけて2人で勉強会ってのもありですね。

KPT
今回は KPT でまとめます。

Keep
  • 勉強会に出た。
  • 前で話せた。(たまたまだけど)
  • 色々な話が聞けてやる気が出た。

Problem
  • 個別相談中に他の話が聞けなかった。
  • あまり自分からしゃべれなかった。

Try
社外勉強会
  • 社外勉強会開く。
  • Doorkeeper 使ってみる。
社内勉強会
  • 2人でも勉強会やってみる。
  • 飲み会 + 勉強会。(プロジェクタとかある飲み屋探す)
  • スライドを借りて発表。

最後に
最後に、
スタッフ・参加者の皆さん、そして会場提供をして頂いた楽天さん、ありがとうございました。

2013年1月15日火曜日

「2013年はじめのTDD Boot Camp in 大阪」に参加してきました

2013年はじめのTDD Boot Camp in 大阪」に参加してきました。

このブログでも Google Test や Boost.Test などテスティングフレームワークのことを書いてきましたが、
TDD(テスト駆動開発)はほとんどしたことがありませんでした。
今回の勉強会で TDD を体験し、今後のプログラミングライフに活かしていきたいと思っております。

それでは出発!
(※ここまでは参加前に書いてます。)


楽しかったペアプログラミング~
初めてのペアプログラミングで不安があったけど、やってみたらとても楽しくできました。
あっという間に3時間が過ぎてしまいました。(このレベルの体感時間は久しぶりだった)
演習前のデモでどういう風に進めていくのか、わかったのも良かったです。

悩みに悩んだテスト名~
C++ グループではテスト名前をどうつけるかで、一手間かかりました。
他の言語では、日本語が使えたのでテストする内容(Todo)をそのままテスト名としていましたが、
Google Test (C++) では日本語が使えないため、拙い英語で名前をつけていました。

あとになって思い出したのですが、実は VC++ では日本語変数名が使えました。
というわけで、次 Google Test + Visual Studio でやる場合は、「日本語使えるよー」と教えてあげると良いかもです。

考えに考えたテストコード~
テストをどのように書けば良いのか(テスティングフレームワークの使い方も含め)、たくさん考えました。
どういうテストコードを書けば良いか、テストを分けるべきか、例外のテストはどこまですれば良いのか・・・

テスト技法について勉強していこうと思いました。

TDD に触れられて良かったです
今回 TDDBC に参加して非常に学ぶことが多かったです。
今までもやもやとした認識しかなかった TDD ですが、認識が深まり、
自分でもやっていけそう、会社の人にも広めたいと思いました。

そして何よりプログラミングは楽しいと再確認できたのが一番の収穫です。

僕たち、私たちは、卒業しました!

グリーンバンドゲット!!


2012年4月9日月曜日

「ゲーム開発環境勉強会@関西」 に参加してきました

4/8(金) に行われました「ゲーム開発環境勉強会@関西」に参加してきました。

今回ははじめに GDC2011 での自動テストのラウンドテーブルの内容紹介から始まり、
後半は GDC2011 のトピックの中から数個議題を取り上げ、3グループに別れてラウンドテーブルをしました。

ラウンドテーブルが初めてで最初戸惑いもありましたが、活発な話し合いができたと思います。
普段会社でやっていることが他の会社ではどうなのか、~ということを試してみたけどどうだったとか、
メリット・デメリット、こんな事に悩んでいるとか。etc...

自分が参加したテーブルでは、Jenkins を主軸に、導入してどうだったかとか静的解析のこととか、自動化に関係する部分での話が活発にでました。
振り返ってみて、普段から Jenkins を使っている身としてはメリット・デメリットがあんまりうまく伝えられなかったかなぁと思いました。実際使っていてメリットはものすごく感じてはいるのですが、いざそれを説明しようとなるとうまく纏められず。。。
伝える力って大事ですよね。

まぁ、でも Jenkins 自体は簡単なので一度試してみると良いと思います。
Jenkins 日本語 Wiki
Jenkins Advent Calender 2011


他のテーブルはテストの話をがっつりとしたようです。そちらの話も気になりますね。
まとめ
勉強会とかラウンドテーブルとか数を重ねてより良いものになると思うので、今後も機会があればドンドン参加していきたいと思います。
以上、まとめ。

2012年2月14日火曜日

「Boost.勉強会 #8 大阪」に参加してきました

というわけで、Jenkins 勉強会に引き続き、大阪に行って参りました。

どれも非常に興味深い(そして難しい)お話が聞けて、とても良かったです。

色々なお話がありましたが、個人的に一番興味のあったテスト関係の感想を。
まぁ、テストとかテストとかテストとかやってる身なので…
UST の URL はこちら。
C++でテスト駆動開発 (UST が見当たらなかったので SlideShare)
Boost.Testの紹介

C++でテスト駆動開発
TDD の話は、Aimingさんの社内勉強会 UST を事前に見てたので、フムフムと再確認。
Google Mock は、使ったことないので調べてみようと思いました。
(とりあえず、自分用に日本語ドキュメントの URL を貼っときます。Google Mock ドキュメント日本語訳

Boost.Testの紹介
Boost.Test の存在は前々から知っていましたが、
Google Test で運用を始めていたのと、それで不満なく使えていたのでスルーしてました。
あとは、パッと見使い方がわからなかった。。。

正直、Google Test でいいと思うが、Boost.Test を知らずして
Google Test 最高!とも言えないので、ちゃんと使ってみよう!

って、意気込んだものの忙しくて何もできてません・・・
そのへんはいずれ記事にできたらと思います。

2012年2月11日土曜日

「第2回大阪Jenkins勉強会」に参加してきました

2/10(金) に行われました 第2回大阪Jenkins勉強会 に参加してきました。
勉強会自体参加するのが初めてなので、緊張しました。

Jenkins は会社で使っていて、今は私が管理しています。
業務で使用する分には普通に稼働していますが、もっと便利な使い方とかあれば、
勉強していきたいなぁと思っています。

当日
勉強会が終わって、今これを書いています。

とりあえず、「難しかった」。
というのが最初の感想。

タイムテーブルは ATND のページをご覧ください。

ソースコードレビューシステムGerritとの連携
Gerrit 自体は、ちょっと使ってみたいなぁと思ったのですが、
git を使えないし、会社で使う予定もないので使う機会はなさげ。
あとは、コミット毎にレビューと検証をするのは面倒な気もしました。
そのへんは、やり方がなんかあるのかもしれませんが・・・

中規模プロジェクトでのJenkinsの運用を支える技術
例題が自分の分野とは違って、ピンと来なかったが、
プロジェクトの管理する方も自動化できるとこはして楽をしようという話。(きっとそう)
スクリプトコンソールや Configuration Slicing Plugin は会社でも使ってみようと思いました。

Amazon EC2でJenkinsを使ってみる
Amazon EC2 は、Amazon Elastic Compute Cloud のこと。
EC2 をスレーブマシンと使える。それは非常に魅力的だが、
従量課金の点やセキュリティの面を考えると会社で使うのは難しいかも。
(EC2 についてちゃんと調べてみようとは思う。使うかどうかはそれからかなぁ)

ちなみに、蛙本は会社で購入してもらう予定。


Building Jenkins plugin with Ruby
ruby わからないので何やってるのかサッパリだったが、
すごく簡単そうにプラグインができてた。
Jenkins のプラグインは作ったことがないが、やってみようかなぁ…

Arduino でつくる XFD のつくり方とその効果
Arduino を使った XFD (eXtreme Feedback Device) の実物をデモで見せていただけた。

Arduino はこんなの。


これに、赤色のランプが繋がったもので、
Jenkins でビルドが失敗するとランプが点滅する仕組み。

これを開発部屋においておけば、嫌でも Jenkins の失敗を無視できなくなるという寸法。
自分でもできそうだったので、今度やってみようと思いました。


総評
予めタイムテーブルを見て、自分の使用範囲とは少し違うなとは思っていたが、
やっぱり少し違った。
でも、直接会場に出向いて生の声を聞いてモチベーションが上がったし、持ち帰れる内容もいっぱいあった。

勉強会では、ブラウザを眺めているだけでは得られないモノが手に入りますね。
今後も、機会があれば勉強会に参加していきたいと思います。