Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Koichi Sasada
committed
Jul 15, 2018
1 parent
46b175f
commit d7b3033
Showing
4 changed files
with
142 additions
and
45 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,47 +1,4 @@ | ||
# Cookpad Ruby Hack Challenge #4 カバレッジ特別回 | ||
# 高専カンファレンス Ruby Hack Challenge - Rails寺子屋特別編 | ||
|
||
# Cookpad Ruby Hack Challenge とは | ||
See https://rails-terakoya.connpass.com/event/88342/ | ||
|
||
クックパッドで Ruby インタプリタを Hack しよう! | ||
|
||
クックパッドをはじめ、多くのウェブアプリケーション開発でプログラミング言語 Ruby が利用されています。Ruby で書かれたプログラムを動かすときは Ruby インタプリタで実行します。 | ||
|
||
Cookpad Ruby Hack Challenge は、この Ruby インタプリタを Hack する方法をお伝えするイベントです。 | ||
|
||
今回は、Ruby インタプリタのカバレッジをお題としたハックイベントになります。 | ||
カバレッジ環境を整えた Ruby コミッタの遠藤が講師を行います。 | ||
ハックネタは思いつかないけど、何かしら Ruby インタプリタを弄ってみたい、パッチを送ってみたい、そんな人にオススメです。 | ||
|
||
# イベント概要 | ||
|
||
4 回目となる今回は、「カバレッジ特別回」と題して、未テストのコードを探す指標「コードカバレッジ」の情報を頼りに Ruby インタプリタのテストを書くというテーマで開催します。Ruby のコードカバレッジの読み方、自分でコードカバレッジを測定する方法、Ruby のテストの書き方などを扱い、書いたテストでコードカバレッジが上昇することを確認するところまでやりましょう。 | ||
|
||
当日は 1 時間程度講義した後、実習とする予定です。これまでの RHC の講義資料([Cookpad Ruby Hack Challenge](https://github.com/ko1/rubyhackchallenge))に基づいて説明するので、この資料に目を通しておくことが望まれますが、必須ではありません。なお、講義資料([(6) コードカバレッジを用いた MRI の品質向上](https://github.com/ko1/rubyhackchallenge/blob/master/JA/6_coverage.md))も、Ruby のコードカバレッジを定期実行で測定したもの([LCOV - code coverage report](https://rubyci.s3.amazonaws.com/debian8-coverage/ruby-trunk/lcov/index.html))も既に公開しています。 | ||
|
||
また、RHC の資料を読んで(カバレッジ以外の)ハックをしたい方も歓迎します(VM に詳しい Ruby コミッタの笹田に質問もできます)。 | ||
|
||
## こんな方に来てほしい | ||
|
||
* Ruby インタプリタの開発に貢献をしてみたい方 | ||
* Ruby インタプリタのソースコードを読み書きするきっかけ・手がかりが欲しい方 | ||
|
||
## 参加要件 | ||
|
||
* Ruby インタプリタのビルドが可能なノートパソコンを当日持ち込める方(弊社からのノートパソコンの貸与は行ないません) | ||
|
||
## スケジュール | ||
|
||
注意:時間等は変わる可能性があります。 | ||
|
||
### 開催前 | ||
|
||
* Gitter を用いたオンライン予習サポート(希望者) | ||
* https://gitter.im/rubyhackchallenge/Lobby | ||
|
||
### 当日(6/23 土) | ||
|
||
* 13:00 オープニング | ||
* 13:10 講義(コードカバレッジの見方、測定方法、テストの書き方など) | ||
* 14:00 実習 | ||
* 16:30 成果発表とまとめ | ||
* 17:00 解散 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
FROM ubuntu:bionic | ||
MAINTAINER Koichi Sasada | ||
|
||
RUN apt update && \ | ||
apt dist-upgrade -y && \ | ||
apt install -y gcc && \ | ||
apt install -y ruby subversion autoconf bison make git && \ | ||
apt install -y libgmp-dev libssl-dev zlib1g-dev libffi-dev libreadline-dev libgdbm-dev && \ | ||
apt install -y vim-tiny gdb && \ | ||
apt install -y sudo && \ | ||
DEBIAN_FRONTEND=noninteractive apt install -y tzdata | ||
|
||
# RUN rm -rf /var/lib/apt/lists/* | ||
|
||
# add user (rubydev, password is also rubydev) | ||
RUN mkdir /home/rubydev && \ | ||
groupadd -g 1000 dev && \ | ||
useradd -g dev -G sudo -s /bin/bash rubydev && \ | ||
echo 'rubydev:rubydev' | chpasswd && \ | ||
chown rubydev /home/rubydev | ||
|
||
# prepare build | ||
RUN sudo -u rubydev sh -c "cd /home/rubydev && mkdir workdir && mkdir workdir/build/ && mkdir workdir/install" | ||
#RUN sudo -u rubydev sh -c "cd /home/rubydev/workdir && git clone https://github.com/ruby/ruby.git" | ||
#RUN sudo -u rubydev sh -c "cd /home/rubydev/workdir/ruby && autoconf" | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,67 @@ | ||
# Cookpad Ruby Hack Challenge #2 | ||
|
||
* 2018/01/29 @ Cookpad Tokyo office | ||
* Event page: https://cookpad.connpass.com/event/74231/ | ||
* hashtag: #cookpad_rhc | ||
|
||
# About the Cookpad Ruby Hack Challenge | ||
|
||
Hack the Ruby interpreter at Cookpad! | ||
|
||
The Programming language Ruby is widely used on web application development. Of course, programs written in Ruby run on Ruby interpreter. | ||
|
||
Cookpad Ruby Hack Challenge (RHC) is a one-day event where we'll teach you how to extend Ruby features, fix bugs, and to improve performance of Ruby. | ||
|
||
The first Ruby Hack Challenge was a great success, but it was offered only in Japanese. This time, the Ruby Hack Challenge will be offered in English (English lecture materials and English announcements) as well as Japanese. | ||
|
||
Lecture materials: https://github.com/ko1/rubyhackchallenge (currently being translating into English!) | ||
|
||
Note that we offer support for English at the event (English lecture materials, announcements and English hacking supports) but we don't restrict our support to English. Japanese language users are also welcome. (in Japanese: イベント自体は英語で行いますが、日本語話者も歓迎します) | ||
|
||
One more note: Koichi and another supporter Endoh-san are not native English speakers. | ||
|
||
# Details | ||
|
||
This event held over 1 day. | ||
|
||
You can choose several options what you want to do. | ||
|
||
* (1) Read the lecture materials at the event and try hacks along with texts. | ||
* (2) Read the lecture materials in advance, and ask us if you have any questions. | ||
* (3) Read the lecture materials in advance, and try advanced hacking with our support. | ||
|
||
Unlike the first RHC, for RHC#2 we don't offer any lessons. We only offer lecture materials and assistants to support attendees. | ||
|
||
|
||
## Requirements | ||
|
||
* You can attend the whole day | ||
* You bring your own laptop which is capable of building Ruby interpreters. | ||
|
||
## Goal with lecture materials | ||
|
||
* You can understand Ruby's source code structures. | ||
* You can build the Ruby interpreter. | ||
* You can modify Ruby interpreter internals. | ||
|
||
## Goal with advanced hacks | ||
|
||
* You can solve unsolved problems. | ||
* You can experience contributing to the Ruby interpreter. | ||
* You can experience participation in the Ruby development community. | ||
|
||
# Schedule | ||
|
||
## 1/29 (Mon) | ||
|
||
* 10:00 Opening | ||
* 10:30 Hack: start | ||
* 12:00 Lunch | ||
* 13:00 Hack: continue | ||
* 18:00 Closing | ||
* 18:30 After party / networking | ||
|
||
## Communication channel | ||
|
||
Feel free to join gitter channel: https://gitter.im/rubyhackchallenge/LobbyEn (English) and https://gitter.im/rubyhackchallenge/Lobby (in Japanese, past RHC attendees are there) | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,47 @@ | ||
# Cookpad Ruby Hack Challenge #4 カバレッジ特別回 | ||
|
||
# Cookpad Ruby Hack Challenge とは | ||
|
||
クックパッドで Ruby インタプリタを Hack しよう! | ||
|
||
クックパッドをはじめ、多くのウェブアプリケーション開発でプログラミング言語 Ruby が利用されています。Ruby で書かれたプログラムを動かすときは Ruby インタプリタで実行します。 | ||
|
||
Cookpad Ruby Hack Challenge は、この Ruby インタプリタを Hack する方法をお伝えするイベントです。 | ||
|
||
今回は、Ruby インタプリタのカバレッジをお題としたハックイベントになります。 | ||
カバレッジ環境を整えた Ruby コミッタの遠藤が講師を行います。 | ||
ハックネタは思いつかないけど、何かしら Ruby インタプリタを弄ってみたい、パッチを送ってみたい、そんな人にオススメです。 | ||
|
||
# イベント概要 | ||
|
||
4 回目となる今回は、「カバレッジ特別回」と題して、未テストのコードを探す指標「コードカバレッジ」の情報を頼りに Ruby インタプリタのテストを書くというテーマで開催します。Ruby のコードカバレッジの読み方、自分でコードカバレッジを測定する方法、Ruby のテストの書き方などを扱い、書いたテストでコードカバレッジが上昇することを確認するところまでやりましょう。 | ||
|
||
当日は 1 時間程度講義した後、実習とする予定です。これまでの RHC の講義資料([Cookpad Ruby Hack Challenge](https://github.com/ko1/rubyhackchallenge))に基づいて説明するので、この資料に目を通しておくことが望まれますが、必須ではありません。なお、講義資料([(6) コードカバレッジを用いた MRI の品質向上](https://github.com/ko1/rubyhackchallenge/blob/master/JA/6_coverage.md))も、Ruby のコードカバレッジを定期実行で測定したもの([LCOV - code coverage report](https://rubyci.s3.amazonaws.com/debian8-coverage/ruby-trunk/lcov/index.html))も既に公開しています。 | ||
|
||
また、RHC の資料を読んで(カバレッジ以外の)ハックをしたい方も歓迎します(VM に詳しい Ruby コミッタの笹田に質問もできます)。 | ||
|
||
## こんな方に来てほしい | ||
|
||
* Ruby インタプリタの開発に貢献をしてみたい方 | ||
* Ruby インタプリタのソースコードを読み書きするきっかけ・手がかりが欲しい方 | ||
|
||
## 参加要件 | ||
|
||
* Ruby インタプリタのビルドが可能なノートパソコンを当日持ち込める方(弊社からのノートパソコンの貸与は行ないません) | ||
|
||
## スケジュール | ||
|
||
注意:時間等は変わる可能性があります。 | ||
|
||
### 開催前 | ||
|
||
* Gitter を用いたオンライン予習サポート(希望者) | ||
* https://gitter.im/rubyhackchallenge/Lobby | ||
|
||
### 当日(6/23 土) | ||
|
||
* 13:00 オープニング | ||
* 13:10 講義(コードカバレッジの見方、測定方法、テストの書き方など) | ||
* 14:00 実習 | ||
* 16:30 成果発表とまとめ | ||
* 17:00 解散 |