February 2010

Get Microsoft Silverlight
Don’t have Silverlight? Get it here or download the video in
MP4, WMA, WMV, WMV (High) or Zune format.

Here’s the second episode of Cloud Cover, the Channel 9 show where hosts Ryan Dunn and Steve Marx show you what’s in the Windows Azure cloud computing platform and how to get the most out of it.

Steve’s off being a jet-set celebrity – what kind of excuse is “I’m off to Japan to shoot a commercial”, anyway? – so David Aiken, who also knows quite a bit about Azure, is filling in for him in this episode. Here’s what David and Steve cover:

  • They do a walkthrough of the RoleEntryPoint class and show you the hooks that you can use to build web and worker services,
  • Explain Azure’s billing model, and
  • Show you how to troubleshoot the Initializing-Busy-Stopping loop.

This article also appears in Canadian Developer Connection.

{ 0 comments }

AlignIT Webcast Series in March and April

by Joey deVilla on February 26, 2010

Microsoft TechNet Align IT 2010 Tour -- Consolidation. Exploration. Optimization.

Dave Remmer and Adam Gallant, two of my colleagues from Microsoft Canada’s Developer and Platform Evangelism team, are hosting a series of webcasts aimed at enterprise application developers, architects and managers on Tuesdays from March 23 through April 27th.

Here’s what the series is all about:

With IT being an increasingly vital strategic asset and business enabler in organizations today, we all need to strive for excellence in execution in the IT projects we’re leading. There are a number of different ways to help create this excellence; so they’ve put together six, one-hour webcasts to give you our perspective on how to help make it happen. Starting with the ALM [that’s short for Application Lifecycle Management – Joey]  foundation of successful project delivery, they’ll look at architectural patterns for the web, for building secure solutions, for leveraging the cloud and client devices, for IT governance and operations, and finish up with real life stories from experts who’ve done it before. At the end of the series, they hope that you will gain new insights how to help increase business value and agility through IT by having a better understanding of how to leverage the Microsoft platform and toolset.

Here are the individual webcast episodes and their dates and times. To register for a webcast (and yes, registration is free), click on its title:

{ 0 comments }

image

If you’re wondering what’s new in Visual Studio 2010, you’re going to want to catch these sessions taking place in March. You’ll get a grand tour of all the new capabilities as well as the new MSDN offerings that come with the new Visual Studio.

The “What’s New” sessions are taking place in these cities:

City Date Invitation Key
Edmonton Monday, March 1 8ACE98
Calgary Tuesday, March 2 9FA90A
St. John’s, Newfoundland Tuesday, March 2 C89B02
Mississauga Thursday, March 4 5A1CB4
Quebec City Tuesday, March 9 1C5C3C

 

Here’s the event schedule:

  • Registration & Breakfast
    8:30 a.m. – 9:00 a.m.
  • Event Opening Ceremonies
    9:00 a.m. – 9:10 a.m.
  • Live technical demonstration:
    What’s new with Visual Studio Team System 2010
    9:10 a.m. – 11:00 a.m.
  • Q&A
    11:00 a.m. – 11:20 a.m.
  • Event close / completion of evaluation form
    11:20 a.m. – 11:30 a.m.

If you’d like to attend one of these sessions, select the Invitation Key from the city whose session you want to attend and enter it on the Registration page.

This article also appears in Canadian Developer Connection.

{ 0 comments }

Counting Down to Seven: 7 Rules for Your Mobile Strategy

by Joey deVilla on February 26, 2010

Counting Down to Seven (Mar 15th at MIX 10): A series about ideas for mobile apps

Welcome to another installment of Counting Down to Seven, a series of articles about mobile app development that I’m writing as we count down the days to MIX10, when we reveal more about the up-and-coming Windows Phone 7 Series.

Cover of 'Mobile Deisng and Development'In an earlier article, I wrote that Brian Fling’s book, Mobile Design and Development, led me to a couple of instances where the number 7 appeared in writing on mobile development. The first was Tomi Ahonen’s thesis that mobile is the 7th mass medium.

The number 7 also appears in Chapter 5 of Mobile Design and Development, titled Developing a Mobile Strategy. In it, Fling lists seven rules for developing your own mobile strategy, which I’ve summarized below.

1. Forget what you think you know.

The mobile industry is highly competitive, evolves quickly and produces a lot of press releases full of speculation and empty promises on a scale that dwarfs that of the early dot-com days.

“Do yourself a favor and forget everything you think you know about mobile technology,” writes Fling. Instead, he suggests that you:

  • Ask the hard questions about your business, your customers and your development capacity without considering the latest hype about a new tool or technology.
  • Focus on what’s right for your user instead of simply emulating what your competitors are doing.
  • Forget what you think you know about mobile – it’s most likely wrong.

2. Believe what you see, not what you read.

Fling writes: “In mobile, any argument can be made, and for a few thousand dollars you can buy a
report or white paper that supports your argument.”

His suggestions include:

  • Mobile industry reports have a short shelf life. Anything over a year or so old is probably useless. (And you should probably ignore anything pre-iPhone other than for a good laugh.)
  • Ask your users questions in person, in their context, rather than relying on focus groups.
  • Record what your users say. “Nothing makes your case like your users’ own words.”

3. Constraints never come first.

There are many constraints in mobile development: the size of the device, processor speed, battery life, networks, business issues and so on. You will have to account for them, but if you do so too early, you might end up killing some ideas before they even get prototyped, never mind implemented.

Fling writes:

If you are concerned about the constraints of the mobile medium, know that there will always be constraints in mobile. Get over it. It isn’t a deal breaker. Just make sure you aren’t the deal breaker. Focus on strategy first, what they user needs, and lay down the features; then, if the constraints become an issue, fall back to the user goals. There is always an alternative.

4. Focus on the user’s context, goals and needs.

Here’s how Fling defines the terms:

  • Needs are simple. The example he uses is the need to eat. He says that our of context, goals and needs, a user’s needs are the easiest to predict if you know some basic information about the him or her.
  • Goals arise from needs. In his example, the goal is to get food.
  • Context is the user’s current state. It could be something like “I am at this location and I’m in the mood for Thai food.”

Fling’s suggested strategy for focusing on context, goals and needs:

  • Define the users’ context first. Without that context, you don’t have a mobile strategy, it’s just a plan of action.
  • Uncover the users’ goals, then try to understand how the user’s context alters those goals.
  • Once you know the users’ goals, find out the actions they want to take.
  • Look for ways to filter what you present to your users by their context.

5. You can’t support everything.

That’s right! Just stick with supporting Windows Phone 7!

But seriously: unless you’ve somehow got access to a big pool of developers to cover them all, you’re going to have to narrow down the number of devices you support – possibly even down to one. I’ll do what I can to make sure that Windows Phone 7 is the platform people want, but you need to see what platform your users are using.

Fling’s tips:

  • Start with the devices that your customers are using.
  • The most popular device or the one that’s easiest to develop for may not be the best device for your project.
  • If you’re converting a web application into a mobile app, look at your server logs and see what mobile devices are accessing it. Target those devices.
  • Go mobile phone window shopping and see what devices the stores are targeting at different types of users.

6. Don’t convert, create.

My mother, a piano player, bought an “electronic sheet music” tablet. The idea was that instead of having to keep lots of books and folders of sheet music, she could get rid of the clutter and have a convenient, easily expandable music library. Unfortunately, the device uses a standard desktop interface – actually, a sub-standard Linux window manager, not even a decent one like Gnome or KDE – and it’s a royal pain to use. Mom went back to sheet music on actual sheets of paper and the device is now gathering dust.

On the other hand, the TiVo – also a Linux device – has a great user interface. It’s designed around the way you use a TV, not around what’s easier to implement. It’s not a port of desktop TV recording software (most of which is terrible to use), but a whole new thing, and it’s better for it.

With that in mind, here are Fling’s “Don’t covert, create” tips:

  • Understand your user’s’ context. Knowing how, when and under what conditions your users will use your mobile app will allow you to create a better user interface and experience.
  • Don’t forget that mobile isn’t just a shrunken-down desktop; it’s its own thing, with its own strengths. 

7. Keep it simple.

That’s simple, not stupid. People tend to use their mobile devices while they’re on the go or doing something else, so helping them get their task done is far more important that loading your mobile app with features. Mobile users have to deal with many constraints, so show restraint in the mobile products you build.

This article also appears in Canadian Developer Connection.

{ 3 comments }

Happy iBirthday, Steve Jobs!

by Joey deVilla on February 24, 2010

Mosaic of Apple products arranged to form picture of Steve JobsImage created by Chasis Tsevis.

Steve Jobs, Apple iCEO and one of the leaders of the Esteemed Competition, turns 55 today. Happy iBirthday, Steve!

If you want a big honkin’ alternate version of this mosaic, check this out.

{ 4 comments }

"Counting Down to Seven" badgeTime for another installment of Counting Down to Seven, a series of articles about mobile app development that I’m writing as we count down the days to MIX10, when we reveal more about the up-and-coming Windows Phone 7 Series.

If you’re following what’s happening with Windows Phone 7, you should follow Charlie Kindel – both his blog and Twitter account. Charlie is one of the people behind the new “Phone 7” experience; I don’t think he’s exaggerating in his Twitter bio when he says “The future of application development for Windows Phones is in my hands.”

In his latest blog entry – Focus, Focus, Focus – he writes that the reason that Windows Phone 7 seems atypical of Microsoft is the power of “no”. The Windows Phone team didn’t just decide what they were going to build, they also decided what they were not going to build, and work around the “5P” framework of:

  1. Purpose
  2. Principles
  3. Priorities
  4. Plan
  5. People

Here’s the Windows Phone developer experience team’s stated purpose:

Our purpose is to harness the energy, talent, and attention of developers and designers with a platform and ecosystem that delivers on the developer experience end to end; that, combined with the phone’s end-user experience, results in a winning virtuous cycle.

From that purpose, they derived some principles, among which are:

  • Every decision we make must be made mindful of the effect on end-users. Simply put, the end-user is king. 
  • We will do a few things and do them very, very well; we are better off not having a capability than doing it poorly. There are always future versions.
  • No API will be created or documented without a clear use case; “build it and they will come” APIs almost always do nothing but create bad legacy.
  • We will build on the shoulders of giants; where possible integrate instead of create.
  • We will strive to not show our organizational boundaries to developers.

What’s truly interesting is the list of Windows Phone 7’s targeted developer segments. This is an ordered list, with the highest-priority segment listed first:

  1. Consumer Developer - Pro Devs who build products that are sold directly or given out for free to general public end-users.
  2. Non-Pro Developer – Non-Pro Developers building products for academic/personal use.
  3. In-ROM Developer - Pro Devs who build products & technologies that are sold to mobile operators or device manufacturers.
  4. Enterprise Developer –Pro Devs who build apps & technologies that are sold to corporate clients and businesses.
  5. IT Developer – Pro Devs who build apps & technologies that are only for use by their own corporation.

