# Friday, February 20, 2004

Whitehorse Keynote Demo


Visual Studio “Whidbey” which is in alpha at the moment has a new feature called “Whitehorse.” I will be demoing it Monday in New York and next week in New Jersey. It is pretty cool, impressed even some local Microsoft employees at the NY office today during the Keynote run-through. The party line is that Whitehorse provides integrated model-driven design tools to increase productivity and predictability in design, development, deployment and maintenance of service-oriented distributed systems.  Whitehorse helps close the loop between design and operations and between design and code by modeling the software development and deployment process in a rich, integrated metadata-driven environment with tools that let development teams describe design and implement applications keeping design and code synchronized, describe operational requirements and validate designs against those requirements.  In this environment, application design becomes an abstraction of the code so the development process can be driven from design first or code first, or any mix of the two.


The core of this architecture is the System Definition Model, which is part of Microsoft’s Dynamic Systems Initiative to simplify and automate developing, deploying and operating connected systems.  The System Definition Model is a layered model that can be used to represent the structure of applications systems, the application hosting environment, the network and operating systems environment, and the hardware.  Whitehorse focuses on the top two layers of the model, namely the applications layer and the applications host layer.  The application layer allows the user to describe the structure and behavior of application systems where design can be synchronized with code, while the application host later allows the user to describe a model of the application hosts. 


In Whitehorse these layers translate to the following –

At the application layer:

  • A Distributed Services Designer to whiteboard services that make up a service-oriented application, write code and keep code in synchronization with design
  • A Susbsystem Designer to configure these services into deployable systems
  • At the application host layer:
  • A Logical System Architecture Designer to capture metadata about the deployment environment, and drive designs in system design based on infrastructure
  • A Subsystem Mapper to bind and validate the application design against the data center description


Together these Whitehorse design tools allow users to build Web Services-based connected systems.  Whitehorse helps bridge the gap between architects and developers by enabling application architects to create metadata rich designs that can be given to developers and used directly as the starting point for their work with no translation requirements.  The toolset increases the likelihood of rapid and successful deployment by allowing users to validate their application design against the description of their data center and to correct the design early before coding begins.  Whitehorse also increases the value and lifetime of design documents by ensuring that design information can be kept synchronized with changes to code.  This set of integrated model-driven design tools enable productive “Design for Operations.”



posted on Friday, February 20, 2004 6:59:22 PM (Eastern Standard Time, UTC-05:00)  #    Comments [3] Trackback
# Thursday, February 19, 2004

DevDays is Monday

Monday New York will host the first DevDays of the year! I will be doing the opening keynote (along with fellow RD Andrew Brust) and a session on Web Security-threat modeling.

The keynote demos are all on virtual PC drive images, I got the Blue Screen of Death on a Win 2003 Virtual PC Image. Go figure. I have noticed that it is faster to run VPC on an external disk. Here are some tips that came my way if you are a VPC user:

Biggest perf tip is to put the VPC Virtual Hard Disks (VHD) to separate disk spindles from the operating system.  The biggest perf issue with VPC is related to disk I/O … and by making the VPC fight with your OS and swap disk make this issue much, much worse.  Additionally, today’s USB 2.0 and Firewire external hard drives run on a fast interface bus (Firewire does have some advantages over USB 2.0, but both are excellent), have a large (8MB) buffer and spin at 7200 RPM, as opposed to 4200 RPM for most laptop HDD. 

Also, note the tip below regarding “Run Virtual PC at Maximum Speed” … this will give a boost to the VPC’s thread priorities at the expense of the host OS applications.  Depending on what you are using the VPC for, this may be exactly what you want. 

From a PPT Deck:


•       Ideally Virtual PC performance is at:
•       CPU: 96-97% of host
•       Network: 70-90% of host
•       Disk: 40-70% of host
•       However this is only for optimized guest operating systems running typical loads for a single process
•       The Virtual PC team’s aim is always to provide the fastest possible solution while not compromising compatibility

•       While virtual machines are not slow – there is always the potential for an unusual application to cause performance issues

Performance Tuning

•       Guest Performance – Preferences
•       Check “File … Options”
•       Running guest in background: Enable “Run Virtual PC at Maximum Speed”
•       Running a test on multiple guests: Enable “All running virtual machines get equal CPU time”
•       Memory
•       Host should have a minimum of 256MB, 512MB – 1024MB recommended
•       More memory is recommended for running multiple virtual machines simultaneously
•       Each guest should be allocated memory like it would on a physical machine
•       Virtual machines cannot use paged memory on the host system

Additional Disk Optimizations

•       Virtual Hard Disk size
•       Compress them
•       Defrag guest
•       Clear unused sectors ( Cipher, Eraser, etc.)
•       DO NOT attempt this step on a differencing drive – it will expand the disk to maximum size and you cannot compact it.

•       Compact using Virtual Disk Wizard
•       Enable NTFS compression on host operating system
•       Trades off performance for file size
•       Virtual Hard Disk performance
•       Place the .VHD files on separate spindle from host OS
•       If using Undo or Differencing Disks, place them on an additional spindle

posted on Thursday, February 19, 2004 3:41:17 PM (Eastern Standard Time, UTC-05:00)  #    Comments [7] Trackback
# Wednesday, February 18, 2004

Climbing Mt. Rainer, Missing Advisor DevCon


