# Friday, January 23, 2004

The Airtrain to Egypt


I leave tonight for the 2004 MDC in Cairo, Egypt. I am going to take the new Airtrain to JFK airport for the first time.


The Airtrain has been a long time coming. I am not a big fan of the Airtrain, since it does not provide a single-seat ride from JFK to Manhattan like the London’s Heathrow Express does. I have a three seat ride to JFK. So to travel from my house on E86th Street:


6 train to 51st street

Transfer to E Train to Jamaica

Transfer to Airtrain to American Airlines Terminal


While it will only be $7 total to get to JFK in about an hour, I am a little let down that I have to ride three trains to get there. That said it is better than a $40 taxi ride that is going to be stuck in traffic. And in the past I took the A train to Howard Beach, but that was more like 1.5 hours and a two sear ride for $2.

posted on Friday, January 23, 2004 8:54:52 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0] Trackback
# Thursday, January 22, 2004

Getting Ready for the Middle East Developers Conference


On Saturday the 2004 MDC starts in Cairo, Egypt. Bill Gates’ keynote is on Sunday and I deliver four sessions (back to back to back to back) on Tuesday. This will be a test of my stamina, I look at this as “power presenting”. My 4th or 5th time to North Africa in the last 2 years (and second visit to Egypt in the last 11 months) has be very excited, so I am sure I can keep up. Plus the attendees in Africa rock. My sessions are:


Except for the datagrid, these are all new sessions, the Cache session should be simple but super duper practical. I will cover custom caching and fragmented caching. We will look ever so briefly at the future, but this session is about how to increasing your site’s speed NOW, not when Whidbey ships.


Other RDs will be in the house besides Mr. Gates:


  • Patrick Hynds (Boston)
  • Abdelmalek Kemmou (Morocco)
  • Goksin Bakir (Turkey)
  • Selcuk Uzun (Turkey)
  • Hossam Khalifa (Egypt)


posted on Thursday, January 22, 2004 9:59:33 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0] Trackback
# Sunday, January 18, 2004

Tech*Ed 2004 Sessions


The Tech*Ed 2004 Web Site is up and running (register today!) and sessions are already on-line. I have two sessions up and ready to go:


Create Smart XML-Aware Applications with SQL Server “Yukon

Efficient and Secure Data Retrieval in Your Middle Tier Using Stored Procedures and ADO.NET


Tech*ED in the US and Europe are the technical events of the year (and social gatherings too). Hope to see you there. Can’t wait to do some surfing in La Jolla.

posted on Sunday, January 18, 2004 7:42:08 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0] Trackback
# Friday, January 16, 2004

Scottie Boy Wonder


Uber geek, RD for Portland, and all around great guy, Scott Hanselman, spoke at the NYC .NET Developers User Group last night. He spoke about Web Services and the crowd of about 100 loved every minute of it. Amazing that so many people came to see Scott when it was just about zero degrees last night in New York. Scott was not shutting up about his new Microsoft Watch, which I mocked and then compared to my supercool Casio Film Watch that Kathleen gave me for Christmas that has a databank and world time. Scott was so jealous.

posted on Friday, January 16, 2004 8:09:22 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0] Trackback
# Thursday, January 15, 2004

DevDays is here!

Microsoft has announced the dates for DevDays in the US and I will be speaking (keynoting w/ Andrew Brust) in New York City on Feb 23rd and Newark, NJ on March 4th. Register now and save money!

posted on Thursday, January 15, 2004 8:32:16 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0] Trackback
# Wednesday, January 14, 2004

New Years Resolution


I never really  make them. But I do like to do things each New Years. One is reformat all my computers and reinstall everything. A nice clean start. I also like to clean the hard to reach places in my apartment, like take the refrigerator out and clean in the dark abyss back there. Also change the batteries in the smoke detector, you get the idea.


One thing I do along with the reformat of the hard drives is clean up Outlook. I archive ootles of mail and go through my contacts and try to keep them in order. I always have a few friends who have like 3 or 4 entries in my contacts because they have a work mail, pop, and hotmail/yahoo. I had well over 500 contacts in my contact folder in Outlook. I have no idea how up to date it is, I know in 2003, I moved twice and had 4 different mailing addresses. I am also one of those annoying people who have a work email, personal pop email and a hotmail account (which is basically a porn only account). So I must be causing others problems, how many of my contacts are the same.


So I ran a cool tool that I have been playing with for a while called Plaxo. It is basically a free tool that allows you to mass email your whole contact list and have people verify their data over the web. It works cool and they don’t spam you, I have been a member of Plaxo for months. Your contacts don’t have to even join, just verify on a web form their info is correct. Of course as my pal Conor says “You give me control over my own Contact record, watch out, evil things may happen!!!”.


After I ran it, many people had changed information, or gave me more info than I had before. Also lots of old friends saw me in their inbox and emailed to say hi. I also got 36 bounces that I have to track down the owners through other means. All in all, a great experience.


