SharePoint: An Opportunity in the Econopocalypse

Diagram showing what SharePoint does: Document management, calendars, surveys and voting, committees and chapters, tasks and projects, intranet/extranet and collaborationSharePoint has always been a tricky thing to describe, but the opening paragraphs from a recent article in the New York Times, Microsoft’s SharePoint Thrives in the Recession, does a pretty decent job:

Hang around at Microsoft’s Redmond, Wash., headquarters for five or ten minutes and someone dressed in khaki pants and a blue shirt is bound to tell you about the wonders of SharePoint — one of the company’s most successful and increasingly controversial lines of software.

Think of SharePoint as the jack-of-all-trades in the business software realm. Companies use it to create Web sites and then manage content for those sites. It can help workers collaborate on projects and documents. And it has a variety of corporate search and business intelligence tools too.

Microsoft wraps all of this software up into a package and sells the bundle at a reasonable price. In fact, the total cost of the bundle often comes in below what specialist companies would charge for a single application in, say, the business intelligence or corporate search fields.

SharePoint development seems to be a field rich with opportunity. The Ignite Your Career webcasts that Microsoft Canada had earlier this year suggested that SharePoint developers are in demand. Close to home, I know Toronto-based developers working on SharePoint projects for Bank of Montreal. The New York Times article reports that Ferrari, Viacom and Starbucks use it for a number of tasks, including the creation of their public-facing websites. Friends of mine in Ottawa report that the Canadian federal government makes heavy use of it. A recent article in O’Reilly Radar bears the title Want A Job? Learn SharePoint, Says Gary Blatt; it reports that the U.S. federal government is chock full of SharePoint projects and not enough developers.

Like Office, SharePoint has grown from a collection of productivity applications into a full-fledged platform, and where there’s a platform on which business and governments run, especially a platform whose purpose is to let people work collaboratively, there’s a developer opportunity. Over the next little while, I’m going to post articles about SharePoint and developing for it, using my connections within both The Empire and the developer community (such as my friends at ObjectSharp) to get more information.

If you’re planning on attending TechDays 2009, Microsoft Canada’s cross-country tour of seven cities in which we talk about getting the most out of the Microsoft Platform and sharpening your skills, you might want to check out the session titled Developing and Consuming Services for SharePoint. Here’s it’s abstract:

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.

Watch this space for more articles about SharePoint and SharePoint development!

This article also appears in Canadian Developer Connection.


The Device/Desktop Opportunity

This article originally appeared in Canadian Developer Connection.


Why isn’t Brookstone in Canada yet?

For those of you who aren’t familiar with Brookstone, a good way to describe it is “lifestyle gadget store”. A good portion of their catalog is devoted to “lifestyle electronics”: things like

and an assortment of digital photo albums like the “My Life” digital photo album pictured here. It holds up to 4000 photos and sports a 3.5 inch screen with 320 by 240 pixel resolution and will fit into a purse or jacket pocket. Sure, you can show off photos using your mobile phone, PDA, netbook or laptop, but there’s a considerable market for simple, single-use devices like this.

Brookstone is a great store, and whenever I’m in the U.S. and in a mall or Logan Airport, I can’t resist taking a peek inside.

My mom is also a big fan of Brookstone stuff, so when I was down in the U.S. for American Thanksgiving, I made it a point to get her something from them for Christmas. She loves carrying printouts of photos of the grandkids, so I got her a “My Life” digital photo album. I figured I’d pre-load it with family photos before wrapping it up.

I told my mother-in-law about my purchase and she said “I have one of those. They’re really nice, but I can’t figure out how to use the software.”

So, being the good son-in-law that I am, I decided to take a look at the software, which is called Photo Resizer. It worked just fine; the problem is that its interface could use some tweaking.

Here’s the first thing you see when you run the program:

Screenshot of Brookstone "My Life" photo frame software 

I’m no psychic, but I can say with near-100% certainty that you probably don’t store photos in your Windows/system32 directory. So I used the rather old-school directory navigator to get to my Pictures directory and then to where I’d stored my photos from PDC 2008:

Screenshot of Brookstone "My Life" photo frame software

From there, you check the boxes corresponding the photos you want to transfer.

Once you’ve done that, it’s time to select which album you want to move the photos to. The digital album contains 4 internal albums, so you can group your photos by criteria – perhaps album 1 will hold your vacation photos, album 2 will have family photos, and so on. There’s a physical button for each album, so switching between albums is pretty quick.

You select the album you want to move the photos to by clicking the Browse button (it’s in the Save Photos panel), which makes a modal directory selector window appear:

Screenshot of Brookstone "My Life" photo frame software

…at which point you’d select the directory corresponding to album you want to move your photos to. Fortunately for the user, the default directory in this directory selector is ALBUM1 in the volume named PHOTOALBUM rather than Windows/system32. I suppose if I really wanted to, I could use the app for more than just transferring photos to the album, but as a quick utility for downsizing photos to 320 by 240 and saving them in the directory of my choice.

Once that’s done, one step remains: clicking the Resize button, which is the one button in the entire interface that doesn’t look like a button.

If you’re a reader of this blog, you probably could take a look at the interface and immediately understand what the program does and know what to do to get the photos on your your drives and camera cards into your photo album. But I’m willing to bet that many people in the target market for the photo album would find Photo Resizer’s user interface confounding. My mother-in-law did, and she’s probably not the only one.

Now don’t get me wrong – I actually like the Brookstone “My Life” digital photo album. The device itself is easy to use, and I know a lot of people who’d love one of these, and I’m sure you do too. I just think that there’s an opportunity for developers of Windows desktop apps here, and probably with a lot of consumer goods that hook up to people’s PCs.

What would it take to build a user-friendlier version of Photo Resizer?

Fortunately, we’re in the USB age, which means that as far as your computer is concerned, many USB devices “look” just like hard drives. Such is the case with the “My Life” photo album, which looks like a drive with the volume name PHOTOALBUM containing four directories, ALBUM1 through ALBUM4. Reduced to its essence, Photo Resizer simply does the following:

  • It asks the user to specify a set of photos
  • For each photo in the set, it creates a version reduced to 320 by 240 pixels at 96 dpi
  • It saves each of those reduced photos in a specified directory

On one level, it’s a reasonable hobby project. User interface and user experience gurus could have a field day dreaming up a revised user interface, and developers could use this as an opportunity to try developing an app using WPF.

On another level, it’s an opportunity. How many times have you used a very nice device that came with software for your computer that seemed like an afterthought? I can think of a number of devices that I own or have owned that fall into that category. Perhaps there’s a market for improved applications with beautiful, intuitive user interfaces for devices like the “My Life” photo album. Maybe they could be sold online for some small fee – I’m think 5 or 10 dollars. It could be a nice side business for a developer; at the very least, it’s another “feather in your cap” for your resume.

I told my mother-in-law that I’d write an easier-to-use app that she could use to transfer photos to her album. While I’m at it, I’ll post some articles covering what I did and maybe solicit your input. Once it’s done, I’ll post both the app and its code online for you to peruse.

Here’s the challenge for you: can you think of any opportunities to write improved applications for devices that hook up to computers? Can you write a better app for the “My Life” digital photo frame?