Screencast – Hosting WCF Services in ASP.NET/IIS

Screencast – Hosting WCF Services in ASP.NET/IIS

First of all, “Hi”!  As Cliff said, I’ve joined the Connected .NET Framework product management team here.  It’s been great so far, and we have lots of great content planned for WF/WCF dev centers.  But it’s been a couple of months now and after my short honeymoon period, I was told it’s time I blogged something.  This one is an easy spike (a little Olympic Beach Volleyball lingo), thanks to the great setup by Cliff and Aaron.  Of course I am talking about the great series of short How-To screencasts we are rolling out.  This is only the third week, but trust me, we are going to have one of these every week for a while and tons of great connected framework knowledge will be shared.


This week, for our third installment, CSD MVP Aaron Skonnard walks you through how to host WCF services in ASP.NET/IIS.


PluralSight-LogoThe WF/WCF screencasts are a weekly series of Channel9 videos done in conjunction with the folks at PluralSight to help developers new to WF/WCF see how the technology is used. Aaron and the PluralSight folks are now offering online training courses (in a format similar to these screencasts) as a compliment to their catalog of instructor-led training courses covering Microsoft connected systems technologies. Their training topics range from .NET v3.5 (including an excellent WF/WCF Double Feature course) to WSS to BizTalk server.

MSHUG HL7 Based Data Warehousing

MSHUG HL7 Based Data Warehousing

Eric Washburn CTO Athena Advanced Technologies

Very interesting method to warehouse all data components to the warehouse. There is a separate table that defines all of the complex data types, but each segment has its own table.

There is a unique key in the segment to represent the complex data type that then ties the segment to the complex type.

I would write more about it, but I was too interested in seeing how everything was done.

MSHUG – HealthVault Architecture Overview

MSHUG – HealthVault Architecture Overview

Sean Nolan – Chief Architect, Microsoft

Health Vault is like PayPal, they go to sites that use Health Vault to communicate data.

Why should you integrate with HealthVault:

Private and Secure Storage

Consistently log in using secure login

Application Interoperability – the ability to collect various data into one central repository

Device Connectivity – The ability for new devices to communicate directly to the health vault

Application and Device Discovery

Privacy and Security Focused – the customer is in control, the customer is in control of their own privacy

Industry Standards, it is an open platform, free and published SDK and APIs, (found on the HealthVault site) Community Promise, Easily Extensible Data Model, Strong Developer Community: MSDN Documentation

Modes:

Native: HealthVault is an online database

Copy: HealthVault is a synchronization resource to (imporpe cloyt/export/merge)

Per-type globalized transformation

  • html
  • tabular view
  • Standards and Device Exchange
  • Custom (custom xsl) on the Healthvault server ‘dime’

Custodianship – allows to permissions to be granted to people (children for example) that can be granted on a ‘sliding’ scale, eventually, you can give it up when they move away.

Online and Offline processing mode, grants access instantly, and only for that session, or a longer term if necessary

MSHUG – Edifects using BizTalk Solution for end-to-end HIPAA transaction processing

MSHUG – Edifects using BizTalk Solution for end-to-end HIPAA transaction processing

Herb Larsen Sr. Vice President of Alliances, Edifects Inc.

Not a lot of payors or providers have found that that ROI has been reached by implementing HIPAA.

A lot of the reasons is because the tasks of moving the edits from the back end system to the front end (BizTalk) is difficult.

Ramp Manager product – allows to test without being on the test without having to be on the phone with the other party and asking them to ‘submit’ the file and read back the errors.

Edifects XEngine – built on BizTalk Server 2006 R2

Because MS is not considered a covered entity, MS has not supplied a lot of HIPAA security standard documentation.

MSHUG Opening Keynote

MSHUG Opening Keynote

The next conference will be on April 4th 2009 in Chicago.

Steve Aylward – General Manager Health and Life Sciences Microsoft

Watched the future of Microsoft in healthcare video.

Microsoft is making a huge investment in healthcare.

It took 4 releases (10 years) to outsell MSDOS

It took 9 releases (11 years) to become most popular word processor

It took 5 releases (10 years) to become the leading spreadsheet

$8 billion in R&D, a large (no numbers as far as percentage directed directly at Healthcare, but a large portion)

In 2000, MS had 63 employees dedicated to Healthcare.

Amalga – Health Information System – not available in the US. Designed for the emerging markets. (used to be called Global Care)

