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
160
Why Ruby? - View from business aspect - Jakarta.rb Februari 2012 - Fajrin Rasyid
xinuc
1
350
Other Decks in Programming
See All in Programming
『自分のデータだけ見せたい!』を叶える──Laravel × Casbin で複雑権限をスッキリ解きほぐす 25 分
akitotsukahara
2
640
AIともっと楽するE2Eテスト
myohei
7
2.7k
技術同人誌をMCP Serverにしてみた
74th
1
650
Rails Frontend Evolution: It Was a Setup All Along
skryukov
0
150
#kanrk08 / 公開版 PicoRubyとマイコンでの自作トレーニング計測装置を用いたワークアウトの理想と現実
bash0c7
1
770
Webの外へ飛び出せ NativePHPが切り拓くPHPの未来
takuyakatsusa
2
560
Modern Angular with Signals and Signal Store:New Rules for Your Architecture @enterJS Advanced Angular Day 2025
manfredsteyer
PRO
0
220
Rubyでやりたい駆動開発 / Ruby driven development
chobishiba
1
730
すべてのコンテキストを、 ユーザー価値に変える
applism118
3
1.3k
AI時代のソフトウェア開発を考える(2025/07版) / Agentic Software Engineering Findy 2025-07 Edition
twada
PRO
89
30k
ペアプロ × 生成AI 現場での実践と課題について / generative-ai-in-pair-programming
codmoninc
2
18k
AI コーディングエージェントの時代へ:JetBrains が描く開発の未来
masaruhr
1
160
Featured
See All Featured
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Building a Modern Day E-commerce SEO Strategy
aleyda
42
7.4k
Visualization
eitanlees
146
16k
Adopting Sorbet at Scale
ufuk
77
9.5k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.3k
The World Runs on Bad Software
bkeepers
PRO
69
11k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.9k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Facilitating Awesome Meetings
lara
54
6.4k
Scaling GitHub
holman
460
140k
Faster Mobile Websites
deanohume
307
31k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.4k
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