How does Plaxo make money? Beats the hell out of me. I do hope that they stay around tho, I want to run this again next year.


So check out Plaxo if you have the time.

posted on Wednesday, January 14, 2004 8:44:07 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0] Trackback
# Tuesday, January 13, 2004

My 90 Seconds of Fame


Yesterday was my professional acting debut. Well sort of. I was on camera and said lines and was paid and it will all be on TV. They had the bright camera lights and said “Action” and “Cut” a lot and took many takes. So I am going with that.


Basically my buddy Adam needed a male in his early 30s with brown hair, who had a flexible schedule on Monday afternoon for a re-enactment of a real life situation for The Maury Povich Show (Adam works there). So Maury’s standards for actors apparently is low and I got the part. I played a professional photographer who was accused of being a peeping tom. The whole shoot took about 2.5 hours and the re-enactment when it airs on Maury will be about a minute and half. I got paid and also got a free dinner out of it all, not too shabby. Plus I got to mock Adam to the amusement of his co-workers.


Lord knows this blog will have the date and time of the airing of the program.

posted on Tuesday, January 13, 2004 6:40:07 PM (Eastern Standard Time, UTC-05:00)  #    Comments [2] Trackback
# Monday, January 12, 2004

With the power of the Pentium IV Processor, Scott Hanselman could be Jesus


That is something that Scott Hanselman and I came up with at TechEd Malaysia-we tend to have a lot of fun together. . Well I have always had issues with partying too hard with Scott, but anyway, he will be in town to speak at the NYC .NET Developers Group this Thursday night. Here is his topic:


Zen and the Art of Web Services (or How I Stopped Worrying and Learned to Love WSDL)


Will Web Services save the world? More importantly, will they save you time? Are Web Services just a bunch of hooey? We’ll separate the good from the bad and dig into the WHY of Web Services and the HOW of the .NET Framework. We’ll go low level and sniff packets on the wire and we’ll go high level and design business documents with XML schema. We'll auto-generate Business Domain Objects and Messages. We’ll discuss the meaning of the WS*.* specifications, interoperability and get our heads around the "Zen" of Web Services and see where .NET succeeds and where it falls down. This talk will be as technical as you want it to be, but it will also be valuable for the Business Person or Project Manager who really wants to answer the question "Web Services: So What?" Doesn’t sound like the typical Users Group meeting, does it? You’ll just have to come by and find out!

posted on Monday, January 12, 2004 5:44:53 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0] Trackback
# Sunday, January 11, 2004

How the das Blog Cache Engine Works (And a Caching tip in General)


Clemens and I may disagree on SQL Server v XML storage, but the das Blog Cache engine is real simple and we agree on it. What we do is cache the main page for 1 day (86400 seconds). We also varybyparam for the date and none. This way the page will stay in cache for either 1 day or until it is edited again (via a comment or an addition blog entry.)


I was putting together some samples for the MDC in Cairo next week and made a real simple page that caches a page based on the query string (varybyparam) and a file dependency (an XML file).  Here is an example in a simple page using an ASP .NET datagrid against Northwind:


<%@ Page language="c#" Codebehind="Cache_VaryByParam_Filedep.aspx.cs" AutoEventWireup="false" Inherits="DataGridCSharp.CachingDataGridFile" %>

<%@ OutputCache duration="86400" varybyparam="CustomerID" %>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >




<meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">

<meta name="CODE_LANGUAGE" Content="C#">

<meta name="vs_defaultClientScript" content="JavaScript">

<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">


<body MS_POSITIONING="GridLayout">

<form id="Form1" method="post" runat="server">

<asp:DataGrid id="DataGrid1" style="Z-INDEX: 101; LEFT: 16px; POSITION: absolute; TOP: 72px" runat="server"></asp:DataGrid>

<asp:Label id="Label1" style="Z-INDEX: 102; LEFT: 24px; POSITION: absolute; TOP: 40px" runat="server"







Then all we do is add a file dependency, in the case of das Blog it is the actual XML file that stores the data. This way the page will stay in cache for either 1 day or until it is edited again (via a comment or an addition blog entry.) Here is the code behind for the simple Northwind example from above.


          private void Page_Load(object sender, System.EventArgs e)


              //we are setting the OutputCache to 1 day and the varybyparam for the querystring

              //<%@ OutputCache duration="86400" varybyparam="CustomerID" %>       

              //override the cache if this file changes



              Label1.Text="Page Generated At: " + System.DateTime.Now.ToString();

              // simple databinding for testing

              SqlConnection conn =new SqlConnection("server=(local);uid=sa;pwd=;database=Northwind");

              //open the connection


              //can set a command to a SQL text and connection

SqlCommand cmd = new SqlCommand("Select * From Orders Where CustomerID='" + Request.QueryString["CustomerID"] +"'", conn);

              SqlDataReader dr;


              //open a datareader

              dr = cmd.ExecuteReader(CommandBehavior.Default);


              //do the databinding

              DataGrid1.DataSource = dr;



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