Advertisement
Tag Archives: Podcast

The Anvil Podcast: OpenMRS

Rich: Several weeks ago I went to the O’Reilly Open Source Convention in Portland, Oregon. The OpenMRS project was represented there by a number of the team members, and I was able to have a few informal conversations with them. After I got back home, I conducted an interview with Ben Wolfe, who actually wasn’t at the conference, but he talked to me about what the OpenMRS project does, and who is using it in the world, and where it’s going in the future. We also talked a little bit about their Google Summer of Code students. Here’s my conversation with Ben.

If you’d like to have your project featured on the SourceForge podcast, just drop me a note and we’ll schedule something.

If the embedded audio player below doesn’t work for you, you can download the audio in mp3 or ogg formats.

You can subscribe to this, and future podcasts, in iTunes or elsewhere, at http://feeds.feedburner.com/sourceforge/podcasts, and it’s also listed in the iTunes store.

Rich: Tell me about OpenMRS. Tell me how it got started, and what your involvement is.

Ben: The idea for OpenMRS was hatched eight year ago … eight or more years ago. Burke Mamlin and and Paul Biondich went over to Kenya and they were tasked with helping fix an EMR that an installation was using there. The term “EMR” is used very loosely – it was just an Access database. But they had 10,000 patients, and so they wanted to be able to keep track of them and do various informatics types of queries and reports and all that. Burke and Paul realized that they wouldn’t be able to just fix what they had, so they started working on a data model for a complete system. And that’s the core of OpenMRS – the data model and how well things are structured to allow any kind of diseases, or data input, really. About the same time, Hamish Fraser at PIH, was realizing that the system that they were using was going to need an overhaul. Their system was actually pretty complex. It was just spaghetti code that was all over the place, so they wanted a clean start. Mutual friends got Hamish, Burke, and Paul together, and they started the collaboration that is OpenMRS. I came on board less than a year later as the first developer. And so I’ve been with OpenMRS since the beginning.

Rich: Are you actually from Kenya?

Ben: I’m not from Kenya. My dad was born there. My parents grew up there as missionary kids. I’ve gone over there a couple times a year since I started. I spent most of last year over in Kenya, because we’re adopting a little Kenyan girl, so that process is long and involved.

Rich: I grew up in Nairobi, myself. The guys that I talked to at OSCON told me that the project had strong ties to Kenya. Where else is OpenMRS being used?

Ben: OpenMRS is used in 72 different countries that we know about. Those are just from various surveys and different download stats that we keep. We don’t actually know the full extent because we don’t have any tracking software. And it’s kind of the Firefox model, where people download it and install it and customize it and use it, and the only time we hear from them is if they have a problem. We know of some of the bigger implementations in South Africa, Rwanda, India. There’s some in Central America. I know of only one in Southeast Asia area, I think it’s in Vietnam. There’s a few in the US, but they’re typically these smaller clinics that operate kind of like a developing world clinic, which is what OpenMRS … we try to hit that outpatient clinic that’s able to help patients and help the managers write reports. There’s a big push right now to make OpenMRS a nationwide system in Rwanda and the Gambia, and … there’s one other country … they haven’t actually come to us for help but we just heard through the grapevine that they want to do that. There’s a pretty wide footprint that we cover. And it’s always fun to hear from people that I don’t’ know that OpenMRS is this big player in the medical records space whereas we have no marketing budget, or any kind of advertising that we do, it’s just kind of spreads.

Rich: Tell us what the software does. Give us an overview of the functionality and how people are using it in the world.

Ben: OpenMRS was written as a patient-based medical records system. Our initial goal wasn’t supply hospitals with a full system where they could do scheduling and billing and insurance and all that stuff. It’s to improve patient care. And the way to do that is through getting the data back to physicians. If the physician sees that there’s value in the system, he’s going to keep using it. So, getting the physician to enter data, and then he see that again, and see the alerts on patients, or reminders … those pieces of information are huge and get the physician to keep using it.

