The Artima Developer Community
Sponsored Link

Java Community News
Koders Releases New Version of Source Code Search Engine

0 replies on 1 page.

Welcome Guest
  Sign In

Go back to the topic listing  Back to Topic List Click to reply to this topic  Reply to this Topic Click to search messages in this forum  Search Forum Click for a threaded view of the topic  Threaded View   
Previous Topic   Next Topic
Flat View: This topic has 0 replies on 1 page
Frank Sommers

Posts: 2642
Nickname: fsommers
Registered: Jan, 2002

Koders Releases New Version of Source Code Search Engine Posted: Oct 12, 2006 1:34 PM
Reply to this message Reply
Summary
The same week Google announced its foray into the code search market, Koders released a new version of its online source code search engine, making available over 425 million lines of source code for searching across a host of languages. Artima spoke with Koders co-founder and CEO Darren Rush about how code search benefits developers.
Advertisement

With Google's entry last week, code search has captured the imagination of many developers for the first time. Yet, Google is by no means the only player in this field. Koders and Krugle are two companies that have been in the code search businesses for some years, with somewhat more mature offerings than Google's present implementation.

Coinciding with Google's announcement, Koders released a new version of its online code search engine. On the occasion of that release, Artima spoke with Koders co-founder and CEO Darren Rush about how code search can benefit developers:

One of the biggest benefits of code search is that [it] helps you get an idea of the [level] of code reuse in a given code base. For example, [Koders] searches over 425 million lines of code, including the codebases of many open source projects, and one interesting conclusion we found is that projects on SourceForge.com tend to have less reuse than those on Apache. Apache really has a nice way of reusing code, such as code from the Apache Commons frameworks... Enterprises can similarly benefit by searching their own code [bases], and getting an insight into the extent their developers reuse code.

Rush's comment hinted at the enterprise market his and other code search companies aim at. In addition to finding the degree to which developers reuse each others' code, enterprise code search gives managers insight into what other code internal developers take advantage of:

One of our [clients] used Koders' search engine to identify who and in what circumstances was using their proprietary code... They were able to identify where code that they created showed up in some [open-source] projects, and were then able find out how that code got there, and were able to take appropriate action.

In addition to helping identify misappropriated code, code search may reveal another developer sin. We asked Rush to what extent code search engines encourage copy-and-paste style "reuse," whereby developers lift entire code snippets out of someone else's—presumably open-source—code, and into their own work:

When you're trying to code up a solution that you don't have great expertise in, code search can help you find examples of how others have used an API or what other solutions they came up with... You can copy and paste that code into your [work] but, more importantly, you can learn from others' examples... A good way to become a seasoned developer is to look at a lot of code and learn from others' solutions, or even mistakes.

Among the new features in Koders' latest version is the search engine's awareness of code structure:

Code search is different from text search in a number of ways, the most important one being that code, basically, is structured text... In our latest version, we take advantage of our ability to understand that structure in many languages. For instance, you can navigate code based on methods or variables, identifying relationships between those entities... We also provide the ability to filter things out based on [your criteria].

Koders keeps a tab on the most frequently used search terms, as well as the most often downloaded solutions to search keywords. Its Zeitgeist feature displays for many languages the top searches and the top solutions:

This gives us some insight into how people are using a language, or what APIs are used... For instance, one conclusion we can draw is that some languages, such as Ruby, are just being adopted as developers still try to [figure out] basic language and API features. On the other hand, fewer such basic searches are performed for Java, where most searches concentrate on advanced tools and APIs."

At the time of this writing, Koders's Java Zeitgeist search chart included the terms "iso 3166", "hibernate", "swing, "md5", while among the top solutions were "Fibonacci", "blowfish", "sleep", "random string", and "btree". For Ruby, the most popular search terms included "proxy", "socket", "require", "def", "thread", and "rails."

What your are preferred methods of learning, or looking up, not only proper, but also idiomatic, API use in various languages? To what extent do you believe code search engines can help improve the quality of code you write?

Topic: Koders Releases New Version of Source Code Search Engine Previous Topic   Next Topic Topic: Van Simmons on Jini

Sponsored Links



Google
  Web Artima.com   

Copyright © 1996-2019 Artima, Inc. All Rights Reserved. - Privacy Policy - Terms of Use