SlideShare a Scribd company logo
1 of 43
Download to read offline
Digital Development with Java EE
Peter A. Pilgrim
Independent Contractor, Java Champion
Biography
■  Started with Fortran 77 and
UNIX C Systems Programming
■  My first encounter with Java
was in 1998
■  I founded JAVAWUG 2004-2010
■  Independent contractor for
Blue-chip enterprises: Digitas
LBi, Barclays Retail, Transform
September 2013
Java EE 7
Developer
Handbook
Martha Lane Fox
“There has been a reinvention of the Internet
and the behaviour of users in the last few
years. Digital services are now more agile,
open and cheaper.”
Martha Lane Fox,
UK Digital Champion 2010
Digital (definition)
1.  (Of signals or data) expressed as a series of the
digits 0 and 1, typically represented by physical
quantity such as voltage or magnetic polarisation.
Often contrasted with analogue.
2.  (Of a clock or watch) showing the time by means of
displayed digits rather than hands or pointer
3.  Relating to a finger or fingers
Oxford English Dictionary
Analogue (definition)
1.  A person or thing comparable to another
(noun.)
2.  Relating to or using signals or information
represented by continuous variable physical
quantity such as spatial position, voltage, etc.
(adj.) Often contrasted with digital.
Oxford English Dictionary
Digital (Marketing)
•  Division of marketing using such smartphones, tablets, desktop
computers and game consoles.
•  Digital marketing (UK) and Internet Marketing (USA)
•  Complement to traditional marketing: newspapers, TV, voice &
radio and street
•  Recognition of the growth of the Internet – a knee-jerk reaction
– tangible benefits to business
•  Push (passive by consumer) and pull (active by consumer)
•  In 2002, 64% consumers of Finland said email was the most
popular means to learn about new product – (Journal of
Advertising Research 2003)
https://gds.blog.gov.uk/2014/04/14/digital-inclusion-strategy-launches-today/#comments
Source: BBC Media Literary Understanding Digital Capabilities 2013
http://www.bbc.co.uk/learning/overview/assets/bbcmedialiteracy_20130930.pdf
Digital
https://www.gov.uk/transformation
UK Government Digital Service
GOV.UK Going Digital
One name, one brand and one domain
•  The Government Digital Strategy sets out how
government will redesign its digital services to make
them so straightforward and convenient that all those
who can use them prefer to do so.
•  Online GDS Service Manual for Projects
–  https://www.gov.uk/service-manual
•  Transformation of 710 disparate web sites to …
•  25 Digital Examplers
User Centric Design – GOV.UK – PHP / Scala
Private Sector
•  Many global companies are adopting a
strategy Digital by Default
•  Alternative #1 Mobile by Default
•  Alternative #2 Responsive by Default
Responsive Web Design – Adobe CQ5 – Java EE
Multi Channel Architecture – Java EE 6 – JSF / Spring MVC
Designed by Sølve Sundsbø
Is Java still relevant to Digital Development?
“Clear standard alternatives to Java and C# for custom-developed
applications do not exist. There are issues with many of the alternatives.
For example, BPM tools are great for defining and implementing
processes but a poor choice for implementing compelling user
experiences. The market for application dev tools is beginning to change
though. The next generation of app dev tools will:
•  Dramatically increase developer productivity.
•  Allow developers to delegate change to business end users.”
Mike Gualitieri
Forrester, November 2010
“The JVM is an ideal platform to use for long-running
server side applications. It's been battle-tested over
the last 20 years, and it’s an extremely fast, stable,
and reliable platform on which to run applications like
web servers, message queues, and other services.”
Chris Price
Dev Ops, Puppet Labs
JavaCro 2014 Digital Development with Java EE and Java Platform
JavaCro 2014 Digital Development with Java EE and Java Platform
JavaCro 2014 Digital Development with Java EE and Java Platform
Java EE 8 Survey Results #1
Should we define new APIs to deploy and
manage applications?
62.6% Yes, 11.1% No, 23.5% Don’t Know
https://java.net/downloads/javaee-spec/JavaEE8_Community_Survey_Results.pdf
Java EE 8 Survey Results #2
Should such new Deployment and
Management APIs be REST APIs or JMX APIs?
82.8% REST, 11.1% JMX, 6.1% Other
Possible APIs in Java EE 8
Java EE Success Stories
•  JAX-RS
–  Codehale DropWizard (dropwizard.codehale.org)
•  CDI
–  Apache DeltaSpike (deltaspike.apache.org)
•  JPA
•  Bean Validation 1.1
JavaCro 2014 Digital Development with Java EE and Java Platform
NEW TOOLS FOR OUR
INFORMATION TRADE
Moving forward is always hard when the treadmill
that you are running on keeps pushing you
backwards: get off!
Windows Vista or XP
4GB RAM
Intel Core Duo 2
Digital Worker Tools #1
Development
•  IDE (IntelliJ, Eclipse,
NetBeans)
•  Web Browsers
•  Emulator (Android, iOS)
•  JavaScript tools, Grunt,
Less
•  JavaScript Plug-ins
Testing
•  Cucumber
•  Selenium
•  Ruby and GEM
•  JMeter
•  Gradle, Maven
•  Mongo DB, RBMS
Digital Worker Tools #2
Design
•  Adobe Photoshop CS6+
•  Adobe Illustrator & Fireworks
•  XARA Graphics Designer
•  Balsamiq, Axure
•  UML design tools
–  Astah Professional
–  OmniGraffle, YED
Operations
•  Puppet or Chef
•  Vagrant
•  Hiera modules
•  Oracle Virtual Box
•  JRebel
•  Visual VM
Hardware spec 2014 laptop
(minimum):
8GB RAM, Intel i7 Haswell,
256GB Solid State HDD
Dell XPS 15
Microsoft Surface
Pro 2
Mac Book Pro 15
RefactorByCommonService
Partitiontofacilitatescalability
Partitioninseparateservers,asneeded
EXECUTIVE SUMMARY
Digital by Default with Java
"If we want a Web that is truly for everyone, then
everyone must play a role in shaping its next 25
years,”
Sir Tim Berners-Lee
Birthday of the Web,
The Independent online
http://www.independent.co.uk/life-style/gadgets-and-tech/news/25-years-of-the-world-wide-web-the-inventor-of-the-web-
tim-bernerslee-explains-how-it-all-began-9185040.html
JavaCro 2014 Digital Development with Java EE and Java Platform
Thank You!
The book:
http://www.packtpub.com/java-ee-7-
developer-handbook/book
Blog:
http://xenonique.co.uk/blog/
Twitter:
@peter_pilgrim
Creative Commons Attributions
http://www.flickr.com/photos/holstphoto/3371060720/
Photo of "Chip Pattern" by Ryan Holst, March, 2009
http://www.flickr.com/photos/scarygami/5489773527/lightbox/
Photo of "Pattern" by Scarygami
http://www.flickr.com/photos/christianhaugen/3486381680/sizes/l/in/photostream/
Photo of "Patterns in the Sand" by Christian Haugen
http://www.flickr.com/photos/krunkwerke/3840127296/
Photo of a series of punch cards which are strung together, to
control the pattern woven by the Jacquard loom. John R. Southern
Creative Commons Attributions
http://www.flickr.com/photos/josefstuefer/43867840/
Proof of Pattern messh "untitled" in tan by Josef Stuefer
http://www.flickr.com/photos/josefstuefer/43972554/
Proof of Pattern mesh "untitled" in blue by Josef Stuefer
http://www.flickr.com/photos/scott1723/6290151038/
Alter photo of "Tug of War 3" by Scott Anderson
Java EE & Java SE Strengths
•  Java 8 has Lambdas has functional interfaces
•  Java 9 will have modularity
•  9-10 million developers world-wide
•  Mature JVM – fast and strong performance
•  Alternative JVM languages Scala, Clojure, Groovy and others
•  Standards – DRY, NIH, YAGNI, WET
•  Open Source frameworks aplenty
•  It a fertile bed for competition to grow: Spring Framework and others
•  Java platform has a strong steward in Oracle
Java Weaknesses
•  Classic Java has boilerplate, but at least New Java 8
has Lambdas has functional interfaces
•  Java lacks a Read-Evaluate-Print-Loop (REPL), but
alternative JVM language do have this feature
•  Companies probably will drag their feet, upgrading
to the new Java sooner than later
–  the classic technology adoption lifecycle of innovators,
early adopters, early and late majority; and laggards.

