ikeike443のブログ

ソフトウェアビジネスに関心がある系のブログ

オライリージャパンさんからGitHubツールビルディングが出ます

つい先程完成した本が届きました。

この本はGitHub APIとWebhooksを使って、様々な言語・プラットフォーム上でGitHubと協調して動くツールを作ってみよう、という意欲的な本です。翻訳は笹井さんが、私は監訳者と言うかたちで関わらせていただきました。中で言及される言語やテクノロジーは実にバラエティに富んでいて、検証が大変だったのを覚えています。

既に2年ほど前の本の翻訳であるため、ものによっては文中のコードはそのまま動かないケースがありますが、APIを総覧して、いろんなツールを作るヒントになる本という意味で有用かと思います。作者のGitHubリポジトリにサンプルコードがありますので、それを見ながら読むのがいいでしょう。ちなみに動かない部分があるとしてもそれはGitHub APIの部分ではなく、依存しているライブラリだったりの問題ですのでご安心を。GitHub API自体は後方互換性を非常に気にして開発しており、2年たった今でもすべて元の期待する挙動どおりの動きをします。

GitHubツールビルディング ―GitHub APIを活用したワークフローの拡張とカスタマイズ

GitHubツールビルディング ―GitHub APIを活用したワークフローの拡張とカスタマイズ

付録でも言及しましたが、GitHubは昨年から開発者向けにEarly Accessプログラムを実施しています。また、最近GitHub Developerプログラムそのものも改訂があったばかりです。残念ながら、日本から参加者はそこまで多くないのが現状ですが、これを機にぜひ積極的にご参加いただければ幸いです。下記のようにフォーラムもありますよ。

platform.github.community

GitHubツールビルディング ―GitHub APIを活用したワークフローの拡張とカスタマイズ

GitHubツールビルディング ―GitHub APIを活用したワークフローの拡張とカスタマイズ

チーム開発実践入門 ~共同作業を円滑に行うツール・メソッド (WEB+DB PRESS plus)

チーム開発実践入門 ~共同作業を円滑に行うツール・メソッド (WEB+DB PRESS plus)

Git-it と Patchwork

先日、下記の記事がバズりました。(Git-itを紹介くださりありがとうございます!) www.softantenna.com

この記事がバズる中で書かれたコメントを見ていると、こんなツール使わなくても仕事で使えば覚えられるのでは、といったニュアンスのコメントが散見されました。もしかしたら Git-it の位置づけと、それを補完するイベントの存在が知られてないのかなと思い、ちょっとブログに書いておこうと思った次第です。

Git-it ってなに?

Git-it は GitHubber の Jessica Lord が作った初心者向けの Git 練習アプリです*1。大元をたどると node.js コミュニティの手による Workshop アプリに端を発するみたいですが。これは Git に触ったことがない方向けの練習ツールで、特に、エンジニアじゃない方に向けてデザインされています。デザイナーであったり、学生さんだったり、です。

そしてこのアプリは特に Patchwork というイベントで利用するためにデザインされています。

Patchwork って??

Patchwork というのは GitHub が主催しているコミュニティイベントで、Git/GitHub を使ってみたいすべての人にむけてオープンになっています。参加資格は Git 初心者であること、だけで、職業は問うていません。イベントではオープンソースとは何か、誰でも開発に参加できること、などを理解していただいた後、Git-it を使って実際に Git と GitHub およびバージョン管理という概念や、他人とのコラボレーションの仕方について学んでいただくようになっています。

イベントの中では、OSS プログラマーの人に来ていただいてご自身がどういうきっかけで OSS に関わるようになったかを喋ってもらったり、学生さんが OSS に関わるようになった経緯をトークしてもらったり、行政の方にオープンデータの取り組みについて語ってもらったりしています。

ソフトウェア開発やオープンデータへの貢献を通じて、誰でも社会をよくしたり、関わっているソフトウェアをよくしたりすることができるんだ、ということを知っていただくいい機会になっています。

patchwork.github.io

Patchwork にはプログラマーの方であってももちろん参加いただいて構わないのですが、過去に多く参加いただいているのはデザイナーさんや営業や企画の方、そして学生の方や主婦の方です。ソフトウェアに関わることが多くなって Git について学びたいと思っている方や、自分の手でアプリを作れるようになりたいと思って参加される方や、オープンデータやオープンソースに参加してみたいと思っている方が多く参加してくださっています。

2015年にも日本だけで複数回このイベントを行っています。

東京

f:id:ikeike443:20160424102732j:plain

f:id:ikeike443:20150903222741j:plain

この2つの写真は昨夏に東京で開催した時の様子です。

github.com

このようにブログで告知したりしています。

umi-uyura.hatenablog.com

この時に参加された方のブログです。

神戸

f:id:ikeike443:20151214214354j:plain

これは12月に神戸で開催した時の写真です。

patchwork-kobe.peatix.com

こんな風にブログではないところで告知することもあります。

japan.cnet.com qiita.com

神戸に参加された方のブログや、ニュース記事です。

