Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Code Is What Code Does
Search
brixen
August 22, 2014
Technology
0
390
Code Is What Code Does
Madison+ Ruby 2014
brixen
August 22, 2014
Tweet
Share
More Decks by brixen
See All by brixen
Stop making mud pies!
brixen
0
77
Papers We Love - Immix mark-region garbage collector
brixen
2
600
An Ensemble of Programming Languages: How to Build a Platform for Collaboration
brixen
0
160
Types As Premature Optimization
brixen
2
420
Rubinius X
brixen
3
260
Augmented Ruby: The Rubinius Language Platform
brixen
2
120
The Future of Ruby
brixen
1
310
Rubinius, and the Future of Ruby
brixen
2
230
So you want to design a programming language
brixen
1
120
Other Decks in Technology
See All in Technology
【SORACOM UG 東海】あらゆるモノがつながる社会へ、IoT と SORACOM
soracom
PRO
1
150
MapLibreとAmazon Location Service
dayjournal
1
190
Gradle Build Scanを使ってビルドのことを知ろう potatotips #87
tomorrowkey
2
160
R3のコードから見る実践LINQ実装最適化・コンカレントプログラミング実例
neuecc
3
2.8k
require(ESM)とECMAScript仕様
uhyo
4
1k
Rustで「プリズモイダル法」を利用して「土量計算」をガチでやる
nokonoko1203
1
310
One engineer company with Ruby on Rails
rstankov
2
440
20分で完全に理解するGrafanaダッシュボード
hamadakoji
5
910
止まらないLinuxシステムを構築する_高信頼性クラスタ入門
koedoyoshida
3
560
Microsoft Intune 勉強会 第 2 回目
tamaiyutaro
2
470
いいたいことちゃんという
tkengo
0
240
Android Target SDK 35 (Android 15) 対応の概要
akkie76
0
160
Featured
See All Featured
Build The Right Thing And Hit Your Dates
maggiecrowley
25
2k
Fashionably flexible responsive web design (full day workshop)
malarkey
398
65k
5 minutes of I Can Smell Your CMS
philhawksworth
199
19k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
14
8.3k
Agile that works and the tools we love
rasmusluckow
325
20k
VelocityConf: Rendering Performance Case Studies
addyosmani
321
23k
What's new in Ruby 2.0
geeforr
337
31k
Making the Leap to Tech Lead
cromwellryan
125
8.5k
A designer walks into a library…
pauljervisheath
201
23k
Visualization
eitanlees
137
14k
GraphQLとの向き合い方2022年版
quramy
33
12k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
18
6.9k
Transcript
Code Is What Code Does @brixen
I <3 Ruby
None
None
None
We live in a world filled with hard problems
watsi.org
People are leaving Ruby
Haskell Go Clojure Scala Node.js Rust Javascript Elixir
Businesses are not choosing Ruby
Ruby has problems
Too slow
0 1.25 2.5 3.75 5 Rubinius v1 Rubinius JIT v1
Rubinius v2 MRI 2.1
No concurrency
0 1 2 3 4 Rubinius MRI 2.1
Too much memory
0 22.5 45 67.5 90 Hash 1 Hash 2
Not compiled
Monkey patching
$ rbx! irb(main):001:0> "abc".clear! => ""! irb(main):002:0> require "./some_gem.rb"! =>
true! irb(main):003:0> "abc".clear! => "nope"! irb(main):004:0>
irb(main):003:0> "abc".clear! => "nope"! irb(main):004:0> "abc".method :clear! => #<Method: String#clear
(defined in String at some_gem.rb:2)>! irb(main):005:0>
None
Static types
Why use static types?
Correctness 1
Adding types does not make correct code more correct
Speed 2
0 1.25 2.5 3.75 5 Rubinius v1 Rubinius JIT v1
Rubinius v2 MRI 2.1
Maintenance 3
Adding complexity does not improve understanding
Ruby is a better choice
Programming is too hard
We are too slow
We fail a lot
The Cynefin framework
Simple Sense • Categorize • Respond 1
Simple Sense • Categorize • Respond 1 Best Practice
Complicated Sense • Analyze • Respond 2
Complicated Sense • Analyze • Respond 2 Good Practice
Complex Probe • Sense • Respond 3
Complex Probe • Sense • Respond 3 Emergent Behavior
Chaotic Act • Sense • Respond 4
Chaotic Act • Sense • Respond 4 Novel Solutions
Clay vs concrete
B.C. A.D.
B.C. A.D. Before compilation After deployment
Read Eval Print Loop
Study Experiment Check Loop
Assumptions help us solve problems
Assumptions hinder our efforts
Technical debt Cost to experiment
Refactoring Rework
We live in a world filled with hard problems
Let's make programming easier
Let's test our ideas more quickly
Let's fail more productively
Improve the world
Try Rubinius github.com/rubinius/rubinius
Thank you!
• http://winstonyw.com/2013/06/12/reddotrubyconf_2013_-_thank_you/ • https://www.flickr.com/photos/veganstraightedge/6037027106/ • http://www.europeancarweb.com/news/ epcp_1010_audi_e_tron_spyder_creation/photo_13.html • http://thisisbuildingmaterials.blogspot.com/2012/03/examples-of-famous- concrete-buildings.html
Credits