# Sunday, 06 March 2016

3/6
Today I am grateful to unexpectedly run into Jody​ and David in Chicago yesterday.

3/5
Today I am grateful for new shelves and less clutter in my apartment.

3/4
Today I am grateful for a home-cooked dinner last night.

3/3
Today I am grateful for dinner last night with Kevin.

3/2
Today I am grateful for:
-an overwhelming number of kind messages on Facebook yesterday.
-a birthday lunch with Chris in Grand Rapids yesterday.

3/1
Today I am grateful for my first visit to ann arbor, MI since I sold my house, including: -A personal tour of The Forge by Jeeva -Coffee with Velichka -A great crowd to attend my Azure Mobile Apps talk at Mobile Monday.

2/29
Today I am grateful to the SpartaHack organizers and hackers who contributed to a successful hackathon this past weekend.

2/28
Today I am grateful that this parking ticket was thrown out by the local police.

2/27
Today I am grateful for a day in East Lansing, MI and at Michigan State University.

2/26
Today I am grateful for a good crowd at our Azure Workshop last night at MSU.

2/25
Today I am grateful for the technology that allows me to watch TV and movies when and where I want.

2/24
Today I am grateful to Michael, Chris, Chris, and Murali for helping make yesterday's Cloud Camp a success by bringing real world experience to the presentations.

2/23
Today I am grateful to be able to ride my bike in February in Chicago.

2/22
Today I am grateful to the organizers and participants at HackIllinois who made this weekend's hackathon so successful.

2/21
Today I am grateful to Vanessa, who brought me espresso yesterday each time my energy ran low.

2/20
Today I am grateful for the hundreds of students who came to my Azure talk last night that I re-wrote yesterday afternoon.

2/19
Today I am grateful for this excellent and unexpected moving gift from Betsy

2/18
Today I am grateful for unsolicited praise from a co-worker yesterday.

2/17
Today I am grateful for an unexpected call from my cousin Kevin yesterday.

2/16
Today I am grateful for dinner with Christina last night.

2/15
Today I am grateful for a pristine blanket of snow covering downtown Chicago this morning.

2/14
Today I am grateful for Nyquil, Dayquil, and a Neti Pot.

2/13
Today I am grateful for finally paying off some sleep debt.

2/12
Today I am grateful for: -Lunch yesterday with Matt -A chance to present to a group of University of Chicago students

2/11
Today I am grateful for: -My first day with a personal trainer at the new gym -Attending Founder Institute graduation

2/10
Today I am grateful for my first game at Purdue's Mackey Arena.

2/9
Today I am grateful for the help I received yesterday unpacking dozens of boxes from my move.

2/8
Today I am grateful for an excellent week in Seattle.

Sunday, 06 March 2016 12:51:12 (GMT Standard Time, UTC+00:00)
# Monday, 29 February 2016
Monday, 29 February 2016 17:44:00 (GMT Standard Time, UTC+00:00)
# Wednesday, 24 February 2016

semjs-large When I lived in Michigan, I was a regular attendee of the Southeast Michigan JavaScript meetup – a local user group that attracted close to a hundred attendees each month and excellent speakers from all over the country.

One thing I admired about this meetup is their habit of recording meeting presentations. 

Those recordings are now available on Microsoft’s Channel 9 site. You can view dozens of these presentations at https://channel9.msdn.com/Blogs/semjs.

In the past 2 weeks, over 50,000 people have watched these videos on Channel 9.

Below are some of the more popular presentations:

 
 
 
Wednesday, 24 February 2016 21:11:23 (GMT Standard Time, UTC+00:00)
# Tuesday, 23 February 2016
# Tuesday, 16 February 2016

I spent years as a software consultant and I wrote a lot of web applications during that time.

I remember when I first discovered Active Server Pages  (which we now call "Classic ASP") and I remember how excited I was by this technology. It empowered me to write dynamic applications that the whole world could see.

When Microsoft introduced ASP.NET, I quickly embraced it and when ASP.NET evolved to MVC, I was excited to move to this new paradigm.

I even wrote a bit of JavaScript, enhancing my web applications with client-side validation and interactivity. I wrote even more JavaScript after discovering how jQuery made the DOM manipulation easier to write, debug, and maintain.

But, about 5 years ago, I stopped writing web applications. It wasn't because I disliked anything about them; it was only because my customers were looking for different solutions. So, for a few years, I wrote middleware services and web services and rich client applications and I built databases and I set up continuous integrations systems and I barely looked at web development.

But Web Development technologies did not stand still; if anything, they changed faster than almost any other area of software.

Web Development has moved largely from the server to the client. Interactions that were once handled by a form post and full page refresh are now done using Ajax calls to a web service and client-side DOM manipulation. An asynchronous callback from the server to client triggers a JavaScript function to update elements on the page, eliminating the need for a disruptive repainting of an entire page.

The user experience of a Single Page Application tends to be far superior to the older multi-page applications, so users are demanding more and developers are now writing large, complex applications that run almost entirely inside a browser.

JavaScript wasn't designed with this complexity in mind, so a number of JavaScript frameworks emerged to help developers manage this complexity. These frameworks take care of things like data binding, DOM manipulation, input validation, and separation of concerns, freeing developers to focus their efforts on business logic and other features unique to their own applications.

These frameworks help, but they come at a cost. It takes time to learn a new framework and each framework has its own set of rules and idiosyncrasies.

Even more challenging is the speed at which these frameworks are released. A year after the popularity of ember.js and backbone.js peaked, developers began flocking to Angular.js. Last year, Angular seemed to lose ground to React.js. It's hard to tell what will be the next hot JavaScript framework (Angular 2.0? Aurelia? Something else?), but the rate at which new frameworks appear is accelerating.

Of course, it is not practical to re-write every application every year, simply because you discover a new framework - even one with advantages over your existing framework of choice. And most of us don't have the time to become familiar with a new framework every few months. We have to balance the increased productivity of a new framework against the time spent learning (as opposed to building).

This is the world in which I now find myself as I return to Web Development after a half decade absence. Everything has changed and continues to change at a startling rate.

In many ways this constant innovation is exciting and energizing. But it can also be overwhelming as I try to select the appropriate tools from a plethora of options and as I spend the time and effort learning how to use these tools.

meerkats I feel like I'm in a science fiction movie where the hero departs the Earth at light speed; then returns to discover the planet is ruled by talking meerkats: All the rules have changed while I was gone and I need to adapt. Quickly.

The approach I've taken is to pick a JavaScript framework, learn it, and build an application with it. I chose Angular to start - partly because I had heard good things about it and partly because its popularity ensured I would be able to find samples, tutorials, videos, and other reference materials to assist me. Next, I'll rebuild this functionality in ReactJs, followed by some other framework, until I have a feel for the paradigms involved in JavaScript development and for the relative strengths of each framework.

You can track my progress at https://github.com/DavidGiard/tvdg and on this blog.

So far, I'm enjoying the ride.

Tuesday, 16 February 2016 14:41:04 (GMT Standard Time, UTC+00:00)
# Monday, 15 February 2016
Monday, 15 February 2016 18:33:27 (GMT Standard Time, UTC+00:00)
# Tuesday, 09 February 2016

At CodeMash last month, I was interviewed for Channel 9 about Azure Mobile Apps.

You can watch the interview below:

Azure | Video
Tuesday, 09 February 2016 16:01:34 (GMT Standard Time, UTC+00:00)
# Monday, 08 February 2016
Monday, 08 February 2016 13:31:00 (GMT Standard Time, UTC+00:00)
# Sunday, 07 February 2016

2/7
Today I am grateful for yesterday's Hackathon.

2/6
Today I am grateful for my first time recording in the Microsoft Channel 9 studios.

2/5
Today I am grateful for yesterday's highlights:
-Coffee with Suzanna
-Lunch with Glenn
-TechReady party at Century Link Field

2/4
Today I am grateful for lunch with Tim yesterday.

2/3
Today I am grateful for dinner last night with Ted and his family.

2/2
Today I am grateful for a rare evening, hanging out with much of my team in-person.

2/1
Today I am grateful for an evening watching Improv comedy last night.

1/31
Today I am grateful I was able to finally make it to Seattle last night.

1/30
Today I am grateful for lunch with Nick yesterday.

1/29
Today I am grateful for my first ever Illinois basketball home game at Assembly Hall.

1/28
Today I am grateful for coffee with Chris yesterday.

1/27
Today I am grateful to the neighbor who stopped by while I was moving yesterday and offered to go grocery shopping for me.

1/26
Today I am grateful for lunch with Kristen yesterday.

1/25
Today I am grateful for the ribs at Twin Anchors.

1/24
Today I am grateful for the Microsoft Holiday Party at the Mid-America Club high above Chicago last night.

1/23
Today I am grateful for coffee with Manohar yesterday.

1/22
Today I am grateful that Marc, my personal trainer is still working with me, even though we were supposed to finish in December.

1/21
Today I am grateful that my calendar is mostly clear the next 2 days, so I can get some actual work done.

1/20
Today I am grateful for dinner last night with Paul and Jeremy. .

1/19
Today I am grateful I was able to find the packages this morning that FedEx lost yesterday.

1/18
Today I am grateful for Dr. Martin Luther King, Jr., who confronted hatred, violence and racism; and responded with peace and the word of God.

1/17
Today I am grateful for all the independent coffee shops in Chicago.

1/16
Today I am grateful that the story of my friend Bill was told during an executive meeting with the Microsoft CEO yesterday.

1/15
Today I am grateful for a chance to use the new MTC studio for the first time.

1/14
Today I am grateful to chat with Becky last night.

1/13
Today I am grateful for dinner last night with Adam at the Old Town Pub.

1/12
Today I am grateful to all the guests and viewers who made it possible for #TechnologyAndFriends to reach 400 episodes.

1/11
Today I am grateful for: -The strangers who helped push my car out of a snow bank yesterday. -Watching my first game at IU's Assembly Hall.

1/10
Today I am grateful for an afternoon and evening with my son Tim.

1/9
Today I am grateful to Brian Prince and the other organizers of #CodeMash, who worked so hard to put on another excellent conference this week.

1/8
Today I am grateful for: -all those who helped us build toys for special needs children yesterday. -a party at a water park last night.

1/7
Today I am grateful for an excellent steak dinner last night with friends, courtesy of Betsy.

1/6
Today I am grateful that Best Buy exchanged my broken SD card, even though I didn't have the receipt.

1/5
Today I am grateful to see so many old friends last night in Sandusky - many for the first time in a long time.

1/4
Today I am grateful for this large latte that Sarah just bought me.

Sunday, 07 February 2016 23:02:56 (GMT Standard Time, UTC+00:00)
# Monday, 01 February 2016
Monday, 01 February 2016 11:54:00 (GMT Standard Time, UTC+00:00)