November 7th, 2008 by Max
Just wanted to drop a line about a new features I’ve been working on. It’s not on the list of requested features, but I think it’s pretty cool none-the-less. I wanted to create controls that would allow for simple animations of graphs. Something where nodes can be rearranged to demonstrate a point.
The impetus for this feature came from wanting to write a post clustering and how it relates to software engineering. I wanted to use Graphsy for illustrations, and then thought about using animations to demonstrate clustering. Clustering and animations are a very natural fit, but Graphsy did not have that available. So I figured I would create it.
As I started implementing the features I realized that it is going to be a bit more work than I originally thought. A few things in the low levels needs to be changed to make room for it. And, as I was creating it, the interface I wanted to use for it changed as well. The feature has morphed from something really simple to something a bit more powerful, but hopefully still as simple to use. I’m about half way there right now. I’ve crossed most of the major hurdles already and can create some very basic animations. What’s left is cleaning up the UI, adding build in and build out animations, and creating a player available in the embedded version of the graphs.
I hope to finish this in the next two to three weeks. With a post about the features will also come a post about clustering to demonstrate the usefulness of Graphsy. I hope people don’t mind me going off the path, but I really want to get Graphsy to a point where I use it as my main graph creation/editing tool. It’s not there yet, hence the alpha and not beta, but hopefully it’ll get there in the next few months.
Posted in Uncategorized | No Comments »
October 29th, 2008 by Max

To set the ground for this post I first need to reiterate a message that has been heard from many other sources. Code coverage can only tell you how bad your test suite is, not how good it is. Meaning that if you have bad coverage you know something is wrong, but a high coverage number tells you virtually nothing. This message seems obvious for many developers out there, but it’s not heard by a surprisingly large section of them.
I have been a teaching assistant for several undergraduate and graduate testing classes. Every year when I grade their unit testing projects I always get several of them (about a quarter) that hand in tests with “good” coverage, but not a single assert statement to check the results of their tests. This is even after I get up in front of the class and rant about the exact problem from previous years. Needless to say those students tend to do poorly.
So, if test coverage is not a good metric, how can developers measure the quality of their test suites? I’m going to talk about one approach in this post, mutation testing.
Read the rest of this entry »
Posted in fun, software engineering, testing | No Comments »
October 22nd, 2008 by Max
This new update brings with it a way to store colors in palettes. The color picker has changed to include enough space for 23 colors. Once a color is selected the user has to simply drag it from the display into 1 of the 23 slots available. These color choices will stay with the user across all of the projects and will be remembered when relaunching Graphsy.
The next feature I am working on is custom shapes. I want to let users create custom shapes, combine them together into libraries, and share those libraries with others. There is lots of work that needs to go into this, but I hope to have the basic creation tools available shortly. Check out a list of features that were requested by other users, vote for your favorites, and add new ones at www.graphsy.com/request.
Since all of these updates, the tutorial videos are really getting out of date. I’m going to spend some time this week updating them. Hopefully I can get the object creation feature out in 2-3 weeks, unless work gets in the way again.
Anyway, here is a screenshot of the new feature.

New Color Picker
Posted in graph drawing, graphsy | No Comments »
October 21st, 2008 by Max
When talking about software reuse and abstractions it is tempting to bring up one of two analogies. The first treats reusable components as tools, while the second thinks of them as larger, more purposeful Lego blocks. Neither is really correct. In both cases we get an impression that reuse in unequivocally a good thing. The more components or tools we use, the better is our final product. Unfortunately that is not exactly the case. In this post I want to talk about abstractions and reuse, why we like them, and what we have to watch out for.
Read the rest of this entry »
Posted in opinion, software engineering | No Comments »
October 13th, 2008 by Max
This is a large update to Graphsy. People have asked for graph embeddings and here they are. This is my first crack at it, so if there is something you especially don’t like please let me know. Right now the embeddings are iframes pointing to a viewer page. I hope to get that changed some time in the future, but wanted to roll out the feature ASAP.
Read the rest of this entry »
Posted in demo, graph drawing, graphsy | No Comments »
September 29th, 2008 by Max
Having not updated in a while, I’m coming back with some hopefully useful features for Graphsy. First just want to reassure everyone that work on embedding graphs is progressing nicely and should be done soonish. I also took some time to add alignment tools. I felt they were missing and wouldn’t take me too long to code up. However, with all the traveling and getting sick I’ve been doing the past couple of weeks, these features took a bit longer than anticipated. Also not sure how well they will scale in the end. It seems to work fine for 100 shapes, but there is probably a point when it will crap out on certain machines. Let me know if it happens to you.
You will noticed a new toggle button that is turned on when logging into the studio portion of the application. It enables objects to be snapped and aligned depending on other objects in the scene. At their simplest, the features will align top, middle, bottom, left, center, and right portions of each object to other objects in the scene. Graphsy will show what objects are aligning together using a green bar.
Graphsy will also align objects based on their distances. For example, if you want to place three boxes such that they are displaced by the same amount, you can begin by placing the first two. Then the third will snap into place at the same distance from the second as the second is from the first. Also, when placing an object between two other objects, it will snap into place right in the middle. In this case red bars will appear to signify which distance is being used by Graphsy.
I hope you find there features speed up positioning and help you create better looking images. If you find that snapping is getting in the way, you can turn it off by clicking on the toggle button.
Posted in graph drawing, graphsy | No Comments »
September 26th, 2008 by Max
This is something I’ve been meaning to write about a quite some time now. It is one of the things that most irritates me about how Software Engineering (SE) is presented to people unfamiliar with the concepts. It tends to be compared to other forms of engineering, especially architecture. I have to admit that when first being taught SE, I fully bought into that whole analogy. But, when one moves beyond the basic concepts, it falls apart. There are many problems with this comparison as well as many pitfalls one may fall into when making it.
Read the rest of this entry »
Posted in opinion, software engineering | 4 Comments »
September 22nd, 2008 by Max
The third day was the least eventful. There was a single session and a keynote. Unfortunately we had to leave before the keynote so I only attended the session. There was one great presentation and two that seemed like they were getting at something, but didn’t make much sense at the time. Will read the papers and hopefully understand them better.
Read the rest of this entry »
Posted in opinion, software engineering | No Comments »
September 20th, 2008 by Max
Well, day 2 is done and I have to say it was a bit of a disappointment when compared to the first day. Unfortunately I believe that was in part due to my choice of sessions. The best paper was in the session I did not attend and upon talking with the authors it sounds rather interesting. There was one shining beacon, the day’s keynote. The component session was not bad, but not great, while the experience reports were pretty much a disaster and did not really provide anything interesting. Ohh well I guess, lets jump in and go over the highlights.
Read the rest of this entry »
Posted in fun, opinion, software engineering | No Comments »
September 19th, 2008 by Max
The first day of the Automated Software Engineering (ASE) conference has passed. I wanted to highlight a few things that I saw and thought were interesting. Sorry for posting my impressions a bit late, but I guess it’s better late than never. I’ll write a separate post for days two and three.
Read the rest of this entry »
Posted in fun, opinion, software engineering | No Comments »