Categories
Uncategorized

Barry Gervin: Expression Blend for Developers @ TechDays Toronto

barry gervin 2

As I write this, we’re well into Day 1, Session 2 of the Toronto edition of the TechDays Canada conference, and ObjectSharp’s Barry Gervin is doing his presentation, Expression Blend for Developers.

expression blend

Since Expression Blend is a UI building tool that is separate from Visual Studio, it’s typically seen as a tool for designers rather than developers. However, as Barry pointed out in his presentation, the division between designers and developers isn’t so simple, especially here in Canada, where developers often wear many hats, including that of UI designer. Besides, UI design isn’t just a bit of flourish you add to a software project at the end – it’s something you’ve got to consider from the very beginning.

barry gervin 3

Expression Blend makes the development of front ends, whether Silverlight or WPF, a great deal easier. You can do in minutes with Blend what might take hours in Visual Studio, driving yourself insane with XAML editing.

barry_gervin_1

Watch this space in the coming weeks – I’m going to be writing articles on Expression Blend and using it to build rich internet user interfaces for Silverlight.

expression blend room

This article also appears in Canadian Developer Connection.

Categories
Uncategorized

TechDays Toronto 2009 Begins!

techdays_thumb Here are a couple of shots from the Toronto edition of TechDays, taking place at the Metro Toronto Convention Centre right now.

The Room

I’m the lead for TechDays’ Developing for the Microsoft-Based Platform track, which I like to think of as the best damned track in the entire conference. The pre-registration numbers for this track were pretty high, so they gave me room 718A, a large room with a capacity of about 400 or so. The rows near the front of the room have table space for the people who like taking notes with their laptops, while the back rows have more conventional lecture-style seats.

Here’s the room as seen from the back:

View of a large presentation room, as seen from the back.

And here’s the speaker’s-eye view:

View of a large presentation room, as seen from the podium at the front.

Day 1, Session 1

At the time of this writing, I’ve just finished my opening monologue in which I introduced the track and explained what it’s all about. I handed the stage over to Cory Fowler, who’s doing the What’s New in Silverlight 3 presentation. Here’s a shot of Cory in action:

Cory Fowler doing his "What's New in Silverlight 3" presentation

I like what Cory’s done with the presentation: he took the original presentation from the Microsoft TechEd conference and spiced it up with graphics from the new XBox game Halo 3: ODST, adding his own personal touch.

Cory Fowler doing his "What's New in Silverlight 3" presentation

If you’re interested in finding out what’s new in Silverlight 3, there are a couple of things you can do:

  • If you’re in or near Halifax, Calgary, Ottawa, Montreal or Winnipeg, you can still register for TechDays in those cities at the early bird rate of $299.
  • Watch this blog! I’ll be posting articles on Silverlight 3 development in the coming weeks.

A Vending Machine We Can’t Refuse

On the 600 level of the Metro Toronto Convention Centre’s South Building, right by the registration booths, are two of these machines:

The hot dog vending machine at the Metro Toronto Convention Centre. Its signs say: "Freshly grilled / Maven's Kosher Foods / Sizzlelicious!"

That’s right, it’s a vending machine that makes kosher hot dogs, on the spot, for the low, low price of five dollars. In spite of the fact that TechDays provides a free lunch, we cannot resist the siren song of this machine (Sizzlelicious!). We’ll be shooting some video around noon of us ordering and tasting a hot dog from this machine. Watch this space!

This article also appears in Canadian Developer Connection.

Categories
Uncategorized

The “Developing for the Microsoft-Based Platform” Track at TechDays Canada

Microsoft TechDays Canada 2009: 2 days - 7 cities - 5 tracks - 40 sessions - plus more!

In planning this year’s TechDays conference, we made some significant changes to the developer tracks: they were reformulated into:

  • A “tools and techniques” track, called Developer Fundamentals and Best Practices, for which my friend and fellow Developer Evangelist John Bristowe is the track lead
  • A “technologies” track, called Developing for the Microsoft-Based Platform, which I lead.

As the track lead for the Developing for the Microsoft-Based Platform track at TechDays Canada 2009 conference, I thought I’d take the time to talk about it and praise its virtues.

Designing the Track