Amalga – Unified Intelligence System – not limited to caregivers, but can be customized to end users

HealthVault – Internet health platform that enables third parties to create applications to stored personalized health care information

Backpacking in the Sierra’s 08: Brian and Steven do Forester Lake

Backpacking in the Sierra’s 08: Brian and Steven do Forester Lake

I’m not sure when my blog turned into a travel blog, but I think I may have found what I’ll do as my next career πŸ™‚

I’ve been very fortunate that work has taken me to interesting places, and I am able to jump off and see other interesting places. A few weeks ago I went to Dubai on my way home from Amman Jordan (where I’m working on an ESB project for Microsoft and the Jordanian government). I’m writing this in a taxi as my wife and I head to Petra (Jordan) for the weekend, then I work for another week in Amman before we head off to Sharm El Sheikh (Egypt) where I’ll be doing more scuba diving in the Red Sea, and we’ll be doing a side trip to Cairo for a few days to see the pyramids and Sphinx.

But those are all future posts, this one’s about last week when I went backpacking in the Sierras with my son.

A few years back my daughter and I backpacked out of Mineral King up to Franklin Lake. I was inexperienced so we had far too much stuff, and to make it worse, we had more food than would fit in our bear canisters, so we had no choice, we had to make it to the lake where there were bear boxes. In my naive inexperience, my stretch goal was that we’d keep on going up over Franklin Pass and down to the lakes beyond. The trip up to Franklin Lake almost killed us. We needed a day to recover before we could even day hike up to the pass, and we never went over.

This year, armed with far more backcountry experience, better gear and an irresistible drive to finish what I started, I went back with my son, determined to make it to the other side. And we did.

Here’s the route we took:

image

If you can’t read a topographical map, this one basically say “ouch”.

The Mineral King valley is just perfect, very picturesque. If I set out to design “the prefect mountain valley”, this would be it. Here’s a picture of me as we’re just starting out:

Brian starting out

Then we began the climb up, this is the valley as seen from above (which gives you a great sense of the altitude gain):

Mineral King Valley from above

We made it up to Franklin Lake in pretty good time, we had lots of daylight left.

People mean different things when they say “camping”. To some it’s “load up the RV”, to others, “roughing it” means a state or national park where they have to line up for showers. For me, it means being as far from other humans as you can, being totally self-reliant, knowing that if you get in trouble you have to also get yourself out. Doing it my way takes you to much more interesting places! Here’s our campsite overlooking Franklin Lake. There was another group (3 people) there that night, but they were far away and we never heard them.

Our campsite overlooking Franklin Lake

And here’s a view we had from our site. You can see we are almost above the tree line, and notice there’s still snow around (in mid-August)

view from site at Franklin

So, can you drink the water? Sure, but first you have to filter it, which is the hardest part of backpacking. I share the load with my kids though, here’s Steven getting us our supply for the night:

steven pumping water

Sometimes there are little surprises in the backcountry. Like a toilet. This one was probably built circa-1900, and has one and half walls still (barely) standing, but…. talk about a throne with a view!

toilet with a view and 1.5 walls

The next day we hiked up to Franklin pass, given us a total altitude gain of some 5,000ft, taking us to 11,700ft, which means hiking with a backpack gets a whole lot more strenuous as the air is quite thin (particularly if you live at sea level like we do). Here’s a view looking back at Franklin Lake, this again, gives you a great sense of the climb we did.

Franklin Lake from above at Franklin Pass

Then, looking over the other side of Franklin pass (roughly east-wards), we see where we’re heading:

Little clair lake from Franklin Pass

For two nights, this was our campsite at Forester. We had the whole lake to ourselves for those 2 days. I saw another group of people in the distance once, but they were just passing through on their way somewhere else. What really struck me about this lake was the silence. It was so absolutely quiet.

campsite at Lake Forrester

Here’s another view of “our private lake”:

the lake we had to ourselves for two days

Here’s a shot of my “little boy” as we were chilling and enjoying our time at Forester:

IMG_0683

And me taking a break on the way home:

IMG_0708

