Time to get seriously hands on–Windows Phone (Silverlight), Azure, C#4 & Futures, EF4/WCF Data Services & Futures

This past 2 months has brought a slew of new technologies into my life. The biggest surprise was the families new Epson Artisan 725 All-in-One  inkjet which replaces the retched Epson R800. ThatR80was crap from the moment I got it, but I suffered thinking that when it did print well, I was getting something that was superior to what the multi-function amateurs were getting. Was I ever wrong. The fact that I suffered – as did my entire family – under the R800’s reign of garbage is unacceptable. The last straw came when we needed in cartridges for an emergency project and B&H Photo is the only place the tocks them reliably, it was a Saturday, so no B&H that day – so my wife decided she just build a new machine – why not – costs just about as much as the cartridges.  At first I resisted the multifunction machines – I wanted image quality – prosumer stuff. But everything was gigantic and I had no faith in the high end – so we picked the Artisan for about $200 and picked it up at Staples. Within 5 minutes of unpacking it, it was on my wireless network, all 4 machines could print to it – and printing like never before. The scanner was also a huge surprise. So, if you haven’t bought a printer in 3-5 years, do your self a favor and something like this – it frees your mind and lowers your stress level and increases family harmony. Though you will be buying more plain and photo paper. But this was just that tip of the iceberg.

For quite some time I have been following and doing the occasional hello world spike on a bunch of technologies that have happened to catch my fancy. I like the Azure services and I like the way they integrate tightly to the standard dev experience, and yet are very open, friendly and interoperable – cost effective too. But, I haven’t personally, on my own, put any code into production – lotta whiteboards, but not nearly enough running code. This needed to change.

Three things – aside form having small kids and a day job – were getting in my way. The plethora of new core and ancillary features that I also want to get up to speed on. I have been a fan of Entity Frameworks (sneer if you like) and in particular I have always loves the simple elegant power of WCF Data Services 4.0 (nee Astoria) and oData – I am also very excited about some of the futures stuff they have cooking. Plus, any time I get to chat with Pablo Castro is time well spent. Then looking at some of the language & framework  changes and stuff from the community – MEF comes to mind – RIA Services. This list goes on and on. And we are not even touching on the Web Matrix stuff.

The other major piece was the release of Windows Phone. I held out. Put my Android desires on hold and waited. So far I am pleased. Let’s see what I say after this series is complete. I have a bit (read very limited) Silverlight experience. But, I have been itching to get out of the browser for some time now – and this was the perfect excuse. This is also perfect time for me to do some stuff that will run on the awesome set of services offered up by Fran, Hoi & Patrick in Azure and Bing). V2 of this endeavor will certainly find me talking identify and Live with Angus, which is always fantastic.

The final – and most daunting obstacle was simply getting my self back into a place where I could write code without if being pure hell. I has been more years that I would care to remember since I put any of my own code into production. Heck, I haven’t written any POC code for over a year – unacceptable! But getting back on the horse can be scary.