I speak at lots of developer conferences around the world each year. Last year I spoke in front of over 20,000 people at over 15 events on 4 different continents. Besides making many new friends and visiting awesome places, the most rewarding thing about speaking is meeting developers and trying to help solve their problems. I remember still helping a young developer in Kuala Lumpur last year (along with Fernando) with the DTS Package from Hell. She came to me with it printed out and we spent a long time fine tuning it. (If you are reading this, please drop me a line and let me know if it all worked out!)


A lot of people ask me how I became a “famous” international conference speaker.  I tell them to have no fear of:

  • Speaking in front of large crowds (the #1 fear in the USA is public speaking, #2 is death, so the person giving the Eulogy at the next funeral you go to is worse off than the dead guy)
  • Flying
  • Admitting that you are not smarter than your audience and that the only reason why you are on stage is that you made every mistake in the book and are willing to admit it


Also you need someone somewhere to take a chance on you. That is what the folks at Advisor did about 7 or 8 years ago when they selected me to speak at one of their events. For that reason I have always “returned home” and spoken at an Advisor DevCon every year. Actually the last time I missed an Advisor DevCon, was the spring of 1999 (my girlfriend was in college, now I feel old).


This year, I am climbing up Mt. Rainer again with Kevin and Gary from my Everest trip.  We are going to sleep in the actual crater, kept warm by the volcano’s heat. We are doing this ourselves (Not to help the evil RMI.) Unfortunately it conflicts with the dates of the next Advisor DevCon taking place in Las Vegas from June 6th to 10th. Good speaking buddies like Ken Getz and Tom Howe are always headlines as well as folks from Microsoft like Robert Green (who has been speaking at DevCon for as long as I have been going-which is 1996).


So go check it out. You can read about my hike up Rainer in the blog, but will miss the content at DevCon forever. J


posted on Wednesday, February 18, 2004 10:30:43 PM (Eastern Standard Time, UTC-05:00)  #    Comments [1] Trackback
# Wednesday, February 11, 2004

Vacation Time!

Off ot Maui, see you in a week.....

posted on Wednesday, February 11, 2004 3:42:17 AM (Eastern Standard Time, UTC-05:00)  #    Comments [1] Trackback
# Monday, February 9, 2004

Sure it is Fast, but How Much does it Cost?


I was quoted today in eWeek saying that the SPEC benchmarks for Web Service performance are useless unless they include price per performance statistics. Come on IBM, show us the money.

posted on Monday, February 9, 2004 3:46:31 PM (Eastern Standard Time, UTC-05:00)  #    Comments [22] Trackback
# Friday, February 6, 2004

You Have Photos


Last year I took about 4 gigs of photos around the world. I choose to post a select few and have put them on line yesterday (Finally!)


A few trips have already been up, you can get all the photos here.


The trip to Tunisia for the NDC 2003 in June was a lot of fun.  Beach, conference, Carthage, Tunis and lots of smoking J.


The next week I was speaking at TechED in Barcelona.


In August I scaled Mt. Rainer with Kevin and Joel.


In last August I spoke at TechEdD in Kuala Lumpur, before heading to Mt. Everest and India.


This year I promise to get my photos online faster.  Last week I spoke at the MDC in Egypt. Some photos are here.

posted on Friday, February 6, 2004 2:11:20 PM (Eastern Standard Time, UTC-05:00)  #    Comments [14] Trackback
# Monday, February 2, 2004

Mandatory Death Penalty Required


The author of the MyDoom.b virus has left an apology inside of his code saying that he is just doing his “job”, which implies that some other evil person is paying him to write the virus.


How about this: I am sorry that you are and your employer are still alive and breathing. I propose a mandatory death penalty for internet virus authors. That will sure deter people from funding and writing them. On top of that a $100 fine for every individual who opens an email virus and spreads it around. You can pay that $100 to some global organization to pay for a reward to lead to the virus creator’s capture.

posted on Monday, February 2, 2004 5:52:19 PM (Eastern Standard Time, UTC-05:00)  #    Comments [3] Trackback
# Sunday, February 1, 2004

DevDays Sessions

I will be doing two sessions at DevDays in New York and Newark:

Threats and Threat Modeling and the closing keynote: The Future of Microsoft Development Tools.

See you there!

posted on Sunday, February 1, 2004 4:36:21 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0] Trackback
# Saturday, January 31, 2004



I always get a lot of email correspondence from attendees after a conference, but since I have been home in New York I have gotten over 40 emails from attendees of this week’s MDC in Cairo. They are all very warm and thankful emails, I appreciate each and every one of them. I will get back to all of them too very soon. This was a great show.

posted on Saturday, January 31, 2004 10:30:34 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0] Trackback
# Tuesday, January 27, 2004

Its Official, Raise Your Glasses, We’re Gonna Party to Damascus


The MDC is over as soon as it has started. We speakers received the most warm thank you and good bye from the attendees as I have ever had.


I spoke for about 7 hours straight. Four sessions with no breaks since the attendees had so many questions.


I had a blast talking to all of the Egyptians. We talked about Egypt’s bid for FIFA in 2010 (World Cup) and politics et al. Lastly we took a boat cruise and I danced with a Belly Dancer at a real Egyptian wedding.


All of the code from my sessions will be on gotdotnet.com soon.


See you all next year!

posted on Tuesday, January 27, 2004 11:27:24 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0] Trackback