# Friday, 05 February 2010

.NET Ninja in training, Peter Bahaa, shows us how to build a WCF Endpoint using Telerik OpenAccess entities and the Data Services Wizard beta 1.

Telerik Data Services Wizard Beta1-REST Collection from Stephen Forte on Vimeo.

Technorati Tags: ,,

posted on Friday, 05 February 2010 07:12:26 (Eastern Standard Time, UTC-05:00)  #    Comments [0] Trackback
# Thursday, 04 February 2010

 SQL Server Modeling (formerly "Oslo") is a new model driven development paradigm. Developers can model their applications using the new M language. M allows you to define a structure for your data as well as represent it in graph based values. Representing values in the M language is very similar to JSON, which will allow you to represent your data in name/value pairs. Here is an example of M values in action:

People
{
     { Id=>1, Name=>"Steve", Age=>36},
     { Id=>2, Name=>"Mike", Age=>29}
}

Last summer, Telerik created the industry’s only LINQ to M (Values) implementation. The Telerik LINQ to M implementation allows the developer to use pure LINQ statements with blocks of M values, pure text or the results of a transformed DSL. With the new SQL Server Modeling November CTP there are some changes to the M specification, so we have updated our core DLLs to accommodate this. Download it for free here. Shoot me any feedback you have.

image

Enjoy!

Technorati Tags: ,,
posted on Thursday, 04 February 2010 02:50:39 (Eastern Standard Time, UTC-05:00)  #    Comments [0] Trackback
# Wednesday, 03 February 2010

.NET Ninja in training, Peter Bahaa, shows us how to build a WCF Endpoint using Telerik OpenAccess entities and the Data Services Wizard beta 1.

Telerik Data Services Wizard Beta1-WCF from Stephen Forte on Vimeo.

Technorati Tags: ,
posted on Wednesday, 03 February 2010 01:55:44 (Eastern Standard Time, UTC-05:00)  #    Comments [0] Trackback
# Tuesday, 02 February 2010

.NET Ninja in training, Peter Bahaa, once again returns to show us how to build a WCF .NET Data Service (aka Astoria) using Telerik OpenAccess entities and the Data Services Wizard beta 1.

Telerik Data Service Wizard Beta1-Astoria from Stephen Forte on Vimeo.

 

Technorati Tags: ,
posted on Tuesday, 02 February 2010 01:55:39 (Eastern Standard Time, UTC-05:00)  #    Comments [0] Trackback
# Monday, 01 February 2010

The content middle men (Hollywood studios, record labels, book publishers, etc) are suspicious of digital content. I predicted last month that they will fight back this year against digital distribution, most notably against Netflix and Amazon. Last month Warner Brothers held Netflix hostage and threatened to withhold its content unless Netflix held back new releases for 30 days. Netflix had no choice but to capitulate.

Inspired by their motion picture brothers’ success with Netflix, book publisher Macmillan recently held Amazon hostage. They threatened to withhold their entire collection of books, print and digital, unless Amazon raised their prices for the Kindle. Amazon challenged, but lost and yesterday had to capitulate as well. New books from Macmillan will now cost between $12.99 and $14.99 for the kindle. (FYI, Steve Jobs of Apple said that the iPad’s pricing model will be identical to Amazon as well.) I am now embarrassed that my first book was a Macmillan imprint.

You can’t blame Netflix and Amazon, they had a gun to their head. They are pioneering a new way to legally consume digital content, so we always knew that the middle men would fight back. While the studios hold all the power today, that will not be the case tomorrow.  People who use Netflix never go back to the old model, same with the Kindle. (I say, if it is not on the Kindle, it doesn’t exist.) As Kindles, iPods, iPads, Sony eReaders, etc, all grow in numbers, the studios and publishers will no longer be in a superior position, and the market will remember the barriers they are putting up today. This day is almost here, my 68 year old uncle now streams movies with Netflix.  My parents get the Kindle. My mom has an iPod. An entire generation is now growing up with iTunes and Kindles-my 13 year old niece will not leave the house without her iPod and Kindle.

Today consumers and innovation lost a battle. But the war is far from over.

Technorati Tags:
posted on Monday, 01 February 2010 06:04:38 (Eastern Standard Time, UTC-05:00)  #    Comments [0] Trackback
# Sunday, 31 January 2010

Apple and Google are the current darlings of Silicon Valley. Anything they do is golden and for the longest time they formed a tag team with Apple building great consumer electronics and Google leading in search and other search related applications like Maps and GMail. Google Search, Google Maps, and GMail power the iPhone and helped it be such the huge success it was. The sweet relationship between the two tech giants was only growing.

Now it is war.

