Thursday, February 12, 2009

Building an application (2) ...

.. coming full circle

In the first part of this journey I have sketched the outlines of my application. The combination of web pages, web service and Silverlight as I plan to build it.

Jumping hurdles and dodging bullets

While building and debugging I have run into numerous obstacles. Not only did Chrome give me an unexpected headache by not refreshing the Silverlight XAP file in the cache, also Visual Studio behaved weirdly during debugging sessions. At first I couldn't make any of the breakpoints work. Only after using the context menu on the web service and picking 'Debug - Start a new instance' did execution break at the breakpoints. And then after a couple of hours it failed all breakpoints completely. Restart of Visual Studio and browser did not work. A full reboot did the job.

BTW I have logged a bug with Chromium for the caching problem.

However

My Proof of Concept piece of spaghetti has now come full circle:

  1. I drag and drop some players, balls on the pitch.
  2. Enter some extra info: name of the excercise and some extra text.
  3. Save the data to the data base using the web service.
  4. The asynchronous callback adds some html to the DOM, which is an image that is generated by a special HttpHandler.
  5. The image shows up in the browser.
  6. I have a smile on my face.
Lots of work to do

en: Picture of a girl rubbing her temples.Image via Wikipedia

There is still lots of work to do:

  • a real user interface has to be designed
  • better, I need to sit down and get the complete UX designed
  • have to add the boring user authentication stuff
  • try out the concept on a real web server
  • implement some of the missing graphical pieces, like lines with arrows
  • think of good way of editing the lines
  • undo / redo ?
  • make the database complete
  • add functionality for picking existing excercises, sharing these, copying, editing etc.

Yep, there is lots to do and so little time.

A little bit more tchnical info in Part 3.

Reblog this post [with Zemanta]