Funniest Slide Header I’ve Seen in a Long Time…

by Brian Hitney 6. January 2012 14:10

Credit to a colleague for this slide, but for those who follow Microsoft’s cloud platform might get this reference:

slide

Tags: , ,

Azure | Microsoft

Just One More Week To Enter The Rock Paper Azure Fall Sweepstakes!

by Brian Hitney 12. December 2011 09:40

Week #3 of the Rock Paper Azure Challenge ended at 6pm EST on 12/9/2011. That means another five contestants just won $50 Best Buy gift cards! Congratulations to the following players for having the Top 5 bots for Week #3:

  1. AmpaT
  2. choi
  3. Protist
  4. RockMeister
  5. porterhouse

Just a reminder to folks in the contest, be sure to catch Scott Guthrie, Dave Campbell, and Mark Russinovich live online next Tuesday, 12/13/2011, for the Learn Windows Azure event!

RPAChallenge5

Does your bot have what it takes to win? There is one more week to try and find out, now through December 16th, 2011. Visit the Rock Paper Azure Challenge site to learn more about the contest and get started.

Remember, there are two ways to win:

Sweepstakes

To enter the sweepstakes all you have to do is enter a bot, any bot – even the pre-coded ones we provide – into the game between now and 6 p.m. ET on Dec. 16th. No ninja coding skills need – heck, you don’t even need Visual Studio or a Windows machine to participate!

RPACancun7

At 6 pm ET on Friday, December 16, 2011 the "Fall Sweepstakes" round will be closed and no new entries will be accepted. Shortly thereafter, four bots will be drawn at random for the Grand Prize (trip to Cancun, Mexico), First Prize (Acer Aspire S3 laptop), Second Prize (Windows Phone), and Third Prize (XBox w/Kinect bundle).

RPAPrizesThumbnailsTopHomePage5

Competition

BestBuyGiftCardIcon3For the type-A folks, we’re keen on making this a competitive effort as well, so each week - beginning Nov. 25th and ending Dec. 16th - the top FIVE bots on the leaderboard will win a $50 Best Buy Gift card. If your bot is good enough to be in the top five on successive weeks, you’ll take home a gift card each of those weeks too. Of course, since you’ve entered a bot, you’re automatically in the sweepstakes as well!

Note: As with past iterations of the challenge, even though you can iterate and upload updated bots for the competition, you will only be entered into the sweepstakes one time.

You know what they say… you gotta be in it to win it! Good luck to all players in week #4!

Tags: , , ,

Azure | Events | Microsoft | RPA | USCloud

Windows PhoneCamps

by Brian Hitney 1. September 2011 12:05

From MSDN events, to roadshows, to firestarters …

Now on to Camps … and just got word about the upcoming Windows Phone camps…

mango-iheart

What’s a Windows Phone Camp?

For those who went to our "Windows Phone Garage" series last year, its one of those. For those new to the scene, its a free, full day event chocked full of everything you need to know to develop a Windows Phone application. Whether you’re a seasoned veteran or just getting started with phone app development this full-day event is for you.

Interested in profit? We’ll also lead discussions on how to monetize your applications and generate profits with your apps.

Don’t miss the new Windows Phone 7.5 (codename "Mango") features as well - with detailed sessions in the afternoon around Fast Application Switching, Multitasking, Live Tiles, Push Notifications, and more.

The day will be capped with an open lab hands-on session and prizes for apps completed. This is the perfect opportunity to begin work on your dream application, or finish that app you’ve already started, with Windows Phone experts there to guide you every step of the way. Bring your own laptop to join in the fun and show off your killer app!

 

Agenda
9:00 AM Welcome Campers
9:15 AM How to make money with your Windows Phone App
10:00 AM Frameworks for fun and profit > Silverlight and XNA
noon-ish Canteen > Install Fest
1:00 PM Hands-on lab
3:00 PM Cool stuff your app can do
4:00 PM To the Cloud
4:45 PM Be What's Next > Peoples Choice Awards

Not only is the content great, but we've got a ton of locations coming up. Note that we are not only hitting the traditional Microsoft facilities, we are hitting a ton of campus locations as well. Students can attend Microsoft facilitiy events, and professionals / entrepreneurs are more than welcome to drop in on the on-campus locations as well. Mix, mingle, network.

