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
How a language reflects its people
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Alex Coles
February 10, 2017
Technology
96
0
Share
How a language reflects its people
> The limits of my language mean the limits of my world.
– Wittgenstein
Alex Coles
February 10, 2017
More Decks by Alex Coles
See All by Alex Coles
How a language reflects its people (Brighton Ruby)
myabc
0
120
Taking Rails beyond the asset pipeline (Workshop at RubyDay Italia)
myabc
0
82
Rails: beyond the asset pipeline (RubyC)
myabc
0
140
Frontend Choices (Tropical Ruby)
myabc
1
800
Frontend Choices (RubyConf Portugal)
myabc
1
470
Frontend Choices
myabc
0
68
Frontend Choices
myabc
0
310
Putting the Hype back in Hypermedia
myabc
1
240
DataMapper
myabc
2
230
Other Decks in Technology
See All in Technology
エンジニアは生成AIと どのように向き合うべきか? ことばの意味という観点から
verypluming
3
320
ポスター発表&デモと総括 / Poster Presentations & Demonstrations and Summary
ks91
PRO
0
180
JJUG CCC 2026 Spring AI時代の開発こそ標準化を武器に! ― 方式・プロセス・プラットフォームの標準化
s27watanabe
2
660
20260528_生成AIを専属DSに_Howの次にすべきことを考える
doradora09
PRO
0
280
AI駆動開発でなんでもハンズオン環境をつくってみた
yoshimi0227
0
190
AIガバナンス実践 - 生成AIコネクタのデータ漏洩リスクと実務対策
knishioka
0
160
【Gen-AX】20260530開催_JJUG CCC 2026 Spring
genax
0
310
Javaコミュニティをもっと楽しむための9箇条
takasyou
0
980
「嘘をつくテスト」の失敗例から学ぶ 良いテストコード #frontend_phpcon_do
asumikam
0
140
Claude code Orchestra
ozakiomumkj
3
890
チームで実践する AI-DLC 思考の軌跡を残すチェックポイント設計
belongadmin
0
1.2k
Agentic ERPをどう設計するか ー 受発注エージェントを動かす、現場の知見と設計思想ー
recerqainc
1
170
Featured
See All Featured
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
240
Writing Fast Ruby
sferik
630
63k
Building Applications with DynamoDB
mza
96
7.1k
The SEO Collaboration Effect
kristinabergwall1
1
470
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
310
Agile that works and the tools we love
rasmusluckow
331
21k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.8k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
150
Building Flexible Design Systems
yeseniaperezcruz
330
40k
The Curse of the Amulet
leimatthew05
1
13k
Transcript
“ Die Grenzen meiner Sprache bedeuten die Grenzen meiner Welt.
– Wittgenstein
“ The limits of my language mean the limits of
my world. – Wittgenstein
HOW A LANGUAGE REFLECTS ITS PEOPLE Alex Coles | RubyConf
Australia 2017
WHY RUBY?
WE LIKE RUBY
WE ❤ RUBY
HUMAN
Language People World
None
Language People World Computing
PEOPLE TO LANGUAGE LANGUAGE TO PEOPLE LANGUAGE TO LANGUAGE PEOPLE
TO COMPUTING COMPUTING TO PEOPLE PEOPLE TO COMPUTING TO PEOPLE
G’DAY MELBOURNE
ABOUT ME
@MYABC Alex Coles Oxford, England
EURUCAMP.ORG JRUBYCONF.EU
TRAILBLAZER.IO
HIRE ME
PEOPLE TO LANGUAGE
LANGUAGES ➤ Natural - e.g. English, Spanish ➤ Constructed -
e.g. Esperanto ➤ Formal - e.g. Algebra, JavaScript
NATURAL
HISTORY
None
None
POLITICS AND COMMERCE
POST-TRUTH BREXIT FLAT WHITE
REFORM AND PLANNING
תירבע
None
KAURNA
None
None
INDIVIDUALS
THE BARD Creator of many words
MATZ Creator of Ruby
COMMUNITY
LANGUAGE TO PEOPLE
SHADES OF GREY
None
None
WELTANSCHAUUNG
Edward Sapir | Benjamin Lee Whorf
LANGUAGE AFFECTS WORLD VIEW
LANGUAGE DETERMINES WORLD VIEW
Wilhelm von Humboldt
RUBY SYNTAX
RSpec.describe 'my Ruby code' do it_behaves_like 'the English language' end
RSpec.describe Boomerang do subject(:boomerang) { Boomerang.new } it_behaves_like 'a hunting tool' it_behaves_like 'a percussion instrument' it 'is designed to be thrown' do expect(boomerang).to be_throwable end end
PUNCTUATION
WHAT THERE IS ➤ ? question mark ➤ ! bang
(exclamation mark)
WHAT THERE ISN’T ➤ ; semi-colons ➤ () parentheses (sometimes)
➤ {} braces (sometimes)
UNICODE
None
None
LTR VS RTL
None
WORD ORDER
SUBJECT VERB OBJECT
➤ The man eats fish ➤ L'homme mange le poisson
➤ a = 2 ➤ a = 2 + 2 SUBJECT VERB ORDER
VERB SUBJECT OBJECT
LOGIC AND ARITHMETIC NOTATION prefix + 2 2 “Polish” infix
2 + 2 postfix 2 2 + “Reverse Polish”
➤ (def x 5) ➤ (+ 2 4)
OPERATORS
Logical Operators ➤ and ➤ or ➤ not Special Operators
➤ defined?
LANGUAGE TO LANGUAGE
LANGUAGES IN THE FIFTIES ➤ Short Code ➤ Autocode ➤
FORTRAN ➤ FLOW-MATIC
LANGUAGES IN THE SIXTIES ➤ ALGOL ➤ LISP ➤ C
RUBY PRIOR ART ➤ Perl ➤ Smalltalk ➤ Eiffel ➤
Ada ➤ LISP
PEOPLE TO COMPUTING
LOW-LEVEL LANGUAGES ➤ Machine Code ➤ Assembly
None
NO CONCEPTS
SIGNALS AND NEURONS
HIGHER
COMPUTING TO PEOPLE
TECHNOLOGY
PERSIST
AI
HUMAN EFFECT
…
PEOPLE TO COMPUTING TO PEOPLE
SOFTWARE = CODE + DOCUMENTATION
SELF-DOCUMENTING CODE
CONCLUSION
WHY RUBY?
MINSWAN
THANK YOU
@MYABC