The Bob Bloom Show #37: Socializing With Anahita, Part 1 Of 2

Sep 15, 2011



Rastin Meir is the founder and CEO of Rastin Mehr Design Studio Inc in Vancouver. A Web Application company. Ash Sanieyan is the founder and president of Peerglobe Technology Inc in Vancouver. A genuine Guru in Ruby on Rails, Javascript, Mobile Application Development (especially iPhone), Web Application Frameworks, and Social Web. He has developed 2 social networks prior to the Anahita SocialEngine™ project and he is described by Rastin Mehr as the best **%$#&@ Software Architect and most fun colleague, team-mate, and business partner that he has ever met and worked with.


Bob (Opening): Welcome to episode 37 of The Bob Bloom Show.

My name is Bob Bloom from Toronto, Canada.

Today is Thursday, September 15h, 2011.

Arash Sanieyan and Rastin Mehr, Core Architects of The Anahita™ Open source Social Networking Software, join me to delve into Anahita. This is part one of our two part discussion.

The website is

Transcripts of this podcast are graciously sponsored by Anahita™.

Bob: On April 22, 2010 I had the pleasure of introducing Rastin and Ash and Anahita. On June 17th last year we ended the season with a blow-out show with over 10 people on my podcast including Ash and Rastin. It’s good to get caught up with you.

Rastin: It’s great to be here Bob.

Ash: Same here Bob.

Bob: I noticed that at the recent Joomla and Beyond conference attendees were into ice cream and beer, but you blog about coffee. Is the coffee really that good in Vancouver?

Rastin: We love coffee. [laughter] We actually, well, where I live on the 6th floor on top of a coffee shop is a very beautiful spot in Yaletown in Vancouver, so and that’s basically the place that I spend a lot of time working, instead of going to our office. We only go to our office for meetings but coding and all of that I would rather be surrounded by strangers.

Bob: You find that motivating.

Rastin: I guess it’s a social place, you know you have the cafe and you have the sun and we had a bit of sun this summer in Vancouver, so that’s good. And you meet new people and yeah, I guess I find it very…

Ash: Yeah, Rastin’s very coffee shop oriented.

Rastin: and I love coffee.

Ash/Rastin: I change between coffee, libraries, home, different places.

Ash/Rastin: We actually have a coffee group on Anahitapolis.

Bob: Oh really, I missed that. I’ll have to search for that because I missed it.

Rastin: Oh we do have a beer and drinks as groups do.

Rastin: Yeah, we have one for food and drinks and one for coffee because we figure those are the things that bring people together.

Bob: Or divide people. [laughter]

So for those who aren’t sure what is Anahita?

Rastin: Anahita is a social networking engine. You can think of it as a sort of web-based operating system for building any kind of businesses that you want to build, or projects that have a social networking context into them. So you install the social engine as your framework and platform and you can build social apps using Anahita framework and you can host them on the Anahita platform.

Bob: and that platform is a free download.

Rastin: It is free as free beer or free coffee. So you can basically just go to our site and download a free coffee of – a free copy – [laughter] and you can just download a free copy for yourself. If you want apps you can sign up as a premier member but core framework and platform is free.

Bob: and the core framework is written with Nooku Framework.

Rastin: Yeah, we use Nooku Framework as well as Anahita comes with its own framework, so the Anahita apps are actually developed using Anahita Framework. Ash is the framework architect, so he can tell you all about it.

Ash: Well, basically we use different parts of Nooku, yes, we are using those and at the same time we have to develop a lot of tools and API’s and classes ourselves which, over time, we recognized the patterns and we put those as a framework. So a lot of our apps basically using those as well.

Rastin: We sort of have a little sort of motto about Anahita being RAD, SaaSy, and Social because she is now a rapid application development framework, great for developing software asa service; and, social in the sense that it is specialized for developing social applications.

Bob: I thought that it’s written in Nooku Framework.

Ash: Well, I mean you have to really look – Nooku Framework is not a box that you can look into it. It’s a collection of classes and architecture and philosophies. If you want to build one application you completely use one framework, every aspect of it, if you want to extend to building a platform and other bigger system, well you use parts of the things that you really need.

Taking a lot of other projects that we build on Ruby on Rails, the stepping stone was Ruby on Rails, but as the project goes on they build their own libraries and their patterns and over time the Rails, for example, was only used as part of it as ingredients, one of the ingredients.

So, same as Nooku Framework lots of patterns, lots of object classes we use on Nooku Framework. But, as in development for the past two years, we have developed a lot of Pattern Designs and we sort of had to use across different apps so we sort of have to put those in, and encapsulate them as Anahita Framework.

Which is focused on building social apps. So I don’t think you can really say, you know, Nooku Framework is applied to treat it as one box that everything has to be built on it, it is more like a box of ingredients that you can pick a different aspect of it and extend it to meet our own needs.

Bob: Well I think we’re going to come back to that. You have, you’re working on Anahita 1.7.

Rastin: It’s actually 1.6, the next release, and then 1.7. 1.6 is very likely to be a transition release, so it’s going to be an Embryo Release which we’re going to install it for Anahitapolis and use it ourselves. And then from that point we start building the features that we are expecting to have for 1.7.

1.7 will be the first release that people can sort of operate.

Bob: That’s great going blank on the air – right? [laughter]

Rastin: I thought you were taking notes or…

Bob: I’m thinking – I had the impression 1.6 was almost, it was just a stepping stone on the way to your 1.7.

Ash: Well let me, a lot of things we’ve done for 1.5 we didn’t, we sort of had to make a lot of guesses about how users, about how people use the system. So we sort of had to bring of a lot of different areas and the 1.6 we sort of had to direct parts of the {indecipherable} after seeing what people have been doing with Anahita for the past year.

For example, part of Anahita is completely rewritten, for example the domain library is one of our basically… our libraries.

At the time that we started 1.5 we were so young and experimenting, so we had to put something together to make it work and we had the idea we had the philosophy we didn’t have enough experience. In 1.6 that library has been completely rewritten, there is a lot of great things, a lot more than before and performance wise it has been tuned. Also a lot of our apps are also shrinking. A lot of patterns we use in our apps are even going back to the framework, meaning that our apps are also more shrinking.

Rastin: In terms of size.

Ash: In terms of size, not functionality. More functionality but a lot less code.

Bob: Actually, on that point it was shocking for me to look at your apps under the components folder, because they were so sparse.

Ash: Well, wait until the next one – you’re probably going to see only a fraction of that.

Rastin: Yeah, we are already rewriting the apps for 1.6 and they are literally sort of cut down to half – the size of the code. And we basically, whatever we learned the past six months we will be putting that into practice and improving the design. And one reason we are doing it in two stages is that features – when we build features we like to build it live. As we add the features on Anahitapolis and observe how people use them and we improve it on a daily basis. So all the new features that we’re going to have in 1.7 that’s how we’re going to do it.

That is partly because social networking is not a well defined context. It’s not like you build an on-line invoicing system, or an on-line project management system, or like a CMS. Those are pretty much well defined what you’re building. Social networking is still a lot of experiments are happening, a lot of, you can build social networking in so many different ways. The only way for us to get the features right is to basically introduce them in small bits to people and observe how they use it and improve them and that’s how a lot of our sort of features over the design concepts came out.

Ash: And still we’re improving on a lot of things that we thought we knew, we realized that might not necessarily work and a lot of it can be guessed that you know, we sort of had the intuition or actually becoming more real. So {decipherable}…

Bob: So, when I’m on your site I should push things more. [laughter] I just go into the Discussions and that’s it.

Ash/Rastin: If you’d like to repeat.

Bob: Well when I’m on Anahitapolis I should do more things because I just go to the Discussion Groups. I don’t post any To-Do’s or anything.

Rastin: Oh okay. We do most of that work right now. I don’t think followers of groups can post To-Do’s. You can do it on your own personal profile but we are using our own tools. We use the tools that we build ourselves to basically operate Anahitapolis.

By the way, Anahitapolis is basically the City of Anahita – it’s the place that we build Anahita software and also distribute it and provide support, for those people who don’t know. And we basically use our own groups and discussions and photos and to do task manager and all of that to manage our projects.