I have often quipped that sometimes using Microsoft stuff “feels like eating from the dumpsters outside a cubicle farm”; that is, that their software targets enterprise and IT first and small-shop/indie coders like I was last. This list inverts the priorities I image the Windows Mobile team had, and my response to that is “good”.

Charlie makes a point of saying that the prioritization is temporal; over time, the priorities may change and they will serve some of the lower-priority segments, but all the while adhering to the purpose and principles listed above.

Then there’s the plan. The plan is to have Windows Phone 7 ready for the MIX conference, and it looks like that will happen. “Events,” Charlie writes, “are great forcing functions for engineering teams”.

Finally, the people. The Windows Phone 7 team is a diverse bunch coming from all across Microsoft – the Xbox people, developer division geeks as well as members from Windows Live, Exchange, Windows OS, Office and Developer and Platform Evangelism.

Go check out Charlie’s full blog entry, which describes the Windows Phone 7 team’s purpose, principles, priorities, plan and people in greater detail, and check in on him often. If you’re planning on building apps for Windows Phone 7, he’s one of the people to follow.

This article also appears in Canadian Developer Connection.

{ 0 comments }

var article = new List<InterestingDeveloperStuff>();

by Joey deVilla on February 24, 2010

For your enjoyment and enlightenment, I present 4 articles featuring lists…

Soma’s Key Software Development Trends

S. Somasegar

S. “Soma” Somasegar, Senior Vice President of Microsoft’s Developer Division, writes about what he sees as emerging trends in the world of software development.  He says it’s not a comprehensive list of all trends in the world of building software, but trends where Microsoft is doing some serious investing of time, energy and Dark-Side-of-the-Force midichlorians. You’ll have to read the article for a more fully fleshed-out explanation of each trend, which I’ve listed below:

  • Cloud Computing: Or as I like to call it, “Servers as a Service”.
  • The Web as a Platform: Contrary to what you might have heard, The Empire’s pretty big on the web, on both the server side (from Azure to IIS to SharePoint to ASP.NET/ASP.NET MVC) to the client side (HTML, JavaScript/jQuery and Silverlight).
  • Parallel Computing: I can’t tell you the number of things I’ve ruined with threads. I eventually get them right, but wow, can they be a lot of work. .NET 4.0 introduces a number of parallel programming features that make taking advantage of the multicore power in even the cheapest of today’s machines much easier.
  • Proliferation of Devices: “Computer” no longer refers to just the machine on your desktop or in your lap and “user interface” is no longer limited to just “keyboard, mouse and monitor”.
  • Agile Development Process: The upcoming Visual Studio 2010 provides lots of support for agile processes. Hopefully, we’ll see third parties write plug-ins to support even more!
  • Distributed Development: I don’t just talk about geographically-spread work, I live it! I telecommute from the home office, HacklabTO or cafes, and my co-workers in Microsoft Canada’s Technical Evangelism Team pipe in from Mississauga, Ottawa and Calgary.

My first response to the list was “Hey, Soma, where’s mobile?”, but I choose to group it in with “Proliferation of Devices”.

Five Pervasive Myths About Older Software Developers

1960s computer programmers

I’m 42 years old. In most white-collar work, I would be seen as “entering my prime”. In the software world, many employers would advise me to “stop buying green bananas” (think about it for a moment if you don’t get the joke). Age discrimination is an unfortunate fact of life in our industry, which prizes youth and particularly its willingness to work long hours for little pay.

In his blog, Lessons of Failure, Dave Rodenbaugh debunks five myths about “older” software developers:

  • Myth: Older software developers are more expensive than younger ones, making younger developers more desirable.
    • Reality: Younger means cheaper, but a team of nothing but young’uns without much experience will cost you in the long run. Hiring experienced people is like getting insurance against some of the classic mistakes in project management and software development that you only truly learn in the School of Hard Knocks.
  • Myth: Older software developers are less flexible and less capable of learning new technologies because of their legacy knowledge.
    • Reality: It’s experience that makes software developers more capable of migrating to new technologies, frameworks and systems more quickly and in greater depth.
  • Myth: Older software developers are less able to perform the arduous tasks of software development (read:  work long, painful hours) because of family commitments and other attachments that younger workers don’t have.
    • Reality: They’ve learned the hard way that there’s a point of diminishing returns with long hours. I know I did.
  • Myth: Older software developers are less mentally agile than younger ones.
    • Reality: Yes, aging slows down the brain a little, but thinking faster isn’t always better. There’s also thinking wisely and using good judgment. To quote the old adage: “Good judgment comes from experience, experience from bad judgment.”
  • Myth: Older software developers are more jaded and cynical and therefore, less desirable in the workplace than younger ones.  Younger developers are more enthusiastic than older ones.
    • Reality: Passion is passion. If you have it for your job at 40, you probably really love that field. I know I do. [Joey’s note: Besides, have you met members of Generation Y? For a crowd so young, they’re an incredibly cynical and jaded bunch. I blame Gossip Girl.]

Why Matt Hidinger Loves ASP.NET MVC

Matt Hidinger I’m going to express a personal preference: I’d much rather build web apps with ASP.NET MVC than with Web forms. That’s the PHP-and-Smarty/Ruby on Rails developer in me talking. Matt Hidinger documents a “Web Forms vs. ASP.NET MVC” debate he had on IRC and lists these major points:

  • Fallacy: Web forms does everything I need it to.
    • Matt’s response: “getting something done, and getting something done in a testable, maintainable, long-term way, are entirely different”
  • Fallacy: MVC is just a bunch of <%= HtmlHelpers %>.
    • Matt’s response: “HtmlHelpers are 4% of the ASP.NET MVC platform. That’s like saying <asp:Textbox> is all of asp.net web forms” – he also points to an article titled Controls Do Not Make You More Productive.
  • Fallacy: Web forms is easier.
    • Matt’s response: “developers every day struggle with dynamic controls and databinding in even slightly-complex real-world scenarios. Mindlessly tweaking code and refreshing the page to see what ASP.NET will render.”

