# Wednesday, April 1, 2015

The MVP team is now part of DX and we are actively working together to connect with MVPs. One step toward this was the

The event was organized by Esther Lee, Rowena Branch, Fernanda Saraiva, Brian Prince, and others.

Registration was capped at 100 and about 90 MVPs attended for 2 days of technical content, roundtable discussion, and providing feedback.

The content was mostly presented under NDA, but a few of the presentations were:
•    "What's Next for Developers?" presented by NuGet PM Jeff Fritz
•    "Overview of Microsoft's Digital Crime Unit" presented by Tim Pash of the Philadelphia MTC
•    "Working with your Evangelist: Understanding DX priorities" presented by DX Audience TE Nick Landry. I really liked Nick’s analogy of Evangelists as sherpas, helping to guide others to greatness (I hope I’m not violating any NDA by repeating that).
•    I gave an overview of Universal Apps.

Dave Voyles and Shahed Chowdhuri of the DX Audience team also presented, as did NuGet PM Jeff Fritz and CVP Brian Harry.

MVP Open Days have taken place in other parts of the world, but this was the first one in the US. The reception was very positive by the attending MVPs with many expressing a desire to see more events like this in the future.

Another Open Days event seems likely in the future, but the location is currently undecided.

USMVPOpen
MVPs and blue badges at the US MVP Open Days

USMPVOpen-2
A packed room

USMPVOpen-3 
Me and Esther Lee – one of the event organizers

USMPVOpen-4
Hanging out with some of the organizers after the event

David Giard | Sr. Technical Evangelist | Microsoft | DavidGiard.com | @DavidGiard | 734.239.3490

Wednesday, April 1, 2015 1:47:00 PM (GMT Daylight Time, UTC+01:00)
# Tuesday, March 31, 2015

Years ago, Brian Prince became famous for a talk on developer soft skills. This presentation resonated with developers at technology conferences and user groups because so few people were talking about this subject. Michael Eaton - a regular at technical conferences - recognized this lack of speakers addressing this topic and decided to create an entire conference focused on soft skills. This was how the Kalamazoo X conference began in Kalamazoo, MI in 2009.

Many tech leaders from around the region and the country converge on Kalamazoo, MI to lend their knowledge, including Cory House (Kansas City, KS), Alan Stevens (Knoxville, TN), Jim Holmes (Dayton, OH), Jay Harris (Hartland, MI), Cori Drew (Dallas, TX), Jeff Blankenburg (Columbus, OH), and Elizabeth Naramore (Cincinnati, OH).

I’ve been a fan of KalamazooX from the beginning and I’ve spoken at the conference twice. Those who follow me on social media will know that I begin each day by completing the sentence "Today I am grateful for...". That tradition was inspired by a couple of presentations at KalamazooX 2 years ago.

I've attended all but one KalamazooX conference, so I made a point to make it this year, even though my flight from Houston arrived in Chicago the morning of the conference and I had to drive to Kalamazoo. The morning flight meant that I could only attend the afternoon sessions this year; but they did not disappoint.

Elizabeth Naramore and Microsoft's Jeff Blankenburg each spoke about capturing the spirit of a novice, when you are driven by curiosity and unafraid to fail - before expectations make you think that there is something wrong with risking failure.

Dawn Kuczwara in her presentation titled "Give It Up" told managers that it is necessary to relinquish control and allow your subordinates to manage their own work in order for most projects and teams to succeed.

Cori Drew spoke of ways she inspires her daughter to develop a passion for technology in her talk on "Geek Parenting".

Although primarily attended by software professionals, KalamazooX is very different from any other technical conference - it focuses on the parts of our career that is important - but ignored at most conferences. I've heard many people describe how inspired and energized they are by this conference.

I woke up in Houston at 3 AM and flew/cabbed/drove over 1300 of miles to attend. And it was worth it. I'm looking forward to next year.

kalx15-15-L[1]
Kalamazoo X speakers and organizers

kalx15-01-L[1]
A full room listens to Dawn Kuczwara

kalx15-09-L[1]
Elizabeth Naramore presenting “The Beauty of a Beginner’s Mind”

kalx15-06-L[1]
Conference organizer Michael Eaton introduces the next speaker.

View more photos at http://giard.smugmug.com/Tech-Community/KalamazooX-2015/.

Tuesday, March 31, 2015 4:15:00 PM (GMT Daylight Time, UTC+01:00)
# Monday, March 30, 2015
Monday, March 30, 2015 8:08:25 PM (GMT Daylight Time, UTC+01:00)
# Thursday, March 26, 2015

A number of friends and colleagues had recommended Uber and insisted it was better than taxi services. So I decided to try Uber for a few weeks while I was traveling out of state (Florida, Texas, and Colorado) these past few weeks.

My first ride took place because I was stranded in downtown Miami about 2 miles from my hotel. I was carrying a suitcase and a laptop bag and no taxis passed by. So I downloaded the Uber app to my phone and I requested an Uber pickup. Of course, as soon as I submitted the request 3 taxis appeared out of nowhere.

Here are my impressions after 3 weeks of using Uber.

The good.

The Uber app is very simple to use. Just click "Request driver" and set your pickup location. Your phone's GPS should determine where you are right now and set a default location. When a driver responds to your pickup request, the app displays an estimated time of arrival and texts you when the driver is arriving. The driver receives your phone number, so he may even call you if he cannot find you.

Every driver I rode with was courteous and some were interesting conversationalists.

Every driver drove a nice car. They were all late-model vehicles and they were all very clean.

Uber charges my credit card through its system. This means that I never have to worry if the driver accepts credit cards.

Uber automatically emails me a receipt. This is convenient because most of my travel is for business purposes.

Calling a driver is very easy. Outside of a major city's downtown area, it's usually necessary to make a phone call in order to request a taxi. The app is much simpler than a phone call.

Every driver spoke and understood English. If you've ridden a cab in a large city, you know that not all cab drivers speak English well enough to understand your instructions.

Most of the time UberX is cheaper than a taxi.

The Uber app offers multiple services - UberX, UberXL, Black Car, SUV - in case you want a larger or nicer car. Uber is not allowed at some airports, so the app allows you to call a taxi instead.

The Bad

Most of the time, the arrival estimates were optimistic. I only requested in a big city and each time, the estimate was less than 10 minutes - often less than 5. But about half the time, it took them at least twice that time to arrive. Only once did a driver arrive early.

When I opened the Uber app at my Chicago apartment, it notified me that, due to high demand, prices would be 1.3 times the normal rate. But just before I got into the car, I received a text message informing me that the price would be 2.3 times the normal rate. By then, it was too late to make alternate plans.

On my Windows Phone, the Uber app crashed. A lot.

One morning in Dallas, I requested an Uber and the driver went to the wrong place. He insisted he was at "the address I texted him"; but of course I had not texted him any information - I simply used the app. He had no idea how to get to my hotel and I was running late so I told him to cancel my request. When he charged me anyway, I gave him a 1-star rating. Uber later refunded the money (it was only about $5) and I replaced the low rating.

I received a very high bill when traveling from Midway airport to a location in suburban Chicago. Apparently, Chicago taxis charge 50% extra when traveling from the city to the suburbs. This was not Uber's charge, but it came as a surprise when I received the bill.

For taxis, Uber automatically adds a 20% tip by default. Although you can change this, I didn't learn of it until I was charged.

Lessons Learned

Always double-check the pickup location because they app can be wrong. This can be difficult to do if you are in a strange city, but look for nearby street signs and other landmarks to verify you are standing at the pickup location.

Prices are different for each service. UberX tends to be the cheapest. At the bottom of the app screen is the option to select from the available services (not all are always available). I wasn't aware of this and once selected the more-expensive Black Car service.

If possible, get a quote in advance. The Uber app allows this for most services. If the app won't give you a quote, ask the driver for an estimate. Don't be surprised.

Log into http://uber.com and verify all the options on the Profile and Payment screens.

My verdict

Overall, I had a good experience with Uber. I can avoid many of the problems i experienced now that I understand the system better. I think I will continue to use Uber in the future.

Thursday, March 26, 2015 12:23:18 PM (GMT Standard Time, UTC+00:00)
# Monday, March 23, 2015
Monday, March 23, 2015 12:37:15 PM (GMT Standard Time, UTC+00:00)
# Sunday, March 22, 2015

There are three ways to create a new web site from the Azure portal: Quick Create; Custom Create; and From Gallery. To launch any of them, navigate to the Azure management portal and select "Web Sites" from the list of services along the left side of the portal [Fig 1].

CAWS01-SideMenu
Fig 1 

Then click the "New" button at the bottom left (Fig 2).
CAWS02-NewButton
Fig 2

This displays the New Website menu(Fig 3)

CAWS03-NewWebSiteDialog
Fig 3

Because we were in the "Web Sites" section when we clicked the "New" button, the categories: "COMPUTE" and "WEBSITE" are selected for us. We need to select from the three ways to create a web site within the Portal. They are: "QUICK CREATE", "CUSTOM CREATE", and "FROM GALLERY". Let’s go through each scenario.

QUICK CREATE

The simplest way to create a web site is with the QUICK CREATE option. With the NEW WEBSITE menu expanded, select QUICK CREATE (Fig 4).

CAWS04-QuickCreate1
Fig 4

The QUICK CREATE dialogue displays, as shown in Fig 5.

CAWS05-QuickCreate2
Fig 5

At the URL textbox, enter the name of your site. The full URL to access this new site will be  
    http://sitename.azurewebsites.net
where sitename is the name you typed into this field.

At the WEB HOSTING plan dropdown, you can either select an existing plan or select "Create new web hosting plan", in which case you will need to select a region in which to create the plan. The Web Hosting plan allows you to configure, manage, and scale a group of sites together.

Click the CREATE WEBSITE check button (CAWS-Check) to create the site. Typically it takes Azure less than a minute to create the site.

Once the site is created, you can navigate to the site's URL and you will see a default page (hostingstart.html) displayed in your browser, as shown in Fig 6.

CAWS06-hostingstart
Fig 6

This is the only file deployed to your site. You will need to use FTP, set up source control deployment or deploy your site content in some other way in order to get your web application into this web site.

CUSTOM CREATE

The CUSTOM CREATE option is similar to the QUICK CREATE, but it adds a few options on site creation. With the CUSTOM CREATE option, it is possible to associate a database with your site and set up Source Control publishing at the time you create your site.

With the NEW WEBSITE menu expanded, select CUSTOM CREATE. The CUSTOM CREATE dialogue displays, as shown in Fig 7.

CAWS07-CustomCreate1
Fig 7

At the URL textbox, enter the name of your site. The full URL to access this new site will be 
                  http://<sitename>.azurewebsites.net
where <sitename> is the name you typed into this field.

At the WEB HOSTING plan, you can either select an existing plan or select "Create new web hosting plan", in which case you will need to select a region in which to create the plan.

Select or create a database to associate with this site. Enter a connection string name and credentials of the SQL Server account used by the web site to connect with the database. This database will appear under the LINKED RESOURCES tab of your website. Linking a database to a website makes it easier to manage them together, such as when you are backing up both your site and the database.

If you want to set up publishing from a source control repository, you can do so during site creation by clicking the "Publish from source control" checkbox (It is possible to skip this step and set up source control publishing later). Checking this checkbox adds a second page to the dialogue. Click the right arrow button (CAWS-RightArrow) to advance to the second page (Fig 8), where you can select the type of source control you are using. For some repositories, you will be prompted for more information.

CAWS08-CustomCreate2
Fig 8

When you are finished configuring everything, click the right arrow to create your new site.

As with the QUICK CREATE option, only one file (hostingstart.html) is deployed to your site. You can navigate to the site URL to view this file in your browser.

