How to choose a MCU platform?
A year go, I gave a talk on the subject of picking microcontrollers (it took about 1.5 hours).  The audience were high-level software programmers and makers.  Majority of the audience didn't have prior &mu;C experience, the remainder has played with Arduino only.  The head count in the audience was about 30.  So, this was a multicast, as opposed to a one-on-one clinic.

The key slide in the talk was this:


  Dimensions for comparing microcontrollers.  The list is in
  descending order.
  
  
  Development environment (tool chain)
  
  
  Development environment
  Did I mention development environment?
  
  Support
  
  
  Application notes
  Peer support: tribal knowledge, friends, forums, teh codes [sic]
  
  Features
  
  
  Memory
  Peripherals
  Computation prowess
  
  Power consumption
  Cost
  


p.s.  

I should define the scope which this answer of mine is limited to.  I see this platform selection question through two kinds of lens.  The first one is a prototyper.  The second one is a developer of professional equipment with street prices on the order of $3k and quantities in hundreds a year.  The hobbyist lens is not far off too.  In these cases, the incremental cost of the microcontroller is small, compare to the cost of development, or to the cost of the professional equipment into which the microcontroller goes.

There is, of course, a very different perspective of mass production.  When somebody chooses a microcontroller for a cheap device which will be produced in large quantities (mainstream toys are a good example), they will be driven by the cost of hardware.  A modest saving in the hardware cost multiplied by a large production volume (in hundreds of thousands or more) may justify the pain of using an unwieldy development environment and a bargain priced microcontroller with a mediochre support.