SlideShare a Scribd company logo
Ruby   – Past, Present,   Future Adam Fine
Birth February 24, 1993‏ 1 st  release December 1995‏ Yukihiro Matsumoto (''Matz'') ‏
Influences Lisp Smalltalk Perl
Lisp –  everything is an expression Smalltalk –  everything is an object Perl –  everything should be possible Fundamentals
Characteristics Dynamic Reflective High level Multi-paradigm Feature-full (closures, continuations) ‏ Portable
Implementation Single pass C interpreter Written by a small group of volunteers Led by Yukihiro Matsumoto
Progression Gain popularity throughout Japan 1999: Ruby overtakes Python's mindshare in Japan Thriving Japanese community But no English docs Very few users outside Japan
2000‏ Ruby starts spreading outside Japan Pragmatic Programmers: Dave Thomas and Andy Hunt 2001: ''Programming Ruby'' (the PickAxe) - first major documentation in English Documents Ruby 1.6‏
Just Yesterday Mainly used for high-level scripting and web Many interesting Web ideas and approaches:‏ Borges, Wee, Iowa, Cerise, cgikit, mod_ruby
Ruby 1.8‏ Released August 4 th  2003‏ Language cleanup, less Perlish Implementation improvements
Rails Released July 2004‏ David Heinemeier Hansson chose Ruby Very small codebase A lot of functionality Attracts major attention
Today
1.8, 1.9, 2.0‏ 1.8:  Production branch 1.9:  Development, experimental branch 2.0:  What 1.9 will mature into YARV
YARV Lead Developer Koichi Sasada December 31, 2006: merged into the Ruby repository Bytecode-compiled
Rubinius Modelled after the Smalltalk-80 virtual machine Transparent Highly reflective Self-hosting, self-extensible Optimizable
JRuby Platform: the JVM A working interpreter, compiler in the works Better performance than MRI (CRuby) ‏ Integrates with Java Benefits from the Java codebase
The DLR and IronRuby Platform: the CLR Optimized compilation, significant performance gains But currently vaporware Doubts about extent of dynamic feature support
XRuby Platform: the JVM Compiles to JVM bytecode Performance currently better than the JRuby interpreter Integration with the Java codebase Rails by the end of the year?‏
The Future The Rails benchmark Ruby 2.0: re-design vs. backward compatibility New implementations, new ideas, new applications
Thank you for listening

More Related Content

Viewers also liked (20)

PDF
大话程序员可用的算法
jeffz
 
PDF
企业开发领域的语言特性
jeffz
 
PDF
Jscex:案例、阻碍、体会、展望
jeffz
 
PDF
分布式版本管理
jeffz
 
PDF
Web开发中的缓存
jeffz
 
