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.
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. What We Will Not Be Doing…
• How Do I Build _______?
• Best Practices Session
• Vendor-Bashing
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
12. Guidelines
for All
Extensions
• Passes EVS
• Windows Azure-Friendly
• Includes Documentation
• Vendor is responsive to
inquiries
• Always comes in a package
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
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
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
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
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. Jumping
Ship
• Find a suitable replacement
(probably your 2nd choice)
• Have a replacement built
• Build your own
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. 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. 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. DNN Book
http://bit.ly/bookdnn7
DNN-Connect
http://dnn-connect.org/
DNN Forge
http://www.dnnsoftware.com/forge
DNN Store
http://store.dnnsoftware.com/
GitHub
https://github.com/
CodePlex
http://www.codeplex.com/
EVS
http://evs.dnnsoftware.com/
DNN CRM/CDF
http://bit.ly/dnncrmapi
JS CDN
https://cdnjs.com/
Render-Blocking Scripts
http://bit.ly/renderblocking
DNN Form Pattern
http://uxguide.dotnetnuke.com/
Compress Images
https://compressor.io/
Minify JavaScript
https://javascriptminifier.com/
Minify CSS
http://csscompressor.com/
Lean Sentry
https://www.leansentry.com/
WebPageTest
https://www.webpagetest.org/
Google PageSpeed Insights
http://bit.ly/gpsinsights
DNN Forums
http://www.dnnsoftware.com/forums
DNN-Connect Forums
http://dnn-connect.org/forums
Presentation Resources
Some of the things we spoke about
37. Thank you!
Will Strohl @WillStrohl
will.strohl@HotcakesCommerce.com me@WillStrohl.com
HotcakesCommerce.com WillStrohl.com
Notes de l'éditeur
Also former DNN vendor personally, run a
LeanSentry
There is a Jira
It’s low priority
Webpack is being used now in DNN 9
“You know what happens when you do nothing? Nothing.”