Thursday, November 16, 2006
It took Mark moving to Microsoft to make this happen! Our server team has been doing a great job in shielding me from the fact that all the Sysinternal utilities are typically individual downloads. That is, until a newer version is available of one of them (typically Process Monitor) and I get ahead of the server team in updating our servers!
There was a brief moment where all was right with the world...
This has been released for a while, but has been below my radar. Since I'm on a campaign to help bring awareness to our development and operational teams on how easy it is to identify the source of a process crash if you have just a little bit of knowledge, I thought I'd throw it out there.
The presentation is given by Mark Russinovich, of Sysinternals fame and before being assimilated by Microsoft, during TechEd 2006. I was actually at TechEd 2006, but missed Mark's talk this time around. I did have the opportunity to spend a full day with him and David Solomon during the Microsoft PDC 2005. They give an incredible presentation on the topic of windows internals and if you haven't seen it, I highly recommend it!
Since Mark has made it up to Seattle, Microsoft has released their Windows Sysinternals website, which is the new home of www.sysinternals.com.
Monday, November 13, 2006
Here are some quick reference links to our experiences.
Shanghai, China - Day 1
Shanghai, China - Day 2
Shanghai, China - Day 3
Shanghai, China - Day 4
Shanghai, China - Day 5
Shanghai, China - Day 6
Shanghai, China - Day 7
Sunday, November 12, 2006
This turned into a marathon day...
Had the morning to ourselves, so we hit Nanjing Road to do some sight seeing and shopping.
Found our way to Shanghai Pearl City off of Nanjing road. It was pretty interesting. We definitely bought a few items, but don't believe we actually got the best deal we could have.
Wandered around for a bit before meeting back up at the hotel for lunch.
After that, it was a quick trip to the airport and off to the USA!
Of course, our flight inbound to Chicago O'Hare was asked to hold due to inclement weather, then diverted to Minneapolis for fuel, before making it back to Chicago.
Thankfully, a co-worker had enough sense of mind (even while under the influence of sleeping pills) to recommend we call ahead to check the flight status of our connection to Dallas. After we discovered that our flight had been canceled, we made arrangements at a local hotel.
After an early morning hop to Dallas, I dropped a co-worker off at his house and then headed to Allen (home). Once there, I enjoyed the family briefly, showered, and then packed everyone up and headed back out to Six Flags in Arlington for our annual company picnic, where we shut the place down around 6PM.
What a day... *whew*
Today, we really focused on test cases, fixed a couple of bugs, and started applying polish to the client side implementation.
Its clear our partner has the technology savvy to implement the integration, what really remains now is for us to continue the development cycle striving for project milestones.
There are a couple of undefined areas, mainly around support and escalation of issues, but we believe we understand them and now just need to get management buy off on a plan for the process to put around them.
The confidence level from both teams is very high right now; we've established a necessary amount of trust in each other to get the job done.
I think we've done a great job, from all teams, on getting through this week. What remains to be seen is how much of it 'sticks' after everyone has gone back to their respective regular jobs, and only time will tell that.
After such a successful week, it obviously calls for a celebration party!
We met up with the business folks and headed to a restaurant named 1221. This restaurant has a little more modern menu when it comes to Chinese food and a good atmosphere. Its a little hard to find, but well worth it!
After 1221, it was a quick cab ride over to the 'Port-a-man'. This is actually the Portman Ritz-Carlton, but you have to speak cabbie lingo to get there! Our final destination was Malone's, but we couldn't get our cabbie to understand that.
At Malones, we enjoyed drinks and entertainment by the band Art 6. Although, 'enjoyed' and 'entertainment' are always subjective to each individuals taste!
Our partner was up late last night making necessary changes to their current architecture to support integration.
This primarily consists of identifying the intermediate storage for incoming and outgoing data (queuing). Once we defined where the data was going to live, we covered how to process it and further more, how to do it all in a recoverable fashion.
At the end of today, we had a data model to play with, test scripts to populate the data model and a windows service that would process the data.
The teams worked really well together considering the language barrier.
One caveat to this is that our partner sandbox actually lives in Dallas, TX. Our partners office network was a 10MB connection that was nearly fully utilized. What this meant to our test efforts is that the environment is fine for a functional integrated test, which is its intent.
However, we quickly identified that the connection is next to useless for remote administration of our Dallas sandbox. We discovered this when we needed to make minor contract changes for our inventory service, it took nearly 2 hours to get the very minor changes published, most of this was due to access via Citrix to our MK network. Luckily, this is isn't considered 'normal' use, but its definitely something to consider!
The partners data center in Shanghai, which is where their code base typically runs, has a much better connection. In the event that the office network becomes completely saturated, they can publish their code to their 'test' environment in their data center for additional, or more complete testing.
In the meantime, to expediate our process, I wound up hosting our MK Dallas sandbox environment on my local laptop, which made it much easier to setup various test conditions and to make change.
Another hugely productive day with the China teams. Today mainly focused around reviewing best practices, performance and scaling, error reporting and escalation. Throw in the odd discussion about date/time handling and data precision and we were done.
Since some significant modifications need to happen with our partners systems to complete the integration with their systems, we've pretty much accomplished all we can do.
However, our original goal of prototyping the order life cycle is still on the table. Instead of mocking the backend systems, we all agreed that its time to roll up the sleeves and begin designing and planning the necessary changes. This is predominately the responsibility of our partner, however, both MK USA and MK China have been invited to participate in the discussions tomorrow.
We were treated to lunch at Moon River Diner, which is an American style diner located in the heart of Pudong District. Had a great blue cheese and carmalized onion burger, with a Coke-lite.
Dinner back at the hotel, then a night cap at the Jade on 36 bar.
Our first day working with our China partner. After a short kick-off meeting, the technical team breaks off and the whiteboarding begins.
We made a HUGE amount of progress today! Language was only a barrier in that it took time for translations to occur for discussions. Mainly we worked through the technical aspects of our service architecture, how to get clients to connected, data flows, etc.
We all 'spoke' the same language (C#) when it came time to code. Having everyone from each team in the same room, as opposed to conference calls, was a huge confidence builder in each other. Now I believe when we are forced to communicate through conference calls, they will be much more productive.
Our MK USA team celebrated the days progress with dinner at the Grand Hyatt Shanghai on 56th floor. Most of us had the tenderloin, which was superb!
This hotel was amazing! I'll post pictures of it later; it had incredible views of Shanghai! Turns out, this was one of our first choices in a residence, but it was booked.
We travelled all the way up to the 85th floor, trying to get to the observation deck, only to find that we had to go back to the first floor to buy tickets. Full of food and wine, and somewhat disoriented from leaning over the rails to look up/down the open interior of the hotel, we decided to head for home once we made it back to the first floor.
Wake up call (Ray) at 7:30am. Showered and down for breakfast by 8:00am, great breakfast buffet! For ~$60.00 (USA), you can get breakfast for two. *ouch*.
Since the rest of the party was either under the weather, or arrived later than we did, we set off to wander around the block or two within the hotel.
We found our way down to The Bund, of course, we were on the wrong side of the river from the official Bund, but after seeing both sides, all I can say is it looked the same to me.
We are within walking distance of the Pearl Tower and restaurant; its prominently featured in every skyline photo of Shanghai.
The hotel is around the corner from a new mall: The Super Brand Mall. Yup, you guessed it. It features name brand department stores from both China and the US.
With the humidity, we were soaked in sweat by the time we got back. Another shower.
We met the rest of our party to strike out to find lunch. Where we took a cab ride to the official Bund. After walking around, we found a resturant that was part German beer garden and part Chinese resturant. Food was pretty good, all local cuisine. At least we found something with some spice (calamari something), which was hard for me to find last time through!
While out and about we found:
Probably another half dozen monuments that I failed to catch the name of.
Since they closed 'the market', we did our shopping at the Yu Gardens while out, since we don't know what time we'll have later.
A couple of drinks while discussing goals for tomorrow and dinner at a hotel resturant before Another Shower and turning in.
One truism that I'd like to share is that I've stayed at 5 star hotels throughout the US and now a couple in China: the room service food always sucks, but you can always find Kelloggs Brown Sugar and Cinnamon Pop Tarts at any convenience store! Yumm....
Our party arrived at Pudong Airport (PVG) in Shanghai, China, on Saturday, more than a little weary from our 17 some odd hours of travelling from Dallas (DFW) through Chicago (ORD).
I was lucky enough to sit next to a co-worker for the Chicago to Pudong segment. Couple of things we figured out ( and no, it doesn't include world peace):
- Gin is a great way to pass the time. We played 6 hours of it. At the end, I was only 6 points ahead. Of course, that still makes me the winner! :)
- There should be a version of Survivor based on long haul international flights in coach. There would be things like immunity challenges won by making it to the bathroom without waking sleeping travellers, or who can 'hold it' the longest. There is all the drama of the popular show; personality clashes with the other passengers sitting behind you in coach, near physical confrontation over the slightest perceived insults! Maybe Jeff Probst will pick up our idea!
Well, after surviving the tedious bordeom of the flight, managing the hurdles (ingore those images of OJ Simpson dashing through the airport that just popped into your mind, its just a figure of speech) at the airport, we checked into the Pudong Shangri-La in Shanghai. By far the nicest hotel I've ever stayted in.
There is nothing quite like exiting the baggage area at the Pudong airport, you've got a throng of people all excited to see you, photo flashes going off in your eyes! There is a red stripe your supposed to follow that looks remarkably like a 'red-carpet', that terminates with a white gloved attendant holding a sign with your name on it, who quickly whisks you into your own personal car. So this is what [insert your favorite Hollywood star here] feels like!
BTW, if you search for Shangrila in MSN search, you'll receive *ahem* questionable results. Evidently Shangrila has the same meaning in many countries!