What is Software and what is a Theme?

I’ve gotten a few more questions on upgrading from Tendenci 5 to Tendenci 7. It seems we have been overzealous in explaining the changes at https://tendenci.readthedocs.io/en/latest/ and here and here and very extensively here. Perhaps too much info and too technical.

Listening to a client I realized that maybe “geek speak” on my part was part of the challenge. Definitions:

  1. Themes – The “theme” is the visual part of your site that makes you unique. When a major change happens, like the rapid growth in mobile traffic, it is not uncommon to have to purchase or pay to upgrade your theme with WordPress, Drupal or Tendenci.
  2. Software – The “software” stack is all of the functionality below the theme. Open source projects are driven by a community and most modules or add-ons strive to be backwards compatible.
  3. Game changers – sometimes a company like Apple will invent a “game changer” like the iphone. Awesome! Oh, but wait. You can’t write software that works on a device that either didn’t exist or was a tiny fraction of visitors to your site when you first deployed your theme.
  4. LTS Timelines – Who sets the timeline for LTS (Long Term Support) major releases? In Open Source it is driven by the community around a project. Frequently it is a combination of software and “dependencies”.

Examples?

To use a large open source project as an example, WordPress users (like me – my blog is on wordpress) sometimes need to pay to upgrade a premium theme when WordPress does a major release.

WordPress has a theme compatibility checker.
https://codex.wordpress.org/Themes/Theme_Compatibility/

As WordPress makes changes and improvements, sometimes these impact WordPress Themes and their underlying code and use of Template Tags. When a new version is announced, WordPress users are recommended to check the various WordPress Theme Compatibility lists to ensure their WordPress Theme is updated and ready for the new version.

Drupal, another major open source project, lists information on how to upgrade themes to work with each version here:
https://www.drupal.org/docs/8/theming-drupal-8/theming-differences-between-drupal-6-7-8

Tendenci, a much smaller but growing open source project, is doing the same thing for the same reasons. You want a unique brand (your theme) and new functionality (the software) and you’d like it to be as low cost as possible. Hence software updates are “usually” free, it’s just when a “game changer” happens that you need to update your theme.

If you are really curious what is in a theme, there is a great infographic on WordPress themes here.

For more on EOL support on Tendenci 5 you can read this really long blog post. And of course your site will still work if you don’t upgrade, it’s just the Django community has moved on so it’s best to move with them!

Release Process
Django Framework Release Process

Please see this comprehensive blog post for more detail on the Tendenci 5x to 7x upgrade process.