First Google made Android. That pissed off Apple somewhat, even causing the Google CEO to quit Apple’s board. Google use to get the location data from each search on the iPhone and Apple started to withhold it last year. Apple feared that Google would use this valuable data to do market research and to build behavior metrics into the Android. If Google knew every search performed on an iPhone and the location where the user was standing when making that search, that is very valuable market research information if you are thinking of entering the mobile market.

Then last summer Google Voice was rejected by the Apple App Store. As I wrote on this blog several times about Google Voice, it is disruptive technology that AT&T is threatened by, so Apple rejected it, showing us once again that Steve Jobs controls the iPhone very tightly. While this spat was ugly, it was just a lovers quarrel. The FCC got involved and some high profile tech luminaries ditched their iPhones over this, but it was a not a declaration of war.

Then came the Nexus One. Pearl Harbor. Now Google is right on Apple’s turf. Apple decided to buy a mobile advertising company to retaliate. The war is on.

Even the iPad is a front in this war. ChromeOS started to ruffle Apple’s feathers. While ChromeOS is a threat to Microsoft in the NetBook space (but Windows 7 for Netbooks is something like $7), ChromeOS is on a collision course with the iPad. In the battle for lower end light weight web device laptop/netbook/slate market, it will be ChromeOS vs the iPad.

Steve Jobs decided to get into the rally the troops mode now that war is on. As reported by Wired, Jobs went ballistic at an Apple company town hall meeting when the topic of Google was brought up.  He claimed that Google wants to kill the iPhone, but “we won’t let them!” He said that Google’s mantra of “don’t be evil” is “bullshit.”

Wow, this venom is usually reserved for Microsoft. Speaking of which, Apple is rumored to replace Google as the default search application on the iPhone with Microsoft's Bing. Warfare makes strange allies.

Technorati Tags: ,
posted on Sunday, 31 January 2010 22:07:10 (Eastern Standard Time, UTC-05:00)  #    Comments [2] Trackback
# Wednesday, 27 January 2010

After you read Gizmodo or Tech Crunch, read this blog next.

With more hype and fanfare than the President’s State of the Union Address, Apple launched the much anticipated iPad today. Despite the surprisingly many show stopper (for me at least) complaints like: no camera for web calls, no USB ports, no widescreen form factor, AT&T 3G, no HDMI output, and no Flash and Silverlight support, the iPad will probably sell well at first. Then sales will drop off. Even though version 2.0 will have a USB port and an HDMI output, I don’t see the iPad being a massive break out hit like the iMac, iPod, and iPhones before it.

The reason why is because we just don’t want a tablet. The industry has been trying for years. Apple tried as far back as 1983 and failed. Microsoft has been trying for almost a decade and failed (Tablet PCs are only 2% of PC sales.) If you have a smart phone and a laptop, where does the slate/tablet fit in? Apple says you will use the iPad to surf the web, however, the web will be pretty crippled without any Flash or Silverlight support. Nor can you make video Skype calls. Apple says you will read books, but the battery life and eye strain will drive the eReader crowd back to the Kindle. Apple says you will watch TV and movies, however, with a 4:3 (non widescreen) form factor and without HDMI output you will watch less and less media.

Since I am not going to ditch my smartphone and I am not going to ditch my laptop, I don’t need another device to carry around. The iPad can’t replace a laptop without multitasking. It is too big to replace my phone. Apple was figuring that maybe it would replace my Kindle, however, the Kindle’s power is that it does just one thing and one thing great: it is an awesome platform to read books without any eyestrain. Nothing else.

The iPad is not a category killer. I guess Steve Jobs is human after all.

Technorati Tags:
posted on Wednesday, 27 January 2010 23:07:43 (Eastern Standard Time, UTC-05:00)  #    Comments [1] Trackback
# Tuesday, 26 January 2010

Do you know Excel? Answer a few quick questions at the Excelerators Quiz site, and find out how you rate. Let me know your results and you could even win a brand new HD monitor from Microsoft! The prize you can win will include a Dell ST2310 23 inch flat panel monitor, keyboard, and mouse. (Over $250 value.)

Here is how you can win the goods:

Go take the quiz and report here your results in the comments, or ping me on Facebook. Take the quiz between today and February 4th. I will decide the winner and send the results to Microsoft. (Tiebreaker will be a PowerPivot challenge I will dream up.)

This is one of only 5 or so “official” blogs where you can win; you can only enter once. :) You also have to be a US citizen to win (sorry to my buddies in Hong Kong!).

Good luck!

 

 

 

 

 

Technorati Tags:
posted on Tuesday, 26 January 2010 10:10:08 (Eastern Standard Time, UTC-05:00)  #    Comments [13] Trackback
# Monday, 25 January 2010

I’ll be speaking at the Great Indian Developer Summit from April 20-23 at the Indian Institute of Science in Bangalore, India. This will be my second time to the GIDS and it will be hard to top last year’s adventure of Video Drivers, Prison Riots, and Silverlight, but I will try.