More Related Content

Viewers also liked

Common schema my sql uc 2012
Common schema   my sql uc 2012Common schema   my sql uc 2012
Common schema my sql uc 2012Roland Bouman
 
MariaDB for developers
MariaDB for developersMariaDB for developers
MariaDB for developersColin Charles
 
Webinar: From Relational Databases to MongoDB - What You Need to Know
Webinar: From Relational Databases to MongoDB - What You Need to KnowWebinar: From Relational Databases to MongoDB - What You Need to Know
Webinar: From Relational Databases to MongoDB - What You Need to KnowMongoDB
 
'Bootiful' Code with Spring Boot - Josh Long
'Bootiful' Code with Spring Boot - Josh Long'Bootiful' Code with Spring Boot - Josh Long
'Bootiful' Code with Spring Boot - Josh Longploibl
 
Managing modular software for your nu get, c++ and java development
Managing modular software for your nu get, c++ and java developmentManaging modular software for your nu get, c++ and java development
Managing modular software for your nu get, c++ and java developmentBaruch Sadogursky
 
Mysql index
Mysql indexMysql index
Mysql indexYuan Yao
 
2. writing MySql plugins general
2. writing MySql plugins   general2. writing MySql plugins   general
2. writing MySql plugins generalRoland Bouman
 
Optimizing mysql stored routines uc2010
Optimizing mysql stored routines uc2010Optimizing mysql stored routines uc2010
Optimizing mysql stored routines uc2010Roland Bouman
 
Java EE 8 - What’s new on the Web front
Java EE 8 - What’s new on the Web frontJava EE 8 - What’s new on the Web front
Java EE 8 - What’s new on the Web frontDavid Delabassee
 

Viewers also liked (13)

Common schema my sql uc 2012
Common schema   my sql uc 2012Common schema   my sql uc 2012
Common schema my sql uc 2012
 
MariaDB for developers
MariaDB for developersMariaDB for developers
MariaDB for developers
 
Pdt tics
Pdt ticsPdt tics
Pdt tics
 
PPT
PPTPPT
PPT
 
Webinar: From Relational Databases to MongoDB - What You Need to Know
Webinar: From Relational Databases to MongoDB - What You Need to KnowWebinar: From Relational Databases to MongoDB - What You Need to Know
Webinar: From Relational Databases to MongoDB - What You Need to Know
 
My sql administration
My sql administrationMy sql administration
My sql administration
 
'Bootiful' Code with Spring Boot - Josh Long
'Bootiful' Code with Spring Boot - Josh Long'Bootiful' Code with Spring Boot - Josh Long
'Bootiful' Code with Spring Boot - Josh Long
 
Managing modular software for your nu get, c++ and java development
Managing modular software for your nu get, c++ and java developmentManaging modular software for your nu get, c++ and java development
Managing modular software for your nu get, c++ and java development
 
Mysql index
Mysql indexMysql index
Mysql index
 
2. writing MySql plugins general
2. writing MySql plugins   general2. writing MySql plugins   general
2. writing MySql plugins general
 
Optimizing mysql stored routines uc2010
Optimizing mysql stored routines uc2010Optimizing mysql stored routines uc2010
Optimizing mysql stored routines uc2010
 
Modern Java Development
Modern Java DevelopmentModern Java Development
Modern Java Development
 