Matt also lists a series of facts, which I agree with:

  • Web forms is black magic
  • MVC enables robust Ajax support
  • MVC is closer to the metal
  • Data binding is confusing, full of indirection and runtime logic
  • MVC lends itself to good design
  • Web forms is miserable without JavaScript
  • MVC is testable
  • MVC allows multiple <form> tags

“I like coding. I hate shipping software.”

Microsoft "Ship-It" award for Sriram Krishnan, who shipped Visual Studio 2005 and .NET 2.0

Trey Stout says that shipping has all the worst elements of development, namely:

  • translating
  • documenting
  • testing
  • DLL hell
  • install scripts
  • customers
  • marketing

Ah, DLL hell, I remember you well. Once, a major customer’s office lost all reporting functionality from software I developed because they got a new printer, whose “install me first” CD added some DLLs which clobbered the ones from my app’s installation.

Trey also says that coding has all the best elements of development:

  • Talking with other developers
  • white boards
  • new tech
  • compilers
  • crazy features
  • jokes in comments
  • feelings of accomplishment.
  • satisfying diff emails

What’s the solution? In my case, it’s to go into developer evangelism. You get to code, and you don’t have to ship (don’t get me wrong – shipping has many rewards). Of course, if you want my job, you will have to pry it from my cold, dead fingers.

This article also appears in Canadian Developer Connection.

{ 2 comments }

Counting Down to Seven (Mar 15th at MIX 10): A series about ideas for mobile apps

Welcome to another installment of Counting Down to Seven, a series of articles about mobile app development that I’m writing as we count down the days to MIX10, when we reveal more about the up-and-coming Windows Phone 7 Series.

You’re going to have to wait a couple more weeks before I can tell you the specifics of Windows Phone 7 development. In the meantime, I thought I’d write about mobile development in general. If you’re new to mobile development, this series will be a nice overview of the field; if you’ve built apps for mobile phones before, think of it as a refresher course, but you might learn something you didn’t know before.

Mobile Design and Development, by Brian Fling

Cover of "Mobile Design and Development" The O’Reilly book Mobile Design and Development is a worthwhile read for anyone who’s planning to build and sell mobile applications. It’s written by Brian Fling, the owner of the “mobiledesign” mailing list (which could use a little love and attention these days), advisor to big brands getting into the mobile space and someone who (according to his author bio) has “worked with a lot of well funded companies that have failed miserably”.

Mobile Design and Development is probably the best general book on mobile development available right now. You’re not going to learn any specific phone’s API from this book; instead, you’ll learn about the industry, its state as of the time the book was published (August 2009) and the sort of things you should be thinking about if you’re developing mobile apps for an audience. While the ever-changing nature of the mobile world means that some of the information in the book has a “sell-by” date, many of the ideas covered in the book will be applicable for much longer.

“The 7th Mass Medium”

By happy coincidence, the version number of our soon-to-be-unleashed mobile OS, 7, keeps popping up in discussions of mobile technology.

The number 7 makes an appearance in Mobile Design and Development’s third chapter, titled Why Mobile? In it, Fling refers to mobile technology as “The 7th Mass Medium”, an term he attributes to Tomi T. Ahonen, author of the book and blog Communities Dominate Brands.

You were probably wondering what the 6 previous mass media are. In chronological order, they’re:

  1. Print
  2. Sound recordings
  3. Cinema
  4. Radio
  5. Television
  6. Internet

The interesting thing about the 7th mass medium is that it encapsulates the previous 6. Although we’re only just beginning to do so, we read, listen, watch and surf on mobile devices.

The 7 Unique Qualities of the 7th Mass Medium

Man on mobile phone: "Yeah, I'm posing for a stock photo right now..." Mobile Design and Development cites an old blog entry of Ahonen’s, in which he lists 5 unique qualities of mobile as a medium. Ahonen wrote a later article, bumping that number up to 7. They’re things worth keeping in mind when you’re designing mobile apps. Depending on your point of view, some of the qualities may be good things or bad things, but no matter what you think of them, you have to account for them. They are:

1. The mobile phone is the first personal mass medium.

We share books and magazines, listen to the radio and dance to DJ en masse, watch TV shows and movies with others, and many households have a computer used by more than one person. But for most people, their mobile phone is theirs and theirs alone.

Ahonen points to a 2006 survey by the advertising agencies BBDO and Proximity in which that 63% of the people surveyed wouldn’t lend their mobile phone to anyone else.

2. The mobile phone is a permanently carried medium.

According to a Morgan Stanley survey from 2007, 91% of the respondents said that they kept the phone within a meter of them day and night, even when in the bathroom or asleep. Many people use it as the 21st century equivalent of the pocket watch, and when I travel, I’ve found it to be a very reliable alarm clock. It’s the computing, communications and media device you have with you all the time.

According to BBDO/Proximity 2006 study cited in the previous point:

  • People in China were choose between retrieving a forgotten wallet or phone at home; 69% chose the phone.
  • Women in Japan have daytime and evening phones, in the same way they have daytime and evening handbags.

3. The mobile phone is the only always-on mass medium.

