Sharing Code with Windows 8 and Windows Phone 8

Another great day at VSLive in Las Vegas. Today was the really fun, and geeky, talk for me were we dive into some of the internals of Reference Assemblies and Type Forwarding that make Portable Class Libraries possible. You never know what you will find when you crack open ILDASM and start poking around. In addition I showed some neat tricks involving Windows 8 and Windows Phone 8 apps using my LeadPro app as a demo.

As with all my demos here at VSLive the all the code is available on GitHub at http://github.com/bendewey/LeadPro, you can also see all my slides here.

Thanks again to anyone who came out. I’d love to hear from you if you have any comments about my session or if you are writing apps. Feel free to add a comment here or reach out to me directly.

Make your App Alive with Tiles and Notifications

It’s great being here at VSLive in Vegas. I’d like to send a big thank you to everyone who attended my session, hopefully everyone had as much fun as I did. As I noted in my slides all of the code is available on GitHub at http://github.com/bendewey/ShopNow. My slides are available for download here.

If you’re building an app I’d love to hear about it, so please reach out to me either in the comments below or directly. In addition there are a number of resource, also mentioned in the slides, that may be help you in your journey.

Resources

Guidelines and checklist for tiles and badges – http://bit.ly/LITxz3
Guidelines and checklist for Toast – http://bit.ly/RKEkor
WNS Mobile Services Readme – https://github.com/WindowsAzure/wns
Push Notification Overview- http://bit.ly/RSXomc

Finally I mentioned that my company Tallan has been working hard creating a Shopping Reference App to demonstrate a complete application using many of the techniques mentioned in my talk. This app is designed based on the Shopping Idea Book and will be available Microsoft site shortly. In the meantime you can download it from the Tallan Ecommerce site in the top right.

Build 2012 Recap

The Adventure of Build 2012

This has been and exciting year for technology especially around Windows8. Shortly after Build 2011, last year, I began my work with Windows8 and completed my first book ever Getting Started with Windows 8 Apps. A large part of this year has been spent really understanding all the pieces of Windows 8 and the new Windows Runtime. That passion has extended further into really trying to get the message out and push others to embrace the true breadth of what this means for computing and our profession as software developers. At VSLive in August, where I was fortunately to be on the roster with some extremely distinguished speakers, I learned the extent to which Microsoft was really pushing this year with releases for virtually every product on the market. From all versions of Windows, Windows Server and Windows Phone, to Azure services from Office 365 to the new cloud based SharePoint offerings (codenamed: NAPA). This only intensified my passion and upon learning of a second Build conference I begun planning my next trip.

Unfortunately when Build registration opened up in early August I didn’t jump at the opportunity as quickly as others and by the time I finally went to register just 1hr and 20mins after opening it was already sold out. Despite my disappointment I registered for the wait list and kept my fingers crossed. Luckily for me they opened up registration a few weeks before the event and I didn’t hesitate this time.

Shortly before my scheduled departure I got word of the incoming Hurricane Sandy which, as we now know caused massive damage to my dear city of New York. The Sunday before my flight I spent over 4hrs on the phone with various parties trying to rearrange my travel in an attempt to reschedule my trip around the storm. After hunkering down for the duration of the storm, I woke to such devastation that I had already accepted the fact that my trip would not be happening. Luckily for my family and myself we escaped the wrath of the storm and awoke to power and internet unlike many of my friends and neighbors. With the family safe, I checked the status of my new flight (assuming it was canceled), and was shocked to see that it was one of the only 2 flights still scheduled for departure. Despite my skepticism, I left for the airport with such guilt and internal conflict that mostly killed my excitement about the event. In utter amazement I arrived in Seattle, WA on Tuesday night, just one day after hurricane sandy touched down and only missed 1 day of sessions.

Build Keynote

Day 1