Each track lead has the responsibility of designing his or her track. We pored over all the sessions from TechEd North America 2009, consulted with developers or IT pros for their opinions on what topic they’d like covered and came up with a selection of 8 sessions for each track.

When choosing my sessions, I kept these philosophies in mind:

  • TechDays is about current tools, technologies and techniques. That means talking about stuff you can get your hands on and use in production right now: Visual Studio 2008, .NET 3.5, SQL Server 2008, and so on. Visual Studio 2010, .NET 4.0 and Azure are fascinating tools and tech, but they’re not yet on the market, so they’re not in TechDays. We made a few exceptions for a couple of things that are coming out right around now: version 3.0 of Silverlight and the Expression suite and Windows 7.
  • TechDays is about giving the audience the biggest bang for the buck. It’s more than simply taking the content from the TechEd North America conference (which has a steep registration fee and you have to also factor in the costs of flying to and staying in New Orleans) and bringing it close to home with local speakers and a reasonable price tag. It’s also about choosing the content that best serves an an audience that uses Microsoft tools and tech in their day-to-day work. There’s no point in rehashing presentations that the audience has already seen a dozen times before, and neither does it do any good to cover topics that are interesting but impractical. I tried to strike a balance — in choosing the sessions for my track, I kept this question in mind: What sort of things will this audience be using that they aren’t using yet?
  • TechDays is more than just throwing random information at the audience. A track needs to be more than just a collection of sessions simply thrown together. It works best if it’s a set of sessions whose topics fit together to form a cohesive whole, almost as if telling a story. While picking out the track’s sessions and arranging them, I tried to set things up in such a way to best show the possibilities that open up when you develop on the Microsoft-based platform. 

The Developing for the Microsoft-Based Platform Track

The Developing for the Microsoft-Based Platform track breaks down into four topic areas, as shown in the diagram below:

platform_track_chart

The topic areas are:

  1. Day 1 morning: Rich UIs
  2. Day 1 afternoon: Client Tech
  3. Day 2 morning: ASP.NET MVC
  4. Day 2 afternoon: Web Services

They’re explained in greater detail below.

Day 1 – Front End: User Interface and Experience

Day 1 of the Developing for the Microsoft-Based Platform is about building the front end, that layer of our applications with which the user interacts, and about giving the user the best experience possible.

The morning will be an introduction to the latest version – version 3 – of our rich interface technology Silverlight and our rich interface-building tool, Expression Blend. In the afternoon, we’ll shift the focus to building client technology by looking at the PRISM guidelines for building applications with modular Silverlight- and WPF-based front ends and the API code pack for building .NET applications that take advantage of Windows 7’s new UI features.

The tools and technologies covered on Day 1 are:

  • Silverlight 3
  • Expression Blend 3
  • WPF
  • Windows 7
  • Windows 7 API Code Pack for the .NET Framework
  • Windows Mobile

Day 1 Morning: Rich UIs

Track Introduction
Presented by Joey deVilla
9:00 a.m. – 9:15 a,m.


Session 1: What’s New in Silverlight 3
Presented by Cory Fowler
9:15 a.m. – 10:30 a.m.
Cory Fowler Rich internet applications just got richer! Silverlight 3 is packed with new features and improvements that your users will notice, from pixel shaders to perspective 3D to animation enhancements to bitmap APIs to HD video. We think you’ll also be impressed by the features for developers, such as the updated style model, data binding improvements, better resource handling, and a tuned-up Web services stack. In this session, we’ll explore new features of Silverlight 3 as we build a Silverlight-based application using Expression Blend 3 and Visual Studio.

Session 2: Expression Blend for Developers
Presented by Barry Gervin
10:50 a.m. = 12:05 a.m.
Barry Gervin Not a designer? Overwhelmed by Expression Blend? Not a problem! We’ll show you how to use Expression Blend to create advanced and polished user interfaces for business applications, consumer applications, multimedia projects, games or anything in between. We’ll cover features of Expression Blend from a developer’s perspective and show how it works in tandem with Visual Studio throughout the development process. You’ll learn how to create professional-looking user interfaces and visual elements – even if you don’t think of yourself as an interface designer.

Day One Afternoon: Client Tech