Don't see your geography in the list? Located in the East Coast USA? Reach out to us and let's see if we can line up a Windows PhoneCamp "community edition".

 

Schedule
9/20/2011 Charlotte, NC Registration
9/22/2011 Atlanta GA Registration
9/27/2011 Malvern PA Registration
9/29/2011 Reston VA Registration
10/12/2011 Cambridge MA National Event - Two day - Registration URL pending
10/18/2011 Chevy Chase MD Registration
10/19/2011 New York City, NY Registration
10/25/2011 Tampa FL Registration
10/27/2011 Champlain College, Burlington VT Registration
11/2/2011 NCSU, Raleigh NC Registration
11/4/2011 Fort Lauderdale, FL Registration
11/8/2011 UCF, Orlando FL Registration
11/10/2011 Univ of Miami, Coral Gables FL Registration
11/10/2011 SUNY (New Paltz), New York Registration
11/15/2011 Virginia Tech Registration
11/17/2011 Howard University, Washington DC Registration
11/29/2011 Pittsburg, PA Registration
12/1/2011 Hofstra, Long Island NY Registration
11/29/2011 Georgia Tech, Atlanta GA Registration

Prerequisites:
Bring a notebook computer and identification. Also check out the APP HUB where you can get developer tools, learn about application features, understand common task for Apps and register and load your APP.

Notes:
This event is brought to you by Microsoft and is free of charge. However, you are responsible for booking and paying for your own travel and accommodations.

Tags: , ,

Events | Microsoft

Windows Phone 7 Garage Event Coming!

by Brian Hitney 29. April 2011 08:24

In a few weeks, my colleagues Glen and Joe will be in Charlotte (and a few other locations around that time) holding their successful Windows Phone garage events.  The latest event is coming to Charlotte on May 24th!  Here’s the breakdown:

9 – 10 am

Introduction to Windows Phone Development

No experience with Windows Phone 7 development? No problem. During this optional session at the start of the day we will cover the fundamentals of Windows Phone Silverlight and XNA Development. We'll explore the various core components and tools available, and leave you with some resources to take you to the next level.

10 – 10:30 am

What’s new for Windows Phone Developers

This session will highlight some of the new developer features coming for Windows Phone Developers. We’ll also take a look at AppMaker, a new dynamic new tool that enables you to generate a simple Windows Phone application from one or more online data feeds.

10:45 – 12:30 pm

Windows Phone Application Jumpstart

To give you a jumpstart on app development, we’ll walk through in detail building an app, styling it, and adding advanced capabilities. We’ll also cover submitting it to the marketplace and monetizing your app.

12:30 – 1:00 pm

Lunch

1:00 – 5:00 pm

Windows Phone Garage Open Lab

Bring your laptop fully loaded with Visual Studio 2010 and the latest version of the Windows Phone Tools. Get some help with an app you are working on, or use the information from the Jumpstart to build an app around your favorite data feed. No ideas? No worries – we’ll have a few starter templates that you can build on.

Other dates:

Tags: , ,

Microsoft | Events | Windows Phone 7

Rock, Paper, Azure: Why US Only?

by Brian Hitney 1. April 2011 10:44

Over the past few days, we’ve gotten many requests from those outside the United States who would like to play Rock, Paper, Azure.  Some have even said, “I don’t care about the prizes, I just want to play!”   So what’s the deal?

If we could simply enable the contest to be worldwide, that would be awesome!    But, when prizes are involved, it’s not a simple matter.   There isn’t an easy mechanism by which to say, “it’s ok to enter, you just can’t win.”  Just to provide a little transparency here, there are legal hurdles and frankly, the team that put this together is only a few people doing something part time.   Because we’re in the U.S. subsidiary, our main focus (naturally) is on U.S. – not that we want to exclude anyone, of course. 

So what’s next?  First, we’re working with our colleagues in other subsidiaries to enable this in more countries, if at all possible.  It won’t happen on week 1, but hopefully we’ll get there over time.   If you know your local DPE evangelism team, be sure to contact him or her and let him know you’d like to play – if you don’t know who that is, leave a comment here in my blog. 

Tags: , ,

Azure | Microsoft | RPA | USCloud

Windows Phone 7 App Roundup for 10/25

