DiceEQ helps users of the d20 and other similar table-top gaming systems to play out actions involving dice. It especially helps Dungeon Masters to manage many different characters during an encounter, getting the result of all attacks with a single button.

Welcome to TroolStudio. Our projects range from web-based tools to customized site design to quirky iPhone applications. Take a moment to browse what we have to offer and be sure to provide feedback on anything you try out. As part of a well-balanced diet, the TroolStudio logo eats positive and negative comments equally.

Looking for the latest news on our works-in-progress? Check out the projects page to find details and screenshots from each app. Browse our Blog to watch us work out the bugs, add the cool stuff, and debate the meaning of a computer's life. Leave comments and questions using the Contact form, and thanks for visiting!


The Problems with Reuse and Abstractions

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.

Continue reading »

Graph Sharing

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.

Continue reading »

Alignment Controls

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.

Software Engineering vs. Engineering

Watt's steam engine in the vestibule of the Es...

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.

Continue reading »

ASE Last Day and Overall Impressions

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.

Continue reading »

Automated Software Engineering Day 2

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.

Continue reading »

Automated Software Engineering Day 1

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.

Continue reading »

Following TechCrunch50

TechCrunch50 is streaming all of the presentations this week.  I was able to catch most of them yesterday.  If you are not watching them, you really should, they are not only informational, but good examples of how to and not to present. Check them out here. I have found them very educational so far and got to see some really cool products. I wanted to share a few of my favorites from yesterday (this is in the order of appearance).

Continue reading »

Undo/Redo & a Response to Robert Scoble

I had an update ready a few days ago.  Originally this was going to add undo/redo functionality.  I know I said layouts were going to be next, but then my wife played with Graphsy for a bit and pointed out that there was no undo and yet there was an auto-save.  That made it difficult and punishing to try out different things.  So I put together the undo feature, which was surprisingly not that difficult.   That was a few days ago.

Continue reading »

Graphsy Update: The Snappy Grid

Added some more functionality to Graphsy.  This time it’s an adjustable grid as well as the ability to snap to it when laying out shapes and edges.  Users can set the number of column in the grid and Graphsy will create as many rows as necessary to make sure each grid cell is a square.  Users can set a value between 1 and 100.  The grid adjusts through all of the different zoom levels and is saved with each project.

The grid itself is rendered using ImageMagick on the backend.  I experimented with using HTML elements first and, while the grid would pop-up faster, once it was on screen its presence slowed down all other operations significantly.  Therefore I decided to go with a rendered grid.  While it may take a bit for it to come up, once it does, it will be cached and the next time should be displayed faster.

Next update will contain more layout features.  Next time shapes and lines will snap into place based on objects already part of the project.

Reblog this post [with Zemanta]