Java EE 8 - What’s new on the Web front
Java EE 8 - What’s new on the Web frontJava EE 8 - What’s new on the Web front
Java EE 8 - What’s new on the Web front
 

Similar to JavaCro 2014 Digital Development with Java EE and Java Platform

061223_web_20_conference_sf_shan
061223_web_20_conference_sf_shan061223_web_20_conference_sf_shan
061223_web_20_conference_sf_shancjin cheng
 
Six Principles of Software Design to Empower Scientists
Six Principles of Software Design to Empower ScientistsSix Principles of Software Design to Empower Scientists
Six Principles of Software Design to Empower ScientistsDavid De Roure
 
Meetup web rtc 동향과 이슈_2017.08.25
Meetup web rtc 동향과 이슈_2017.08.25Meetup web rtc 동향과 이슈_2017.08.25
Meetup web rtc 동향과 이슈_2017.08.25sung young son
 
Dublinked tech workshop_15_dec2011
Dublinked tech workshop_15_dec2011Dublinked tech workshop_15_dec2011
Dublinked tech workshop_15_dec2011Dublinked .
 
This Project Performs Sentiment Analysis In Various...
This Project Performs Sentiment Analysis In Various...This Project Performs Sentiment Analysis In Various...
This Project Performs Sentiment Analysis In Various...Sarah Gordon
 
Production Performance Testing in the Cloud
Production Performance Testing in the CloudProduction Performance Testing in the Cloud
Production Performance Testing in the CloudTechWell
 
Web. 3.0: The Rise of the Mobile and Application Era
Web. 3.0:The Rise of the Mobile and Application EraWeb. 3.0:The Rise of the Mobile and Application Era
Web. 3.0: The Rise of the Mobile and Application EraDave Wieneke
 
Why should we care about Digital Accessibility?
Why should we care about Digital Accessibility?Why should we care about Digital Accessibility?
Why should we care about Digital Accessibility?Matthew Deeprose
 
Testing IoT Apps with the Cloud
Testing IoT Apps with the CloudTesting IoT Apps with the Cloud
Testing IoT Apps with the CloudJosiah Renaudin
 
Postdesktop Usability
Postdesktop UsabilityPostdesktop Usability
Postdesktop UsabilityDoug Gapinski
 
IT Event Report of TC Disrupt/GMIC
IT Event Report of TC Disrupt/GMICIT Event Report of TC Disrupt/GMIC
IT Event Report of TC Disrupt/GMIC01Booster
 
Screen and Context: Usability in the Postdesktop World
Screen and Context: Usability in the Postdesktop WorldScreen and Context: Usability in the Postdesktop World
Screen and Context: Usability in the Postdesktop WorldDoug Gapinski
 
TFI2014 Conference Opening - ISOC Deployment & Operationalization
TFI2014 Conference Opening - ISOC Deployment & OperationalizationTFI2014 Conference Opening - ISOC Deployment & Operationalization
TFI2014 Conference Opening - ISOC Deployment & OperationalizationColorado Internet Society (CO ISOC)
 
Perficient PepsiCo Rich Internet Apps Seminar
Perficient PepsiCo Rich Internet Apps SeminarPerficient PepsiCo Rich Internet Apps Seminar
Perficient PepsiCo Rich Internet Apps SeminarPerficient, Inc.
 
Maximising Online Resource Effectiveness Workshop Session 1/8 Introduction
Maximising Online Resource Effectiveness Workshop Session 1/8 IntroductionMaximising Online Resource Effectiveness Workshop Session 1/8 Introduction
Maximising Online Resource Effectiveness Workshop Session 1/8 IntroductionPlatypus
 
Maximising Online Resource Effectiveness: Workshop Introduction
Maximising Online Resource Effectiveness: Workshop IntroductionMaximising Online Resource Effectiveness: Workshop Introduction
Maximising Online Resource Effectiveness: Workshop IntroductionJISC Netskills
 
TADSummit Welcome Address, Alan Quayle
TADSummit Welcome Address, Alan QuayleTADSummit Welcome Address, Alan Quayle
TADSummit Welcome Address, Alan QuayleAlan Quayle
 

Similar to JavaCro 2014 Digital Development with Java EE and Java Platform (20)

JavaCro'14 - Going Digital with Java EE - Peter Pilgrim
JavaCro'14 - Going Digital with Java EE - Peter PilgrimJavaCro'14 - Going Digital with Java EE - Peter Pilgrim
JavaCro'14 - Going Digital with Java EE - Peter Pilgrim
 
Webware Webinar
Webware WebinarWebware Webinar
Webware Webinar
 
061223_web_20_conference_sf_shan
061223_web_20_conference_sf_shan061223_web_20_conference_sf_shan
061223_web_20_conference_sf_shan
 
Six Principles of Software Design to Empower Scientists
Six Principles of Software Design to Empower ScientistsSix Principles of Software Design to Empower Scientists
Six Principles of Software Design to Empower Scientists
 
Meetup web rtc 동향과 이슈_2017.08.25
Meetup web rtc 동향과 이슈_2017.08.25Meetup web rtc 동향과 이슈_2017.08.25
Meetup web rtc 동향과 이슈_2017.08.25
 
Dublinked tech workshop_15_dec2011
Dublinked tech workshop_15_dec2011Dublinked tech workshop_15_dec2011
Dublinked tech workshop_15_dec2011
 
This Project Performs Sentiment Analysis In Various...
This Project Performs Sentiment Analysis In Various...This Project Performs Sentiment Analysis In Various...
This Project Performs Sentiment Analysis In Various...
 
Production Performance Testing in the Cloud
Production Performance Testing in the CloudProduction Performance Testing in the Cloud
Production Performance Testing in the Cloud
 
Bem2034
Bem2034Bem2034
Bem2034
 
Web. 3.0: The Rise of the Mobile and Application Era
Web. 3.0:The Rise of the Mobile and Application EraWeb. 3.0:The Rise of the Mobile and Application Era
Web. 3.0: The Rise of the Mobile and Application Era
 