Session 3: Building Modular Applications Using Silverlight and WPF
Presented by Rob Burke
1:10 p.m. – 2:25 p.m.
Rob Burke How do you build extensible and maintainable line-of-business applications in Silverlight and Windows Presentation Foundation (WPF)? How do you design and code to handle real-world complexity? Composite Application Guidance (a.k.a. "PRISM") offers guidance, libraries and examples – in small, free-standing, digestible chunks – that you can use to build applications with rich user interfaces that are also easier to maintain and extend. You’ll learn how to compose complex UIs from simpler views, integrate loosely coupled components with "EventAggregator" and "Commands", develop independent modules that can be loaded dynamically, and share code between Silverlight and WPF clients.

Session 4: Optimizing Your Apps for the Windows 7 User Experience
Presented by Anthony Vranic
2:45 p.m. – 4:00 p.m.
Anthony Vranic This session will show you the Windows 7 APIs that will let your applications – and your users – get the full Windows 7 experience. Learn about new extensibility methods to surface your application’s key tasks. Discover how enhancements to the taskbar, Start Menu, thumbnails, desktop elements, the Scenic Ribbon, Federated Search and Internet Explorer 8 provide new ways for you to delight your users and help make them more productive. If you want to give your users the best Windows 7 experience, this session is for you!

Bonus Session: Taking Your Application on the Road with Windows Mobile® Software
Presented by Mark Arteaga and Anthony Bartolo
4:20 p.m. – 5:30 p.m.

Mark Arteaga and Anthony Bartolo As a developer of .NET-based applications, you can extend your desktop software to the Windows Mobile-based platform using the tools available within Visual Studio®, the Windows Mobile SDK and the .NET Compact Framework. This session will give you an overview of how Windows Mobile lets you use your existing infrastructure, business logic, and desktop code on a mobile device to innovate and help solve business problems. We’ll show you how to use the familiar Microsoft .NET Framework and .NET-based programming languages like Visual C#® development tool. You will also learn about new features in Windows Mobile 6.5 such as the Gesture APIs and the Widget Framework and how to use them appropriately. With the launch of Windows Marketplace for Mobile upon us, this session will help you take the next step for application testing and submission.

Day 2 – Back End: Programming Frameworks and Principles

On Day 2, the track moves to the back end, focusing on server-side programming tools and technologies, and even wandering into the area of technique.

The morning’s sessions concern themselves with the new option for developing web applications using ASP.NET: ASP.NET MVC, the alternative framework based on the Model-View-Controller pattern, in the same spirit of such frameworks as Ruby on Rails, Django and CakePHP. The afternoon will be about writing web services using various Microsoft technologies.

The tools, technologies and techniques covered on Day 2 are:

  • ASP.NET MVC
  • The SOLID principles of object-oriented design
  • WCF
  • REST (REpresentational State Transfer)
  • SharePoint

Day 2 Morning: ASP.NET MVC

Track Introduction
Presented by Joey deVilla
9:00 a.m. – 9:15 a,m.

Session 1: Introducing ASP.NET MVC
Presented by Colin Bowern
9:15 a.m. – 10:30 a.m. 
Colin Bowern You’ve probably heard the buzz about Model-View-Controller (MVC) web frameworks. They’re all the rage because they combine speed, simplicity, control…and fun. ASP.NET MVC is Microsoft’s MVC web framework, and in this session, we’ll talk about the MVC pattern, explain the ideas behind ASP.NET MVC and walk through the process of building an application using this new web framework. We’ll also cover several techniques to get the most out of ASP.NET MVC and deliver web applications quickly and with style.

Session 2: SOLIDify Your Microsoft ASP.NET MVC Applications
Presented by Bruce Johnson
10:50 a.m. – 12:05 a.m.
Bruce Johnson Object-oriented programming makes it easier to manage complexity, but only if you do it right. The five SOLID principles of class design (one for each letter) help ensure that you’re writing applications that are flexible, comprehensible and maintainable, and we’ll explain and explore them in this session. We’ll start with a brittle ASP.NET MVC application that’s badly in need of refactoring and fix it by applying the SOLID principles. This session is a good follow-up for Introducing ASP.NET MVC, but it’s also good for developers of ASP.NET MVC looking to improve their code – or even if you’re not planning to use ASP.NET MVC. The SOLID principles apply to programming in any object-oriented language or framework.

