The #NoJoomla hashtag has been a common theme in the Anahita tribes and our social media posts. What’s the story behind it? It’s nothing mean towards the Joomla! project. We are just removing all the remaining legacy Joomla code from Anahita. The version 4.3 will be a lightweight stand alone social networking infrastructure. This is an important milestone for us!
To tell you a bit about our history, we started developing Anahita as a commercial extension for Joomla! CMS. After few releases, we realized that Joomla was imposing constrains on Anahita’s architecture. Building a social network within a content management system is like trying to start a democracy within a dictatorship. We needed to break out of the constrains and that’s how the diversion started.
What were the constrains imposed by Joomla?
A CMS provides a topdown and hierarchal environment. Content is created and published by a small group of admins, editors, publishers, and writers. They get to decide what is published and how it is presented. Content is often organized in a one-to-many tree structures and taxonomies. In other words, a few people produce and control the content production for many consumers. Content is managed in order to be delivered to the consumer.
In a social network people are the admins of their own profiles or the ones they manage (groups, pages, events, etc.). Leadership is earned and everybody gets to produce content. Relationships of people, places, and things in a social network are primarily many-to-many by default. In this architecture, content find its way out to the end users via social graph and story feeds.
A gradual evolution
To overcome those obstacles we needed to make changes to the Joomla’s architecture. First we started offering Anahita as a Joomla distribution bundled with Anahita extensions. Then in every new release we chiseled away from Joomla code and replaced it with native Anahita code. We’ve been doing that for the past few releases. In the next release Anahita, there will be no Joomla! code left.
This isn’t an original idea. We got the inspiration from WordPress which was derived from the b2 project and overtime it became a stand alone application that it is today.
Several years ago having a stand alone Anahita was nothing but an ambitious idea, but now it is going to be a reality. We have done most of the essential work. The codebase has been reduced by over 25%. The Anahita database has only 7 tables upon installation.
This wasn’t an easy as merely deleting files. A lot of functionality which was relying on Joomla’s core libraries had to be rebuilt using Anahita code. Due to interdependencies, deletions had to be done strategically. All of that had to be done in multiple releases in a seamless and transparent fashion so people who were using Anahita for their projects wouldn’t experience any interruptions.
Anahita 4.3 will have no Joomla code and from that point we can focus on specializing Anahita as a social networking infrastructure for open data and open knowledge.
Our gratitude to the Joomla project
Joomla provided an ideal platform for us to start the Anahita project, crowd fund it, and distribute it. It provided a lot of the building blocks that we didn’t have to develop at the time. However a living project must evolve and change. We are thankful to the Joomla project and community for helping us make it this far. Not to mention that we learned quite a lot through this process. The knowledge we gained was one of the most essential outcomes and it will guide us as we move the Anahita project forward.
Also our special thanks to RocketTheme who gave us the MissionControl template which was used for the Anahita administration back-end until version 4.2. We have completely removed the administration back-end in the upcoming release, because all the site administration is now done in the front-end.