D-7 <altijd in beweging>

Day to day life of a Perl/Go/C/C++/whatever hacker. May include anything from tech, food, and family.

「なんか外部CIサービスだるいなー」「リリースとかもうローカルの環境でやりたいなー」「マシン取っ替えてもすぐ環境作れるようにしたいなー」などなどの欲求があったのと、go1.4がリリースされたのもあってDockerで全部自動化してみた。

戦略としては
  1. Travis CIとかの連携は残すけど、手元でいつでも同様のテストを走らせられるようにしておく
  2. リリースは手元でバージョン指定すれば基本的に一発で通るようにしておく
実装は単純で、ubuntuベースのイメージに必要なgoのバージョンとツール類(goxcghr)を展開しておいて、pecoのディレクトリは後からdocker run -vでマウントできるようにしておく

使う時は先にイメージを作成しておく(キャッシュ使ってるから当然素早く走りますね!)

001

あとはpeco-dockerレポジトリについてくるスクリプトでCI的なテストとリリースができる。(リリースは本当にリリースはしっちゃって面倒くさいのでここではテスト画面だけ)

001

test.shの中身は基本的に"docker run peco-docker:go1.4 /test-docker.sh"というコマンドを実行しているだけです。

で、先ほどpeco v0.2.11 をリリースしましたバグフィックスと機能追加両方ありますので、是非お試しください。

というわけでdockerを使ってpecoさんを手元で色々できるようにしてみた、というお話でした。オーケストレーションは色々と微妙なところはあるけど、こういう単純な自動化にはdockerすごいフィットしてる感あるという感じがしましたね。
    このエントリーをはてなブックマークに追加 mixiチェック Share on Tumblr

YAPC::Asia Tokyo 2015 は ななななんと!8/20-8/22にビッグサイトで開催されます! まだまだ本番までは時間はありますが、本エントリではどどーーーーーんとその辺りを先取りして 皆様に紹介したいと思います! 

もしこれを見て「スポンサーに興味あるんだけど、この会場だったら○○とかできる?」というような興味が湧いた方は是非こちらのフォームからお問い合わせください続きを読む
    このエントリーをはてなブックマークに追加 mixiチェック Share on Tumblr

来る10/29にJPAの企画で「JPA Thanks CONBU〜YAPCを支えた技術を知ろう+感謝しよう!〜」を開催します!基本あまり大々的にやらず、どちらかというと交流会のような形で開催したいという希望があったのですでに満席ですが(もしキャンセルがある場合は早めにキャンセルしてくださいね!)、本イベントについて紹介をさせていただきたいと思います。


基本的には CONBUの皆様が具体的にどのような事を考えながらYAPCのネットワークを構築してくれたのか、どういう苦労があったのか、そしてこれからの活動予定?などを僕が聞きたかったので企画をしました! CONBUの皆さんはなんかしれっとうまーくやってくれちゃって、トラブルもほとんど聞かないし、要は具体的な活動内容をYAPC関連者でさえあまり知らないのです。それはそれでインフラストラクチャーを提供するという仕事をするという点においては全く持って正解なのですが、直接そういうレイヤーの仕事をしてなくても技術屋の端くれとして知りたいじゃないですか!

というわけで本企画が生まれました。基本はビールとおつまみを楽しみながらCONBUの皆様と交流するためのイベントです。会場はmixi社のご好意に甘えさせていただきました。ビールやピザなどを楽しみながら20分トーク x 4という感じでCONBUの方達からの発表があり(イベントページを参照)、その後はわいわいと交流するだけの予定です。参加される皆様はぜひCONBUの人たちを捕まえて色々と話してみてください。

なお時々チケットがキャンセルになりますので、その際は@jpa_perlアカウントでお知らせしています。運が良ければ滑り込めるかもしれません!

それでは当日皆様のご来場をお待ちしております!
    このエントリーをはてなブックマークに追加 mixiチェック Share on Tumblr

docker、触ってたけどちゃんとデプロイとかしたことなかったのでこのひと月しこしこ作業しては失敗し直しては失敗しを繰り返してて、この週末やっとデプロイした。yapcasia.orgのことなんですけどね。