Why should we care about Digital Accessibility?
Why should we care about Digital Accessibility?Why should we care about Digital Accessibility?
Why should we care about Digital Accessibility?
 
Testing IoT Apps with the Cloud
Testing IoT Apps with the CloudTesting IoT Apps with the Cloud
Testing IoT Apps with the Cloud
 
Postdesktop Usability
Postdesktop UsabilityPostdesktop Usability
Postdesktop Usability
 
IT Event Report of TC Disrupt/GMIC
IT Event Report of TC Disrupt/GMICIT Event Report of TC Disrupt/GMIC
IT Event Report of TC Disrupt/GMIC
 
Screen and Context: Usability in the Postdesktop World
Screen and Context: Usability in the Postdesktop WorldScreen and Context: Usability in the Postdesktop World
Screen and Context: Usability in the Postdesktop World
 
TFI2014 Conference Opening - ISOC Deployment & Operationalization
TFI2014 Conference Opening - ISOC Deployment & OperationalizationTFI2014 Conference Opening - ISOC Deployment & Operationalization
TFI2014 Conference Opening - ISOC Deployment & Operationalization
 
Perficient PepsiCo Rich Internet Apps Seminar
Perficient PepsiCo Rich Internet Apps SeminarPerficient PepsiCo Rich Internet Apps Seminar
Perficient PepsiCo Rich Internet Apps Seminar
 
Maximising Online Resource Effectiveness Workshop Session 1/8 Introduction
Maximising Online Resource Effectiveness Workshop Session 1/8 IntroductionMaximising Online Resource Effectiveness Workshop Session 1/8 Introduction
Maximising Online Resource Effectiveness Workshop Session 1/8 Introduction
 
Maximising Online Resource Effectiveness: Workshop Introduction
Maximising Online Resource Effectiveness: Workshop IntroductionMaximising Online Resource Effectiveness: Workshop Introduction
Maximising Online Resource Effectiveness: Workshop Introduction
 
TADSummit Welcome Address, Alan Quayle
TADSummit Welcome Address, Alan QuayleTADSummit Welcome Address, Alan Quayle
TADSummit Welcome Address, Alan Quayle
 

More from Peter Pilgrim

Devoxx 2019 - Why we pair?
Devoxx 2019 - Why we pair?Devoxx 2019 - Why we pair?
Devoxx 2019 - Why we pair?Peter Pilgrim
 
Cloud native java are we there yet go tech world 2019
Cloud native java   are we there yet  go tech world 2019Cloud native java   are we there yet  go tech world 2019
Cloud native java are we there yet go tech world 2019Peter Pilgrim
 
LJC 2018 - PEAT UK - Java EE - Ah, ah, ah! Staying Alive!
LJC 2018 - PEAT UK - Java EE - Ah, ah, ah! Staying Alive!LJC 2018 - PEAT UK - Java EE - Ah, ah, ah! Staying Alive!
LJC 2018 - PEAT UK - Java EE - Ah, ah, ah! Staying Alive!Peter Pilgrim
 
CON6148 - You Are Not Cut Out To Be A Java Contractor - JavaOne 2017
CON6148 - You Are Not Cut Out To Be A Java Contractor - JavaOne 2017CON6148 - You Are Not Cut Out To Be A Java Contractor - JavaOne 2017
CON6148 - You Are Not Cut Out To Be A Java Contractor - JavaOne 2017Peter Pilgrim
 
JavaOne 2015 CON5211 Digital Java EE 7 with JSF Conversations, Flows, and CDI...
JavaOne 2015 CON5211 Digital Java EE 7 with JSF Conversations, Flows, and CDI...JavaOne 2015 CON5211 Digital Java EE 7 with JSF Conversations, Flows, and CDI...
JavaOne 2015 CON5211 Digital Java EE 7 with JSF Conversations, Flows, and CDI...Peter Pilgrim
 
QCon 2015 Scala for the Enterprise: Get FuNkEd Up on the JVM
QCon 2015 Scala for the Enterprise: Get FuNkEd Up on the JVMQCon 2015 Scala for the Enterprise: Get FuNkEd Up on the JVM
QCon 2015 Scala for the Enterprise: Get FuNkEd Up on the JVMPeter Pilgrim
 
Java EE & Glass Fish User Group: Digital JavaEE 7 - New and Noteworthy
Java EE & Glass Fish User Group: Digital JavaEE 7 - New and NoteworthyJava EE & Glass Fish User Group: Digital JavaEE 7 - New and Noteworthy
Java EE & Glass Fish User Group: Digital JavaEE 7 - New and NoteworthyPeter Pilgrim
 
BOF2644 Developing Java EE 7 Scala apps
BOF2644 Developing Java EE 7 Scala appsBOF2644 Developing Java EE 7 Scala apps
BOF2644 Developing Java EE 7 Scala appsPeter Pilgrim
 
AOTB2014: Agile Testing on the Java Platform
AOTB2014: Agile Testing on the Java PlatformAOTB2014: Agile Testing on the Java Platform
AOTB2014: Agile Testing on the Java PlatformPeter Pilgrim
 
JavaCro 2014 Scala and Java EE 7 Development Experiences
JavaCro 2014 Scala and Java EE 7 Development ExperiencesJavaCro 2014 Scala and Java EE 7 Development Experiences
JavaCro 2014 Scala and Java EE 7 Development ExperiencesPeter Pilgrim
 
ACCU 2013 Taking Scala into the Enterpise
ACCU 2013 Taking Scala into the EnterpiseACCU 2013 Taking Scala into the Enterpise
ACCU 2013 Taking Scala into the EnterpisePeter Pilgrim
 
Devoxx UK 2013 Test-Driven Development with JavaEE 7, Arquillian and Embedded...
Devoxx UK 2013 Test-Driven Development with JavaEE 7, Arquillian and Embedded...Devoxx UK 2013 Test-Driven Development with JavaEE 7, Arquillian and Embedded...
Devoxx UK 2013 Test-Driven Development with JavaEE 7, Arquillian and Embedded...Peter Pilgrim
 
