Nov 17, 2011

Do you still read source code to learn how to use an API?

We all agree that learning new APIs is a challenging and time consuming task. However, we can't get around this, right? It is the way how software development works nowadays. But it's also part of the fun we have when creating new software and make it work. However, sometimes we wish we would be little more efficient - especially when digging into the source code written by others to learn how to use an API, or when using code search to find code examples.

Apparently, reading source code is valuable. But have you ever though about how the knowledge how others used an API could be leveraged to improve IDE services such as Code Completion, Code Search, or even API documentation?

In early 2011, the Eclipse Code Recommenders project was created to tread new paths on how the next generation of IDEs could enable developers to share knowledge with each other over their IDEs and to improve tools like code completion, code-search, and even to enrich existing documentation by leveraging the knowledge of the masses.

Since it's inception, the project made an amazing progress. Many tools have been developed since such as:
  • Intelligent (context-aware) Code Completion,
  • Dynamic (mined) Code Templates,
  • Code snippet search engines,
  • Extended (mined) Documentation platform,
and a lot more. 9 Months later, we published v0.4 of Code Recommenders and presented it at EclipseCon Europe. If you haven't heard about Code Recommenders yet, it's time to spent a few minutes now to learn how IDEs will change your way of developing software in the next year:

The video is made available by FOSSLC. Thanks to FOSSLC and FOSSLCde to make this public available.

Talk Abstract:

This talk introduces Code Recommenders’ tool suite, demonstrates the potential to support you and your team on your daily work, and shows in a live session how to setup your own knowledge base for your own products by adding support for Google’s Android to Code Recommenders. The talk provides you a substantial understanding of how Code Recommenders tools work, which knowledge gets extracted from code and how recommendations for code search, code completion and other tools are made.

This talk targets on developers, team leads, and CTOs. It aims to familiarize you with the ideas of Code Recommenders, to interactively demonstrate the current state-of-the-art, and provides perspectives how to leverage the knowledge of the masses for your products in your own company.


If you want to learn more about Eclipse Code Recommenders, visit http://eclipse.org/recommenders.
If you have any comments about Code Recommenders and its vision of IDE 2.0, let me know via twitter, google plus, or the project's forum.

Best,
Marcel