# Monday, 14 October 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, 14 October 2013 17:33:00 (GMT Daylight Time, UTC+01:00)
# Monday, 07 October 2013
Monday, 07 October 2013 20:39:20 (GMT Daylight Time, UTC+01:00)
# Sunday, 06 October 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
Plan/Develop/Test/Ship
to "DevOps"

System Center Virtual Machine Manager
Windows Azure Fabric Controller

Issues of scaling

Commodity hardware in Azure data center

Redundancy
(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
Latency

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

Layers

Don't be afraid of refactoring

Tools can help

Sunday, 06 October 2013 02:00:09 (GMT Daylight Time, UTC+01:00)
# Wednesday, 02 October 2013

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

9/29
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.

9/28
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.

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

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

9/24
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.

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

9/22
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.

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

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

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

9/18
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.

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

9/16
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.

9/15
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.

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

9/13
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.

9/12
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.

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

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

9/9
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.

9/8
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)

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

9/6
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.

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

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

9/3
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!

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

9/1
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.

8/31
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.

8/30
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.

8/29
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.

8/27
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.

8/26
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.

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

Wednesday, 02 October 2013 03:33:00 (GMT Daylight Time, UTC+01:00)
# Monday, 30 September 2013
Monday, 30 September 2013 20:57:00 (GMT Daylight Time, UTC+01:00)
This past Saturday, I experienced my first bar camp - The Bar Camp Tampa Bay. For those who don't know, a bar camp is a technical conference run by the attendees. Unlike a code camp, sessions are not selected in advance; instead, any attendees can sign up to deliver a presentation during an open slot. Technically, I attended this same event last year. However, last year, the Bar Camp was combined with the Tampa Code Camp and I delivered five presentations, which prevented me from visiting the Bar Camp side of the event. This year, I experienced Bar Camp head on. I signed up to deliver a presentation titled "Connecting the Dots: Using HTML5, jQuery, and Web API Together". It went really well. The room was packed and, after every seat was filled, people sat on the floor in the aisles. The only downside was that I ran out of time, but a number of people came out in the hallway with questions. It was a good experience because I'm delivering the same (but longer) presentation at DevConnections this week. I attended a few sessions: students showing off robotics, how to write a successful blog, and lessons from the Game of Thrones (Winter/death is coming to us all eventually and we should be ready). Although most of the attendees were technologies, I noticed that most of the sessions were not about technology - many were about startups and social media and marketing and soft skills. Still, people were engaged and I didn't hear a single complaint about a disappointing session. I also had a chance to meet a number of new people. Most attendees were not Microsoft developers, but we still found common ground and I came away impressed by the Tampa area developer community.
Monday, 30 September 2013 01:36:48 (GMT Daylight Time, UTC+01:00)
# Tuesday, 24 September 2013
Tuesday, 24 September 2013 01:24:59 (GMT Daylight Time, UTC+01:00)
# Tuesday, 17 September 2013
I recently completed and published my first Windows 8 application. The app is simple: Click a button and the app selects 1 or more random numbers in a given range; the user can select the range of numbers and whether or not to re-use numbers. I wrote it because my user group needed such an app and because I wanted to learn how to write a Windows 8 application. I chose XAML/C# for this app pretty much by a coin flip. I still plan to write a Windows 8 app using HTML5/JavaScript. For me, the biggest challenge was were getting the correct layout using a combination of StackPanels and tables. I solicited the help of Jeff Yates, who explained the syntax to me and help me to fix the layout. The app was rejected the first time because I had checked a box on the property page stating that it was network-aware and I had not included a privacy statement page. My solution was to uncheck this box because it requires no network access. If you would like to see this app in action, you can download it at http://apps.microsoft.com/windows/en-us/app/raffle-picker/24508bc8-4e8e-4ba5-a77f-934df4a0018c

Screenshot.230704.100000[1]

Tuesday, 17 September 2013 05:03:48 (GMT Daylight Time, UTC+01:00)
Tuesday, 17 September 2013 02:57:36 (GMT Daylight Time, UTC+01:00)
# Monday, 09 September 2013
Monday, 09 September 2013 18:59:00 (GMT Daylight Time, UTC+01:00)