Friday, September 30, 2011

SPOILER ALERT: Astoundingly, I got a bit choked up by Gears of War 3

I haven't finished what a lot of people are calling a big & dumb shooter, the Transformers movie franchise of video game series, but I just got past a moment I think Gears of War 3 deserves some recognition as…artistic. Sure the games' loaded with ridiculous one liners among other sins, but the following single moment means this game and the whole series has more emotional depth and artistic merit than the Shia Labeouf Running and Shouting Optimus series.

Spoiler Alert
At the end of Act III, lead character Dom sacrifices himself to save lead character, his brother to the end, Marcus Fenix. This follows soon after Dom has said his peace to his dead wife and kids, so you think Dom's OK, he's going to be there to the end. But when you see what's going to happen, when it's clear Dom is going to sacrifice himself, the sequence really catches your attention because it's atypical for this kind of thing, and it's all because of the music. The game pulls the usual cacophony to barely audible levels and plays this:

You might remember that (with lyrics) from this Gears of War 2 ad which was mighty attention getting for being atypical for video game ads

Maybe I'm just a sucker for anyone willingly giving up their life to save their buddies, but I couldn't help but get a bit choked up playing to and then watched the cutscene where Dom sacrifices himself.

Thursday, September 29, 2011

A Personal Note About Why I'm Excited To Teach At CodeLesson.com

My younger brother used to call me Doctor Murdock or "Doc" Murdock. Seems like another life know, but I was a baseball pitcher until the end of high school. I always had a pretty mean fastball and wicked curve ball. I struck out a lot of batters. Dwight "Doc" Gooden was the NY Mets ace when I was in little league and he struck a lot of people out. Since I was a huge fan, my brother liked using Gooden's nickname for me and it stuck. That wasn't the only reason he coined that nickname for me. Since I was always trying to teach people around me the stuff I was learning, the name fit both ways. To be fair, my brother also in his best Han Solo impersonation yelling at C-3PO called me "The Professor" too. I loved both nick names.

I liked the sound of "Doc" Murdock so much in and out of baseball that I seriously considered becoming a medical doctor. I enrolled in AP Biology in high school but couldn't make it past frog dissection!

I still thought about becoming Doctor Murdock for real. Since I was heavily into computers through high school, I started thinking about becoming an actual professor. When I got to college for my bachelor's degree in computer science, I enrolled in the Honors program to try and position myself for moving on to higher education. I graduated with honors in comp sci, but I never went back to school for a masters degree. Building apps and life were just to much fun to go back into the ivory tower! I thought the door to becoming Doctor Murdock was closed forever.

When CodeLesson founder Jeffrey McManus asked me who would be good to teach iOS development, I really wanted to do it, but didn't have time in my schedule. Once my schedule freed up, I consider myself lucky that Jeff hadn't found an instructor yet. Sorry Jeff! He graciously accepted my offer to teach Introduction to iOS Programming.

The door to becoming "Doc" Murdock feels like it just cracked open, and it feels great to finally pursue this dream, even a little bit.

I'm Teaching Introduction to iOS Programming at CodeLesson.com Starting Monday October 3rd

If you or someone you know is interested in learning iOS programming, then head on over to Introduction to iOS Programming at CodeLesson.com to sign up. I'll be teaching this course starting Monday October 3rd, 2011. What's CodeLesson?

CodeLesson provides hands-on, practical, online instruction. Our instructors are real people with real-world experience. Because our courses are given online, you have flexibility. You can access your course 24 hours a day while your course is in session. This means that you can participate fully even if you've got a busy daytime schedule or if you're located in another time zone.

You can read the course description, prerequisites, and outline at CodeLesson to see if the course is for. I'm using iOS Programming: The Big Nerd Ranch Guide as the textbook for the course. The week to week work goes like this:

  • I assign unit(s)s to complete for each week. Units contain reading chapters or articles on the web, typing code into Xcode, or environment setup
  • Students complete each unit and turn in their work for grading
  • There are occasionally quizzes
  • Repeat!
If students have questions, I answer them in a timely fashion through CodeLesson.

I've always enjoyed teaching, and now I get to do it in a structured format using my favorite development tool stack ever! I'm really looking forward to it

Friday, September 16, 2011

5 Reasons Why Windows 8 Tablets Are Going To Have a Tough Time Competing Against iPad

