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
Ruby is not slow anymore
Search
Pavel Kalashnikov
April 03, 2023
Programming
0
520
Ruby is not slow anymore
Slide 25 has the video. You can find it here
https://youtu.be/qxZ2ste7RyA
Pavel Kalashnikov
April 03, 2023
Tweet
Share
Other Decks in Programming
See All in Programming
見えないメモリを観測する: PHP 8.4 `pg_result_memory_size()` とSQL結果のメモリ管理
kentaroutakeda
0
330
PSR-15 はあなたのための ものではない? - phpcon2024
myamagishi
0
100
PHPで作るWebSocketサーバー ~リアクティブなアプリケーションを知るために~ / WebSocket Server in PHP - To know reactive applications
seike460
PRO
2
190
数十万行のプロジェクトを Scala 2から3に完全移行した
xuwei_k
0
270
アクターシステムに頼らずEvent Sourcingする方法について
j5ik2o
4
260
SymfonyCon Vienna 2025: Twig, still relevant in 2025?
fabpot
3
1.2k
From Translations to Multi Dimension Entities
alexanderschranz
2
130
これでLambdaが不要に?!Step FunctionsのJSONata対応について
iwatatomoya
2
3.6k
Effective Signals in Angular 19+: Rules and Helpers @ngbe2024
manfredsteyer
PRO
0
130
CQRS+ES の力を使って効果を感じる / Feel the effects of using the power of CQRS+ES
seike460
PRO
0
120
短期間での新規プロダクト開発における「コスパの良い」Goのテスト戦略」 / kamakura.go
n3xem
2
170
Go の GC の不得意な部分を克服したい
taiyow
2
770
Featured
See All Featured
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.2k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
229
52k
YesSQL, Process and Tooling at Scale
rocio
169
14k
Visualization
eitanlees
146
15k
How to Think Like a Performance Engineer
csswizardry
22
1.2k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
The World Runs on Bad Software
bkeepers
PRO
65
11k
Designing for humans not robots
tammielis
250
25k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.1k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
4 Signs Your Business is Dying
shpigford
181
21k
Transcript
Ruby is not slow anymore @kalashnikovisme
Pasha Kalashnikov @kalashnikovisme Backend Engineer @ @evilmartians
None
@kalashnikovisme @evilmartians They say
Ruby is too slow @kalashnikovisme @evilmartians They say What does
it mean?
1 2 3 4 5 6 7 8 9 10
11 12 13 14 the_fastest_lang.rb faster.cpp @kalashnikovisme @evilmartians def sum_eq_n?(arr, n) return true if arr.empty? && n == 0 arr.product(arr).reject do |a,b| a == b end.any? { |a,b| a + b == n } end Is this slow?
1 2 3 4 5 6 7 8 9 10
11 12 13 14 the_fastest_lang.rb faster.cpp @kalashnikovisme @evilmartians def some_method sleep Random.rand(1_000_000) end or this?
what is slow? @kalashnikovisme @evilmartians But
@kalashnikovisme @evilmartians What virtual machine is slow?
@kalashnikovisme @evilmartians What virtual machine is slow? (interpreter, runtime)
MRI / YARV - slow ? @kalashnikovisme @evilmartians What virtual
machine? (interpreter, runtime)
MRI / YARV - slow ? @kalashnikovisme @evilmartians JRuby /
JVM - slow ? What virtual machine? (interpreter, runtime)
MRI / YARV - slow ? @kalashnikovisme @evilmartians JRuby /
JVM - slow ? Rubinius - slow ? What virtual machine? (interpreter, runtime)
@kalashnikovisme
@kalashnikovisme
@kalashnikovisme hack yourself
@kalashnikovisme Ruby
@kalashnikovisme Rust
Year of Rust @kalashnikovisme @evilmartians 2022 in the Ruby community
None
None
Proof of concept @kalashnikovisme @evilmartians Let’s make a The fastest
JSON parser Ruby gem ever!!!
https://youtu.be/qxZ2ste7RyA
@kalashnikovisme @evilmartians Ruby Class Magnus Type String RString Integer Integer
Float Float Array RArray Hash RHash Symbol Symbol Class RClass Module RModule
Thanks for watching @kalashnikovisme @evilmartians and don’t forget to subscribe!
@kalashnikovisme @kalashnikovisme kalashnikovisme.medium.com
[email protected]
@evilmartians @evilmartians https://evilmartians.com