I do not like the trend for EPiServer web.config!

Everyone is talking about CoC (Convention over Configuration) and DRY (Don’t Repeat Yourself) today. The idea is to reduce the amount of repetitive, needless configuration and just keep what’s important.

imageHere is a graph with the number of lines in web.config for a clean installation of EPiServer CMS from version 4 to 6 (CTP2). Adding Community, Mail or other product will not make it better.

Complexity is making EPiServer CMS expensive to own

Handling web.config takes time and effort when you have to merge changes between different environments during deployment and each version is adding more and more configuration to your web.config-file.

And it increases the risk or mistakes because important settings disappears in all noise from comments and default settings.

What can be done?

Here are my suggestions and I urge EPiServer to implement the before they release EPiServer CMS 6:

  • Comments: -246 lines. Just moving all comments and example settings to a separate file that is overwritten with the latest version during upgrade.
  • Oracle: -60 lines. Why not a separate sample file for oracle?
  • EPiServer UI-settings. –78  lines. Why not mount user interface folders using IIS virtual folders? Then you could move a lot in location tags to other web.config files!
  • Workflow: –42 lines. Not used by many. Why not put it in the sample file for people to include if they want it or start it with default values.
  • RemoteEvents: –32 lines. WCF Service configuration – Why not have a programmatic or shared database config
  • siteSettings: A line over 1500 characters long. Why not remove the default values and make it shorter?
  • Providers: –8 lines. Skip adding providers that are not used. Just keep the other in the sample file.

Enough whining for today 🙂