OthloBlog - オスロブログ -

名古屋のIT系学生コミュニティOthloTechのブログです。

サークルの名刺を作った話

こんにちは!OthloTechのあすかです。

年末頃から作りたいと思いつつ後回しにしていたサークルの名刺がやっと完成しました。

完成した名刺

名刺最終形態 こちらが完成した名刺です。 (QRコードとホームページは4月までに完成させる予定なので、今は何も無い状態です…すみません。)

完成までに1週間くらいかかりました。

名刺完成までの流れとかかった時間

  1. 名刺作りに必要なデザインの基礎を勉強(5日間くらい)
  2. 他人の名刺を参考にする(半日)
  3. illustratorで名刺を作って完成!(1日)

1. 名刺作りに必要なデザインの基礎を勉強

アルバイトやハッカソンなどでデザイナーとしてものづくりしたことはあるものの、きちんとしたデザインの基礎やルールを学んだことがなかったので、そこら辺を勉強することから始めました。

ノンデザイナーズ・デザインブック [第4版]

ノンデザイナーズ・デザインブック [第4版]

いろんなブログやSNSでおすすめされていたため、「ノンデザイナーズ・デザインブック」を読んで勉強することにしました。

  • 同じ要素は近づけてグループ化する
  • ベースラインを作って、それに沿って文字や図を揃える
  • 大切な要素は太字にしたり、大きさを変えたりして目立たせる

本から学んだこれらのことを意識して作っていくことにしました。

2. 他人の名刺を参考にする

実際に頂いた名刺や名刺のテンプレートを見て、良いと思った名刺の特徴を洗い出しました。

  • 文字が大きすぎない(6px~14pxくらい)
  • 使われている色が決まっている(多くても3~4色)
  • どの要素が大切なのか伝わってくる

1で学んだデザインのルールに気を配りながら作っていけば良い感じのものが作れそうな気がしてきました!早速作っていきます。

3.illustratorで名刺を作る

名刺の構成は 表面:個人のプロフィール、裏面:サークルの情報といった感じで作っていくことになりました。

そこからデザインのルールや良い名刺の特徴などを気にしながらイラレをぽちぽち。

ガイドを引いて、文字書いて、いろいろ装飾したら・・・ 名刺完成 完成!!

完成品に対する感想

サークルのメンバーや友達に完成した名刺を見せて感想や改善点を教えてもらいました。

他の人からの感想

  • メールアドレスにもアイコンが欲しい
  • 団体紹介が右にはみ出てて気になる、行間詰めてみては?
  • 余白が多い気がする、ロゴもうちょっと大きくしてほしい
  • 線の付け方が好き、かわいい
  • オレンジ1色に絞ってあって綺麗

他にもあった気がしますが、まとめるとこんな感じの感想をいただきました! 指摘されたところは全部直しましたが、ロゴの大きさはガイドに沿わせていたので変えませんでした。

修正したものが冒頭に載せたものになります。 まだまだ改善点はあると思いますが、とりあえず今回は一旦完成ということにしました。

感想

ロゴがグラデーションだったので、思い切って1色にするまでデザインの構想が全く思いつきませんでした(笑)

作って完成したときの喜びも大きかったのですが、完成したものを人に見てもらって感想をもらったときの納得感や達成感は比べ物にならないくらい大きかったです。嬉しすぎて部屋の中で走り回っちゃいました。

グッズらしいグッズを初めて作ったので、実際に手元に届くのが楽しみです。 ただ、実物は色味が違ってくることがあると聞いて若干びびっています…。

次回以降、名刺を作るときにはもっと遊び心のあるデザインで名刺を作ってみたいです。 ありがとうございました。

DroidKaigi 2018に参加してきた。

OthloTechのしゅーぞーです。 2月8日に新宿で開催されたDroidKaigiに参加してきました。 正直、自分のしょぼい技術力で参加することが不安だったのですが、
行って死ぬわけでもないので、腹くくって行ってきました。(平日だったので学校はご臨終してもらいました。)

いくつかのセッションを簡単にレポートします。

Welcomeトーク