FROM GALLERY

Unlike the QUICK CREATE and CUSTOM CREATE options, the FROM GALLERY option provides more than just a single page in your website. This option tends to be the fastest way to get a fully-functional web site up and running. It is also an excellent option for those without coding or HTML experience.

With the NEW WEBSITE menu expanded, select FROM GALLERY.

The ADD WEB APP dialogue displays, as shown in Fig 9.

CAWS09-FromGallery1
Fig 9

This list displays a list of templates, frameworks, and web site engines from which to choose. Notice that you can filter this list by selecting a category on the left, such as BLOGS, or CMS (Fig 10).

CAWS10-FromGallery2
Fig 10

Notice also that many of the options are based on non-Microsoft technologies. WordPress, for example, is written in PHP and stores data in a MySQL database. Select the template, framework, or web site engine on which you want to base your site and click the Right Arrow button.
A configuration dialogue displays that is appropriate for the option you selected. At a minimum, you will need to provide a name for your web site, which will take the default form http://<sitename>.azurewebsites.net; but there may be other required information, such as selecting or creating an associated database. The dialogue for Orchard CMS is shown in Fig 11.

Click the Check button (CAWS-Check) to create your site. This generally takes longer than creating a site with either the QUICK CREATE or CUSTOM CREATE options because Azure will build an entire site for you. For many of the Blog and CMS templates, you will be prompted for some more information, such as a site name and an admin account the first time you navigate to the site. The "Get Started" page launched the first time you connect to a new Orchard CMS site is shown in Fig 11.

Orchard Setup
Fig 11

CONCLUSION

In this article, we showed the three ways to create a Web Site using the Azure Management Portal and walked you through the steps to create a web site with each method.

Sunday, March 22, 2015 8:07:34 PM (GMT Standard Time, UTC+00:00)
# Monday, March 16, 2015
Monday, March 16, 2015 3:00:55 PM (GMT Standard Time, UTC+00:00)
# Saturday, March 14, 2015

March 9 was International Women's Day. To commemorate this event, Dev Radio decided to publish a series of interview last week, drawing attention to successful female entrepreneurs. 

We kicked off the series by talking with Microsoft Partner Business Evangelist Tereza Nemessanyi - a former entrepreneur herself. Tereza talked about BizSpark and other things that Microsoft is doing to help entrepreneurs in general and women in particular.

Then, we interviewed 4 women who are guiding successful tech startups around the world. You can watch all 5 interviews at the links below:

Microsoft for Startups: (Part 1) Women Building the Future – An Interview with Tereza Nemessanyi

Microsoft for Startups: (Part 2) Women Building the Future – An Interview with Bernadine Brocker, CEO of Vastari

Microsoft for Startups: (Part 3) Women Building the Future – An Interview with Diana Paredes, CEO of Suade

Microsoft for Startups: (Part 4) Women Building the Future – An Interview with Jennifer Whaley, CEO of Pose a Pet

Microsoft for Startups: (Part 5) Women Building the Future – An Interview with Luan Cox, CEO of Crowdnetic

This series was featured in a recent Microsoft News Center article celebrating International Women's Day and female entrepreneurs. You can read that article here: Technology disrupted: Meet 11 women leaders changing the innovation ecosystem.

Saturday, March 14, 2015 4:14:00 PM (GMT Standard Time, UTC+00:00)
# Friday, March 13, 2015

I'm a little surprised I enjoyed this book as much as I did. Other than a brief period in my teens when I was obsessed with Asteroids and Defender, I've never been much into video games; My kids kicked my butt at Halo and various EA Sports games for years until I finally stopped playing; And, although I created a few computer games last year - including the unforgettable Spinach Top series, I've spent only a small percentage of my life creating video games.

But I admire those who can create these games - the people with enough imagination to conceive of a great game idea and enough technical skills to execute that idea.

Honoring the Code: Conversations with Great Game Designers put me in touch with those people. Video game enthusiast Matt Barton sought out the programmers and artists who worked on many of his favourite games and he asked them about their lives and their work. This book is primarily a transcript of those interviews.

