NAVIGATION: The Ultimate Tools List | Presentation Tips | ASP.NET | Web Services | Programming | Diabetes | Swag | DiabeticBooks.com

 Tuesday, 02 September 2003
.NET Code and Intellectual Property
Here's an interesting idea via Bill Wagner - a code copyright watermarker...it creates an obfuscated function that contains your copyright notice.  Clever...of course when you look at the generated code, you can see it isn't required and it's easily removed.
Web Services
09/02/2003 13:37:59 (Pacific Daylight Time, UTC-07:00) # Comments [0] | Trackback 

PDC - The Blogging Begins...

Kevin Schuler's PDCBloggers.net is up and it looks like it's going to be HUGE - much bigger than TechEdBloggers.  Already the list of blogging Attendees is 46 and growing! 


Web Services
09/02/2003 13:21:26 (Pacific Daylight Time, UTC-07:00) # Comments [0] | Trackback 

TechEd 2003 - DEV389 - Learning to love WSDL has been saved!

I reported in August of the Tragedy Of The Missing TechEd DEV389 Session on the Conference DVDs. Fortunately, my Malaysian buddy Fun Jim Lim pointed out that my session is available online!  Glory of glories.  Now the 3 people who've shown up here via Google looking for it will actually find something!

TechEd 2003's DEV389: Learning to Love WSDL is here: http://microsoft.sitestream.com/DEV/DEV389_files/default.htm


Web Services
09/02/2003 12:58:25 (Pacific Daylight Time, UTC-07:00) # Comments [1] | Trackback 

Yet another useful Utility - Snippet Compiler
My blogging buddy Jeff Key (maker of the increasingly useful NetPing) has posted yet another snazzy util, a Code Snippet Compiler.  As .NET folks, we all find ourselves creating junk Console applications with a Console.WriteLine just to test a snippet of code!  His utility sits in the tray and is always ready when you want to whip out a quick line or two. Very cool.
Web Services
09/02/2003 12:54:19 (Pacific Daylight Time, UTC-07:00) # Comments [1] | Trackback 


My buddy Garrick just got a LifeScan UltraSmart meter and here's his detailed review:

I finally an UltraSmart meter (just before they started to give them away). I intended to get one sooner, but they were not available in mmol/L format, which is what I use here in the great white north.  I started using it August 1, and there is now about 230 data points in it now.

Most of what there is to mention about it has already been said, so I apologize if I repeat much.   I do have an AccuSoft Advantage Complete (also called a Manager) from several years ago, that does much of the same sort of graphing, though far less sophisticatedly. I had high hopes for the Complete initially, but I ceased using it because of the lack of precision and accuracy of the tests.  The Ultrasmart uses the same sensing system as the Ultra, so I assume it will have the same precision,  but also with an 8% low bias in the normal to high range.  [This helps to show better data than we really get, which makes us feel good.  I always add 8% to any reading I get that is not too low, and to my averages.] Unfortunate, considering it doesn't need to be inaccurate.

The Ultrasmart is larger than the regular Ultra, as is the carrying case, therefore it is more cumbersome to carry around, so I likely won't use it as a portable meter.  It does use easily available triple A batteries, not as cheap as double A, but far cheaper than button cells would be in a meter like this.

It looks nice, and can be easily confused for a PDA by strangers... as long as they don't see the blood spilling (:c>;-).

Every 25 tests, it asks for confirmation of the test strip code.  This is inconvenient and a possible waste of a strip if you apply the blood sample without noticing that it hasn't become ready yet.  I have wasted 3 so far. Lifescan has made a couple of extra bucks for J & J.

3000 test memory.  This is very practical for myself.  I don't download my regular Ultra meters, which have only a 150 test memory, to the Onetouch computer program regularly enough, so I have several large gaps in the stats.  Since this will be my most commonly used meter, there should be less gaps.  (I have 8 or 9 Ultras, altogether)

To turn the light on or off, hold the OK button down for at least 1.3 seconds.   Note that you can turn the meter on with the light, and also go straight to the Fastfacts menu, by holding the OK button.

