SlideShare a Scribd company logo
1 of 83
Download to read offline
Monday, November 15, 2010
Monday, November 15, 2010
http://www.flickr.com/photos/pragdave/173649119/
Monday, November 15, 2010
http://mislav.uniqpath.com/poignant-guide/book/
Monday, November 15, 2010
•inspire
•diversify
•new
•worse
Monday, November 15, 2010
Monday, November 15, 2010
_why is hiding
where Dave Thomas’
brain is missing!!!
Monday, November 15, 2010
_why struggled
with programming
Monday, November 15, 2010
http://commons.wikimedia.org/wiki/File:Space_Shuttle_Columbia_launching_cropped_2.jpg.jpg
Monday, November 15, 2010
http://commons.wikimedia.org/wiki/File:Space_Shuttle_Columbia_launching_cropped_2.jpg.jpg
Fallacy of Scope
Monday, November 15, 2010
Monday, November 15, 2010
Fallacy of Quality
Monday, November 15, 2010
Monday, November 15, 2010
WEBSCALE
Monday, November 15, 2010
Monday, November 15, 2010
Monday, November 15, 2010
Monday, November 15, 2010
Toy [noun]: A technological product which is simple and
fun to use, and which may be criticized by some people
as being weak and not suitable for serious work.
Monday, November 15, 2010
•user-oriented & UX
•general BS
•bigger ecosystem
Monday, November 15, 2010
Monday, November 15, 2010
what if you knew
nothing
about programming?
Monday, November 15, 2010
Monday, November 15, 2010
Monday, November 15, 2010
Monday, November 15, 2010
Monday, November 15, 2010
Monday, November 15, 2010
Monday, November 15, 2010
Monday, November 15, 2010
Potion
Monday, November 15, 2010
Monday, November 15, 2010
Monday, November 15, 2010
Monday, November 15, 2010
Monday, November 15, 2010
Monday, November 15, 2010
Monday, November 15, 2010
pause for effect...
Monday, November 15, 2010
Monday, November 15, 2010
Monday, November 15, 2010
http://www.sciencemag.org/cgi/content/summary/292/5524/1971c
Monday, November 15, 2010
http://ferryservicestokeywest.com/snorkeling.php
Monday, November 15, 2010
Rubinius
how does it work?
Monday, November 15, 2010
Source → Parser → Compil
Monday, November 15, 2010
Source → Parser → Compiler → Virtu
Monday, November 15, 2010
Source → Parser → Compiler → Virtu
Monday, November 15, 2010
Source → Parser → Compiler → Virtu
script
class
name
Exclaimer
superclass
nil
method
blurt
Abstract Syntax Tree
Monday, November 15, 2010
Source → Parser → Compiler → Virtual Machin
Monday, November 15, 2010
Source → Parser → Compiler → Virtual Machin
Monday, November 15, 2010
Virtual Machine
[ :push_literal, “_why ”, :push_local, :blurb, ...]
r → Compiler → Virtual Machine
Stack
IP = 0
Instruction Sequence
Monday, November 15, 2010
Virtual Machine
[ :push_literal, “_why ”, :push_local, :blurb, ...]
r → Compiler → Virtual Machine
Stack
IP = 0
Instruction Sequence
“_why ”
Monday, November 15, 2010
Virtual Machine
[ ..., :push_local, :blurb, :allow_private, :send_st...]
r → Compiler → Virtual Machine
Stack
IP = 2
Instruction Sequence
“_why ”
Monday, November 15, 2010
Virtual Machine
[ ..., :push_local, :blurb, :allow_private, :send_st...]
r → Compiler → Virtual Machine
Stack
IP = 2
Instruction Sequence
“_why ”
“rocks”
Monday, November 15, 2010
Virtual Machine
[ ..., :send_stack, :to_s, 0, :push_literal, “!”, :str...]
r → Compiler → Virtual Machine
Stack
IP = 5
Instruction Sequence
“_why ”
“rocks”
Monday, November 15, 2010
Virtual Machine
[ ..., :push_literal, “!”, :string_build, 3, :ret]
r → Compiler → Virtual Machine
Stack
IP = 8
Instruction Sequence
“_why ”
“rocks”
Monday, November 15, 2010
Virtual Machine
[ ..., :push_literal, “!”, :string_build, 3, :ret]
r → Compiler → Virtual Machine
Stack
IP = 8
Instruction Sequence
“_why ”
“rocks”
“!”
Monday, November 15, 2010
Virtual Machine
[ ..., :string_build, 3, :ret]
r → Compiler → Virtual Machine
Stack
IP = 10
Instruction Sequence
“_why ”
“rocks”
“!”
Monday, November 15, 2010
Virtual Machine
[ ..., :string_build, 3, :ret]
r → Compiler → Virtual Machine
Stack
IP = 10
Instruction Sequence
“_why rocks!”
Monday, November 15, 2010
now, the hard part
Monday, November 15, 2010
Source → Parser → Compil
Monday, November 15, 2010
Source → Parser → Compiler → Virtu
Monday, November 15, 2010
Source → Parser → Compiler → Virtu
Monday, November 15, 2010
Source → Parser → Compiler → Virtu
Monday, November 15, 2010
Source → Parser → Compiler → Virtu
Monday, November 15, 2010
Source → Parser → Compiler → Virtu
Monday, November 15, 2010
Source → Parser → Compiler → Virtu
Monday, November 15, 2010
Source → Parser → Compiler → Virtu
Monday, November 15, 2010
Source → Parser → Compiler → Virtu
Monday, November 15, 2010
Source → Parser → Compiler → Virtu
Monday, November 15, 2010
Source → Parser → Compiler → Virtu
Monday, November 15, 2010
Source → Parser → Compiler → Virtu
Monday, November 15, 2010
Source → Parser → Compiler → Virtual Machin
Monday, November 15, 2010
Source → Parser → Compiler → Virtual Machin
Monday, November 15, 2010
Source → Parser → Compiler → Virtual Machin
Monday, November 15, 2010
Source → Parser → Compiler → Virtual Machin
Monday, November 15, 2010
Source → Parser → Compiler → Virtual Machin
Monday, November 15, 2010
Source → Parser → Compiler → Virtual Machin
Monday, November 15, 2010
Source → Parser → Compiler → Virtual Machin
Monday, November 15, 2010
integrate
inter-operate
Monday, November 15, 2010
Monday, November 15, 2010
Monday, November 15, 2010
Monday, November 15, 2010
http://www.lulu.com/product/paperback/learn-python-the-hard-way/13509215
http://commons.wikimedia.org/wiki/File:Cornelis_Pietersz._Bega_-_De_Alchemist.jpg
ois
Monday, November 15, 2010
github.com/brixen/poison
po.isono.us
Monday, November 15, 2010
ZOMG THANK YOU
EVERYONE!!!
(and @tenderlove)
Monday, November 15, 2010