以下ベストプラクティスかどうかは知らないけど、とりあえず俺が通った道筋:続きを読む
    このエントリーをはてなブックマークに追加 mixiチェック Share on Tumblr

godepというツールをpecomigemogrepに便利に使わせてもらってたんだけど、このたびカスタムなgoスクリプト(goだとスクリプトじゃないと言われそうだけど、スクリプトとしか言い様が無い)を書いてgodepを卒業しました。

 なんでこうしたかというとgodepの-copy=falseというオプションが使えなくなり、基本的に依存関係のライブラリもこちらのレポジトリに入れないといけない形になったから。いや、入れても良いけどさ… う〜ん。毎日ビルドして出荷してるわけじゃないし、それなのにレポジトリをcloneした時に依存関係も全部落とすのはなああああ、ということで、もう全部自前で書きました。

別にシェルスクリプトでもよかったんだけど、goのプロジェクトだし…ってことで全部goで書いて、wercker.ymlからこんな感じで呼び出すようにした

それだけ。あとで「なんであんなことしてるの?」って聞かれた時用に書いておく。
    このエントリーをはてなブックマークに追加 mixiチェック Share on Tumblr

今年のYAPC::Asia Tokyo 2014は海外ゲストの方々と色々話す機会があったのでかなりの時間彼らと話していた。

特にスピーカーの方々とは「日本人に受けるためにはどういうアプローチがいいんだ」という相談をYAPC期間中に(今更!)聞かれて
  • 日本人は証拠として数値の提示を求める傾向があるから、数値をもっと盛り込め」とか
  • おまえらの会社日本だと全然知られてないんだからまずそこから変えろ」とか
等々の助言をして大分彼らのトークの内容を微調整する業務があった。特にDBICのトークは(見てないけど)YAPC::EUでやったものと全く内容が違う、という報告をスピーカー本人にもらった。ははは、通訳の人たちに迷惑かけたかなーw

ともあれ、その流れで海外のYAPCの話。今回話した人たち全員から
  • なんでYAPC::Asiaはこんなに人が集まるんだ?
  • どうしたら俺たちのYAPC(EUにしろNAにしろ)をここまで大盛況にできると思う?
という相談をされて、ずーーーーっとコンサルばりの演説をぶちかましてました。

英語のブログでこの辺りをもっと書いてくれと言われてるんだけど、とりあえず部外者の俺が偉そうな顔で他のイベントの事に関して偉そうな事を書くと一瞬で炎上しそうなので、まず自分の考えをまとめるためにも自分のこの日本語ブログで書き出してみたい。

 続きを読む
    このエントリーをはてなブックマークに追加 mixiチェック Share on Tumblr

自分が運営していないYAPC

この8年間自分は常にYAPC::Asiaの運営側にいた。でも今年は違う。初めての経験。

これまでは会場内を走り回り、常に壇上側から来場者達を見て過ごしてきた。去年で引退を宣言して今年はノータッチ…とはさすがにいかずお金等の絡みで一応補助的にスタッフ側にいたけど、これまでの準備期間は時々口を挟む以外は何もせず支度は新運営スタッフに任せたし、当日も一応スタッフTシャツを着てスタッフ側で立ち回った物の基本的にはふらふらとしてるだけで海外ゲストとの調整をする以外は仕事らしい仕事はせず、どちらかというと観客側に近い立場でYAPC::Asia Tokyo 2014を見た。

参加者はいいな

そうしたことによって一つわかったことがある。少なくともLTは観客側のほうが全然楽しいwww 同じスライドを見てるはずなのになー。やっぱり運営者の時のLTの最中はタイムキープとかそういうのを気にしちゃってたから ちゃんとスライドを見えてなかったのかな。

それ以外のトークもただただ純粋に聞いている余裕があるのはひたすら素晴らしかった。