developersummit (1)

I will be speaking on .NET day on:

  • Business Intelligence Design Patterns: BI Made Easy!
  • Sharing Code between .NET and Silverlight (This is mostly on SL 3.0, but will I show how you can do it with SL 4.0 too, which is *much* easier!)

On web day I will be speaking about:

  • Building Line of Business Applications with Silverlight 4.0

Sessions are only 50 minutes, so almost no slides and almost all demo.

For the Friday Seminar, I will be doing a 3 hour workshop on Agile and Scrum. I am going to try to make this completely interactive. If you are going for a Certified Scrum Master or Certified Scrum Developer, this is a great head start.

Telerik will be a Silver Sponsor and should have a booth and (if the customs agents like us) lots of Telerik Tee shirts to give away.

Hope to see you there!

posted on Monday, 25 January 2010 21:25:19 (Eastern Standard Time, UTC-05:00)  #    Comments [0] Trackback
# Saturday, 23 January 2010

Last week Telerik released the Data Service Wizard Beta 1. It will automatically create for you the end points for an Astoria, WCF, or RESTful service. New in the beta of the Data Service Wizard is the ability of the wizard to automatically generate the DataServiceKey attribute required to make relationships in Astoria work.

When you use "Astoria" (ADO.NET||WCF) Data Services, by default Astoria tries to map the primary keys in your entities using a convention. This is important for your service to work. The mapping works out of the box for the Entity Framework, however, if you are using LINQ to SQL or Telerik Open Access, it does not since some of your tables may have a primary key that will not map to the CLR primitive types that follow the Astoria convention for key mapping. (Order Details in Northwind bombs for example since both of its composite key are entities and not primitive CLR types.)

There is a very simple fix for this. You have to make your entity a partial class and then decorate the entity using the DataServiceKey attribute, in the constructor. Recently we added support for this in the Data Service Wizard: by default we do this for you by adding a “DalDataServiceKeys.cs“ (or VB) file to your data access layer project automatically.

image

The code is show below for our DalDataServiceKeys.cs file shown in the Telerik.OA.DAL project above. You will notice on Line 36 we will even convert the complex type to a primitive CLR type so Astoria can handle it.

   1:  namespace Telerik.OA.DAL
   2:  {
   3:      using System.Data.Services.Common;
   4:   
   5:      /// <summary>
   6:      /// Category Class Data Service Key Fix
   7:      /// </summary>
   8:      [DataServiceKey("CategoryID")]
   9:      public partial class Category
  10:      {
  11:      }
  12:      /// <summary>
  13:      /// Customer Class Data Service Key Fix
  14:      /// </summary>
  15:      [DataServiceKey("CustomerID")]
  16:      public partial class Customer
  17:      {
  18:      }
  19:      /// <summary>
  20:      /// Employee Class Data Service Key Fix
  21:      /// </summary>
  22:      [DataServiceKey("EmployeeID")]
  23:      public partial class Employee
  24:      {
  25:      }
  26:      /// <summary>
  27:      /// Order Class Data Service Key Fix
  28:      /// </summary>
  29:      [DataServiceKey("OrderID")]
  30:      public partial class Order
  31:      {
  32:      }
  33:      /// <summary>
  34:      /// OrderDetail Class Data Service Key Fix
  35:      /// </summary>
  36:      [DataServiceKey(new string[]{"OrderID","ProductID"})]
  37:      public partial class OrderDetail
  38:      {
  39:      }
  40:      /// <summary>
  41:      /// Product Class Data Service Key Fix
  42:      /// </summary>
  43:      [DataServiceKey("ProductID")]
  44:      public partial class Product
  45:      {
  46:      }
  47:      /// <summary>
  48:      /// Region Class Data Service Key Fix
  49:      /// </summary>
  50:      [DataServiceKey("RegionID")]
  51:      public partial class Region
  52:      {
  53:      }
  54:      /// <summary>
  55:      /// Shipper Class Data Service Key Fix
  56:      /// </summary>
  57:      [DataServiceKey("ShipperID")]
  58:      public partial class Shipper
  59:      {
  60:      }
  61:      /// <summary>
  62:      /// Supplier Class Data Service Key Fix
  63:      /// </summary>
  64:      [DataServiceKey("SupplierID")]
  65:      public partial class Supplier
  66:      {
  67:      }
  68:      /// <summary>
  69:      /// Territory Class Data Service Key Fix
  70:      /// </summary>
  71:      [DataServiceKey("TerritoryID")]
  72:      public partial class Territory
  73:      {
  74:      }
  75:  }