So I am arming myself with some new books (primarily Joseph Albahari’s “C# in a 1,000 page nutshell” and Petzold’s older Programming in the Key of C# and his latest Programing Windows Phone. The additional trick here is I am trying to use an iPad to be the reader for these books.

My experience with the iPad if the past two weeks has been no love affair, I find reading books – books that you are just reading – not working with, is fine. I prefer eInk to the light bulb, and al the swirls and swooshes, but it is serviceable reading a straight up book.  For a manual or instructional text, well this is what we will be testing out.

So with all that going against me, I have set a goal to have a Windows Phone app, in the Marketplace, by the new year. The app will be simple. It will focus around a particular task in lower school education, if will run on the windows phone, use Azure and Bing service as well as some that are quite familiar to the community. It will be the kind of app ScottGu will be searching for in a year or two  – I should be out of beta by then.

I will try to lay bare all of the pains I face as I re-enter the practice of building. When I find myself stuck, I will take little time of to show you my iPad unboxing experience – shot with my Windows Phone. I will also likely do a little monologuing on the iPad as a book replacement.

Folks, It’s late thanksgiving night. I have already beaten the l-Tryptophan, but now I am plain old sleepy. Time to sign off, fire up Albahari and see if I can get past Literals, Punctuators & Operators.

I sincerely hope that all of you can feel as thankful as I do tonight.

All the best,


Messenger Connect – Making your data more portable while retaining control over its use

Angus Logan has posted about Microsoft’s effort to allow for data portability over the net with Windows Live Messenger Connect. From what I remember from conversations with Angus, the point is not creating YASN (yet Another Social Network) but giving you some tools to thread the ones you belong to together.

Angus’ words are here, in his post he lays out a few of the core principles that guided their approach. They are:

1. Data Portability (you own your data) – I feel strongly about this one and am glad they have this listed as number one.

2. You have control over your data – this is tough in practice, but I am very glad they have this as a core principle. Time will tell on this point.

3. Right Data for the Right Scenario – This may already be part of points 1 & 2, but as we move forward into a world that is more location aware and thus better able to grasp the context you are in (in a car, with a client and 2 of your co-workers who are your ski buddies) – when you fire up a device that is using shared content, it should really only display the lowest common denominator of content.

The issues at play here, as well as the interaction models are pretty complex. It will be interesting to see how well Microsoft can engage the User Experience – Interaction Design community to help them understand how this can be designed into their experiences and the benefits it brings.

I am looking forward to digging into this and further discussions with Angus.

See me at Mix10 today – presenting at 1:30 – Breakers J

I will be delivering a presentation titled Peanut “Butter & Jelly: Putting Content Management Back into Context”.

The talk is not really about Content Management Systems themselves – but rather how the mere discussion of them can be a symptom of a larger problem. The talk will deal with the current economic and market conditions many of our clients currently face and how Digital Agencies such as the one I work for can really help, if you let us.

So if you are at MIX10 in Las Vegas today, please stop on by.

Graffiti CMS – now available on Codeplex

a couple of weeks ago, Rob and Scott, shared the news (via Twitter and email) that Telligent’s Graffiti CMS would be Open Sourced and that more news would be out on Dec 11. As promised, a few more tweets were made and the Graffiti CMS (presently powering this humble blog) is now on CodePlex.

It is worth calling out – for the folks who don’t RTFM – that, aside from downloading the source, you need to follow these two steps to get going:

It is worth noting a few things form the release notes:”

December 11, 2009 -jQuery: we should now fully support jQuery instead of prototype. -routing: routing is now used and writing files to disk has been made a control panel option. -control panel/web.config: The control panel has been cleaned up quite a bit and many configurations settings once made in the web.config now have a web UI. -vistadb: due to licensing constraints, we are unable to ship vistadb directly with the source. We will be working with them to make this a provider available for download from their site.

On my machine, I was able to build (bunch of warning are thrown) and display the site, after copying the Graffiti.mdb file out of trunk/data and putting the copy in Trunk\src\Graffiti.Web\App_Data. For those of you shrieking in horror – this is really just a quick and dirty test – the web.config is set for Access out of the box (see about VistaDB issue).

Time to start digging around.

Telligent, thanks for putting this out there for all of us.


LinkedIn API with C#

There have been a few people chipping in trying to hit the LinkedIn API via .NET. There have been some issues with oAuth. Faith Yasar has posted the the most complete example I have seen.

I am looking forward to giving this a spin tomorrow morning!

Thanks in advance Faith.

Tagged as:

#1 Nick on 12.03.2009 at 10:56 AM
OK – I got Faith’s stuff working straight away. Thanks again Faith – now, time to dig in.

#2 Rahul on 12.23.2009 at 8:16 AM
First of all. Thanks very much for your useful post.

I just came across your blog and wanted to drop you a note telling you how impressed I was with the

information you have posted here.

Please let me introduce you some info related to this post and I hope that it is useful for community.

There is a good C# resource site, Have alook


Thanks again


#3 Posicionamiento web on 6.15.2010 at 7:21 PM
Whata are the benefits of linking linked with c sharp? i think there is some sort of plugin that will do this, if i found it, i will be posting it here

#4 ezmoz on 8.15.2010 at 3:38 AM
Thanks for the reference. I have checked that out.

Good job mate.

More PDC 09 -THE jumping off point for Silverlight 4 – and more

Tim Heuer has the definitive post on getting started with Silverlight 4 Beta – A guide to the new features.

There was a bunch of stuff I am still digesting from PDC 09 – I need to get some time to think about OData – I know Pablo Castro was speaking about it in a session I think it was this one.

All in all I was just getting dug in with a little side project that was pulling together VS2010, MVC2, Silverlight 3, Azure, JSON, and a certain Google API, when all this PDC madness started raining down.

The only “complaint” I have is that MVC2 beta according to Phil Haack (well – it is true and it makes sense) does not have tooling support yet in VS2010 because they are on a different release cycle… so no I have to slide out of VS2010 to do the MVC stuff and the Azure stuff – so I am in 2010 mostly for the Silverlight part… happily everything is running nicely side by side.

And MIX is just a few months away…


Updated to include most of the Bob Muglia half – this is really just quick and dirty coverage.

Ozzie Keynote

Seesmic – Loic Lemur – will now be a development platform – Windows version you will be able to write plugins – also will release a Silverlight version, replacing their AIR app.

Azure – will demo Tomcat in Azure with memcached (not sure if this is on the VM images)– 6 data centers – xDrive (azure blobs mapped to NTFS drives! – you get a persistent filesystem)

WordPress – Mullenweg – on Azure – with MySQL and Apache – upscale instances – via config adding Apapche and MySQL instances. Failblog guys launching a new site oddlyspecific.com running on WordPress/SQL Azure/Azure Storage – Windows Azure Storage plugin for WordPress

Microsoft Pinpoint – pinpoint.com – “Dallas” – open catalog and marketplace for Data – public and commercial data – uniform interface and licensing model. It is Data as a Service. http://pinpoint.com/en-US/Dallas – very interesting – data.gov, esri and others – plus a marketplace to publish your own.


Bob Muglia

Don Box/Chris Sells muck about with C++ in Azure and mention OAuth WRAP (REST based …)

Kelley BlueBook – using Azure for extra serving capacity – showed SQL Azure Synch – I am still all about Red Gate – can’t wait to see what they have brewing.

Project Sidney – Secure Connection between your Azure app and your own datacenter – think web app runs in Azure, but the database is in your datacenter (IPv6 and IPSec) – available next year as a beta.

Next Year – Server Images – a la EC2 – remote desktop into them… the whole shooting match.

AppFabric – Middle Tier Service that is avaialbe in Beta now – Workflow, database caching, wcf – runs on Windows Server and also in Azure.. Interesting… Looks like this is where Velocity ended up – http://msdn.microsoft.com/en-us/windowsserver/ee695849.aspx

IntelliTrace – this is pretty darn cool – but is it available on all SKUs

MVC Beta 2

but alas… the tooling is not in VS2010 as they are on separate cycles…

Sorry had to duck off to do some work at this point….