We had planned to do the trip out in 2 days, but when the sky turned black and the hail started, we thought it would be best to do it all in one shot. That means we had an elevation gain of approx 2,000 feet (topping out at 11,700 feet, where the air is thin), followed by a drop of 5,000 feet (yes, almost a mile of elevation loss, which is really hard on the toes and feet). And all that was over 12 miles, with lightening in the next valley over. At the end of that, we had a 1.5 hour trip (about 25 miles) down a mountain road with 1.5 or so lanes, sometimes dirt road, lots of blind curves and multi-hundred-foot drops. It’s a nerve-wracking drive, which acts as a natural filter as it keeps a lot of people out of the valley πŸ™‚ Then, thanks to various energy drinks and greasy food (pizza tastes incredible after a few nights of dehydrated backpacking food), we made the 6 hour drive home.

It seems I say this after almost every backpacking trip, but, this was the most physically challenging and demanding thing I’ve done in my life. And, I wouldn’t have it any other way. The aches and pains have faded, but the memories we made will last our lifetimes.


"The E-Myth Revisited" and The World After Summer

"The E-Myth Revisited" and The World After Summer

I’ve been reading "The E Myth Revisited", by Michael Gerber. The book is all about entrepreneurs and small companies, and why they usually fail. The following quote is right at its start:

"Businesses start and fail in the United States at an increasingly staggering rate. Every year, over a million people in this country start a business of some sort. Statistics tell us that by the end of the first year at least 40 percent of them will be out of business. Within five years, more than 80 percent of them will have failed.  […] And more than 80 percent of the small businesses that survive the the first five years fail in the second five."

Create It is now over 7 years old, and 16 people strong.  It makes me proud to be in the small percentage of companies that do make it (although we are still 3 years away from the danger zone). πŸ™‚

Meanwhile, on the technical side, I’ve been trying out the new BizTalk Services R12 release, which includes (hosted) Workflow support. It’s limited in the sense that there are not many activities included, and there’s not yet rich and integrated tooling, but it’s an interesting start nonetheless. Well worth exploring. And on another track, I’ve been looking into BizTalk Server R3. The new features do look interesting, although clearly in the "evolution" side of things.

Finally, I’ve been getting ready for the PDC2008, in October, where it’s interesting to note that the topic "Cloud Services" is the one with most sessions. If you want to learn more about this topic, I recommend you subscribe to the Cloud Computing group hosted at Google Groups (but not specifically Google-related or sponsored). Interesting discussions there.

RFID @ TechEd 2008 Update – Your/my Privacy concerns

RFID @ TechEd 2008 Update – Your/my Privacy concerns

Hi folks – over the last week or so I’ve had many requests about what’s happening
around privacy and what does it mean to get a “Tag” this year.

Breeze Event SystemBreeze
Event System  


Reasons for Building the System

1. Breeze designed, built and owns the ‘Breeze Event’ System. I am talking first hand
(and am happy to share details with you). A variant of the idea originated years back
when myself and David McGhee worked on a very cut down alpha variation – together
we cut the code and got about 5 mins of RFID activity from the devices we were using
before our battery died.

Stepping forward to the current system, once we presented MS with the concepts of
what we wanted to do – many folks gave some sensational support (such as Marcy Larsen
& Rahul Garg) in integrating this new piece with ‘TechEd proper’. We got there
in the end and for me – it’s a real eye opener to see how big TechEd is and how much
planning goes into it.

2. As a speaker/delegate/MVP at many TechEds and other conferences my motivation was
all about giving you the Delegate (& myself as a Speaker) a better TechEd experience.
Taking the pain out of a lot of things. For example:

  • TechEd to me is about experience technology, not just hearing about it. Here’s your
    chance to play and experience some cool technology.
  • Being able to see when rooms over capacity before you get there only to be told to
    go away
  • Be given online evals just for the sessions you attended (currently we set ‘attended’
    to be at least 15 mins within the session)
  • I might be a new developer, what sessions do I go to? You could have information such
    as 80% of other ‘new developers’ went to SessionX. Great I might go to that one.

    A big one for me is that at the end of the conference Delegate’s get a boxed DVD Set
    of sessions in other TechEds with thousands of hours of material on it. Wouldn’t it
    be great to be given such things as ‘80% of other new developers have these sessions/webcasts
    etc as their top 10 list
    – that way I’ve got targeted viewing.

  • As a speaker – they will know the cross section of interests and technology tracks
    in the room. (there’s a chart display we’ve created). So the classic question of ‘How
    many developers are in the room? How many ITPros?
    ‘ no longer needs to be
    asked AND as a Delegate the speaker will be able to have more information
    to tailor their material to the interests of the audience (hopefully reducing the
    amount – ‘that just went over my head’)
  • Planning – future conferences/sessions and material will now have direct influence
    by the Delegates. What sessions you valued, and got the most out of.
  • More…

