# Tuesday, July 28, 2009

Michael Eaton slumped in his chair and allowed his arms to fall to his side. Ten minutes earlier, he had been rushing up the stairs to find a designer to help out a team in need.  But now, relaxing in a quiet room with the door closed, the lack of rest began to catch up to him.  Two hours sleep Friday night on a classroom floor with a coat for a pillow seemed an appropriate way to cap off months of preparation for the 2009 Ann Arbor Give Camp.

Michael EatonIt was Saturday afternoon and the 3-day camp was about half over, but every indication pointed to a successful event. Sixty developers descended on Washtenaw Community College (WCC) and were huddled together in teams - furiously designing and writing code for charities. Many representatives of these charities were on hand, providing clarification of requirements or content or moral support.  In all, the teams were supporting eighteen charities. They wrote web sites and contact management systems and various pieces of software that the charities would be unlikely to afford on their own. They donated their weekend because they believed in this cause.

It was going well.

So, of course, I asked Mike about next year.

"Fifty charities", he insisted.  Fifty is nearly triple the number of charities helped this year, but Mike was determined to make it happen.

As he spoke about this, his energy returned. He talked of lessons learned and how to handle the scale for next year.  One key is to get started planning earlier - within the next few weeks. The goal is to get the charities and developers lined up early next year in order to be ready for the Give Camp in July. Bringing back the same planning team is important, he said. This year, Mike drew heavily on the knowledge of Jennifer Marsman, who organized last year's Give Camp.

He had already spoken with WCC and reserved their conference center - a building with facilities and rooms large enough to accommodate the hundreds of developers needed to support 50 charities.

Mike talked about the challenge of picking teams. Identifying appropriate skill sets was difficult, given that there were a lot of people unknown by the planning team.  Next year, he plans to gather more specific information from each developer in order to better evaluate their experience and place them on the correct team.

Mike stopped short of committing to take charge of next year's Give Camp, but it was clear from his enthusiasm that he wanted to be heavily involved. He did not hide his passion for what everyone was doing this weekend.

The energy of this event was infectious. A developer in Phoenix, AZ plans to put on a Give Camp in his area, so he flew to Michigan to experience one for himself and learn what worked.  WCC donated the facilities and accommodated the numerous requests they had over the weekend.

In the end, the 2009 Ann Arbor Give Camp was a great success. Sixty developers joined together to write code to help out eighteen charities. People worked hard and slept little and learned a lot and had fun and made the world a better place. Charities came away excited by their new software and inspired by the time committed by the development community in Michigan.

This can only increase excitement for next year.

Give Camp volunteers. Click for full-size photo.

More photos

Tuesday, July 28, 2009 2:25:54 PM (GMT Daylight Time, UTC+01:00)
# Monday, July 27, 2009

Episode36

Martin Shoemaker is the UML Guy.
In this interview, Martin explains what UML is and how to use it to improve your development process.

25 mins, 45 secs

Monday, July 27, 2009 6:30:01 PM (GMT Daylight Time, UTC+01:00)
# Friday, July 24, 2009

Next week will be a busy one for me. I wrap up my current billable project on Monday and I need to prepare for Friday and Saturday when I will present three different talks in two cities on two days.

In addition, I am scheduled to speak at the October meeting of the Microsoft Developers of Southwest Michigan.  Sadly, a death in my family forced me to postpone last week's MEF talk at the West Michigan .Net User Group. Thank you to Jeff McWherter for filling in on short notice.