DroidKaigi代表の日高さんからの挨拶。今年のDroidKaigiの参加者は去年からなんと+200人の1000人の規模に。
ここに集まった人たち皆Androidデベロッパなんだと、考えるとそれだけでなんか熱いです。
また、ここでKotlinスタートブックの著者にしてKotlinエバンジェリスト(自称)の長澤 太郎さんより重大発表が。
なんと、Kotlinのカンファレンスを日本で開催するようです!時期は2018年のQ4!!(のっけからもうKotlin感ハンパない)

Kotlinアンチパターン

www.slideshare.net

Welcomeトークの直後にホールで行われたため、参加者がほぼ全員聴講するセッションでした。そのテーマが「Kotlin」であることは前回のGoogle I/Oを境に急速に浸透している状況が実感できます。
発表者のNaoto Nakazatoさんはリクルートライフスタイルに所属していて「ホットペッパービューティ」の開発メンバだそうです。

・lateinit変数の初期化はonCrate()やonCrateView()などのできるだけ早いタイミングで行うべき。(UninitializedPropertyAccessExceptionを誘発してしまうため)
遅いタイミングで初期化される場合はスコープを狭めるなど設計を工夫する必要がありそう。

・apply内ではプロパティアクセス形式は使わず、setText()などの通常メソッドを使う。alsoを利用するのが最も望ましい。
intellijの補完機能はkotlinの場合プロパティ形式で補完されてしまうので、通常のメソッド形式だと入力がめんどくさいですね...

・Nullableをnon-nullにするために無理に無効な値を入れるのは避ける。

・カスタムゲッターで重い処理をしない。気軽に呼び出してしまし知らず知らずのうちに計算量が増えてしまう。
プロパティを使うKotlinは特にですが、他の言語にも同様のことが言えると思います。

Androidアプリの中を覗いてみよう

APKをリバースエンジニアリングしてみようって内容でした。
かなり簡単にソースまでたどり着けてしまうので作る側は見られるつもり作った方が良いとのこと。
また、少し前にKotlinで開発された初の不正アプリを確認というニュースがトレンドマイクロからありました。あれはインポートされているライブラリからKotlinと判明したようです。
この時自分も「デコンパイルしてもJavaになるだけでは...? なぜKotlinとわかったのだろう?」と不思議だったので、ここでその疑問が解決されるとは...

実例で理解するMaterial Design Animation

speakerdeck.com

Wantedly Peopleを題材に、shared element transitionなどのGUI部の実装についての解説でした。
アニメーションは取り敢えずつけてみて、デザイナーさんに外してと言われた外すくらいの気持ちで実装してみる。そうすると、デザイナーさんも こんなふうに実装できるんだ、とイメージが付くのでコミュニケーションにもなる。
また、考え方として、
・一旦雑につくる(取り敢えず作る)
・騙すように考える
・真似する
・あきらめない
が重要とのことでした。

Androidで始めるデザインスプリント

speakerdeck.com

デザインスプリントとはGoogleが提唱するベンチャー向けプロダクト開発のフレームワークで(UIとかグラフィックとかそういうデザインじゃないよ!)「理解、発散、決定、施策、検証」を5ステップを5日間で行う。短期間で個人作業と共同作業を交互に繰り返すことで尖ったアイデアを求める。
ルールとして、
・メンバ全員で参加する。
 これは重要で、意思決定者も参加してもらう必要がある。
・他人を遮って喋らない。
 喋りすぎる人には何か物(ボールとか)を持たせて、持っているときだけ喋るようにさせる。
・時間は延長なし。
スマホやPCで通常の業務など他事は禁止。
これらの最大の目的は皆が居心地よく過ごすため。

デザインスプリントを導入すべきでない場合
・厳密な調査が必要な件
・目的が明確に定まっているチーム
などは向かないとのこと。

Android ThingsとFirebaseで始めるホームセキュリティ

speakerdeck.com

