Microsoft has released a beta SDK for Windows, allowing Windows developers to officially make use of the XBox Kinect hardware. From their own press release: "The Kinect for Windows SDK, which works with Windows 7, includes drivers, rich APIs for Raw Sensor Streams, natural user interfaces, installer documents and resource materials. The SDK provides Kinect capabilities to developers building applications with C++, C# or Visual Basic using Microsoft Visual Studio 2010."

There are lazy people who do half arsed things in all walks of life ... really how does lazy devs have anything to do with this?

I have seen bad code in a multitude of languages ... there will always be rubbish code as long as software engineering processes are misunderstood and there is lazy developers involved who only care about their paycheck.

How exactly is Microsoft release an official SDK for their own product got anything to do with locking new devs Microsoft platforms in or code quality?

As I said, I learnt how to OOP using Java and Eclipse or a good text editor ... and Web Dev with a LAMP stack ... now I use ASP.NET.

When it comes to learning ... understanding principles is what is important ... what you happen to learn them with is largely irrelevant.