# Thursday, April 24, 2008

Speaking at the NYC SQL Server User Group tonight on Database Design Patterns, the popular TechEd Session. Click here to register.

Meeting Location:
Microsoft New York City Office
1290 Ave of the Americas
Sixth Floor
New York, NY  10104

Meeting Time: 6pm.

Topic:

Database Design Patterns: Architecting the Right Data Model for the Right Application

Description:

Architecting an application starts with the database. Different applications need different data models. Fifth normal form is great for an OLTP database, but reporting databases need more of a flat denormalized structure and different Web sites need several different types of data models: eCommerce sites need different data models than traditional publishing sites. You need to optimize your data model for your application's performance needs. Concurrent users, data load, transactions per minute, report rendering, and query seek time all determine the type of data model you will need. See how different applications and different parts of an application can use different data models and how you can architect your database to fit into your application's needs and not the other way around.

posted on Thursday, April 24, 2008 9:45:00 AM (Eastern Daylight Time, UTC-04:00)  #    Comments [0] Trackback
# Wednesday, April 23, 2008

Microsoft released a tech preview of Live Mesh for developers today. Live Mesh is a software-plus-service platform that enables your PC and your other devices to “come alive” by making them aware of each other through the Internet. I was invited to the beta and so far I have been using the storage features and synchronization services. (Think of a Live Mesh aware TV set top device and season 4 of Lost downloaded on my PC.)

I can see road warriors like myself using Live Mesh quite often, all you have to do is upload a Word document to your virtual desktop and then it will be automatically be kept in sync on every machine and device I have. As long as it runs Microsoft operating systems, a limitation I can live with. (But support for Mac is coming soon I hear.)

