

Microsoft Pulling Free Development Tools for Windows 8 Desktop Apps - mrclownpants
http://www.engadget.com/2012/05/24/microsoft-pulling-free-development-tools-for-windows-8-desktop-apps/

======
zmmmmm
Just another step towards a closed, locked down world where every app is
vetted, approved and ultimately constrained to not compete with the business
interests of the two largest tech companies in the world.

I know, people will say, this hardly makes a difference, right? But all the
steps hardly make a difference. OSX Mountain Lion defaulting to only allow
apps signed with a certificate from Apple? Why, the user can just disable that
... not including Flash or Java? Sure, just install them! It all hardly makes
a difference. But all these steps put together - they make a difference!

Slowly and surely we're being led like lambs to the slaughter to a world where
everything we say or do with our technology will be under the control of giant
tech companies that ultimately care only about their own profit. This is just
one more little step to ensure that developers preferentially make apps for
Microsoft's walled garden rather than free apps that run anywhere and might
compete with their interests.

Edit: correction about Mac App store vs signed apps

~~~
apike
I think most would agree that this trend is there - the debate is how much it
matters, how long it will last, and what, if anything, we should do about it.

One point however: in Mountain Lion, the default is to allow any signed app to
be run. One alternative setting is to only allow App Store apps. The other,
likely more popular, alternative setting is to allow any app.

~~~
cfn
I do think it matters a lot. If the Windows and Mac platforms are only
accessible through App Stores then we, developers, will have to pay whatever
royalty or percentage those companies see fit to charge. We may also lose the
ability to publish software at all to those platforms if they so decide
without much notice and maybe even without recourse.

Although we could pass the expense of the App Store or absorb the cost, I
guess most software companies would go bankrupt if Microsoft or Apple
cancelled their accounts.

------
cageface
Although I think HTML5 is actually a pretty lousy software stack for
application development, I'm becoming more and more sympathetic to the
arguments that the evolution of the web is absolutely essential for the
survival of free & open computing.

It was bad enough that their mobile platforms are so locked down, but with
Apple and Microsoft now turning the screws ever tighter on their previously
open desktop platforms and development tools the future is looking grim.
Remember, once a freedom is relinquished it can be very difficult to get it
back.

As much as I dislike trying to build complex apps on the web stack I'm
starting to feel an almost moral obligation as a hacker to throw my weight
behind the web, for whatever it's worth.

~~~
daeken
> Remember, once a freedom is relinquished it can be very difficult to get it
> back.

No, it's not. I'm a huge, huge MS fanboi. I've used WP7 since it launched,
I've been using Windows full time for quite a few years now and love it, I'm a
huge .NET fan, etc. But about two weeks ago, I switched back to using Linux
full-time. I only plan on using Windows in VMs for running software I'm
reversing; everything else will be done natively under Linux.

Windows 8 on ARM being so locked down was the last straw. I'm done playing
their game, even if it means a slight drop in productivity in the short term.

~~~
bad_user
About your productivity levels, don't worry about it because in the end you'll
end up being much more productive.

The one thing you must do is to embrace the Unix way of doing things. Learn
the basic command-line tools and use them daily. Learn to use Emacs, because
the same shortcuts are available in the shell.