More Related Content

Similar to Poisoning Rubinius: The _why and How

RIA Unleashed - Developing for the TV with litl os
RIA Unleashed - Developing for the TV with litl osRIA Unleashed - Developing for the TV with litl os
RIA Unleashed - Developing for the TV with litl os
ryancanulla
 
CrossMark Sneak Peek 2010 CrossRef Workshops
CrossMark Sneak Peek 2010 CrossRef WorkshopsCrossMark Sneak Peek 2010 CrossRef Workshops
CrossMark Sneak Peek 2010 CrossRef Workshops
Crossref
 
The Tech Side of Project Argo
The Tech Side of Project ArgoThe Tech Side of Project Argo
The Tech Side of Project Argo
Wesley Lindamood
 
Seaside - Why should you care? (Dynamic Stockholm 2010)
Seaside - Why should you care? (Dynamic Stockholm 2010)Seaside - Why should you care? (Dynamic Stockholm 2010)
Seaside - Why should you care? (Dynamic Stockholm 2010)
jfitzell
 
Dist::Zilla - Maximum Overkill for CPAN Distributions
Dist::Zilla - Maximum Overkill for CPAN DistributionsDist::Zilla - Maximum Overkill for CPAN Distributions
Dist::Zilla - Maximum Overkill for CPAN Distributions
Ricardo Signes
 
Cutting Edge CSS3 @ WebExpo Tour 2010
Cutting Edge CSS3 @ WebExpo Tour 2010Cutting Edge CSS3 @ WebExpo Tour 2010
Cutting Edge CSS3 @ WebExpo Tour 2010
Zi Bin Cheah
 
Distributed Social Networking
Distributed Social NetworkingDistributed Social Networking
Distributed Social Networking
Bastian Hofmann
 
