SlideShare a Scribd company logo
1 of 30
Free Java
Reasons to be cheerful!


Ben Evans (@kittlyst)
Martijn Verburg (@karianna)

                              Slide Design by Kerry Kenneally www.kerrykenneally.com
Who are these guys anyway?




                             2
Who are these guys anyway?




                             3
Who are these guys anyway?




                             4
Who are these guys anyway?




                             5
“Java’s not dead, it’s just resting!”

• This is a fact!

• This is an opinion


• Due to time constraints, other talks and beer, this talk may be a little
  different to advertised...

• For bonus points find the Easter egg!




                                                                 6
“Java’s not dead, it’s just resting!”

• It’s quite true that Java (the language) has been a bit quiet

• Yeah, but that’s a lot to do with big company stuff
    – We don’t really want to talk too much about that... maybe


• Java 6 had some significant improvements
    – It gets more bad press than it deserves
    – Performance is a key benefit

• Java 7 seemed at times to get lost in the wilderness
    –   Some of the features were released as updates to SE 6
        •    G1, Compressed object pointers, Slimmed down web runtime
    –   Big arguments about some features.....
        •    e.g. Closures (still going!)
    –   JavaFX distraction
                                                                        7
How did we get here? Where are my
          shoes?
• The community and the platform have not been quiet
   –   You’re a noisy bunch, that’s for sure!
   –   Conference attendances are _way_ up and growing
   –   Oracle marketing estimates 9-10 million developers
   –   Dozens of new JVM languages

• We’re actually winning
   – Seriously! Java is liberated (thanks to people in this room)
   – We’re now fighting over vigorously debating types of licenses and
     interpretations
   – And Governance!
   – Like any good democracy, we need to be vigilant of our freedoms




                                                                8
Along came Larry...




                      9
Google vs Oracle - Round 1 - Fight!




                                      10
Where’s the lawsuit at?

• http://www.groklaw.net (search for OracleGoogle)

• Most recent FUD: Copyrighted Source code found in Android!
   – A little digging showed this to be a little sensationalist


• Most recent case event: Case referred to a private mediator
   – If unresolved then trial on Oct 31 2011


• Developer community at Devoxx voted (87%) that the lawsuit was
  harmful in some way to Java

• Is the message that this is scaring off the community &
  corporates getting through to Oracle management?


                                                                  11
Parting of the ways and new joiners




                                                         12
                              Original Image by Acaben
OpenJDK - Plan B

• 20 Sep 2010 - Mark Reinhold announces that Oracle will go with
  Plan B
   – Splits the existing OpenJDK effort into Java 7 (July 2011) and Java 8
     (2012)
   – Popular choice with the community

• Some JRockit features to be added to OpenJDK
   – Exact roadmap not yet clear


• Changes to the memory model (Bye-bye Permgen)

• Some new features to be delayed until JDK 8
   – Closures Lambdas SAM literals



                                                                   13
InvokeDynamic

• InvokeDynamic is a key new JVM feature
    – It’s the first new bytecode since Java 1.0
    – Joins InvokeVirtual, InvokeStatic, InvokeInterface and InvokeSpecial


• It removes a key part of the static typing system
    – Method names / signatures will not need to be known at compile time
    – User code can determine dispatch at runtime
    – Lots of interesting possibilities

• Aims to be as fast as InvokeVirtual

• No Java syntax for handling it in Java 7 - but maybe for 8



                                                                   14
InvokeDynamic is a friend to free languages

• Free, open JVM languages such as JRuby, Jython, Groovy, Clojure
  et al all stand to benefit from InvokeDynamic
    – These gains will vary, JRuby gains a lot, Clojure not so much
    – There’s even talk of bringing it to Scala!

• Groovy is already well established as Java’s flexible friend
    – Increasing its performance keeps it at the forefront

• JRuby has been working closely with the JSR-292 team
    – Big potential wins
    – Makes JRuby enticing to RoR developers




                                                                      15
And now for something completely
          different... Concurrency
• Otters!

• Collaborative

• Competitive

• Sneaky

• Hare off in different directions

• Can wreak havoc if not contained




                                             16
Why concurrency matters again




                                17
New concurrency models

