H O W D I D J AVA S U R V I V E ?
D O T- C O M B U B B L E M O B I L E P H O N E S M U LT I - C O R E R E V O L U T I O N T H E C L O U D B I G D A TA
E V O LV E D
• Open Source
• Backwards Compat
• Polyglot
• Concurrency
• Portability
E M B R A C E D C H A N G E !
J AVA R E N A I S S A N C E
N E T F L I X T W I T T E R G O O G L E
J O E K U T N E R@ C O D E F I N G E R
H E R O K U
1 9 9 5
S U N M I C R O S Y S T E M S
1 9 9 5
N E T S C A P E
S E R V E R - S I D E J AVA
J D K 1 . 2
• Just-In-Time Compiler
• Reflection
• Collections
• Database libraries
• Swing
• Java Micro Edition
1 9 9 8
D O T- C O M B U B B L E
S U N M I C R O S Y S T E M S
$ 2 5 0 / S H A R E
$ 1 0 / S H A R E
J C PJ A VA C O M M U N I T Y P R O C E S S
J AVA S P E C I F I C AT I O N R E Q U E S T ( J S R )
• IPv6
• Regex
• Assertions
• Logging API
• New I/O
2 0 0 4
M O O R E ’ S L A W : C L O C K R A T E C U R V E S F L A T T E N O U T
2 0 0 4
C A N C E L E D I T S N E X T- G E N C H I P T O F O C U S O N D U A L - C O R E
J D K 1 . 5
• Concurrency
• Generics
• Other stuff
C O M P E T I T I O N
B E N C H M A R K S
P E R F O R M A N C E
• Concurrent Garbage Collection
• Non-Uniform Memory Access
• Large Page Support
• Heap Compaction
B A D AT $ $ $
S U N M I C R O S Y S T E M S
P O L I T I C S
A PA C H E H A R M O N Y
2 0 0 6
J D K 6 : L A S T R E L E A S E F O R 5 Y E A R S
P O LY G L O T
Scala
C l o ju re
2 0 0 7 - 2 0 0 9
S T I L L B A D A T M A K I N G M O N E Y
O P E N J D K
G N U G P L L I C E N S E
N O T H I N G F O R A W H I L E
J D K 7
• Project Coin
• Meh
• InvokeDynamic
2 0 1 1
B I G D ATA
P R O G R E S S
J D K 8
• PermGen Removal
• Security
• Lambdas
• Streams
• Compact Profiles
2 0 1 4
http://spectrum.ieee.org/computing/software/top-10-programming-languages
N A S A
http://jaxenter.com/developing-nasas-mission-software-with-java-108114.html
B L U - R AY
http://news.cnet.com/Java-to-appear-in-next-gen-DVD-players/2100-1046_3-5766409.html
I N D U S T R I A L R O B O T S
http://www.oracle.com/us/solutions/internetofthings/java-iot-industrial-automation-2430562.pdf
N E T F L I X
2 Billion Content Requests Per Day
57.4 Million Subscribers
33% of North American downstream traffic
http://www.oraclejavamagazine-digital.com/javamagazine_twitter/20150304#pg22
Scala
T W I T T E R
1.6 billion search queries per day
302 million active users
340 million tweets per day
http://www.benzinga.com/news/earnings/15/04/5452400/twitter-mau-were-302m-for-q1-up-18-yoy
Scala
J D K 9
• Project Jigsaw
2 0 1 6
J AVA R E N A I S S A N C E
C L O U D I O T M O B I L E B I G D A TA
J O E K U T N E R@ C O D E F I N G E R
H E R O K U