New & Improved ObjectSharp Newsletter, more content, sucks less

image If you get our newsletter, you'll hopefully appreciate the new layout and content. Thanks to the stylings of Mr. Nick Van Exan and human aggregations of Julie James.

The current newsletter can be browsed online at There is no RSS feed (yet) nor online subscription mechanism, so in the meantime, drop Julie James an email at jjames at and she'll add you to her list.

Building Composite Applications at Toronto SharePoint Camp

This past Saturday, I gave a talk at the Toronto SharePoint Camp on building composite applications. I started talking in general requirements terms of why composite applications are useful, what they are, and what are the platform requirements - it naturally came down to a SharePoint demo - it's a great platform for building web based composite applications. The nice thing about SharePoint is that much of that work can be done in an ad hoc fashion. This means less plumbing code for us developers and we get to focus on solving business problems.

Some of the things I demonstrated are all available with Windows SharePoint Services (free). For example, Document Libraries and Custom lists, along with the excellent Outlook integration (including offline support) not to mention version control. Then we got into Workflow and integration with enterprise data with the Business Data Catalog of which requires the Microsoft Office SharePoint Server or MOSS 2007 which is not free (approx $5000), but a totally worthwhile investment. You can easily save the license fees several times over in reduced development effort. I also used SharePoint Designer which is about $200-300.

My slides and demo files are attached. Let me know if you have any questions. I've also included some demo script notes in the slide notes for those who asked.

Also, check out Rob Windsor's Pictures on Flickr of the event

Live Traffic on Local.Live.Com - for Torontonians


Should you take Lakeshore or the Gardiner home tonight? I just noticed on that the Traffic button works for Toronto. I have no idea how long this has been going on - anarchy I tell you. Live Search Maps with Canadian Data! Bravo. Incidentally, this picture was taken from the 3D view - it's just too much fun. If only I could fly home that fast.

Toronto Architect Forum, this Thursday

This coming Thursday, Microsoft is hosting the annual Toronto Architect Forum at their offices in Mississauga. The target audience is architects that are *not* in the financial service industry. Here's the agenda:

8:00 - 8:30 am Breakfast and Registration
8:30 - 9:00 am Welcome by Mark Relph
9:00 - 9:30 am Architectural Agility as Business Value, Dave Remmer
9:30 - 10:30 am Office Business Applications, Mike Walker
10:30 - 10:45 am Break
10:45 - 12:00 pm Visual Studio 2008 “All Up”, Adam Gallant
12:00 - 1:00 pm Networking lunch
1:00 - 2:15 pm Architectural Implications of LINQ, Barry Gervin
2:15 - 2:30 pm Break
2:30 - 3:00 pm Project Experiences using AJAX, Amalan Ponnampalam
3:00 - 4:15 pm How to be an Effective Architect, Mohammad Akif
4:15 - 4:30 pm Wrap-up and Prize Draw

As you can, I've secured the ever so popular "right after lunch" time slot. I don't know if there are detailed abstracts online for each session, but here is mine:

LINQ: Architectural Implications

Support for Language Integrated Query in the .NET 3.5 Framework promises to simplify and unify querying operations across object collections, relational data, DataSets and XML. The opportunity to simplify or even eliminate the notion  of a data access layer is one many architects are considering. During this session we will quickly introduce the capabilities of LINQ, LINQ to SQL and the upcoming Entity Framework, and then discuss how this may affect the design of our data access logic moving forward.

Registration is still open - here.

Update - the event is for Architects not in the financial services industry (my mistake).

Toronto SharePoint Camp

image Come to camp on Saturday October 20th, 2007 in downtown Toronto. We'll do paper mache, cook marshmallows over a fire, and learn how to rapidly build collaborative portal solutions. You can visit the site and register here, and they are still looking for speakers.

I hope to be speaking about something in the Architect Track, but haven't quite decided on what I'd like to talk about yet. What would you like to hear? Drop me a line.

Congratulations to Tony Cavaliere, Gadget Guru and Agenda Junkie

Congratulations are in order for Tony Cavaliere, a fellow ObjectSharp Consultant. 

Tony is a self confessed addict of the TVO show The Agenda and when Microsoft Canada announced the competition for building Vista sidebar gadgets, Tony jumped on the chance to show off his sidebar gadget building skills while building something useful for fans of the show.

Tony finished third in the competition, but more importantly is now up to date on all the happenings with the show without having to leave his desktop.

IT Business Canada featured Tony's work in a recent article that the discusses the merits of building vista gadgets to deliver a powerful marketing punch.

You can download Tony's gadget on his blog.

Follow up on LINQ and ADO.NET Entity Framework Talk

On Saturday on March 31, 2007 I did a couple of talks at the Toronto Code Camp. The first an overview on the LINQ Project and the ADO.NET Entity Framework.

The second talk was an impromptu talk to cover a time slot for a speaker who was unable to attend. I gave the audience some choices of topics and they chose Automated Unit Testing in VSTS. We also touched briefly on the bridge between TDD and QA, other types of tests, integration with source control, work items and builds. My hidden agenda was to convince folks that this is an essential evolution of our develop discipline and is no longer a fringe activity, nor associated to just one kind of development methodology (XP/Agile).

