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
Lotus RubyDay 2015
Search
Luca Guidi
November 13, 2015
Programming
960
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Lotus RubyDay 2015
Luca Guidi
November 13, 2015
More Decks by Luca Guidi
See All by Luca Guidi
Functional Web with Hanami
jodosha
4
450
Lessons Learned While Building Hanami
jodosha
4
1.2k
Lotus For Rails Developers
jodosha
2
340
Lotus - Brighton Ruby 2015
jodosha
3
930
Lotus
jodosha
8
580
A Rails Criticism
jodosha
4
1.7k
Other Decks in Programming
See All in Programming
Flow は今どうなっているか
mizdra
PRO
0
920
異なる設計思想のフレームワークを経験して得た学び
amekuhideki
2
1.5k
初めての模倣学習とVLA
natsutan
0
470
FDEとは、何者なのか?
masapyon1212
0
140
片田舎のおっさん、 Swift Buildのダイアモンド問題解決の不具合修正PRを出すが、解決方法がキャッシュをしないようにすることであり、ビルド時間が伸びると言われてマージされないので高速化もする/swiftbuild
yimajo
0
360
PyConJP2026_wat_Python × Signal Processing: How to Draw Pictures with Sound Using Spectrogram Art
wat
0
670
AIの中の人になってみる
htkym
0
160
30年振りにコンパイラの定数整数除算を改善した
herumi
9
4.4k
【デモ】Kiroで体験する仕様駆動開発|設計からコーディングまでAIと進める開発フロー
cmkudo
0
570
20260828_品質と開発生産性を両立させる、AI時代のE2Eテストの考え方
magicpod
0
150
AIを上手に使っていこうとしたら越境せざるを得なくなった話 〜実践1年で見えた境界を越えなければならない理由と進め方〜 / Crossing borders with AI
tomoyakitaura
3
1k
tsc.rip を支える技術 / Kyoto.なんか #8
susisu
0
4.3k
Featured
See All Featured
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.6k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.3k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
3k
The Pragmatic Product Professional
lauravandoore
37
7.4k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.9k
What does AI have to do with Human Rights?
axbom
PRO
1
2.4k
Building Flexible Design Systems
yeseniaperezcruz
330
41k
Designing for Timeless Needs
cassininazir
1
470
Into the Great Unknown - MozCon
thekraken
41
2.7k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
600
The browser strikes back
jonoalderson
0
1.6k
Transcript
Lotus & The Future Of Ruby @jodosha / #lotusrb
None
None
None
None
The future of Ruby
Will Ruby die?
None
None
Programming Languages Rank 0% 0,75% 1,5% 2,25% 3% Ruby Erlang
Haskell Go Rust Elixir Clojure Source: TIOBE
Let’s imagine the future
The future is polyglot
Modern system languages are more developer friendly than C/C++
Maintenance costs for infrastructure will be less and less relevant
Ruby isn’t used anymore for components that require improved performances
Web applications will still use Ruby
Ruby is here to stay
Ruby is desperately trying to catch these new languages’ features,
but this is a mistake
“We can’t make promises” - Matz
We need to find a new sense of purpose for
Ruby
Ruby has to become the first-class solution for a well
defined set of problems
Let’s have a look at the present
Homebrew
None
None
Thanks to a beautiful DSL, Homebrew has become a successful
project with ~4000 formulæ
ORMs
None
Sonic Pi
None
Thanks to its expressiveness, Ruby can build bridges that reach
complex systems
Docker uses raw BASH commands
None
MRuby
None
Let’s talk about humans
Like a natural language, a programming language is dead without
people using it
Kids creating music with Sonic PI Credit: sonic-pi.net
Kids playing with “Hello Ruby” Credit: helloruby.com
People learning Ruby & web development Credit: railsgirls.com
Ruby can be an entry point for life changing careers
I hope that the Ruby Community of the future will
be a safe place where everyone can feel welcome
We should improve Ruby ecosystem in order to attract experienced
engineers from other languages
Web
Why not Rails?
None
None
None
Lotus Philosophy
Lightweight
Features as of v0.5.0 • Thread-safety • Full featured HTTP
router • RESTful resources • Actions and views as objects • Actions callbacks • Code sharing • Exception handling • Sessions • Secure Cookies • HTTP Caching • Automatic MIME Types • 20+ Template engines • Partials and layouts • Presenters • Routing helpers • Form helpers • HTML helpers • Automatic markup escape • CSRF and XSS prevention • Force SSL • Entities • Repositories • Data Mapper • SQL and Memory adapters • Dirty Tracking • Reusable validations • Mailers • Multiple environments • Static assets • JSON body parser • Params whitelisting and validation • Code generators • Rack servers support • Application console • Database console • Powerful CLI • Migrations • RSpec, Minitest and Capybara support • Several architectures • And more..
0 17,5 35 52,5 70 Ruby Rack Sinatra Lotus Rails
Dependencies Memory
On average, we use only a fraction of the features
that a gem provides.
Lotus depends on a few gems. You can be sure
that all the loaded code is useful for your application.
A complete framework
Lotus goes beyond “Flat-MVC” by providing a set of collaborators
for “Full-MVC”.
Future plans
Lotus::Assets • Helpers • Third Party Gems • Preprocessors •
Deployment
“Today’s good practices are HTTP/2 antipatterns” - Ilya Grigorik
Experimental HTTP/2 support
None
None
GitHub: jodosha/panther jodosha/instants
http://lotusrb.org/hackday
http://lotusrb.org/mailing-list Subscribe to the mailing list at:
http://lotusrb.org
http://lucaguidi.com
Q&A
https://speakerdeck.com/jodosha/ lotus-rubyday-2015 Slides available at:
Thank you
Credits Ruby picture by Orbital Joe https://flic.kr/p/79UqQM