京都

f:id:ikeike443:20151216192942j:plain

12月には京都でも開催しました。

patchwork.doorkeeper.jp

京都の時は Doorkeeper で告知しました。

ふたたび東京

f:id:ikeike443:20151219110510j:plain

12月には再度東京でも開催しました。

まとめ

ということで、この Git-it というアプリの位置づけと、関係する Patchwork というイベントについてご紹介しました。GitHub がどうしてこんなイベントをやっているのかについては、次の記事も参考にしてください。

thinkit.co.jp

Git-it は学習には良いツールなので、ぜひ皆さんも使ってみてください。そしてよかったら次回の Patchwork にメンターとして参加いただけると幸いです。

*1:ちなみに日本語化は私がやっています。

デモやプレゼンをするときに使っているツール

僕はいまソリューションエンジニアというロールで、お客さん先で GitHub や DevOps(バズワード)的なツールのデモをやったり、セミナーやカンファレンスでトークすることが多いのですが、デモやプレゼンをするのに自分が使っているツールをまとめておくと誰かがもっといいものを教えてくれるかもしれないと思い、ここに書いておくことにしました。

別のアカウントを作る

まず最初にやってるのがこれで、Mac上に、普段使いとは別のデモ用アカウントというのを作っています。デモやプレゼン中にFacebookのメッセージが飛んできたり、Slack上のふざけた投稿とかが出てきて場を凍らせないようにするためですw

共有したいファイル(VMのイメージとか、プレゼン資料とか)は /Users/Shared/ 以下に置いています。ものによっては Dropbox を使って共有しているものもあるけど。Dropbox を使う場合は、デモ用アカウントのほうでは一部のフォルダだけを同期対象にしておくことで、同期でふんづまってしぬことを避けています。

デモ用アカウントの方は壁紙とかも気を使って、明るいものを使っています。具体的には下記の壁紙を使っています。

https://enterprise.github.com/assets/aws/jetpack-octocat-clouds-11760c12e5f33fb4ecec2ce20b894461.jpg

Mousepose

Mousepose というツールがあって、これを使うとマウスポインタの周りに人の注目が集まるようなエフェクトを掛けたりとか、マウスクリックを可視化したり、キーボード入力中にキーボードを入力していることを視覚的に分からせたりすることができます。 www.boinx.com

これはすごく便利で、これなしではデモンストレーションができないと言ってもいいくらいです。どんなものかは下記で動画が見られるので参考にしてください。

https://www.boinx.com/mousepose/inaction/

Keeping You Awake

これは Mac が自動的にスリープに入ってしまうのを防ぐツールです。

普段は10分位でスリープに入るようにしているのですが、プレゼンやデモの最中には、画面を静止した状態で10分以上議論したりすることも多いですよね。そういう時に不意にスリープに入らないようにできます。

github.com

Divvy

Divvy はウィンドウを素早く任意のサイズにリサイズできるツールです。ショートカットの割当もできるので、素早くウィンドウを2分割、3分割、4分割表示にするみたいな芸当が可能になります。

ブラウザを2つ同時に開いて比較してみせる用途などに使えます。似た機能をもつソフトは他にもありますが、これが一番使いやすいんじゃないかなあと思います。El Capitan の標準機能では満足できない方におすすめ。

mizage.com

Monosnap

自分はプレゼンで動画を多用するのですが、Monosnapは動画を簡単に作るのにも使えます。キャプションなども付加できるし、アニメGifにもできます。スクリーンショットを撮るにも便利です。

www.monosnap.com


こんなところですかね。ほとんど有償ですが、できることから考えるとどれもとてもお買い得です。

第一回 GitHub オフィスアワーをやります

eventdots.jp

渋谷のdotsさんで、4月13日に、こんなイベントをやります。イベントと言ってもトークやLTがあるわけではなく、GitHubberが机に座っているので気軽に来てもらって、聞きたいことを何でも聞いてもらう、という趣旨のものです。一応今回は予約制にしているので、リンク先から申し込みしてください。

内容は何でもよくて、普段僕らがどういうふうに働いているのか、みたいな話でも、企業に導入するにはどうしたらいいのか、とかでもいいです。CIやCDの実施について相談があれば、それもお答えできると思います。

本当になんでもいいので、気軽に来てくれると嬉しいです。当日は日本から5,6人、オーストラリアから2人ほど参加する予定です!

ThinkITで連載を始めました

GitHubについて機能や使い方、意外と知られてないことなど様々扱っていきたいと思います。日本語の記事がないために知られていない機能も多くありますので、少しでも日本の皆さんがGitHubを理解する助けになればと思います!

第一回の記事は下記からどうぞ! thinkit.co.jp

PayPal Tech Meetup #1 でちょっとしゃべりました

eventdots.jp

プラットフォームというテーマで、ということだったので、こんな感じのことを喋りました。

HeavenとかJankyとか、もう結構前からあるけど、この辺の話とかデモとかニーズがあればまたどこかで詳しくしゃべろうと思ってます。