I actually missed the day 1 keynote in person, but I had a chance to view it online. The biggest announcement of the day was the release of the new Windows Phone 8 Developer Platform (aka SDK). The real underlying theme of the event was designed to push developers to build apps and promote the next generation. To sweeten this message Microsoft gave all attendees a brand new Windows Surface RT tablet with touch cover (which I used to write this post), 100GB of SkyDrive storage, and a new Nokia Lumia 920.

While tablets and slates were used throughout the demos, I was happy to see Microsoft focus on the large (80in) screens, all-in-ones desktops, touch laptops, and the connected synchronization story around the ecosystem. The demos were nice and everything worked flawlessly.

Windows 8 was a big focus for the first part of the keynote, but there wasn’t anything that we hadn’t heard or seen at other venues. The day before the keynote, Joe Belfore announced Windows Phone 8 and all the features, like Kids Corner, NFC, and the all new Wallet app, among others. The Windows Phone team has done some great work, the features are great, but what’s really amazing, and what was highlighted at the keynote, were the developer features. The new Windows Phone 8 runs on the same NT Kernel as Windows 8. This is extremely important and enables cross development and shared code between virtually all aspects of the Windows ecosystem.

Day 2

The day 1 keynote was all about Windows devices and Windows Phone 8, day 2 was about the cloud and Microsoft’s push for infinite scale. In previous announcements Steve Balmer has discussed the change in strategy towards a devices and services company. While Microsoft is continuing their push for consumer adoption of Windows Azure, they are using Azure to support the services aspect of their new strategy. For me this is reassuring as is promotes a commitment to improving Windows Azure to everyone’s benefit. In addition to hosting many of Microsoft owns services and websites like Bing, MSN, and Office 365, Windows Azure is being used to support many abstractions on top of their infrastructure, such as Windows Azure Website, Mobile Services, and Media Services.

In addition to the various Windows Azure demos, the stage was graced the with ever popular Scott Hanselman and the red shirt of Mr. Scott Guthrie. They showed off the numerous new aspects of Visual Studio 2012 and the simplicity of publishing ASP.NET apps to Windows Azure via the publish settings and Azure command line tools. They were followed by another iconic face, Jason Zander. He showed us all the new features of TFS and the latest ways to keep your team productive with this new service.

Sessions

The keynotes at these conferences are typically littered with all the juicy announcements, but the real benefit of Build is the ability to meet and network with the Microsoft employees who are responsible for all these wonderful new features. It’s always difficult to decide which sessions to attend, but luckily they are all streamed online at http://channel9.msdn.com/Events/Build/2012 and I plan to follow-up on many sessions that I missed. The focus for me was Windows 8 as well as the new support for unit testing available in Visual Studio 2012. I’m going to use the remainder of this post to highlight some of the talks I attended and provide a brief synopsis from my point of view.

Graphics with the Direct3D11.1 API Made Easy (3-113)

While I’m not a C++ or game developer I was still interested in this talk. Phil Napieralski started by showing how developers can use feature detection to alter their games detail based on their hardware. This is something that I hope all game developers will take into account as I hope to play games on my Windows RT Surface and my desktop and they have drastically different graphics capabilities.

The team who build the AccuWeather app also graced the stage and talks about how C# developers can create hybrid DirectX and XAML apps using the SwapChainBackgroundPanel.

Performance Tips for Windows Store Apps Using XAML (4-103)

Now that the store is open and Microsoft is receiving numerous submissions for apps, various performance problems are popping up. Kiran has been involved in helping to troubleshoot many of these problems. In addition many developers are testing on development machines while their users use ARM based devices which can significantly reduce performance. Startup time was a major highlight for this talk and in XAML based applications, the number of XAML files that are parsed at startup can be the culprit. The primary recommendation is to reduce or delay any XAML that is not needed at startup to ensure the apps launches quickly. To do so, he showed how XPERF can be used in conjunction with WPA to analyze your app. There is a complex .bat file that is should be available for download on the session page and should help get you started.

