How it works
Let's say you want to write a GPLed online card game, like bridge, in C. And wanted to see how others had handled shuffling the cards. On the Koders.com site, you could search for "shuffle cards" with the license option set to GPL and the language set to C. Then click on the Search button.
The results screen shows one hit: a program called server.c from the UNO - Card Game project on SourceForge. (SourceForge is another OSTG property, like NewsForge.) I find both the project and the specific program linked to from the results page. Clicking on server.c, I see plenty of meat for my own project. Very impressive.
After giving the site a spin, I sat down with Koders.com founder and chief architect Darren Rush.
Q & A with Darren Rush
Barr: Tell me about Koders.com. What's it all about?
Rush: Koders is essentially a search engine for source code. It was initially developed as an internal tool, for our team. We were looking for a better way to leverage all of our past project work. So we created a search engine that would allow us to easily find code snippets from our previous code and integrate them into our current projects.
|Click to enlarge|
Barr: Does the programming language matter?
Rush: No. We've got support for about 15 different programming languages: Java, C, C++, all the popular stuff now, as well as languages like LISP, Scheme, and some of the obscure languages.
It started out just as a couple of languages that we were using at the time. We added more and more features, and then eventually started indexing open source projects as well.
We started seeing real productivity gains, just in the work that we were doing internally. And when we showed it to some people, they thought that we should try to get it out there on the Net and open it up to the community.
Barr: When you say you guys used it internally, who are you talking about?
Rush: We're a privately funded startup, based in L.A. We've got a combination of a core development team, as well as some managers with expertise in sales and business development. We've got a small sales force as well.
A lot of our developers did a lot of contract project work, prior to, and worked together in small team. It (Koders, Inc.) was really an umbrella for our contract work. We started out as just a core team of developers who were working together on various projects.
Barr: How will Koders.com generate revenue?
Rush: Well, basically we've got this great tool that we think offers a lot of benefits to the developer community, that we've taken online. We expect to see some ad revenues from that. As far as supporting the company in the future, we plan on rolling out additional products built around the core technology.
Barr: Will people be able to buy their own version of the search engine? So that if, say, IBM wants to be able to search all its COBOL code, it can easily do so?
Rush: That's absolutely on the roadmap. We basically are working to create a version of the application that works inside the firewall within the enterprise, that would allow them to have all the features we have in the service, but in that secure context, while also being able to connect to the index that we've created for the open source project.
Barr: Are people paying you for using the service right now? Is that going to be the primary income?
Rush: Not at this time. We have no intention of charging any fees for the use of the Web service. Our main revenues will come from product licensing as we roll out the products.
Barr: Is Koders looking to become the next Google?
Rush: Sometimes we compare ourselves to a consumer search engine, when we are explaining what it is that we do. But we're certainly humbled by any comparisons to Google. We're really focused on making a product that can help developers solve a lot of the little problems that they experience every day. So that they can write better code, faster.
One of the interesting aspects of this is that there is so much fantastic open source code out there, and it has been written by some of the best developers in the world. So it's really a great resource for new programmers and even experienced programmers to hone their skills.
Barr: How do projects get their source code included in the Koders search?
Rush: We will index any project that is open source, promotes itself via the Web, and has anonymous access.
Barr: So you have spiders out there looking for them, and they don't need to take any action?
Rush: Exactly right, we crawl as much as we can find. Occasionally we miss a project, and there are new projects coming online all the time. There is a link on our Web site for feedback, and you can submit a project through that link.
Barr: Do you have any idea how many different projects you are covering right now?
Rush: We have tens of thousands of projects. I don't know the exact number. What we have on the home page is actually a counter of the number of lines of code that we track, and right now we are at about 125,000,000 lines of code.
Barr: Is the Linux kernel included?
Rush: It is internally, and that will probably be going into the next publish of the index.
Barr: Have you personally worked on any open source projects?
Rush: I and a lot of people that I work with have been evangelizing open source, both for the benefits of application robustness and just lowering development costs for enterprise clients, for several years now. We've worked on a variety of projects where we've been able to utilize open source projects with great results. Where possible, we've been able to contribute bug fixes and some feature improvements back to those projects.
If you're a savvy IT pro looking to maximize your human resources and make full use of open source code to meet business objectives, the concept of Koders.com becomes truly compelling. If it works in your case anywhere near as easily as it did in mine, Koders.com is going to be a very hot item.
I'm sold on the concept, but I think it would be a good idea for Koders.com to provide links to the open source/free software licenses which are used in their index, and explain how the code can be legally reused and how it cannot.
What do you think? Will Koders.com work for you? Let us know in feedback below.