Bob: I wanted you to explain what a Hackenpreneur is (scroll down at

Rastin: Oh a hackerpreneur. A hackerpreneur is a “Hacker + Entrepreneur”.

A “hacker” in a sense that Paul Graham defined, who is a computer science venture capitalist, and someone that I really admire. A hacker is someone who is a very good technologist and can come up with unique solutions to product technology problems. And Hackerpreneurs are basically hackers and technologists who have a business sense and these people are a very deadly species. [laughter] Because yes, they are very intimidating when an MBA or a business person encounters a Hackerpreneur they get really intimidated because it’s a lot easier for a hacker to learn business than for a business person to become a hacker. And a lot of sort of great hackers in history are people who started, you know all about the Apple Computers and FaceBook and Oracle and Google and all the founders, if you look into by definition they were Hackerpreneurs.

Bob: And you wrote a blog post about this saying that Hackerpreneurs are best suited to using Anahita. Did I understand that right?

Rastin: Well out of all the people applying [to join an Anahita Tribe] they were the easiest because when you join in and Anahita is really a tool box, it’s not a point and click kind of technology.

These are people who build their own businesses by putting together the building blocks, so they have knowledge of technology and business, and they are the ones who feel most comfortable, and they get most excited when they see something like Anahita, because they sort of have knowledge both in the business area and technology and programming.

Bob: I’m finding that’s a general view with open source software, that people who will get into the code even if they don’t have a computer science degree, but they’ll get in the code, seem best suited for it.

Rastin: Yeah, you don’t have to have a computer science degree to become a hacker. You need to have the passion and spend a lot of time programming and read a lot and learn a lot. It’s sort of a passion that you sort of nurture. After a while hackers learn to treat business problems just like software problems. It’s basically a function that builds an algorithm that you put in $100 you get $300 out and you build a business model. They are very comfortable to break any kind of rules that is traditionally practiced in the business world.

Bob: That’s very important because the rules are being changed all the time.

Rastin: It’s true, they change so many things.

Ash: It’s all about the efficiency. See, when you are a Hackerpreneur if something is not efficient the system is broken so you just fix it by coming up with a new algorithm.

Rastin: They look at the business as a system, that’s true. Like historically we changed so many things. Like in the business world everything is secretive and in this side they share everything. In the business world they came up with patents and copyrights, here they came up with GPL and Creative Commons, and they developed completely different business models and out of that. So yeah, Hackerpreneurs do things differently and that’s the hacker part.

Bob: You’ve pushed things, and I was all through the development of Anahita when you started with Joomla and then you went with Nooku and all of that and then when I installed Anahita I made sure that was a separate site because I wasn’t exactly sure if it was Joomla or not so I kept it separate and it’s been very good, it’s been keeping my mind agile.

Rastin: I’ve been watching you sort of building your site and I admire a lot of the experiments you’ve done.

Bob: I didn’t pay him to say that – honest.

Rastin: We get such a kick, both Ash and I to see people how they can use Anahita in different contexts, and push the limits…

Bob: That’s because I busted out of the Shiraz template.

Ash: …actually, me and Rastin often have arguments about this because sometimes people might do the things that we didn’t necessarily anticipate it and we sort of want to correct them but I say no, let’s let them experiment, that’s the whole idea.

Bob: No, no, no, no, no. You’re calling your software “embryo releases” and “birth releases” and when your children grow up they become things you either don’t want them to be or have no idea they would be.

Ash/Rastin: Exactly – let them grow. But we are here for the support regardless.

Bob: When your software becomes a teenager, you’ll start aging. [laughter]

Rastin: Hopefully not. I mean the whole idea of calling “embryos” and “birth” is building an eco system of ever-growing new organisms. That’s part of the change that is happening in open source software I think is because software is becoming more and more like living organisms. They are constantly changing and evolving and that’s how software should be and you can see the whole model released early and often and more projects are now going towards that direction.

Bob: Actually I know you guys are innovative…

Ash: Thank you.

Bob: … and there’s a discussion about how to update the template because it’s like the intersection of you know what you’re given versus you…

Ash/Rastin: well you have customization.

Bob: Yeah, I’m not saying this was usual and someone said well you know you should put in your own CSS and put that into the array that Gantry, whatever, so I’m thinking that doesn’t do it and I’m thinking if there’s anybody who’s going to do something to experiment it would be you. So I’m thinking to myself what we could do because you might actually give it a go.

Rastin: Well we are looking at how people experience difficulties and/or find innovative ways and we sort of incorporate that. Eventually I can see Anahita having its own template framework because CMS and social networks are very different. CMS, I mean look at Joomla for example, for 6 years that it has been around the structure of the html and user interface hasn’t changed much, it’s pretty much the same. So, you have all the time in the world to sit and bundle it with all kinds of fancy graphics and look and feel and come up with really elaborate designs.

A social network is constantly changing. I mean if you are on Facebook or Twitter, maybe not as much Twitter, but Facebook or Google+ you can see the user interfaces are constantly changing and in order to be able to keep up with that fast paced evolution you gotta keep the user interfaces very light and so that’s why we always tell people that especially when you start early keep the branding very minimal and focus on the user experience aspects of branding rather than the look and feel and colour because in this game you’ve got to be able to keep up with the changes.

Bob: Of course that’s what everybody focuses on.

Ash: Yes. But regarding the template in general the problem with that, that’s something we’ve been talking about a lot, me and Rastin and incidentally we talked about it yesterday and the day before and yes, in the beginning we sort of had told people well you know separate the template, put your own template but people don’t realize that’s not really a good solution for people. So, in terms of update it’s something that we’re going to incorporate something that helps people migrate their templates also.

Rastin: It is an ongoing issue and something we sort of are aware of and it’s for the first time we are building software that the user interface is constantly changing and we have to sort of develop ways to help people sort of keep up. That’s just one of the new things you have to deal with when you’re building social networking technologies. Another challenge that we have that when you’re building a technology like this we still use existing tools and there is a lot of CMS tools used to build Anahita and they are not the best tools but we just don’t have any other option at this moment. So a lot of the shortcomings that are coming in is because we try to sort of shoehorn CMS tools into a social networking concept and as we move forward and we write and develop social networking specific templates or user interface or libraries and these issues are going to be improved.

Bob: You’re going to have Anahita 1.7 on the new Nooku Server Alpha3 – right? Is that the intention?

Rastin: We are going to use Nooku Server instead of Joomla as the platform. Right now is {undecipherable}. So as soon as Nooku Server is ready and we are ready, we’re going to start merging.

Bob: Because there’s a few things there that you could use to help you with these shortcomings.

Ash/Rastin: Um, yes because Nooku Framework is geared to be a less of a CMS and more of a generic platform, so it’s a better option; and, that is why we sort of decided to move away from Joomla because Joomla, unfortunately or fortunately, I mean it’s for their audience, they are so much becoming a CMS. Maybe that’s what the audience wants, but for Anahita we needed a generic web platform – something that comes with basically basic extension management and user management, menu management and also more flexibility to customize, write and overwrite. Joomla is very focused on menu management and all the stuff URLs are created based on how menus are organized and it’s not really application friendly environment. And we are still dealing with some difficulties running an application within Joomla. So Nooku Server gives us a lot more flexibility.

Bob: and with that we’re at the end of Part 1 if you could believe it.

Ash/Rastin: Okay, that went really fast. That was fun.

Bob (closing):

The Anahita Framework is available as a Free Open Source Software. Go to, click “Download” on the main menu, and the first item is Anahita, so click that and you’ll be look at the right side of the screen.

Rastin, Ash, thank you for taking time to join me today.

And thank you for sponsoring this show’s transcripts.

This is Bob Bloom, signing off, wishing you a profitable week.

You have been listening to a production. Opinions expressed are not necessarily those of SouthLaSalleMEDIA dot com, nor of the organizations represented. Links and materials discussed on air are available in the Show Notes for this show. Information contained herein have been obtained from sources believed to be reliable, but are not guaranteed. Podcasts are released under a creative commons licence. Some rights are reserved. Email correspondence to the attention of Bob Bloom at info at SouthLaSalleMedia dot com.

The Bob Bloom Show:

Monthly commentary and interviews about websites, technology, and consulting. Produced by Bob Bloom, founder and developer of LaSalle Software.