Angle Brackets, Curly Braces, One ASP.NET and the Cloud (3-027)

If I was going to be at an 8:30am session after Beer Fest (a nice event on campus with good food and all kinds of local micro brews) there was nobody better to entertain than Scott Hanselman. I always try to see his talks at these events and I’m not alone, it was a large room and still filled. While Scott showed some short demos of easily creating and deploying ASP.NET websites, he also blew my mind on a number of occasions regarding the use of JavaScript in the future of computing. The number of advances and amazing things that the community is already producing are constantly pushing the bar. It just reiterates for me how cool this stuff is.

Deep Dive into WinJS (4-101)

Josh Williams, the creator of the WinJS List Bindings, gave a nice overview of WinJS. It showed some fairly hardcore aspects of WinJS, but was not quite the Deep Dive I was hoping for. Chris Anderson also joined the talk and together they discussed protocol handlers, navigation, and promises. Protocol handlers is a great way to allow your app to communicate with other apps and with the desktop. It’s also a feature that I feel is often overlooked. In addition, I’m happy they discussed Navigation and Promises as I feel these are both areas that people will and have already gotten quite hung up on. Overall a great talk, I could have listened to them for hours.

Testing Untestable Code with Stubs and Shims in Visual Studio 2012 (3-015)

Unit Testing Windows Store Apps (3-017)

I was able to see both talks from Josh Weber and David Starr. It’s obvious that the team is focused on TDD and many other testing scenarios. They demonstrated techniques for creating tests around tests around statics and singletons using static type analysis versus IL emitters which most other Mocking frameworks use. You can have Visual Studio create Stub, an empty implementations for objects and interfaces, or Shims, a way intercept calls to objects out of your control (including System namespace objects like DateTime.Now). This is a handy bit of functionality that is built into Visual Studio 2012.

In the follow-up talk, the guys talked about the newly re-written Unit Test Explorer. The verdict is still out for me on this one (I still favor a grid/tree view), but they addressed that elephant immediately with examples of filtering, grouping, and sorting large lists of tests. They wrapped up the presentation with some examples of using the MVVM pattern to test a windows store app, a fairly trivial demo for anyone who’s been testing WPF or Silverlight apps, it’s a shame that Windows Store apps don’t support the new Stubs and Shims options, but I’m hopeful for the future.

Wrap up

Just like the preceding conference, Build 2012 was a terrific event. The staff was amazing and with the exception of hurricane Sandy everything went very well. I’m really enjoying the new Surface tablet and the Nokia Lumia 920. As I’ve said plenty of times and as is likely apparent by my overall enthusiasm in this new direction, this is a wonderful time to be a developer. For me I will be spending much of my free time working on some of my numerous app ideas.

I’d also like to take this time to reiterate the push from Tallan to work with our clients on realizing their apps. For anyone who is reading this article, I’d love to hear from you about your apps. Whether you are interested in friendly developer beta testers of more serious consulting for your app we are here to help.

Using the WCF Data Services Client with Windows 8 RTM

I’m very excited to have gotten my book release before Windows 8 became available. In light of the official Windows 8 RTM there are a few modification that I will be making. This changes will ultimately circle back to the Errata on the book and into an updated copy shortly, but I wanted to create this page to provide readers with the current updates.

1) WCF Data Services Client

The WCF Data Services Client has moved to Nuget. In Chapter 2 I used the WCF Data Services client that came preinstalled with the Windows 8 Release Preview.

In addition, you will need to add references to Microsoft.Data.OData.Metro and Microsoft.Data.Service.Client.Metro. To do so, you can right click the References in the Solution Explorer and click Add Reference. From here you can click the Browse button on the bottom, navigate to C:\Program Files (x86)\Microsoft WCF Data Services\5.0\bin\Metro, and select both Microsoft.Data.OData.Metro.dll and Microsoft.Data.Services.Client.Metro.dll. Finally, click OK.

