Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

JavaCro'14 - Going Digital with Java EE - Peter Pilgrim

It feels like we have building web sites and applications for centuries, doesn’t it? However, we know that this is so untrue, because the web is only 25 years old since Sir Tim Berner’s Lee great proposal at CERN. The impetus of online design and development has changed, we now talk about the Digital Worker, the Digital environment and we about building web applications and ecommerce applications that are user friendly and customer centric. So what has this all to with the humble Java application developer? The answer is everything. We must be explicit in the software that we write, lean and agile in the way we write, and whilst making sure the take full advantage of the underlying Java platform. In fact, because we have this magnificent Java Virtual Machine and open standards like Java EE, we can continue build quality, robust and sustainable software for all our stakeholders and business users.

Introduction to Java EE 7 (brief)
Personality requirements for the digital worker
The absolute minimum toolchains for Java based digital worker
Introducing Arquillian framework
Overview of some essential features of Java EE 7

  • Login to see the comments

  • Be the first to like this

JavaCro'14 - Going Digital with Java EE - Peter Pilgrim

  1. 1. Digital Development with Java EE Peter A. Pilgrim Independent Contractor, Java Champion
  2. 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. 3. September 2013 Java EE 7 Developer Handbook
  4. 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. 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. 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. 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)
  8. 8.
  9. 9. Source: BBC Media Literary Understanding Digital Capabilities 2013
  10. 10. Digital UK Government Digital Service
  11. 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 – •  Transformation of 710 disparate web sites to … •  25 Digital Examplers
  12. 12. User Centric Design – GOV.UK – PHP / Scala
  13. 13. Private Sector •  Many global companies are adopting a strategy Digital by Default •  Alternative #1 Mobile by Default •  Alternative #2 Responsive by Default
  14. 14. Responsive Web Design – Adobe CQ5 – Java EE
  15. 15. Multi Channel Architecture – Java EE 6 – JSF / Spring MVC
  16. 16. Designed by Sølve Sundsbø
  17. 17. Is Java still relevant to Digital Development?
  18. 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. 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
  20. 20. 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
  21. 21. 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
  22. 22. Which of these API do you think important to be included in Java EE 8?
  23. 23. Java EE Success Stories •  JAX-RS –  Codehale DropWizard ( •  CDI –  Apache DeltaSpike ( •  JPA •  Bean Validation 1.1
  24. 24. 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!
  25. 25. Windows Vista or XP 4GB RAM Intel Core Duo 2
  26. 26. 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
  27. 27. 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
  28. 28. 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
  29. 29. RefactorByCommonService
  30. 30. Partitiontofacilitatescalability
  31. 31. Partitioninseparateservers,asneeded
  32. 32. EXECUTIVE SUMMARY Digital by Default with Java
  33. 33. "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 tim-bernerslee-explains-how-it-all-began-9185040.html
  34. 34. Thank You! The book: developer-handbook/book Blog: Twitter: @peter_pilgrim
  35. 35. Creative Commons Attributions Photo of "Chip Pattern" by Ryan Holst, March, 2009 Photo of "Pattern" by Scarygami Photo of "Patterns in the Sand" by Christian Haugen Photo of a series of punch cards which are strung together, to control the pattern woven by the Jacquard loom. John R. Southern
  36. 36. Creative Commons Attributions Proof of Pattern messh "untitled" in tan by Josef Stuefer Proof of Pattern mesh "untitled" in blue by Josef Stuefer Alter photo of "Tug of War 3" by Scott Anderson
  37. 37. 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
  38. 38. 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.