If a user sees that a programming app is already installed, he or she may try it one day while bored for poops and giggles.
Or he/she may open it, be instantly confused, and then close it immediately.
Otherwise, the user will have to know in advance that he wants to "do programming".
I don't think this is a huge barrier. There are so many ways kids can stumble upon what programming is, to say nothing about the various efforts to intentionally expose them to such concepts.
Why write a little program that draws some lines when the child could play a video game that's much more visually stimulating & engaging???
I don't know about you, but when I was a kid, me and my friends wanted to create games because we liked playing games. We were coding text adventures in qbasic because we liked Zork. Then we moved on to coding platformers in Click and Create because we liked Sonic. These days games are a little more complicated, but I still haven't met a gamer who hasn't had "wouldn't it be cool if..." ideas him/herself. I don't think I've met a gamer who hasn't had "wouldn't it be cool if..." ideas him/herself.
So...which of those titles are included with every copy of Windows?
Why does it have to come with the OS? What does that even matter these days, when everything is a download away.Almost half the products I listed are available direct from MS without going through Dreamspark:
Just a simple download away. You can even download Visual Studio Express for free to develop for web, desktop, or Windows Phone. This is a great place for kids to start. When they're ready for advanced features, they can move over to the full version through Dreamspark.
Which of those provide kids with a simple and powerful way to create something impressive?
Take your pick. There's something for all levels. Smallbasic and Kodu Game Lab are products for beginners. Next level up they can use Robotics studio or XNA Game Lab. Kinect SDK is very powerful and easy to use as well with lots of example code.
If Bill Gates was a teenager now, he would be on xbox live and there never would have been any Microsoft.
Many gamers are very keen to make their own games, but they don't know how. MS provides tools for this. I've taught many middle / high school students how to program robots using MS Robotics studio and the Kinect SDK, and they love it. It's amazing the kind of stuff they come up with.
Microsoft does not want kids coding based on what they DO rather than on what they SAY. They used to supply a simple basic interpreter with every copy of MS-DOS that cost nothing and was simple to use. That is long gone and nothing has ever taken its place. If kids want to code now, the options are expensive, complicated, and are not included in the price of 'Windows.'
Apparently, Slashdotters are truly ignorant about Dreamspark, as this is the third time I've had to post it. Let me spell it out for you. From the FAQ:
What is DreamSpark?
DreamSpark is a Microsoft Program that supports technical education by providing access to Microsoft software for learning, teaching and research purposes.
DreamSpark is simple: it's all about giving students Microsoft professional-level developer and designer tools at no cost so that students can chase their dreams and create the next big breakthrough in technology - or just get a head start on their career.
High schools, vocational and trade schools, community colleges and universities are all eligible to participate in the DreamSpark program. Simply put, any accredited school around the world is eligible.
Emphasis mine. Here is a sampling of the software available:
Kids should be given FULL copies of Visual Studio
2) Allow users to load different "skins" like you can on Linux or Android. Metro interface for tablets/phones, Win 7 for desktops. Don't like the one you have? Restart, choose new skin, done. 3) Open source the GUI and allow others to create their own GUI's and sell them in the MS App store. Or give them away. Whatever..just give people choices.
These last two have been possible since at least Windows XP. Windows allows you to replace the shell with whatever you want. This is the whole idea behind Classic Shell: http://classicshell.net/
Factorials were someone's attempt to make math LOOK exciting.