タイトル通りAndroidThingsでIOTなホームセキュリティを作成したレポートでした。
・LinkingデバイスとAndroidThingsで扉の開閉など検知してスマホに通知が行くようなものを作ったけど、自分が帰ってきたときにまでPush通知が来て鬱陶しい。
・エアコンを赤外線で操作しようとしたけどLinuxではないのでLIRCを利用できなくて困った。
・USBのwebカムを利用しようとしたがAndroidThingsでは純正カメラしかサポートしていなかった。
などなど、実際にホームセキュリティを作ってみてリアルに発生した問題点などを聞くことが出来て、自分も挑戦してみたくなるようなセッションでした。

企業ブース

Google (AndroidThings)
展示してあったのはRaspberryPiかと思いきや「NXP Pico」というボード。
ラズパイより拡張性が高く、またUSB-TypeCで直接ADB接続することも出来るので、ラズパイみたいにWifiに繋いで、IP調べて...という手間も不要。Bluetoothアンテナも増設できるらしいので、ラズパイ(onAndroidThings)の不安定BLEともおさらばできそう。
ただ残念ながらこのボードまだ、秋月にも千石にもSwitchサイエンスにも売ってないとのこと(アキバの主要店舗にないなんて...)
あとエンジニアの方が「Kotlinでハード制御できるなんてとっても気持ちいよね!」と仰っていたように、正にそれもAndroidThingsのメリットだと思います。

リクルート
ホットペッパービューティー」のソースコード全公開
ソースコードはフルKotlinで、機能追加のタイミングではなく全部一気に移行したそうです。この時に得られたノウハウが一番最初のセッション「Kotlinアンチパターン」に繋がっているとのこと。
プログラム側がKotlinで記述されているのに対してXML側はLinearLayoutやRelativeLayoutなど初期のビューグループが多かったのは以外でした。また、Layoutファイルの量が見たこともないほど膨大なことにも驚きました。実際のプロダクトのソースコードを見せていただけることなんてそうそうないので希少な経験が出来たと思います。

DeNA
右上のアンケート... 何やら文鎮持ち歩いてる人いっぱいいますねー。 *この写真は文鎮で撮りました。
検証用端末に2年以上前の端末(Nexus)を使わなくてならない状況は絶対おかしいです。右下のアンケートからは日本のAndroidデベロッパの悲鳴が聞こえてくるようです。Googleさん何とかしてください、お願いします。

アフターパーティ

お酒飲みました。乾杯のときは既に3杯目でした...。

Androidだからお菓子?

例のハンバーガー...!

こんな規模の懇親会は初めてでした!
最近参加しているイベントは学生限定でそれも知り合いがある程度いるものばかり。誰も知らない、相手が何者かわからない状態で話すという状況は久しぶりだったので、少し緊張してたかも...。

アフターパーティの後もエンジニアさん達の飲み会に勝手について行って ごちそうになりました... とても楽しかったです。ありがとうございました。

DroidKaigiに参加してみて

・Kotlin
 想像以上にKotlinだった。圧倒的なKotlin感。この二日間でJavaほんとにちょっとしか見てない。Androidの表舞台からJavaが消えるのは考えているよりずっと早そう。

・AndroidThings
 ムーブメントが起きているわけでなく、Googleが強くPushしている印象です。正直これから流行るかと言われたら微妙な気がします。単純にハード(ラズパイ)を制御するだけならPythonの方がよっぽど楽に扱うことが出来ますし。
AndroidThingsのメリットは
GUIが必要な場面。(Androidのリソースを活かしてGUIを実装できるメリットは非常に大きいと思います。)
Androidデベロッパが楽に開発できる。(Kotlin使える)
Android向けSDKやライブラリなどを使うことができる。
の三点だと思います。IoTにおいて条件が合えばメリット十分あると思いますが、どちらかと言えばニッチなのではないでしょうか。

・感想
めちゃくちゃ楽しかったです。でも、やっぱり技術力足りなかったです。セッション中話ついていけなくなる場面も割とありました。それに気づけたこと含めて行ったことは大きな意義があったと思います。
あと、前日そわそわして寝つけずでセッション中居眠りしてしまいました。ここで懺悔します...。

名古屋のおすすめイベント会場6選

こんにちは。はせあきです。 この記事は、OthloTech Advent Calendar 2017 2日目の記事として書かれています。