In the Windows 8 RTM the directory does not exist. There are two reasons for this first they separated the data services assembly and secondly they renamed Metro to Windows Store. Ultimately I believe it will be released with nuget, but for now you can download the release candidate online at http://www.microsoft.com/en-us/download/details.aspx?id=30714. Once you’ve installed this, you can use the instructions above by replacing Metro with WindowsStore. So, the path is C:\Program Files (x86)\Microsoft WCF Data Services\5.0\bin\WindowsStore and the files are Microsoft.Data.OData.WindowsStore.dll and Microsoft.Data.Services.Client.WindowsStore.dll.

Getting Started with Windows 8 Apps is now available

I’m happy to announce that my Getting Started with Windows 8 Apps book (formerly Getting Started with Metro Style Apps).

Get a head start on building apps for Windows 8. With a series of examples, this hands-on guide takes you through the process of creating complete touch-enabled apps that respond to native sensors. Through the course of the book, you’ll learn how to work with the Windows Runtime application model while building a Bing Image Search app.

If you’re an experienced .NET developer who wants to get up to speed with Windows 8, this book provides the expertise and C# code samples you need.

  • Get a high-level overview of Windows 8 features—from the Start Screen to in-app features such as the Application Bar
  • Begin by building a simple app to retrieve Bing image search results from a web service
  • Learn about the components needed to complete the app, including UI design, the MVVM architectural pattern, and “tombstoning”
  • Take advantage of native OS features such as tiles, file pickers, and sharing requests
  • Examine the steps necessary to publish an app to the Windows Store

Getting Started with Metro Style Apps book is available for Early Release

As many of my friends know I’ve been working hard on a new book for O’Reilly called Getting Started with Metro Style Apps. This book is written for existing .NET developers who are interested in the changes introduced with the release of Windows 8. This book is intended to be a guide to developing complete Metro style apps end-to-end. If you have an idea or you are just curious about the platform, this is the place to start.

In addition to announcing my cover art (an alligator, yay), I’m happy to announce that the first few chapters are now available for download via the O’Reilly Early Release program at http://shop.oreilly.com/category/early-release.do. You can also see the work in progress and provide feedback via the O’Reilly Open Feedback Publishing System at http://ofps.oreilly.com/titles/9781449320553/

Introduction to the Windows Runtime (WinRT) – Code Camp NYC

Its been a long past few weeks, with the announcement of Windows 8 and the Windows Runtime and the preparation for my presentation at the NYC Code Camp 2011.2. We had a really good turn-out, and I’d like to thank everyone who came to learn about the Windows Runtime. I started by off showing a bit from Build and Metro style apps. Then we went into an extensive overview of the Windows Runtime. For the coding demo portion of the presentation I started with a Silverlight application an converted it to a C# Metro style app with a C++ component. Then as the grand finale I ported the Silverlight C# ViewModels into new HTML/CSS and JavaScript Metro style app. All of the code has been uploaded to GitHub and the links can be found below.

Downloads/Code

There were a number of resources discussed in our meeting and for convenience you can see find them here.

Resource Videos

Resources

Build – The Developer’s Launch of Windows 8

The first keynote of Build was all about the launch of new Windows 8 for developers. As they said, Windows 8 is a reimaging of the way we interact with devices and use computers. With all this reimaging comes some major changes to the development paradigms that we are currently use to and it seems as though this conference is focusing on getting the developers up to speed with all the changes that affect how software will be created for the next version of Windows.

The keynote centered around 2 main topics. First is the changes in computing, including hardware, mobility, and the way in which we interact with multiple devices of all sizes. Second, is the new Metro UI , which is the way in which immersive Windows 8 applications are built and developed to provide rich experiences on the native operating system.

Computers have been changing for quite some time, devices are getting smaller, they are responding to touch input, and customers are using them on the go. This means applications need to be built in a way that allows customers to interact with content in a performant way no matter the screen size. Customers are also using computers in all aspects of their daily lives. They need applications that are mobile and that actively synchronize themselves across multiple devices, so that the experience is seamless.

