Blog: Working with Large Codebases > Agile & Development Methodologies, Documentation & Communication, Java

Java

A Detailed Study on Understanding Code

Posted in Agile & Development Methodologies, Documentation & Communication, Java on July 19th, 2011 by Vineet SinhaBe the first to comment

Let’s face it; code can be hard to understand. We have all encountered a piece of code that took longer than expected to figure out or was easy to misunderstand. It could be a new library, a coworker’s code, or your own code from 6 month’s ago.

In a previous post we discuss the importance of taking time to study users in order to get feedback on innovative ideas. We did that to determine how developers understand code and why it can be a challenge.

We asked Open Source developers a number of questions. Two that stood out were their thoughts on the difficulty of understanding their code and what they generally wanted more of in such projects.

The first question we asked Open source developers was if they thought that the code they were working on was challenging to understand. Those using the libraries (API Clients) had a different take than those building the library (Core developers).

read more »

 

Uh oh, not another Large Code Base!

Posted in Developer Tools, Java on June 21st, 2011 by Novita Mayasari1 Comment

I came across two blog posts which agree that large code bases are a hassle to programmers. The first post, “Code’s worst enemy” written by Steve Yegge, basically loathes large code bases and Jeff Atwok shares the same opinion in “Size is the enemy”. The problem with large code bases is that their physical size is indication for the large amount of effort, cost and time to be invested for that project, as stated in Steve McConnell books.

read more »

 

Understanding What Others Are Upto!

Posted in Developer Tools, Eclipse, Java on March 21st, 2011 by Seth RosenBe the first to comment

One of the challenges when working in teams is in keeping up with your fellow developers. Spending a lot of time reading others’ code not only means less time getting your own work done but also the gradual deterioration of the code architecture. This is a problem that we have heard over and over again from developers and managers alike.

We have just released additional code and architectural review tools that will help developers easily understand new features that are being built. We are pleased to announce that we will be demoing this functionality at EclipseCon 2011 as part of the Hot New Products Showcase. With this release we not only have a full fledged code review client and server, but also are making it really easy for developers to document the main parts of what is being worked on. Our new features will help developers create and maintain more comprehensive architectural documentation, solving a number of common development issues.

read more »

 

From Java to Spring and Beyond – Making Diagrams (and UML) work for developers

Posted in Developer Tools, Eclipse, Java, UML & Diagramming on March 21st, 2011 by Seth RosenBe the first to comment
One of the strengths of working with Java is the large number of frameworks that are available. These frameworks are great for taking care of the basic tasks involved in building Java based apps. But they often bring about challenges in understanding – whether it is xml files or annotation based configurations, developers needing to work with these frameworks have to see how different parts of the code are connected.
With this in mind we have extended Architexa to not just show code relationships but have also built special support for popular frameworks like Spring and Struts. We are happy to announce that we will be demoing this functionality at EclipseCon 2011 as part of the Hot New Products Showcase.
We are pushing the edge here – so we are making this capability available as an ‘early access’ version. You can find it by default in all versions of the Architexa Suite. We would really like to hear what you think about it, and invite you to extend your trial of the product as we refine the implementation based on your feedback
 

Eclipse Tabbed Editor Extended.. Embedding a GEF Editor

Posted in Eclipse, Java, User Experience on March 17th, 2011 by Abhishek RakshitBe the first to comment

Finding the right format for users to edit and view your Eclipse plugin’s data can be tricky. Eclipse provides many different types of editors for modification of its resources. Some examples of these are the Java, Text, JSP, XML, Ant editor etc. It also provides tabbed editors like the Plug In Manifest Editor which can have multiple sub editors as tabs in one editor. A simple example template to extend the tabbed editor when creating a new plug-in, is provided in Eclipse by default. For our project we needed to add a compare editor and a GEF editor as sub editors. This post should help you become more familiar with creating custom tabbed editors in Eclipse.

read more »

 

Features of GEF and why they’re useful

Posted in Eclipse, Java on March 14th, 2011 by Seth RosenBe the first to comment

GEF provides a great framework for building MVC based plugins on the Eclipse platform. It contains a great deal of the core functionality (described in more detail here)  necessary for building these types of apps. In addition, GEF also provides features that greatly simplify the task of creating a robust interactive editor. I’ll try to show how these different features can benefit any Eclipse developer working with GEF. read more »

 

A simple intro to creating a MVC framework: Using GEF

Posted in Design Patterns & Architecture, Developer Tools, Eclipse, Java on March 10th, 2011 by Seth RosenBe the first to comment

When creating a rich graphical editor the Model View Controller (MVC) design pattern makes life a lot easier. But it is often difficult to decide which libraries/frameworks to use. On the Eclipse platform GEF (Graphical Editing Framework) is a great solution but it can be challenging to figure out how to integrate with the parts you need. Since GEF is built on top of the Draw2d/SWT graphical libraries and is able to provide a powerful and consistent UI. However there are many considerations and pitfalls to take into account when getting started with GEF.

Some of my first large scale Java coding involved using and modifying GEF code. Luckily the GEF team provides many helpful examples showcasing the different features GEF offers. I will attempt to provide a concise introduction to the points that I found best helped me understand GEF.
read more »

 

Eclipse Cheat Sheets: A Hands on Tutorial

Posted in Developer Tools, Java on December 15th, 2010 by Seth Rosen2 Comments


Based on the great response we have had to our previous cheat sheets articles, (why they rock and tips and tricks), I have decided to post a more in depth tutorial. One of the many benefits of Cheat sheets is that they provide an immediate improvement to your product’s usability and are simple to implement. This article will allow you to quickly create multiple cheat sheets.

To help get you started we have created a cheat sheet on cheat sheets: This cheat sheet can be opened from within eclipse and will guide you through the simple steps for setting up a cheat sheet for your own project.
read more »

 

Custom Lucene Scoring

Posted in Developer Tools, Java on December 13th, 2010 by Seth RosenBe the first to comment

When you have a lot of data, finding what you are looking for can be a challenge. Fortunately, Google and other search engines help us make sense of the vast amount of data on the web. But what about your own data? Lucene is a great tool for indexing and searching large amounts of information quickly. Fundamentally it uses a great deal of intelligence to determine which Documents are most important to you based on your query. On the surface Lucene is easy to set up and provides many useful benefits, and taking a peek under the hood can give us insight into the core of Lucene’s powerful features.

I have covered the basics of indexing and searching in Lucene. For those of you interested in the internal workings of Lucene there is no better place to start than its scoring system. Lucene’s brain is its Scoring system. This critical calculation is what determines which results are returned from your searches. Depending on the type of data you are indexing and the purpose of your application you may want to implement a custom method of scoring your data. For instance, when searching data about used cars you may want to put more weight on make and model than, say, color.

read more »

 

Eclipse Cheat Sheets: Tips and Tricks

Posted in Developer Tools, Java on December 8th, 2010 by Seth RosenBe the first to comment

We talked about in a previous post why Cheat Sheets Rock. Our users have found them useful in the Architexa plugin and we are in the process of adding a great deal more cheat sheets to it. We have also had requests from our readers for more details on creating and utilizing cheat sheets effectively. Some of the most important tips that we found helpful while adding cheat sheets to our product are below to help you get started.
read more »

 

[ bbPress synchronization by bobrik ]