We can convince the actual organizations to start using it by nice easy reports they can get out of OpenMRS. That makes everybody’s life easier. Under the hood, OpenMRS stores all the data in a very coded way. Or, at least, pushes people towards doing it in a coded way, so that doing those reports, doing reminders, those kind of things are very easy to write because things are stored with numbers and IDs instead of free text that has to be searched. OpenMRS is a modular architecture. We can facilitate new features that we don’t quite agree with – something that wouldn’t get into the core of OpenMRS. So people have come along and said, well, we really need to do billing, so we’ll write a billing module. We need to connect with this insurance company, so we’ll write an insurance company module. And there’s a big push now to get OpenMRS into regional hospitals. So, in Rwanda, and India, there are large development teams that are writing different modules to do the workflow within a hospital. That’s pretty cool to see. Groups that are outside of our core team doing their thing and customizing OpenMRS to their needs.

Rich: Are those modules contributed back so that they’re available to other end users?

Ben: A lot of them are. Some of the ones that are contributed back aren’t immediately usable in another country because they’ve coded it in a way that is specific to their workflow. As much as we can, if we can get a word in early in development, we’ll encourage people to write it in a general way so that they can either collaborate with developers in another country, or that they can share it and somebody can easily use it and build upon what they’ve done. It’s unfortunate … what we’ve found is writing something in a general way as opposed to just a quick hack to get your specific use case done usually about doubles the amount of development time. There’s use case gathering, and designing and whatnot, that will go into the development of something generic and that adds a lot of time. When teams are able to invest the extra time to make it generic, they will, but the majority don’t have that luxury. An implementation is always running tight on time and need to have a solution yesterday.

Rich: OpenMRS is an Open Source software project obviously, but is there also an organization that is behind this, driving it?

Ben: Only recently. For the longest time, we just had our parent organizations – the Regenstrief Institute and Partners in Health, and Columbia University, and Kwazulu-Natal University in South Africa. But last year, we started making an OpenMRS Inc., a foundation that’s able to be the non-profit behind the software.

Rich: And where does funding for that come from?

Ben: We’re funded by grants from the larger funding organizations, like the WHO, CDC, IDRC up in Canada … They’ll fund us for either smaller projects that typically would be … go to this country, and do this thing, write this feature for this country. And we can do it in half the time, by writing it on the OpenMRS platform, and then the other half the time, we write general features and further OpenMRS in its general features. But the way funding and granting works, it’s kind of a behind-the-scenes thing. Only recently did some of the granting organizations realize that there is power in the platform, and that all of the different implementations that are using OpenMRS, that they are funding, would actually do better by some of their money coming directly to the OpenMRS organization to make the platform more robust and stronger, instead of just funding somebody to go and install OpenMRS and use it. So we’re not funded by actually doing implementations. We have no stake in a hospital somewhere. We let the community drive those implementations. The universities or consultants will go and actually do the work of installing it and making sure it’s running. There’s a thousand things you have to worry about when you’re running a clinic, that we’d need a much larger organization if OpenMRS was going to do that.

Rich: I was at OSCON [a few weeks ago] and I met some of your colleagues there, and we were attending an evening session on humanitarian open source software. Are you in touch with a larger network of organizations that do this kind of humanitarian non-profit software purely in human interest situations like this?

Ben: A fair number of them. We have a regular call which I think they’ve just labelled the HFOSS call, with a number of groups – I’m not even sure who all is on it – but I’ve joined when I have knowledge on the topic to add, and it’s groups like MIFOS that do microfunding, there’s another lab information software, there’s logistics software, there’s a few different ones that are larger in the space and have knowledge to provide and there’s a bunch of groups that come just to glean the knowledge that we have and ask questions and get answers. It is a small community. There’s definitely not as many groups doing humanitarian software as there should be.

Rich: One of the things that was mentioned at that session was the difficulty in finding volunteer developers to work on these projects. One of the things that was cited in that is that, typically, in Open Source, people work on stuff that interests them, that’s for their own use, that scratches an itch, as the saying goes. And that in HFOSS, you’re working on software that you’ll probably never use yourself. If people were interested in getting involved in software for the public good, software for the benefit of people that they might not even meet, where could they plug in? Do you have specific tasks that maybe people could plug into?

[See how you can get involved!]

