RubyKaigi 2017
| title | author | length |
|---|---|---|
| Towards Ruby 3x3 performance | Vladimir Makarov | 44m |
Project pursues a 3x performance target by adding an RTL VM instruction set and a JIT integrated into MRI (repo: vnmakarov/ruby). Early builds execute… | ||
| The Many Faces of Module | yukihiro Matsumoto 'Matz' | 54m |
Covers how Ruby modules evolve from Simula-flavored mixins into multiple concrete roles: mixins for shared behavior, module as namespace to group classes, and… | ||
| Memory Fragmentation and Bloat in Ruby | Nate Berkopec | 42m |
Explains why Ruby processes hold peak memory (bloat) and slowly grow (fragmentation), names the allocator and per-thread arenas as culprits, and gives concrete… | ||
| Pattern Matching in Ruby | YUKI TORII | 35m |
Proposes a concrete pattern‑matching spec for Ruby and shows a working implementation by modifying parse.y to parse a new %p pattern literal and inject… | ||
| Making Ruby? The Easygoing Ruby Life | Nobuyoshi Nakada | 53m |
Describes how Ruby core development is organized (Subversion repo, Redmine releases, monthly committer meetings) and how the build process works: it uses… | ||
| The Ruby Module Builder Pattern | Chris Salzberg | 39m |
Shows how to turn Module into a configurable template: subclass Module and use an initializer that defines methods so each included instance carries its own… | ||
| How Close is Ruby 3x3 For Production Web Apps? | Noah Gibbs | 39m |
Benchmark runs a seeded, repeatable user workload against Discourse forum on a single dedicated r4.2xlarge EC2 VM using Puma 10 processes 60 threads and… | ||
| Hanami - New Ruby Web Framework | Anton Davydov | 42m |
Hanami presents a modular Ruby web stack of about ten interchangeable gems, a core team of eight, first released April 6, and a 1.1 prerelease planned for… | ||
| Tamashii - Create Rails IoT applications more easily | Henry Tseng | 40m |
Tamashii is a Ruby IoT framework that runs on Raspberry Pi, exposing hardware like RFID readers, LCDs and buzzers as Ruby objects and letting Rails call them… | ||
| Ruby, Opal and WebAssembly | Yutaka HARA | 41m |
DXOpal ships a playable Ruby-to-JS game framework that runs entirely in the browser (single folder with index.html, main.rb and opal runtime), uses Canvas… | ||
| API Development in 2017 | Takafumi ONAKA | 39m |
Company moves from Jbuilder to ActiveModelSerializers and then to schema-first development using OpenAPI (Swagger); engineers write OpenAPI, serve mock… | ||
| High Concurrent Ruby Web Development Without Fear | Delton Ding | 38m |
Framework prototype turns synchronous Ruby web stacks into nonblocking servers by converting drivers like Redis and Sequel at runtime using fibers and heavy… | ||
| dRuby on Browser | Yoh Osaki | 39m |
Implements dRuby in the browser by compiling Ruby to JavaScript with Opal and adding a WebSocket protocol plugin (drb-websocket) plus an Opal-based client… | ||
| Compacting GC in MRI | Aaron Patterson | 42m |
An implementation of a compacting GC for MRI exists that actually moves objects using a two-finger compaction algorithm, updates pointers, and exposes a… | ||
| Static Typo Checker in Ruby | Yuki Nishijima | 42m |
A static typo checker is implemented as a did_you_mean static mode that parses bytecode via RubyVM InstructionSequence to list undefined method calls without… | ||
| Lightning Talks | Hiroshi Kawada, Tatsuhiro Ujihisa, Nishiyama Kazuhiro, Hiroyuki Sano, Yuki Nakata, Shyouhei Urabe, Takeshi Watanabe, Takashi Kokubun | 01h 03m |
Ten rapid demos show concrete results: Mastodon moves to ActivityPub with a unified actor model and a shared inbox not yet implemented; a WebSocket proxy… | ||
| Busting Performance Bottlenecks: Improving Boot Time by 60% | Julian Nadeau | 40m |
Claims a 60%+ startup speedup by building a file/constant and bytecode cache and by optimizing Bundler. Uses the boot snap gem to cache Ruby instruction… | ||
| Bundler 2 | Colby Swandale | 35m |
Bundler 2 refactors compatibility and workflow: it drops unsupported Ruby versions (up through 2.3), removes built‑in Capistrano and old source shortcuts, and… | ||
| Development of Data Science Ecosystem for Ruby | Kenta Murata | 42m |
Ruby calls Python via PyCall to run real tools: code benchmarks 100 iterations, collects results into a pandas DataFrame, and saves a seaborn bar chart PNG; a… | ||
| Ruby Language Server | Fumiaki MATSUSHIMA | 40m |
Implements a Ruby language server and a supporting language_server_protocol gem that speaks LSP over stdio using JSON‑RPC; linting runs ruby -wc (parsed by… | ||
| Type Checking Ruby Programs with Annotations | Soutaro Matsumoto | 39m |
Type inference for real Ruby programs proves infeasible without help so the solution implemented is a gradual static checker called Steep available on GitHub… | ||
| Flor - hubristic interpreter | John Mettraux | 38m |
Flor is a Ruby workflow engine (a remake of ruote) used in production for a bank’s six‑month mandate onboarding and by teams in Canada and Tokyo; it runs… | ||
| Gemification for Ruby 2.5/3.0 | Hiroshi Shibata | 40m |
Gemification moves many standard-library components out of the core so they can be updated via default gems and bundled gems, letting fixes (OpenSSL, JSON)… | ||
| Fiber in the 10th year | Koichi Sasada | 40m |
Fiber exists in Ruby 1.9 as a coroutine primitive, used for generators and cooperative schedulers, and the talk lays out concrete implementation steps: initial… | ||
| C how to supercharge Ruby with Rubex | Sameer Deshmukh | 39m |
RubyKaigi2017
http://rubykaigi.org/2017/presentations/v0dro.html
CRuby is still one of the most popular Ruby interpreters in use today, but it lacks speed. In… | ||
| How to optimize Ruby internal. | Shizuo Fujita | 34m |
Uses Apple Instruments and the Xcode iProfiler to find C-level hot spots, then removes Ruby dispatch by adding C APIs and reducing temporary allocations… | ||
| Ruby Parser In IRB 20th Anniversary...Now Let Time Resume | Itoyanagi Sakura | 37m |
Describes replacing a legacy pure-Ruby parser used by RDoc with the CRuby-backed standard library Ripper so documentation keeps up with language changes. Shows… | ||
| Writing Lint for Ruby | Masataka Kuwabara | 41m |
Explains how to build Ruby linters that actually find bugs by parsing code into an AST and walking it, with concrete use of parser gem vs Ripper and demo code… | ||
| Automated Type Contracts Generation for Ruby | Valentin Fondaratov | 40m |
Runtime traces collected with tracepoint plus occasional YARV disassembly turn method calls into input→output tuples which are compressed into contracts like… | ||
| Ruby Committers vs the World | 01h 00m | |
Cookpad describes running a global Rails site with about 2.7M apps? (transcript shows 270万 SP), roughly 60M monthly users and ~1.1M premium users, and it… | ||
| Progress of Ruby/Numo: Numerical Computing for Ruby | Masahiro Tanaka | 39m |
Numo (new NArray) reimplements NArray with views, broadcasting, and masking and provides working wrappers for BLAS/LAPACK, GSL, FFTW/FFTE, and a Gnuplot… | ||
| Compiling Ruby | Kevin Deisz | 40m |
Shows how Ruby 2.3’s RubyVM::InstructionSequence::load_iseq lets code be compiled to YARV bytecode, stored and reloaded to skip parsing and cut startup time by… | ||
| Improving TruffleRuby’s Startup Time with the SubstrateVM | Kevin Menard | 42m |
TruffleRuby compiles its Java runtime ahead-of-time with the SubstrateVM native-image generator to produce a static binary that prebuilds ASTs and core-library… | ||
| Food, Wine and Machine Learning: Teaching a Bot to Taste | Mai Nguyen | 40m |
Builds a chatbot called Happy Wine Bot that recommends wines for recipes by scraping online recipes, hand-labeling 50+ food features, and classifying text per… | ||
| The Curious Case of Wikipedia Parsing | Victor Shepelev | 38m |
RubyKaigi2017
http://rubykaigi.org/2017/presentations/zverok.html
A case study of developing Wikipedia client/parser for structured information extraction, or… | ||
| Mapping your world with Ruby | Mat Schaffer | 42m |
Safecast runs a crowd‑sourced environmental map built with a long‑running Ruby on Rails API that writes into Postgres and feeds web tiles and mobile apps… | ||
| I quit my job to write my own language: Goby | Stan Lo | 34m |
Goby is a new language with a VM and compiler modeled on Ruby 1.9 and a runtime that already includes file and HTTP libraries plus a working web server… | ||
| What visually impaired programmers are thinking about Ruby? | Takuya Nishimoto | 39m |
Shows a working NVDA Japanese extension and an audible editor demo on macOS, plus a live demo of a real Ruby workflow over SSH with screen reader output and a… | ||
| Regular Expressions Inside Out | Martin J. Dürst | 39m |
Shows how Ruby's regex engine actually works and what was built: a C-based matcher that handles Unicode property support and diacritic-aware substitutions, a… | ||
| JRuby at 15 Years: Meeting the Challenges | Charles Oliver Nutter, Thomas E Enebo | 42m |
JRuby reports concrete progress and measurable targets: branch 9.1 supports Ruby 2.3, master targets 2.4 with Java 8 minimum, and startup work aims to cut gem… | ||
| Ruby for Distributed Storage System | Satoshi "Moris" Tagomori | 41m |
A distributed storage called bigdam-pool exists as both a Java implementation and a Ruby port aiming byte-for-byte API and on-disk compatibility; full… | ||
| Handling mails on a text editor | Shugo Maeda | 38m |
Built an editor in Ruby called Textbringer (Ruby editor) that runs in a terminal with Emacs-like keys, implements a gap buffer via Ruby String for fast edits… | ||
| Asynchronous and Non-Blocking IO with JRuby | Joe Kutner | 39m |
Claims JRuby can run true asynchronous non-blocking IO on the JVM using Ratpack on Netty and cut server footprint while increasing throughput; Apple runs… | ||
| mruby gateway for huge amount of realtime data processing | Ritta Narita | 45m |
TreasureData replaces a Rails+Fluentd front end with H2O + mruby gateway and a custom aggregator to handle rapidly growing realtime imports, deploying on AWS… | ||
| An introduction and future of Ruby coverage library | Yusuke Endoh | 43m |
Covers an intro to code coverage and the current Ruby ecosystem, shows a C extension coverage.so plus a SimpleCov wrapper used to record line counts, adds… | ||
| Do Androids Dream of Electronic Dance Music? | Julian Cheal, Eric Weinstein | 38m |
A pipeline converts 110 MIDI files (royalty-free deadmau5 samples) into TFRecords and trains an LSTM via TensorFlow and Magenta (mostly Python with ~5% Ruby… | ||
| Serial Protocol Analyzer on Ruby | Mayumi EMORI | 32m |
Builds a Ruby serial protocol analyzer that reads exactly what the sender writes to the device, tests on macOS and Windows COM ports, and finds that simply… | ||
| Improve extension API: C++ as better language for extension | Kouhei Sutou | 40m |
Proposal replaces manual C bindings with a C++ layer that wraps Ruby’s C API to provide cleaner, template‑based conversions, lambdas, default args and… | ||
| Bending The Curve: Putting Rust in Ruby with Helix | Godfrey Chan, Terence Lee | 43m |
Helix claims to let Ruby code move hotspot logic into Rust without C’s danger or huge boilerplate: the team shows a Rails generator, a small demo crate (a text… | ||
| Ruby Extension Library Verified using Coq Proof-assistant | Tanaka Akira | 44m |
Generates C from Coq via a custom plugin and produces a working Ruby extension (html_escape) used from Ruby; Coq proofs show functional correctness (fast_power… | ||
| RubyKaigi 2017 Closing | 14m | |
This is the conference closing that lists concrete outcomes and logistics: organizers thank attendees, show 53 sponsors, report lessons learned (September is… | ||
| Introducing the Jet Programming Language | Yasushi Itoh | 39m |
A Ruby-like language that compiles to BEAM bytecode and uses leex, yecc and erl_syntax to produce Erlang .beam files, with pattern matching, arity-based… | ||
| How to write synchronization mechanisms for Fiber | Masatoshi Seki | 42m |
Presents a concrete Fiber idiom and a tiny event library that combines a select abstraction with Fiber resume to get blocking‑style non‑blocking IO; implements… | ||
| Smalruby : The neat thing to connect Rubyists and Scratchers | Kouji Takao, Nobuyuki Honda | 45m |
A Ruby library that maps Scratch blocks to Ruby methods so kids can write Scratch-style scripts in Ruby, with examples for loops, conditionals, global/instance… | ||
| Write once, run on every boards: portable mruby | Yurie Yamane | 36m |
Claims that one mruby program can run unchanged on multiple microcontrollers by splitting device-specific C glue from common Ruby behavior. Implements examples… | ||
| Irb 20th anniversary memorial session: Reish and Irb2 | Keiju Ishitsuka | 44m |
Irb celebrates 20 years and Reish is an experimental UNIX-style shell implemented for Rubyists that translates shell syntax into Ruby AST and executes it… | ||
| Ruby in office time reboot | Kentaro Goto, Goto Ken | 41m |
Shows concrete office automation: a small company uses Redmine + Git webhook integration so pushes auto-update and close tickets, lets anyone create repos via… | ||
| nothing matches | ||