さて、イベントを開催すると決めてから、たいてい最初に困るのが、イベント開催する会場探しです。 広さや利用料はもちろん、Wi-Fiなどの設備など色々考えなくてはいけなくて大変です。

OthloTechでは、2016年の3月に設立されて以降、毎月1回以上のイベントを開催しています。そこで、いままでOthloTechで利用したことのある会場、6つを紹介します。 ちなみに、OthloTechの過去のイベントは、こちら


1. 名城大学 Shake

Wi-Fi: × 電源: ○ 人数: 〜30人 料金: 無料
https://www.meijo-u.ac.jp/social/shake/

名城大学ナゴヤドーム前キャンパス内のスペースです。誰でも自由に使うことができます。 おしゃれで広くて無料なのでよく使わせていただいています。
共用スペースなので、貸し切りで利用するには予約が必要です。また、予約にはパートナーシップ団体への申請が必要です。 f:id:othlotech:20171202172302j:plain


2. 株式会社misoca

Wi-Fi: ○ 電源: ○ 人数: 〜25人 料金: 無料

名古屋駅近くにある、株式会社misocaさんのオフィスのセミナールームです。 もちろん、オフィスなので、申し込めば必ずしも使えるというわけではありませんが、OthloTechでも何度か利用させていただいています。 IT関連技術、話題に関する勉強会/イベントの開催を想定しているようです。

詳しくは以下のリンクから↓
セミナールームお貸しします - Misoca開発ブログ

f:id:othlotech:20171202174813j:plain


3. ベースキャンプ名古屋

Wi-Fi: ○ 電源: ○ 人数: 〜24人 料金: 1,000×人数
https://basecamp-nagoya.jp/

名古屋駅近くにあるコワーキングスペースです。いろいろな勉強会が行われています。
設備が良くて、OthloTechでも何度か利用させていただいています。 ベースキャンプ名古屋では、無料勉強会支援制度というものがあって、有志で開催される勉強会の場合にはビジター料金(1,000円×人数)だけで利用することができます。

詳しくは以下のリンクから↓
無料勉強会を支援しています! | サービス | ベースキャンプ名古屋 - コワーキングスペース

f:id:othlotech:20171202172417j:plain


4. sharebase.InC

Wi-Fi: ○ 電源: ○ 人数: 〜20人 料金: 1500円/時間〜
http://sharebaseinc.com/

伏見にあるコワーキングスペースです。 貸し切りでの利用はできないのですが、かなり自由な環境でテーブルの位置も変えられますし、プロジェクタやホワイトボードも自由に使うことができます。 料金は、8人がけのテーブル1つにつき、1時間1500円です。

f:id:othlotech:20171202175436j:plain


5. LIB SPACE

Wi-Fi: ○ 電源: ○ 人数: 〜25人 料金: 5,400円/1時間(土日祝) https://www.lib-space.com/

栄のレンタルスペースです。とてもおしゃれです。 ケータリングもありますし、ゴミも回収してくれて(有料)とてもイベントが開催しやすかったです。 f:id:othlotech:20171202175533j:plain


6. NAYUTA BLD

Wi-Fi: ○ 電源: ○ 人数: 〜20人 料金: 3,500円/1時間 https://nayuta-bld.com/event-space/about.html

丸の内のレンタルオフィスのイベントスペースです。 久屋大通駅から徒歩3分と、駅チカで良いです。こちらもゴミの処分(有料)をしていただけます。

f:id:othlotech:20171202180522j:plain

チーム開発をしてみてわかったこと

f:id:othlotech:20171028203444j:plain この記事は OthloTech Advent Calendar 2017 1日目の記事になります。

どうも、よしかわ(@yoshikawataiki)です。 拙い文章ですが、最後まで読んでいただければ光栄です。

はじめに

チーム開発をしたことのない人、始めたい人に向けて書いていきます。
チーム開発をして、良かったこと、悪かったことをまとめていきたいと思います。

チーム開発のはじまり