The talk was unscripted and as such no slides. Good thing because we went well into the lunch hour and I appreciate everybody's willingness to hang out and have a good discussion. Here are some links:

And lastly a couple of book recommendations:

Finally a big thanks to Chris Dufour for putting on an excellent glitch free code camp - this should be a model for similar events.

Update: Also check out this blog post for videos of the EDM designer that unfortunately isn't working in the March CTP.

Update 2: I should also include Shyam Pather's excellent Entity Framework screencast tutorial(s) in which he demos Entity Query Language and tells a great story of how to evolve ADO.NET 1.0/2.0 code to ADO.NET 3.0

Getting Things Done, Getting There Faster

CarpoolI stumbled across a few handy commuting and car pooling resources today for folks that live in Southern Ontario.

MTO High Occupancy Vehicle lanes: I can speak from experience on the 403 that having another person with you during rush hour is golden. Even after picking up another rider or waiting at the car pool lot, driving in the HOV is going to save you tons of time. But you probably already know this :) has lots of handy information & links include the "carpool zone" which lets you form car pools, search routes, etc. There is a place to setup your company for any of your fellow employees and also offers emergency transportation service for registered members in case they have to zip home during the day for emergencies.

I always have difficulty remembering locations of car pool lots are. Here's some handy links with maps:

And for the .NET geek out there, I highly recommend car pooling to the soothing sounds .NET Rocks or Developer Night in Canada. I recently figured out a low impact, almost no software way of subscribing to feeds on my zune.

  1. Subscribe to the feed in IE7. (Just click that orange glyph in your toolbar).
  2. From the list of feeds (in your favourites pane) right click the feed and select properties. Check off the "Automatically download attached files". Click the "View Files" button and take note of the path on your hard drive that these files are being saved under - it's wonky folder like C:\Users\JohnDoe\AppData\Local\Microsoft\Windows\Temporary Internet Files\Enclosure\{9FD562C3-EA98-4DCD-B09D-AFF021328DD7}. Copy it to your clipboard.
  3. In your zune software (or whatever other sync sw you use for your mp3 player) add this folder to your list of monitored folders.
  4. Wait. In the fullness of time, stuff will flow as if by magic through the ether, to your hard drive, and out to your player.
  5. If your are fortunate, you have a line-in input in your car that you can attach to your player. If not, and you have a cassette player, pick up one of those "mock-tapes" that lead out to a cable line in. Else, while not as good quality, invest in a fm transmitter. Ideally one that doesn't use batteries and plugs into your lighter adapter. You can find models that plug into ipods, zunes, usb keys, and generic line-ins. You can even find some that have a usb port to charge your player at the same time.

Now Powered by Bullfrog

Well last night at his "If YOU were Prime Minister..." Tour in Hamilton, David Suzuki pushed me over the edge and today the Gervin household switched our residential electricity provider to Bullfrog Power. Bullfrog is the first 100% green electricity retailer in Ontario, which sells a mix of wind and certified low-impact hydro. 

Signing up took less than 10 minutes online and costs 2.7 cents more per kilowatt hour than the traditional mix of electricity generated from Coal, Oil, Natural Gas, Nuclear and Hydro. Over the past 4 months we've been trying to reduce electrical consumption around the house, getting rid of the extra bar fridge, using compact fluorescent bulbs, turning lights off, etc. Year over year we've cut back our kWh consumption between 20-25%, so although we're paying more for our electricity per kWh, out total bill will still end up being less than it was a year ago. 

Based on some carbon carbon calculators, this simple move should reduce our carbon emissions by about 2-tons every year! We're very lucky to have this choice here in Ontario. For those that aren't as fortunate, the next best thing one can do is purchase carbon offsets.

It's nice to see these guys gaining momentum and Bullfrog customers are in good company:

My new Prius

Well, I finally got my new car, a Toyota Prius Hybrid last week. It took a bit longer than I had hoped since I ordered it fully geeked out with GPS Navigation, Voice Activation, integrated Bluetooth headset, and rearview camera which my kids, and more importantly their bikes are happy about.

So far, I'm digging it. I'm getting pretty good mileage for cooler Canadian temperatures. Of couse this vehicle gets good mileage on its own, but when I can, I'm trying to drive pulse and glide style to maximize the mileage. You can keep track of my actual mileage on the right of my blog which I'll report tank by tank. My first tank averaged 4.9L/100km or 48MPG. The tank range seems to be in the 900-1000km range (45L). Aside from the reduction in burning fossil fuels, the greenhouse gas emmissions are quite low so I'm happy to be doing my part there.

The Prius & Hybrid Communities are extremely active online which is nice to learn tips and tricks. Apparently the European and Japanese models are now shipping with parking assistance. Fortunately I'm not challenged in that regard and can probably parallel park faster than this computer.

Check out the video:

Video: Prius_IPA_innen