JavaOne 2011 Progressive JavaFX 2.0 Custom Components
JavaOne 2011 Progressive JavaFX 2.0 Custom ComponentsJavaOne 2011 Progressive JavaFX 2.0 Custom Components
JavaOne 2011 Progressive JavaFX 2.0 Custom ComponentsPeter Pilgrim
 
ACCU 2011 Introduction to Scala: An Object Functional Programming Language
ACCU 2011 Introduction to Scala: An Object Functional Programming LanguageACCU 2011 Introduction to Scala: An Object Functional Programming Language
ACCU 2011 Introduction to Scala: An Object Functional Programming LanguagePeter Pilgrim
 

More from Peter Pilgrim (14)

Devoxx 2019 - Why we pair?
Devoxx 2019 - Why we pair?Devoxx 2019 - Why we pair?
Devoxx 2019 - Why we pair?
 
Cloud native java are we there yet go tech world 2019
Cloud native java   are we there yet  go tech world 2019Cloud native java   are we there yet  go tech world 2019
Cloud native java are we there yet go tech world 2019
 
LJC 2018 - PEAT UK - Java EE - Ah, ah, ah! Staying Alive!
LJC 2018 - PEAT UK - Java EE - Ah, ah, ah! Staying Alive!LJC 2018 - PEAT UK - Java EE - Ah, ah, ah! Staying Alive!
LJC 2018 - PEAT UK - Java EE - Ah, ah, ah! Staying Alive!
 
CON6148 - You Are Not Cut Out To Be A Java Contractor - JavaOne 2017
CON6148 - You Are Not Cut Out To Be A Java Contractor - JavaOne 2017CON6148 - You Are Not Cut Out To Be A Java Contractor - JavaOne 2017
CON6148 - You Are Not Cut Out To Be A Java Contractor - JavaOne 2017
 
JavaOne 2015 CON5211 Digital Java EE 7 with JSF Conversations, Flows, and CDI...
JavaOne 2015 CON5211 Digital Java EE 7 with JSF Conversations, Flows, and CDI...JavaOne 2015 CON5211 Digital Java EE 7 with JSF Conversations, Flows, and CDI...
JavaOne 2015 CON5211 Digital Java EE 7 with JSF Conversations, Flows, and CDI...
 
QCon 2015 Scala for the Enterprise: Get FuNkEd Up on the JVM
QCon 2015 Scala for the Enterprise: Get FuNkEd Up on the JVMQCon 2015 Scala for the Enterprise: Get FuNkEd Up on the JVM
QCon 2015 Scala for the Enterprise: Get FuNkEd Up on the JVM
 
Java EE & Glass Fish User Group: Digital JavaEE 7 - New and Noteworthy
Java EE & Glass Fish User Group: Digital JavaEE 7 - New and NoteworthyJava EE & Glass Fish User Group: Digital JavaEE 7 - New and Noteworthy
Java EE & Glass Fish User Group: Digital JavaEE 7 - New and Noteworthy
 
BOF2644 Developing Java EE 7 Scala apps
BOF2644 Developing Java EE 7 Scala appsBOF2644 Developing Java EE 7 Scala apps
BOF2644 Developing Java EE 7 Scala apps
 
AOTB2014: Agile Testing on the Java Platform
AOTB2014: Agile Testing on the Java PlatformAOTB2014: Agile Testing on the Java Platform
AOTB2014: Agile Testing on the Java Platform
 
JavaCro 2014 Scala and Java EE 7 Development Experiences
JavaCro 2014 Scala and Java EE 7 Development ExperiencesJavaCro 2014 Scala and Java EE 7 Development Experiences
JavaCro 2014 Scala and Java EE 7 Development Experiences
 
ACCU 2013 Taking Scala into the Enterpise
ACCU 2013 Taking Scala into the EnterpiseACCU 2013 Taking Scala into the Enterpise
ACCU 2013 Taking Scala into the Enterpise
 
Devoxx UK 2013 Test-Driven Development with JavaEE 7, Arquillian and Embedded...
Devoxx UK 2013 Test-Driven Development with JavaEE 7, Arquillian and Embedded...Devoxx UK 2013 Test-Driven Development with JavaEE 7, Arquillian and Embedded...
Devoxx UK 2013 Test-Driven Development with JavaEE 7, Arquillian and Embedded...
 
JavaOne 2011 Progressive JavaFX 2.0 Custom Components
JavaOne 2011 Progressive JavaFX 2.0 Custom ComponentsJavaOne 2011 Progressive JavaFX 2.0 Custom Components
JavaOne 2011 Progressive JavaFX 2.0 Custom Components
 
ACCU 2011 Introduction to Scala: An Object Functional Programming Language
ACCU 2011 Introduction to Scala: An Object Functional Programming LanguageACCU 2011 Introduction to Scala: An Object Functional Programming Language
ACCU 2011 Introduction to Scala: An Object Functional Programming Language
 

Recently uploaded

Presentation on the Basics of Writing. Writing a Paragraph
Presentation on the Basics of Writing. Writing a ParagraphPresentation on the Basics of Writing. Writing a Paragraph
Presentation on the Basics of Writing. Writing a ParagraphNetziValdelomar1
 
The Singapore Teaching Practice document
The Singapore Teaching Practice documentThe Singapore Teaching Practice document
The Singapore Teaching Practice documentXsasf Sfdfasd
 
Philosophy of Education and Educational Philosophy
Philosophy of Education  and Educational PhilosophyPhilosophy of Education  and Educational Philosophy
Philosophy of Education and Educational PhilosophyShuvankar Madhu
 
M-2- General Reactions of amino acids.pptx
M-2- General Reactions of amino acids.pptxM-2- General Reactions of amino acids.pptx
M-2- General Reactions of amino acids.pptxDr. Santhosh Kumar. N
 
