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
AI駆動で0→1をやって見えた光と伸びしろ
passion0102
1
850
『毎日の移動』を支えるGoバックエンド内製開発
yutautsugi
2
290
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
270
Android16 Migration Stories ~Building a Pattern for Android OS upgrades~
reoandroider
0
140
あなたとKaigi on Rails / Kaigi on Rails + You
shimoju
0
190
Webサーバーサイド言語としてのRustについて
kouyuume
1
4.9k
コード生成なしでモック処理を実現!ovechkin-dm/mockioで学ぶメタプログラミング
qualiarts
0
270
Goで実践するドメイン駆動開発 AIと歩み始めた新規プロダクト開発の現在地
imkaoru
4
900
What's new in Spring Modulith?
olivergierke
1
170
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
640
組込みだけじゃない!TinyGo で始める無料クラウド開発入門
otakakot
2
380
AkarengaLT vol.38
hashimoto_kei
1
120
Featured
See All Featured
The World Runs on Bad Software
bkeepers
PRO
72
11k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
Writing Fast Ruby
sferik
630
62k
Thoughts on Productivity
jonyablonski
70
4.9k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
Typedesign – Prime Four
hannesfritz
42
2.8k
jQuery: Nuts, Bolts and Bling
dougneiner
65
7.9k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
130k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
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