Sign in
English
|
日本語
About
Registration
For Attendees
Sponsors
Schedule
2011-07-16(Sat)
Time
Main Hall
Sub Hall
10:00 - 10:30
Open
10:30 - 12:00
Opening
EN
Ruby Ruined My Life.
For the final RubyKaigi, we will discuss how Ruby changes can people's lives for the better and sometimes for worse. The life stories involved will be used as a catalyst for looking at new features and problems in Ruby and Rails, as well as ideas for where Ruby should go for continued success.
Aaron Patterson (tenderlove)
12:00 - 13:30
Lunch
13:30 - 14:30
Announcement
JA
Next version of Ruby 1.8 and 1.9
We will release Ruby 1.9.3 soon. The main topics of 1.9.3 are evaluator, threads and the improvement of the test. We will introduce the release progress of Ruby 1.9.3. We will also show the each topics from corresponding committers. The rest time will be Q&A session to Ruby committers. If you have questions to Ruby developers, please ask us.
CRuby development team
14:30 - 14:40
Break
14:40 - 15:40
JA
Large-scale web service and operations with Ruby
A behind the scenes look at how Ruby is used at COOKPAD Inc. for large-scale development and operations
Yuichi Tateno
EN
Shipping at the Speed of Life
The talk will go into the "Ship It?" culture that's a big part of GitHub. How we use the git scm to help us deploy features fast and respond to problems on the site in a timely fashion.
Corey Donohoe
JA
Ruby, that community and me.
Talk about Ruby and Ruby community from the perspective of Junior High School and High School students and how I saw Ruby communities before I joined the community. Finally speculate why students aren't joining the community and describe why they should join the community. Note for non-Japanese, All slides are written in English so feel free to listening.
Shota Fukumori (sora_h)
JA
The Real-time Profiler for Ruby
We developed a real-time execution profiler for Ruby.This profiler is able to get information associating with context informationand only few overheads. In this presentation, we introduce our profiler, and explain the design and implementation.
Takahiro Sunaga
15:40 - 16:10
Break
16:10 - 17:10
EN
Toggleable Mocks and Testing Strategies in a Service Oriented Architecture
Modern large scale applications often benefit from being composed of multiple smaller applications. This can provide many benefits, but it can often make testing each piece more complex. I will cover a technique we use at Engine Yard to easily test these pieces individually and as a piece of the whole.
Andy Delcambre
JA
Issues of Enterprise Rubyist
Lately “Ruby on Rails” is being adapted in many cases as enterprise solutions. That even includes a case of development matters which major IT service providers deal with. The reason that many companies choose Rails is the expectation toward high productivities and the flexibilities in changing business needs. In many cases of system development project using Rails, however, project management is also the important key to bring success to the project besides the technical viewpoint. In this session, what should be considered to get success in projects will be discussed from both view points of developers and project managers based on a case in Accenture.
Ayumu AIZAWA
JA
Dynamic Component System and Memory Reduction of VM for Embedded Systems
Embedded Systems generally have a small amount of memory and don't accept VMs which consume memory excessively. We investigated this problem from both the application side and the VM side, and solved it by introducing a dynamic component system which enables multiple applications to run in a single VM and optimizing CRuby's data structures related to its interpreter. We confirmed that the memory usage of the optimized VM with the web application framework Sinatra was reduced by 20% compared to CRuby 1.9.2. (This is a cooperation work with Hitachi Solutions, Ltd. Takeshi Kawajiri, who is a engineer of Ruby Center, gives me a lot of useful advice from the view point of a ruby specialist.)
Kiyoshi Ikehara
JA
Lightweight Ruby
We introduce current status of development in Lightweight Ruby and Ruby chip focused on embedded systems.
Koutaro Okabe
Yukihiro Matsumoto
17:10 - 17:20
Break
17:20 - 18:20
JA
How libraries in Japan use Ruby - "Next-L Enju" and "NDL Search"
In 2011, some libraries in Japan introduced "Next-L Enju". It is an open-source library management system built on Ruby on Rails and developed by a community of librarians and researchers. Also it is one of the components of "NDL Search" which is a new library catalog provided by National Diet Library, the largest library in Japan. I'd like to talk about why the libraries choose Ruby, and how they develop the library system that includes several million book records. Next-L Enju: https://github.com/nabeta/next-l NDL Search: http://iss.ndl.go.jp/
Kosuke Tanabe
JA
Critical mission system implemented in Ruby
In this lecture, I will introduce the effective points and the problems which I'd been in the face of, while implementing mission-critical system in Ruby.
MayumiI EMORI(emorima)
JA
Parallel world of CRuby's GC
CRuby adopts Mark Sweep GC Algorithm now. In my presentation, I talk about Parallel Mark Algorithm that improves Mark. Parallel mark divides a mark phase into a plurality of threads and it parallely execute. Recentlly, 8 core computers are not rare. In such an enviroment, GC will be speed up, if it distribute tasks to each core. In my presentation, I talk Parallel Mark Algorithm and Implemention, Resutl of benchmark.
nari
JA
Ruby Interpreters in the Parallel Worlds
If you live in a parallel world, it is possible that there is another version of Ruby interpreter. In this presentation, I will show the such "different Ruby interpreters". Moreover, I will introduce the suitable world, and Ruby interpreter for me.
Koichi Sasada
18:20 - 20:00
Break
20:00 - 21:30
YamiRubyKaigi: Smells Like Teenage Spirit
Yet Another RubyKaigi for Mr./Ms. Nobody. http://yami.rubykaigi.org/2011
2011-07-17(Sun)
Time
Main Hall
Sub Hall
09:30 - 09:50
Open
09:50 - 10:50
JA
How to make secure program
TBD
Kazuhiro NISHIYAMA
JA
The best practice of building mobile website with jpmobile
Jpmobile is a most famus Rails plugin for Japanese Mobile Phone. I will introduce the best practice for the construction of the mobile website. In this practice, I will introduce jpmobile settings and the testing method with jpmobile.
Shin-ichiro OGAWA
EN
Actors on stage
In view of the recent hardware developments , programmers should start focusing on enabling their programs for parallel execution. The actor model is one promising model to handle concurrency and parallellism easily. This talk discusses several options to use actors in Ruby.
Elise Huard
JA
Drip: Persistent tuple space and stream.
It's been several years since I last published `Rinda::TupleSpace`, the persistence layer on top of Rinda, the multi-process coordination library. In this talk I will reexamine the pros and cons of Rinda and introduce the next generation streaming-orientated multi-process synchronisation library called "Drip".
Masatoshi SEKI
10:50 - 11:00
Break
11:00 - 12:00
JA
Ruby on Rails development that doesn't hurt
Rails seems to be super easy and fun at first. Well, actually it is, but I suspect you may face some difficulties and lose your passion after a while, because: * Rails requires you to have wide and deep technical knowledge before and underneath the app development * Rails requires you to memorize tons of conventions, APIs, commands, plugins, etc. * Everyone writes about Rails, but 99% of the material are just rubbish * Rails flies like an arrow. It's hard to keep you and your apps up-to-date So, here are some hints and tips to get over these problems and make your Rails life happy, worthy and sustainable. * This talk is not for Rails guru
Akira Matsuda
JA
Road to the Ruby Master
How to be a Ruby master (= who can make anything he/she wants with Ruby)
Yutaka Hara
EN
Writing Friendly Libraries
Writing Friendly Libraries will cover how to write libraries that are easy to use, extend and maintain. My talk will cover techniques such as using plugin systems for extensibility and adding optional features. I will also cover testing strategies and other tools to ease maintenance of software.
Eric Hodel
EN
Use rails_best_practices to refactor your rails codes
Using rails_best_practices gem can help you find bad smells in your rails codes, and tells you how to improve the codes quality. I will give you an in-depth exploration of rails_best_practices
Richard Huang
12:00 - 13:30
Lunch
13:30 - 14:30
EN
BDD style Unit Testing
RSpec is a Behaviour-Driven Development tool for Ruby programmers, and it's popular in many Ruby and Rails projects. MiniTest is the new standard unit testing framework supplied with Ruby 1.9, and it also includes a compact BDD DSL syntax like RSpec. Both of them provide readable and expressive syntax to write test/spec code. This talk will introduce their BDD syntax and its mocks feature. More important, how do we use it to write good unit testing.
Wen-Tien Chang
JA
5 years know-how of RSpec driven Rails app. development.
I talk about know-how of using RSpec in Rails project. Currently, it has became good idea that a project, developing with Rails, use RSpec(or so) and try TDD. However there is no silver bullet to gain testability of application and/or maitenancability of tests. I will talk about such know-how acquired through 5 years real world Rails project.
Kyosuke MOROHASHI
JA
Improvement of ThreadGroup class and its usage
ThreadGroup class, which is one of the embedded classes of Ruby, is useful for managing sets of threads. Although a ThreadGroup object should have advantages over a simple list of threads, it hasn't had enough methods to do that. In this presentation, I'll introduce details and intentions of improving ThreadGroup with some usages.
Hidetoshi NAGAI
JA
How to read JIS X 3017
JIS X 3017 is the Japanese national standard of the Ruby programming language. This talk explains why the standard and Ruby itself are so complex.
Shugo Maeda
14:30 - 14:40
Break
14:40 - 15:40
EN
Efficient JavaScript integration testing with Ruby and V8 engine.
This presentation will introduce you V8 JavaScript engine and Mike - the headless browser based on it. V8 is open source, high performance JavaScript engine written in C++, used i.a. by Google Chrome and Node.JS. V8 enables any C/C++ application to expose its own objects and functions to JavaScript code. Thanks to this we could build our own, efficient, headless browser for testing purposes. This presentation for sure will change your life by showing you how easy and fast can be integration testing thanks to V8 and Mike goodies.
Chris Kowalik
EN
Advancing Net::HTTP
Net::HTTP is a great Ruby HTTP library. In this talk, I will cover some improvements I have made to Net::HTTP in order to add support for nonblocking reads, even in HTTP requests that use gzip, Transfer-Encoding: Chunked and keepalive. I will also talk about how nonblocking IO and network libraries can be used with a pure-Ruby reactor to enable scoped parallel IO in a single thread, and how we can improve existing Ruby network libraries to enable async operation.
Yehuda Katz
EN
Java in Ruby: Scripting Java in JRuby
One major benefit of JRuby is the ability to import Java classes and then use them as if they were POROs (Plain Old Ruby Objects). This feature makes Java fun again. You can pull in legacy code and sculpt an API which fits nicely into your Ruby code. You can access novel or robust Java libraries to bridge a gap in existing Ruby libraries. This talk will: * Show basics of interacting with Java classes from within Ruby * Implementing Java interfaces with Ruby blocks and classes * Point out Gotchas * Give style hints to make Java APIs fit better into the Ruby way By the end of this talk you should be able to effectively consume Java libraries in Ruby in a way that is satisfying and useful.
Thomas E Enebo
Koichiro Ohba
JA
MacRuby on Rails
MacRuby is an implementation of Ruby 1.9 that is directly on top of Mac OS X core technologies. Recently, MacRuby has become viable as a tool for developing useful desktop applications for Mac OS X. However, as of March 2011, MacRuby is still missing some functionality that is present in cRuby. Therefore, MacRuby is not able to run Ruby on Rails. In my presentation, I will explain how I modified MacRuby to make it a suitable foundation for running Rails. I would also like to explain some of technical intricacies that I discovered along the way.
Kouji Takao
15:40 - 16:10
Break
16:10 - 17:10
JA
The Gate
DISCLAIMER: THIS TALK WILL BE NON-TECHNICAL RUBY TOPICS AND VERY SPECIFIC TO THE CONTEXT IN JAPAN.if you are non-Japanese Rubyist, you would be better off to go to the sub hall in this slot.they will be give a technical talk, so it's okay if you cannot understand Japanese well :) why don't they give talks in main hall instead of him? -- hmm, he, kakutani is kinda "charismatic" presentation guy in Ruby community in Japan(hehe). Anyway, he'll talk about Dave "pragmatic" Thomas and Ruby Community in Japan. What should we do with the world without RubyKaigi(as we know it)?
Kakutani Shintaro
JA
Method Shelters : Another Way to Resolve Class Extension Conflicts
"Open Class" instroduces huge flexibility into Ruby, but it also introducse risk of class extension conflicts. To address this problem, some module systems including Classboxes and Refinements were proposed. However, these existing systems have some problems or limitations. This presentation proposes new module system named "Method Shelters" and shows difference between Method Shelters and other systems.
Shumpei Akai
JA
CRuby lock design improvement and why it sucks
Many people believe Ruby 1.9 is faster than 1.8. But it's not always true. More unfortunately, recent cpu improvement bring some new issue to CRuby lock implementation. This presentation try to figure the issue of a lock design in CRuby and talk an advance plan.
KOSAKI Motohiro
17:10 - 17:20
Break
17:20 - 18:30
Lightning talks 1
Lightning Talks are 11 x 5minutes talk in a 60 minutes time slot
18:30 - 20:00
Transit time
20:00 - 22:00
Party at Ikebukuro (door open 19:30)
2011-07-18(Mon)
Time
Main Hall
Sub Hall
09:30 - 09:50
Open
09:50 - 10:50
JA
Ruby-no-kai Itself and Some Related Projects.
(To Be Announced)
Masayoshi Takahashi
okkez
Sunao Tanabe
JA
Parse.y Famtour
I'd like to introduce how to add your own syntax to the ruby language. Although someone says parse.y defining syntax of the ruby language is ugly and incomprehensible, in my humble opinion you can modify the ruby's syntax without comprehensive understanding of parse.y.
ANDO Yasushi
JA
Visual Glitch, using Ruby
The "visual glitch" is an artifact view of corrupted image/video data. Some art people say that "true" glitch can't be reproduced, but I think they are just unfamiliar with how computers work. We, programmers, can learn about file format specs, binary compositions, and can make reproducible glitches with programming. This talk, with examples, some Ruby snippets and my library AviGlitch, will show you how to generate glitched images/videos.
ucnv
10:50 - 11:00
Break
11:00 - 12:00
JA
All About RubyKaigi Ecosystem
This talk will be very specific to the context for Ruby communities in Japan. we'll discuss about RubyKaigi, Regional RubyKaigi and Regional Ruby Communities in Japan.
Koji Shimada
Toshiaki KOSHIBA
Kakutani Shintaro
EN
Finding Black Holes in Ruby with the Small Eigen Collider
Fear, uncertainty and doubt stopping you from playing with shiny new rubies? Not sure that they're exactly the same as the one you're currently using? Let the Small Eigen Collider smash them up and see what they're made of! The Small Eigen Collider uses reflection and metaprogramming to create random Ruby code. The code can be run under different implementations, and the results compared to detect inconsistencies between the versions. So accelerate your Rubies towards the speed of light and see what gets produced. And don't worry about the black holes - the program has created many of them already in the form of segmentation faults!
Andrew Grimm
EN
The Great Eastern Japan Earthquake and what you can do as a Rubyist ?
The Great Eastern Japan Earthquake on March 11th caused devastating impact across Japan. However, there were numerous efforts amongst Japanese hackers to help the disaster hit areas. Throughout this talk, I will explain what kind of activities occurred right after the earthquake, and will discuss what we can do as Rubyists to help the people affected by the disaster. The talk will be done in English.
Makoto Inoue
Hal Seki
12:00 - 13:30
Lunch
13:30 - 14:30
JA
The Art of "Legacy" Ruby Code Maintainance
A remarkable feature of the Japanese Ruby is that we have many Ruby applications, the heritage of Ruby, before Rails. To be confronted with the heritage of Ruby, we need powerful arms: method of test for softwares that haven't test, knowledge of anti-pattern in legacy code programming and support tools for scare of coding. In my talk, I discuss to continuous maintenance technique and methodology for pandora's box, especially Ruby.
SHIBATA Hiroshi
JA
How to create a testing framework
This talk is about design decisions on creating a testing framework. It is based on talker's experience by creating a few testing frameworks. This talk will not be useful for many people. But for people creating a library may be useful. A testing framework is also a library. Design decisions about a testing framework are applicable to libraries.
Kouhei Sutou
EN
Writing custom DataMapper Adapters
DataMapper is a storage engine agnostic ORM, it can work just as well with a RDMS as with any another type of storage engine such as, but not limited to: no sequel stores (redis, mongo...), XML or yaml data source, etc. While many adapters already exist to connect DataMapper to a miriad of storage engines, there may not be one for your preferred storage engine or you may need to communicate with data from a legacy system. If this is the case I will introduce you to the clean and simple API used to write your custom DataMapper adapter.
Joshua Moore
EN
Personal Dilemma: How to work with Ruby in Brazil?
It was Ruby on Rails that called my attention back in 2005. There were not many people using Ruby in Brazil back then. There were no established community and no market to work with. So, I had a dilemma: I want to work full time with Ruby, but there was no market for me to work for. What to do? Move to the USA or give up and continue in the ever growing Java market. Or maybe, take a completely unexpected route: create my own local market. Impossible? Reckless? In this talk I'd like to explain why I like Ruby and how it enabled us to grow a sustainable community and market in Brazil. As a short summary and spoiler for the talk: yes, there is now a very good and healthy local market for Ruby in Brazil, several small and big companies using Ruby, several consulting companies offering Ruby services, lots of great developers contributing back to the global community, big conferences such as our own RubyConf Brazil. So yes, it worked! And no, I didn't have to move out to the USA to work full time with Ruby!
Fabio Akita
14:30 - 14:40
Break
14:40 - 15:40
JA
Know Ruby, will travel
What does it take to work as a Ruby engineer outside of Japan? We will discuss the language and legal barriers, as well as how to find the right job.
Hirotsugu Asari
JA
You must unlearn what you have learned: revisited
I challenged talking about "Quality of Ruby" and what I had learnt from Ruby in SapporoRubyKaigi03. This talk explains about the theme again in the place of RubyKaigi that kept giving the chance to which I grow up every year and becomes the end this year.
Koji Shimada
JA
About New Version of DeepConnect for Distributed Object Environment
TBD.
Keiju Ishitsuka
JA
Underlaying Technologies and Techniques behind O/R Mapper
`O/R Mapper' (ORM) is tool or library to map between Object and RDBMS. Using ORM, you can handle RDBMS easier, but it is necessary for developers to understand underlaying technologies and techniques of ORM in order to use it effectively. In this session, I'll explain about basic mechanism and recommended architechture of ORM. If you join this session, you'll know that existing ORMs including ActiveRecord are anything but ideal.
Makoto Kuwata
15:40 - 16:10
Break
16:10 - 17:10
Lightning talks 2
Lightning Talks are 11 x 5minutes talk in a 60 minutes time slot
17:10 - 17:20
Break
17:20 - 18:30
JA
Pendulum, PG, and the hundred year language
Yukihiro "Matz" Matsumoto
Closing
Platinum Sponsor
Gold Sponsor
Individual Sponsors