Day 2 Afternoon: Web Services


Session 3: Building RESTful Services with WCF
Presented by Bruce Johnson
1:10 p.m. – 2:25 p.m.
Bruce JohnsonREST (REpresentational State Transfer) is an architectural style for building services, and it’s the architectural style of the web. It’s been popular outside the world of Microsoft development for a long time, but it’s quickly becoming the de facto standard inside as well. Windows Communication Foundation (WCF) makes it simple to build RESTful web services, which are easy to use, simple and flexible. In this session, we’ll cover the basics of REST and the show you how to build REST-based, interoperable web services that can be accessed not just by Microsoft-based web and desktop applications, but anything that can communicate via HTTP from an Ajax client to a feed readers to mobile device to applications written using other languages and frameworks such as PHP, Python/Django or Ruby/Rails.

Session 4: Developing and Consuming Services for SharePoint
Presented by Reza Alirezaei
2:45 p.m. – 4:00 p.m.
Reza Alirezaei The world gets more service-oriented every day, and with that comes the demand to integrate all kinds of services, including those from SharePoint. This session introduces SharePoint as a developer platform and provides an overview of how you can build and deploy custom services with it. The focus will be on developing ASP.NET and Windows Communication Foundation services for SharePoint as well as building a Silverlight client to consume them.

This article also appears in Canadian Developer Connection.

Categories
Uncategorized

TechDays Toronto Schedule and Details / FailCamp Toronto 3

microsoft_techdays_canada_2009

TechDays Canada 2009 is Microsoft Canada’s cross-country conference that shows you how to make the most of our currently available tools and technologies. A couple of weeks ago, we held the first TechDays 2009 conference in Vancouver, and it went quite well. This week, TechDays makes the second stop of its seven-city tour: Toronto, on Tuesday, September 29th and Wednesday, September 30th.

TechDays takes the content of the excellent-but-expensive TechEd North America conference, takes it to cities across Canada and pairs it with local speakers and makes it available at a very affordable price. It’s a learning conference, a chance to network with people from Microsoft and techies in your area and of course, a swag opportunity with the TechDays 2009 Learning Kit, which comes with $700 worth of stuff, including a TechNet Plus direct subscription.

For the benefit of the 1200 people who will be attending as well as those of your who are curious about the event, I put together this article which will cover the schedule and other details about TechDays Toronto.

Venue

toronto

TechDays Toronto takes place at the South Building of the Metro Toronto Convention Centre, right by the CN Tower and Rogers Centre (a.k.a. the SkyDome), located at 222 Bremner Boulevard, shown on the map below:

Map picture

Note that if you enter the Convention Centre via through Front Street, you’re entering the North Building. To get to TechDays Toronto from the North Building, go to the floor above street level and take the walkway/bridge to the South Building. The TechDays sessions will take place on Level 700 of the South Building.

Schedule

TechDays Toronto takes place on Tuesday, September 29th and Wednesday, September 30th. There’s a complimentary breakfast from 8:00 a.m. to 9:00 a.m. on both days, and the sessions start running at 9:00 a.m.. There’s an introductory session for each track on both days that runs from 9:00 a.m. to 9:15 a.m., where the track leads provide an overview of the day’s sessions.

Each track has two morning sessions spaced out by a 20-minute break, followed by 65-minute break for lunch.

Tuesday is the longer of the two days, as it has three afternoon sessions spaced out by 15-minute breaks; the third session is a bonus session. FailCamp Toronto 3 will take place Tuesday evening.

Wednesday has just two afternoon sessions, spaced out by a 20-minute break and will conclude at 4:00 p.m.

Day 1 (Tuesday, September 29th)

Time

Track 1:
Developer Fundamentals and Best Practices

Track 2:
Developing for the Microsoft-based Platform

Track 3:
Windows Client

Track 4:
Servers, Security, and Management

Track 5:
Communication and Collaboration

Track 6:
Developer Foundations

Room

Room 701A

Room 718A

Room 701B

Room 718B

Room 716

Room 717

8:00am to 9:00am

Breakfast

9:00am to 9:15am

Track Introduction

9:15am to 10:30am

Tips and Tricks for Visual Studio

What’s New in Silverlight 3