なお、自分が話したトークはこちら。
YAPCの運営

 新運営スタッフはここまでの数ヶ月かなりの努力をつみあげてきたからこそ完璧に近い形で無事開催ができたのだけど、同時にこれまでのノウハウとJPAのリソースを使うことによってだんだん属人性が取り払われつつあるのかな、とは思った。

継承されるノウハウや十分な資金源がなかった5年前のYAPC::Asia Tokyo 2009に同じだけの人数が来たら絶対に破綻してたと思うけど、今年の新運営スタッフは1発目からキレイにできたのは本人達の努力の上にそういう側面があると思う。そういう意味でもっと違う場所で似たようなイベントをやりたい人達はJPAとうまく連携することによってはた目よりはるかに簡単にYAPC::Asia を開催できると思うので、我こそはと思う人は是非連絡してほしいと思う

あと去年までは俺も含めた全ての主催者は トップダウン方式で物事を進めてきたと思う。頂点がいて、あとのスタッフはそれに追随する、という方式。去年からコアスタッフという形式に移行して、その進化形態として今年はかなり主催者の権限を委譲してよりコアスタッフが自分の裁量で動ける形にしたことによって組織としての柔軟性は増していたように思う。

というわけでこれから先将来のYAPCも(万が一、主催する人が変わったとしても)ノウハウやバックアップの体制が以前よりはるかによくなっているので、ちゃんと旗を振る人さえいえればかなり成功の確率が高いものになるだろうと思う。
 
諸事情により最後までいられなかったんだけど、YAPC::Asia Tokyo 2014、楽しかった 。
    このエントリーをはてなブックマークに追加 mixiチェック Share on Tumblr

タイトルの通りです!YAPC::Asia Tokyo 2014オープンソースの開発現場 - Perl 5.20 のSubroutine Signaturesが来るまでの奮闘の軌跡というタイトルで僕が横目で見てきたPerl 5.20で入ったSubroutine Signaturesの開発の流れを紹介します。。

言語の一機能なんてユーザーの我々に取っては「あー、これ追加したのね」みたいな感じですが、機能の追加の際にはいろいろな苦労、駆け引き、政治が絡んでくるものです。今回は比較的難産であった Subroutine Signatures の機能が追加される流れを追ってOSS開発の現場で立ち向かわなければいけないかもしれない様々な問題やその解決方法を考察してみたいと思います。

今回唯一の"Perl 5.20"トークだと思いますので、朝早いですが、是非おいでください!

    このエントリーをはてなブックマークに追加 mixiチェック Share on Tumblr

タイトルの通りです!YAPC::Asia Tokyo 2014Go For Perl Mongersというタイトルですが、基本「Perl mongerな俺がはまったN個の罠」という感じの話になります。

LLの世界からGoに入ってきて「これ、絶対みんなはまるだろ」っていうあたりをどどーんと解説します。初心者にありがちな「Goちょっと手を出してみたけど使い方がイマイチなぁ〜」とか「なんであの機能はあんな形で実装されてるんだろう」というあたりをカバーしてこれから安心してGoのコードを書けるようにすっきりしてもらおう、というトークですね。

可能な限りその場での質問に答えたり必要であればライブコーディングもしたいとは思いますが、時間の制限があるのでさてはてどうなることやら。

なお想定している観客層は「最低限Goをかじったレベル」の方です。Goを知らないで来られるのはお互いきついので最低限A Tour Of Goを一通りやっておいていただけると助かります。逆にGo上級者の方にはちょっと物足りないかもしれません。

GoもPerlも極めたいあなた!是非ご来場をお待ちしております!

なお今月上旬にHDE Inc様で発表した内容とほぼ同じですので、そちらに来ていただいた方はもう一度聞きたい!という酔狂な方を除いて来ていただいてもあまり新しい内容はありません!


    このエントリーをはてなブックマークに追加 mixiチェック Share on Tumblr

去年の記事(息子1歳のいる風景:平日スケジュール)があがってきて思い出したので子供が二人になった今年の状況をメモっておく
続きを読む
    このエントリーをはてなブックマークに追加 mixiチェック Share on Tumblr

このページのトップヘ