PDF
The Evolution of Async Programming (GZ TechParty C#)
jeffz
 
PDF
LINQ Inside
jeffz
 
PDF
JavaScript现代化排错实践
jeffz
 
PDF
Rabbit mq簡介(上)
共和 薛
 
PPTX
QML 與 C++ 的美麗邂逅
Jack Yang
 
PDF
Storm特性
zyh
 
PDF
鐵道女孩向前衝-RubyKaigi心得分享
Yu-Chen Chen
 
PDF
LWC15 典藏數位化-張其昀先生相關資料數位化之應用 報告人:中國文化大學圖書館 吳瑞秀館長
International Federation for information integration
 
PDF
使用.NET构建轻量级分布式框架
jeffz
 
PDF
臺北智慧城市專案辦公室公共住宅智慧社區服務說明書工作會議--智慧圖書館
Taipei Smart City PMO
 
PDF
我編譯故我在:誰說 Node.js 程式不能編成 binary
Fred Chien
 
PPTX
LWC14夢醒時分:圖書館建築構想書的實踐成果 以國立臺東大學圖書館為例。報告人:國立臺東大學圖書館 吳錦範組長
International Federation for information integration
 
PDF
Brig:Node.js + QML 華麗大冒險
Fred Chien
 
PDF
計概:Programming Paradigm
Rex Yuan
 
PPTX
新時代圖書館大未來
Ted Lin (林泰宏)
 
大话程序员可用的算法
jeffz
 
企业开发领域的语言特性
jeffz
 
Jscex:案例、阻碍、体会、展望
jeffz
 
分布式版本管理
jeffz
 
Web开发中的缓存
jeffz
 
The Evolution of Async Programming (GZ TechParty C#)
jeffz
 
LINQ Inside
jeffz
 
JavaScript现代化排错实践
jeffz
 
Rabbit mq簡介(上)
共和 薛
 
QML 與 C++ 的美麗邂逅
Jack Yang
 
Storm特性
zyh
 
鐵道女孩向前衝-RubyKaigi心得分享
Yu-Chen Chen
 
LWC15 典藏數位化-張其昀先生相關資料數位化之應用 報告人:中國文化大學圖書館 吳瑞秀館長
International Federation for information integration
 
使用.NET构建轻量级分布式框架
jeffz
 
臺北智慧城市專案辦公室公共住宅智慧社區服務說明書工作會議--智慧圖書館
Taipei Smart City PMO
 
我編譯故我在:誰說 Node.js 程式不能編成 binary
Fred Chien
 
LWC14夢醒時分:圖書館建築構想書的實踐成果 以國立臺東大學圖書館為例。報告人:國立臺東大學圖書館 吳錦範組長
International Federation for information integration
 
Brig:Node.js + QML 華麗大冒險
Fred Chien
 
計概:Programming Paradigm
Rex Yuan
 
新時代圖書館大未來
Ted Lin (林泰宏)
 

Similar to Ruby Past, Present, Future (20)

PDF
Ruby Beyond Rails
Gaveen Prabhasara
 
PDF
Ruby, Rails, and the Open Source Community
Jim Myhrberg
 
PPTX
Optimizing for programmer happiness
Josh Schramm
 
PPTX
Ruby Class 1
Sarah Allen
 
PPTX
Ruby programming
Kartik Kalpande Patil
 
PPTX
Ruby on Rails Introduction M&P - IT Skill Development Program 07
Muhammad Sunny ✈
 
PPTX
Ruby on rails
Commit Software Sh.p.k.
 
PPTX
Introduction to Ruby on Rails
Amit Patel
 
PPTX
Ruby And Ruby On Rails
AkNirojan
 
PPTX
Ruby on Rails - An overview
Thomas Asikis
 
PDF
Merb Camp Keynote
Yehuda Katz
 
PDF
From Java to Ruby...and Back
Anil Hemrajani
 
PPT
Ruby on Rails (RoR) as a back-end processor for Apex
Espen Brækken
 
PPTX
IronRuby: Ruby on the .NET Platform
Andre John Cruz
 
PDF
Ruby for devops
Adam Klein
 
PDF
The story of language development
Hiroshi SHIBATA
 
PPT
Introduction To Rails
Eric Gruber
 
PDF
IronRuby for the Rubyist
Will Green
 
PDF
Ruby vs Java: Comparing Two Popular Programming Languages For Developing Ente...
Katy Slemon
 
PDF
02 ruby overview
Walker Maidana
 
Ruby Beyond Rails
Gaveen Prabhasara
 
Ruby, Rails, and the Open Source Community
Jim Myhrberg
 
Optimizing for programmer happiness
Josh Schramm
 
Ruby Class 1
Sarah Allen
 
Ruby programming
Kartik Kalpande Patil
 
Ruby on Rails Introduction M&P - IT Skill Development Program 07
Muhammad Sunny ✈
 
Ruby on rails
Commit Software Sh.p.k.
 
Introduction to Ruby on Rails
Amit Patel
 
Ruby And Ruby On Rails
AkNirojan
 
Ruby on Rails - An overview
Thomas Asikis
 
Merb Camp Keynote
Yehuda Katz
 
From Java to Ruby...and Back
Anil Hemrajani
 
Ruby on Rails (RoR) as a back-end processor for Apex
Espen Brækken
 
IronRuby: Ruby on the .NET Platform
Andre John Cruz
 
Ruby for devops
Adam Klein
 
The story of language development
Hiroshi SHIBATA
 
Introduction To Rails
Eric Gruber
 
IronRuby for the Rubyist
Will Green
 
Ruby vs Java: Comparing Two Popular Programming Languages For Developing Ente...
Katy Slemon
 
02 ruby overview
Walker Maidana
 
Ad

Recently uploaded (20)

PDF
Responsible AI and AI Ethics - By Sylvester Ebhonu
Sylvester Ebhonu
 
PPTX
AVL ( audio, visuals or led ), technology.
Rajeshwri Panchal
 
PDF
GDG Cloud Munich - Intro - Luiz Carneiro - #BuildWithAI - July - Abdel.pdf
Luiz Carneiro
 
PDF
The Future of Artificial Intelligence (AI)
Mukul
 
PDF
Structs to JSON: How Go Powers REST APIs
Emily Achieng
 
PPTX
OA presentation.pptx OA presentation.pptx
pateldhruv002338
 
PDF
Lecture A - AI Workflows for Banking.pdf
Dr. LAM Yat-fai (林日辉)
 
PPTX
IT Runs Better with ThousandEyes AI-driven Assurance
ThousandEyes
 
PPTX
Introduction to Flutter by Ayush Desai.pptx
ayushdesai204
 
PDF
The Past, Present & Future of Kenya's Digital Transformation
Moses Kemibaro
 
PDF
Researching The Best Chat SDK Providers in 2025
Ray Fields
 
PPTX
Farrell_Programming Logic and Design slides_10e_ch02_PowerPoint.pptx
bashnahara11
 
PDF
Market Insight : ETH Dominance Returns
CIFDAQ
 
PDF
Build with AI and GDG Cloud Bydgoszcz- ADK .pdf
jaroslawgajewski1
 
PDF
introduction to computer hardware and sofeware
chauhanshraddha2007
 
PDF
Generative AI vs Predictive AI-The Ultimate Comparison Guide
Lily Clark
 
PPTX
Agentic AI in Healthcare Driving the Next Wave of Digital Transformation
danielle hunter
 
PPTX
Agile Chennai 18-19 July 2025 | Workshop - Enhancing Agile Collaboration with...
AgileNetwork
 
PDF
The Future of Mobile Is Context-Aware—Are You Ready?
iProgrammer Solutions Private Limited
 
PDF
How Open Source Changed My Career by abdelrahman ismail
a0m0rajab1
 
Responsible AI and AI Ethics - By Sylvester Ebhonu
Sylvester Ebhonu
 
AVL ( audio, visuals or led ), technology.
Rajeshwri Panchal
 
GDG Cloud Munich - Intro - Luiz Carneiro - #BuildWithAI - July - Abdel.pdf
Luiz Carneiro
 
The Future of Artificial Intelligence (AI)
Mukul
 
Structs to JSON: How Go Powers REST APIs
Emily Achieng
 
OA presentation.pptx OA presentation.pptx
pateldhruv002338
 
Lecture A - AI Workflows for Banking.pdf
Dr. LAM Yat-fai (林日辉)
 
IT Runs Better with ThousandEyes AI-driven Assurance
ThousandEyes
 
Introduction to Flutter by Ayush Desai.pptx
ayushdesai204
 
The Past, Present & Future of Kenya's Digital Transformation
Moses Kemibaro
 
Researching The Best Chat SDK Providers in 2025
Ray Fields
 
Farrell_Programming Logic and Design slides_10e_ch02_PowerPoint.pptx
bashnahara11
 
Market Insight : ETH Dominance Returns
CIFDAQ
 
Build with AI and GDG Cloud Bydgoszcz- ADK .pdf
jaroslawgajewski1
 
introduction to computer hardware and sofeware
chauhanshraddha2007
 
Generative AI vs Predictive AI-The Ultimate Comparison Guide
Lily Clark
 
Agentic AI in Healthcare Driving the Next Wave of Digital Transformation
danielle hunter
 
Agile Chennai 18-19 July 2025 | Workshop - Enhancing Agile Collaboration with...
AgileNetwork
 
The Future of Mobile Is Context-Aware—Are You Ready?
iProgrammer Solutions Private Limited
 
How Open Source Changed My Career by abdelrahman ismail
a0m0rajab1
 
Ad

Ruby Past, Present, Future

  • 1. Ruby – Past, Present, Future Adam Fine
  • 2. Birth February 24, 1993‏ 1 st release December 1995‏ Yukihiro Matsumoto (''Matz'') ‏
  • 4. Lisp – everything is an expression Smalltalk – everything is an object Perl – everything should be possible Fundamentals
  • 5. Characteristics Dynamic Reflective High level Multi-paradigm Feature-full (closures, continuations) ‏ Portable
  • 6. Implementation Single pass C interpreter Written by a small group of volunteers Led by Yukihiro Matsumoto
  • 7. Progression Gain popularity throughout Japan 1999: Ruby overtakes Python's mindshare in Japan Thriving Japanese community But no English docs Very few users outside Japan
  • 8. 2000‏ Ruby starts spreading outside Japan Pragmatic Programmers: Dave Thomas and Andy Hunt 2001: ''Programming Ruby'' (the PickAxe) - first major documentation in English Documents Ruby 1.6‏
  • 9. Just Yesterday Mainly used for high-level scripting and web Many interesting Web ideas and approaches:‏ Borges, Wee, Iowa, Cerise, cgikit, mod_ruby
  • 10. Ruby 1.8‏ Released August 4 th 2003‏ Language cleanup, less Perlish Implementation improvements
  • 11. Rails Released July 2004‏ David Heinemeier Hansson chose Ruby Very small codebase A lot of functionality Attracts major attention
  • 12. Today
  • 13. 1.8, 1.9, 2.0‏ 1.8: Production branch 1.9: Development, experimental branch 2.0: What 1.9 will mature into YARV
  • 14. YARV Lead Developer Koichi Sasada December 31, 2006: merged into the Ruby repository Bytecode-compiled
  • 15. Rubinius Modelled after the Smalltalk-80 virtual machine Transparent Highly reflective Self-hosting, self-extensible Optimizable
  • 16. JRuby Platform: the JVM A working interpreter, compiler in the works Better performance than MRI (CRuby) ‏ Integrates with Java Benefits from the Java codebase
  • 17. The DLR and IronRuby Platform: the CLR Optimized compilation, significant performance gains But currently vaporware Doubts about extent of dynamic feature support
  • 18. XRuby Platform: the JVM Compiles to JVM bytecode Performance currently better than the JRuby interpreter Integration with the Java codebase Rails by the end of the year?‏
  • 19. The Future The Rails benchmark Ruby 2.0: re-design vs. backward compatibility New implementations, new ideas, new applications
  • 20. Thank you for listening