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.”One thing that’s important about this announcement is that the SDK is non-commercial, free, and explicitly targeted at “academics and hobbyists,” although I’m sure that Microsoft’s going to be reaching out to professional game developers also. It also enables the hacker ethos by really letting developers get beyond the original gaming focus of the Kinect and get into the guts of its capabilities. From the Engadget article: “Built on XNA, the Kinect library is standalone, so you won’t necessarily need to rely on DirectX being present. The SDK gives full access to everything the peripheral has to offer, including both cameras (VGA and depth-sensing) and the full microphone array. The former can identify up to six individuals or track the full skeletons for two, while the latter can handle advanced echo-cancellation and even sound triangulation.”
Of course, people have been hacking the Kinect, and hooking it up to PCs since the Kinect was first released, and early on there were even rumblings that Microsoft was going to try to fight Kinect hackers, though they swiftly relented, then grew to embrace the movement. The release of this SDK is of course a culmination of their embrace of the movement, and an attempt to control and co-opt it.
Huh. It uses .NET.
But I thought that because the new weather widget in Windows 8 was written using HTML5 and JS that Microsoft would drop everything .NET evar and evarz1?
Can we finally have a minority report interface with this?
1. If you salute with 3 fingers, Windows asks if you want to reboot
2. If you “salute” with 1 finger, Clippy asks if you meant “Thank You!”
3. If you face away from the computer, and bend forwards, Windows asks if you are ready for the “Window Genuine Validation Test”.
4. Imitating Jerry Seinfeld – no effect on Windows.
5. Standing perfectly still and expressionless – Windows says, “Hello Melissa!”
Will gmail motion finally work?
http://www.gmail.com/motion
And we all thought it was just an April Fool….
It’s been done (though not by Google).
Maybe it’ll be ported to the SDK.
http://www.youtube.com/watch?v=Lfso7_i9Ko8
Hopefully yes … though it will make it far easier for my boss to know when I am checking my gmail.
Well, what else were they going to do? Allow an open source, cross platform SDK independent of Microsoft to gain traction? With a Windows-based SDK using Visual Studio, young programmers will be happily trapped on a Windows stack for decades! It^aEURTMll be this decade^aEURTMs Access.
Don’t you mean it’ll be this decade’s Xcode?
OMG I thought you would have more intelligence than this to say something soo stupid.
A good developer is a good developer in any language.
According to your logic … I learnt how to program in BBC BASIC, does that mean I am still trapped in only writing programs in BBC BASIC?
Also According to your logic, I learnt how to program OO in Java, does that mean I can only do OO programming in Java?
Good devs will learn the principles rather than the toolkit … and take those ideas elsewhere.
Whether they learn them using a .NET framework or an alternative open source one is irrelevant.
There is going to be an underlying theory on how these devices work and without that you won’t be able to program these well even if you know the SDK inside out.
It just an SDK to make it easier for .NET devs to develop stuff for what is essentially a USB device.
Also if students and hackers learn some knowledge about how to program and how these devices work … how can this possibly be a bad thing?
Personally I hope some cool things come out of it.
It’s not really that “stupid” of comment to make if you look at the development community in it’s entirety rather than just the elite few.
Most developers are lazy and a disappointing few developer are good developers.
I’ve lost count of the number of times I’ve seen nasty kludges and even wrong languages chosen because developers couldn’t be bothered to or didn’t know how to do things properly.
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.
Edited 2011-06-17 13:44 UTC
I think you’ve missed the point of my post by quite a margin.
…because this topic is about software development…
Well yes. But we’re talking specifically about developers so i didn’t see the point in discussing other industries.
Because if you are lazy and you’ve learned how to use this SDK, then why would you bother learning how to use another SDK. This is particularly true for hobbyists.
Well clearly you’re not lazy so your anecdotal evidence is irrelevant.
I agree, *if* you’re a good programmer. However we’re discussing the other end of the spectrum.
Not everybody falls into the category you’re describing. There’s a massive number of developers and hobbyists that will just make do with whatever tools and languages they’re already familiar with. In fact, most developers (even the good ones) will favor a project in a language they’re already experienced in than want to learn a new language just for the sake of learning a new language. So while this move by MS isn’t a “lock in” in the traditional technical sense of the term, it does give users more reason to stick with VS / .NET rather than learn open source tools.
To put an analogy on this: it’s like how Linux users moan about who many students are taught how to use MS Office, not generic office tools. Thus users are naturally more drawn toward MS Office as it’s what they’re familiar with despite the fact that general office computing skills are easily transferable between all the big office software suites.
Edited 2011-06-17 16:16 UTC
No I don’t think I did. I think you are making an argument because you think there is something inheritantly wrong with developing with Visual Studio.
It is a general point … stop being a pedant. You knew what my point was … this sort of arguing is pathetic.
I wasn’t discussing other industries. I was discussing software development. I actually work somewhere where there has been no code quality enforced (code reviews, naming conventions etc etc) … I spend most of my day rewriting legacy code. How software development is managed is probably as important as the talent and knowledge of the developers themselves … if not more so.
Why would you bother using another SDK when you already know how to use the current one? It is laziness … it is being sensible. I have some javascript code running on a website of dubious quality (written when I was far more inexperienced), but I left it as is .. because it works fine.
How to twist a comment around … this is just pathetic.
Which is entirely my point in the first place … if people happen to learn with Microsoft tools but understand the principles they will still be able to transition to whatever … if they don’t bother to learn the principles they will be starting from square one again … however that doesn’t mean that it is bad for Microsoft to release a SDK.
Fair point … you should always use the best tools for the job, rather than blindly stick to something because you happen to know.
1) Microsoft have no responsibility to help third party projects.
2) Why shouldn’t users learn how to develop with Microsoft Tools? … There is a lot of jobs out there for devs that know how to develop using Microsoft tools .. are you saying that people shouldn’t make themselves employable?
3) If open source tools are to be more widely used then they have to be more attractive to use than the (Microsoft in this case) alternatives.
In terms of using IDEs, I have to agree. I don’t know my way around Eclipse as well as I used to.
Edited 2011-06-17 18:07 UTC
WTF!?! Where did you get that retarded opinion from. I’ve regularly commented on here that I happen to think Visual Studio is not only the best IDE out there, but the best thing MS have ever developed.
I mean has this discussion already sunk that low that now you’re resorting to plucking complete bullshit out of thin air?
Sorry but I really can’t be arsed to read the rest of your post because the opening statement alone is so absurd that I don’t hold any hope of you posting sane comments after it.
/me gives up on this discussion
Edited 2011-06-17 20:45 UTC
The fact you were blatently missing every point I made and twisting my words around … when you blatently knew what I meant … it is a bit sad … you stopped talking like an adult before me.
Oh right … I am supposed to remember every user name and their general opinions. Really?
It wasn’t really out of thin air. It was the fact that you seemed to miss the point completely … it was almost as if you were doing it on purpose.
Do what you wish … save me keystrokes.
You weren’t even keeping on topic for fsck sake.
How is non-IT industries even relevant when talking about software development?
Seriously mate, listen to yourself.
Yes I did and thus answered all your points directly. You then turned prima donna and accused me of being an anti-VS zealot. I mean seriously, was there any need for you to act like that?
YOU MADE PERSONAL COMMENTS ABOUT ME FIRST!!!
In fact, you opened this thread with a longish post to Kroc where your FIRST line called him “stupid” because he happened to have an opinion you differed with? So how was that a mature attitude?
I really can’t believe I’m reading this. It’s as if you’re taking part in a whole other conversation to everyone else.
Yes it was. You had no evidence to make such a retarded claim – which is why I reacted the way I had.
You’re really not in a position to be making personal judgements about people – so just don’t.
I got your points (and what little relevance many of the had) and addressed them directly.
**YOU** were the one missing the point. I suggest you go back and re-read this thread.
You seem to be echoing the same tired line that “I am a good developer so I am proof that developers can switch platforms”.
Well nobody was disputing that good developers can do so (I’ve switched development platforms countless times myself). All I was stating is not every developer is as motived as yourself. A point you’re far too narrowminded and self-absorbed to notice – in fact so much so that you were lead to making completely absurd personal judgements against myself based on zero information.
The most annoying thing of all – well second most annoying after the lies you’ve spread about me – is that you actually went on to agree with the point about how users like to stick with the platforms their familiar with. This point you raised was the whole basis of my comment – the point you repeatedly missed and then proceeded to insult me over. Yet you then raise the exact same argument as if it was your idea and then accuse me of ignoring your points.
Well in all my life I can honestly say this has been the most laboured discussion I’ve ever had with a so called professional developer (and notice how I’m giving you the benefit of the doubt here that you might actually work in this field rather than just dismissing you like you had to us). However I can only hope your source code reads better than your failing attempts at English comprehension.
Edited 2011-06-18 00:52 UTC
You know what I just don’t care anymore … I am not arguing with someone who can’t think laterally … I sit next to some guy who can’t.
Our conversations go like this
Him – “The Telephone Engineer needs to come into my house to test the line … why does he need to come into my house?”
Me- “Because he needs to check the line and everything is working”
Him – “But the problem is up at the exchange/”
Me – “He doesn’t know that and he has to check it all the way through”
Him – “But why does he have to go into house?”
Me – “So that he can check he done the job right”
Him – “???”
Me – “It is like me making a change to the web page, never checking it and deploying it and then going home at the weekend.”
Him – “You are a fucking idiot you are comparing web pages to fixing a telephone line”
I then shake my head and go back to fixing the .NET 1.1 mess I have inherited.
This conversation reminds me very much of that.
You’re the one who can’t think laterally. You keep harping on about your own personal experience as if it’s the be-all and end-all.
All I was doing was simply pointing out that there are other kinds of developers out there that don’t match the same character profile as yourself. If that means /I’m/ the one who’s not thinking laterally then you have a serious ego problem.
Actually you were both right.
There’s different levels of line checks, most of which can be done at the exchange without visiting the property (in fact you can do an automated line test online – so you don’t even need an engineer for some tests). Usually the property visit is done as a follow up if problems are identified/persist and it’s evident that it’s not originating at the exchange.
At least that’s how BT operate – other companies might send their engineers out as a matter of course for good customer relations, but it’s them going above and beyond what’s necessary for a standard line test.
However lets not let the facts get in the way of your superiority complex
To be honest you just come across as closed minded and intolerant.
Even in this thread, you were one who was:
* first to be rude / make personal attacks (in fact it was you opening line)
* most deluded (you talk about acting like an adult while making personal insults only a few posts earlier)
* making personal judgements based on zero evidence (assuming I was biased against Visual Studio simply because i said some developers are lazy)
* not addressing any of the points raised while at the same time accusing me of twisting your words
As I said before, the problem is that you’re so closed minded that you can only identify with “developers” as this one niche that you and I operate in – ie employed programmers that readily switch between technologies depending on what suits a particular job best. However there’s a whole plethora of “developers” that fall outside that remit – and it’s something you’ve failed to identify with because you can’t see past your own ego.
Edited 2011-06-18 13:21 UTC
** shakes head **
Also, for someone that’s as “skilled” at switching technologies as yourself, your website it pretty poor. You could at least sort out the dead links.
Edited 2011-06-19 10:15 UTC
Yeah it is … I kinda got distracted by moving house, switching job etc … in the last year. Kinda hard putting something together when you don’t want to look at the computer when you get home.
They might be able to learn how to code properly, but will they learn a sense of humour
I dunno kroc … seemed like the usual MS bashing bullshit I see on here. How the hell am I supposed to know if it is a joke or not … seriously?
This is a little off-topic, but I just found out about this and thought it was cool Being released in August, Nyko is going to attempt to solve the ‘play space’ issues with Kinect:
http://www.youtube.com/watch?v=5i_UQ04Iylk&feature=player_embedded
I’m guessing this might also help with using gestures on a PC when you’re sitting in front of it, but not sure.
I wonder if this would have happened if drivers weren’t hacked up to make it work with Linux. MS can’t have liked all those Linux YouTube Kinect videos….. Those drivers are in the kernel mainline now. Be interesting how the OpenKinect SDK compares with the MS one. Personally, I’d much rather use Python+C or C++ then C# (and no C++/CLI isn’t really C++).