Episode 29 of The SitePoint Podcast is now available! This week, Brad Williams (@williamsba) has a one-on-one chat with Roy Rubin, founder of Magento, the popular open source ecommerce framework.
A full transcript of this episode is published below.
Download this Episode
You can also download this episode as a standalone MP3 file. Here’s the link:
SitePoint Podcast #29: Interview with Roy Rubin(MP3, 29MB)
Theme music by Mike Mella.
Brad: Welcome to another episode of the SitePoint podcast. I’m your host, Brad Williams, and today, I’m joined by Roy Rubin who is the founder of the popular open source eCommerce software Magento.
Welcome to the show, Roy.
Roy: Hey Brad, good to be here.
Brad: It’s great to have you. I know there is a lot of buzz about Magento. It really is kind of the hot eCommerce open source package at the moment. So I’m definitely excited you to have you on because I have a ton of questions of my own, and we have a lot of questions from the community, so we can all kind of learn about Magento together.
So let’s jump right to it because we have quite a bit to cover. I want to start kind of at the beginning and actually, the first question I have comes from a SitePoint member, IceMan90 and IceMan would like to know since Zen Cart and OScommerce kind of dominated the open source shopping cart market for many years, what made you decide that it was time for another major player in that market space?
Roy: When we started Magento back in early 2007, we were working at the time with OScommerce; I think less Zen Cart but more OScommerce, as a service agency for a good number of years. As our business grew and our clients had much more sophisticated type of expectations from us and the Internet continued to evolve, we understood very well that the age of OScommerce and Zen Cart and their many forks has really come to an end, and it was a time for a more mature, more up to date platform to really come to the market and address the needs of merchants as technology continues to evolve, as the market continues to evolve, and I hope we did that with Magento.
A lot of the features that you see today in Magento comes from the years of experience that we’ve had with OScommerce and Zen Cart, etc. So this is really the next evolution of that. I think our background really helped to put together a product that can really speak to that.
Brad: You mentioned OScommerce; originally I read that you had planned to fork OScommerce, but you actually abandoned that plan and decided just to start from scratch, is that how it went down?
Roy: No, that’s actually not the story.
Brad: Good ole Wiki.
Roy: Yeah, you know, it would have been a good story. But no, we never really thought to use the OScommerce code base. I think when we started to really put together the vision for the project, we knew that the architecture was just going to be completely different. There is just no way that we could have worked with what OScommerce offered, and still offers, today. So really from the get go, we knew that we were going to have to put together something different.
Brad: Would you say that it was harder than you anticipated? In my mind, when I think eCommerce, there is just so much involved with eCommerce. So starting an eCommerce website from the ground up just blows my mind with the amount that would be involved with that. Was it easier than you thought, harder than you thought? How did that work out?
Roy: I think it’s completely more involved than any of us have ever imagined. From a feature set perspective, I think where we are today and where we thought we would be just two years ago, you know, is a completely different world. This is a monstrous of a project. We’ve put in an incredible amount of hours by an incredibly passionate and dedicated team.
Looking back in hindsight, this is something that was not expected, to say the least.
Brad: When you initially started, how big was the actual team that was working on Magento, the development team?
Roy: We started in early 2007, as I said. We had about – I think at minimum, it was three or four guys kind of starting to think about what the architecture would look like. That was really sort of the core team that we worked on for about 5-6 months. And then after that, we started to grow the team. Before the 1.0 release, the team grew to about 35 people. It ended up being a very, very large project here internally where we shifted basically every single body that we had towards Magento and made sure that the package we offered wasn’t just a technology one, but really created the right experience for the users, the site really provided the information that they needed to make an informed decision and our entire company rallied around that, and the team got significantly larger, obviously, as we got closer to the 1.0.
Brad: Just to clarify, your company that you’re speaking of is Varien, which is a software development company; is that correct?
Roy: Yeah, historically, that’s what it’s been. I founded the company in 2001. Today, you know, we’re obviously focused on Magento; that is our core offering and that’s really what we’re focused on. Until I would say late 2007-early 2008, we were a classical consultancy web development shop that did a lot of different things.
Brad: It’s awesome that in that short of time, it’s gone from being, like you said, a kind of a classic dev shop to now you have this software package that you’ve developed, Magento, which is all the buzz and it’s really pretty inspiring. I actually run a software development company as well, so I would probably put myself into that classic bucket. We do classic development work. So it is pretty neat to see what you’ve done in just a short amount of time. Two and a half years Magento has been around, and you’re over a million downloads, is it?
Roy: Yeah, it’s over 1.1 million downloads now, and we’re getting a tremendous uptake of downloads and growth. So it’s been very positive, the growth continues. We’re quite excited.
Maybe I could just touch on the sort of the transition from a consultancy to a product company and it’s never an easy transition, I can tell you that. It’s something that we’re still having to deal with. I think we’re on the tail end of that. It’s something that I think a lot of consultancies aspire for, to have a product of their own and to build on that. I highly encourage it; I think there is a lot of … there is a lot of rewarding times when you see a product like this, a product of yours, really hit the market and begin to get some adoption. It’s very exciting.
Brad: It’s great. I really respect the fact that not only did you create this great product, but you also release it as open source, where you could have easily kept it proprietary and charged a licensing fee, but you didn’t. You went ahead and released it under the open source license version 3. I was wondering if you could speak – was it always from day one, did you plan on releasing this open source, or it just kind of evolved into that?
Roy: Since day one, we knew very well when we started the project that that was going to be the strategy. We come from the open source roots and that’s what we knew well. We very much believed, and still believe, in the model. We saw other players and other verticals continue to do well. We saw MySQL, we saw SugarCRM, Alfresco and other commercial open source players and we understood that there was a true opportunity in the eCommerce space and that’s really what motivated us to believe that there is a business model around distributing free software. I think to date, two years after, we’re still very much believers of the model.
Brad: That’s great. Now as far as requirements, Magento runs on a Linux platform, correct?
Roy: Indeed, yep.
Brad: I was looking at the requirements and Windows wasn’t listed. Can it run on Windows, or is it absolutely just does not work on Windows?
Roy: You know, it can run on Windows; I think the configuration is a little bit tricky. We’ve been working with Zend, the PHP company, and actually if you run Magento on top of the Zend server product that they have now, it makes that much easier. And that’s been a big priority for us, so we hope to continue working with Zend to make Magento accessible to those organizations that would prefer Windows as opposed to a mixed type of environment. So hopefully, that answers that question.
Brad: Are there any plans to actually break out so it can be installed directly into Windows and run on like a WAMP stack, or would it always require that Zend?
Roy: Again, I think today, you can actually run it on a WAMP stack. There is nothing in Magento that prohibits you from doing that. We’re trying to make that a little bit easier of a process. The idea is that with a Zend server (and there is a free community version of the Zend server) that will be almost seamless in terms of installation in Windows.
It’s just a little bit tricky today, but we hope to simplify that ongoing.
Brad: I want to talk about the license a little bit behind Magento, and I mentioned it earlier that it’s licensed under the open source license (OSL 3.0). I’m wondering why you chose that license over, say, a more traditional license, like GPL or the LGPL?
Roy: The OSL license is actually the open software license, and the open software license is a license that closes what’s called the ASP loophole. The ASP loophole is basically – there is this big debate in the open source community about what distribution is, and with Magento, we treat distribution over a network, same as a classical distribution that’s covered under the GPL.
What does that mean? It means that if you create derivative work of Magento and you put up the work just on a website and distribute it digitally, via the web, that is still considered a distribution and as such, since the OSL license is a reciprocal license, your work has to be licensed under the OSL license and made public.
Why did we choose that? We chose that because we felt that the work that we put into Magento was significant and we had hoped that the community reciprocates so that if are derivative works, the rest of the Magento community can benefit from that.
At the time that we chose the OSL license, it was the only OSI (Open Source Initiative) group which certifies the open source licenses, was the only OSI approved license that closed the ASP loophole. Since then, the LGPL license came to the market, and now those two licenses, and perhaps others, are available but at the time that we chose the OSL, it was the only OSI-approved open source license that closed the ASP loophole.
Brad: Open source licensing can get … it’s kind of an interesting topic. It’s kind of a hard one to follow as well, especially when you get into actual case examples of what’s allowed, what’s not allowed. So it can be a little confusing for people, but it is nice that it’s released under it. What did I say? Open source license… I meant open software license (OSL). So it’s not actually GPL, which is what a lot of people probably would have expected.
Roy: Sure, it’s not GPL and there is a big difference between the two. We’ve tried to educate the market about that. There is probably a lot more work for us to do in that front. But it’s a very, very different licensing than the GPL and it’s done for a lot of good reasons.
Brad: Let’s talk about Magento features. Obviously Magento comes with a ton of features. If you go to MagentoCommerce.com (which is the official Magento site), right under products, you can go to features, and there is a nice long list of all the different features.
What are some of the features in Magento? Is it what most people expect from an eCommerce store, are there additional features that you wouldn’t normally see that you think are pretty cool?
Roy: I think first and foremost what sets Magento apart, I think not only from the open source packages on the market, but from a lot of proprietary, even enterprise class packages, is its ability to do multi-store retailing. Again, that’s something that we kind of picked up as a trend in early 2007 and it definitely proved, I think, to be right, where retailers are looking to have multiple online shops, multiple online businesses running from a central administrative instance of Magento.
So that’s something that’s built into the core product, something that we’ve got a lot of interest for, and it’s been very, very well received.
What else? I think our pricing rules and our discounting engine is something that is very, very strong, as well. The ability to create really sophisticated types of discounts is something that’s been very well received. Maybe one more thing that I think gets a lot of attention is our catalog management. We’ve given merchants a real flexible capability to manage quite a different array of catalog types. If you have virtual products, if you have physical products, if you’re doing business in multiple disciplines, chances are Magento’s catalog structure and Magento’s processes for setting up your catalog will be supportive of that.
So we’ve tried to stay, as a software product, out of the way of retailers and not tell them how to run their business but give them a platform and a product that allows them to really set up everything as they see fit.
Brad: The site manager, that is kind of a really cool feature, and I wonder if we could talk about that a little bit. If I understand it correctly, I can have multiple stores under one installation of Magento. Does this allow me to have multiple domains for those stores, or are they still all mapped like a sub-domain or sub-directories of the primary website?
Roy: You were breaking up, but I think I got the gist of that. You’re absolutely right, you can actually run Magento stores under different domains; there is absolutely no problem with that. You can run it under sub-domains if that’s a better fit for you, or under different domains, or on the same domain, we’ve give you that complete flexibility.
Brad: And it actually keeps everything separate, so separate product bases, separate customers, or does it group everything together?
Roy: You could actually share the customers between the stores or set it up to require different customer accounts. You could share the shopping cart between the stores or not. That’s a configurable option for you. Again, you can run your stores in different domains.
We have companies that have multiple brands and are running one Magento instants for many, many brands of theirs. And you can’t even tell that it’s the same instants; it’s a completely different user experience across all the brands. It requires a separate registration and customer login for each of the brands, yet, it’s all centrally managed through one Magento admin.
Brad: That’s awesome. Honestly, I didn’t know Magento did that, but that’s really cool because just from my own experience, I know when we set up eCommerce stores for clients, more likely than not, a few months down the road after we finish, they come back and want another store. So then we build another store. But in this case, we could use a site management and just create another store in their existing install, which is awesome.
Roy: Right. And you’re not restricted. If you want to have a completely custom user experience, completely custom set of functionality between each of these stores, that’s something that you could do. Again, we really stay out of the way and let you run the business and provided the platform that was strong enough to really manage that for you without dictating the business rules and logic for you.
Brad: That’s great. I tried to pull up the roadmap for Magento to see what we could expect in the coming months and years and there is a post there that kind of explains that the roadmap has been – control has been passed over to the community advisory board. I was wondering if you could kind of explain what is the community advisory board, what does that mean for the future of Magento and new features to come?
Roy: Sure. First, maybe I’ll set the scene for that. There is really two products today. One is the Magento community edition, and that’s a product that we first went to market with in March of 2008, the 1.0 came out. And we’ve since, about a year later, released our enterprise edition product.
The enterprise edition product is controlled by Varien. We continue to add features for it. We consult very heavily with our partners and our customers and are really gearing that product towards merchants that do a little bit of a larger volume of business online than perhaps the community edition users do at this point.
What we’re trying to do with the community edition product is open that up to the community as much as we can. So there is initiatives on a number of levels.
One is that we’ve started the community advisory board, and the community advisory board is led here by one of our employees, Koby, and we’ve rallied a number of different folks from the community from across the world, and these are the guys that make the product decisions for the enterprise edition, they make the product decisions when it comes to MagentoCommerce.com, and they’re the ones that are in touch with their local communities and get the feedback and really kind of filter that to the community advisory board meetings in which we make decisions.
One of the first things that we did with the community advisory board is set up a user voice account in which the community communicates to us what they feel is the most urgent things on the plate for the community edition.
We’re also, this month, opening up our code base to external contributions for the first time. Right now, we’ve developed basically 99.9% of the Magento core code base and we’d like to slowly open that up and bring in third party contributors. Much of the community has expressed interest in really helping us with that. And that’s what we’re doing.
In the future, in a year, two or three down the line, we’d love to see a community product that’s driven by the community with leadership from Varien that takes core contributions from the community and Varien, in assistance with the community, will continue to evolve the community edition product.
The enterprise edition product will continue to have a path of its own that’s very much led by us as well but again, just focus on a different customer base.
Brad: And once that roadmap has kind of been decided upon, that will be released publicly again, correct?
Roy: Yes, yes. The real reason for not releasing the community edition roadmap is because we don’t want folks to make any business decisions from information that may not be finalized and no matter how many times we ask that folks just be patient, it’s important not to mislead and provide any wrong information. As soon as we have final confirmation in accordance with our community advisory board, we will make that information public.
We do also have that information public for the enterprise product, but that’s on a separate level, of course.
Brad: If you could explain what Magento extensions are and what exactly they can do?
Roy: Sure. We set up something called Magento Connect, which is the Magento extension marketplace, and today there’s over, I believe, 1200 extensions, a good number of commercial extensions, a good number of open source extensions, and these range from payment gateways; and we have now support for over 200 payment gateways in the product, shipping integrations, language fax, themes, functionality enhancements, backend functionality enhancements, front end functionality enhancements, and various other odds and ends.
So, we see Magento today as the platform, a platform which we very much encourage to be extended, and we wish nothing but success for our extension developers and have a lot of plans to continue to help them be successful and, hopefully, get the word out about the work that they’ve done.
Brad: Yeah, that’s one thing that definitely caught my eye on Magento Connect is not only do you have community submitted plug ins, but you also list commercial plug ins, along with the price and a link right to where someone could purchase those.
And I know that’s in the open source community there’s, kind of, half the people hate that and half the people love that so I thought it was definitely interesting that you guys apparently love it so you have commercial plug ins on there. Did that come out of launch, or was that something added in at a later date?
Roy: No, that was at launch. We are very much from the open source community. Again, that’s been our roots and our heritage for the last few years and we very much believe in it. But that doesn’t mean that we feel like we can tell others how to run their business and as we started to put out Magento and really think about what an extension framework would look like, we very much understood that we wanted, first and foremost, the best quality extensions by the best quality developers. And to do that, there really needs to be an appropriate incentive mechanism for those developers to continue to contribute and continue to build really quality extensions. And the way to do that is you encourage them and you provide to them a facility in which they can charge for their work. Over the long run, we hope that there’s going to be open source extensions and we very much push for that.
In fact, all of our extensions today have been open source; we haven’t charged for a single extension. And that’s just how we run our business. But we understand very well the need of compensation for third party developers that develop quality work and expect to pay the bills. And that’s something that, for us, is very much part of open source. We just don’t see the price tag of zero as something that is viable in the long run and this is the project that we hope will be with us for a very long time.
Brad: Is there any fear or concern over all extensions being commercial and therefore there’s nothing kind of free that I can download and use, everything I have to pay for?
Roy: You know, that’s a concern of course. We work very, very hard to set the precedent and to remain as vocal of the leadership toward open source as we can. And we work very closely, both with community open source extension developers, and commercial extension developers. Just today I had a talk and someone was asking me “should I charge, should I give it for free?” and I made the case for giving it back to the community. There is going to be some great extensions that are going to be available for free for the community.
So, I think at times it makes sense for folks to release those works of theirs for free, and sometimes they want to make sure that they can pay for their ongoing efforts, and we’ve been supportive of both, and we hope to continue to set the example and hopefully others will follow.
Brad: Excellent. I want to talk about the Magento developers real quick. I know you mentioned earlier that currently you don’t take community core contributions, is that correct?
Roy: Correct. Today, we basically asked for the contributions to come in the form of an extension as opposed to a patch that will make its way into the core code.
Brad: I also went on your website and you have bug tracking, which it looks like… I was trying to figure out what software you’re running… is that all a part of… because I believe Magento’s running on EE and that’s actually what one of our members pointed out is that… is that what MagentoCommerce.com is running on?
Roy: Again, you broke off, but I think you were mentioning ExpressionEngine, Brad?
Brad: Yeah, ExpressionEngine. I noticed… that’s what we’re running and one of our members actually wanted to know the decision behind using EE instead of something like WordPress.
Roy: For portions of our site, we do use ExpressionEngine, unfortunately, not the bug tracking portion, and the bug tracking portion is just custom code and the back end of that is actually Mantis, I think. So, that’s what’s running in the background.
ExpressionEngine is a great product. We love it. We use it for the bulk of the website. I think some of the creative elements that you see on magentocommerce.com are primarily our own codes. So, groups, Magento Connect, the bug tracking, the job board, of course the store, is Magento and some of our own work.
We’ve put in thousands of hours of work in ExpressionEngine to really get it to be where we feel it is right now. It’s not like it was quick and painless, it takes work to get it to be at that level. And we’re continuing to spend a lot of time making sure that the community site can scale and can really adapt to the different needs as the project continues to grow.
Brad: Question from another community member, Joaquin Win would like to know, and I know you mentioned earlier that when 1.0 came out, you had about 50 developers working. How many developers are currently are actively working on Magento now?
Roy: Yeah, so the core team, I think, today is about, if I’m not mistaken, it’s about 14, 16 people. So these include from product managers to of course, developers and architects and QA staff and user interface so it’s a pretty broad team. There’s a lot of folks involved that specialize in different areas.
Brad: Is the team distributed or does everybody work in one big office there with you?
Roy: The team is distributed. We have folks from all over the world really get involved.
Brad: Great. Quick, wrapping up here towards the end, but I want to kind of talk about the future of Magento and what we can expect and I have a couple questions from our members.
Alex Dawson would like to know – What innovative new functionality are they planning on adding to keep ahead of the competition?
Roy: Great question, and I think the best answer for that is to really look at the user voice site that we’ve set up. And just to see the very broad list of features that our community expects, and there’s no shortage of that, I can tell you that.
Brad: And is that listed on MagentoCommerce.com or is that a separate site?
Roy: Yeah, I think it’s magento.uservoice.com or something like that.
Brad: I’ll dig up the link and we put it in the show notes.
Roy: Perfect. One thing that we’re coming out with, hopefully, in the next community release, is a concept around widgets that are going to make, I think, a lot of people happy. So you’ll be able to, basically, embed different types of widgets across the Magento sites. It’s a pretty powerful functionality. So, that’s something that the team, here has been putting a lot of effort around and that’s something, I think, that’s going to have a good uptake.
Brad: And are these widgets similar to like a widget in WordPress or like a block in Drupal or is it like just a little block you can kind of move around in your store?
Roy: We have the concepts of blocks now. A widget, for us is one that also includes a lot of functionality. You’ll be able to move products around, display products in different pages, whether it’s landing pages, whether it’s category pages. It’s a lot more flexible than what the current methodology of really moving products around now. So, maybe what I’ll do is I’ll ask my team to put together a quick screen cast and we’ll try to share that ahead of the release, just so people know what’s coming.
Brad: Yeah, sounds exciting. Another quick question from a user named Reggae, and basically they say – Magento in its current form is trying to be all things to all people, and it can overwhelm kind of these one man shops. Has there been any talk or ideas to kind of create a Magento Lite or a lightweight version that’s really very simplistic?
Roy: Yeah, that’s actually been a topic that came up here a few times. Magento is a very sophisticated product. There’s absolutely no doubt, and I think that the person who wrote that is absolutely correct, it definitely can overwhelm. You know, that’s something that, I guess, in one sense concerns us, in another sense is probably something that obviously speaks a lot about the sophisticated level Magento is today.
We’ll see how things play out, but I think there’s an interesting opportunity to tackle an even smaller market base than what we’ve been able to tackle so far by creating a product that’s very slim and kind of light. Yeah, absolutely.
Brad: Great. So, you have the whole SitePoint audience listening and it’s full of great designers, developers, bloggers, writers, everything you can imagine. How can they get involved? How can people get involved with Magento and really help out?
Roy: Sure. You can do that on many levels. First of all, for the developers and the enthusiasts, I think Magento Connect is a great place to really get the extensions out and start to build a community and a name, and really get a lot of market feedback.
From a blogging perspective, if you have something to write, something to contribute, whether it’s video, it’s podcasts, it’s audio, we’re always looking for content and we’d be happy to feature you in our blog as a guest post or anything else along those lines you can think of.
If you want to be part of the community advisory board or you want to be considered and get involved in that, there’s obviously opportunities for that as well, and you can email me directly at firstname.lastname@example.org; I’m always available to the community, and always available to talk. And if I’m not available, then I can definitely introduce you to the person that best fits. But talk to us and let us know what you’ve got in mind, we’d love to continue working together.
Brad: That’s great, and there’s also a very active Magento chat room on Freenode. So if anyone is in IRC, just look for the Magento room, it’s pretty active. I sit in there and watch the discussions, so it’s also a good way to get some information.
Roy, I really appreciate you coming on the show today. It’s been informative. I’ve learned a lot. I’m sure our listeners have learned a lot. Magento is a great product, it’s really great what you’ve done in just a short amount of time.
Again, thanks for coming on. Do you have a blog or a Twitter or something you want to plug to throw out there?
Roy: Magento… twitter.com/magento… follow us. Continue to read the Magento blog, there’s a lot of great information. We try to post daily on the Magento blog. But that’s about it.
I want to thank you, Brad, and SitePoint, which has been a big inspiration for me and for us for a very long time. Keep up the great work and you guys have built a tremendous community, which is, as I said, an inspiration.
Brad: Great. Thanks, Roy. And that concludes another episode of the SitePoint podcast.