CHUYÊN ĐỀ DẠY THÊM TIẾNG ANH LỚP 11 - GLOBAL SUCCESS - NĂM HỌC 2023-2024 - HK...
CHUYÊN ĐỀ DẠY THÊM TIẾNG ANH LỚP 11 - GLOBAL SUCCESS - NĂM HỌC 2023-2024 - HK...CHUYÊN ĐỀ DẠY THÊM TIẾNG ANH LỚP 11 - GLOBAL SUCCESS - NĂM HỌC 2023-2024 - HK...
CHUYÊN ĐỀ DẠY THÊM TIẾNG ANH LỚP 11 - GLOBAL SUCCESS - NĂM HỌC 2023-2024 - HK...Nguyen Thanh Tu Collection
 
Ultra structure and life cycle of Plasmodium.pptx
Ultra structure and life cycle of Plasmodium.pptxUltra structure and life cycle of Plasmodium.pptx
Ultra structure and life cycle of Plasmodium.pptxDr. Asif Anas
 
Drug Information Services- DIC and Sources.
Drug Information Services- DIC and Sources.Drug Information Services- DIC and Sources.
Drug Information Services- DIC and Sources.raviapr7
 
5 charts on South Africa as a source country for international student recrui...
5 charts on South Africa as a source country for international student recrui...5 charts on South Africa as a source country for international student recrui...
5 charts on South Africa as a source country for international student recrui...CaraSkikne1
 
Practical Research 1: Lesson 8 Writing the Thesis Statement.pptx
Practical Research 1: Lesson 8 Writing the Thesis Statement.pptxPractical Research 1: Lesson 8 Writing the Thesis Statement.pptx
Practical Research 1: Lesson 8 Writing the Thesis Statement.pptxKatherine Villaluna
 
Patterns of Written Texts Across Disciplines.pptx
Patterns of Written Texts Across Disciplines.pptxPatterns of Written Texts Across Disciplines.pptx
Patterns of Written Texts Across Disciplines.pptxMYDA ANGELICA SUAN
 
In - Vivo and In - Vitro Correlation.pptx
In - Vivo and In - Vitro Correlation.pptxIn - Vivo and In - Vitro Correlation.pptx
In - Vivo and In - Vitro Correlation.pptxAditiChauhan701637
 
CAULIFLOWER BREEDING 1 Parmar pptx
CAULIFLOWER BREEDING 1 Parmar pptxCAULIFLOWER BREEDING 1 Parmar pptx
CAULIFLOWER BREEDING 1 Parmar pptxSaurabhParmar42
 
2024.03.23 What do successful readers do - Sandy Millin for PARK.pptx
2024.03.23 What do successful readers do - Sandy Millin for PARK.pptx2024.03.23 What do successful readers do - Sandy Millin for PARK.pptx
2024.03.23 What do successful readers do - Sandy Millin for PARK.pptxSandy Millin
 
Maximizing Impact_ Nonprofit Website Planning, Budgeting, and Design.pdf
Maximizing Impact_ Nonprofit Website Planning, Budgeting, and Design.pdfMaximizing Impact_ Nonprofit Website Planning, Budgeting, and Design.pdf
Maximizing Impact_ Nonprofit Website Planning, Budgeting, and Design.pdfTechSoup
 
How to Solve Singleton Error in the Odoo 17
How to Solve Singleton Error in the  Odoo 17How to Solve Singleton Error in the  Odoo 17
How to Solve Singleton Error in the Odoo 17Celine George
 
P4C x ELT = P4ELT: Its Theoretical Background (Kanazawa, 2024 March).pdf
P4C x ELT = P4ELT: Its Theoretical Background (Kanazawa, 2024 March).pdfP4C x ELT = P4ELT: Its Theoretical Background (Kanazawa, 2024 March).pdf
P4C x ELT = P4ELT: Its Theoretical Background (Kanazawa, 2024 March).pdfYu Kanazawa / Osaka University
 
Easter in the USA presentation by Chloe.
Easter in the USA presentation by Chloe.Easter in the USA presentation by Chloe.
Easter in the USA presentation by Chloe.EnglishCEIPdeSigeiro
 
How to Add Existing Field in One2Many Tree View in Odoo 17
How to Add Existing Field in One2Many Tree View in Odoo 17How to Add Existing Field in One2Many Tree View in Odoo 17
How to Add Existing Field in One2Many Tree View in Odoo 17Celine George
 
What is the Future of QuickBooks DeskTop?
What is the Future of QuickBooks DeskTop?What is the Future of QuickBooks DeskTop?
What is the Future of QuickBooks DeskTop?TechSoup
 

Recently uploaded (20)

Presentation on the Basics of Writing. Writing a Paragraph
Presentation on the Basics of Writing. Writing a ParagraphPresentation on the Basics of Writing. Writing a Paragraph
Presentation on the Basics of Writing. Writing a Paragraph
 
The Singapore Teaching Practice document
The Singapore Teaching Practice documentThe Singapore Teaching Practice document
The Singapore Teaching Practice document
 
Philosophy of Education and Educational Philosophy
Philosophy of Education  and Educational PhilosophyPhilosophy of Education  and Educational Philosophy
Philosophy of Education and Educational Philosophy
 
M-2- General Reactions of amino acids.pptx
M-2- General Reactions of amino acids.pptxM-2- General Reactions of amino acids.pptx
M-2- General Reactions of amino acids.pptx
 
CHUYÊN ĐỀ DẠY THÊM TIẾNG ANH LỚP 11 - GLOBAL SUCCESS - NĂM HỌC 2023-2024 - HK...
CHUYÊN ĐỀ DẠY THÊM TIẾNG ANH LỚP 11 - GLOBAL SUCCESS - NĂM HỌC 2023-2024 - HK...CHUYÊN ĐỀ DẠY THÊM TIẾNG ANH LỚP 11 - GLOBAL SUCCESS - NĂM HỌC 2023-2024 - HK...
CHUYÊN ĐỀ DẠY THÊM TIẾNG ANH LỚP 11 - GLOBAL SUCCESS - NĂM HỌC 2023-2024 - HK...
 