• Java’s approach of mutable state, locks and visible by default looks
  increasingly dated
    – java.util.concurrent is a big help, but can only go so far
    – Java’s syntax and semantics are constraints
    – Thread is not a high-level concurrency abstraction

• Other languages on the JVM are free to innovate
    – Clojure - Immutable by default, thread-isolation by default, STM
      subsystem
    – Scala - Powerful actors model


• Java 7 gets in on the party
    – fork and join executions are not necessarily threads



                                                                    18
What’s in my Future?

• Learning another JVM language won’t hurt!
    – Lots to choose from
    – No “Java Killer” yet.....

• Don’t forget about Java 7!
    – Some compelling new features (Coin, NIO.2, F/J, etc)
    – Yet more performance

• The Multi-core revolution is here
    – Brush up your modern concurrency
    – Java 7 makes this easier
    – Other languages offer alternative approaches




                                                             19
Java is not just the language




                                20
It’s about the community innit!




                                  Original Image by US Embassy Sweden




                                             21
Future of Java SE

• Will be just fine

• The mainline VM will continue to improve
   – InvokeDynamic
   – JRockit feature merge

• Probably not too many faddish language features
   – But you can have what you want anyway in other JVM languages
   – Yeah, we’re looking at you Scala, Clojure, Groovy fanboys/girls

• Hopefully everyone saw Mark’s talk




                                                                22
Future of JEE

• The future here looks bright!
   – More servers are getting certified as JEE6 - but it’s still early days
   – JEE7 process is starting to get underway


• JEE has shrunk whilst the open source alternatives have grown
   – They’re pretty much meeting in the middle
   – This is a good thing
   – Spring is quite big these days....
   – That’s less of a good thing


• Case Study - Adam Bien (Java Champion)
   – Live Demo - rapid development of apps with core JEE6
       • Check out the Devoxx video of him online




                                                                       23
Future of Java ME

• On the decline
   – Nokia has dropped it from their technology roadmap
   – Still popular in the dumbphone market
   – That’s still a really huge market

• Hints that with JDK 8, Java SE could eventually run on mobiles.
   – Mark mentioned this earlier
   – Will it be soon enough?

• Could Android become the official replacement for Java ME?
   – “No Comment” (Oracle and Google)
   – Seems unlikely today, but stranger things have happened




                                                               24
Java FX

• Yeah, well, it was a nice try

• Java FX 2.0 is coming out
    – Will anyone notice?


• Even MSFT are downgrading Silverlight from their roadmap
    – ‘HTML5’ seems to be the way forward
    – Whatever that means...


• Why have another runtime in a browser when it already has a
  capable (Javascript) VM?




                                                          25
JCP - Trouble in Paradise?

• OK, so it was never _really_ paradise
    – And we lied about not talking politics


• Stephen Colebourne’s blog captures the events nicely
    – http://www.jroller.com/scolebourne/


• Prominent members leaving
    – Doug Lea
    – “Crazy” Bob Lee

• Allegations of ballot stuffing

• We’re not sure what shape it’s going to take in the future
    – But let’s face it - it’s dead

                                                               26
Rebooting OpenJDK governance?

• Was there ever really a mature OSS governance model for
  OpenJDK?

• Surely something is better than nothing?


• New attempt being made by Mark & the committee
   –   Really positive that the team are trying to make progress
   –   Open mailing list: .... Doug’s back
   –   Still an awful lot to be ironed out - but possibilities
   –   The burden’s still on Oracle to engage with the community
   – But the community need to step up too


• But what about the rest of the JCP?


                                                                   27
An indecent A modest proposal

• Imagine a world...


• Where there was an independent standards body...

• Focused on delivering pure free as-in-speech and beer, explicitly
  patent-free, open standards for the Java ecosystem...


• Could such a body replace - or feed in to - the JCP?
    – This is similar to what Stephen Colebourne et al have suggested
    – We are just developers
    – But just imagine....




                                                                 28
The future’s bright, the future’s Java!

• We have arguably the most capable VM on the planet

• We have a wealth of new languages to complement and challenge
  Java

• We have oceans of open source software

• We have a great community (you guys)!!