Date                  Event Location Topic Description  
Fri. July 31 NPlus1 Architecture Summit Microsoft office, Southfiled, MI An Introduction to Object Oriented Programming
Are you new to OOP? Do you want a refresher on the benefits of Interfaces and the differences between implements and extends? The morning session is a two hour introductory course of Object Oriented Programming. If you are new to OOP the lessons in this session will prepare you for the more advanced topics in the afternoon. link
Fri. July 31 NPlus1 Architecture Summit Microsoft office, Southfiled, MI Software Patterns
Patterns are an important tool to use as architects and developers. They provide a common vocabulary for us to design with, as well as a common approach to a common problem. Come learn about useful patterns, and how to use them in your everyday code. link
Sat Aug 1 Lansing Day of .Net Breslin Center, Michigan State University Using Microsoft Distributed Cache to speed your application
Retrieving data from a disc or a database can be a time-consuming operation. Data that is accessed frequently can be stored in an in-memory cache, which can speed up its retrieval considerably. Microsoft Distributed Cache (aka “Velocity”) provides a framework for storing and managing cached data. In this session, we will discuss how to use this framework in your application and demonstrate some code that implements this framework. link
Thu Oct 22 Microsoft Developers of Southwest Michigan TBD, Kalamazoo, MI Using Microsoft Distributed Cache to speed your application
(see above) link

 

Friday, July 24, 2009 6:08:56 PM (GMT Daylight Time, UTC+01:00)
# Wednesday, July 22, 2009

Episode 35

In this interview, Jesse Murray shares his opinions on how to implement SharePoint solutions "the right way".

17 mins, 52 secs

Wednesday, July 22, 2009 3:15:42 AM (GMT Daylight Time, UTC+01:00)
# Monday, July 20, 2009

Episode 37

I spoke with Michael Eaton halfway through the 2009 Ann Arbor Give Camp. We talked about what went into this year's event and his ambitious plans for next year.

19 mins, 21 secs

Monday, July 20, 2009 3:54:10 AM (GMT Daylight Time, UTC+01:00)
# Wednesday, July 15, 2009

Episode 34

Brian Genisio is developing Silverlight and WPF applications using the Model-View-ViewModel pattern. In this interview, Brian describes the pattern and how to use it.

8 mins, 56 secs

Wednesday, July 15, 2009 7:07:45 AM (GMT Daylight Time, UTC+01:00)
# Tuesday, July 14, 2009

My sister Denise passed away very suddenly Saturday morning. I very much appreciate all those who have offered their love and support over the past few days.  Below are the details of her funeral and visitation.

Visitation
 Wednesday 7/15, 3-9PM
 Thursday 1-9PM (Rosary at 7PM)
 Wujek-Calcaterra & Sons Funeral Home
 36900 Schoenherr Rd.
 Sterling Heights, MI 48312
 Map: http://is.gd/1yL05

Funeral Mass
 Friday 7/16, 10AM
 St. Isadore Catholic Church
 18201 23 Mile Rd. (at Romeo Plank Rd)
 Macomb, MI 48042
 Map: http://is.gd/1yLLJ

Entombment
 Resurrection Cemetery
 18201 Clinton River Road
 Clinton Township , MI 48038
 http://is.gd/1yLN6

Denise and David

Tuesday, July 14, 2009 8:55:36 PM (GMT Daylight Time, UTC+01:00)
# Monday, July 13, 2009

Episode 33

In this interview, Corey Schuman describes Silverlight. He discusses the difference between Silverlight and other technologies, such as Windows forms, ASP.Net and Flash.

10 mins, 30 secs

Monday, July 13, 2009 5:50:55 AM (GMT Daylight Time, UTC+01:00)
# Wednesday, July 8, 2009

Episode 32

In this video, author and speaker Josef Finsel describes moving databases to "The Cloud" using Azure Table storage.  You can read more of his thoughts on the subject at http://azuredba.com/blog.aspx

11 mins, 9 secs

Wednesday, July 8, 2009 12:46:42 PM (GMT Daylight Time, UTC+01:00)
# Monday, July 6, 2009

Episode 31

In this interview, Jim Wooley discusses the relevance of stored procedures and best practices for accessing a database.

13 mins, 32 secs

Monday, July 6, 2009 12:16:55 AM (GMT Daylight Time, UTC+01:00)