# Friday, November 13, 2009

Earlier this week, Microsoft released SQL Server 2008 R2 November CTP (Microsoft needs to hire some people from Apple to do something about the naming of their products.) I learned while at TechEd Europe 2009 that the version of SQL Server Management Studio (SSMS) that ships with R2 CTP3 has support for SQL Azure. So I downloaded the CTP (I had to do it in the speaker room, the speaker hotel blocks just about everything on its “free” wifi) and got rolling.

After installing, I decided to play around with the SQL Azure support. I was able to put my login credentials right into the SQL Server connection dialog and did not need to specify a database in the “Options” menu like I had to do before.

image

I was able to play around with SSMS and Azure and create databases tables, views, etc (via TSQL, not dialogs). Most importantly, SSMS does support the Object Explorer for SQL Azure!  We can’t change the database as we can in other community tools, however, this is still a beta and it has come a long way so far. SSMS supports most of the functionality that you will need to get started with SQL Azure.

image

Enjoy!

Technorati Tags:
posted on Friday, November 13, 2009 5:02:34 AM (Eastern Standard Time, UTC-05:00)  #    Comments [0] Trackback
# Thursday, November 12, 2009

Just a few weeks ago Microsoft released Visual Studio 2010 Beta2. Last week Telerik put its Q3 release live into production. One of the cool new Q3 features is that OpenAccess now works seamlessly with Visual Studio 2010. That means you can target .NET 3.5 or .NET 4.0 using either Visual Studio 2008 (.NET 3.5) or Visual Studio 2010 (.NET 4.0).

I will do a quick demo with Visual Studio 2010, SQL Azure, and OpenAccess. With OpenAccess Q3 installed, I fired up Visual Studio 2010 and started a console project targeting .NET 4.0

image

While the project will target the .NET 4.0 Framework, we have to do one small thing to make it work. By default the project type is “.NET 4.0 Client Profile” so we have to change that to a straight up .NET 4.0 project type. The way to do this is to right click on the project and select properties. In the properties dialog Application section, you will see Target framework;  select .NET 4.0 and you are good to go. (Visual Studio will have to close and reopen the project for you.)

image

Next we have to fire up OpenAccess via the Enable Project Wizard. When I start the Enable Project to use ORM Wizard, OpenAccess asked me what database to use, and as I showed before on this blog, Q3 now supports SQL Azure natively. Notice that the wizard will prompt you to put in your SQL Azure credentials and will give you the basic template for your server name: tcp:<sqlazureid>.database.windows.net.

image

Note: Depending on your setup in Visual Studio 2010, you may have to use the Server name without the tcp: and use the syntax UserName@sqlazureid. Visual Studio 2010 will give you an error in your setup if the default does not work. If you get this error you would enter the following for your SQL Azure credentials:

Server Name: sqlazureid.database.net (no tcp:, so for example p28drog84.database.net)
User Name: YourSQLAzureUserID@sqlazureid (for example: Stevef@p28drog84)

Next you will want to map some SQL Azure tables to OpenAccess entities. This can be done pretty easily, just by running the Reverse Mapping wizard. Here you can select your tables to map. By default OpenAccess will also now map the foreign keys of each entity as a primitive type in addition to the complex type. This will help a great amount if you are using your entities in conjunction with any data service such as WCF or ADO .NET Data Services. (More on that later.)

image

Once you have mapped your entities, you are free to work with them. You can use the OpenAccess LINQ implementation (which has went through a major overhaul and is in line with the LINQ to SQL and LINQ to Entities LINQ implementations.) As I showed last time, you can write a simple LINQ statement to filter all the Customers by a certain country as shown here:

   1:  static void Main(string[] args)
   2:  {
   3:      IObjectScope dat = ObjectScopeProvider1.GetNewObjectScope();
   4:      //LINQ Statement   
   5:      var result = from c in dat.Extent<Customer>()
   6:                   where c.Country == "Germany"
   7:                   orderby c.CompanyName
   8:                   select c;
   9:      //Print out the company name  
  10:      foreach (var cust in result)
  11:      {
  12:          Console.WriteLine("Company Name: " + cust.CompanyName);
  13:      }
  14:      //keep the console window open  
  15:      Console.Read();
  16:  }

 

image

Enjoy!

posted on Thursday, November 12, 2009 11:20:25 AM (Eastern Standard Time, UTC-05:00)  #    Comments [0] Trackback
# Wednesday, November 11, 2009

For me at least. After delivering three sessions at TechEd Europe, I have to turn around and head home and then turn around and head out to the PDC (I have an agile birds of a feather session there, more info later.)

It was great speaking and I also helped out at the Telerik booth. During the slow time, the whole team took a break and were brave enough to trust me to manage the booth all by myself. (I did not break anything!)