by Brian Hitney 25. October 2010 11:30

Ah, closer to launch and more apps in the marketplace than a single byte could hold!   This is my personal look at what’s hot and what’s not in the phone marketplace.   Surely I’ll miss a few things but hopefully will catch them next time.

What’s Hot:

Netflix (Entertainment), free

Really not much more to say, is there?  Browse titles, view your instant queue, play back, etc.  It’s clean and simple.  What I haven’t done is tried to use this over 3G while in a moving car, as we all know streaming can be painful in these situations.  I did try 3G streaming while in downtown Atlanta (where I typically have excellent 3G coverage) and it worked great.  If the phone had video out, this would be incredible.

Cocktail Flow (Lifestyle), $2.99 (no trial)

This is simply the best app to date for mixed drinks/cocktails on the phone.  Functionality is all you could want:  you can look up drinks a number of ways, and even select what you have in your cabinet and it will tell you what drinks you can make.  The graphics are beautiful … negatives:  it doesn’t have a trial, and doesn’t seem to support themes. 

Magic Black Ball (Entertainment), free

This is one of the 5 8-ball apps already in the marketplace.   Virtually none of them have trials, and this one is free but ad supported.  This one seems to be the nicest one of the group, and the graphics are decent/authentic and the answers are what you’d expect (for example, one of the other 8-balls only gives you yes/no answers). 

Sudoku! (by SideJob / Games), $0.99 (has trial)

This is my favorite Sudoku game on the phone, with “Sudoku” by Reflection IT coming in second.  Both are capable, but Sudoku! seemed more natural to play, supports zoom and different puzzle sizes.  Both have a trial, so check them out and see which one you like better.

What’s Not:

I actually decided to erase this part because I felt calling out the shops doing what I consider “lame development” will be obvious over time and I didn’t want to give them free publicity.   One approach a shop has taken has been to charge 99 cents for some lame app and offer no trial, so there is no way to review the app unless you purchase it.  The developer has purchased their own app, and leaves it 5 stars pretending to be a real customer.   Those going by ratings alone and not realizing it may purchase a lame app.  In these cases, I think developers deliberately don’t put in a trial to avoid a flood of poor ratings.

In fairness, many developers are responding to questions others have left, and since there isn’t an option to leave “no rating", you’re kind of stuck.   I and others have done that, but hopefully we make it clear that it’s the developer responding to comments.  But that’s not what I’m talking about – I’m specifically referring to shill / fake reviews by the developer, like, “This app is AWESOME!  It ROXXX!! A+++++ … clearly the best in the marketplace today!” … c’mon.   It’s almost amusing to look at the same user leave the same glowing feedback for all the apps their “company” puts out there.

Conclusion:  check out the reviews.  If there is no trial and no (or limited) feedback, realize you are rolling the dice.

Tags: , ,

Reviews | Microsoft

Windows Phone 7 App Roundup for 10/18

by Brian Hitney 18. October 2010 09:14

While this is by no means an exhaustive list, here’s what is catching my eye this week in the phone Marketplace:

Shazam (Music & Video), Free

Sample a few seconds of a tune, and Shazam uploads and parses what tune you’re listening to.   Pretty cool.  I’ll be honest, I’m much more interested in this technically than practically, wondering how the algorithms work, fuzzy matching, etc.   Practically speaking, I would get a lot more use out this if radios didn’t do the “song ID” thing that is prevalent in most modern radios.   Since it’s free, it’s a must download.

Flight Control (Games/Strategy, Xbox Live), $4.99 (has trial)

Lots of fun!  You basically pilot an onslaught of aircraft and drag them to a landing strip.  The game is surprisingly fun – but, what I like most about it is that it feels like it’s made for the phone – the touch interface is great.   While it is upgraded from the iPhone version to contain achievements, the $5 price tag seems a bit high.

BowlingXX (Games/Sports & Racing), $1.99 (has trial)

The first bowling game for WP7.  What I really like about the game is the controls.  You can swipe your finger to set a ball path that determines trajectory/power/spin, or use the accelerometer and bowl “Wii-style.”   This game would be a lot of fun to have online multiplayer, however for the price tag that’s not too feasible. 

OpenTable (Lifestyle), Free

