Entries from March 2008 ↓

OpenSSL and working with HealthVault

This is my first post in an N-series indulgence in trying to evaluate HealthVault to work with Ruby On Rails or Pythons DJango. As you know we HealthVault released a Java library – and it works in a platform independant fashion on most of platforms. I will attempt to outline some of the challenges here lets starting with -

Step 1: Authentication & Authorization -

  • Support for Crytography – RSA and Hash Method Authenticaion Code (SHA1/ SHA256)
    • The Java library comes with Sun’s implementation of the above Java.Security. However in LAMP/R world the only respectable alterative is OpenSSL.
    • While Java is everywhere but you might have to install your flavor of OpenSSL in addition to the web-framework. However having a robust framework makes rest of work easy.
  • Exporting the private key from Windows generated pfx certificate to be used with one of the offerings.
    • While in theory it should just work but their are some format issues which will need to be dealt with getting key material to be used with the above option.

I’m going to try the Step 1 with Python & OpenSSL and lets see where I go with it.

Next Part: Talking to the public methods of healthvault platform.

Visualizing Health Data

How often do you folks spend cycles trying to do built a great visualization for health data? Would it be useful if we health vault provided a visualization control? Or an API similar to this one? Perhaps a Silverlight wrapper!

Seven Evangelists and a bus – CodeTrip!

A Very cool way of promoting Microsoft and adding to the code churn – http://www.thecodetrip.com/. Dont miss the Bus if its in your area :) .

Transforming Xsl DateTime to HealthVault date-time

If you are working on transforming a schema to HealthVault data-type, you will run in to issue for transforming Xsl DateTime to date-time. The reason healthvault wants its own date-time is to facilitate approximate datetime i.e date only, time only scenarios like I took Polio vaccine when i was a kid prolly 10 years ago, now how do you DateTime that ? Anyways, here is Xsl which does DateTime to date-time using a Xsl template GenerateWhenNode.

              0">                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               0">                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      

Testing your application on older versions of IE – Web app compat that is!

Recently I ran in a bug in our AHA application on IE 6. Coming to the terms with testing across multiple browsers is a painful realization of the evils of web development. I tried several ways by which i can install IE 6 on my Vista machine, including tricky thing like DLL redirection. But this is way too painful – however I stumbled on a sweet way of doing application compatibility tests – virtual pc!!

Here is the cook-book way to get different version of IE for compatibility tests -
1. Deploy your application on a staging server
2. Install Virtual PC 2007 (it works on Vista)
3. Get the IE testing images from here.

One downside of this approach is that you cannot step into and debug you application because virtual pc is a painful to configure for running on your corporate LAN :( .