This will enable you to use Astoria with OpenAccess for all of the tables in your database. I converted my Tech*Ed “Data Access Hacks and Shortcuts” session demo to use OpenAccess and Astoria from the Entity Framework in less than 5 minutes. (I will show it and give away the code on my blog in a week or two.)

image

Enjoy!

Technorati Tags: ,
posted on Saturday, 23 January 2010 06:24:52 (Eastern Standard Time, UTC-05:00)  #    Comments [0] Trackback
# Friday, 22 January 2010

When Windows Mobile 6.0 shipped, Apple’s iPhone was just a rumor and Android was nowhere in sight. How times have changed, now Microsoft has been left for dead in the smartphone/mobile space.

We have been waiting, and waiting, for any news on Windows Mobile 7 from Microsoft. Two rumors leaked this week that lead us to believe that the long, long wait will be over soon.

The first, reported by WMExperts, claims that there will be news on WinMo 7 in the next two months, possibly at Mobile World Congress in Barcelona in mid Feb or CTIA in Las Vegas in late March. WMExperts also say that there will be two versions of Windows Mobile 7:

  • Windows Phone 7 Business Edition
  • Windows Phone 7 Media Edition

Also on naming, WMExperts says:

First, it's not Windows Mobile 7 but just "Seven," so that's how we're going to refer to the OS from now on. Also the phrase "Microsoft Zune Phone Experience" may be tossed around.

There is a lot of information out on the site including HD, live TV, XBox integration, Exchange integration, Silverlight, etc. Sync abilities are to multiple devices, the cloud (Live Mesh?) and PCs. I am starting to believe this web site, this all sounds like Microsoft: confused launch, multiple SKUs, names, and bad marketing.

The WSJ’s “All Thins Digital” site has rumor #2: Microsoft is making their own phone. Microsoft, in conjunction with HTC (the maker of the Nexus One, can you spell conflict of interest over in Taiwan?), will release the Microsoft branded “Zune Phone”. Details are sketchy, but the Zune Phone will have HD video and music subscriptions, so it is obviously targeted at the consumer space.

I predict that Microsoft will announce Win Mobile 7 at the Mobile World Congress in Barcelona in mid-Feb. The MVP summit is the same week in Redmond, so they can also inform the MVPs at the same time. (Steve Ballmer promised us last year we would be one of the “first to know”.) I am also going to speculate that the big developer announcements (Silverlight, etc) and the “Zune Phone” will be at Mix in Las Vegas in March. (Since I will not be at Mix, I suspect that they will give one away to each person attending, just like the PDC Tablet.) They can follow up with more details at CTIA the next week. (Also this is possibly why they moved the Visual Studio Launch to April, not to conflict with CTIA.)

Since Microsoft has waited for so long to release WinMo 7 and has done it with the Apple like secrecy, they have raised the stakes. With the hype around Android and Nexus One, and the sex-appeal of Apple, in order for Microsoft to stay in the game they have to really launch something special.

Indications are that WinMo 7 will build on top of everything Microsoft has done well in the consumer space: XBox and ZuneHD. The ZuneHD platform has gotten rave reviews, so building a phone on top of it makes sense. It would also explain why Microsoft was silent for so long on the phone, they had to first build the ZuneHD. Apparently there is good Twitter and Facebook support and via Live Mesh, you can edit documents on your PC remotely and sync them up. With awesome Office and Exchange support, that is huge for business users.

That all said, is this enough to stay relevant?

I think that Microsoft suffers from the fact that they are not named Apple or Google. Unfair, yes, but that is the game they are in. Media will immediately cover the blogs of the Apple or Google faithful and take away from any PR splash. Also since someone as lowly as I can figure out what is coming and when from Microsoft, expect Google and Apple to trump the day before the announcement. (Apple releases iPhone with SD card will dominate the news!!!)

In order to really shake things up, Microsoft has to take a gamble. They need to complete the revolution that Apple started and Google took to the next level.

As I have said before, the way Americans (and Canadians) buy mobile phones is broken. We buy crippled, subsidized  phones from carriers that lock us into an expensive contract. Apple changed that by making a phone that the carriers had no control over for the first time, however, they still got us locked into one carrier. Google changed the game by giving us an unlocked phone, but in reality you still have to deal with TMobile since the AT&T support is lacking and there is no CDMA version for Verizon yet.

In order for the Zune Phone to be disruptive, it has to be offered as both GSM and CDMA, unlocked, cost $150 (subsidized by Microsoft with Bing ads), and available at Wal Mart and Best Buy. If the phone is sexy enough where tons of people want it, they will go buy it at the local electronics store. Apple and Google will soon follow suit and we will be released from the tyranny of the carriers.

We’ll see what happens…

Technorati Tags:
posted on Friday, 22 January 2010 20:45:41 (Eastern Standard Time, UTC-05:00)  #    Comments [2] Trackback