Great way to pick a restaurant last minute.  Not too much in my local area, but I live in the sticks so I didn’t expect much.  Nice, clean interface.

The Eye (Games/Puzzle), $0.99 (has trial)

Built by ‘softie Michael Hawker, a VERY tough puzzle game.  :26 seconds is my best time, but it was purely accidental.  The game has gotten a few criticisms of being too tough, but then again, so is the Rubik’s Cube.  Essentially the game contains two outer rings that change color when you tap the inner ring.  The idea is to rotate and change the colors until they are all the same solid color.  It took me a little while to get how the game works, but I like the simplicity.

BluesBox (Music & Video), $1.29 (no trial)

This app has two strikes out of the box:  no trial, and a (at first glance) vanilla interface.  The single screenshot doesn’t help much.  But, to see this in action, see this YouTube video.    Looks cool!   Think Guitar Hero with a bit more musical control.   I think it’s worth the price of admission and seems like a lot of fun, but Mat needs to offer a trial and, since I’m sure this will sell pretty well, use the first couple hundred bucks to hire a designer :)

Drum Machine (Entertainment), $0.99 (has trial)

This app and BluesBox can team up!  Actually, while Drum Machine isn’t quite as engrossing (IMHO) as BluesBox, DiNoGames nailed the interface and options, and was wise to include a trial.  It’s pretty fun!   Next time you want to nail someone with a “Ba-da-dum” you can either use my app (SqueakBox) or, drum it out yourself with Drum Machine.

Tags: , ,

Microsoft | Windows Phone 7 | Reviews

Azure Firestarter – coming soon!

by Brian Hitney 28. September 2010 19:00

I’m excited to announce that our Azure Firestarter series is getting ready to roll!  Registration details at the bottom.  Basically, I’m teaming up with my colleagues Peter Laudati and Jim ONeil and we’ll be travelling around.   We’re intentionally been waiting to do these events so they post-PDC – this means we’ll include the new stuff we’re announcing at PDC!  Also, for those wondering what was going on with the @home series, we’ll be doing that here, too, with some revamped ideas…

The Agenda

Is cloud computing still a foggy concept for you? Have you heard of Windows Azure, but aren’t quite sure of how it applies to you and the projects you’re working on? Join your Microsoft Developer Evangelists for this free, all-day event combining presentations and hands-on exercises to demystify the latest disruptive (and over-hyped!) technology and to provide some clarity as to where the cloud and Windows Azure can take you.

windows-azure-logo_1-f2e19c 8:00 a.m. - Registration

8:30 a.m. - Morning Sessions:

Getting Your Head into the Cloud

Ask ten people to define “Cloud Computing,” and you’ll get a dozen responses. To establish some common ground, we’ll kick off the event by delving into what cloud computing means, not just by presenting an array of acronyms like SaaS and IaaS , but by focusing on the scenarios that cloud computing enables and the opportunities it provides. We’ll use this session to introduce the building blocks of the Windows Azure Platform and set the stage for the two questions most pertinent to you: “how do I take my existing applications to the cloud?” and “how do I design specifically for the cloud?”

Migrating Applications to Windows Azure

How difficult is it to migrate your applications to the cloud? What about designing your applications to be flexible inside and outside of cloud environments? These are common questions, and in this session, we’ll specifically focus on migration strategies and adapting your applications to be “cloud ready.”

We’ll examine how Azure VMs differ from a typical server – covering everything from CPU and memory, to profiling performance, load balancing considerations, and deployment strategies such as dealing with breaking changes in schemas and contracts. We’ll also cover SQL Azure migration strategies and how the forthcoming VM and Admin Roles can aid in migrating to the cloud.

Creating Applications for Windows Azure

Windows Azure enables you to leverage a great deal of your Visual Studio and .NET expertise on an ‘infinitely scalable’ platform, but it’s important to realize the cloud is a different environment from traditional on-premises or hosted applications. Windows Azure provides new capabilities and features – like Azure storage and the AppFabric – that differentiate an application translated to Azure from one built for Azure. We’ll look at many of these platform features and examine tradeoffs in complexity, performance, and costs.

12:15 - Lunch

1:00 - Cloud Play