Interviews include:

George Sanger, who composes and compiles music for video games, including 7th Guest. His main advice: "Be nice to each other".

John Romero, who built the influential first-person-shooter game Doom. Romeros was hailed as a rock star in the industry until his marketing department published a poorly-thought advertisement with the text: "John Romero is about to make you his bitch", which turned many fans against him.

The reclusive Rebecca Heineman, who was born William Heineman, but changed her name when she transgendered to a female as an adult. Heineman earned the nickname "Burger" by a habit of buying a sack of hamburgers, storing them in her desk, and eating them over the course of several days.

My favourite interview is in the last chapter - Paul Reiche and Fred Ford seem to be having the most fun.  For example, they started a company named "Toys for Bob" and they chose that name only because they liked the sound of it.  Although there is no actual "Bob", everyone in the company had to make up a story about who the "Real Bob" was.

One can read this book to learn and copy the habits of great games designers. Although there is a wide spectrum of personalities among the interviewees, most of them share a passion for video games that drives them to work long hours designing, building, and playing these games. And most of them began this passion early in life - well before high school.

One nice thing about this book is that you can read the chapters in any order - each interview stands on its own.

The author provides an introduction to the book - describing his motivation for conducting and publishing these interviews. I was surprised he did not end it with a conclusion - summarizing all he had learned.

For me, the book was interesting because I enjoyed a peek into the lives of people who have a passion for what they do for a living.

Friday, March 13, 2015 11:46:15 AM (GMT Standard Time, UTC+00:00)
# Thursday, March 12, 2015

March 6-8, I attended Hack The Anvil hackathon at Purdue University. About 350 student hackers - all from Purdue - attended this hackathon. I was joined by my colleague Brian Sherwin for most of the event and by Sarah Sexton on Sunday.

IMG_0996

Following the opening ceremony, I delivered a 30-minute tech talk describing cloud computing and Microsoft Azure I showed how to use Azure Web Sites, Azure Virtual Machines, and Azure Mobile Services. Although we didn’t offer a prize (as Microsoft often does at these events), a number of teams decided to incorporate Azure into their projects.

IMG_1006

We spent much of the weekend helping people debug their code. In addition to questions about Kinect and Azure, students asked questions about JavaScript and interfaces and HTTP, updating the Java SDK on a MacBook. 3 different teams set up node on Azure used Brian Sherwin's blog post (http://briansherwin.com/blog/2015/03/hack-tools-1-node-js-on-azure-with-linux-vm/) as a reference.

  • The best projects I saw using Microsoft projects were:
    An application that used Kinect to change the color and intensity of lights based on the user's hand gestures. This project integrated Python code with the C# code using the Kinect SDK. Brian Sherwin this team use the Kinect SDK and requested a copy of their source code. David Giard recorded an interview with the team.
  • A portal that allows video game enthusiasts to find other players with similar interests and to schedule multi-player games with one another. The portal was built on Azure Web Sites, the data was stored in SQL Azure and exposed via Azure Mobile Services
  • A Tampermonkey Chrome plugin built on Azure web sites that displays the text of a linked page below the link.

IMG_0999

Some other interesting projects were:

  • "ShotBot" - a robot bartender
  • Gloves that interact with a Wii remote to allow users to control mouse pointer movements from across the room.
  • "SmartFridge" - an Android application that allows users to scan the bar codes of the items in your refrigerator and keep track of when each item expires and when it is time to buy a new item.
  • A Java-based app to assist Dungeons & Dragons "Dragonmasters" to create the environments used in D&D.

IMG_1001

Many students integrated .NET or Azure into their application because we were there to help them.

IMG_0990

Purdue will be hosting a multi-school hackathon (BoilerMake) in the fall and I hope to attend this as well.

HackTheAnvil Photos

Thursday, March 12, 2015 2:07:00 PM (GMT Standard Time, UTC+00:00)