Touch is an extremely important aspect to all this, with former GUI technologies there were some affordances to lags in performance when using a traditional mouse input. When using touch as a primary input it seriously impacts the user experience if the application doesn’t respond to a gesture. Microsoft has stated that they are committed to increasing performance and with reports of an 8 second boot time, quick resumes through Connected Standby, and a decrease in overall operating system memory consumption to 281 MB of core OS memory (down from 484MB), it is apparent that they are really squeezing every byte possible out of the operating system.

Microsoft also announced a brand new line of computing devices from the small tablet devices (which were given out to all attendees) to large multi-monitor desktops which support touch and hardware accelerated graphics. Power users will also benefit from the new Hyper-V support which is now included in Windows 8. Another important hardware feature that was announced is the ability to Refresh and Reset your desktop settings to a factory state.

The Metro UI is much broader, while reimaging the entire Windows 8 application experience, they have also reimagined the entire application model in the form of new API that sits on top of the Windows kernel call the Windows Runtime. This new Windows Runtime (WinRT) is a brand new application model that is completely different than the previous Win32 model. It offers a fresh new Windows start screen with Live Tiles and Notifications. Applications can now interact with the entire screen real estate without the need for window management complexities like chrome, minimizing, etc. WinRT has built in support for Charms, which allow developers to communication across applications. The only bit of screen real estate consumed by the runtime is a single pixel around the entire screen which is used to invoke both system and application commands via a concept called “first pixel sensitivity”.