See you all next year!

posted on Wednesday, November 11, 2009 8:51:26 AM (Eastern Standard Time, UTC-05:00)  #    Comments [0] Trackback
# Tuesday, November 10, 2009

Last summer Telerik released the Oslo Comparison and Migration Tool. It is a tool that is available free for the community. It allows you to compare two Microsoft code named “M” files, see a visual diff, and then merge the results. (M is the code name for a new data modeling language from Microsoft.)

Telerik has expanded the tool to allow comparison of items in the SQL Server “Repository” and then do the same visualdiff and them merge the schema. Developers who have been playing with the M language and repository will find it very useful to have a tool that will allow comparisons and migrations, since the requirements of our applications are always changing! :) Pretty cool.

Just a note: Telerik will be updating the tool as soon as Microsoft makes some “M” and SQL Server “Repository” related announcements next week at PDC. Stay tuned!

posted on Tuesday, November 10, 2009 1:34:25 AM (Eastern Standard Time, UTC-05:00)  #    Comments [0] Trackback
# Monday, November 9, 2009

I am in Berlin for TechEd 2009 while Germany is celebrating the 20th anniversary of the Berlin Wall falling. Today most of us take for granted the society we live in, however, when I was growing up Eastern Europe was “the enemy”, all colored red on a map. We were not free to do business with the “eastern block”, nor were we allowed to visit without permission. Today that is all gone and I now work for a company that was behind the “iron curtain”, a company that would never have existed if the Berlin Wall did not fall.

Last night we walked down by the Brandenburg Gate and downtown Berlin. I listened to amazing stories from my colleague at Telerik, Jan Blessenohl. Jan is German and was in university in 1989. On November 9th, he actually traveled to East Berlin to buy some cheap textbooks when the protests overwhelmed the Berlin Wall and when it fell he was right there at the Brandenburg Gate standing on the wall, a part of history.

It is amazing to be here today…

Update 1

The speaker gift at TechEd was a piece of the Berlin Wall!

Update 2 (Photos!)

I went to the Brandenburg Gate area near Potsdamplatz this evening to watch the ceremonies. What was really cool was that there were 1,000 foam dominos lined up to fall, each decorated by 1,000 artists around the world. Because there were 1,000 of them and it was pouring rain, I got to get up close to them and take lots of photos.

IMG_0765

Also a photo of the Brandenburg Gate:

IMG_0768

posted on Monday, November 9, 2009 4:25:15 AM (Eastern Standard Time, UTC-05:00)  #    Comments [0] Trackback
# Saturday, November 7, 2009

Next week I will be speaking at one of my favorite events, TechEd Europe, this year held in Berlin. While Barcelona is still my favorite city in the world, I am glad that we are in Berlin this year, since Monday is the 20th anniversary of the Berlin Wall falling, and our world changing forever.

I will be speaking on:

I speak on Tuesday and Wednesday, and the event is SOLD OUT. I hope you were lucky enough to get a ticket. I’ll be hanging out at the Telerik booth when I am not speaking if you want to come and say hi.

image

Technorati Tags: ,
posted on Saturday, November 7, 2009 3:17:24 AM (Eastern Standard Time, UTC-05:00)  #    Comments [0] Trackback
# Friday, November 6, 2009

I have been supporting PalDev, the first (and I think only) .NET User Group in Palestine for many years. It started as a vision of Jihad Hammad a friend of mine, about 6 years ago. Goksin Bakir, Malek Kemmu, and some others in the community have also rallied behind PalDev.  This is a user group that had its first meeting in a refugee camp, then moved to Al-Quds Open University. Now they have almost 200 members and just helped launch Windows 7 and organize Microsoft’s first ever TechDays in Palestine.

The event was a great success, held over three days in three cities in Palestine. Attendance at the first day in Hebron, was about 250. Goksin was suppose to speak at the event but did not have the proper visas and was turned away at the border, so he went to Jordan and did a LiveMeeting!

This is a region with a tremendous amount of political instability, to say the least. I encourage all members of the community to help out, contact Jihad and do a session via LiveMeeting, or travel to Palestine and deliver a talk. You won’t regret it and you will do more to bring peace to the Middle East then all of those politicians out there.

You can read Jihad’s post here.

img02

 

Technorati Tags:

posted on Friday, November 6, 2009 3:19:44 AM (Eastern Standard Time, UTC-05:00)  #    Comments [0] Trackback
# Thursday, November 5, 2009