10月7日、8日にOthloHack 2017が開催されました。
OthloTech運営メンバーの僕には、もう一つの闘いがあったのです。
僕たちは大学祭の行事である工科展という研究成果物の発表会に参加しました。今回が初めてのチーム開発なおかつ、発表会でした。

今回はその闘いの全てを綴っていきたいと思います。

メンバーについて

当初は、6人メンバーでした。ですが、一人は学校の勉強が忙しいのでやめる。もう一人は、研究室のお手伝いをしたいのでやめる。 最後には、4人メンバーで開発をすることになりました。メンバー少なすぎだろ
役割分担は、画像処理、Web、インフラ。これ4人でやることじゃない
2人、1人、1人の編成で開発をしました。

何を作ろうか?

メンバーでやりたいことがまとまるのに時間がかかりました。
日常の不満点を解消したい、試験を機械に解かせよう!などの意見がぶつかり合って、やりたいことを一つにまとめました!
モチベーションを保てるように、みんなのやりたいことを散りばめたアプリを!

栄養管理アプリを作ろう!

僕たちは、学生の食事の偏りを少しでもなくそう、一人暮らしや学食を利用している人の食事バランスをより良くしようと試みました。
学生に継続して使ってもらうように、手軽なアプリケーションに!

やったこと

料理の区別をするため、画像処理(OpenCV
開発の統一化を図るため、GitHubの利用、仮想環境(Vagrant)の利用
アプリケーションの開発は、CakePHPMariaDBをベースに行う

アプリの内容

内容としては、写真を撮ってWebに投稿するだけで、その食事の栄養価をグラフなどで分かりやすく栄養管理するものです。
SNSに料理の画像を投稿する感覚で自分の栄養管理を!」をコンセプトにしました。 f:id:othlotech:20171201092613p:plainf:id:othlotech:20171201092619p:plain

失敗談

ついに開発も終盤。ところがどっこい!ここでエラーを吐く!!
僕は、画像処理でエラーが起こっていることに気づき、画像処理班に怒ってしまいました。
怒ることが一番ダメ
画像処理班も僕に対して、不満をぶちまけました。
開発するムードではない空間になってしまいました。

どうすればよかったか

メンバーを励まして、一緒にデバッグをすべきだったんです。
一つのプロダクトを完成させたい気持ちはみんな一緒です。
同じ意志をもっている者同士、ダメなところは「ダメ!」良いところは「良い!」と言ってあげられる優しさが大事です。
相手の意見を尊重しつつ、自分の意見を言ってみましょう!価値観は人によって違うので、様々なアプローチでより良くなることがあります。

怒ったことをメンバーに謝り、一緒にデバッグ作業をして、悩みながらも解決することができました!
一緒の釜の飯を食べるのも一つの手段でした。悪いムードのままだとダメです!
楽しく開発できるように努めましょう!

デメリット

自分が(相手が)やった内容の共有が難しい。
レビュー(確認)に時間がかかることがある。
互いの開発時間が異なることがある。
自分(相手)の作業が滞って開発スピードが下がる。

メリット

イデア数の多さ。
開発スピードが早い。
大規模なプロダクトの作成ができる。
困ったことを共有して問題解決できる。
人数が多いため、デバッグが早い。

まとめ

チーム開発をして、メンバーの強みをプロダクトに落とし込むことができました。
僕一人の力で大規模なアプリケーションを一から作るには、時間が足りません。
しかし、チームでなら、一人では出来ないことを可能にする力があります!
互いの良いところを認め合い、出来ることは最大限やって、出来ないところはやってもらう!
相手を信じて、自分がやることを真剣に取り組む!これにつきます。 以上が、今回のチーム開発で僕が思ったことです。
ここまで読んで頂き、ありがとうございました!

webサービスの企画とデザインの間にやるべき4つのこと

どーも!OthloTechのちーずです🧀
最近、OthloEventに参加してくれる女の子が増えてきて密かに喜んでいます。
私が参加者側だった時代は、女の子が全然いなくて寂しい思いをしていたので。笑
これからも男女隔たりなくいろんな人が参加してくれたら良いな〜って思っています!

今回は、開発よりではなくてUXデザインよりのお話をしようと思います。
webサービスを自分で開発していくにあたって、企画の土台がしっかりしていないとデザインの一貫性がなくなってしまったりせっかく作ったのに全然使われないサービスになってしまう可能性があるでしょう。
そうならないために企画とデザインの間にやるべき4つのことを説明していきます。
(「名古屋の学生団体を紹介するwebサービス」という企画例をもとに話をすすめていきます。)

記事のあらまし

  • webサービスを企画する学生をターゲットとしてサービスの企画からデザインの間にすべきことを順おって書いてきます。
  • 5W1Hでユーザー体験を洗い出す -> ターゲット(ターゲットユーザー / ペルソナ) -> 構造化シナリオ法 -> コンセプト
続きを読む

代表交代のお知らせ

こんにちは!はせあきです。

代表交代のお知らせ

ぽこひでが今年度で卒業するため、10月9日より、愛知工業大学2年のはせあきがOthloTech運営の代表を務めさせていただくことになりました。
まだまだ未熟ではありますが、よろしくお願いします。

OthloTechでは、設立から約1年半の間、ぽこひでが代表を務めてきました。

ひでさん(ぽこひで)には、OthloTechを立ち上げた ことはもちろん、60名近くの方に参加していただいた東海最大級の学生限定ハッカソン「OthloHack2017」を開催するなどOthloTechを成長させ、名古屋を盛り上げていただきました。

本当にありがとうございました。


今後のOthloTechの活動

OthloTechでは、月に1、2回イベントを名古屋で開催していて、その参加者数は合計で600名、 ユニークで250名を超えました。ありがとうございます。

今後も変わらず、継続的にイベントを開催して、スキルアップできる場、大学の垣根を超えて 学生同士でつながれる場 を提供し続けていきたいと考えています。

今日までOthloTechが運営できているのは、本当に多くの方のご協力のおかげであると感じています。 運営体制は変わりますが、今後ともお力添え頂ますよう、お願いいたします。


次回のイベントのお知らせ

そして早速、次回のイベントのお知らせです。


UX勉強会

11月11日(土)には、株式会社ビズリーチ様のご協力により、UX勉強会を開催します! OthloTech初となるジャンルの勉強会です。ぜひご参加ください! othlotech.connpass.com


クックパッドCTOが語るエンジニアのキャリアについて

平日ですが、11/27(月)18:30からは、クックパッド株式会社執行役CTOの成田さんにお越しいただき、エンジニアの働き方や成田さんのキャリアについて講演いただきます。クックパッドに興味がある方はぜひ! othlotech.connpass.com


LT大会

そして、2017/12/10(日)に、久しぶりのLTイベントを開催します!参加お待ちしております! othlotech.connpass.com

CI環境のススメ -Jenkins-

f:id:othlotech:20170918234143p:plain

おはこんばんちは!そしてはじめまして!
OthloTechに最近参加しました@ジュジュです!
去年までは低レイヤをやってたんですが最近Androidアプリを作り始めたりしています。以後お見知りおきくださいな。
誰か強い人教えてください

さて、今週OthloBlogは自分が担当ということでCI,CDについてお話するとともに、CIツールとして有名なJenkinsの使い方を少し紹介したいなって思っています。

下記URLからダウンロードできますよー
https://jenkins.io/

というわけでさっそく書き始めたいと思います!

CI,CDって何?

まず、こんな疑問を持つ方もいるんじゃないでしょうか。
単語の省略なので英語とその直訳を調べてみました。

CI = Contiuous Integration(継続的インテグレーション)
CD = Contiuous Delivery(継続的デリバリー)

ますます何だこれって感じです。

なんだかよくわからないのでかんたんに説明すると

CI = 自動でビルドやらテストやらをやってくれる環境
CD = 自動でデプロイしてくれる環境

こんな認識でもいいんじゃないでしょうか。ともに開発サイクルの短いアジャイル開発なんかでよく使われるようですね。間違っていたらごめんなさい。

そんなの、手元でビルドしてデプロイすれば良くないですか。。。

こんな意見を持った方、もっともだと思います。のでCI,CD環境を作る意味を話していこうと思います。

ソフトウェア開発していてこんな経験ありませんか?

  • チームで利用しているソフトウェアのバージョンが異なりバグる
  • ビルドやテストの通らないプルリクを適当にレビューしてマージしdevelopブランチがバグる
  • 自分の開発してない部分のテストをしたくない
  • デプロイ面倒臭がっていたら開発終盤でバグ祭り

自慢じゃないですが自分はあります
まぁ人間はミスをする生き物でこれを100%防ぐのは不可能です。
そこで

ミスがミスにならない環境を作ろう!
問題にいち早く気づくような環境を作ろう!

と、こんなのがCI,CD環境を作る意義であります。

で、そんなCI,CDを実現するためのツールとして今回紹介するのがJenkinsというわけです。

Jenkinsの機能

Jenkinsは何かをトリガー(きっかけ)としてバッチ処理をしてくれるツールです。WindowsでもLinuxでもMacでもシェルで動作するものであればだいたいなんでもできます。
シェルが使えるならなんかいろんなことさせられそうです。プラグインも豊富に用意されており用意にいろんなことができるようになっています。 本記事では具体的な設定とかではなくJenkinsをつかってどんな面倒臭さを解消できるのかを紹介していきたいと思います。

GitHubのプルリクエストをトリガーにする

Jenkinsをつかうならまず、やってほしいのはこれです。

プルリク手元に引っ張って動作確認するの面倒くさくないですか?

そんな煩わしさ解消できます。
JenkinsにGitHub Pull Request Builderというプラグインを導入するとビルドとテストを自動的にするようにできるんです!これでコードレビューは動作確認をサボっても良くなるかもしれないですね!
しかも、プルリクエストを実際にdevelopやmastarといったブランチとマージしてテストするなんてことも出来ちゃいます。
これでマージしたらあかんかったみたいな事態ともおさらばできますね!

ちなみにテストが成功するとこんな感じになります。

失敗するとこんな感じ。

これなら気づきそうですね。
プルリクのブランチにコミットをプッシュしてもリビルドされるので細かい変更した時のテストも楽ちんです!

特定のブランチへのpushをトリガーにする

次に紹介する機能です。

いちいちデプロイするの面倒くさくないですか?

masterかdevelopかreleaseか、どれが対象になるかはわかりませんがプルリクがマージされたときに自動でデプロイしてくれれば楽ちんですよね。
デプロイのためのプラグインがあるかどうかは言語とかによる部分がかなり大きいですがだいたいシェル使えば出来ると思うので問題ないでしょう。
検証環境での実際のテストが簡単になりますね!PluginとしてはGit PluginやGitHub Pluginとか使えばかんたんです。

与えられたコードを解析する

これに関しては行き過ぎではあるんですけど

そもそもコードレビュー面倒くさくないですか?

SonarQubeってソフトをJenkinsに登録して動作させればコードの静的解析なんてのもできたりします。バグっぽいところやバグの香りがするところなんかを指摘してくれますよ!Quality Gateってやつを設定すれば評価基準なんかも設定できたりします!動作もプラグインがあるから簡単です。
ちなみにWeb系作ってるとjQueryでバグがたくさんあるって怒られるからあんまり当てにならないかもしれません。
テストと解析による評価基準通れば自動でマージするとかもできますが、頼り過ぎはまだよくなさそうです。時代の進化に期待しましょう!

結果をslackに通知する

個人的には結構大事な機能です。

プルリク投げたときに他の人に伝えるの面倒くさくないですか?

Jenkinsの処理が終わったあとに事前に設定したslackのチャンネルに通知できたりします。テストやビルドが失敗したときだけ通知って形にもできますよ!
これを設定しておけばプルリク投げるたんびにslackでメンションつけてレビューしてーって言わなくてもすむわけですよ。
設定しておくだけでいいのでコミュ障害の僕でも臆さなくてすむわけですね。

終わりに

いかがだったでしょうか?この記事を読んでこのJenkinsってやつなかなか有能な執事さんだなって思っていただけたらとても嬉しいです。
それでは皆さん快適な開発ライフをお過ごしくださいな!