Free Antivirus for Windows. Includes virus scanner, scheduler, virus database updates, context menu integration to MS Windows Explorer and Addin to MS Outlook. Also features easy setup program. Uses a well respected ClamAV scanning engine.
SABnzbd is a cross-platform binary newsreader. It makes downloading from Usenet easy by automating the whole thing. You give it an NZB file or an RSS feed, it does the rest. Has a web-browser based UI and an API for 3rd-party apps. Ideal for servers too.
Create data discs with advanced data settings. Create video and audio discs, Burn will convert if needed. Create DVD-Video discs. Recreate discs. Burn doesn’t reinvent the wheel, it uses many powerful open source Unix utilities and is also open source.
LMMS is a free cross-platform music studio which allows you to produce music with your computer. This includes the creation of melodies and beats, the synthesis and mixing of sounds, and arranging of samples.
Rich: A number of times that I’ve worked with Pentaho in various businesses, the same question comes up repeatedly: What’s with the name? Tell us where the name came from.
Doug: The hardest part of doing a startup is coming up with a decent name. That was actually even harder than the idea or the actual code. Believe it or not, we did spend a lot of time on it. The main thing we were looking for was something that you could Google, and there was absolutely nothing returned. We went through a list of tons of things. Would it pigeon-hole us into a specific product? Would it, over time, sound dated? So we decided we needed to come up with something that really didn’t mean a whole lot, but sounded like it meant something.
James: And something where, no matter how you pronounced it, someone would know how to spell it.
Doug: There were five of us that started the company. Somewhere along the line we got locked into “Penta.” The “Penta” was for five, and “Ho”, well, that just sounded right.
There’s a story on our FAQ that listeners may be interested in. We did come up with a completely different story to explain the origin of “Pentaho,” and actually had a few people fall into the trap. In fact, the first article in a major press mentioned that we were named after a Florida Indian tribe, as our story alludes to. But if you actually read the complete story you would realize that that may not actually in fact be the truth. But we’ve caught some people with that. It’s kind of fun.
One of the turning points early on for us was when you would Google “Pentaho”, and it stop saying “Did you mean pentagon?” Once there were enough links coming back to us to where we were a legitimate name, we knew we’d gotten somewhere.
Rich: Pentaho has been around for quite a while. I’ve used it at a number of jobs that I’ve had. So it’s probably familiar to many of our audience, but could you give us an overview of what the project does?
James: Sure. Absolutely. Pentaho is actually a collection of projects. We’ve got Mondrian, which is a relationally based OLAP engine – so it’s an engine for slicing and dicing multi-dimensional data. We’ve got Pentaho Reporting, which provides web-based and desktop reporting. Outputs PDF, Excel, CSVs, HTML, etc. We’ve got Kettle, or Pentaho Data Integration, which is a data transformation engine. We’ve got Weka, which is a machine learning engine for doing particular analytics, and those kinds of things. Sentiment analysis. And then tying it all together, we’ve got a B.I. platform that integrates all the pieces together, flows data between the different engines, provides web-based user interfaces, etc. So it’s a whole suite that’s all tied together by a platform.
Rich: So, how does this work so far as the development community and whatnot goes. Are they developed as separate projects, or is it one unified developer community, or how does that work?
Doug: Since the projects actually were developed at various times by different people, we merged them when we started Pentaho. So, Mondrian is its own separate SourceForge project, jFreeReport, which is the basis for Pentaho Reporting, is also its own SourceForge project, as is Weka. When we first started Pentaho, our idea was not necessarily to build the entire B.I. suite, but to look what was available in Open Source, and then build a platform that would unify those projects. So, over time, as we got to know the architects and the leads of the other projects, they would join Pentaho as employees, and we’d take over ownership of the project.
Rich: I’ve interviewed a number of projects where the project came out of the company, either because they developed something in house and then Open Sourced it, or because the entire organization was built around an idea that was Open Source. This is very much the other way around. I’d like to hear more about how this works. The people that work on these various projects – are they all employees of your company?
Doug: The chief architects of each of those projects are. They also have their own community members that are independent, as Open Source projects typically are. The projects themselves – so, like, Mondrian is an embeddable OLAP engine – there are other people that use it and embed it. There’s no friction between its Open Source-ness, and the fact that we use it for our embedded engine. The best part of that for us is we have the architect, we can help shape the roadmap, and all kind of work together for integration.
Rich: Now, you have an enterprise edition of some of these products, is that right?
James: Yes, that’s correct.
Rich: What’s the relationship between the Open Source version, the enterprise version, your employees, and the community?
James: The community edition is designed to be a platform that you can build business intelligence, business analytics projects on top of, whether it’s reporting, data integration, machine learning slicing and dicing, whatever. So if you look at our usage world-wide, and Doug’s got figures he can give you, we’ve got people installing and using our software in 180 countries world wide. And there’s no business intelligence vendor – IBM, Oracle, Microsoft – none of these companies have sales and services for business intelligence in that many countries. So our community edition is full-featured. People all over the world using it to develop projects. The enterprise edition adds features on top which large IT shops will be expecting out of a business intelligence suite. So we’ve got things in there for administration, for maintenance, we’ve got features in there that lower the cost of ownership. There are some U.I. bells and whistles in there, in the enterprise edition. We have a WYSIWYG, drag-and-drop slice and dice user interface. But our community edition has something analogous. In the enterprise edition there’s an ad-hoc interactive reporting user interface, but the community edition has something … it’s not as sexy, it’s not as fun to play with, but the basic functionality is also there in the community edition.
Some people don’t like our business model. They say our community edition is cut down, it’s demoware. They’ve obviously never used it, because that’s not the way our business model actually works. We can’t be successful if our community edition isn’t something that you could actually use in practice.
Doug: The last … I think about the last six developers we hired – and every one of them were top-notch – came from the community. So these are guys that were contributing, working for business intelligence companies, or system integrators, or consultants, that just got really good with our stuff, and either asked, or we offered, a job. So we picked up a lot of tremendous talent from the community base.
Rich: That’s really a great thing to hear. I often encourage people to participate in Open Source, very self-servingly as “resume fodder,” but also because it expands your expertise in so many different areas so greatly.
Doug: Absolutely. And those guys typically have the best work ethic, and really love what they’re doing. But the bottom line for us is, it’s almost like an “America’s Got Talent” kind of deal. We need somebody, we look out there, see who’s really good. That part, when we came into it, we didn’t quite expect so much, that that would be another benefit of Open Source beyond the adoption, and contributions, and plugins and all that fun stuff.
Rich: Your suite of products is extremely full-featured. Like I said, I’ve used it. Where do you go in the future? What do you have planned for upcoming versions?
James: One of the things that we feel is important technology-wise about the platform is that it’s very pluggable. So, our data integration engine is pluggable. Our report designer is pluggable. Our machine learning engine is pluggable. Our business intelligence server is pluggable. So, we’re developing a lot of new things as plugins. We’ve got a couple things that we’re doing with big data. We recently Open Sourced all of our big data componentry. So, working with Hadoop, Cassandra, MongoDB, HBase, etc., all of that, is now in Open Source. We’ve got an effort underway to add more functionality around the big data stuff. In recent versions we’ve added a few more plugin points into our community edition. So we’ve got a new visualization API, so that you can create and plug in new visualizations. And a client-side data access API – it’s an API where visualizations can get to many different data sources on the server. And that data access API is also pluggable, so if you have a custom data source that you want to expose to all of our client-side visualizations, you can create plugins in that area as well. We’re working on a big release for later this year where we’re moving to a CMS-based repository. We’re adding in REST services for everywhere. We’ve had web services before, but we’re adding many more REST web services into the product. So that’s a bit of a rearchitecture for our next major release. But as Doug said, we’ve got a very active community because of these plugin systems, so a lot of our code contributions – which is what most people talk about when they talk about Open Source contributions, people primarily tend to focus on code contributions, which I think, in terms of volume is one of the smallest contribution areas for most Open Source projects. If you think about the number of people using Linux vs. the number of people contributing to the kernel, it’s a very very skewed number. So we get contributions – localization, documentation, QA. And a lot of people just downloading the product and trying it and using it, and maybe finding something in the install guide that isn’t quite right – that’s a contribution. So, we get these contributions in many differnet forms.
I’ve actually got a paper called The Beekeeper Model, which describes our philosophy around the business model in terms of describing it as a bee farm. And in there we list out over a dozen different ways that you can contribute to Open Source projects in addition to the code.
And we’re also adding, to help foster and encourage this development of plugins, we’re rolling out a marketplace where you can discover plugins that are available, and get help downloading and getting support for plugins that you want to try. That aspect of it has been very encouraging. Our dashboard framework was contributed by one of our partners. Our connectivity to things like SalesForce.com, SAP, those were contributed by community members. The community includes … it’s not just people who are using the community edition. We get contributions from customers, we get contributions from partners. It’s a model where everyone can be acting purely selfishly, in a self-serving manner, and by doing that, it actually makes everything better for everyone else as well. But it’s such a strong model because you can act purely selfishly, so … I’ve contributed to different Open Source projects – I’ve contributed bug fixes to JBoss, but it was because I didn’t want to have to reapplying my fix. I completely selfishly gave JBoss my code fix, because I didn’t want to maintain it. It’s a really nice model that way. It’s a lot of fun, and it’s very productive compared with the proprietary world we were used to before.
Rich: You said you’re installed in 180 countries. Tell me something about one of your customers, and what they’re doing with your product that’s exciting, that’s ignited your imagination.
Doug: One of our fun success stories is a company called Sheetz. They operate about 400 convenience store locations throughout the northeast. They had about a dozen different reporting products and didn’t have anything that really worked all together. They standardized on Pentaho. They rolled it out to their stores, and their people seemed to really like it. We get a lot of good press from those guys.
Our platform is OEM-able and embeddable, There’s a company called Marketo. They’re a SAS-based marketing provider. They embed our reporting and analytics right in that product. So that’s another kinda cool usage.
And then, we’ve recently got into – about a year and a half ago – into the big data space. There’s a company called ShareableInk. They’re also a Pentaho user and have written case studies about the stuff that they’ve done.
So we’ve got a lot of different areas, not just the analytics, but embedded and SAS and big data. Starting out from zero, five of us that started the company back in 2004, with almost no code, and then coming down to now, where these big corporations – we’ve got banks and hospitals, and people that depend on our stuff, and the stuff that we have acquired through the other projects, it’s kind of mind blowing.
James: And also, if you look on the community side, there are interesting projects that are going on world wide with Pentaho. One of which is OpenMRS, which is a medical records system. It’s an Open Source health care system, that’s used primarily in eight hospitals in Asia and Africa. It’s a project that is stewarded out of the U.S.. We’re working with that team to provide better reporting and analysis of the data that they’re collecting. It’s really interesting to see the different use cases and ideas that people have for using the software.
Doug: Another thing that I feel is satisfying about working in Open Source is that you get much more direct contact between the software developers working on the code and the people that have the use case that are actually trying to use the software. In a proprietary company you’ve got layers of account managers and support people trying to ensure that the engineers don’t actually talk to the customer. Whereas in this model there’s much more of a direct connection to find out what people are doing and why. I think that’s very satisfying about this business model and about working with Open Source.
Rich: Thank you, James and Doug, for speaking with me.
Doug: And thank you.
James: Yeah, thanks for talking with us. Good luck with SourceForge. We couldn’t have done it without you.
Practically every week, one of the projects that we feature is a game. Some weeks – like this week, we feature more than one game.
And this makes a lot of sense, when you think about it. People are involved in Open Source because it’s fun. Open Source involvement, for most of us, is a hobby. Our specific reasons for participating vary greatly, but in the end we all do it because it’s enjoyable. Projects that aren’t enjoyable either get abandoned, or become commercial so that they can hire developers.
So it’s no surprise that a huge number of the projects at SourceForge are games, ranging from traditional games like chess and Mega Mario, to the more involved games like Zero AD and Planeshift.
SourceForge is also a treasure-trove of game engines. By developing and giving away a game engine, game designers are freed up to focus on their artistry and story-telling. Engines like Spring, Arianne, Game Editor, and Castle gather incredibly talented game designers who have an idea for a game but don’t want to have to muck about with the internals. (More game frameworks here.)
While many of the games are reproductions of existing popular commercial games, many more of them appear to be completely original creations. And the creativity and originality is truly beautiful.
So the next time you’re looking for a new game to play, instead of getting out your wallet, head over to SourceForge and see what you can get for free, from people doing it just because they love it.
This week, we’re featuring two games – Glest and Zero AD – three media tools – aTunes, fre:ac, and gPhoto – one security tool – ClamAV – a designer tool for fonts – FontForge – and jmol, a molecular modeling tool.
We’re very proud to be hosting these projects, and thank each of them for being part of the SourceForge family. The professionalism in these projects underscores the passion that we all feel about our Open Source projects. Thanks!
Clam AntiVirus is a GPL antivirus toolkit for UNIX. The main purpose of this software is the integration with mail servers. It provides a flexible and scalable multi-threaded daemon, a command line scanner and a virus database that is kept up to date
fre:ac is a free audio converter and CD ripper for various formats and encoders. It features MP3, MP4/M4A, WMA, Ogg Vorbis, FLAC, AAC, and Bonk format support, integrates freedb/CDDB, CDText and ID3v2 tagging and is available in several languages.
0 A.D. (pronounced “zero ey-dee”) is a free, open-source, cross-platform real-time strategy (RTS) game of ancient warfare. It’s a historically-based war/economy game that allows players to relive or rewrite the history of six ancient Western civilizations, each depicted at their peak of economic growth and military prowess. The six factions are: The Hellenic States (aka The Greeks), the Roman Republic, The Celtic Tribes, the Persian Empire, the Iberian Tribes, and the Carthaginian Empire, each complete with unique artwork, technologies and civilisation bonuses.
aTunes is a powerful, full-featured, cross-platform player and manager, with audio cd rip frontend. Currently supported formats are mp3, ogg, wav, wma, flac, mp4, ape, mpc, mac, radio streaming and podcasts.
FontForge allows you to edit outline and bitmap fonts. You may create new ones or modify old ones. It is also a format converter and can interconvert between PostScript (ascii & binary Type1, some Type3, some Type0), TrueType, OpenType (Type2), CID, SVG
Jmol is a Java molecular viewer for three-dimensional chemical structures. Features include reading a variety of file types and output from quantum chemistry programs, and animation of multi-frame files and computed normal modes from quantum programs.
gPhoto is a program and library framework that lets users download pictures from their digital cameras. The libgphoto2 library gives you access to hundreds of models of digital cameras on several platforms.
Alex: Let me give you a quick overview of it. The original Sphinx was developed as part of a dissertation by Kai-Fu Lee in the Computer Science department here. Kai-Fu has gone on to bigger things since then, and, in fact, you might know his name. The original project demonstrated something that people didn’t think was possible, which is to simultaneously do continuous speech, have it be connected speech, and be speaker-independent. These are things we take for granted today, but it was still a bit of a head-scratcher at that time.
That was Sphinx 1.
There was a Sphinx 2, which was developed by Xuadong Huang, and others, while he was a post-doc here. He’s subsequently gone on to Microsoft. And at some point after that, we had Sphinx 3, which was …
Rita: Mosur Ravishankar
Alex: … and it’s something that featured continuous HMM models …
Alex: The whole activity was overseen by professor Raj Reddy, in Computer Science. At some point – I think this was around the time that Kevin was here – Raj declared that from now on, Sphinx would be Open Source. And you have to realized that this was back in the time where everybody sat on top of their software and was generally suspicious.
Rita: Sphinx was export controlled at one point.
Alex: Yeah, so it was kind of a mess. But then suddenly it was Open Source. Nobody knew quite what would happen, and since then, things have seemed to have gone fairly well. The code gets maintained. There was one more version, called Sphinx 4, which Bhiksha and Rita can speak to better than I can. Why don’t you guys talk a bit about that?
Bhiksha: The Sphinx 4 project was somewhat different from the earlier Sphinxes, in that the earlier Sphinxes had been entirely CMU-internal projects that got Open Sourced. But Sphinx 4 was actually a multi-institutional collaboration. We had Sun Microsystems … engineers from Sun Microsystems, and engineers from Mitsubishi Electric Research Labs, and of course, lots of people from CMU. This had Sun in it, so it was also different in that it was Java-based, and so we had to architecture it in a manner that Java could actually be used and Java could be taken advantage of. That was the fourth version.
Alex: One thing to point out is that there are several components to the software collection. And sometimes people don’t always distinguish this. There are decoders, of which there are three currently available. And then there’s a suite of training software that creates the statistical models that drive these systems. Currently there’s Pocketsphinx, which is a small-footprint, fast decoder that, for example, I use for interactive systems. There’s Sphinx 3, which is considered a research system, and has a variety of features that don’t normally show up in realtime systems. And finally there’s Sphinx 4, which actually is quite popular at this point, and people are incorporating it into a variety of applications.
Rita: It’s extremely modular, and enables a lot of mix-and-match in the core technology itself. Different kinds of searches and different kinds of language models and things like that.
Bhiksha: I think the big attraction for Sphinx 4 really is that it’s in Java, which seems to be the language of the day.
Alex: Some of us who actually kind of remember C and still use it a bit scratch our heads about this Java stuff, but, you know, what can you do?
Evandro: One interesting thing about Sphinx 4 is that, like Bhiksha mentioned, it was built by several institutions. The different institutions had different goals with Sphinx 4. And one of the goals that Sun Microsystems had was exactly to popularize Java by building tools that had Java as the language. And, at that time, it was 2001-2002, so Java was still starting as a language. It’s interesting that nowadays, Java is very popular, and Sphinx 4 has become popular, because it’s in Java, partially.
Rich: Now, this software, it’s a collection of libraries, is that correct, primarily, or is there actually an application that I can download and run on my Android phone or whatever?
Alex: Actually, there is an Android version, which you’ll find on the repository. And there are a few basic applications that you compile and run on a desktop under … actually, both under Linux and Windows, I believe.
Bhiksha: And Mac.
Alex: And Mac. But there are also other things out there that incorporate Sphinx in one way or another. There’s actually kind of a whole lot, and I can’t really go through them. Although of course I’ll mention some of the work we have here, and that’s the Olympus/RavenClaw dialog manager, that allows you to build interactive systems and Sphinx there is used as the recognition component. That’s also a fully Open Source system.
Bhiksha: In response to whether it’s a library or an application, there are a core set of libraries, but we also have various demo apps that hook into these libraries. So you could actually download programs that you can run on various platforms and that will give you an output. Now it may not necessarily be the outputs that you would require, so to get exactly what you need, you’d have to customize it and build things around the libraries.
Rita: Sphinx 4 includes three or four demos.
Alex: All the Sphinxes have, minimally, a command-line version of the application.
Alex: Well, they’re both speech. And something like our dialog work incorporates Festival and its variants. The useful thing there is that it’s Open Source and we can fool with it for our purposes. That work is done by Alan Black, and in the scheme of things, once you get down to speech processing, it’s an area with diverse, almost self-contained areas or fields. Recognition and synthesis has that case – people sort of know about each other, and maybe even do work in each other’s areas, but really it’s separate activities.
Bhiksha: There’s also a slightly deeper connection here to Sphinx 4 in particular. When Sphinx 4 came to be, the folks at Sun were trying to demonstrate the capabilities of Java, as Evandro mentioned. So the first thing they did was to port the synthesizer, which is Festival toolkit, to Java. And once they’d warmed up on Festvox, they switched to the recognizer, and collaborated with us on Sphinx 4.
Rich: What sort of things are you all working on these days?
Alex: I should mention that we’re working on human/robot communication by language, and we’re also trying to work gesture into that, so you can kind of wave your arms and talk.
Rita: Yeah, we’re looking at distance speech recognition, and focus of attention, things like that.
Alex: Another thing that we’re interested in has to do with model training, and one particular project at this point is trying to induce vocabulary from just speech. This is something that would be useful for working with languages you’ve never seen or heard, so to speak.
Rich: Can you elaborate on that? Is that like learning a language just by being immersed in it?
Alex: Well, it’s maybe best characterized as taking a whole bunch of speech and identifying recurrences of particular patterns, on the assumption that people reuse words and so on.
Rita: And then we continue to work on the usual thing: speech recognition in highly noisy environments, in automotive environments, in open environments. We’re working on recognition with speech captured through multi-sensor arrays, from various distances, in open spaces, by moving devices, and so on.
Bhiksha: And then of course there’s the inevitable business of dealing with the large amounts of data that we’ve currently got. We’re also working on how we can leverage the data that have currently become available. Now, most of this data are not transcribed, so you don’t know exactly what the people who spoke them said. We have to figure out how best to use these data to improve our models and come up with better recognition in various languages. So that is something we’re working on.
Rich: What languages does the software currently recognize?
Bhiksha: There’s a number on the website, because at this point it’s very strictly Open Source, in the sense that we have contributions from around the world. For instance, Nickolay Shmyrev, whose name has been on the list, contributes a lot. There are people who have uploaded models in French, Spanish and whatnot.
Rita: The bottom line is that you can actually build models for any language, provided you have the training data, and the software will allow you to recognize speech in that language. So people around the world are doing this. Some put out their products and byproducts on their own websites. Not everything makes it into the Open Source software bundle. The software currently is capable of recognizing a few major languages. English, Spanis, I think French.
Alex: We did Korean at some point.
Bhiksha: But then again, the correct way to think about it is not as a black box that recognizes specific languages, but as a toolkit that you can use to build a recognizer …
Rita: For any language
Bhiksha: … in a language you want to work in.
Rich: Now, one thing that I deal with every single week, is I do a recording like this, and it has … as in this case, we have several different voices on here, each of which has a distinct accent. Then I have to transcribe that for the web site. This sounds like something that I’m going to spend quite a bit of time playing with.
Bhiksha: And I thought I was understandable!
Rich: Oh, you’re all very understandable, but I’ve played with several transcription software, and I can train it to transcribe myself perfectly, and as soon as I have a second speaker, it gets confused.
Alex: Yes, so that’s the “speaker dependant” bit, that actually originally people thought was going to be inevitable. And you still get much better performance if you train for an individual, but really that’s not quite what you want.
Rich: I see that Sphinx is going to be involved in the Google Summer of Code this summer. Can you tell me something about that?
Evandro: Sphinx is going to be part of the Google Summer of Code, so there’s some interesting projects going on there with participation from students, which haven’t been chosen yet. So that’s something that’s coming up this summer. This year, one of the projects, for example is a possible better user interface, or a graphical user interface for a training and then decoding using Sphinx.
Bhiksha: And last year we built tools for allowing people to read entire books, and to align the recorded audio to the actual text.
Rich: Thank you all so much for talking with me about this. I’m sure that there’s a lot more that we could talk about.
Alex: We hope we gave you some reasonably coherent answers!