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
Grand Unification Theory: Writing & Running Code
Search
brixen
September 09, 2012
Technology
170
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Grand Unification Theory: Writing & Running Code
Presented at BaRuCo 2012
brixen
September 09, 2012
More Decks by brixen
See All by brixen
Stop making mud pies!
brixen
0
130
Papers We Love - Immix mark-region garbage collector
brixen
2
760
An Ensemble of Programming Languages: How to Build a Platform for Collaboration
brixen
0
290
Types As Premature Optimization
brixen
2
590
Rubinius X
brixen
3
300
Code Is What Code Does
brixen
0
430
Augmented Ruby: The Rubinius Language Platform
brixen
2
160
The Future of Ruby
brixen
1
350
Rubinius, and the Future of Ruby
brixen
2
270
Other Decks in Technology
See All in Technology
【Cyber-sec+】経営層を"動かす"ための考え方
hssh2_bin
0
200
人材育成分科会.pdf
_awache
4
300
2026 TECHFRESH 畢業分享會 - AI-Native 重塑軟體工程與虛擬講師
line_developers_tw
PRO
0
1.3k
AIのReact習熟度を測る
uhyo
2
660
AI時代のコスト管理を考えよう〜明日から使える実践AWSノウハウ~
yoshimi0227
0
320
AWS Security Agent といっしょに脅威モデリングをやってみよう
amarelo_n24
1
180
AWS Security Hub CSPMの成功・失敗体験
cmusudakeisuke
0
290
SONiCで構築・運用する生成AI向けパブリッククラウドネットワーク ~実装編~
sonic
0
290
現場のトークンマネジメント
dak2
0
130
アジャイルな経理と Claude Code と経営の未来
kawaguti
PRO
3
160
LayerXにおけるセキュリティ管理の現在地と次の一手
tosho
0
250
ザ・データベース、MySQL ~ OSC 2026 Sendai ~
sakaik
0
150
Featured
See All Featured
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Exploring anti-patterns in Rails
aemeredith
3
410
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
390
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
390
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
400
Darren the Foodie - Storyboard
khoart
PRO
3
3.4k
How to Think Like a Performance Engineer
csswizardry
28
2.7k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
270
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
320
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
1
200
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
66
55k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
750
Transcript
GRAND UNIFICATION THEORY BRIAN FORD @brixen BARUCO 2012 }WRITING &
RUNNING CODE
RUBINIUS
I want to change how we write and run code
debugger profiler coverage type checker editor
Smalltalk
writing code is a function of running code
editors push around characters
The board swam wistfully through the narrow sky.
Spell checkers
Autocorrect?
Programming
Math Algorithms TDD SOLID Testing Patterns Refactoring Agile Design
“good design communicates intention”
com-mu-ni-ca-tion noun the imparting or exchange of information or news
Implementation Patterns by Kent Beck
Programming artifacts
What makes good communication?
clear adjective obvious or unambiguous
sim-ple adjective uncomplicated in form, nature or design
rel-e-vant adjective closely connected or appropriate to the matter at
hand
pre-cise adjective exactness or accuracy of expression or detail
me-di-um noun a means by which something is communicated or
expressed
tone noun a manner of expression
safe adjective protected from or not exposed to danger or
risk
open adjective not closed or blocked up free from obstructions
programming language as medium
Dynamically Typed Language
type noun a category of things having common characteristics
A.const_set :B, 1
def a.b(x) @b = x end
A = Class.new
metaprogramming
Animal = Object.clone Cat = Animal.clone
compute with values that pass messages
Typed
Dynamic Language
dynamic languages communicate better
a.map { |x| x.y }
a = [1, “x”, nil]
correctness vs safety
How do we run code?
exploratory testing development deployment learning
Rubinius precise GC concurrency JIT compiler
$ rbx irb(main):001:0> def hello irb(main):002:1> puts "hi" irb(main):003:1> end
=> #<Rubinius::CompiledCode hello file=(irb)>
def hello(name) puts “hi #{name}” end
================ :hello ================ Arguments: 1 required, 0 post, 1 total
Arity: 1 Locals: 1: name Stack size: 4 Line: 1 Lines to IP: 0000: push_self 0001: push_literal "hi " 0003: push_local 0 # name 0005: allow_private 0006: meta_to_s :to_s 0008: string_build 2 0010: allow_private 0011: send_stack :puts, 1 0014: ret ----------------------------------------
What can we do?
production vs testing
feature maps
type analysis
data flow analysis
error analysis
compiled code database
Challenges
information display
data supports decisions
Do we need tests?
blinking cursor = blank stare
in-sight noun the capacity to gain an accurate and deep
intuitive understanding of a person or thing
Thank You
rubini.us brixen.io