jGRASP and CS2

No replies
huss
Offline
White BeltYellow Belt
Joined: 2011-07-20
Posts:
Points: 11
Instructor(s): 
Steven Huss-Lederman
Location: 
Beloit College
Course: 
Data Structures and Algoritms (CS2)
Term / Date: 
Spring 2011
AVs used: 

I heavily used jGRASP and Duane Bailey’s freely available book Java Structures: Data Structures in Java for the Principled Programmer. jGRASP was used both in the classroom as well as in labs. Overall, it was a very good experience. The use in class and labs covered linked lists, trees (binary search, red-black), heaps, and hashing. In most cases jGRASP correctly visualized the data structure automatically. A few cases required entering a handful of lines in the interface to help it understand the structure. (This is not necessary for any Java Collection.) This process is a little difficult to figure out (the jGRASP developers are working on better documentation) but easy for the students to do once you show what is needed. jGRASP allowed stepping through the code to see exactly what the code was doing. It did not ever seem to make a mistake and the visualizations are as good as what you see in a textbook. I surveyed the students on their impression of jGRASP and they were uniformly positive and loved the tool. Note we are an Eclipse-based program but deviated to use jGRASP. The students liked this tool even with the overhead of learning it solely to do data structure visualization. (Note I have directions to easily share the Eclipse and jGRASP workspace on a project so they automatically stay synchronized.)

One final note is on support from the jGRASP developers. It was great. I received responses very quickly (less than one day) to any question I had about using jGRASP. The one time that there was an issue with jGRASP working properly, they responded with a quick fix in a day and had an updated version released within a week (we happened to hit a software release). I had a very positive experience in terms of support and this is a tool under active support and extension.

I’m happy to make any of my materials available to others (behind our course management system so trickier for other to get there).