Enough talk! Bring your laptop or pair with a friend, as we spend the afternoon with our heads (and laptops) in the cloud. Each attendee will receive a two-week “unlimited” Azure account to use during (and after) our instructor-led hands-on lab. During the lab you’ll reinforce the very concepts we discussed in the morning as you develop and deploy a compelling distributed computing application to Windows Azure.

4:00 p.m. The Silver Lining: Evaluations and Giveaways

Registration & Details

Use the links below to register for the Windows Azure Firestarter in the city closest to you.

City

Date

Registration

Tampa, FL

November 8

REGISTER HERE!

Alpharetta, GA

November 10

REGISTER HERE!

Charlotte, NC

November 11

REGISTER HERE!

Rochester, NY

November 16

REGISTER HERE!

Waltham, MA

November 30

REGISTER HERE!

New York, NY

December 1

REGISTER HERE!

Malvern, PA

December 7

REGISTER HERE!

Chevy Chase, MD

December 9

REGISTER HERE!

Hope to see you there!

Tags: , ,

Events | Microsoft | Azure

Upcoming Windows Phone 7 Events

by Brian Hitney 23. August 2010 18:13

Want to learn more about developing for Windows Phone 7?  Check out his event series coming soon!   The event is broken down into two parts:  the Firestarter event which runs all day, then an evening event called the Windows Phone Garage… learn more below, and the registration links for both events in all the cities is at the bottom of the post:

Morning Sessions:
· Introduction to Windows Phone Development and the WP7 platform
· Building Windows Phone 7 Applications with Silverlight
· Building Windows Phone 7 Applications using XNA

Lunch (included)
Afternoon Sessions:
· Monetizing Your Apps with Marketplace
· Windows Phone 7 Services
· Light Up Windows Phone 7

Windows Phone Garage| 6pm - 9pm

This evening event is the opportunity for you to get started on that next killer app for Windows Phone 7, or put the finishing touches on your masterpiece. The Windows Phone Garage for mobile application developers follows the daytime Firestarter event. As you are designing, writing & testing your apps onsite, we’ll provide Windows Phone 7 experts (both Microsoft and community) to help you get things right. These experts will also present “quick hit” talks throughout the evening, containing tips and tricks on their experiences writing Windows Phone apps. It's the perfect opportunity to design and implement that cool new app you've been dreaming about, so bring your ideas and get ready to code. To learn more about the Phone Garage event or to register, click on an event city near you. Hurry, space is limited!

For more information or to register,
visit > www.msdnevents.com/firestarter

OR CALL 1-877-MSEVENT

Windows Phone 7 Firestarter

Windows Phone 7 Garage

To register, select a city

To register, select a city

Atlanta, GA

8/24/2010

Atlanta,GA

8/24/2010

Waltham, MA

8/24/2010

Waltham, MA

8/24/2010

Birmingham, AL

8/26/2010

Birmingham, AL

8/26/2010

Tampa, FL

8/31/2010

Tampa, FL

8/31/2010

Ft. Lauderdale, FL

9/2/2010

Ft. Lauderdale, FL

9/2/2010

New York, NY

9/7/2010

New York, NY

9/7/2010

Raleigh, NC

9/8/2010

Raleigh, NC

9/8/2010

Chevy Chase, MD

9/21/2010

Chevy Chase, MD

9/21/2010

Charlotte, NC

9/21/2010

Charlotte, NC

9/21/2010

Philadelphia, PA

9/22/2010

Philadelphia, PA

9/22/2010

Pittsburgh, PA

9/28/2010

Pittsburgh, PA

9/28/2010

Farmington, CT

9/30/2010

Farmington, CT

9/30/2010

Tags: ,

Microsoft | Events | Windows Phone 7

Scaling Down – Text Version

by Brian Hitney 18. May 2010 00:42

I caught some Flak this weekend at the Charlotte Code Camp when Justin realized my recent Scale Down with Windows Azure post was principally a screencast (aside from the code sample).   So Justin, I’m documenting the screencast just for you! :)

First, a good place to start with this concept is on Neil Kidd’s blog post.   Go ahead and read that now … I’ll wait.  Most of this code is based off of his original sample, I’ve modified a few things and brought it forward to work with the latest SDK.