• This is a GREAT time to be working in the Java ecosystem

• We have an opportunity to engage and make the most of our
  “Interesting Times”

                                                             29
Thanks for listening: wellgrndjava50




                                       30

More Related Content

Recently uploaded

Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...panagenda
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationKnoldus Inc.
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Scott Andery
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...AliaaTarek5
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Alkin Tezuysal
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesThousandEyes
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 

Recently uploaded (20)

Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 

Featured

How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Applitools
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at WorkGetSmarter
 

Featured (20)

How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 

Free Java - Reasons To Be Cheerful

  • 1. Free Java Reasons to be cheerful! Ben Evans (@kittlyst) Martijn Verburg (@karianna) Slide Design by Kerry Kenneally www.kerrykenneally.com
  • 2. Who are these guys anyway? 2
  • 3. Who are these guys anyway? 3
  • 4. Who are these guys anyway? 4
  • 5. Who are these guys anyway? 5
  • 6. “Java’s not dead, it’s just resting!” • This is a fact! • This is an opinion • Due to time constraints, other talks and beer, this talk may be a little different to advertised... • For bonus points find the Easter egg! 6
  • 7. “Java’s not dead, it’s just resting!” • It’s quite true that Java (the language) has been a bit quiet • Yeah, but that’s a lot to do with big company stuff – We don’t really want to talk too much about that... maybe • Java 6 had some significant improvements – It gets more bad press than it deserves – Performance is a key benefit • Java 7 seemed at times to get lost in the wilderness – Some of the features were released as updates to SE 6 • G1, Compressed object pointers, Slimmed down web runtime – Big arguments about some features..... • e.g. Closures (still going!) – JavaFX distraction 7
  • 8. How did we get here? Where are my shoes? • The community and the platform have not been quiet – You’re a noisy bunch, that’s for sure! – Conference attendances are _way_ up and growing – Oracle marketing estimates 9-10 million developers – Dozens of new JVM languages • We’re actually winning – Seriously! Java is liberated (thanks to people in this room) – We’re now fighting over vigorously debating types of licenses and interpretations – And Governance! – Like any good democracy, we need to be vigilant of our freedoms 8
  • 10. Google vs Oracle - Round 1 - Fight! 10
  • 11. Where’s the lawsuit at? • http://www.groklaw.net (search for OracleGoogle) • Most recent FUD: Copyrighted Source code found in Android! – A little digging showed this to be a little sensationalist • Most recent case event: Case referred to a private mediator – If unresolved then trial on Oct 31 2011 • Developer community at Devoxx voted (87%) that the lawsuit was harmful in some way to Java • Is the message that this is scaring off the community & corporates getting through to Oracle management? 11
  • 12. Parting of the ways and new joiners 12 Original Image by Acaben
  • 13. OpenJDK - Plan B • 20 Sep 2010 - Mark Reinhold announces that Oracle will go with Plan B – Splits the existing OpenJDK effort into Java 7 (July 2011) and Java 8 (2012) – Popular choice with the community • Some JRockit features to be added to OpenJDK – Exact roadmap not yet clear • Changes to the memory model (Bye-bye Permgen) • Some new features to be delayed until JDK 8 – Closures Lambdas SAM literals 13
  • 14. InvokeDynamic • InvokeDynamic is a key new JVM feature – It’s the first new bytecode since Java 1.0 – Joins InvokeVirtual, InvokeStatic, InvokeInterface and InvokeSpecial • It removes a key part of the static typing system – Method names / signatures will not need to be known at compile time – User code can determine dispatch at runtime – Lots of interesting possibilities • Aims to be as fast as InvokeVirtual • No Java syntax for handling it in Java 7 - but maybe for 8 14
  • 15. InvokeDynamic is a friend to free languages • Free, open JVM languages such as JRuby, Jython, Groovy, Clojure et al all stand to benefit from InvokeDynamic – These gains will vary, JRuby gains a lot, Clojure not so much – There’s even talk of bringing it to Scala! • Groovy is already well established as Java’s flexible friend – Increasing its performance keeps it at the forefront • JRuby has been working closely with the JSR-292 team – Big potential wins – Makes JRuby enticing to RoR developers 15
  • 16. And now for something completely different... Concurrency • Otters! • Collaborative • Competitive • Sneaky • Hare off in different directions • Can wreak havoc if not contained 16
  • 18. New concurrency models • Java’s approach of mutable state, locks and visible by default looks increasingly dated – java.util.concurrent is a big help, but can only go so far – Java’s syntax and semantics are constraints – Thread is not a high-level concurrency abstraction • Other languages on the JVM are free to innovate – Clojure - Immutable by default, thread-isolation by default, STM subsystem – Scala - Powerful actors model • Java 7 gets in on the party – fork and join executions are not necessarily threads 18
  • 19. What’s in my Future? • Learning another JVM language won’t hurt! – Lots to choose from – No “Java Killer” yet..... • Don’t forget about Java 7! – Some compelling new features (Coin, NIO.2, F/J, etc) – Yet more performance • The Multi-core revolution is here – Brush up your modern concurrency – Java 7 makes this easier – Other languages offer alternative approaches 19
  • 20. Java is not just the language 20
  • 21. It’s about the community innit! Original Image by US Embassy Sweden 21
  • 22. Future of Java SE • Will be just fine • The mainline VM will continue to improve – InvokeDynamic – JRockit feature merge • Probably not too many faddish language features – But you can have what you want anyway in other JVM languages – Yeah, we’re looking at you Scala, Clojure, Groovy fanboys/girls • Hopefully everyone saw Mark’s talk 22
  • 23. Future of JEE • The future here looks bright! – More servers are getting certified as JEE6 - but it’s still early days – JEE7 process is starting to get underway • JEE has shrunk whilst the open source alternatives have grown – They’re pretty much meeting in the middle – This is a good thing – Spring is quite big these days.... – That’s less of a good thing • Case Study - Adam Bien (Java Champion) – Live Demo - rapid development of apps with core JEE6 • Check out the Devoxx video of him online 23
  • 24. Future of Java ME • On the decline – Nokia has dropped it from their technology roadmap – Still popular in the dumbphone market – That’s still a really huge market • Hints that with JDK 8, Java SE could eventually run on mobiles. – Mark mentioned this earlier – Will it be soon enough? • Could Android become the official replacement for Java ME? – “No Comment” (Oracle and Google) – Seems unlikely today, but stranger things have happened 24
  • 25. Java FX • Yeah, well, it was a nice try • Java FX 2.0 is coming out – Will anyone notice? • Even MSFT are downgrading Silverlight from their roadmap – ‘HTML5’ seems to be the way forward – Whatever that means... • Why have another runtime in a browser when it already has a capable (Javascript) VM? 25
  • 26. JCP - Trouble in Paradise? • OK, so it was never _really_ paradise – And we lied about not talking politics • Stephen Colebourne’s blog captures the events nicely – http://www.jroller.com/scolebourne/ • Prominent members leaving – Doug Lea – “Crazy” Bob Lee • Allegations of ballot stuffing • We’re not sure what shape it’s going to take in the future – But let’s face it - it’s dead 26
  • 27. Rebooting OpenJDK governance? • Was there ever really a mature OSS governance model for OpenJDK? • Surely something is better than nothing? • New attempt being made by Mark & the committee – Really positive that the team are trying to make progress – Open mailing list: .... Doug’s back – Still an awful lot to be ironed out - but possibilities – The burden’s still on Oracle to engage with the community – But the community need to step up too • But what about the rest of the JCP? 27
  • 28. An indecent A modest proposal • Imagine a world... • Where there was an independent standards body... • Focused on delivering pure free as-in-speech and beer, explicitly patent-free, open standards for the Java ecosystem... • Could such a body replace - or feed in to - the JCP? – This is similar to what Stephen Colebourne et al have suggested – We are just developers – But just imagine.... 28
  • 29. The future’s bright, the future’s Java! • We have arguably the most capable VM on the planet • We have a wealth of new languages to complement and challenge Java • We have oceans of open source software • We have a great community (you guys)!! • This is a GREAT time to be working in the Java ecosystem • We have an opportunity to engage and make the most of our “Interesting Times” 29
  • 30. Thanks for listening: wellgrndjava50 30

Editor's Notes

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n