Jump to content

  • Log In with Google      Sign In   
  • Create Account


Member Since 08 Sep 2011
Offline Last Active Dec 10 2015 02:33 PM

Topics I've Started

What is your definition of done?

14 April 2014 - 02:05 AM

Hi all,


Just our of curiosty, do you have a written down definition of done or acceptance crieteria in your team/company? And if so, how is is formulated and what is in there?

I'm talking about the criteria when you or your team deem a feature or requiremet  to be "ready" excluding any bugs that might be reoported much later from somewhere.



Alternative library to graphviz for layouting directed/undirected graphs?

30 January 2014 - 09:34 AM

Hi all,


I'm looking for an alternative library to graphviz for layouting directed and undirected graphs similar to this one (http://ostatic.com/files/images/3_6_1.png) to be displayed in a Qt app.


Essentially the same concept as this article: http://www.mupuf.org/blog/2010/07/08/how_to_use_graphviz_to_draw_graphs_in_a_qt_graphics_scene/


The tool lets the user interactively move the nodes around and I currently use graphviz as a C++ library to do the layouting. Everything works as it should. Unfortunately the product this viewer is in evolved to 64bit and there is no 64 bit package of the graphviz-DLLs provided.


I tried to compile graphviz myself, but after three days of fiddling I'm still not able to even build it.


Does anybody know a library for layouting diagrams that has roughly the same functionality as graphviz?


I'm currently trying out boost graph, which works fine for placing the nodes, but I didn't find any help in computing the connecting edges as splines or angled connector in a way that they don't go through an existing node.


Any idea on another library or help with either compiling graphviz or using boost would be highly welcome.

Experiences with continous integration anyone?

18 October 2012 - 07:29 AM

Hey all,

I'm currently reading into continuous integration (Wikipedia) and generally it sounds very nice. However as a lot of such things I am afraid, that it sounds nice, but may have some pitfalls when used in practice. I'm especially concerned that the setup and maintenance of such a system could consume quite a bit of energy and time.
So has anyone experience with a this?

What would also be interesting, if you're using automatic builds and testing, what are the metrics you use to find out progress?

Reading wrong values from Joystick for the first few milliseconds

09 October 2012 - 03:33 AM

While refactoring a software that uses joystick-input from custom hardware, I found out that the software contained a small but ugly hack to get the joysticks working. Using the Win32-Multimedia-API the available joysticks are enumerated and afterwards reads the state of some buttons and axes. However after enumerating the device the application was put to sleep for half as second for every joystick, because else the state of the buttons was reported incorrectly. I know the state of the buttons, because they are hardwired in the devices.After this "initialisation" I am able to poll the joysticks as fast as I can without getting random results.

My guess is that it has to do with the update-rates of the joysticks, but I have found no information concerning this or how to retrieve this.
Has anybody a clue for this?

The code (a bit simplyfied):

JOYINFOEX structtmp;
for (int i = JOYSTICKID1; i < (JOYSTICKID1 +16); i++)
if (joyGetPosEx(i, &structtmp) == JOYERR_NOERROR) {
  JOYINFOEX actualPos;
  actualPos.dwSize = sizeof(JOYINFOEX);
  actualPos.dwFlags = JOY_RETURNALL;
  Sleep(500);  //if no sleep -> data is crap after startup, why??

  //get button states
  if (joyGetPosEx(i, &actualPos) != JOYERR_NOERROR) {
   std::cout << "Error reading joystick " << i << std::endl;
  DWORD jb = actualPos.dwButtons;
  int button[32];
  //get button bit of the 32 buttons
  for (unsigned int i = 0; i < 32; i++) {
   button[i] = (DWORD)powf(2.0f, i);
   if (jb & button[i]) button[i]=1; else button[i]=0;
  int type = button[31] + button[30] * 2 + button[29] * 4 + button[28] * 8 + button[27] * 16 + button[26] * 32 + button[25] * 64 + button[24] * 128;
  std::cout << "Got Joystick: " << i << " of type " << type << std::endl;

The first call to joyGetPosEx returns garbage for the buttons as well.

transfer of knowledge in a team

16 August 2012 - 03:06 AM

Hey all,

How do you get your team to share their know-how between individual developers? Not just product-specific knowledge like an implemented concept or piece of code but also general knowledge like new programming techniques, a new API, usage of a tool etc.

While writing a (good) documentation for a piece of code or a concept is curcial, I found that in busy times it sometimes is not even looked at by the other team-members. Not because it would bore them, but because as often as not the comments are "Cool, I have a look at it, when I'm done with [whatever I'm doing]" and then it is promptly forgotten. I think here it helps if the documentation is stored at a central point so it can be found when in need of it, but still it would be better if the knowledge would be shared before the urgent need to understand this concept arises.