of 41 /41
The future of digital marketing. London, Poznań, New York. © 02/07/2015 Page 1 Boost your productivity for free Maciej Majchrzak / @majchrzak_m

Boost your productivity for free!

Embed Size (px)

Text of Boost your productivity for free!

  1. 1. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 1 Boost your productivity for free Maciej Majchrzak / @majchrzak_m
  2. 2. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 2 Open source in AEM Adobe Experience Manager: Apache Sling Apache Felix Apache Jackrabbit Oak ... Community ?
  3. 3. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 3 The Project Chocolate Company Marketing Platform
  4. 4. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 4 Project Scope Multi-channel, multi-lingual website built on Adobe Experience Manager Integration with internal news platform (dynamic content) Non-functional testing Platform set-up Deployment Maintenance
  5. 5. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 5 Meet your team!
  6. 6. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 6 Development Challenge #1 Team: Getting up to speed Upskilling inexperienced
  7. 7. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 7 Development ACS AEM Samples http://adobe-consulting-services.github.io/acs-aem-samples/
  8. 8. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 8 ACS AEM Samples Your benefits: Easily accessible training Code references and guidelines Suitable for beginners and more advanced
  9. 9. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 9 Development Challenge #2 Code: Organization / structure Separation of concerns Reusablility Simplicity Readability + testability = maintainability
  10. 10. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 10 Development Framework Neba http://neba.io Slice http://cognifide.github.io/slice
  11. 11. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 11 Neba Your benefits: Power of Spring Spring MVC apps with ease Integrations Dependency injection Advanced mapping of Sling resources into Java objects Easily testable and clean code
  12. 12. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 12 Neba
  13. 13. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 13 Slice Your benefits: Lightweight and powerful dependency injection Easily testable and maintainable code Improved code design and re-use Advanced mapping of Sling resources into Java objects
  14. 14. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 14 Slice
  15. 15. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 15 Development Challenge #3 Dynamic content: How to include dynamic content (component) on a page? How to cache pages with dynamic content?
  16. 16. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 16 Development Dynamic Content Sling Dynamic Include http://cognifide.github.io/sling-dynamic-include
  17. 17. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 17 Sling Dynamic Include Your benefits: Dont bother dynamic components anymore Significantly reduced implementation effort Very simple configuration Fast and efficient solution for pages with dynamic fragments
  18. 18. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 18 Dispatcher optimization Also check: Dispatcher Flush Rules http://adobe-consulting-services.github.io/acs-aem-commons/features/dispatcher-flush-rules.html
  19. 19. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 19 Development Challenge #4 Quality: How we are sure that it does what it should? How to run tests automatically? How to run test often?
  20. 20. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 20 Development Functional Testing Prosper https://github.com/Citytechinc/prosper
  21. 21. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 21 Prosper Your benefits: Lightweight integration tests increased value Quick execution Can be run often Powerful yet easy to write and read BDD-style Simplified maintenance of tests Combine with Jacoco/Cobertura for test coverage
  22. 22. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 22 Prosper
  23. 23. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 23 Go Live?
  24. 24. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 24 Go Live Challenge #5 AEM setup: User, groups and permissions Authorable error pages Domains and content mappings Sitemaps ...
  25. 25. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 25 Go Live User, Groups & Permissions ACTool http://github.com/Netcentric/accesscontroltool
  26. 26. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 26 ACTool Your benefits: No need for clicking and manual ACL application You can share them across multiple environments with ease You can version config files in source repository
  27. 27. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 27 Other tools Authorable error pages: Error Page Handler http://adobe-consulting-services.github.io/acs-aem-commons/features/errorpagehandler.html Sitemaps: Simple Sitemap generator http://adobe-consulting-services.github.io/acs-aem-commons/features/simple-sitemap.html Domains and content mappings: Carty http://cognifide.github.io/carty
  28. 28. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 28 Go Live Challenge #6 Security & Performance (load) tests How are we sure that our AEM instance is secure? How do we know we can handle assumed traffic?
  29. 29. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 29 Go Live Security Testing SecureCQ https://github.com/Cognifide/SecureCQ
  30. 30. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 30 SecureCQ Your benefits: Security audit before go-live Easy to extend by project-specific tests Easy to run https://github.com/adobe-marketing-cloud/ cq-java-securecq-maven-plugin
  31. 31. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 31 Go Live Performance Testing No AEM-specific tools Other tools: JMeter (http://jmeter.apache.org/) The Grinder (http://grinder.sourceforge.net/)
  32. 32. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 32 Go Live!
  33. 33. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 33 Maintenance Challenge #7 Functional Changes: Content manipulation after changing application behaviour
  34. 34. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 34 Maintenance Content Manipulation AEM Groovy Console https://github.com/Citytechinc/cq-groovy-console
  35. 35. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 35 AEM Groovy Console Your benefits: Run arbitrary Groovy code on AEM instance: Migrate content with ease Extensible Debug with ease
  36. 36. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 36 Maintenance Challenge #8 Debugging How to reproduce a bug safely? Moving content from one environment to another
  37. 37. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 37 Maintenance Content Sync Grabbit https://github.com/TWCable/grabbit
  38. 38. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 38 Grabbit Your benefits: Synchronize large repositories efficiently No need to worry about storage space and network latency Frequent content synchronization (live staging)
  39. 39. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 39 AEM Open Source World
  40. 40. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 40 Contribute Its Your Turn!
  41. 41. The future of digital marketing. London, Pozna, New York. 02/07/2015 Page 41 Question? Answer!