So, in a nutshell, a typical worker role template contains a Run() method in which we’d implement the logic to run our worker role.  In many cases, there are multiple tasks and multiple workers.  Unless the majority of the work you are doing is CPU bound (which is entirely possible, as is the case with our Azure-based distributed Folding project), the resources of the VM can be better utilized by multithreading the tasks and workers.

The trick is to do this correctly as writing multithreaded code is challenging.  In general, parallel extensions is likely not the right approach in this situation.  There are some exceptions – for example, if you are using a 4-core (large) VM and require lots of parallel processing, PFx might be the best approach.  But that’s not often the case in the cloud.  Instead, we need a lightweight framework that allows us to create a number of “processors” (using quotes here to avoid confusion with a CPU) that are responsible for doing their work independent of any other “processors” in the current instance.  Each “processor” can run on its own thread, but the worker role itself, instead of doing the work, simply monitors the health of all of the threads and restarts them as necessary.

The implementation is not terribly complex – but if you aren’t comfortable with threading or just don’t want to reinvent the wheel, check out the base project.  Feel free to add to or modify the project as necessary.  Let’s step through some of the concepts.

Download the sample project (Visual Studio 2010) here.

First, it doesn’t matter if you implement this in a webrole or a workerrole.  A webrole exposes the same Run() method that a workerrole does, and it doesn’t interfere with the operation of hosting a website – aside from the fact that there are limited resources per VM of course.

First up is the IProcessMessages interface.  This interface is simple, basically saying our processors need to define how long they need per work unit, and expose a Process() method to call.   Our health monitor keeps tabs on the processor, so it needs to know how long to wait before assuming the processor is hung:

image

A simple processor is then very easy to create.  We just implement the IProcessMessages interface, and code whatever logic we need our worker to do inside the Process() method.  We’re specifying that this processor needs only 20 seconds per work unit, so the health monitor will restart the worker in the event it doesn’t see progress when 20 seconds elapse.  SyncRoot isn’t needed unless you need to do some locking:

image

So far, pretty simple.  Our processor doesn’t need to be aware of threading, or handling/restarting itself.   The ProcessRecord class does this for us.  It won’t do the actual monitoring, but rather, implements the nuts and bolts of starting the thread for the current processor:

image

When the ProcessorRecord class is told to start the thread, it calls a single Run() method passing in the processor.  This method will essentially run forever, calling Process() each iteration.  Since we’re not getting notified of work, each processor is essentially polling for work.  Because of this, a traditional implementation is to say if there is work to do, keep calling Process() as frequently as possible, but if there’s no work to do, sleep for some amount of time:

image

The current implementation is simple – it doesn’t do exponential back off if there’s no work to do, it just sleeps for the amount of time specified in the ProcessorRecord.  That leaves us with one more task, and that’s defining our processors in the web/worker role Run() method.  The nice thing about this approach is that it’s quite easy to add multiple instances to scale up or down as needed:

image

In the case above, we’re creating 2 processors of the same type, giving them different names (helpful for the log files), the same thread priority, and a sleep time of 5 seconds per iteration if there’s no work to do.  In the Run() method, instead of doing any work, we’ll just monitor the health of all the processors.  Remember, the Run() method shouldn’t exit under normal conditions because it will cause the role to recycle:

image

It may look complicated, but it’s pretty simple.  Each iteration, we’ll look at each Processor.  The Timeout is calculated based on the last known “thread test” (when the thread was last known to be alive and well, plus any process time or sleep time adjustments.  If that time is exceeded, a warning is written to the log file and the Processor is reset.  Worldmaps has been using this approach for about 6 months now, and it’s been flawless.

Is this the most robust and complete framework for multithreading worker roles?  No.  It’s a prototype – a good starting place for a more robust solution.  But, the pattern you see here is the right starting point:  the role instance itself knows what processors it wants, but doesn’t concern itself with their implementation or threading details.  Each ProcessorRecord will execute its processor, and implements the threading logic, without regard to the other processors or the host.  The Processors don’t care about threading, other processors, or the host, it just does its work.  This separation of concerns makes it easy to expand or modify this concept as the application changes.

If you’re trying to get more performance out of your workers, try this approach and let me know if you have any comments.

Tags: ,

Azure | Development | Microsoft

your host...

Brian Hitney
Developer Evangelist
Microsoft Corp.

About Me

My Worldmap