Ultra structure and life cycle of Plasmodium.pptx
Ultra structure and life cycle of Plasmodium.pptxUltra structure and life cycle of Plasmodium.pptx
Ultra structure and life cycle of Plasmodium.pptx
 
Drug Information Services- DIC and Sources.
Drug Information Services- DIC and Sources.Drug Information Services- DIC and Sources.
Drug Information Services- DIC and Sources.
 
Finals of Kant get Marx 2.0 : a general politics quiz
Finals of Kant get Marx 2.0 : a general politics quizFinals of Kant get Marx 2.0 : a general politics quiz
Finals of Kant get Marx 2.0 : a general politics quiz
 
5 charts on South Africa as a source country for international student recrui...
5 charts on South Africa as a source country for international student recrui...5 charts on South Africa as a source country for international student recrui...
5 charts on South Africa as a source country for international student recrui...
 
Practical Research 1: Lesson 8 Writing the Thesis Statement.pptx
Practical Research 1: Lesson 8 Writing the Thesis Statement.pptxPractical Research 1: Lesson 8 Writing the Thesis Statement.pptx
Practical Research 1: Lesson 8 Writing the Thesis Statement.pptx
 
Patterns of Written Texts Across Disciplines.pptx
Patterns of Written Texts Across Disciplines.pptxPatterns of Written Texts Across Disciplines.pptx
Patterns of Written Texts Across Disciplines.pptx
 
In - Vivo and In - Vitro Correlation.pptx
In - Vivo and In - Vitro Correlation.pptxIn - Vivo and In - Vitro Correlation.pptx
In - Vivo and In - Vitro Correlation.pptx
 
CAULIFLOWER BREEDING 1 Parmar pptx
CAULIFLOWER BREEDING 1 Parmar pptxCAULIFLOWER BREEDING 1 Parmar pptx
CAULIFLOWER BREEDING 1 Parmar pptx
 
2024.03.23 What do successful readers do - Sandy Millin for PARK.pptx
2024.03.23 What do successful readers do - Sandy Millin for PARK.pptx2024.03.23 What do successful readers do - Sandy Millin for PARK.pptx
2024.03.23 What do successful readers do - Sandy Millin for PARK.pptx
 
Maximizing Impact_ Nonprofit Website Planning, Budgeting, and Design.pdf
Maximizing Impact_ Nonprofit Website Planning, Budgeting, and Design.pdfMaximizing Impact_ Nonprofit Website Planning, Budgeting, and Design.pdf
Maximizing Impact_ Nonprofit Website Planning, Budgeting, and Design.pdf
 
How to Solve Singleton Error in the Odoo 17
How to Solve Singleton Error in the  Odoo 17How to Solve Singleton Error in the  Odoo 17
How to Solve Singleton Error in the Odoo 17
 
P4C x ELT = P4ELT: Its Theoretical Background (Kanazawa, 2024 March).pdf
P4C x ELT = P4ELT: Its Theoretical Background (Kanazawa, 2024 March).pdfP4C x ELT = P4ELT: Its Theoretical Background (Kanazawa, 2024 March).pdf
P4C x ELT = P4ELT: Its Theoretical Background (Kanazawa, 2024 March).pdf
 
Easter in the USA presentation by Chloe.
Easter in the USA presentation by Chloe.Easter in the USA presentation by Chloe.
Easter in the USA presentation by Chloe.
 
How to Add Existing Field in One2Many Tree View in Odoo 17
How to Add Existing Field in One2Many Tree View in Odoo 17How to Add Existing Field in One2Many Tree View in Odoo 17
How to Add Existing Field in One2Many Tree View in Odoo 17
 
What is the Future of QuickBooks DeskTop?
What is the Future of QuickBooks DeskTop?What is the Future of QuickBooks DeskTop?
What is the Future of QuickBooks DeskTop?
 