There may be times when we turn off the ringer and vibrate functions, but the only time most people turn off their mobile phones is when they’re on a plane (and if you fly often, you know that many people turn on their phones moments after the plane’s wheels touch the ground). The closest any other medium comes to always-on is the internet that subset of people who keep a computer with broadband powered up all the time, followed by falling asleep with the TV or radio on.

According to BBDO/Proximity 2006 study cited in the previous point, 81% of youth between the ages of 15 and 20 sleep with their mobile phones turned on.

Woman on mobile phone: "That's odd...I'm posing for a stock photo too!" 4. The mobile phone is the only mass medium with a built-in payment mechanism.

Between the “app store” model for delivering applications and the fact that they’re tied to a networking provider that also acts as a billing agency, mobile phones are the first mass medium with a built-in toll booth. Even people too young to have credit cards can be billed; they can pay for purchases made via their phone through their phone bill with cash.

5. The mobile phone is the only mass medium available at the point of creative inspiration.

This is a direct by-product of mobile phones being always-on and always with us. Even those of us who carry our laptops everywhere have them tucked away in a carry case or bag, and I’m the rare person who always has a camera handy. While popular with the “lifehacker” crowd, not everyone carries a Moleskine notebook for jotting down ideas. But many people carry a mobile phone in an easy-to-reach place. It lets us create content in the form of writing, photos, and audio and video recordings in near real time. This is the basis of citizen journalism (whose effects were recently felt here in Toronto during the recent “cold war” between passengers of our rapid transit system and its employees).

6. The mobile phone is the only mass medium with accurate audience measurement.

“The internet gave us a false promise,” Ahonen writes, but audience measurement wasn’t what its creators had in mind. However, the mobile phone, it’s possible to know what every subscriber does since each is uniquely tied to a specific ID.

According to Ahonen:

  • TV audience measurement can catch 1% of audience data
  • Internet audience measurement can catch 10% of audience data
  • Mobile phone audience measurement can catch 90% of audience data

7. The mobile phone is the only mass medium that captures the social context of media consumption.

By “social context of media consumption”, Ahonen means that with mobile phones, we can measure not just what people use, but with whom. It’s the next generation version of Amazon’s “recommendations” system and a direct result of mobile’s always-on, always-with-us, and audience measurement qualities.

This article also appears in Canadian Developer Connection.

{ 1 comment }

Cloud Cover, Episode 1

by Joey deVilla on February 23, 2010

Get Microsoft Silverlight
Don’t have Silverlight? Get it here or download the video in MP4, WMA, WMV and Zune formats.

Cloud Cover is a new show on Microsoft’s Channel 9 that covers the Windows Azure platform. In this first episode, hosts Ryan Dunn and Steve Marx show you:

  • Azure’s Service Management API and how to use PowerShell cmdlets to manage your cloud services, and
  • How to get started quickly with Windows Azure.

They also talk about updates to SQL Azure, Windows Azure drives, new Windows Azure storage management tools and Azure Reader architecture.

This article also appears in Canadian Developer Connection.

{ 0 comments }

EnergizeIT: Coming to 20 Cities Across Canada

by Joey deVilla on February 23, 2010

EnergizeIT: Anything is Possible - March/April 2010

Whenever you do anything where money changes hands, from getting cash from the ATM to buying anything – movie tickets, groceries, a new pair of shoes or a new car to booking a flight and hotel room, chances are that there’s some Microsoft technology involved. It could be an SQL Server database, an app written in Visual Studio, a site living on IIS or Azure or a business process powered by SharePoint, and more likely than not, someone was using Office as well. From devices that fit in your pocket to cavernous data centres, the Microsoft platform helps millions of people across a broad spectrum of industries get real work done every day.

Want to know what’s possible with the Microsoft-based platform? Want to know how it all fits together? That’s what the EnergizeIT 2010 tour is for. In March and April, we’re visiting 20 cities across Canada – as far west as Victoria and as far east as St. John’s – to host free local gatherings where we show you how you can take advantage of our tools and technology to drive your business and your career.

EnergizeIT will comprise different sorts of events in different cities, all of which are listed below.

The “From the Client to the Cloud” Full-Day Events
(Vancouver, Edmonton, Calgary, Ottawa, Toronto and Montreal)

City skylines: Vancouver (YVR), Edmonton (YEG), Calgary (YYC), Ottawa (YOW), Toronto (YYZ), Montreal (YUL)

In Canada’s six largest cities, we’ll hold our EnergizeIT From the Client to the Cloud full-day events, where we’ll cover the Microsoft-based platform in detail. And yes, even though it’s full-day, it’ll still be free!

In the morning, we’ll talk about the big picture. We’ll show you a scenario featuring the Microsoft-based platform as seen from different points of view: the customer, the information worker, the developer and the IT professional. You’ll see our latest and greatest as well as our up-and-coming developer goodies: Silverlight, .NET 4.0 and Visual Studio 2010. We’ll show you Windows 7 and Azure in action, talk about Office 2010 and SharePoint 2010, and tell you how all of Microsoft’s stuff works together.

Just as the morning session answers the question “What’s the latest technology?”, the afternoon sessions answer the question “How do I get to the latest technology from where I am now?” These sessions, split into two tracks – one on infrastructure management and deployment, one on the development process – will cover what you can do with our tools and technology in a little more depth. They’ll show you what you need to implement what you saw in the morning session and provide a roadmap you can follow to learn more and take action.

For more details about From the Client to the Cloud events or to register (it’s free!), visit the EnergizeIT From the Client to the Cloud page.

The “Community Connection” Evening Events
(Many Cities Across Canada)

A scene from EnergizeIT 2009 in Mississauga

