the irresistible charms of java
TRANSCRIPT
© 10Xofy
The Irresistible Charms of
Ashish Belagali,http://10Xofy.comTwitter: @10Xofy
© 10Xofy
AgendaAgenda
Java popularity
History of Java
Technology
Strategy blunders
Frameworks & tech stacks
All pervasiveness
Attackers
Critiques n Myths
Technology charms
Business charms
© 10Xofy
Java still #1 – May 2017Java still #1 – May 2017
© 10Xofy
HistoryHistory
1991 – Green team at Sun led by James Gosling JDK Alpha and Beta (1995) JDK 1.0 (23rd Jan, 1996) JDK 1.1 (19th Feb, 1997) J2SE 1.2 (8th Dec, 1998) J2SE 1.3 (8th May, 2000) J2SE 1.4 (6th Feb, 2002) J2SE 5.0 (30th Sep, 2004) Java SE 6 (11th Dec, 2006) Sun acquired by Oracle (27th Jan, 2010) Java SE 7 (28th July, 2011) Java SE 8 (18th March, 2014)
© 10Xofy
TechnologyTechnology
10101010src
10101010
src
src
(1) Compiled
(2) Interpreted
(3) Compiled, then Interpreted
Java Virtual Machine (JVM) technology WORA – Write Once, Run Anywhere Better than WOCA Optimizing resource utilization, security Backward compatibility
© 10Xofy
Strategy Blunder - 1Strategy Blunder - 1
Focus on hardware, ignore software
Sun did not make money on Java, others did.
Owned specs, not product. Sun played big brother –
open sourced, first partially, then completely.
© 10Xofy
Strategy Blunder - 2Strategy Blunder - 2
Craftsmanship ignored initially Examples
Java UI Performance Templates, method properties,
lambda expressions Ended up losing developers
and then playing catch-up, as market forced them
© 10Xofy
Strategy Blunder - 3Strategy Blunder - 3
Go after foes and friends too – compete and include everything
Examples CORBA – RMI Spring – EJB3 Eclipse – Netbeans Tomcat/Jboss – Glassfish
Made framework vendors insecure.
Lost money. Made developers happy?
© 10Xofy
33rdrd Party Frameworks Party Frameworks
Sun stopped playing a leadership role in Java long ago. Talented 3rd party developers who made brilliant frameworks, adopted Java for interesting uses.
IBM Eclipse, IntelliJ, Google Android, JRebel
Image attributions: Matt Raible on Flickr
© 10Xofy
Impressive Technology StacksImpressive Technology Stacks
JEE Spring Play Spark...
© 10Xofy
All PervasiveAll Pervasive
Image attributions: (1) Nimbuzz on Flickr (2) Command827~commonswiki
Mobile Web(HTML & Rich client)
Desktop(AWT, Swing,
SWT, Webstart)
© 10Xofy
AttackersAttackers
C#
Scala, Guice
Ruby, Python,Node.js
© 10Xofy
Critiques & MythsCritiques & Myths
Java is slow Java hogs memory Java is verbose Java development is slow
© 10Xofy
Technology CharmsTechnology Charms
Richest ecosystem of frameworks Mature, enterprise-ready, proven technology Robust, prevents memory leaks and uses
static typing => developers cannot shoot themselves in the foot
Highly secure and scalable
© 10Xofy
Business CharmsBusiness Charms
Java developers are trained in object orientation
#1 programming language, Huge community support => help available if stuck
Huge supply of Java developers => expect available throughout life of software
Backward compatibility => Old programs don’t break on newer Java release
© 10Xofy
Thank YouThank You
Ashish Belagali,http://10Xofy.comTwitter: @10Xofy