Microsoft Deployment Toolkit 2010: The Next Generation

From Zero to Live Migration: How to Set Up a Live Migration

Deploying Microsoft Office SharePoint Server 2007 in a Virtual World

S-O-L-I-D : The Five OO Principles that will Change your Life Forever

10:30am to 10:50am

Break (20 minutes)

10:50am to 12:05pm

Test Driven Development Techniques

Expression Blend for Developers

A Geek’s Guide to Windows User State Migration Tool 4.0

SCVMM 2008: Performance and Resource Optimization (PRO) and Management Integration

Versioning and Upgrade of SharePoint-based Solutions

Going from 0 to 100 Dollars per Hour with the .NET You Never Knew

12:05pm to 1:10pm

Lunch (65 minutes)

1:10pm to 2:25pm

Patterns for the Rest of Us

Building Modular Applications Using Silverlight and WPF

Easing the Migration from Windows XP to Windows 7

Microsoft SQL Server 2008 Virtualization Considerations and Best Practices

Comprehensive Security for Microsoft Office SharePoint Server 2007

Layers, the Secret Language of Architects

2:25pm to 2:45pm

Break (20 minutes)

2:45pm to 4:00pm

A Strategic Comparison of Data Access Technologies from Microsoft

Optimizing Your Apps for the Windows 7 User Experience

Working the Windows Recovery Environment (WinRE)

Monitoring UNIX/Linux with Microsoft System Center Operations Manager 2007 R2

Using Microsoft Dashboards, Scorecards, and Analytics to Monitor the Health of your IT Infrastructure

Refactoring for Fun and Profit

4:00pm to 4:20pm

Break (20 minutes)

Bonus sessions

4:20pm to 5:30pm

How ISVs can strengthen their business by Working with Microsoft

Taking Your Application on the Road with Windows Mobile Software

Application-Aware Data Protection with Dell EqualLogic

Interoperable Web Platform: IIS7, Web Platform Installer and Web App Gallery

TBD

TBD

5:30pm

Day 1 ends

7:00pm to 9:30pm

FailCamp Toronto 3 
For details, see below or visit Demo Ignite Camp’s event page.

 

Day 2 (Wednesday, September 30th)

Time

Track 1:
Developer Fundamentals and Best Practices

Track 2:
Developing for the Microsoft-based Platform

Track 3:
Windows Client

Track 4:
Servers, Security, and Management

Track 5:
Communication and Collaboration

Track 6:
Developer Foundations

Room

Room 701A

Room 718A

Room 701B

Room 718B

Room 716

Room 717

8:00am to 9:00am

Breakfast

9:00am to 9:15am

Track Introduction

9:15am to 10:30am

Practical Web Testing

Introducing ASP.NET MVC

Inside the Application Compatibility Toolkit 5.5

Reinventing Remote Access with DirectAccess

Architecture of Microsoft Exchange Server 2010

S-O-L-I-D : The Five OO Principles that will Change your Life Forever

10:30am to 10:50am

Break (20 minutes)

10:50am to 12:05pm

Better Software Change and Configuration Management Through TFS

SOLIDify Your ASP.NET MVC Applications

Solving Application Compatibility Issues Through Virtualization

BranchCache: Helping You Save on WAN Bandwidth Consumption at Branch Offices

Transition and Deployment of Microsoft Exchange Server 2010

Going from 0 to 100 Dollars per Hour with the .NET You Never Knew

12:05pm to 1:10pm

Lunch (65 minutes)

1:10pm to 2:30pm

Metrics That Matter: Using Team System for Process Improvement from Microsoft

Building RESTful Services with WCF

Windows-Based Application Readiness for Developers

Server Management Improvements in Windows Server 2008 R2

High Availability in Microsoft Exchange Server 2010

Layers, the Secret Language of Architects

2:30pm to 2:50pm

Break (20 minutes)

2:50pm to 4:00pm

Database Change Management with Team System Developing and Consuming Services for SharePoint No Budget for Tools? No Problem! Hot Tools on a Limited IT Budget Best Practices in Architecting and Implementing Windows Server Update Services (WSUS) Exchange Server 2010 Management Tools

Refactoring for Fun and Profit

4:00pm

Day 2 ends; conference wrap-up

mtcc_level_700_map