We’ll also hold Community Connection events in the evening in many cities across Canada, where we’ll do the “big picture” session (the morning session) of our From the Client to the Cloud events.

The Community Connection evening events will take place in the following cities:

  • British Columbia: Vancouver, Kelowna and Victoria
  • Alberta: Edmonton and Calgary
  • Saskatchewan: Regina and Saskatoon
  • Manitoba: Winnipeg
  • Ontario: Ottawa, London, Kitchener and Mississauga
  • Quebec: Montreal, Quebec City and Trois-Rivières
  • Atlantic Canada: Halifax, St. John’s, Moncton and Fredericton

For more details about Community Connection or to register (it’s free!), visit the EnergizeIT Community Connection page.

Office 2010 Installfests
(Vancouver, Ottawa, Calgary, Montreal, Mississauga)

Microsoft Office 2010 logoI’ve been using the beta and release candidate versions of Office 2010 in my day-to-day work for the past couple of months – PowerPoint for my public speaking stuff, Outlook for email, scheduling and get-things-done stuff and OneNote for my copious note-taking. We’d like you to take it for a spin!

Join us at one of our Microsoft Office 2010 Installfests and we’ll hook you up with the latest build of Office, show you some of our favourite features and demonstrate how to get the most out of our productivity suite.

For more details about the Office 2010 Installfests or to register (it’s free!), visit the EnergizeIT Office 2010 Installfest page.

Academic Sessions

We’ll also be passing through a number of colleges across Canada, talking to students about getting ready for the working world and showing them resources that they can use to fire up their careers.

This article also appears in Canadian Developer Connection.

{ 0 comments }

Ignite Your CodingIt all starts next week on Thursday, March 4th: Ignite Your Coding, the live webcast where we interview some of the biggest brains in the industry, and then hand over the interview to you!

In Ignite Your Coding, my fellow Developer Evangelist John Bristowe and I will talk to developers who’ve made their mark on the industry and ask them how they got started, what sorts of projects they’re working on, what interests them, where they see the industry heading, all with an eye towards helping you make sense of the changes happening in the world of software development. We’ll ask the questions for the first part, but then it’ll be your turn to ask them. The webcast will take place on Thursdays in March and April, and it won’t cost you a thing to catch them.

Our First Guest: Andy Hunt

Andy HuntAre you into agile programming? Andy Hunt co-authored the Manifesto. Does The Pragmatic Programmer occupy a special place on your bookshelf? (And really, it should.) Andy co-wrote that too. Have you ever coded using Ruby on Rails or ASP.NET MVC? Chances are you picked up some knowledge, either directly or indirectly, from a book published by Andy’s book publishing company, The Pragmatic Bookshelf.

We’re quite fortunate to have Andy as our first guest, and we’re looking forward to the interview! Our live webcast with Andy will take place on Thursday, March 4th at 2:00 p.m. Eastern (11:00 a.m. Pacific) and run for an hour. To catch the webcast, all you have to do is register – it’s free!

Pragmatic Thinking and Learning

There are all sorts of books out there that talk about how to get the most of your programming tools, from IDEs to utilities to languages to frameworks to methodologies. But of all these tools, the most important tool is the one that’s largely ignored: your brain. Enter Andy’s latest book, Pragmatic Thinking and Learning, which I declared “My Favourite Geek Book of 2008”. There are many books and tools for refactoring your code; this one’s about refactoring your brain. First, it presents the brain in a way that a programmer can grasp:

Diagram showing a "Dual core" model of the brain

…and then talks about the many ways you can refactor it:

  • Cover of "Pragmatic Thinking and Learning"Taking advantage of R-mode (often called the “right brain” in pop psychology), which often gets ignored because of its non-linear, non-linguistic, unpredictable and even “artsy” nature. It’s actually an amazing problem-solver, so much that PT&L suggests that you should “lead with R-mode and follow with L-mode”, or more colloquially, “write drunk; revise sober”.
  • Working around the bugs in your brain. And there are many, from the primitive “lizard brain” that likes to override our higher cognitive functions to cognitive biases to generational affinity.
  • Learning deliberately: what learning is and isn’t, how to plan to learn, figuring out what your learning style is and how to best take advantage of it, and harnessing mind maps, documentation and teaching in order to learn.
  • Gaining experience, which includes understanding the importance of fun and how pressure kills cognition, learning the “inner game” and why your mantra shouldn’t be “learn to build”, but “build to learn”.
  • Managing focus, a very important topic since there are so many things vying for it, from office interruptions to the siren song of the internet, with email, IM, Twitter, Digg, Reddit and LOLcats. One of my favourite bits in this section was some research whose results indicated that constantly checking your email lowers your effective IQ more than smoking a joint.

Get the book, then meet the author! Register for Andy’s Ignite Your Coding session!

This article also appears in Canadian Developer Connection.

{ 0 comments }

Windows Phone 7: Challenge Accepted!

by Joey deVilla on February 22, 2010

Hands holding Win 7 Phone that reads "You'll find out at MIX10! (Mar 15)"

"Counting Down to Seven" badge Over at Wired’s Gadget Lab blog, there’s an article titled Microsoft’s Challenge with Windows Phone 7 is Wooing Developers. They saved the most important line for last, and in case you missed it, I’ll repeat it here:

The company plans to preview its development tools at its MIX developers conference next month.

If you can wait three weeks, you’ll get a fuller story. If you attend MIX (Monday, March 15th through Wednesday March 17th at the Mandalay Bay Convention Center in Las Vegas), you’ll even get development tools and support!

