# Saturday, November 2, 2013

Yesterday was my first solo flight for the Microsoft DPE team.

I've been at Microsoft over 2 weeks and I've spent my time learning technologies, filling out forms, learning about the company, and shadowing other evangelists.

But yesterday, I traveled to DeVry University in Tinley Park, IL to teach students how to build games for Windows 8.

The hosts at DeVry were great. They were extremely nice, they accommodated every request I made, they made sure the room was set up properly, and they even bought me lunch (Aurelo's Pizza is to die for, BTW).

I built a sample application of a game in which a player shoots monsters that chase him around a 2D landscape. We used the Construct2 game engine from Scirra Ltd - an impressive tool for building such games. The students followed along with my demo and built the project with me.

The students were great. About 30 high school students traveled to DeVry by bus and 4 DeVry students were in the audience. I was impressed that they not only picked up the tool and the concepts, but that they extended my demo - modifying the game in clever ways. One student flipped the game around so that the monster was shooting attacking humans; another bundled multiple players together so that he fired 10 rounds at once; another replaced all the game characters with NBA players. I was delighted to see so much creativity from high school students.

It wasn't all smooth sailing.  When I arrived, I discovered the only browsers on the student machines were IE8 and Firefox 3. Since these browsers don't support the HTML5 features of the Construct game, we could not use them. But the DeVry IT department quickly fixed this and I now have one more detail to add to the classroom setup sheet I hand to the next event organizer.

I was excited to get my first event out of the way successfully and I'm looking forward to the next thousand events.

Saturday, November 2, 2013 6:42:20 PM (GMT Standard Time, UTC+00:00)
# Monday, October 28, 2013
Monday, October 28, 2013 2:41:01 PM (GMT Standard Time, UTC+00:00)
# Sunday, October 27, 2013

10/27 Today I am grateful to Scott Zischerk, who helped me figure out my Outlook issues yesterday.

10/26 Today I am grateful for a rare opportunity to sleep in.

10/25 Today I am grateful to Jason Farrell, who introduced me to elk burgers last night.

10/24 Today I am grateful to wake up to this view.

10/23 Today I am grateful I was able to find a sweatshirt in my size downtown last night after the temperature plummeted and before my walk "home" across the river.

10/22 Today I am grateful for the hospitality and generosity of Charles Stacy Harris III. Thanks to him, I am not sleeping on the streets of Chicago.

10/21 Today I am grateful for my first day working in Chicago as a Technical Evangelist.

10/20 Today I am grateful for an enjoyable 4 days in Phoenix and the great community of FoxPro and XBase++ developers at Southwest Fox.

10/19 Today I am grateful that my brother-in-law Britt, whose liver began failing years ago, underwent a successful liver transplant last night.

10/18 Today I am grateful to the MVP program, which I had to leave when I joined Microsoft. I was honored to be a part of it and the MVP Summit remains one of my favourite events.

10/17 Today I am grateful for the opportunity to speak at Southwest Fox in Phoenix, AZ.

10/16 Today I am grateful that CodeMash has invite me back to speak again.

10/15 Today I am grateful for the information and mentoring of Jennifer Marsman, who is helping me to understand and adjust to life at Microsoft.

10/14 Today, I am grateful for new opportunities and past adventures and good changes.

10/13 Today I am grateful for the opportunity to work with the amazing, dedicated people on the INETA Board of Directors these past 2 years.

10/12 Today I am grateful for the support of Telerik and their Insiders Program, who sponsored so many of my presentations these past 4 years, allowing me to speak at many more events than I otherwise could have.

10/11 Today I am grateful for the support of Telerik and their Insiders Program, who sponsored so many of my presentations these past 4 years, allowing me to speak at many more events than I otherwise could have.

10/10 Today I am grateful that my son, who was rushed to the hospital Tuesday night with dizziness and an accelerated heart rate, is feeling better and appears to have recovered.

10/9 Today, I am grateful for all that I learned and all the great people I met and the great experiences I had and the interesting projects on which I worked and the customers that I respect during my 5+ years at Sogeti.

10/8 Today I am grateful for the outpouring of support and kind words following my announcement yesterday.

10/7 Today, I am grateful for the current team at my customer site - one of the best group of people with whom I have ever worked.

10/6 Today I am grateful to be going home. It has been a great trip, but I've been away a long time.

10/5 Today I am grateful to spend a weekend in Las Vegas with my son Nick, celebrating his college graduation.

10/4 Today I am grateful to Chander Dhall and to the team at Penton for putting on an excellent conference and for inviting me to speak at DevConnections

10/3 Today I am grateful that my DevConnections presentations are behind me and that they went well. I've been stressing over these for months.

10/2 Today I am grateful to those who came up to me after my presentation today and told me how much they enjoyed it.

10/1 Today I am grateful to Jose Mojica for giving me a ride to the airport yesterday and for a chance to see many old friends last night.

Sunday, October 27, 2013 8:42:00 PM (GMT Standard Time, UTC+00:00)
# Monday, October 21, 2013
Monday, October 21, 2013 11:02:00 PM (GMT Daylight Time, UTC+01:00)

I wanted to speak at Southwest Fox because I had heard good things about conference and because FoxPro was the first computer language I was paid to program in. I have fond memories of both the technology and of the community surrounding this language.

Spending time with FoxPro developers 15 years ago gave me my first taste of a passionate developer community. People who developed in FoxPro believed in its power and often expressed frustration that it didn't have the commercial success of other products. I remember hearing the audience boo loudly when a photo of Visual Basic 6 displayed on-screen at a FoxPro Developers Conference in the late 1990s.

So, here I was - back to my roots - hanging around people who make their living writing Visual FoxPro – a language that finally released its last version a couple years ago.

You would think a community like this would be ready to move onto something new, but that wasn't what I found. There are thousands of applications successfully built with FoxPro and still going strong in Production. And in many cases, the businesses have no compelling reason to migrate these applications to a newer language. I learned there are even some good reasons to stay put, such as the low hardware requirements. As a result, many people have found a good business maintaining and enhancing these applications.

Attendees flocked to Southwest Fox in Phoenix, AZ from all over the world. I met people from New Zealand, Germany, Holland, and Nigeria. They came because this is one of the few events where you can learn about FoxPro in person and meet other Fox developers.

This year marked the tenth consecutive year of the conference and about a dozen people had attended all ten conferences.

It was my first time attending.

I delivered almost 7 hours of content at Southwest Fox - 3-hour session on HTML5; 2 75-minute sessions on jQuery; and a 75-minute presentation on maintaining legacy code. Even though my sessions had nothing to do with FoxPro, many people went out of their way to tell me they learned a lot from them.

Several people told me that Southwest Fox is their favorite conference - an event that attendees look forward to all year. Partly, this is true because so few conferences have a focus on FoxPro; but the most common reason was that people had the chance to see friends they only see once a year.

"It's about the people", said speaker Jody Meyer.

The event felt as much like a family reunion as a developer’s conference.

I am grateful I was invited as part of this family event.

Monday, October 21, 2013 3:57:10 AM (GMT Daylight Time, UTC+01:00)
# Wednesday, October 16, 2013
Wednesday, October 16, 2013 11:00:00 AM (GMT Daylight Time, UTC+01:00)
# Monday, October 14, 2013

I feel like I've been preparing for this job for the last 5 years.

Today is my first day as a Technical Evangelist at Microsoft. I'll be heading to New Employee Orientation shortlly.

To say I'm excited about this opportunity would be a huge understatement.

My primary focus will be on helping people to build applications for Windows 8 and Windows Phone 8 and helping them to use Windows Azure.

I'll be doing a lot of the things that I love to do and that I've done in my spare time for years - blogging, delivering technical presentations, learning new technologies, and helping others to build apps. But now it will be my day job, instead of something I need to make time for.

There will be challenges. For one, I need to quickly get up to speed on some of the technologies I'll be teaching. I've written and published a Windows 8 app and a Windows Phone app, but I'm still a novice. This needs to change in a hurry.

Also, I will be moving to Chicago soon and I need to get to know the developer community in the Chicagoland area. If you are a mobile developer (even on a non-Microsoft platform) and you live in Illinois, Indiana, or Wisconsin, I'd love to hear from you.

Two things drove me to seek a career as a Microsoft Technical Evangelist:
  1. It will allow me to make a living learning and teaching - two of the things I enjoy the most.
  2. Every Microsoft Evangelist I have met - and I mean EVERY. SINGLE. ONE. - has been great. By that, I mean each is a sharp technologist; an intelligent, articulate communicator; and a good person. I'm excited to work on a team like this.

I am sad to leave behind some things. I have spent over 5 years as a consultant at Sogeti and I made many friends and learned a great deal. I can recommend Sogeti to anyone looking to work for or hire a good consulting company.

Also, in order to devote more time to my new job, I have resigned from the INETA Board of Directors and from the Telerik Insiders Program.

So, the past is the past and the next phase in my life begins now! I feel like I'm looking ahead in a way I have not done in years.

Monday, October 14, 2013 5:33:00 PM (GMT Daylight Time, UTC+01:00)
# Monday, October 7, 2013
Monday, October 7, 2013 8:39:20 PM (GMT Daylight Time, UTC+01:00)
# Sunday, October 6, 2013

This week was my second visit to DevConnections and first as a speaker. Two years ago, the event was much larger and more spread out across the Mandalay Bay Conference Center in Las Vegas. I enjoyed the conference back then and I enjoyed the conference this year, as well. The content was intriguing, the speaker pool was excellent, the venue was first-rate, and the atmosphere was great.

Because I was a speaker and because I was presenting 2 brand new presentations, I spent the first day in the speaker room preparing my talks. This strategy seemed to work as several people came up to me after my session and during the conference to tell me they enjoyed my sessions.

After my preparation was done, I was able to attend some sessions on Creating Windows 8 Games, Windows Azure, TypeScript, and Do’s and Don'ts of Software Development.

The conference attracted a diverse group of speakers from all over the world and attendees from all over the US. At lunch one day, I met the guy who wrote the online ordering application I use to order my lunch. In the speaker room, I met people from Israel, Italy, and all across the US.

You can download my slides and demos below:
Connecting the Dots: Using Web API, jQuery, and HTML5 Together http://sdrv.ms/1e15q3P
Maintaining Legacy Code http://sdrv.ms/1e15sZu

My notes from attending sessions are below.

Cloud Computing

Mark Minasi
Mark Russinovich

Microsoft moved from
to "DevOps"

System Center Virtual Machine Manager
Windows Azure Fabric Controller

Issues of scaling

Commodity hardware in Azure data center

(e.g., Azure fabric controller runs on multiple servers)

Efficient data centers
2 people watching servers
2 people taking calls

Price breaks buying hardware in huge volume

Customers with global customers need cloud provider with data centers around the world

3rd Phase of Computing
1. Birth of mainframe
2. Client-server
3. Cloud computing

What happens in China?

Cloud is changing jobs - not eliminating them
Managing virtual machines/ monitoring system vs managing hardware

Building Games for Windows 8 – Using GameMaker
Daniel Egan

Step-by-step using GameMaker

Build vector graphics with Inkscape http://inkscape.org/

Keep graphics quality consistent.

Do's and Don't's of Software Projects
Dino Esposito

Big Ball of Mud (BBM)=Spaghetti Code
Not big in the beginning. Grows over time
No single developer can create BBM.

Communication is key
Misalignment btn requirements & features

When individual changes occur frequently, the system changes over time and may require a change in architecture.

Software is not like engineering: More dynamic.

Clean Code

Cohesion: Keep together logically-related methods and classes


Don't be afraid of refactoring

Tools can help

Sunday, October 6, 2013 2:00:09 AM (GMT Daylight Time, UTC+01:00)
# Wednesday, October 2, 2013

Today I am grateful for a trip to Las Vegas and a chance to speak at DevConnections.

Today I am grateful for those who worked so hard to put on a successful Bar Camp Tamp 2013 - The first bar camp I have experienced.

Today I am grateful for the health of my mother and for dinner last night with her and with my cousins Kevin and Kathleen, who drove up from Sarasota to meet us.

Today I am grateful that I'm heading to Florida this morning to visit my mother and my son.

Today I am grateful for the Detroit Tigers who have provided an exciting baseball season this summer.

Today I am grateful that I live in an area where there are so many user groups, giving me so many opportunities to learn and to meet smart people.

Today I am grateful for my blog, which has given me a forum to share my thoughts with anyone who wants to read them.

Today I am grateful to Julie Lerman and all those who helped her make the Vermont Code Camp an excellent event and my first visit to the Green Mountain state enjoyable.

Today I am grateful for a night on the town last night in downtown Burlington with Russell Fustino.

Today I am grateful that I'm visiting Vermont this morning for the first time in my life.

Today I am grateful to all those who came to my presentation at the Great Lakes Area .NET User Group last night.

Today I am grateful for exactly 5 years at Sogeti, for the people I've met, and for the things I've learned as a result of these years.

Today I am grateful for this coffee and the effect it is having on me this morning.

Today I am grateful for My first trip to Citi Field An exciting finish featuring a 2-out walk-off Mets RBI in the bottom of the 11th. The kindness of Becky Isserman, who helped me navigate NYC public transportation.

Today I am grateful to Stephen Bohlen and the other organizers of CodeCampNYC for their hard work in putting on a successful conference and for dinner and drinks with old and new friends in midtown last night.

Today I am grateful for a weekend in Manhattan and a chance to speak at #CodeCampNYC

Today I am grateful for the team on my current project. Some of our daily tasks are mundane, but I always enjoy interacting with this bright group of developers.

Today I am grateful for optimistic reports on the progress of Jeff Blankenburg's son Miles, who fell very ill recently and is now recovering from a brain operation.

Today I am grateful for an unexpected visit with John Avgoustis and Randy Eager.

Today I am grateful that I found my wallet that had been missing since Friday.

Today I am grateful for the opportunity to read the word of God to the congregation in church and for those who tell me they like the way I do it.

Today I am grateful for dinner with Pat, Brian, and Kelly and for the fact that we've remained friends for 33 years (so far)

Today I am grateful for Spartan football. Excited to attend my first MSU game of the fall today.

Today I am grateful for the Shrimp Louis Salad last night at Petterino's on Randolph & Dearborn in Chicago - one of the best salads I've ever eaten.

Today I am grateful for a relaxing train ride across the Midwest.

Today I am grateful that my very first Windows 8 app was approved for the app store.

Today I am grateful for the many times over the years that my son Timmy lifted my spirits when I was feeling down. Happy birthday Timmy!

Today I am grateful for a peaceful Sunday evening spent sitting outdoors, eating sushi, sipping espresso, and watching the world go by.

Today I am grateful that, after many years and many thousands of dollars, I just sent the last check, putting a financial end to an emotional tragedy in my life.

Today I am grateful for 1. The organizers of the CloudDevelop conference for inviting me to speak and for putting on a great event. 2. That the back pain that plagued me all day yesterday seems to have vanished after a good night's sleep.

Today I am grateful to Dennis Burton, who literally went the extra miles to pick up the laptop I left at home and bring it to Columbus, OH.

Today I am grateful for the help of Jeff Yates, who showed me how to implement scrolling in a Windows 8 XAML app last night.

Today I am grateful that I actually made it to the gym for the second time in a week. First time in months that has happened.

Today I am grateful that my sons each begin the next phase of their lives today as they each begin classes at a new college.

Today I am grateful I was able to cross off some items from my To-Do list that have been there for months.

Wednesday, October 2, 2013 3:33:00 AM (GMT Daylight Time, UTC+01:00)