There has been a lot of talk about Silverlight and WPF developers getting phased out of the new Windows 8 platform, first off, this is not true. Windows 8 has committed to offering full backwards compatibility with Windows 7 and all the Win32 applications and frameworks which are built on top of it. This doesn’t mean Silverlight or WPF will work on WinRT. However, (before you get too upset), your skills as a XAML developer are not lost. WinRT has rebranded their previous UI frameworks into a new set of components, which you will find very similar, under the distinction of XAML (the UI markup language) and the model/controller language of your choice (ie. C#, VB, C++). They’ve also added to the WinRT the ability to create applications with a view markup defined in HTML5 and CSS with controller logic written in javascript. A move that will hopefully attract designers who were previously constrained to web technologies to come on board and start creating native applications for the windows 8 platform.

Since this is a “Developer’s Preview Release” and since so many changes were made to the application development and deployment model, Microsoft also announced the release of new version of Visual Studio 11 and Expression Blend. The hope is that developers will download the bits and start looking as ways in which they can reimagine their own applications. Everything presented today will be provided for developers to download at http://dev.windows.com.

MIX11 in review

I know this post is overdue, but I’m happy to say that in the time since MIX has elapsed, my wife and I have sold our condo and moved to a new home. I’ve also transition to a new contract, and I am excited to get my feet wet my new project. Despite the delay, it was a wonderful experience. This was my first year at MIX. The content, announcements, and the networking were all memorable. I only wish I could’ve attended all the sessions. Luckily the content is available online, so I did my best to mark key talks that I wanted to catch back home.

This year was filled with a number of announcements at the two keynotes I did my best to update my twitter feed with some of the cool ones.

The first keynote was focused around recent release of IE9, the next generation of web, ASP.NET MVC3, and HTML5, and the new release of IE 10 Platform Preview 1 (watch online):

  • IE9 Released
  • IE10 Platform Preview1 Released (download)
  • HTML5 Labs available to demonstrate HTML5 features and compatibility
  • New Developer Conference coming to Anaheim, CA from September 13-16 2011 (PDC maybe? maybe not?)
  • Microsoft is commited to pushing and actively contributing to NuGet (an open source package manager)
  • Tools update for ASP.NET MVC 3 available for download
  • Entity Framework 4.1 released (download)
  • Updated Scaffolding support for Entity Framework and MVC
  • Updated ASP.NET MVC New Project Dialog (screenshot) with support for the Razor View engine, HTML5 markup
  • MVC 3 new projects now include built in Modernizr script support and many scripts and references are updatable via NuGet package references.

The second keynote, which really piqued my interests was all about Windows Phone 7, Silverlight, and the Kinect (watch):

  • Windows Phone 7
    • Respectable acknowledgement of the Windows Phone 7 Update state by Joe Belfiore, and announcement of the Where’s my Update? page.
    • New Windows Phone 7 Update codenamed “Mango” shipping this Fall
    • Focus of Mango is on Opportunity (Ecosystem, Countries, Discoverability), Capability (Browser, Phone Integration, Multi-tasking), and Developer Experience and Tools
    • Opportunity
      • Nokia appeared live and affirmed their commitment to partnering with Microsoft to reach hundreds of millions of customers
      • Mango will support for 16 Languages, 38 Countries, and 35 Countries can buy apps from a single Marketplace
      • Marketplace search added to App list on home screen
      • New Pivot view added to App decriptions in Marketplace
      • New Related Apps pivot on in Marketplace
      • Hubs and Search Cards (Movies, Restaurants, etc) have an Extras tab that deep links to relevant content
    • Capability
      • IE9 and HTML5 will be included in the Mango
      • HTML5 audio/video tag support added
      • Background Audio support added to Mango
      • Background Agents available in Mango, with support for running when users battery/wifi are optimal
      • Multiple Live Tiles for Apps
      • Live Tile Animation
      • Updates to Live Tiles without Push notifications
      • Sensor support added for Direct Camera support, Compass, and Gyro
      • Socket Communication added
      • Performance Optimizations – Scrolling and Input, Image Decode, Garbage Collection, and Memory Usage
      • New Motion Sensor API for combining the Compass and Gyro raw data
      • Angry Birds (May 25), Spotify, and Skype are coming to the Windows Phone
    • Developer Tools
      • Phone orientation tool for simulating Accelerometer, with options for pre-recorded gestures and actions
      • Location simulation available via built-in Bing Maps tool, with options for pre-recorded location changes
      • Phone Performance monitoring and analysis tools available
  • Silverlight
    • Sliverlight 5 Beta is now available (download)
    • Expression Blend Preview for Silverlight 5 is now available (download)
    • Hardware-Based Video Decode
    • Added 3D support
    • Trick Play support – pitch correction audio
    • Recieve Commands from a remote control
  • Kinect

In addition to some wonderful keynotes, I wrote a personal summary of the sessions I attended (all of this content is available online):

  • Deconstructing Orchard: Build, Customize, Extend, Ship

    Bradley Millington explained the new features of the v1.1 release of Orchard CMS. This release comes with a new Recipes concept to startup development. Think Visual Studio Project Templates but for Orchard sites, these are fully customizable and open to community contributions, so new templates may come out for many common scenarios. Bradley also showed how simple it is to extend modules and themes. Finally we saw how a simplified deployment can round out a solution with minimal barriers to entry.

  • Fonts, Form and Function: A Primer on Digital Typography

    Everytime I see Robby Ingebretsen I’m always so impress about how simple he makes design feel. Check out his presentation at the Design Toolbox if you haven’t yet. Robby took us on a journey through the font choices for his group’s new website http://thinkpixellab.com/. He had some musings about fonts having personalities and relating that to a Hollywood cast in a major screenplay. Of course, we were shown with the every important Grid concept.

  • Inspiring UX – UX Lightning Series

    ‘UX Lightning sessions are a full hour session with 4 exceptional speakers each presenting 10 minute topics’. There was lots of inspiring content about Natural User interfaces, putting a lot of ownership on us as Developers and Designers. August de los Reyes was truly remarkable in his 21st Century Design Manifesto where he promotes a design process which is focused on Motivation, Needs, Positive Emotion, Learnability, Adaptability, and Revolutionary changes. This is in contrast to a user centric design which puts faith in the users (who often don’t know what, why, and how they like something), and incremental design evolution.

  • ECMAScript 5: The New Parts

    We had the pleasure of listening to the godfather, Doug Crockford, show off the new ECMAScript 5 changes. Many of the features have been wanted for some time. Luckily many of them have shims for older browsers. The addition of strict mode allows the type safety to bring javascript to the next level of software craftsmanship.

  • Multitasking in the Next Version of Windows Phone, Part I

    Announced after the second keynote, Darin Miller, reviews the new Background/Live Agents, Reminders, and other background and multi-tasking APIs. Mango has some great new features, and they are being designed in a way that respects the user, all while retaining their excellent developer experience. Like optimizing downloads when you are on WiFi and power.

  • Building Data-centric N-tier Applications with jQuery

    The WCF RIA Services team has been doing a great job rounding out the REST/jQuery story. Brad Olenick showed a WCF Service that was consumed by jQuery using plugins for templating, data linking, change tracking, sorting and paging on the server side and on the client side. I can see this being a great tool coupled with the coming jQuery UI Grid. I hope the community rallies around this one especially with the recent shift in structure for the offical jQuery templating and dataLinking plugins

  • Graphics & 3D with Silverlight 5

    One of most exciting announcements of Silverlight 5 is 3D, I’m really intrigued by it. As expected they brought in the XNA 3D features which is more aligned with the Windows Phone 3D experience. Aaron Oneal wowed everyone with some really cool demos including the Virtual walkthrough of the Windows Cafe. Then he walked us the through the Graphics processing pipeline showed how vertices, colors, triangles, textures, overlays, and lighting can be written straight to the GraphicsDevice. Caution, 3D development is not for yhe faint at heart.

  • WCF Web APis: “There’s a URI for That”

    Coupled with Brad Olenick work above Glenn Block wrapped up the other side of what’s included on the http://wcf.codeplex.com release. In addition to consuming json using dynamic objects, they have a fluent API for configuring services and service creation (ie. IoCs). There are also new strongly typed generic request/response wrappers that expose header information. For more details, see Sam’s post.

  • Fun with ASP.NET MVC 3 and MEF

    The power of NuGet was very prevalent at Mix this year, and I’m very excited about the power of using MEF and NuGet combined. Maarten Balliauw showed us how setting up your MVC application to accept MEF Imports, then by separating components into different projects you can add/remove them and in turn on/off functionality.

  • NuGet In Depth: Empowering Open Source on the .NET Platform

    Another great HaHaa show. Scott and Phil performed a great ping-pong over creating and consuming NuGet packages. They also showed off the new Symbols feature, “which is huge” as Scott would say. Very entertaining session and inspiring for NuGet

During the breaks, I joined up with some other East Coast developers and speakers and worked on a Coding for Fun Project involving the .NET Micro Framework called the Curious Cloud Contest, we had a nice time with the project and we won a Video Production award in the process. You can see our team’s (MADExpo) video here.

I also had two wonderful evening events, the first night I had the pleasure of joining the Microsoft NUI team for some good Mexican food and the usually HTML5 vs. Silverlight discussion. The following night I had the privilege of being invited to join the folks from Telerik at Aureole, we were joined by Walt Ritscher and a number of people from the Windows Phone Team including Jamie Rodriguez and Ben Riga, both of whom did a wonderful job presenting at that morning’s Keynote event.

Silverlight using MEF presentation at Philly.NET Code Camp

We had a great time at the Philly.NET Code Camp event, this was a legendary event that sadly I hadn’t attended before. In addition to giving my talk on using MEF with Silverlight, I had a great time debating hot topics with other developers in the Open Spaces room, a tradition I hope continues at further Philly.NET Code Camps.

Downloads

I’ve uploaded the sample code and the presentation to my website. You can use the following links to download them: