A new year starts with all the new initiations as well as the work that spills over from December, but we are still in the first half of January right? Let’s take a look at what we did last year and what is going to happen in the new year. Exciting times!
A bit of Anahita History
When the Anahita project started isn’t quite clear, but roughly 5 years ago, Anahita development started as a commercial GPL component for the Joomla CMS. The idea was to enable Joomla developers to set up a social network of their own. As we developed further, we realized that building a social network in a CMS was much like trying to build a democracy in a dictatorship. Content management systems are by nature top-down systems where few people set access control settings and publish while many powerless people consume. In a social network however, every member is the admin of their own profile(s) and in charge of the content that they publish. Leadership on a social network is earned and not appointed. People choose to follow, unfollow, or block a profile. They decide who gets to see their content. They get to vote and comment, they get to voice their opinion.
The difference between a top-down and bottom-up model makes all the difference in software architecture. As are result we decided to gradually diverge from Joomla and make Anahita a standalone technology. That’s what the new codebase of Anahita is and while it still contains some of the legacy Joomla code, it is well on its path to become a stand alone lean and mean technology. We have been removing more of Joomla code in every release of Anahita and replacing it with native Anahita code base. In fact most of the front-end is now powered by Anahita and Nooku. For those of you who don’t know, Nooku is a really advanced PHP framework and architecture that we have used while developing the Anahita framework. Perhaps by the end of this year there won’t be any traces of Joomla code left in Anahita.
Anahita also provided a new architecture for building apps and services where everything and everybody are treated as nodes, all the relationships as graphs, and messages propagate on a network of nodes and graphs. We call this the nodes-graphs-stories architecture. The nodes and graphs idea wasn’t something that we invented. Social networks and graph theory have been long studied in math and physics. We only decided to build software design patterns that utilized network and graph concepts in a framework which makes up the new Anahita codebase. We are still long away from a true node and graph architecture, but that’s what makes this project so much fun. The fact that there are always new frontiers and milestones to conquer.
The current Anahita codebase is about 2 years old. Today Anahita is referred to as a knowledge networking platform for building more insightful apps and services. Think #OnlineLearning and #OpenScience or any service that is used for sharing and looking up information about people, places, and things. Anahita’s nodes-graphs-stories architecture leads to apps that get smarter and more insightful overtime.
Last year’s accomplishments
In 2014 we made Anahita 3.0 and 4.0 Birth releases available. A Birth release is a stable release and an Embryo release is a constantly evolving codebase that we use to power our own website and test it. These releases provided a new set of features such as global search, #hashtags, and @mentions.
This was also the first year that the entire Anahita codebase was available on our GitHub repository for free, and Anahita installations were done using PHP Composer and command line tools rather than uploading Zip files via FTP (Seriously why did people used FTP in the old days?)
I gave 2 talks about Anahita called: Connecting The Dots. One of them was in Vancouver and the other at NookuJam2014 in Belgium where it was voted the best talk by the community. Thank you guys again, Johan and Tom Janssens and the rest of Nooku tribes. I miss you all. Can’t wait to see you again in 2015 so we can share ideas, hack some code, and drink some Carmelite beer together.
This year’s focus
In 2015 Anahita development will be focused on the following areas:
- MobileFirst UIs: more people are accessing the web on their mobile devices so Anahita websites must become accessible to those users. Following the MobileFirst design approach we will be designing all the UIs for mobile screens first and then optimize it for larger screens such as desktop environments.
- Improved Graph Architecture: We need all the 3 essential graphs that define the relationships amongst people, places, and things. Some of them are already in place such as Social Graph, #Hashtags, @Mentions, Likes, and Email Notifications. We have yet to implement Location Graphs and the ability to tag any type of Actors in posts.
- Improved RESTful and JSON APIs: this is important because APIs are how 3rd party apps and services can communicate back and forth with Anahita. This is especially useful when Anahita is used as the cloud back-end for mobile apps.
- Removing all the Joomla legacy code: that means removing the entire administration back-end and Joomla libraries. Don’t worry, new and improved administration tools will be developed in the front-end.
- Improved installation and deployment: installing Anahita using Composer and command line tools is quite simple right now, but it has plenty of room for improvement.
To stay up to date about the Anahita development, check out the Anahita 4.* Vision page that we always keep updated.
What are we working on right now?
We are still undecided on which CSS framework to pick since Bootstrap is much more widely used, but ZurbFoundation seems to be ahead of the game when it comes to building MobileFirst and responsive UIs for mobile browsers.
Some really interesting projects here
Would you like to see some interesting projects developed using Anahita? Here are some favourites of mine:
- HealthConnection website and iPhone App for Vancouver Coastal Health (developed by rmdStudio)
- Hyve iPhone App (developed by rmdStudio)
- LetsRide.in which is a ride sharing startup in India
- Neuros.org a knowledge network for medical practitioners in India
- iSlumped.com a distinct social motivation platform to inspire
If you have launched any interesting projects using Anahita please send me a link and I will post it here for you.
The company behind Anahita project is rmdStudio which is an enterprise mobile app development company in Vancouver. This year we are aiming to develop more iOS and Android apps that use Anahita as the cloud back-end knowledge system. As we improve Anahita and innovate more, we will also share a lot of the infrastructure code, as a part of Anahita’s codebase, under open source license. We believe tools that facilitate sharing the fruit of knowledge improve the current state of humanity and that is exactly what the Anahita is all about.