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.

Evaluating Extensions: A Comprehensive Guide to Keeping Your Site Clean


Published on

The DNN ecosystem has a large number of options when it comes extensions available for you to use in your site. How do you know that the extensions you’re adding are exactly what you expected them to be? I’m not just talking about the ones you’d find in the Forge or Store – but those custom ones you have delivered to you too. After many years of deploying DNN personally and professionally for clients of all verticals and sizes, I’ve learned quite a bit about what vendors are and should be doing. This presentation will walk you through the process of ensuring that you don’t put the success of your website at risk.

Published in: Software
  • Be the first to comment

  • Be the first to like this

Evaluating Extensions: A Comprehensive Guide to Keeping Your Site Clean

  1. 1. Evaluating Extensions Will Strohl @WillStrohl
  2. 2. An E-Commerce CMS for Everyone on Your Team
  3. 3. Will Strohl 1 2 3 4 Using DNN since 2003 DNN Author DNN MVP DNN-Connect Member CEO & Co-Owner, Hotcakes Commerce
  4. 4. Why Are We Here? • DNN uses extensions • Extensions are the primary cause of issues • Extensions impact the daily success of a site • Extensions reflect upon DNN
  5. 5. What We Will Not Be Doing… • How Do I Build _______? • Best Practices Session • Vendor-Bashing
  6. 6. By The Way…
  7. 7. What’s an Extension? An app that can be installed into DNN to add to, enhance, or replace functionality. • Modules • Themes • Theme Objects • JavaScript Libraries/Libraries • Providers
  8. 8. Extension Sources
  9. 9. Extension Sources
  10. 10. Reality & Glass Houses
  11. 11. All Extension s
  12. 12. Guidelines for All Extensions • Passes EVS • Windows Azure-Friendly • Includes Documentation • Vendor is responsive to inquiries • Always comes in a package
  13. 13. My Process 1. Check downloads 2. Check release date(s) 3. Check reviews/ratings 4. Review site/marketing info 5. Review documentation 6. Live customer examples 7. Test support 8. Ask in the forums 9. Run the package through EVS 10. Install the package locally 11. Try to do a proof of concept
  14. 14. Themes(Skins)
  15. 15. Guidelines for Themes • Clean HTML • Uses a common framework • Uses CDN first, CDF/CRM second • Minified files are default • Includes DOCTYPE • No hard-coding • Content images NOT in the package • Does NOT include everything
  16. 16. Before Optimization
  17. 17. After Optimization
  18. 18. Modules
  19. 19. Modules • Clean HTML • Uses common framework • Uses DNN form patterns • Uses CDN first, CDF/CRM second • Minimal use of render-blocking scripts • Minified files are default • Does NOT include everything
  20. 20. Play The Game
  21. 21. Why is That There?
  22. 22. Seriously… WTH is That Doing There?
  23. 23. Later in the Process …
  24. 24. My Site Is Already Up • Optimize your site configuration • Minimize all scripts & CSS in the installation (even and especially DNN & third party vendors) • Optimize your theme(s) • Optimize your server • Remove everything that’s not essential • Use Google PageSpeed & WebPageTest to measure progress
  25. 25. Tangent: A Word About the CDN Setting
  26. 26. Tangent: A Word About the CDN Setting
  27. 27. Minification Findings Pro Tip: Ignore the first test. Run it again.
  28. 28. Minification Findings JavaScript CSS Minified files in ~90 folders Avg ~60% reduction per file Avg ~150% reduction per file
  29. 29. Minification Findings
  30. 30. DNN Corp is Aware
  31. 31. My Site Is Already Up • Still follow through with the review • Contact the vendor • Demand a solution • Be ready to jump ship (and actually do it)
  32. 32. Jumping Ship • Find a suitable replacement (probably your 2nd choice) • Have a replacement built • Build your own
  33. 33. But I’m a Vendor • Customer first approach • Acknowledge the issue • Be transparent • Address the issue • Offset costs w/ marketing trades • Sponsored development
  34. 34. But I’m a Vendor • Load only the scripts and CSS that are absolutely required, and only when they are required • Refrain from render-blocking scripts at all cost • Use minified 3rd party libraries • Learn updated best practices of DNN & the web • UPDATE your code base! • See previous bullet • Seriously, please see that previous bullet…
  35. 35. Community & platform overall will lose market share due to a very wrong perception that “DNN sucks.” That means less customers & resources for ALL of us… The Real Cost of Doing Nothing…
  36. 36. DNN Book DNN-Connect DNN Forge DNN Store GitHub CodePlex EVS DNN CRM/CDF JS CDN Render-Blocking Scripts DNN Form Pattern Compress Images Minify JavaScript Minify CSS Lean Sentry WebPageTest Google PageSpeed Insights DNN Forums DNN-Connect Forums Presentation Resources Some of the things we spoke about
  37. 37. Thank you! Will Strohl @WillStrohl