This post won't be about what I think of the Windows 8 Metro UI, I haven't spent enough time with it to think through Microsoft's choices. This post won't be a feature comparison of previous versions of Windows to Windows 8 Developer Preview, that would be somewhat ridiculous with Windows 8 not shipping for a year This post is about how Windows 8 tablets are going to have a hard time competing with the simplicity of buying an iPad for these simple reasons:
  1. Users have to choose between two completely incompatible CPU architectures to buy a Windows 8 tablet.
    I can think of no examples where a consumer facing device had two incompatible CPU formats for normal people to choose from that did well. Even when Windows NT was shipping for Intel, DEC Alpha, and a few others for enterprise customers, getting supported apps was a challenge. I remember because I was trying to run an Exchange Server on Windows NT for Alpha, it was always like punching yourself in the face.

    Consumers will have to understand that "Metro style apps" (is that final marketing?) will work across CPU architectures, but all existing Windows apps do not. That's a terrible choice for regular people to have to make. By contrast, you get an iPad and you can run iPhone and iPad apps.

  2. If Windows is in the final tablet product name, then where have the fraking Windows gone?
    Windows tablets have been around for close to 10 years and never sold well. I had one of the early Compaq tablets, it ran hot with poor battery life using an Intel CPU. The name of the OS used to be Windows XP Tablet PC Edition. Since Windows 8 is going to run on notebooks, desktops, servers, and tablets just like Windows XP and its various editions, how are Windows 8 tablets going to be easily distinguished from other Windows 8 based computers? Dell Tablet 2012 with Microsoft Windows 8 for ARM Tablets? HP QZY12 with Windows 8 Intel? Compare again to iPad, iPad 2 with iOS 5, and the sure to come iPad 3 with iOS 5.2 (numbers just a guess, but a pretty good one). Obviously Metro on Windows 8 looks nothing like previous versions of Windows, except when it inevitably will, but when it doesn't it won't have any Windows on something named Windows.

    You can just imagine the commercials where Apple or even Google if their still shipping tablets shows a Dell Streak 2012 with Windows 8 for ARM CPUs and the Desktop environment.

    Hindsight is as they say 20/20, but I'd take your bet that Windows Phones would have sold better without Windows in the name. For a lot of people, when people sit down daily to work and see Windows XP, that's what they think of as Windows. They don't want that on their tablet!

    Even Apple has had this problem to a small degree with a simple two word name! How many times have you heard the iPod touch called iTouch? If Microsoft can't simplify the naming, they're going to lose sales because complexity is not a winning formula.

  3. There will be very few "Metro style apps" for Windows 8 for a long time.
    There are 0 Metro apps in existence. Windows 8 won't ship for a year. Make no mistake though, WinRT, the Metro app runtime is Microsoft once again trying to build an entirely new platform. The closest developers are right now to shipping Metro style apps, not even using WinRT, just the Metro visual design, are on Windows Phone 7.x, and the phones aren't selling well. Where's the evidence that consumers will actually buy Metro style apps?

    Developers have 1 year to build Metro apps for Windows 8. There will certainly be Metro apps when Windows 8 ships because hundreds of millions of copies will be sold. How many copies are going to be on tablet devices instead of Microsoft's traditional PCs? No one knows. The only data currently available on consumers preference for the Metro UI are Zune and Windows Phone sales, both doing poorly. There isn't going to be a halo effect for Metro apps for a long time if ever. There are going to be a lot of developers on the sidelines until Microsoft can actually sell, not ship, sell tablets in volume.

    Microsoft has previewed Windows features early for years from a position of strength because they were the only game in town. But the game has changed. They have zero tablet apps and must get as many developers on board now or the Windows 8 launch or the game is over.

  4. Windows 8 and PC tablets aren't competing against iPad 2 and iOS 5, there competing against iPad 3 and iOS 6
    iOS 5 ships in weeks for all existing iPads and 2-3 years worth of iPhones. Very few people outside of Apple know what iPad 3 will be. Most likely only Apple knows what's going to be in iOS 6. Sure, it may not be iOS 6 that ships around the same time as Windows 8, could be a 5.x, but I bet it will be iOS 6. Will Windows 8 with Metro look fresh against iOS 6? Google will ship a bunch of new Android releases between now and then too. The ship in Redmond is too big to seriously change course and still ship Windows 8 in time for Fall 2012.

    Fall 2012 will be one of those historical inflection points, like the launch of Windows 95 and iPhone, that technologist will remember as long as they live. Microsoft is either going to flame out or curtail Apple's incredible tablet growth. I seriously believe this is Microsoft's last chance to remain relevant. The mobile train has left the station and is accelerating, but Microsoft hasn't even finished their travel plans!

  5. Apple could have an App wildcard up it's sleeve
    I believe iOS and OS X will stay merged at the lowest layers, but at the UI layer they stay separated. There are certainly ways Apple could make OS X post-Lion even more like iOS without them truly merging. One thing I think Apple could do is merge the iOS and OS X apps stores and make iPhone, iPad, and Mac binaries in one app package the new Universal format. Forget legacy vs. Metro style apps in Windows 8, with the App Store, you could buy an app for use on all your Apple devices. Apple's put multiple binary images in one app bundle for years and OS X apps are getting more structured like iOS apps with sandboxing this year. I've actually been surprised this hasn't happened all ready. This would be fairly easy to do and makes whether an app runs an on any Apple device an implementation detail user's don't have to worry about. Or Apple could allow Cooca Touch apps to run directly on OS X by consumers since they already do in the iOS Simulator, but I think this is the wrong thing to do since iOS apps usually can't handle the multitude of screen sizes on Macs.

To be clear though, I hope Microsoft eliminates more of this complexity and can avoid unforced errors to compete effectively with Apple. One technology company with monopoly power is not a recipe for moving technology forward as seen during Microsoft's long reign as king of PCs. Apple products are what I use and develop for today and for the foreseeable future, but if the conditions are right, switches have to be made. After all, I was developing on Microsoft platforms for 10 years.

Tuesday, September 06, 2011

QuickTime X on OS X Lion 10.7 Been Acting Like It's Possessed By A Mischievous Spirit? Here's The Fix.

Have:

  • QuickTime Player window titles been unclickable?
  • Control HUD unmovable?
  • Creating screen recordings all but impossible?

Then call the QuickTime X Busters! We're ready to believe you!

The ectoplasmic residue that's been haunting your Lion install is the QuickTime Player X Preference Pane and the preferences it created. Back in the OS X 10.6 Snow Leopard days, this handy utility gave you the ability to configure certain hidden preferences that you might like, such as automatically playing a video once the file is opened.

This utility, as developer Megabyte Computing Solutions says is 10.6 only, but that doesn't help when doing an inlace upgrade. To fix QuickTime Player in Lion then, you need to trash the preference pane and any old preference files in ~/Library/Preferences. Quit and open QuickTime Player if it was running and BOOM, no more busted QuickTime Player.

I'd chalked up this behavior to simple beta and then 10.7.0 bugs. But it finally occurred to me today that there is no way  ships QuickTime Player in Lion that busted, then I figured this out.