FailCamp Toronto 3

failcamp_toronto_3

Since we had the venue for two days, it meant that we had these nice large conference rooms available to us on the night of Day 1 of TechDays Toronto. Rather than let them just sit there, we thought it might be fun to put one of them to good use with a community event. We got in touch with Justin Kozuch of Refresh Events and Meghann Millard of Unspace, and thus FailCamp Toronto 3 was born!

FailCamp Toronto 3 is the third FailCamp we’ve held in Toronto. Created by Thomas Fuchs and Amy Hoy, FailCamp can best be described as a “celebration of failure”. It starts with an opening monologue covering failure in history, followed by a failure free-for-all in which some selected storytellers and audience members are invited to share their stories of failure – and more importantly, the lessons learned from them. We’ll award prizes to the most spectacular stories of failure, and we’ll head to the pub afterwards!

FailCamp Toronto 3 takes place in room 716, South Building, Metro Toronto Convention Centre at 7:00 p.m. on the evening of Tuesday, September 29th. For more information about FailCamp Toronto 3 and to register to attend (it’s free!), see the FailCamp event page.

This article also appears in Canadian Developer Connection.

Categories
Uncategorized

Slice of Life: Official Photos from Techdays

For the TechDays conference’s stops in Vancouver and Toronto, Microsoft hired Vancouver-based photog extraordinaire Kris Krug to take photos of the Developer and Platform Evangelism team, which includes Yours Truly. The photos were taken during the conference, which meant that most of us were wearing the official TechDays shirts, which were colour-coded to match the conference track in which we were leading or participating. The track that I lead is Developing for the Microsoft-Based Platform, and its colour is orange. Luckily the folks who made the shirts had a pretty snappy shade of orange (the label refers to the colour as “Spark”) that I can rock.

Most of our photo shoot was on the promenade outside the Vancouver Convention Centre, looking out over the water. He just had me play tunes on the accordion while he shot photos, so they’re all pretty candid shots. Here’s one of the photos that Kris took of me.

joey_devilla_on_accordion_kk

There are more of me and the rest of the DPE team in Kris’ Flickr photoset.

This article also appears in The Adventures of Accordion Guy in the 21st Century.

Categories
Uncategorized

TechDays Vancouver: More Scenes from the “Platform” Track

Two out of three of this afternoon’s sessions in my track at the TechDays conference – Developing for the Microsoft-Based Platform — were presented by Anthony Vranic, an independent consultant who used to be a Microsoft developer evangelist. His sessions:

  • Building Modular Applications Using Silverlight and WPF
  • Optimizing Your Apps for the Windows 7 User Experience

Anthony Vranic presenting at TechDays Vancouver 2009

Next up were Anthony Bartolo and Mark Arteaga, who were there to present the session Taking Your Application on the Road with Windows Mobile Software, in which they showed us things that people think Windows Mobile can’t do.

arteaga_bartolo_1

Yup, that’s The Beatles: Rock Band beside Anthony – this was a session where you could leave with a prize! They gave away XBox games to people who answered skill- and mobile market knowledge-testing questions correctly.

arteaga_bartolo_2

They gave The Beatles: Rock Band to the person working on the most interesting Windows Mobile app, as judged by audience applause. It went to the gentleman in the photo below on the right, who wrote a currency exchange application that watches exchange markets for the ideal time and buys foreign currencies then. He uses it to send money home to New Zealand within taking a bath on the exchange rate.

winner

As I write this, it’s 5:45 p.m. Pacific, which means that the next event, Demo Ignite Camp, is just over an hour away.

Categories
Uncategorized

Slice of Life: Striking the “Charlie’s Angels” Pose with Netbooks

Yesterday, while setting up for the TechDays conference at the Vancouver Convention Centre, my co-workers Rick Claus (pictured below on the left with the red netbook) and Rodney Buike (pictured below on the right with the blue netbook) and I couldn’t resist playing around with the Dell netbooks that we were using to do PowerPoint donkey-work. John Bristowe, who was doing the photography, suggested striking a Charlie’s Angels-style pose and we were only too happy to oblige:

Rick Claus, Joey deVilla and Rodney Buike strike the "Charlie's Angels" pose with Dell netbooks Click the photo to see it at full size.