Ben: We actually get a fair number of volunteers that will stumble across the project and just want to help. I talk with a few people that say that they write software during the day that helps a furniture manufacturer make more money, and so when they go home they want to actually use their skills for something that will help other people. And so we get those kind of people. There’s a few that are developing world programmers that see that it’s used in their country, and they say, that’s great, we think this is great software, and want to add to it. So having that humanitarian bent really gives us an advantage over some random library in Linux, because I very much agree that if you’re not using the software, then you’re probably not going to want to program for it, but because we’re doing good in the world, developers will see that, and say, that’s great, I want to provide some help for that. I think the Summer of Code is a good example of this. I don’t know if you’re familiar with what Google does every year. And when they list out the hundred and forty some projects, a lot of the applicants for that are from overseas. 75, 80% or more are from overseas, because the stipend for the summer is much larger than they would make. And when they see our project, and see that we’re working in their country, we get a lot of applications. We’ve been blessed by Google because we get a lot of applications to our project, that we’re able to have more students, as compared to some other Open Source project, that might not be working for the common good, or in a developing country.

Rich: What are your Summer of Code students working on this summer?

Ben: I think we have sixteen students this year. Most of them are working on modules. OpenMRS – again, I’ll compare it to Firefox. We have pluggable modules that people can write that will modify any part of the system. So, at a clinic that wants to add a page to manage their thingmajig inventory doesn’t need to come to us and say, hey, I think this is a great feature, you should put it in here. They can just write a module and install it in their system, and be done with it. We’ve found that the best way and the fastest way to get things written and tested and get it into the hands of implementers is to put it into a module. So we try to put all students on a module if we can. Most of them are doing that. They’re writing things like, the ability to customize a patient summary – the one-page abstract that a doctor sees. My student is working on an HTML5 type of canvas that will allow a doctor at point of care to draw what he’s seeing. Maybe there’s a lesion on the hand, and he needs to mark where that is, so he’s able to actually draw that out right there on that form. This year’s crop is actually really good. I’m impressed with all the students so far. We require that they do a presentation at midterm, on one of our weekly developer calls, and they have to present what they’ve done so far. Almost all of them have presented something and they are almost done with their task. And it looks to be almost immediately usable by implementation.

Rich: Thanks a lot for taking the time to talk to me.

Audio editing by Audacity. Intro music by Arianne.

The Anvil Podcast: Malware Classifier

Rich: Adobe hosts a number of Open Source projects on SourceForge, in their Open@Adobe site. These projects are developed by Adobe employees, and I recently spoke with Karthik Raman, who has worked on a project called Malware Classifier. The Malware Classifier is a set of machine learning algorithms for identifying malicious vs. clean binaries for Win32 operating systems.

If you’d like to have your project featured on the SourceForge podcast, just drop me a note and we’ll schedule something.

If the embedded audio player below doesn’t work for you, you can download the audio in mp3 or ogg formats.

You can subscribe to this, and future podcasts, in iTunes or elsewhere, at http://feeds.feedburner.com/sourceforge/podcasts, and it’s also listed in the iTunes store.

Related Content:

Here’s my conversation with Karthik.

Rich: We’re talking about the Malware Classifier.

Karthik: Right. It’s a project up on the Adobe Open Source site, it’s called Malware Classifier.

Rich: Tell me something about the Malware Classifier. What is it trying to accomplish?

Karthik: It’s a tool that uses a machine learning algorithm to try to quickly determine whether a binary under analysis – a Win32 binary – is malware possibly, or a clean file. It uses four machine learning algorithms that were generated by running certain classifiers against a data set of about 100,000 malicious programs, and 16,000 clean programs. This is part of some research I did when I was a grad student at U.C. Irvine, and something I continued to do when I started working at Adobe about a year and a half ago. The tool released on SourceForge is a culmination of the research I did and it incorporates the distilled versions of four of the six classifiers that I used in my research.

Rich: When you say it uses a machine learning algorithm, does it have a feedback loop where you tell it whether it’s correct or not, and then it learns further from that, or it’s just based on the data that it’s already got?

Karthik: It’s more the latter. There’s no learning happening within the source code itself. It’s a result of training that happened in advance by training the classifiers against the data set that we discussed a minute ago. The results of that training was incorporated into the script. If you think about it, it really is simple. I’ve labelled the four algorithms that I’m using – the classifiers that I’m using. If you look at the python source code, there’s a bunch of decision trees that incorporate the learning that the algorithms experienced when they were training with the data set, and my hope is really that people will look at this stuff, and if they’re interested in machine learning and malware classification, either use the tool themselves, or extend it by running their own machine learning algorithm, and extending the current four set of classifiers or writing their own classifiers.

Rich: I’m curious if your research gave you any idea of how the classification of “malicious” might evolve over time. Would a tool like this run on today’s software work on software from six years ago, or six years in the future, do you think? Do the “malicious” techniques tend to persist over time?

Karthik: I have to take a couple of steps back and talk about what it is that these classifiers use to make a determination of whether something is possibly malicious, or something is clean. I used a technique called “feature reduction”. The end product of my research was that I identified seven features within the file format these binaries are compiled in – the file format is called the P.E., or portable executable format – essentially the values these seven features that are compared in a large decision tree in each of the four classifiers. The second aspect of your question is, would the classifiers be relevant to data or files from six years ago or files that are compiled in the future. I think in general, the problem in machine learning is there is a possibility of training our models to fit the data at hand – sort of over-fitting the problem, and I accept that’s a valid concern here as well because, for example, I only had 16,000 clean programs to train with, and I had 100,000 malicious programs, so you could argue that the algorithm learned that malicious programs all share the characteristics of of those 100,000 files, and clean programs all share only the characteristics of the 16,000 files. So there’s the disparity in the size of the data set, and also the specificity of the files that are used in this data set. The overall purpose of this project was to evangelize the idea that one could use machine learning and use it with a limited number of features to solve a problem within given parameters with an established false positive and true positive rate. I don’t expect this program to be used commercially, it’s just the idea that I’m trying to spread by the use of this tool.

Rich: Are you looking for a community of people to become involved in this project to move it forward, or is it pretty much done?

Karthik: I’ve given talks at a few conferences on this topic, and I’m hoping the community would look at that research and if they’re interested, pick it up. I’ve outlined the methods and techniques and given the background on how someone could be introduced into machine learning and follow the train of research that I did myself. So, yes, I’m hopeful that other people look at this and build on it themselves for their own environment. One example that comes to mind readily is, a lot of people work in research or analysis for I.T. companies. The application of research like this is that they could look at unknown binaries that their environments receive, and if their antivirus programs are in lag, they could train their models over time with the binaries in their environment, and then extent the script so that it grows for their particular environment. I am hopeful that the community picks up on this idea and goes to town with it.

There’s one aspect that I covered when I was speaking about this research at conferences – it’s that you need to be a domain expert in whatever domain you’re trying to apply machine learning in. There is the necessity that you understand what you’re doing when you’re trying to apply machine learning to that domain. So, I have some experience being a malware analyst, and that helped me along the way as I was determining which features to use in machine learning. I think in the end it comes back to looking at the research. There’s technical papers, there’s hundreds of slides that have been published, and there’s the source code that’s available, so I’m really hopeful that people out there who are keen on machine learning, which is, in my opinion, an underutilized technique in computer security in general, I’m hopeful that this research is at the vanguard of what people are interested in doing in the community and they look at the paper, the slides, and the tools, and build on it, and help make security better for everyone.

Rich: That’s really an interesting point. I think that people not involved with this field of programming tend to assume that you just sic the computer on things and it figures stuff out. It’s interesting that you point that out.

Karthik: This isn’t a panacea. You can make it fit to your problem, but you have to have some knowledge about the problem so that the solution can be brought to bear correctly.

Rich: Thanks so much for taking a few minutes to talk to me.

Karthik: My pleasure, Rich.

Adobe releases their first Open Source typefaces!

The SourceForge Anvil Podcast Rich: Today Adobe released a family of typefaces called Source Sans Pro. These typefaces were designed for user interfaces. These fonts are free. They’re released as Open Source, and they are released via the Open@Adobe website, which is hosted as SourceForge, along with many other Open Source projects that Adobe produces.

Paul Hunt, who is the designer of these fonts, is actually on vacation this week. But he generously accepted a phone call from me, and we talked a little bit about the fonts, and this Open Source project. Here’s that conversation.

If the embedded audio player below doesn’t work for you, you can download the audio in mp3 or ogg formats.

You can subscribe to this, and future podcasts, in iTunes or elsewhere, at http://feeds.feedburner.com/sourceforge/podcasts, and it’s also listed in the iTunes store.

Paul: What we’ve just released today was an Open Source typeface family that I’ve been working on for the past three years. And it’s a typeface family designed for user interfaces.

Rich: What font file formats will this be released in?

Paul: We released the fonts today in OpenType format with CFF outlines, and we also released the fonts in TrueType format as well.

Rich: What does it actually mean that a font is Open Source? What is the source that you’d be talking about in this case?

Paul: In a lot of cases I think the sources are simply the fonts. Usually, in the case of the Google web fonts, they also have some VFB files available. Adobe has a set of tools that we use for producing typefaces, and that set of tools is called the Adobe Font Development Kit for OpenType. It uses a set of files to compile the fonts. In our case, we have made all of the files that we used in the production of the Source Sans typefaces, we have made those Open Source. So if somebody is interested in following a similar work flow to what we used, they can do so because … I’m just going to refer to our toolkit as the SDK for the remainder of the interview … if people use our SDK tools, they can, because we make them freely available. They’re not Open Source, but anybody can download them and use them to produce fonts.

Rich: If somebody were to develop their own set of fonts using your tools, what kind of distribution mechanism are available?

Paul: I think it’s quite popular for people to distribute Open Source fonts through Googles “Google Web Fonts” directory. At Adobe, we have a partnership with SourceForge, so it made sense for us to go ahead and offer our fonts through that channel, although the fonts have also been put on Google Web Fonts, as well. The fonts went live everywhere today. They went live on SourceForge, they went live on Google Web Fonts, they went live on our own TypeKit service, as well as on other web font servers. A couple other places the fonts will be available – shortly will be in Google Docs, and in Google Presentations.

We did do a blog post on our Adobe TypBlography blog so if people are interested in more information about why we decided to make the fonts and those types of things they can visit our blog and get some more details that way.

Rich: Thanks so much for your time, and enjoy your vacation!

The Anvil Podcast: Paintball2

Rich: I’m speaking with Jitspoe about the project Paintball2. Paintball2 is a first-person game, with a bunch of different styles of game play.

If you’d like to have your project featured on the SourceForge podcast, just drop me a note and we’ll schedule something.

If the embedded audio player below doesn’t work for you, you can download the audio in mp3 or ogg formats.

You can subscribe to this, and future podcasts, in iTunes or elsewhere, at http://feeds.feedburner.com/sourceforge/podcasts, and it’s also listed in the iTunes store.

Rich: Tell us something about the game. Tell us the storyline of the game.

Jitspoe: Paintball2 is the sequel for the Quake Innovation paintball that was made for Quake 1. Paintball2 was made on Quake 2. It started out as a mod. Since ID software released the source code for Quake 2, we’ve taken that and made it its own standalone game. It is a full standalone game now. You can just download it – it’s completely free. The engine is Open Source under the GPL. It’s just a free game. You can play it online. Just a fun, multi-player game.

Rich: So, the game-play is kind of Quake-ish, except you have paint guns, right?

Jitspoe: Yeah. It has the Quake 2 movement style, so it’s very fast-paced. And the paintball element brings a one-shot kill degree to the game, so it’s even more fast-paced than Quake in a lot of ways. You’ve got a lot of fast-paced movement, you can run and jump around. Quake 2 has mechanics we call “strafe jumping” where you can actually build up your acceleration as long as you stay in the air, so people will keep jumping. And you can jump off of ramps and get extra height. So there’s a lot of fast movement. The single-shot kills lets people kill people with a single shot, but it’s pretty difficult because the movement speed is so fast that it kind of balances out in that regard.

Rich: This project’s been going for about 9 years now. How big is the community?

Jitspoe: It’s actually gone over ten years now if you count the time it was in development on Quake 2 as a mod. But I guess it’s probably 9 years on SourceForge since it’s been Open Source. The community is … unfortunately it’s getting a little bit smaller now. A lot of people have moved on. There were a lot of people that played when they were younger but now they’ve gotten families and moved on – they aren’t playing games as much. It’s a little bit slow right now. I’m hoping to build that up. It’s a little difficult to get fresh blood in an old game.

Rich: If somebody did want to get involved, where can they fit in?

Jitspoe: Mostly we’re looking for getting a lot of players – to get more people playing the game, to help build the popularity. As far as development goes, we’ve actually got something on our website, it’s called the feature vote list. If there’s a feature you want, you can request that, and people can vote on features they want, and if people want to help out they can look at that feature list and see if there’s anything that they could contribute to. So if you want to help out on the development side, that’s a good place to start.

Rich: And that website is DigitalPaint.org

Jitspoe: That’s correct, and there’s a feature vote list right on the top of that web page.

Rich: What kind of functionality, what kind of features are you working on for upcoming releases?

Jitspoe: Right now I’m working on setting up a tutorial map. I believe the most difficult thing for getting this game to grow is the barrier to entry. It’s a kind of difficult game. It’s not your typical shooter where you just put the reticle on somebody and shoot, and everyone moves at the same speed. There’s a lot of mechanics that you have to learn over time, and people aren’t going to get that. People get in the game and people are going to be flying around at 300 miles an hour and they’re just like, what’s going on? I can’t shoot anybody. I just keep dying. So I’m hoping that a tutorial map and some things to kind of help new players get into the game, understand what’s going on, understand what the game modes are, things like that, will help. We get a lot of people downloading the game, but hopefully this will help get the people that download to continue to play.

Rich: And what platforms is this game available for?

Jitspoe: Currently it’s just on the PC. There is a Windows and Linux version.

Rich: Tell me about the various different game modes that are mentioned in the project description.

Jitspoe: The most popular game mode is probably the capture the flag game mode. Typically you’ve got … it’s kind like your standard capture the flag. Each team has a flag and you take the enemy flag and bring it back to your base. Paintball2 has a little bit of a twist on that. In some maps … It’s up to the mapper to decide how he wants to develop the map, but a lot of people will have multiple flags. Some of the maps get kind of difficult to get the flag because everyone sits there and defends the one flag. But game play can be a lot different on other maps where there’s multiple flags, so you can’t easily defend a single flag. There’s a couple different types of capture the flag. You’ve got your traditional colored flags on each side, and other maps have a center flag where you have to get the center flag and bring it to the enemy base to capture. We’ve also got the standard death match game where it’s a free for all. You just get points for killing people. Team death match – same type of thing, except it’s for teams. There’s a couple kind of unique game modes – we’ve got something we call pong, kind of like soccer with paint ball guns. You’ve got this big ball in the middle and you’re trying to hit it into the enemy base. There’s a king of the hill game mode, where there’s a central space, that you try to stay on there. For every few seconds that you hold the hill you get points. And there’s also a siege game mode, where it alternates between attackers and defenders. The defenders get points for every attacker that they kill, and the attackers get points if they get the flag out of the base and the defenders are not able to leave the base.

Rich: I definitely need to give this a try. Sounds like something my son and I would enjoy.

Jitspoe: Yeah, that’s the other great thing about it. It’s great for all ages. A lot of people have been using this for LAN parties with kids, because there’s no violence but it still has that really fast paced competitive game play, so it’s good for the experienced gamers as well.

Rich: Thanks a lot for speaking with me. I look forward to trying this out.

Jitspoe: I appreciate what you guys do at SourceForge. It’s great to have a place to host all of this stuff and not have to worry about paying for bandwidth to host downloads and things like that, because we’re definitely not making money off of this. We’re just doing it for fun.

Rich: Awesome. Thanks a lot.

Jitspoe: Thank you!

The Anvil Podcast: SugarCRM

Rich: I’m speaking with John Mertic about the SugarCRM project. This recording is from PHPTek, in Chicago, a month or so ago. It’s taken me a while to get to this, so a big thanks to John for his patience.

If you’d like to have your project featured on the SourceForge podcast, just drop me a note and we’ll schedule something.

If the embedded audio player below doesn’t work for you, you can download the audio in mp3 or ogg formats.

You can subscribe to this, and future podcasts, in iTunes or elsewhere, at http://feeds.feedburner.com/sourceforge/podcasts, and it’s also listed in the iTunes store.

Rich: I’ve been familiar with SugarCRM for many years. It’s not a new project. I’ve used it at a couple different companies. Tell me about your involvement with the project. What do you do with the project?

John: Currently I serve as community manager of the project, and really what my main role is, is to help evangelize to the overall developer community that we have around it. Which is really vast, because it covers not only people in the Open Source world that are contributing to the project, but it’s also covering a lot of developers that build add-ons and extensions for it, it’s covering or VAR partner network, our customers, our ISV network, just a really big group, globally, of people that are using Sugar in all sorts of different ways to solve the problems they’re seeing.

Rich: SugarCRM has been around … what … ten years?

John: It was founded in 2004, by a set of three men that came from the CRM industry. John Roberts, Jacob Taylor, and Clint Oram. And we’re fortunate enough to have Clint Oram still with the company. He’s the last co-founder to be a part of it. It’s been a very vibrant project. We were originally a SourceForge project of the month way back in 2004 or 2005. And since them we’ve really grown quite a bit. Our project has matured really nicely and grown. We still have not only our Open Source edition – our CE edition – and we’ve moved our primary downloads back to SourceForge to drive home our commitment to Open Source and our commitment to being part of the Open Source community. We also have a number of commercial products that build on top of the core that CE provides, to deliver that value-add to business.

Rich: What kind of a company needs a CRM? Does everyone need one of these?

John: Really, yeah. That’s one of the fascinating things, is, if you look at the market share numbers that you see from IDG and places like that, the way that we look at it is, there’s a very small market of what we currently analyze in the CRM market is actually tapped and using CRM. There’s a huge percentage – probably 90% of the market out there that’s still open and up for grabs. Really any organization that’s looking to help manage themselves, if they have customers – which, any company out there has customers – and they’re trying to help manage that. Back in the old days, people used Rolodex on their desks to kind of flip through and figure out all my customers. They wrote notes on it. To the grown-up version of that is somebody living out of an Excel spreadsheet. Which, surprisingly – you laugh, but you’d be surprised how many companies still do that. It’s taking those philosophies and building it into a structured system so that the data, you can actually do something with. It’s not dead data sitting there, but it’s data you can interact with, you can report on, you can have analysis on, you can really gain some true intelligence with.

Rich: One of the biggest difficulties that I have is not in technology, but in behavior. I have trouble keeping up with it. I contact a customer, and I talk with them, and then two days later I think, I should have made a note about that. Technology can’t solve that problem.

John: No, but here’s what’s nice with the CRM. You can help build processes, so that those things are tracked. If you think of how much intelligence you’re capturing about a customer you’re dealing with, and, where does it all go? It sticks in the back of your head, it’s written on a post-it note, it’s stuck on a form somewhere, or whatever. Here, you can actually capture it, right in there on the record, so that somebody can jump in and see exactly what’s going on. They can see a lot of the history, they can see, oh, they bought this from us, we tried to work with them on this, this is their history with us as a company. It’s really nice that way.

Rich: What do you have coming up in the future for Sugar?

John: Right now we’re in the final release phases of Sugar 6.5. That’s our big major release for this Spring. We have a lot of really neat stuff coming in it. We’re continuing to speed up and all a lot of performance improvements to the app. We’re continuing a push on our AJAX interface. The other big thing we’ve started doing the last couple of release is that we’ve looked out to our Open Source community and we pulled some projects in from there. One that we did in the 6.4 release is, we replaced our entire calendaring system with one that was developed as an Open Source project, by somebody who uses Sugar. They contributed it back to us and now we’ve integrated that into the product. In 6.5 we did the same thing with an extension that adds iCal support. They’ve contributed it back to us. We’ve pulled it into the product, and now we release that. We’ve been trying to work with that. Our community comes up with such amazing and great ideas. It really implores us to take advantage of that and really find ways we can pull them back into the product. It’s not even with big stuff like that. A lot of times it’s smaller stuff. One of the interesting things I’ve seen over the last year, we’ve got so much more community participation in the project. About 10% of all of the bugs that are fixed in the project actually come from code contributions from our community. Which, if you think about regular Open Source projects, it’s no big deal, but for commercial one like ours, and, quite frankly, CRM is not the most interesting software to deal with on the face of the planet. It really is a kind of cool statistic. It’s one that we’re really proud of. So, we’re seeing a lot more community involvement. A lot of AJAX and UI improvements. A lot of performance improvements under the hood. Some projects that we’re pulling in from the external side. We’re continuing to build stuff on the commercial editions as well quite a bit. Working on improving the UX with that. Adding some new functionality there. Down the road, we’re in the first stages of redoing a lot of the components under the hood in our platform. So, in 6.5, for one example, we’re switching over to using jQuery from YUI for our Javascript library. We’re still having YUI there for a while – there’s going to be a transition period, but moving forward we’re going to start using jQuery. In our 6.6 release, which is going to be later this year, we’re going to be replacing our web services interface to be more RESTful, so that’s a really exciting add-on. And a lot of other improvements like that. Our big focus from the product side – it’s not necessarily new flashy functionality, but its finish – it’s helping improve the user experience in the product, because there’s so many pieces of CRM software out there – business software in general – but really in the CRM world we see this – it’s designed for the sales executive in mind. It’s designed to be a piece of software that sells to them. What we’re trying to do is flip that. We’re trying to make a piece of software that the end-user, the lead-scrubber, the office worker, or whatever, that they can be excited and passionate about and enjoy using, and really help solve their needs. We see so many people with CRM deployments – the number one reason a CRM deployment fails is user adoption. The users just don’t use it.

Rich: Yeah. That’s kind of what I was alluding to earlier.

John: It’s true. If you look at all of the big names, especially some historical ones, like Sebol, that’s the classic one out there, it’s something that was designed for the executive staff in mind, it was not designed for any human being actually to use it. And that’s really the focus we’re trying to do. We’re trying to do. We’re trying to put the user first. We’re focusing on the user experience and making sure everything we’re doing helps solve the user’s problems, so that they can be successful and productive.

Rich: Tell me something about SugarForge.

John: SugarForge is our online community around add-ons and extensions around the product. Currently we have over 1000 projects there, with over 32,000 developers that work on these. It’s a nice combination of Open Source developers that maybe just hacked on something for their instance, they threw it up there for the community to enjoy. We have a number of third-party developers who are using SugarForge as a way to bootstrap, and say, I’ve built these interesting modules, I’ll put them up here for people to use, or maybe for sale, or whatever. And then we have a number of ISV partners, that also will leverage the platform as well. The counterpart to SugarForge is SugarExchange, and that is our app directory where we have a number of apps for sale. ISV partners out their offerings up there. It’s really the place to go for any Sugar user to look for add-ons and extensions for their Sugar instance.

The project itself is growing really well. A CRM comes with the commutation that it’s just a piece of software that you deploy for sales people or marketing people to use. But I think really the interesting thing about it is, at its core, it’s a developer platform for any sort of business application. We see a lot of cases where they will take the app, they will strip out all of the main modules, and instead they’ll deploy something entire different on top. We have a lot of partners that just do this for customers. We have some interesting one-off cases I’ve heard. There’s a scientific library somewhere that uses Sugar CE for recording test results, because it’s just a really easy way if you need a CRUD interface to a database, relatively easily, you can do it. You can go in to module builder in studio, you can build all the fields out, you can add logic hooks, it’s very easy to deal with. I imagine you’ve built apps in your time. You spend so much of the time building up the toolset to get to the point where you can actually deal with business logic. So a lot of what Sugar can do for you, if you’re building something inside of your business, is it can take the place of all of that time you’re investing to build what widgets look like, or pick what framework I’m using under the hood. That framework doesn’t have authentication so I need to build authentication out, I have to build ACLs out. I’m going to have to design how the CRUD interface works. Sugar takes all of the guesswork out of that, because it already provides something for you to use. You can just concentrate entirely on your business logic. And so that’s where, to me, the really exciting part of Sugar is. It’s a great CRM, and it competes very well in that market, and it’s the market leader in an open CRM, and probably one of the market leaders in CRM in general. But I think where it sets itself apart from all the rest is it can be that application that can meld around your business process so that if maybe you’re not trying to deploy it in the purist CRM sense, you can use it to help automate any business process you have inside of your company.

Rich: It’s pretty cool when something you develop gets used in a way that you didn’t even remotely anticipate.

John: It blows us away every day when we hear these weird cases of people using it – I have a buddy of mine that uses Sugar for tracking his home inventory so that if his house ever burns down he can go to his Sugar system and see what’s in there. It’s neat stuff like that – from being a developer, and I still kind of am although not as practicing as I normally am, I remember going through those things and you spend so much time on the toolset, and instead Sugar gives you a toolset already to work with, so focus on the business logic. It can help the go-to-market time for anything you’re building, get that much faster.

Rich: Thank you John.

John: No problem.