Tuesday, June 7, 2011

KPI Dashboard

Here is a short footage of a KPI (Key Performance Indicator) dashboard I developed together with DWI Solutions

Footage of the KPI dashboard

The system imports data from another system on a fixed interval, stores it in a local (embedded) MS SQL database and presents the data in an easy to digest form on a widescreen monitor.

Friday, June 3, 2011

Game development on Software Engineering Radio

image

If you’re interested in game development you may want to listen to this episode of the Software Engineering Radio podcasts. In this interview, a veteran game developer/chief architect working at Electronic Arts discusses past and current game development.

Tuesday, May 31, 2011

QuizXpress Promo Video

We just placed our new QuizXpress promotion video online:

A promotional overview of the QuizXpress features

Sunday, May 15, 2011

IE9 Crash on closing tab/exit

After upgrading to IE9 I started to experience frequent crashes when closing a tab or closing IE. When attaching the VS2010 debugger it showed me the following call stack:

>    KernelBase.dll!_DebugBreak@0()  + 0x2 bytes   
     d3d9d.dll!_MemState()  + 0xae bytes   
     d3d9d.dll!_MemFini()  + 0x29 bytes   
     d3d9d.dll!_DllMain@12()  + 0x32b bytes   
     d3d9d.dll!__CRT_INIT@12()  + 0x26d bytes   
     IEShims.dll!CShimBindings::DllMainHook()  + 0x72 bytes   
     IEShims.dll!CShimBindings::s_DllMainHook()  + 0x49 bytes   
     ntdll.dll!_LdrpCallInitRoutine@16()  + 0x14 bytes   
     ntdll.dll!_LdrShutdownProcess@0()  - 0x2ae bytes   
     ntdll.dll!_RtlExitUserProcess@4()  + 0x74 bytes   
     kernel32.dll!76532164()    
     msvcrt.dll!___crtExitProcess()  + 0x17 bytes   
     msvcrt.dll!__cinit()  + 0x13c8 bytes   
     msvcrt.dll!_exit()  + 0x11 bytes   
     iexplore.exe!__initterm_e()  - 0x1973 bytes   
     kernel32.dll!@BaseThreadInitThunk@12()  + 0x12 bytes   
     ntdll.dll!___RtlUserThreadStart@8()  + 0x27 bytes   
     ntdll.dll!__RtlUserThreadStart@8()  + 0x1b bytes   

Seeing d3d9d.dll on the callstack finally gave me clues to what the reason could be. I installed the DirectX SDK long ago and configured D3D to run in debug mode in stead of the retail Smile. Apparently something IE does not like!!

WPF game development

Last month I’ve been busy building two educational games. The games are to be used during trainings to entertain the audience and make them learn something around a particular theme as well. The input from the audience is collected using wireless Sony BuzzTM PlayStation buzzers.

Compared to my earlier experiences with building a game on a managed DirectX game engine, using  WPF was such a great experience. Expressing your ideas in XAML is so much better trying to paint al the stuff yourself using GDI+!

Here are some screenshots:

the buzzer sign-in screen (carousel):

Buzzers

SentenceGame

See this game in action…

image

The score screen

image

Some things I found during the project:

  • Animations don’t always run as smooth as you’d like
  • Sound support depends on having Media Player 10 or higher on the system (at least when using the MediaPlayer class)

Overall it’s great. I think we’ll soon start moving QuizXpress to WPF!

Friday, January 7, 2011

The Tao of programming…

Thus spoke the master programmer:

“After three days without programming, life becomes meaningless.''

I lost sight of it for a while but every programmer should know about "The Tao of programming" to be found here. Some extract I like:

A master programmer passed a novice programmer one day. The master noted the novice's preoccupation with a hand-held computer game. ``Excuse me,'' he said, ``may I examine it?''

The novice bolted to attention and handed the device to the master. ``I see that the device claims to have three levels of play: Easy, Medium, and Hard,'' said the master. ``Yet every such device has another level of play, where the device seeks not to conquer the human, nor to be conquered by the human.''

``Pray, great master,'' implored the novice, ``how does one find this mysterious setting?''

The master dropped the device to the ground and crushed it underfoot. And suddenly the novice was enlightened.