The Ultrasmart is as easy to use as it possibly can be.  Very intuitive, even without the instruction book.  The Fastfacts button is my favourite.  It accesses graphs and averages, amongst other ways to observe the data.  The Graph of all results (push Fastfacts, select Glucose Analysis, push OK, push OK for Graph of All Results, push OK one last time or wait until the meter goes there on it's own) can only cover 3 days on the display screen, so it can be moved using the arrow keys, one data point at a time.  By holding an arrow key for long enough, you can get a 'flowing graph' that moves at about 8 data points per second.  Also, each individual point can be selected (push OK for the one that is flashing...hard to see especially without the light on) to view the 'comments' that were added to it... not something I will be doing.  The Graph by Time of Day works similarly, but can only include data points from one of the seven time zones (before and after each of three meals and one for night time).  You choose which one.  After you have seen one, you can use the back button to go back and choose another.

Average of All Results is also easily available.  (push Fastfacts, select Glucose Analysis, push OK, select Average of All Results, push OK)  The display shows the averages for the last 7, 14,30, 60, and 90 days all on one screen.  Quite useful for quickly spotting trends over the last 3 months, though not as inclusive as the 'flowing graph'.  Average by time of Day gives the you the averages for the seven time zones on one screen.  First, you have to choose how many days you want the averages to cover.  You have a choice of 7, 14, 30, 60, or 90 days.

One thing it lacks is the standard deviation (SD) of the data.  I consider the two most important numbers to be the BG average, but also the SD.  The SD tells me how tightly controlled I have been.  [It is available on the computer program though, however less convenient.]  SD isn't perfect of course.  The main problem would be having a lot of hypoglycemia.  Since hypoglycemia is not far from perfect, (compared to hyperglycemia),  having a lot of it would still show the SD to be quite low, and the average BG would also look very good, but I certainly wouldn't be feeling my best.

It does have hypo information, which is useful, especially considering that hypo level is customisable, as is the 'acceptable' bg range, both before and after meals.  For the post meal data to be reasonably accurate, you would have to eat at regular times.  I just use the same range for all times anyway so that is not a problem for me.  [My target is 4.7 (85), or my target range being 4 to 7 (72 to 125), which is the range for which if all is stable, I generally take no corrective action]

As usual with all things techy, there is more here than I care to use.  While I do agree that the exercise, health, meds/insulin, and food data buttons are useful for many diabetics, I find I can remember these things easily enough now (except for my medical records which are stored on good old paper), that I haven't any real use for  their accompanying programs.  As well, the calculations and protocols I've developed for myself are much more sophisticated than the Ultrasmart allows for.  [For instance, my insulin protocols for backpacking took me 3 days of hiking at various distances and elevation gains.  The result is a schedule that reduces my basal and bolus dosages, and also the lead time on the boluses, based on distance traveled and how many thousands of feet of elevation gain I have done and/or will do  ...BTW, it seems incredible to consume 700 grams of carbs in a day, and only need a total of 15 units of insulin, including the basal.]

The food data inputs capability may be suitable for type 2s, but are far too primitive for accurate enough calculating for tightly controlled type 1s, not to mention cumbersome.  I would however, highly recommend the food and exercise functions to new type 1s or type 1s just starting to use a basal/bolus routine.... partly because the meter provides some degree of fun.

One thing I consider lacking, is the choice of viewing the averages back farther than 90 days. Though 90 days nicely covers  HbA1c, with 3000 tests stored, it easily could go back 8 months or even years, depending on the frequency of one's tests.  From my own bg computer programs, I do know that December, July and August are my worst months. However, making use of that much data would presume this meter survives as my favourite for long enough.  In the present climate of ongoing improvements that are happening to meters recently, it may not. 

Garrick Neal


Diabetes
09/02/2003 12:40:03 (Pacific Daylight Time, UTC-07:00) # Comments [1] | Trackback 

Rapid Fire Blogging

Well, we're back from Malaysia, and I'm officially on my first vacation in recent memory.  I've had a couple of bloggable things on my mind, but I've been limited by time and internet access.

I arrived home and checked my hanselman.com email from my home machine.  (I'd been checking my email remotely with OddPost, which is only the greatest remote email client since, well, ever.)   I use POP3, as I don't trust my server enough to use IMAP, and I leave the mail on the server and retrieve it from three or four different locations and client.  We were gone for 10 days, and as I hit Send/Receive I notice the status bar informing me that I have 1784 emails.  Seems a smidge much for only 10 days.  Of this mails about 1600 were spam and the remaining ~180 were legitimate emails that I'll need to deal with. 

That's it.  It's whitelisting time.  I refuse to deal with this much spam.  For the last few months I've been using Spamnet, but I can't justify paying $1.99 a month to prevent email I didn't ask for!  So, I will now use the Junk Mail features in Outlook 2003 to automatically JUNK all email until I've added emails to a local whitelist.

Next step is to look into a server-based whitelisting system for all my hanselman.com email account users and family members.  Anyone have any suggestions?


Web Services
09/02/2003 12:27:00 (Pacific Daylight Time, UTC-07:00) # Comments [2] | Trackback 

 Friday, 29 August 2003
Zen and the Art of Presenting in Malaysia

It's almost over.  We're having a great time at TechEd Malaysia.  

We've spend a great deal of time with a great many friends, some new, and some old.  I've put up a small photo montage of Malaysian Faces.

The Zen of .NET presentation went fabulously.  I started out on stage in the Lotus Position and everyone seemed to find it quite funny. As promised, here's a list of the tools I used and some of the code zipped up.  Haven't seen the scores yet, but I think the general feeling is one of positivity.

I hope that more people start using tips like "devenv /fs 14" (devenv /fs 8 to revert) and the Zoomin magnifier.  I have also decided I'm going to write a new presentation Magnifier Tool in .NET that includes some features I'd like, like auto-positioning.  More on this later.

Zen of .NET Tools

When we get back to the states I'll write up some thoughts on culture and doing business "elsewhere."


Musings
08/29/2003 16:54:21 (Pacific Daylight Time, UTC-07:00) # Comments [2] | Trackback 

 Wednesday, 27 August 2003
Malaysia - Days 2 and 3 and 4 wrapping up

Yesterday was an exhausting day.  I had back-to-back-to-back sessions.  Tim Huckaby and I did a Web Services Chalk Talk and had a blast.  Tim and I have very different philosophies but when we work together we compliment each other very well.  We had to do a little (a lot) of "teeth-pulling" to get folks to open up, but humor always works - and you know Tim is funny.  Then I presented Internationalizing ASP.NET for the first time to a non-native-English speaking crowd. ;-)  I showed an ASP.NET eBanking site that (along with the help of many friends) I localized to English, Spanish, Chinese, Arabic and Bahasa Malaysia.  After this session I directed a Hands on Lab (HOL) on Internationalizing ASP.NET.  It was my first experience with Microsoft (Connectix) Virtual Server (Virtual PC).  (Seems like a pale VMWare-lite to me.  As a VMWare user for the last several years [since Version 1] I don't see why people are making such a big deal about Microsoft's acquisition of VirtualPC; It's hardly as cool as VMWare 4.0.)

Mo visited the Batu Caves with Kevita.  They walked up 272 steps to the Temple Cave, a Hindu religious site. 

"The best known of these caves is the Temple Cave, a large cavern with a vaulted ceiling about 100 metres above the floor. To reach it one has to climb 272 steps, a feat performed by many Hindus on the way to the caves to offer prayers to their revered deities. Every year, on Thaipusam, as many as 800,000 devotees and other visitors may throng the caves. As a form of penance or sacrifice, many of them carry kavadis. These are large, brightly decorated frameworks, usually combined with various metal hooks and skewers which are used to pierce the skin, cheeks and tongue."

We're doing lots of shopping, but not lots of buying.  Some kinds of electronics are cheaper here - you can buy an optical mouse for about $2 to $5 US Dollars.  But if you want a deal on a digital camera you'll actually pay slightly more here.  I paid $400 US for my Casio but here the best deal I could find was RM1688 (US$444).  I did get a fantastic idea on a local phone (handphone).  I paid RM200 (~US$50) for a new Siemens phone, a local number and enough minutes and SMS credit to last the week.  Plus, I'll sell the phone back to the guy for RM100 before we leave. 

This evening we were given a tour of the Microsoft Malaysia office on the 29th and 30th floor of the Petronas Towers.  They have a FANTASTIC office.  My ears popped on the way up. 

Tommorow I'll give kind of an experimental session on "The Zen of .NET" for the first time.  I'm still formulating my thoughts about what I want to say.   A lot of people don't quite understand where .NET fits into the world.  They try to fit it into little catch phrases like "It's Microsoft's Java" or "It's just another VM" or "It's the new Platform."  I want to explain a lot of the concepts I talk about in The Myth of .NET Purity. People forget that Windows is the platform (today) and that the .NET Framework levels the playing field.  I think I'll spend a lot of time at the command-line and in ILDasm and Reflector.  We'll see how it goes!


Musings
08/27/2003 17:01:17 (Pacific Daylight Time, UTC-07:00) # Comments [1] | Trackback 

 Monday, 25 August 2003
Mayasia - Day #1 wrapping up.

Finished my Web Services Enhancements talk today, and I think it went OK.  We'll see tommorow when the speaker scores are announced. 

Tomorrow is a big day with a Web Services Chalk Talk, a session on Internationalization (I18n) and ASP.NET, then a Tutorial/Lab on I18n and ASP.NET.   

They've really done an amazing job here.  Last year there were 1080 attendees, this year over 1500.  Last year there were ~40 speakers, this year over 60.  The organizers are to be commended for putting TechEd Malaysia on the map.  Everything here is first class.  The whole region is here - I've talked to attendees from Thailand, Australia, Indonesia, etc.  It's great to see the excitement around .NET and Web Services.  I hope I'm adding a little to the pool of knowledge here.


Musings
08/25/2003 15:34:59 (Pacific Daylight Time, UTC-07:00) # Comments [0] | Trackback 

 Saturday, 23 August 2003
Malaysia - Day -1 wrapping up

Mo's asleep and Day (-1) is ending.  TechEd Malaysia starts tommorow, and I've got a talk on WSE - Web Services Enhancements at 4:30pm and God willing it won't suck. 

Speaking to a non-U.S. crowd is an art, and it's not easy.  If you present to a crowd that is part Muslim, part Hindu, part Christian, part Buddist, part Chinese, part Indian, part Bumiputra, part Tamil-speaking, part Bahasa Malaysia-speaking, and part Mandarian-speaking (not to mention other languages) like they are all from Ohio, you are bound to miss the mark.  I want to present a face of respect to everyone in this very diverse country and it takes research to understand where folks are coming from.  Mo and I have been spending the last few days totally with local friends, exploring the non-tourist places, eating at street vendors and learning as much Mandarin and Bahasa Malaysia as possible.  It might sound silly to do this in order to better present sessions on ASP.NET and Web Services, but I believe it's the right thing to do and I can't imagine not putting this kind of effort into it.  Maybe I'm naive, perhaps ignorant, or just an idealist.  Diversity is glorious and to be respected, but I must aim to understand (truly grok) first.  I believe to successfully teach someone of a specific culture (be that culture of Malaysia or of Brooklyn) one must be a student of that culture.

There are some 'ugly Americans' in KL (you can hear them in the cafes, they're hard to miss) and I've wished I had this T-shirt a few times. 

Lots of interesting stuff today.  We ate breakfast overlooking the tallest buildings in the world, the Petronas Towers.  Went out to the rural areas and visited a Chinese village, went to a Taoist Temple, and Mo ate Durian (the King of Fruits).  We also went up to the "First World Hotel" at the top of the world in the Genting Highlands. 

I added a new photo slide show at http://www.hanselman.com/MalaysiaDay3.  I tell ya, the Casio Exilim EX-Z3 is schweet.

Tommorow I'll blog about more details of the conference and the technical things and cultural snafus that arise.


Musings
08/23/2003 23:50:11 (Pacific Daylight Time, UTC-07:00) # Comments [1] | Trackback 

Malaysia - Day -2 wrapping up

TechEd Malaysia...T minus 2 days.  Had a lovely day today.  Saw my buddy, the Aussie, Adam Cogan.  Chatted with Stephen Forte on MSN, but haven't seen him yet.  Can't get my IPsec VPN to work behind whatever firewall they are running here, but not to worry, I'll figure something out. ;-) 

Spent the day with a local friend seeing all the things you wouldn't normally see as Joe Tourist, which was very cool.  I'm posting pictures up at http://www.hanselman.com/malaysia as they come.

Please, do note the copy of Windows 2005-ish, aka Longhorn that was on the shelfs for 15RM which is like US$3.90, and the Windows 2003 Enterprise Edition heavily discounted from it's US price of $4000 to only 5RM or $1.31.  I saw this kind of piracy last year, and even though it's been clamped down on in the last few months, it's still ridiculously blatent.


Musings
08/23/2003 01:50:53 (Pacific Daylight Time, UTC-07:00) # Comments [2] | Trackback 

 Thursday, 21 August 2003
On the road and still more Web Services DON'Ts

We've just arrived in Hong Kong and we're wireless again.  I'd post another picture, but it would look just like the last one except we'd be more tired and have Chinese writing behind us.

On a technical note, we're continuing to run into more Web Services No-No's.  This time it was interfacing .NET with a "legacy" Apache-SOAP implementation.  Oy vey.  It insisted on a custom Apache encoding style ala:

<ns1:-SomeMessage xmlns:ns1="urn:UpdateSubUser" SOAP-ENV:encodingStyle="http://xml.apache.org/xml-soap/literalxml">

So, in the tradition of writing Soap Extensions we are ashamed of :-) my CTO whiped up an custom attribute "XmlForceEncoding" that allows this madness to occur.  Also, the Web Services we were consuming was using the XSD spec from 1999, rather than 2001, so that was special.

Here's some things Chris and I learned (Chris' words):

The encodingStyle they are using is archaic and Apache-specific (non-standard).  It also violates the current WS-I Basic Profile (http://ws-i.org/Profiles/Basic/2003-08/BasicProfile-1.0a.htm#refinement35501800).  There are a number of messages on SOAPBuilders and elsewhere about challenges with interoperability for servers using this sort of encoding (see below).  The problem here is the contradiction between the use="literal" attribute and the encodingStyle attribute.  In (modern) web services, use="literal" means XSD schema-based encoding, so it is therefore unecessary (and redundant) to specify an encodingStyle.  In this case it is even contradictory. http://aspn.activestate.com/ASPN/Mail/Message/Apache-Soap-Users/736360


Musings | Web Services
08/21/2003 09:12:44 (Pacific Daylight Time, UTC-07:00) # Comments [1] | Trackback 

 Wednesday, 20 August 2003
Wireless Blogging in SFO on the way to HKG on the way to KUL

What was once science-fiction is now commonplace.  I'm blogging this entry from the lounge in the international terminal in SFO on the way to TechEd Malaysia.  There's T-Mobile hotspots everywhere for a very reasonable $6 a hour.  I'm even three floors down next to the gate with great coverage.  NetStumbler says there are six access points within a few hundred meters and 5 other laptop fools online with me.  I'm VPN'ed into work via IPsec, chatting with my boss over MSN Messenger, syncronizing Outlook 2003's offline Exchange store with the mothershop and I've got an online game of Rise of Nations running the background.  All on a laptop with a 1600x1200 (120dpi) screen that only weight about 6 pounds.

Madness my friends.  Madness if you don't realize how far we've come.  Of course, I needed a B.S. in Software Engineering to make it all happen (considering how hard it was just to get this F'ing Wireless card to work.   BUT, regardless.  Amazing. 

So, I took a picture of my wife and I with a Casio Exilim, docked it, hooked up the USB, it becomes the Z: drive (no driver installation!) and here's the result: 

A picture named CIMG0230 (Small).JPG

More to come, folks.


Musings
08/20/2003 17:06:22 (Pacific Daylight Time, UTC-07:00) # Comments [1] | Trackback