As you can see, we’ve designed the system with us (delegates & speakers) in
mind.

I digress…..Ok onto the main items……

Privacy Concerns – yours and mine

I wanted to fill you in as much as possible about the system (this is eating into
my sleeping time πŸ™‚ so there is a clear understanding about the what is going on.

Some Details on How the System Works

1. Your tag – holds a number e.g. 1234 (we printed it on the plastic
surface of your tag) end of story. Nothing else.  These tags are ‘EPC Gen II’
UHF Tags and operate between 920-926MHz.

Here is the actual Tag itself (it will be stuck onto a card to make it look beautiful
πŸ™‚

                

>

Some facts:

  1. The tag is known as a Dog Bone by the way the metal aerial is shaped.
    Just above the barcode, there’s the number and above that there is an indent the size
    of a ‘pin head’ in the middle – this is the chip.
  2. The tag is a passive tag (as opposed to active
    such as your E-Tags in cars) which means radio waves need to be sent to it, to excite
    the tag and so the tag can transmit its number. This distance in our case is around
    2-3m. If there’s no waves, then nothing is transmitted.

    What this generally means is that you should be able to walk straight through into
    sessions, rather than people scanning your individual barcodes as was in previous
    years.

  3. The Barcode is there so we can integrate with your established Registration
    process. We printed the barcode there as a fall back mechanism.

    The barcode number is the only piece of information written onto your tag. (Printing
    the barcode + printing to the Tag at the same time doing around 5000 tags took a bit
    of development and H/W)

    In other Systems, things like temperature readings are frequently written to the tag,
    so that when the fish is delivered to the restaurant, they know the freshness and
    quality of it.

    Generally speaking in RFID based solutions there will be no sensitive information
    written to the tag (if it gets lost, crushed, drowned etc etc)

    Tidbit – the amount of data you can write to these tags is in bytes
    (like 96 bits), but other tags can store around 64KB!!!! (that was the total sum size
    of my Apple II as a kid!!)

 

2. Readers – come in many shapes and sizes for different purposes.
Our Readers have a read range of 2m. There will be white pizza shaped ‘boxes’ mounted
and these are the antennae. The reader is connected to local pcs that drive the system.

There will be 56 Readers and 118 antennae mounted around Session/Breakout rooms doorways
and as I mentioned they have a range of 2m. This is designed to reduce the queues
(with reading a barcode) getting into rooms as you should be able to just stroll through.
(there have been some ski resorts in Europe implementing RFID ski passes – ski straight
on/off)

                                                                 RFID Antennae

                                                                   Shot
of the Antennae

3. Local PC – each room with have one a PC where all the Readers
are connected to. We designed our system so that if we have a network meltdown, each
room will (hopefully πŸ™‚ still be running. In fact each Local PC runs our solution
on top of BizTalk RFID Server to drive the walk-in and chart displays.

4. Network – there will be a dedicated network for the RFID component
@ Teched where these Local PCs and us will be connected to in isolation to the rest
of the network.

5. The Information captured – the information that your tag number
associates with in the back end is essentially the Conference profile information
you entered as part of the Registration process.

This enables things like 60% of people like Jazz in this session…..ideally we’re
really interested in aggregates of information to help improve your experience.

(I’m hoping to get MS and MVP information as well – so you as a Delegate may be notified
when a Windows2008 MVP is in the house)

Just quickly – we’re using SQL Replication to frequently replicate the information
from each Room back to our servers centrally.

Sneak peak….

Cause you read to the bottom of this post….here’s a reward…..
Now according to my team – this information is available on All Rooms,
or by Individual Room.
(my current challenge is how to expose these screens to you guys (approx
500-700 concurrent connections) without causing grief to our system…..nothing like
a challenge a week out from TechEd……)

Looking fwd to a very different TechEd….see you there….nighty night.

HTTP Post adapter

HTTP Post adapter

I wrote my first two way adapter the other day. I have created it to communicate with Zirmed to send insurance verification request/responses via a HTTP Post.

My question, however, is how often are people using this method of transport, and would anyone else be interested in using this?

The REAL dilemma however is that there are specific items that are necessary to communicate with Zirmed, but any other post is going to look drastically different. How best to approach an enterprise solution though, do you walk thru a wizard, possibly pointing to the web page post page to ‘interrogate’ what needs to be passed?

Let me know if there is anyone out there interested…