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
A Tale of a Happy Programmer
Search
Nugroho Herucahyono
September 26, 2013
Programming
0
150
A Tale of a Happy Programmer
Ruby programmers are happy programmers
Nugroho Herucahyono
September 26, 2013
Tweet
Share
More Decks by Nugroho Herucahyono
See All by Nugroho Herucahyono
Simply Distributed
xinuc
0
120
Choosing the right technology
xinuc
0
180
This Talk is so Meta
xinuc
1
130
Rails on Wiradipa - Jakarta.rb Februari 2012 - Hafiz Badrie Lubiz
xinuc
1
170
Why Ruby? - View from business aspect - Jakarta.rb Februari 2012 - Fajrin Rasyid
xinuc
1
350
Other Decks in Programming
See All in Programming
メルカリのリーダビリティチームが取り組む、AI時代のスケーラブルな品質文化
cloverrose
2
510
それ、本当に安全? ファイルアップロードで見落としがちなセキュリティリスクと対策
penpeen
7
2.4k
CSC307 Lecture 08
javiergs
PRO
0
660
dchart: charts from deck markup
ajstarks
3
990
2026年 エンジニアリング自己学習法
yumechi
0
120
公共交通オープンデータ × モバイルUX 複雑な運行情報を 『直感』に変換する技術
tinykitten
PRO
0
200
SourceGeneratorのススメ
htkym
0
180
360° Signals in Angular: Signal Forms with SignalStore & Resources @ngLondon 01/2026
manfredsteyer
PRO
0
100
Patterns of Patterns
denyspoltorak
0
1.3k
Rust 製のコードエディタ “Zed” を使ってみた
nearme_tech
PRO
0
120
OCaml 5でモダンな並列プログラミングを Enjoyしよう!
haochenx
0
110
AIエージェントの設計で注意するべきポイント6選
har1101
7
3.4k
Featured
See All Featured
Designing for Performance
lara
610
70k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
Evolving SEO for Evolving Search Engines
ryanjones
0
120
Docker and Python
trallard
47
3.7k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
290
GitHub's CSS Performance
jonrohan
1032
470k
The Limits of Empathy - UXLibs8
cassininazir
1
210
Abbi's Birthday
coloredviolet
1
4.6k
エンジニアに許された特別な時間の終わり
watany
106
230k
How to make the Groovebox
asonas
2
1.9k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.8k
Skip the Path - Find Your Career Trail
mkilby
0
52
Transcript
@ Jakarta.rb 17 Oktober 2011
Who's talking? Nugroho Herucahyono programming since 12 years old ex
java programmer rubyist since 2006 twitter: @xinuc github: @xinuc
Works at Bukalapak
Disclaimer • This is my first jakarta.rb • Not a
technical talk • I'm really bad at public speaking • So, please bear with me
“a tale of a happy programmer”
I18n.locale = :id
“cerita tentang seorang programmer bahagia” err... - -”
Once upon a time
None
None
None
None
None
None
None
None
None
Maybe I did it wrong
None
None
None
class ThisIsAClassIDontReallyWantToNameButJavaMakesMe { public static void main() { System.out.println("Hello World");
} }
puts 'Hello World'
import java.io.File; import java.io.InputStream; // ... declare class, etc., then
... public byte[] justReadMeAFilePlease() { try { file = new File("my-file.txt"); fis = new FileInputStream(file); byte[] b = new byte[(int) file.length()]; fis.read(b); return b; } catch (Exception e) { e.printStackTrace(); } }
contents = File.read 'my-file.txt'
import java.util.Arrays; import java.util.Comparator; import java.util.Collections; import java.util.List; public class
SortList { public static void main (String[] args){ List<String> names = Arrays.asList("Nugroho", "Xinuc", "Herucahyono"); Collections.sort(names, new Comparator<String>(){ public int compare(String first, String second){ return (first.length() > second.length()) ? 1 : -1; } }); StringBuffer buf = new StringBuffer(""); String sep = ""; for(String name : names){ buf.append(sep); buf.append(name); sep = ", "; } System.out.println(buf.toString()); } } •
names = ["Nugroho", "Xinuc", "Herucahyono"] puts names.sort_by(&:length).join(", ")
I never knew that code can be this beautiful
Programming is fun again!!
None
I code ruby because it makes me happier – Silakan
di tweet
Does it mean that his life is perfect? No
Broken heart...
Sucky boss
Failing projects
Pivoting startups
None
None
Enjoy your jakarta.rb