I agree with the title of the article. Complete changes of direction and the circumstances that dictate them are never easy (but then again, that’s why I signed on with Microsoft: for the challenge). We will have to work hard to gain mobile developers’ interest and trust, and it’s quite clear that we’ll have to reach out to the same sort of independent developer coding away at a kitchen table, cafe or converted warehouse office – the kind who made the apps that made the iPhone what it is today. From what I’ve seen of the developer outreach plans for Windows Phone 7, I think it’s doable.

I’d take the quotes from the people interviewed in the article with a big grain of salt. The writer took the “cover all bases given your deadline” approach and quoted a whopping three people whose collective opinions cover the full spectrum of reactions: one positive, one negative, and one (mostly) neutral. None of their titles suggests “developer”: two are CEOs and one is a COO. The negative guy completely misses the point in his remark about hubs and a cool-looking UI, and the neutral guy seems to be drinking deeply of the anti-RIA kool-aid, dismissing technologies like Flash and Silverlight as made for desktops and not for mobile, while forgetting that other technology now considered to be mobile – like browsers and operating systems — have the same supposed limitations. They were, after all, originally made for the desktop.

I accept the challenge of wooing developers. I know what it’s like, speaking as someone who left Microsoft development in the wake of the dot-com bubble burst for other tools and technologies. But what brought me back were signs of a sea change at Microsoft, from the Xbox to SDL to its initiatives to better “get” the web to dynamic languages and much more, and I think that Windows Phone 7 is part of it.

In the end, the developer whose opinion matters most is you. To that end, I plan to use every resource at my disposal to get the toolkits, tutorials and techniques necessary for Windows Phone 7 development into your hands. I’m going to support your development beyond just the “download this, and here’s the code for Hello, World!” – expect stuff on how to build great mobile experiences, what people are looking for and how to sell your mobile apps. (And hey, if you have any ideas or suggestions, I’m open to them – drop me an email, a tweet or a comment).

This article also appears in Canadian Developer Connection.

{ 5 comments }

Counting Down to Seven: Lou Reed, Mobile App Designer

by Joey deVilla on February 22, 2010

Three Weeks to Go!

Counting Down to Seven (Mar 15th at MIX 10): A series about ideas for mobile appsWe’re three weeks away from the day when a lot more about Windows Phone 7 will be revealed. On Monday, May 15th, the MIX10 conference in Las Vegas is expected to open with a bang as developers and designers will learn about “WP7’s” programming and design models as well as the opportunities that Microsoft’s reworked-from-the-ground-up mobile phone OS will provide. As part of a team of evangelists who were picked to champion WP7, I’m looking forward to getting my feet wet developing for this new platform and sharing what I learn with all of you.

As good as the early indications are – the demos are impressive, and this is likely the first time that anything made by The Empire been described as “soulful” – WP7’s introduction won’t be without some significant challenges. As far as current-generation smartphones go, WP7 is a late entry into a fiercely competitive market featuring a rival who can boast about having an impressive 100,000 applications in its store. There’s the matter of the wait; the 7 Series phones won’t hit the market until later this year, and in the meantime, the Esteemed Competition will be releasing new models. There will also be the cries of “Too little, too late,” from the people who observed Microsoft squander an early lead with smartphones (I can understand the argument for “late”, but having seen some advance inside info on what these babies can do, “little” is not a valid argument).

The Real Challenge

Windows Mobile 6 user interfaceI think that the biggest challenge is going to be creating a new Windows Phone culture. I believe that one of the problems with the developer culture surrounding the old Windows Mobile was that they treated the mobile phone as simply a shrunken-down version of the desktop. As I’ve written before, the desktop is what made Microsoft a successful company, but it’s also turned into an albatross that has impeded forward movement. The company built their mobile OS in a specific way with a specific design philosophy for a specific audience: “suits”. The developers took their cues from those decisions and built applications to match. The end result wasn’t pretty in any way: business-wise, functionally or aesthetically.

We – that’s both Microsoft as well as the development community that we want to gather around Windows Phone 7 — need to create a culture that “gets” the smartphone and cares about software craftsmanship, both in the underlying programming as well as in the user experience. I want to see a development culture that encourages both technical and design chops, the way that the iPhone community does, as well as that the way web app developers like 37signals do. I want Windows Phone to set the standard for mobile applications.

To that end, I decided to write this series – Counting Down to Seven – as a way to get developers to start thinking about mobile applications. I’ve been looking at applications written for the Esteemed Competition’s phones, books and articles on mobile development for other platforms and ideas from the world of user interface and user experience design as well as from science fiction (a long-standing source of ideas for neat-o devices that fit in your pocket). My hope is to convince you not just to write apps for Windows Phone 7, but also to write apps that redefine mobile computing, do interesting and useful stuff and delight our users.

Take a Walk on the Phone Side

Lou Reed, in sunglasses, with a cigarette

There’s a mobile app that was designed by Lou Reed. Yes, that Lou Reed – the guitarist, vocalist and songwriter for the Velvet Underground, then Mr. Walk on the Wild Side and more recently, Mr. Laurie Anderson.

The app is called Lou Zoom, and although he didn’t implement it (that job went to Ben Syverson), he came up with the idea and co-designed it. That’s the sort of excitement that I’d like to see behind Windows Phone 7: so full of possibilities that even people who’d never think of designing applications start doing just that.

The idea behind Lou Zoom is quite simple: it’s a contact manager app, like the Contacts app that comes with the iPhone. The difference is that it has a couple of tweaks, no doubt born out of frustration with the current app. I’ve listed the tweaks below:

Tweak #1: Easy-to-Read Contact List

In the standard Contacts app, the list of contacts is shown as a standard list, with all entries the same size. In Lou Zoom, the list of contacts has variable-sized names: each name in Helvetica Neue, with the font size increased so that it is fills the width of the screen. Here’s a screen shot taken from the Lou Zoom page:

Screenshot of contact list from Lou Zoom app

This design might make the sort of designers who prize uniformity cringe, but think about this: phones have small screens and are often used in less-than-ideal reading conditions. If you’re going to remain under 30 forever, are guaranteed to always have 20/20 vision and vow to always remain stationary and alone in a well-lit room, you don’t need this feature. For the rest of us – including me, a guy in his early forties with standard issue Asian myopia, who finds himself squinting more and more at small type, who often uses his phone from places like dimly-lit cabs going over potholes at breakneck speeds or in crowded, dimly-lit conference spaces and having had a couple of caesars – this user interface tweak is very helpful indeed.

Tweak #2: Easy-to-Read Contact Pages

Just as the contacts are listed in nice big type, so is the info on each contact page:

Screenshot of contact info page from Lou Zoom app

As with the contact list, Lou Zoom goes for legibility and displays the information in large type. It goes one step further by displaying the text in high contrast. If the contact has multiple addresses, phone numbers or email address, a left or right swipe over the appropriate field will give you those alternates.

An Aside: Windows Phone 7’s People Profiles

The “Profile” page in Windows Phone 7’s “People” hub takes an approach that is stylistically similar to the way Lou Zoom displays contact info:

Screenshot of Windows Phone 7 profile page for a person in the "People" hub

…but it takes a markedly different approach to which items are displayed prominently. Windows Phone 7’s design is centered around what you want to do rather than with just throwing information at you. For example, the actions “call mobile”, “text mobile” and “call home” are in large type, while the person’s mobile and home numbers are in smaller text. This is a good idea — after all, what you really want to do is reach someone, not look up their phone number. The “address book” paradigm is a holdover from the days when phones weren’t smart enough to dial themselves.

Tweak #3: Search on Any Part of the Name

The standard Contacts app has a simple search function. Type in j and it will immediately present you with a list of all names in your contacts beginning with “j” (ignoring case, of course). If you expand that j to become john, you’ll get a list of all the names in your contacts beginning with “john”. The Contacts app will apply the search term you provide only to the leftmost end of the names in your contacts:

Screenshot of search for Lou Zoom app

Lou Zoom improves on search by letting you search on any part of the name. Typing in john gives you a list of all the names in your contacts containing “john” in any part of the name, such as “John Smith”, “Alice Johnson” or “Olivia Newton-John”.

The Lou Zoom site provides its own example:

Has Kate Bell recently become Kate Appleseed-Bell? Searching for "Bell" will still bring up her name in Lou Zoom. From there, her full info is just a tap away.

It’s also great for searching for people by nickname. For instance, typing in mclovin into Lou Zoom’s search will give you the name of your buddy, who’s listed in your contacts as Christopher “McLovin’” Fogell.

What Can You Tweak?

It’s time to take a page from Lou Reed’s book and find apps that could benefit from a little tweaking. Look around at mobile apps and if you find yourself and other people saying “if only it did this”. Those are opportunities! The best applications aren’t always brand-new paradigm-shattering ideas; sometimes they’re old ones with a couple of tweaks.

This article also appears in Canadian Developer Connection.

{ 0 comments }

“Our Fine Tradition of Clumsy Names”

by Joey deVilla on February 17, 2010

"Counting Down to Seven" badgeNice phone, shame about the name.

As I quipped in an earlier post, the name “Windows Phone 7 Series” is a bit long, and suggests that the people who do Microsoft’s branding get paid by the syllable. This is the sort of left-brain-lopsided mindset that has produced names like “Windows Server 2008 R2”.

My fellow Developer Evangelist John Bristowe pointed me to this Joy of Tech comic which attempts to ratiocinate the etymology of this unwieldy appellation:

"Joy of Tech" comic illustrating the meeting that led to the name "Windows Phone 7 Series"

{ 2 comments }

Albert Shum on Windows Phone 7

by Joey deVilla on February 17, 2010

Albert Shum

"Counting Down to Seven" badgeWhenever Microsoft needs to make a radical change in the way they do things, they bring in a hip Asian guy. That’s why they’ve got me shaking things up on Microsoft Canada’s Tech Evangelism Team, and it’s also why Albert Shum is redefining the way Microsoft does mobile phones in his role as the Director of Microsoft’s Mobile Experience Design Team. True to my earlier statement that Canadian techies have been punching well above their weight class since Alexander Graham Bell, Albert studied engineering and architecture at the University of Waterloo.

Here’s a video featuring Albert talking about the design philosophies behind the completely reworked from-the-ground-up Windows Phone 7. It’s featured in the Microsoft News Centre article Windows Phone Designer Seeks the Right Balance.

I like what he says at the end of the video:

What will our users see first? I think hopefully they’ll see themselves in the phone. I think that’s a really key part of how we designed it. It’s really focused on making this phone your phone. We took the idea of making it personal, so that when you look at the start experience, it’s about your content. It’s about your people, it’s your pictures, it’s your music, it’s presented way up there.

My phone is going to be different than your phone, and I think that’s a really key part: that personalized way of navigating the thing that you care about, the things that you want to share, the things you want to listen to, and those are the key moments where we first present that it’s your phone.

If you’re thinking up ideas for applications to write for Windows Phone, keep what Albert says in mind: it’s not about feature lists; it’s all about the user and the user experience.

This article also appears in Canadian Developer Connection.

{ 5 comments }