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.

Java CMS 2015

1,675 views

Published on

Considerations and process for evaluation of Java-based CMS packages in 2015. Contact us at http://www.dev9.com/ for questions, more information!

Published in: Technology
  • Be the first to comment

Java CMS 2015

  1. 1. • Java content management solutions in the 2000-2010 era tended toward heavy-weight, hard-to-use, hard-to-develop "enterprise" systems. • Over the last few years a new generation of content management systems (CMS) have entered the market based on better-faster-lighter principles. • To put it another way - what does a modern CMS built for a world of Continuous Delivery look like? • In this session we'll talk about requirements for a modern CMS solution, including support for mobile, responsive design, and targeted content for specific application needs. We'll also talk about requirements for ongoing maintenance, including operational and development complexity. • We'll pay particular attention to the issues and strategies for migrating off legacy enterprise (or custom internal!) CMS systems to these modern CMS solutions. • This will be an interactive session - bring your war stories and your aspirations!
  2. 2. Java CMS in 2015 Will Iverson CTO, Dev9
  3. 3. • CTO, Dev9 – Previously Apple, Symantec, SolutionsIQ • Java since 1995 • Four Books, Numerous Articles • Numerous CMS Evals, Implementations
  4. 4. • Custom software development firm – Based just outside Seattle, Washington • We build custom software solutions based on Continuous Delivery – Processes & tools based on combination of Lean & heavy use of automation • Typical projects – CMS implementation! – Java & .NET-based web services at scale – SQL, NoSQL – Variety of client-side technologies • AngularJS, Android, and iOS. – DevOps implementations, including Docker
  5. 5. • CMS Fundamentals – Types of CMS • CMS Architecture – Modernization & Upgrades • Picking A CMS – Platform – Evaluation Process – Contenders • Demo[s] • Q & A
  6. 6. FUNDAMENTALS
  7. 7. • Core Ideas – Publishing content is a process – Structure allows for reuse • Next Steps – Internationalization & Localization – Multiplatform (Print, Online) – eCommerce – Collaboration – More…!
  8. 8. • Vivamus sodales • "Neque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit..." • Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin tincidunt eleifend purus, eu maximus lacus placerat eu. Suspendisse vel volutpat dui. Maecenas porttitor ut diam quis ullamcorper. Curabitur suscipit libero sit amet ipsum bibendum, id varius felis tempus. Morbi turpis nibh, convallis pretium elementum eu, pretium nec nulla. Quisque quis ornare ante, eu scelerisque magna. Sed laoreet ullamcorper nibh, vitae dapibus neque viverra ut. • Proin Malesuada • Maecenas Gravida • Title: Vivamus sodales • Intro Pull Quote: "Neque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit..." • Body: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin tincidunt eleifend purus, eu maximus lacus placerat eu. Suspendisse vel volutpat dui. Maecenas porttitor ut diam quis ullamcorper. Curabitur suscipit libero sit amet ipsum bibendum, id varius felis tempus. Morbi turpis nibh, convallis pretium elementum eu, pretium nec nulla. Quisque quis ornare ante, eu scelerisque magna. Sed laoreet ullamcorper nibh, vitae dapibus neque viverra ut. • Author: Proin Malesuada • Editor: Maecenas Gravida
  9. 9. 1. We built a custom website 2. We have basic content publishing technology – Now what? 3. Differentiate!
  10. 10. • Repository • Structured Editing • Specialized CMS • Full Collaboration
  11. 11. – Repository only – Only interesting if you want to build your own – Examples: Apache Jackrabbit + Apache Sling – ~10-20MB
  12. 12. – Repository + editor + publishing – Codename: WCM – I think what most people mean by CMS – ~10-50MB
  13. 13. • Variety of targeted needs – Arguably includes most popular blogging suites • “You’ll know it when you see it” • ~10MB-500MB+
  14. 14. – E.g. Wikis, Discussion Boards, Document Libraries, more… – Codename: ECM – E.g. SharePoint, Alfresco – ~1-2+GB
  15. 15. HOW A CMS WORKS
  16. 16. CMS Server UI Code (JSP) Browser Integration Code (Java) Repository HTTP/HTML
  17. 17. CMS Server UI Code (JavaScript, AngularJS) Browser Integration Code (Java Microservice)Repository Mobile ? REST/JSON
  18. 18. • Build your own! – Really easy to make a text box render… – Really easy to build a custom app that duplicates existing CMS… • Special snowflake! – All modern CMS systems highly customizable – Special snowflake  Focus on dev experience • Save on licensing! – Really good open source options • The only person who loves a custom CMS is the person who built it. – …And they probably quit.
  19. 19. • Responsive design • Mobile apps – Native – Hybrid • Personalization initiative[s] • Custom integration is hard – Bad edit/debug cycle, poor repository, undocumented… • Testability • Ability to find/retain staff • Long term TCO – Expensive licensing for legacy system
  20. 20. • Lend themselves to dual systems • Usually easier than you would expect – Like cleaning out your garage • We have done many, happy to discuss! – Careful attention to risk management
  21. 21. YOU HAVE TO CHOOSE!
  22. 22. • Platform • Evaluation Process • Contenders
  23. 23. PLATFORM SELECTION
  24. 24. • You have to pick something you can deploy. • No, really.
  25. 25. • Structured • Refactoring • Integration • Well known • Broad professional skill set – Dev, IT know it
  26. 26. • SquareSpace • Wix • Many, many more…
  27. 27. • WordPress – JSON/REST API – http://wp-api.org/ • Drupal – https://www.drupal.org/documentation/modules/rest – https://www.drupal.org/project/restapi • Joomla • Magento • bolt.cm • octobercms.com
  28. 28. • Already Strong Microsoft Shop • SharePoint – REST API http://bit.ly/1zaKm7U • SiteCore – Sample at http://bit.ly/1DlDQKI
  29. 29. • Too many to count. • New one every week.
  30. 30. EVALUATION PROCESS
  31. 31. • Starting Point – Existing CMS or greenfield? • Broad Type – Structured Editing, Specialized(?), Full Collaboration • Specific Requirements – Circular problem! • Expected Customization – Be Honest • Test Strategy – Automation? • Total Cost – Dev, Test, Deploy, Patch… – Assume new patch every week!
  32. 32. CONTENDERS
  33. 33. • CMSMatrix – http://www.cmsmatrix.org/ – Reviewed [at least briefly] ~240 links • Java-Source.net – http://java-source.net/open-source/content-managment- systems • Wikipedia – http://en.wikipedia.org/wiki/List_of_content_management_ systems – Much shorter, cleaner list
  34. 34. • Can a dev build with it fast? • Can you test it easily? • How hard is it to upgrade? • Does it do what you need? • How much does it cost? • Deployment • Configuration Management • Development • Edit/Compile/Debug Cycle • Modern JS Framework support (e.g. AngularJS, Ember) • Native mobile support (iOS, Android) • JSON/REST-friendly • WebDAV support?
  35. 35. • Lean & Fast – BrightSpot CMS • HippoCMS • MidMarket – Magnolia • Enterprise/Collaboratio n – Alfresco – Nuxeo • Ones that I like – Highly subjective • Always need to conduct eval for YOUR needs!
  36. 36. • http://dotcms.com/ – Quasi-open source • http://www.ekinocms.com/ – But their home site is running on PHP • http://www.jahia.com/ • http://www.liferay.com/ • http://www.opencms.org/en/ – Docker image! – Prior successes
  37. 37. • http://www.infoglue.org/ • http://entermediasoftware.com/ • https://enonic.com/en/Home
  38. 38. • Hotels – http://www.mediaconcepts.com/solutions/content-management-system.html • Schools – http://omniupdate.com/ – http://www.terminalfour.com/ • Newsroom – http://www.atex.com/ • Governments – http://www.revize.com/ • Globalization: i18n & l13n – http://www.sdl.com/products/tridion/
  39. 39. • http://www.brightspotcms.com/ • Small, light-weight, good looking • Describe content types via Java – Dynamic reload FTW!
  40. 40. • Lean, dev friendly • Modern design • http://www.onehippo.org/ – https://blogs.oracle.com/geertjan/entry/hippo_ development_in_netbeans_ide
  41. 41. • http://www.magnolia-cms.com/ • Based on Spring, REST, WebDAV
  42. 42. • http://www.alfresco.com/ – http://docs.alfresco.com/5.0/tasks/alfresco-sdk- install-quick-start.html • Now Maven based • In use by some big names • Has REST API • Pretty darn big
  43. 43. • http://www.nuxeo.com/ • Lots of Continuous Delivery, Agile Focus – Massive installer – Really an ECM package
  44. 44. DEMOS
  45. 45. Q&A

×