While the marketing engine of Microsoft seems pointed to the consumers with their XBoxes and PCs, I think this software+services approach represents a change in direction for Microsoft. Using the software (Office 2007 + Vista) and the services (Live Mesh's synchronization and discovery services) developers can build some really cool business applications.

Not only can you sync documents and files, but you can also sync applications (via a two-way RSS or Atom feed). Once again Microsoft is showing its strength with the developer community. For example, a Web developer can build an app using any programming language and then sync that application across multiple devices and even other applications. 

Contrast this to what Google is doing. Google is trying to bring all of your applications from the desktop to the cloud. Microsoft is trying to get you to keep your desktop applications for their rich features and leverage the cloud for storage, synchronization, and collaboration. Microsoft is not pretending that we have uber powerful and cheap PCs and is using the cloud for infrastructure.

Will Live Mesh make Microsoft a player? Ray Ozzie thinks so. He has said that Microsoft now has to build software+services with a connection between devices (and their data) and people.

Its' a great time to be a developer.

posted on Wednesday, April 23, 2008 12:56:57 PM (Eastern Daylight Time, UTC-04:00)  #    Comments [0] Trackback
# Friday, April 18, 2008

I spent the week on Microsoft's Redmond campus for product team meetings and the MVP summit. One thing that always surprises me is the growth of Microsoft. I have been traveling out to Redmond to meet with the big evil empire since 1996. Back then I was like "holy cow there is a lot of growth." Now 12 years later, it is more of the same. Cranes everywhere, it looks like Dubai or Shanghai. Across the expressway, it looks like they are building a huge complex. I joked to my friends in the car that this is the new building to handle all of the new Yahoo! employees.

 IMG_1672

It is always amazing to me just how well Microsoft treats its 3rd party developers. Arguably we are the reason why Microsoft beat out Apple in the 1990s. Apple had user design specifications and an approval process, and Microsoft just treated us like gold; and we also were able to build anything we wanted and install it on Windows independent of Microsoft. While this may have made Windows less stable, it also made it a standard. Businesses can hire anyone to build them custom software, and that is still true to this day.

Apple is making the same mistake with the iPhone as they made with the Mac. They treat 3rd party developers poorly. Microsoft flew out 4,000 developers this week and showed us their roadmap and vision for the next three years, and some ideas that span out even further. (Watch out Amazon S3 and Google, when I can use SQL Server in the cloud, why do I need you?) They had frank discussions and never once said "we can't answer that question." (Even questions on Yahoo! sale and how far MS is behind Google in search.) This went up to the Ray Ozzie and Steve Ballmer level.

Apple does no such thing. As Wired Magazine points out, they are the new evil. They close down fan blogs and sue children who try to report on new features. We have to wait until MacWorld to get an announcement.

Memo to Steve Jobs: It would be nice to know in advance (like a year or two) about your new stuff. Then we can build apps for it. Giving us a half baked SDK with tons of restrictions (and a approval process that is draconian) will just have us build for other platforms like Java, Linux and Microsoft. Oh ya, your arrogance does not fit well with the software developer crowd-we think *we* are the center of the universe.

posted on Friday, April 18, 2008 10:05:43 AM (Eastern Daylight Time, UTC-04:00)  #    Comments [0] Trackback
# Sunday, April 13, 2008

Thursday, April 17, 2008
2008 Community Launch: Show Me The Data

Subject: 

You must register at https://www.clicktoattend.com/invitation.aspx?code=126827 in order to be admitted to the building and attend.
With the release of Visual Studio 2008 and the .NET Framework 3.5 comes a dizzying array of facilities for storing, querying and presenting data. Between new features in ADO.NET’s core; LINQ; The Entity Framework; new ASP.NET Data source and data bound controls; and the new data binding models in WPF and Silverlight 2, there are now so many new data features, that it presents a bit of a crisis. How are you supposed to learn all of these new technologies, much less continue to use the older ones with mastery? The answer is to understand each of these data access and data binding technologies in the context of the others. Many common concepts exist between these models and many of them can be combined. If you learn the generalities, you'll be able to master the specifics that interest you.
With that in mind, this session will start with a quick look at ADO.NET, typed datasets, Windows Forms and ASP.NET (including ASP.NET AJAX) data binding, and the enhancements to them in Visual Studio 2008. We'll then look at LINQ to DataSets, LINQ To SQL, The Entity Framework and LINQ to Entities and see how to use them with the old binding models. We'll finish with a look at WPF, its rich data binding model and how well it translates to Silverlight 2.0.

Speaker:  Andrew J. Brust
Andrew J. Brust is Chief, New Technology at twentysix New York, a Microsoft Gold Certified Partner in New York City. Andrew is lead author of Programming Microsoft SQL Server 2005 (Microsoft Press), serves as Microsoft Regional Director for New York and New Jersey, is a Visual Basic MVP and a member of Microsoft’s Business Intelligence Partner Advisory Council. Andrew is a Vice-Chairman of the New York Software Industry Association (NYSIA), a member of INETA’s Speaker Bureau and is a highly rated speaker at conferences throughout the U.S. and internationally. Often quoted in the technology industry press, Andrew has 20 years' experience programming and consulting in the Financial, Public, Small Business and Not-For-Profit sectors. He can be reached at andrew.brust@26ny.com.

Date:  Thursday, April 17, 2008

Time:  Reception 6:00 PM , Program 6:30 PM

Location:   Microsoft , 1290 Avenue of the Americas (the AXA building - bet. 51st/52nd Sts.) , 6th floor

Directions: B/D/F/V to 47th-50th Sts./Rockefeller Ctr
1 to 50th St./Bway
N/R/W to 49th St./7th Ave.

Swag List:                                                                                                           

  • · 5 NFR Launch Kits, including:
  • o NFR, legal copy of Windows Server Enterprise 2008 (64-bit and 32-bit)
  • o NFR copy VS 2008 Standard Edition
  • o SQL 2008 CTP (64-bit and 32-bit)
  • o Voucher for eval-only SQL 2008 Standard, redeemable when SQL 2008 is Generally Available
  • · 2 NFR copies Windows Vista Ultimate with SP1 with Windows Live Services, including 90-day trial of Windows OneCare
  • · 3 vouchers for a free 1 yr subscription to TechNet Plus Direct
  • · 1 Windows Server 2008 Application Readiness Resource Kit
  • · 1 SQL Server 2008 Technical Readiness Kit
  • · 1 .NET Framework 3.5 Developer Resource Kit
  • · 2 Copies, Virtualization For Dummies
  • · MS learning Solutions 40% off Exam Vouchers
posted on Sunday, April 13, 2008 2:07:35 PM (Eastern Daylight Time, UTC-04:00)  #    Comments [0] Trackback
# Friday, April 11, 2008

After I got home from some factories in Suzhou, China today I got a message from 23andMe that my genome mapping was complete! While I did not have time to really check the important stuff in detail (but I did check, I will not go bald, get cancer or have a heart attack statistically any more than the average guy), I did play around with my ancestors. There is an ancestor map, here is my Mom's map:

mom

And here is my dad's map (he has the exact same map as US President John Adams):

dad

Turns out that I have Western European heritage as well as some Indian Subcontinent heritage. Totally awesome.

More to come.

posted on Friday, April 11, 2008 6:09:39 PM (Eastern Daylight Time, UTC-04:00)  #    Comments [0] Trackback
# Friday, March 28, 2008

This week has been a nice vacation in Thailand in between a week of work in Penang, Malaysia and two weeks starting next week in China for a school trip with my MBA class for our international study program.

Last week in Penang, I meet up with the academic staff at the computer science department at USM (University Sains Malaysia) in Penang. We had a great time talking about how to bridge the gap between the research the students are doing and commercial applications. (I suggested that they work more closely with their alumnus to come back and teach classes on this very topic.) I walked the faculty and students through the technology used at my old company, Corzen-mostly the statistical models (cluster analysis), data mining algorithms, and grid/distributed computing. The student's eyes lit up.

IMG_1020

The whole reason why I was there was due to my friend Jihad Hammad, he invited me. Jihad was born and raised in Palestine and is taking his masters at USM. (This is his first time out of Palestine.) He is the founder of the Palestinian Information Technology Center (PIT), a non-profit to help people in Palestine learn about technology and PalDev, a Microsoft .Net User Group in Palestine-with 100+ active members at each meeting, a user group that sometimes has no place to meet so they meet at a refugee camp.

Jihad and I met online five years ago and collaborated to build the PIT and PalDev; we have been partners and friends for 5 years.I helped get the PIT center funding from various sources in the USA and helped get Microsoft recognition for the center (plus free software) as well as INETA membership for PalDev. While Jihad did all the hard work, I was able to lend him a helping hand over the years by making the right introductions to the right people.

This was the first time we met in person.

This is the power of the web, it brings people together and helps them do wonderful things. Two people who never met before can easily build trust, a friendship, and make a difference by using technology in a war zone to give people hope (and hopefully one day play a very small role in ending the violence.) This would not have been possible 10 or so years ago. That is the power of the WideOpen Web. Anything is possible, even peace in the Middle East via .NET. :)

Ok back to the mixed drinks by the beach...

posted on Friday, March 28, 2008 10:48:00 AM (Eastern Standard Time, UTC-05:00)  #    Comments [0] Trackback
# Tuesday, March 18, 2008

Thursday, March 20, 2008

WPF Meets the iPhone User Interface

You must register at https://www.clicktoattend.com/invitation.aspx?code=126266 in order to be admitted to the building and attend.


The iPhone is one of the most compelling and exciting user interfaces to appear in recent memory, with many innovations that make it a pleasure to use. How can you deliver a similar experience with your .NET WPF applications? In this session you will see how to implement these features in.NET as you watch the iPhone interface recreated (and running on a Windows laptop) using Windows Presentation Foundation (WPF) technology with both Visual Studio 2008 and Microsoft’s Expression Blend. You will also learn when it’s best to use VS 2008 or Expression Blend for different WPF tasks.

Speaker: 
Kevin McNeish, President and Chief Software Architect, Oak Leaf Enterprises, Inc
Kevin McNeish is a Microsoft .NET MVP, a well-know INETA speaker and trainer throughout North America and Europe including VSLive!, DevTeach, SDC Netherlands, and Advisor DevCon. He is co-author of the book "Professional UML with Visual Studio .NET", author of the book ".NET for Visual FoxPro Developers", authors articles for CoDe magazine and has been interviewed on the .NET Rocks! Internet Radio Show. He is the Chief Software Architect of the MM .NET Framework and spends about half his time on the road training and mentoring companies to build well-designed, high-performance .NET applications.

Date: 
Thursday, March 20, 2008

Time: 
Reception 6:00 PM , Program 6:15 PM

Location:  
Microsoft , 1290 Avenue of the Americas (the AXA building - bet. 51st/52nd Sts.) , 6th floor

Directions:
B/D/F/V to 47th-50th Sts./Rockefeller Ctr
1 to 50th St./Bway
N/R/W to 49th St./7th Ave.

posted on Tuesday, March 18, 2008 9:17:39 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0] Trackback
# Friday, March 14, 2008

All of the mainstream press is done talking about Mix last week. So I wanted to give my impression as a long time Microsoft watcher and developer.

First I have sat through hundreds if not thousands of keynotes over the last 15 years at Microsoft events. (Most recently I sat through one in Portuguese on Wednesday in Lisbon.  2700 developers, what a turn out!) Microsoft is really focused on the developer. They have a developer culture (that gets them in trouble with the mainstream press a lot) and treat developers like gold.

For all the great treatment, they will still turn up the PR engine at these keynotes, because while TechEd, PDC, and Mix maybe developer events, the press is still there. I noticed something different about Microsoft at Mix: honestly.

Case in point. In all of my years at keynotes, MS has never admitted to a mistake. They have come close by saying "Version 3.0 was slow, sorry. Version 4.0 out in XX months will be 10x faster! We rock! Cheer for us!"

They have touched some third rails like during the IE monopoly trial in the USA they brought a new computer out on stage and said "where is IE" in the middle of the demo. It was loaded with Netscape. That kind of poking fun at themselves was nice, but still not what I was looking for.

No at Mix they showed the maturity of an industry leader. They showed IE 7.0 not implementing CSS 2.1 standards. They then showed FireFox and Opera implementing it correctly. Then they said that they will fix it in IE 8 and showed us a demo to the point.

Wow.

Some of you may not think that this is a big deal. It is. It is Microsoft growing up knowing that they are not the only player out there, realizing that people depend on their stuff and they are willing to take responsibility. This is the first step in losing their arrogance.

Speaking of arrogance. That is my opinion of Apple at the moment. As a developer, the iPhone SDK is 1. late to the party, 2. not that compelling (I had similar tools for RIM 7 years ago and Palm and MS SmartPhone 5+ years ago) and 3. arrogant. I have to develop according to the Apple UI and deployment standards. Sorry Steve Jobs look in the mirror. You will see Bill Gates of 10 years ago. The person you hate is the person you just became.

A torch has been passed. Who will replace Microsoft as the arrogant one in the software space? It will take a few years for Microsoft to completely change and a few more years for that change to be accepted. I think buying Yahoo! and working in a mature manner with Yahoo! is the first step. Who will replace Microsoft? The likely candidates: Google or Apple.

posted on Friday, March 14, 2008 8:27:01 AM (Eastern Standard Time, UTC-05:00)  #    Comments [1] Trackback