I am in Hong Kong speaking at the Hong Kong International Computer Conference. It is a great conference, it focuses on IT as a driver for innovation and economic transformation. I was lucky enough to be doing one of the keynote presentations on how technology is so disruptive and how cloud computing changes entrepreneurship. In my talk I mention Ray Kurzweil’s Abstraction of Moore's Law, which can be summarized as saying that the next 20 years will see as much technological innovation as the past 100.

I represented Microsoft Hong Kong in this talk, and after the speech lots of people came up to me to chat. I got to talk to tons of folks at the conference: I got to talk to students and professors at Hong Kong University, the folks from One Laptop per Child, entrepreneurs (including a dude building some amazing robotics), people form NGOs, and local software developers. We got to talking about how the new technology reality has drastically changed business models. Think about digital media, the music industry has changed forever, old business models just don’t work anymore.

This got me thinking. Microsoft recently announced a great offer for Visual Studio Ultimate (yet another SKU). But the world has changed. Web 2.0 is here! So I say: All SKUs of Visual Studio should be free.The goal should be to get Visual Studio out to everyone, for free. I know that we have Express versions of these products, and for the most part, they are very capable, but I mean the real deal, Visual Studio Ultimate.

Now I know what you are thinking: Steve, have you gone soft on me?

Of course not.  I am still a disciple of Milton Friedman and a firm believer of free markets and economic incentives. But that does not mean you have to actually sell something to make money on it. I am thinking of Visual Studio 2.0.

For example, there are four versions of Visual Studio as far as I can tell. (And the fact that I have no idea is a problem.) There are the free express versions, Professional, Premium, and (the new SKU) Ultimate.

image

Microsoft should do away with all versions and give away Ultimate (without MSDN) to anyone who wants it. My mom could go and download it if she wanted to. Just have to provide some demographic information and have a Live ID.

The startup page in Visual Studio would be ad supported (and you can’t make it go away, so you will see it each time you load Visual Studio.)  I could see Telerik or our competitors wanting to sponsor that page-but not in a “pay us a million dollars model”, rather as a pay per conversion model. Basically Telerik and our competitors would pay a small fee to be on the startup page and be able to stream ads to the developers and each Telerik license sold, Microsoft takes a cut.  Note to Microsoft, since this was my idea, can Telerik have an exclusive on that page? :)

In addition, in exchange for the free Visual Studio, Microsoft will get anonymous data from the developers. What country you are in, the specs of the developer machine, installation experience, etc. Also how many projects were started in C# v VB v F#, etc. Silverlight v Web, etc. Imagine if Microsoft knew all of this data!! I want to know how many lines of C# code in Brazil were written for Windows Forms last week.

Microsoft can then sell ad space based on your environment. Think about a C# developer in Poland working mostly on Silverlight. On the startup page next time there are offers (in Polish) for Silverlight tools, conferences, books, or even job offers. How much would Dell pay to market to every developer in Australia with Visual Studio installed on an “underpowered” machine? The vendor would only know who you are if you actually clicked on the offer.

Microsoft can also make money by using Visual Studio as a sales engine for MSDN. MSDN does not really have a “sales force” and Visual Studio can be a “loss leader” for MSDN.

But MSDN’s business model would have to change as well. Why not have MSDN (not the software part) evolve into a Visual Studio based Facebook/Linkedin social network for developers. You can only get into your “MSDNFacebook” via Visual Studio. When you are coding, Visual Studio can automatically update your status (Stephen Forte is currently breaking the build….) Imagine hitting F1 and be brought to a MSDN forum search on that line of code as one option. Every .NET developer in the world would be a member of this social network! Want to find a user group? No problem! Imagine the collaboration opportunities. A whole new world of revenue opportunities would open up to Microsoft, including an IPO of MSDNFacebook! :)

In addition, the MSDN software pricing model would change. Microsoft can sell fractional MSDN licenses and specialize MSDN for local markets and different developer types. Maybe you only want MSDN for Web Development. MSDN is expensive since it includes big things like Windows Server and Exchange, etc. (I have never installed Exchange, nor will I ever do so.)  Maybe you can have MSDN options where that is excluded. Kind of like a menu where you customize just want you want and pay only for what you use. Sell more with less. (Sound familiar?)

Of course if you want the ads and the anonymous data collection turned off, you can pay an annual fee. If your employer is paying that annual fee, they can opt out of certain content, such as a job offer coming your way, etc.

Visual Studio 2.0 would be awesome. Developers get free software and more collaboration, vendors get to tap into the entire ecosystem, and Microsoft makes more money while collecting a tremendous amount of metrics, metrics that will drive new features, service packs, etc.

Maybe this will be one of the great announcements next week at the PDC……..

posted on Thursday, November 5, 2009 6:56:41 AM (Eastern Standard Time, UTC-05:00)  #    Comments [0] Trackback