Presentation to wdim_students
Presentation to wdim_studentsPresentation to wdim_students
Presentation to wdim_students
Scott Motte
 
Web Standards Indonesia Tour
Web Standards Indonesia TourWeb Standards Indonesia Tour
Web Standards Indonesia Tour
Zi Bin Cheah
 
Document-Oriented Databases: Couchdb Primer
Document-Oriented Databases: Couchdb PrimerDocument-Oriented Databases: Couchdb Primer
Document-Oriented Databases: Couchdb Primer
jsiarto
 

Similar to Poisoning Rubinius: The _why and How (20)

RIA Unleashed - Developing for the TV with litl os
RIA Unleashed - Developing for the TV with litl osRIA Unleashed - Developing for the TV with litl os
RIA Unleashed - Developing for the TV with litl os
 
Opening up the Social Web - Standards that are bridging the Islands
Opening up the Social Web - Standards that are bridging the Islands Opening up the Social Web - Standards that are bridging the Islands
Opening up the Social Web - Standards that are bridging the Islands
 
CrossMark Sneak Peek 2010 CrossRef Workshops
CrossMark Sneak Peek 2010 CrossRef WorkshopsCrossMark Sneak Peek 2010 CrossRef Workshops
CrossMark Sneak Peek 2010 CrossRef Workshops
 
RubyConf UY 2010
RubyConf UY 2010RubyConf UY 2010
RubyConf UY 2010
 
Telco: Voice-Command Personal Agent Service with AWS Cloud (MBL202) | AWS re:...
Telco: Voice-Command Personal Agent Service with AWS Cloud (MBL202) | AWS re:...Telco: Voice-Command Personal Agent Service with AWS Cloud (MBL202) | AWS re:...
Telco: Voice-Command Personal Agent Service with AWS Cloud (MBL202) | AWS re:...
 
MySQL Sandbox - A toolkit for laziness
MySQL Sandbox - A toolkit for lazinessMySQL Sandbox - A toolkit for laziness
MySQL Sandbox - A toolkit for laziness
 
We're not designing posters, here!
We're not designing posters, here!We're not designing posters, here!
We're not designing posters, here!
 
The Trajectory of Change
The Trajectory of ChangeThe Trajectory of Change
The Trajectory of Change
 
The Tech Side of Project Argo
The Tech Side of Project ArgoThe Tech Side of Project Argo
The Tech Side of Project Argo
 
Macruby - RubyConf Presentation 2010
Macruby - RubyConf Presentation 2010Macruby - RubyConf Presentation 2010
Macruby - RubyConf Presentation 2010
 
Seaside - Why should you care? (Dynamic Stockholm 2010)
Seaside - Why should you care? (Dynamic Stockholm 2010)Seaside - Why should you care? (Dynamic Stockholm 2010)
Seaside - Why should you care? (Dynamic Stockholm 2010)
 
Dist::Zilla - Maximum Overkill for CPAN Distributions
Dist::Zilla - Maximum Overkill for CPAN DistributionsDist::Zilla - Maximum Overkill for CPAN Distributions
Dist::Zilla - Maximum Overkill for CPAN Distributions
 
Drupal In The Cloud
Drupal In The CloudDrupal In The Cloud
Drupal In The Cloud
 
Github flow
Github flowGithub flow
Github flow
 
Cutting Edge CSS3 @ WebExpo Tour 2010
Cutting Edge CSS3 @ WebExpo Tour 2010Cutting Edge CSS3 @ WebExpo Tour 2010
Cutting Edge CSS3 @ WebExpo Tour 2010
 
Distributed Social Networking
Distributed Social NetworkingDistributed Social Networking
Distributed Social Networking
 
Presentation to wdim_students
Presentation to wdim_studentsPresentation to wdim_students
Presentation to wdim_students
 
Web Standards Indonesia Tour
Web Standards Indonesia TourWeb Standards Indonesia Tour
Web Standards Indonesia Tour
 
Document-Oriented Databases: Couchdb Primer
Document-Oriented Databases: Couchdb PrimerDocument-Oriented Databases: Couchdb Primer
Document-Oriented Databases: Couchdb Primer
 
Meet Couch DB
Meet Couch DBMeet Couch DB
Meet Couch DB
 

Recently uploaded

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Recently uploaded (20)

2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 

Poisoning Rubinius: The _why and How