This book is great btw: Unix Power Tools (<http://amzn.to/Klexhf>)

Another thing you have to realize is that Unix was built for polyglots. Many
Windows developers usually stay within the walls of .NET, but on Unix that's a
mistake. Learn Java, learn a good scripting language (I recommend Ruby because
it is great for scripting, has a thriving community and can also run on top of
the JVM), learn C along with the POSIX APIs.

Eclipse or IntelliJ IDEA are good substitutes for Visual Studio, however I
work with Emacs, because in dynamic languages the APIs and workflow are
optimized for non-IDE usage and an IDE just stays in my way. I still use an
IDE for Java, but that's only because in Java I can't drop to a REPL.

Also, Linux is great for your desktop, but only if you have hardware that's
compatible with it. So be careful when picking hardware and do some reading
first, otherwise it will ruin your mood. OS X is also an option btw, but I
wouldn't make long-term commitments to this platform because Apple is even
worse than Microsoft in some regards.

~~~
daeken
I've been using Linux since 1999, ran it full time for many years. However, my
productivity is still diminished, primarily due to the lack of decent
reversing tools. IDA 6 is _ok_ on Linux, but that's about where it ends.
Eventually I'll build my tools up again, but it's a long climb.

------
jasonkester
This doesn't really seem like news to me. I've never met anybody doing real
development in the .NET world who didn't have a paid copy of VS.NET.

With BizSpark or similar, you're looking at something like $400 total to get
as many copies of VS.NET as you need for your entire team. And all the other
dev tools everybody needs. And Windows licenses for all their boxes. And
Office. And everything else Microsoft makes.

So even assuming a team size of one, it's still closer to free than it is to a
day's worth of your bill rate. Considering how much better the paid version of
VS.NET is than the "Express" version, it's not even something worth thinking
about.

Given that, the fact that the Free version does this or doesn't do that has
pretty much zero bearing on the life of a guy writing software on the
Microsoft stack.

~~~
gurkendoktor
> This doesn't really seem like news to me. I've never met anybody doing real
> development in the .NET world who didn't have a paid copy of VS.NET.

For C/C++ hobbyists and Open Source developers, MSVC used to be the compiler
of choice on Windows. The Ruby community has embraced mingw more and more, and
I think everyone else will (and should) do the same. Breaks my heart because
MSVC has good C++11 support.

I don't think any professional will care about this. In fact, it's probably
good news for them (us). Any barrier to entry means slightly less competition.

~~~
jasonkester
Why is your heart breaking? The new version still supports c++, right?

Just because it's a hobby doesn't mean you can't pay a little money for
things. I have lots of hobbies that are _way_ more expensive than computer
programming.

One surfboard costs more than you'll pay for a full VS.NET license. Over the 4
years this next version will keep you going, I'll go through thousands of
dollars worth of rock shoes. A gamer will go through thousands of dollars
worth of games. A mountain biker will replace his $1500 bike in that
timeframe, and a snowboarder will rack up thousands of dollars in lift tickets
and baggy trousers.

All these things have in common that: A. They're enjoyable, and: B. They cost
money. Programming computers is no different. If you want to do it, and
there's a good new tool out that costs money, why would you not buy it?

~~~
gurkendoktor
> Why is your heart breaking?

I used the free MSVC2003 compiler during high school, when $600 was half a
year's worth of pocket money, and when mingw didn't even link a basic UNICODE
program properly. I eventually saved up enough money to buy the "full"
MSVC2003 Standard for ~€130, what later became Express. I never made a single
penny off it. I bet many people who got into programming through hobby gamedev
lived a similar life.

After making the switch to OS X during university, I often used the (now free)
MSVC Express for playing around with Open Source on Windows. Or to compile a
copy of my game for Windows friends. Tiny stuff that's not worth three-digit
sums. If I can't toy around and be happy on Windows, then I'll forever stay in
Apple wonderland.

Both scenarios will be too expensive to imagine now. If anything, people will
use mingw instead. And that's what breaks my heart - I really wish people
could use the awesome MSVC2011 compiler instead, with all the new C++ features
we have been looking forward to for years. MSVC2010 is still good enough, but
for how long?

~~~
gurkendoktor
Seems mingw's C++11 support is getting there too - though I couldn't find a
definitive list. That solves some of my heartache at least.

------
stephengillie
<http://news.ycombinator.com/item?id=4020222>

<http://news.ycombinator.com/item?id=4021690>

~~~
stephengillie
Why was I downvoted for linking to previous comment threads about this same
story?

~~~
lazugod
Possibly because you hadn't said what the links were, and the downvoters were
lazy.

------
ajasmin
Do we have to pay the Windows Store registration fee to deploy a Metro app? Or
is there still way to send out an .exe to our friends and colleagues?

Even if we get free development tools it would sucks if we can't share our
work for free.

------
altrego99
\+ Freelancer devs will be 'encouraged' to develop for Win 8, an argument can
be made this will positively impact Win 8 sells, albeit it will be a difficult
argument

\- Open source development on Windows will take a hit

\- Freelancers will either stick with older and less effective tools, or will
choose to abandon Desktop

\- Users will tend to get less new software for their Windows 7

+/- Will not affect big corporations, e.g. gamemakers, who use the
professional version

\- This will provide no additional motivation to bulk of the users (e.g.
corporate, gamers) to switch to Windows 8

\- This will further 'encourage' piracy of VS11

~~~
InclinedPlane
Freelancer devs will spend the money on the full version of the tools instead
of just using the free version. You have to be a pretty small potatoes
freelancer to not be able to afford visual studio in some incarnation. See
also: graphic artists and photoshop.

~~~
coffeeaddicted
It's not always about beeing able to afford something or not. I don't _want_
to support a business model that makes it harder for beginners. So yeah, when
I have no choice due to project reasons I'll be forced to buy one obviously,
but I don't like it and I will try even harder to get away from working on
projects where I'm forced to do this in the future.

------
Musaab
The whole direction Microsoft is taking with Windows 8 and Visual Studio 11
seems kinda disturbing.

------
celerity
I think they should instead focus on making Metro appealing to develop on,
rather than making it the only free option.

At least they still allow other compilers and any programming language.

I wish Ubuntu would step up their development resources game, so that it
becomes less painful to do anything there.

~~~
brudgers
It's only Visual Studio 11 Express Edition which is limited to Metro. VS 2010
EE will still be available for developing Windows 8 desktop applications.

------
dbcooper
How will this affect applications like Matlab 2012 64bit, which require a
compiler (such as in the Win 7 SDK) to be installed to use certain features
such as SIMULINK?

<http://www.mathworks.com/support/compilers/R2012a/win64.html>

Will there even be a compiler they could licence from MS and bundle?

~~~
brudgers
VS Express 2010 will continue to be available.

Previous discussion here: <http://news.ycombinator.com/item?id=4020222>

------
rvkennedy
It's long past time since Visual Studio was the only game in town. Back when
it was between VS6 and Borland C++ Builder, I was initially attracted by
Builder's drag-and-drop UI construction - it seemed very odd at the time that
"Visual" studio didn't offer that functionality. But Borland's descent into
bug-ridden stagnation and my discovery of wxWidgets pushed me into the VC++
world for upwards of a decade.

But now with Eclipse reaching maturity (it's the main IDE at the banking
multinational where I recently worked), I'm finding less and less
justification to stick with Visual Studio when my MSDN subscription expires.
Another very promising tool is Qt Creator:
<http://qt.nokia.com/products/developer-tools>

This has less of the UI quirkiness of Eclipse, and the built-in documentation
is great. Qt is now using Clang for code validation, but can be set to use Gcc
or the Microsoft compiler. So given that I'm using Qt anyway for cross-
platform UI, this may be the way forward.

------
bartl
Alternative article on Ars Technica: [http://arstechnica.com/information-
technology/2012/05/no-cos...](http://arstechnica.com/information-
technology/2012/05/no-cost-desktop-software-development-is-dead-on-windows-8/)

------
benologist
AOL spam.

[http://blogs.msdn.com/b/visualstudio/archive/2012/05/18/a-lo...](http://blogs.msdn.com/b/visualstudio/archive/2012/05/18/a-look-
ahead-at-the-visual-studio-11-product-lineup-and-platform-support.aspx)

------
eblackburn
The more accessible the grass route tools the greater the chance of adoption.
Adoption for Win8 / RT maybe acceptable with the new Express options but
frankly I don't see C# developers of the future applying for licences for IDEs
to compile their software. They'll just adopt a different more (immediately)
accessible platform. Companies will struggle to recruit for server hosted line
of business applications. The ecosystem will suffocate. Managers and engineers
will consider different platforms as part of their due diligence, as a result
I predict less Windows licences will be sold.

------
beedogs
Microsoft is really, really doing well in their push to get users and
developers to move to Linux. I can see no other reason for this move.

------
api
Walled garden platforms are taking over partly because all operating systems
are fundamentally broken with regard to privilege isolation, security, and
application installability/uninstallability.

The fact is that for the average non-techie user, allowing unsigned/untested
apps results in a system full of malware and crappy software that destroys it.
That's because the OS is not isolated from apps, and apps are not isolated
from each other.

The popularity of virtualization is also due in large part to this. Why can't
you just rent accounts on large Linux servers? Why is KVM, OpenVZ/Parallels
Virtuozzo, etc. necessary? Because everything requires root and everything
pollutes the OS space.

Broken, broken, broken.

The way Macs package .app directories full of all files related to an
application is a huge step in the right direction. The next step is to utterly
forbid "installers" and make everything work this way, and to add stronger
privilege isolation and organized APIs for apps to talk to each other. These
should probably be based around peer-to-peer networking so that an app can
locate and talk to another app regardless of what box it's on.

That would be significantly less broken.

Then allow apps to have their own addresses. We probably have to wait for IPv6
for this, but not necessarily. Then an app can bind, run services, etc.
without requiring root.

Finally, banish the entire concept of root/administrator except for OS
developers and OS maintenance. The vast, vast majority of users (even power
users) should never need to even know these exist.

The bottom line is that the entire concept of "installing" something "on" the
OS needs to be killed. Installers are ugly nasty hacks. Package management
(ala rpm, deb, etc.) is _also_ an ugly hack. Signed apps in walled gardens is
an even nastier and downright evil hack to get around the brokenness of these
ugly hacks.

~~~
crumblan
> The next step is to utterly forbid "installers" and make everything work
> this way, and to add stronger privilege isolation and organized APIs for
> apps to talk to each other.

I agree and disagree with you. I would be awesome if I could restrict apps and
forbid installers. I'd also like to be able to run arbitrary apps as forbidden
to use the internet and make them think they are reading/writing to
/some/path/ but they are really reading/writing to /app/sandbox/some/path. I'd
love the option.

But then there are problems with that as well. Want to make an app plugin?
Nope. Want to share libraries? Nope. Want to talk to an app? Hope it's got a
canonical port number.

So I don't think enforcing boundaries is the way to go. I'd love to see other
opinions and whether or not there are any alternatives, though.

~~~
api
I think there are creative solutions to this. Like I said: there would need to
be a well-designed inter-app API.

Plugins for instance could be handled like firmware updates to a device. Send
the image to the app via the API. "Here is your plugin..." Or some apps could
have their own plugin stores, ala the Chrome store. There are different ways
of handling this.

------
norswap
Apart from IDE and related tools (which is a pretty big reason, to be sure),
is there a good reason to use Microsoft's C/C++ compiler over MinGW ?

------
EtienneK
Not great news for XNA hobbyists like myself.

Oh well, I guess I'll just move to Java to create some games. It worked for
Notch :)

~~~
bad_user
Java is great for hobbyists. Checkout: <http://jmonkeyengine.com/>

Also, checkout MonoGame: <http://monogame.codeplex.com/>

------
forgotAgain
It's developers, developers, developers. Until it isn't.