JavaCro 2014 Digital Development with Java EE and Java Platform

  • 1. Digital Development with Java EE Peter A. Pilgrim Independent Contractor, Java Champion
  • 2. Biography ■  Started with Fortran 77 and UNIX C Systems Programming ■  My first encounter with Java was in 1998 ■  I founded JAVAWUG 2004-2010 ■  Independent contractor for Blue-chip enterprises: Digitas LBi, Barclays Retail, Transform
  • 3. September 2013 Java EE 7 Developer Handbook
  • 4. Martha Lane Fox “There has been a reinvention of the Internet and the behaviour of users in the last few years. Digital services are now more agile, open and cheaper.” Martha Lane Fox, UK Digital Champion 2010
  • 5. Digital (definition) 1.  (Of signals or data) expressed as a series of the digits 0 and 1, typically represented by physical quantity such as voltage or magnetic polarisation. Often contrasted with analogue. 2.  (Of a clock or watch) showing the time by means of displayed digits rather than hands or pointer 3.  Relating to a finger or fingers Oxford English Dictionary
  • 6. Analogue (definition) 1.  A person or thing comparable to another (noun.) 2.  Relating to or using signals or information represented by continuous variable physical quantity such as spatial position, voltage, etc. (adj.) Often contrasted with digital. Oxford English Dictionary
  • 7. Digital (Marketing) •  Division of marketing using such smartphones, tablets, desktop computers and game consoles. •  Digital marketing (UK) and Internet Marketing (USA) •  Complement to traditional marketing: newspapers, TV, voice & radio and street •  Recognition of the growth of the Internet – a knee-jerk reaction – tangible benefits to business •  Push (passive by consumer) and pull (active by consumer) •  In 2002, 64% consumers of Finland said email was the most popular means to learn about new product – (Journal of Advertising Research 2003)
  • 9. Source: BBC Media Literary Understanding Digital Capabilities 2013 http://www.bbc.co.uk/learning/overview/assets/bbcmedialiteracy_20130930.pdf
  • 11. GOV.UK Going Digital One name, one brand and one domain •  The Government Digital Strategy sets out how government will redesign its digital services to make them so straightforward and convenient that all those who can use them prefer to do so. •  Online GDS Service Manual for Projects –  https://www.gov.uk/service-manual •  Transformation of 710 disparate web sites to … •  25 Digital Examplers
  • 12. User Centric Design – GOV.UK – PHP / Scala
  • 13. Private Sector •  Many global companies are adopting a strategy Digital by Default •  Alternative #1 Mobile by Default •  Alternative #2 Responsive by Default
  • 14. Responsive Web Design – Adobe CQ5 – Java EE
  • 15. Multi Channel Architecture – Java EE 6 – JSF / Spring MVC
  • 16. Designed by Sølve Sundsbø
  • 17. Is Java still relevant to Digital Development?
  • 18. “Clear standard alternatives to Java and C# for custom-developed applications do not exist. There are issues with many of the alternatives. For example, BPM tools are great for defining and implementing processes but a poor choice for implementing compelling user experiences. The market for application dev tools is beginning to change though. The next generation of app dev tools will: •  Dramatically increase developer productivity. •  Allow developers to delegate change to business end users.” Mike Gualitieri Forrester, November 2010
  • 19. “The JVM is an ideal platform to use for long-running server side applications. It's been battle-tested over the last 20 years, and it’s an extremely fast, stable, and reliable platform on which to run applications like web servers, message queues, and other services.” Chris Price Dev Ops, Puppet Labs
  • 23. Java EE 8 Survey Results #1 Should we define new APIs to deploy and manage applications? 62.6% Yes, 11.1% No, 23.5% Don’t Know https://java.net/downloads/javaee-spec/JavaEE8_Community_Survey_Results.pdf
  • 24. Java EE 8 Survey Results #2 Should such new Deployment and Management APIs be REST APIs or JMX APIs? 82.8% REST, 11.1% JMX, 6.1% Other
  • 25. Possible APIs in Java EE 8
  • 26. Java EE Success Stories •  JAX-RS –  Codehale DropWizard (dropwizard.codehale.org) •  CDI –  Apache DeltaSpike (deltaspike.apache.org) •  JPA •  Bean Validation 1.1
  • 28. NEW TOOLS FOR OUR INFORMATION TRADE Moving forward is always hard when the treadmill that you are running on keeps pushing you backwards: get off!
  • 29. Windows Vista or XP 4GB RAM Intel Core Duo 2
  • 30. Digital Worker Tools #1 Development •  IDE (IntelliJ, Eclipse, NetBeans) •  Web Browsers •  Emulator (Android, iOS) •  JavaScript tools, Grunt, Less •  JavaScript Plug-ins Testing •  Cucumber •  Selenium •  Ruby and GEM •  JMeter •  Gradle, Maven •  Mongo DB, RBMS
  • 31. Digital Worker Tools #2 Design •  Adobe Photoshop CS6+ •  Adobe Illustrator & Fireworks •  XARA Graphics Designer •  Balsamiq, Axure •  UML design tools –  Astah Professional –  OmniGraffle, YED Operations •  Puppet or Chef •  Vagrant •  Hiera modules •  Oracle Virtual Box •  JRebel •  Visual VM
  • 32. Hardware spec 2014 laptop (minimum): 8GB RAM, Intel i7 Haswell, 256GB Solid State HDD Dell XPS 15 Microsoft Surface Pro 2 Mac Book Pro 15
  • 36. EXECUTIVE SUMMARY Digital by Default with Java
  • 37. "If we want a Web that is truly for everyone, then everyone must play a role in shaping its next 25 years,” Sir Tim Berners-Lee Birthday of the Web, The Independent online http://www.independent.co.uk/life-style/gadgets-and-tech/news/25-years-of-the-world-wide-web-the-inventor-of-the-web- tim-bernerslee-explains-how-it-all-began-9185040.html
  • 40. Creative Commons Attributions http://www.flickr.com/photos/holstphoto/3371060720/ Photo of "Chip Pattern" by Ryan Holst, March, 2009 http://www.flickr.com/photos/scarygami/5489773527/lightbox/ Photo of "Pattern" by Scarygami http://www.flickr.com/photos/christianhaugen/3486381680/sizes/l/in/photostream/ Photo of "Patterns in the Sand" by Christian Haugen http://www.flickr.com/photos/krunkwerke/3840127296/ Photo of a series of punch cards which are strung together, to control the pattern woven by the Jacquard loom. John R. Southern
  • 41. Creative Commons Attributions http://www.flickr.com/photos/josefstuefer/43867840/ Proof of Pattern messh "untitled" in tan by Josef Stuefer http://www.flickr.com/photos/josefstuefer/43972554/ Proof of Pattern mesh "untitled" in blue by Josef Stuefer http://www.flickr.com/photos/scott1723/6290151038/ Alter photo of "Tug of War 3" by Scott Anderson
  • 42. Java EE & Java SE Strengths •  Java 8 has Lambdas has functional interfaces •  Java 9 will have modularity •  9-10 million developers world-wide •  Mature JVM – fast and strong performance •  Alternative JVM languages Scala, Clojure, Groovy and others •  Standards – DRY, NIH, YAGNI, WET •  Open Source frameworks aplenty •  It a fertile bed for competition to grow: Spring Framework and others •  Java platform has a strong steward in Oracle
  • 43. Java Weaknesses •  Classic Java has boilerplate, but at least New Java 8 has Lambdas has functional interfaces •  Java lacks a Read-Evaluate-Print-Loop (REPL), but alternative JVM language do have this feature •  Companies probably will drag their feet, upgrading to the new Java sooner than later –  the classic technology adoption lifecycle of innovators, early adopters, early and late majority; and laggards.