It's much easier to copy something that already exists than create something genuinely new.
Traditionally, FOSS has been best at two things: 1) Making things developers specifically care about (text editors, IDEs, source control, etc), and 2) Mimicing things that already exist.
Because something like OpenOffice, overall, doesn't fall into (1), I don't think it'd be anywhere close to as powerful as it is today if there weren't non-free office software (chiefly MS Office, in practice) to mimic.
It's not like we don't have an open source version of near every kind of software Microsoft makes.
In the sense that no one would sink the resources that Microsoft has into developing the likes of a Windows or an Office if it was completely legal for everyone to just directly copy it? Yeah, that's probably true -- but then the free closest equivalents we have today probably wouldn't be as far along, in general, either.
(lots of random tables for everything - want to know what sort of artwork you just looted? There's a table for that),
I think the best example of this is the 1E DMG's random whore encounter table, where you can discover whether you've run into a brazen strumpet or an opportunistic doxy or a sly pimp or what have you.
Yes, you have that right: Not only can you randomly encounter prostitutes, but you then roll on another table to find out what kind.
they are trying to drive up Windows based PC sales.
Yeah, that's a totally credibly theory. The "tech nerds who want to play around with a Kinect SDK" is, like, 90% of the market for PCs, so this really will boost sales.
Unfortunately, we still live in an America in which someone who votes against the Patriot Act will be demogogued in the next election as being "soft on terrorists" and not caring enough about the safety of Americans.
Also unfortunately, we get the government we deserve as a people.
Blunt question: even if it costs half as much to hire someone working in a third world country, isn't this made up for by the inefficiency of long-distance communication of and delays in understanding across cultures?
Generally, yeah. I worked at or knew people who worked at a lot of business that were offshoring projects in 2005-2006. None of them still are. They each got burned in some way.
Don't take me to be saying it can't work; it definitely can, but making it work is a *lot* harder and more expensive than businesspeople initially believed. Example: your requirements and design documents need to be much more rigorous and detailed than they'd need to be for someone who can grab the tech lead and a whiteboard for ten minutes whenever they need to hammer a detail out. A lot fewer people are capable of writing those kinds of documents than think they can write those kinds of documents, and for various reasons (depending on what angle you go at to hire or produce such a person) they're expensive.
What's so hard to understand about "I think this should be legal in my country, and I'm going to make the sincerest political statement I can to that effect?"
This doesn't help with things like cancer or such, as treatments for the cause are all experimental, and the treatments for the symptoms are superficial.
So... they have to pay to keep you alive, except in the cases of things that will actually kill you slowly enough for them to have time to refuse you?
From a pragmatic perspective I don't see much of a meaningful difference in your version vs. his.
Many companies (particularly smaller ones) simply could not afford to dump that investment and do a.NET rewrite.
To be fair, Visual Studio has an autoconvert-VB6-to-VB.NET migration tool that's actually rather good -- as long as you didn't do anything too crazy with your VB6 app, like, say, use a bunch of third-party UI controls.
Which, as it happens, a fair number of businesses did.
There's always C/C++ but they're getting really long in the tooth and with all respect to Perl/PHP/Python/Ruby/Haskell and so on they're not a replacement.
Yeah, I pretty well agree with that. There are things I write in C still, and there's things I'd write in one of the pile o' scripting-ish languages, but for 95+% of the work I'm called on to do professionally a language like Java or C# is by far the clear choice.
That being said, I think Microsoft's stewardship of C# has been pretty good so far (at least, I can't point to a company that I think has done a better job with anything remotely similar, and I'm hard pressed to name an open community that's done better by me, for the purposes I care about), and I have my hopes (perhaps naive) that even Oracle can't screw up Java at this point, it mostly being in the hands of the Java community for most effective purposes, so I'm less worried about needing a third option than you are at this point.
Now? Now you still look like a gomer, because this article is stupid, and even if it wasn't? Microsoft hasn't succeeded in making VB6 go away despite a decade of trying and the people who make their dev tools fervently praying it would disappear.
A stopped clock is right twice a day; as a software prophet of doom, you have some work to rise to that standard.
This would be funny if millions of people weren't STILL using VB6.:P Hell, I've worked at two Fortune 500 companies in the last year that had business critical applications still in VB6.
Now, that millions of people are still using VB6 is funny, but that's not where you were going with that.
Could I ask for your perspective on why this is the case?
I'm not the person you're replying to, but I'll give you mine:
It's basically Java done one better. Basically it's the version of Java you'd come up with if you'd spent 5 years in the trenches as a Java developer and had a good set of ideas as how you could do a better job if you had it to write over again from scratch, keeping everything that's good about Java (except for the cross-platform action, which in my experience for any practical application was more of an in-theory benefit than actual benefit) and fixing a lot of things that weren't quite right.
(Granted, Java is since then improving, as well.)
I'm sure a lot of people don't think much of Java, either. It's not the right tool for every task, and neither is.NET -- but for several niches (e.g. writing custom applications for a business's internal use) it's a pretty awesome one.
Web development is a small subset of what you can do with.NET.
The other 90%+ of things you can do with.NET you're not going to write as a web application. Period.
Someone might as well ask whether HTML5 will replace C++. It'd be as about as idiotic of a question. Not only is the answer obviously no in either case, even asking the question reveals that the asker doesn't have even the most basic idea of what they're talking about.
Really, it's not that hard and that's what programmers do, not simply put together a bunch of frameworks and visit/.
Yeah, become the millionth Java programmer to create their own unmaintainable knockoff of Struts. That's exactly what the world needs.
Out of curiousity, how much Java development have you done for large (i.e. Fortune 500) companies? Priorities are a lot different there vs. Java app you throw together for a homework assignment.
But, 'out' and 'part of standard Java' are two different things, and that illustrates exactly the problem with Java for many developers, which is: standard Java is always far behind the curve, so it's always necessary to augment Java with community efforts to accomplish the tasks at hand as a professional developer.
And, great that the Java community is so active and vibrant that there *will* be something out there that solves the problem that you're having, but which one? How often have you grabbed a community Java package to solve some business problem and figured out a little too late that while it does 98% of what you need, you can't get the last 2% done at all without tossing that framework and starting over with a different one?
Ultimately what I think I'm saying is: you can't be a casual Java developer and be a good Java developer. You need to remain very current on each community project that you even might use to be able to make your architectural decisions correctly. You need to be aware of which of these things you might pull in don't play well with each other and why. This is a problem that developers in several other languages just don't, in any practical sense, have.
Congratulations, you've simplified a complex situation down to a simple black and white dichotomy which bears little relevance to the original situation. Have you considered founding a popular religion?
Yeah, that's the detail that really made the story for me.
I mean, sure, this whole thing is creepy and wrong, but going beyond snapping pictures to trying to trick the women to taking their laptops into the shower? That's one for the ages.
Resources exist to be consumed. And consumed they will be, if not by this generation then by some future. By what right does this forgotten future seek to deny us our birthright? None I say! Let us take what is ours, chew and eat our fill.
Well, no, not necessarily.
It's much easier to copy something that already exists than create something genuinely new.
Traditionally, FOSS has been best at two things:
1) Making things developers specifically care about (text editors, IDEs, source control, etc), and
2) Mimicing things that already exist.
Because something like OpenOffice, overall, doesn't fall into (1), I don't think it'd be anywhere close to as powerful as it is today if there weren't non-free office software (chiefly MS Office, in practice) to mimic.
That doesn't really answer my question.
Frankly, it doesn't speak well to the unique problems of software at all.
I'm curious how you imagine that world to be.
It's not like we don't have an open source version of near every kind of software Microsoft makes.
In the sense that no one would sink the resources that Microsoft has into developing the likes of a Windows or an Office if it was completely legal for everyone to just directly copy it? Yeah, that's probably true -- but then the free closest equivalents we have today probably wouldn't be as far along, in general, either.
Well, still nobody gets fired for buying Microsoft, but you might get fired for Microsoft buying you.
(lots of random tables for everything - want to know what sort of artwork you just looted? There's a table for that),
I think the best example of this is the 1E DMG's random whore encounter table, where you can discover whether you've run into a brazen strumpet or an opportunistic doxy or a sly pimp or what have you.
Yes, you have that right: Not only can you randomly encounter prostitutes, but you then roll on another table to find out what kind.
they are trying to drive up Windows based PC sales.
Yeah, that's a totally credibly theory. The "tech nerds who want to play around with a Kinect SDK" is, like, 90% of the market for PCs, so this really will boost sales.
If that's only half trolling, what's the other half? Doubletrolling, for a total composition of 150% trolling? :P
Ahh, the sinking feeling of having written a serious response to a post that's accruing funny mods...
Deserves, yes.
Unfortunately, we still live in an America in which someone who votes against the Patriot Act will be demogogued in the next election as being "soft on terrorists" and not caring enough about the safety of Americans.
Also unfortunately, we get the government we deserve as a people.
MSFT has to convince business that building on a MSFT platform is cost effective.
Uh, which business? There's more .NET development work (for businesses) in my market than qualified people to do it.
I think you're speaking more to how you'd like things to be than how they actually are.
For most businesses of any size, the cost of a Windows license doesn't even amount to a rounding error in their budget.
Blunt question: even if it costs half as much to hire someone working in a third world country, isn't this made up for by the inefficiency of long-distance communication of and delays in understanding across cultures?
Generally, yeah. I worked at or knew people who worked at a lot of business that were offshoring projects in 2005-2006. None of them still are. They each got burned in some way.
Don't take me to be saying it can't work; it definitely can, but making it work is a *lot* harder and more expensive than businesspeople initially believed. Example: your requirements and design documents need to be much more rigorous and detailed than they'd need to be for someone who can grab the tech lead and a whiteboard for ten minutes whenever they need to hammer a detail out. A lot fewer people are capable of writing those kinds of documents than think they can write those kinds of documents, and for various reasons (depending on what angle you go at to hire or produce such a person) they're expensive.
What's so hard to understand about "I think this should be legal in my country, and I'm going to make the sincerest political statement I can to that effect?"
If that's wrong, I don't want to be right.
This doesn't help with things like cancer or such, as treatments for the cause are all experimental, and the treatments for the symptoms are superficial.
So... they have to pay to keep you alive, except in the cases of things that will actually kill you slowly enough for them to have time to refuse you?
From a pragmatic perspective I don't see much of a meaningful difference in your version vs. his.
You'd get modded down because you're wrong. As you're still wrong.
Silverlight didn't go anywhere. Shit, it just released a new version. Another new version is due later this year.
Many companies (particularly smaller ones) simply could not afford to dump that investment and do a .NET rewrite.
To be fair, Visual Studio has an autoconvert-VB6-to-VB.NET migration tool that's actually rather good -- as long as you didn't do anything too crazy with your VB6 app, like, say, use a bunch of third-party UI controls.
Which, as it happens, a fair number of businesses did.
There's always C/C++ but they're getting really long in the tooth and with all respect to Perl/PHP/Python/Ruby/Haskell and so on they're not a replacement.
Yeah, I pretty well agree with that. There are things I write in C still, and there's things I'd write in one of the pile o' scripting-ish languages, but for 95+% of the work I'm called on to do professionally a language like Java or C# is by far the clear choice.
That being said, I think Microsoft's stewardship of C# has been pretty good so far (at least, I can't point to a company that I think has done a better job with anything remotely similar, and I'm hard pressed to name an open community that's done better by me, for the purposes I care about), and I have my hopes (perhaps naive) that even Oracle can't screw up Java at this point, it mostly being in the hands of the Java community for most effective purposes, so I'm less worried about needing a third option than you are at this point.
Now? Now you still look like a gomer, because this article is stupid, and even if it wasn't? Microsoft hasn't succeeded in making VB6 go away despite a decade of trying and the people who make their dev tools fervently praying it would disappear.
A stopped clock is right twice a day; as a software prophet of doom, you have some work to rise to that standard.
This would be funny if millions of people weren't STILL using VB6. :P Hell, I've worked at two Fortune 500 companies in the last year that had business critical applications still in VB6.
Now, that millions of people are still using VB6 is funny, but that's not where you were going with that.
Could I ask for your perspective on why this is the case?
I'm not the person you're replying to, but I'll give you mine:
It's basically Java done one better. Basically it's the version of Java you'd come up with if you'd spent 5 years in the trenches as a Java developer and had a good set of ideas as how you could do a better job if you had it to write over again from scratch, keeping everything that's good about Java (except for the cross-platform action, which in my experience for any practical application was more of an in-theory benefit than actual benefit) and fixing a lot of things that weren't quite right.
(Granted, Java is since then improving, as well.)
I'm sure a lot of people don't think much of Java, either. It's not the right tool for every task, and neither is .NET -- but for several niches (e.g. writing custom applications for a business's internal use) it's a pretty awesome one.
And this is why it's stupid:
Web development is a small subset of what you can do with .NET.
The other 90%+ of things you can do with .NET you're not going to write as a web application. Period.
Someone might as well ask whether HTML5 will replace C++. It'd be as about as idiotic of a question. Not only is the answer obviously no in either case, even asking the question reveals that the asker doesn't have even the most basic idea of what they're talking about.
Really, it's not that hard and that's what programmers do, not simply put together a bunch of frameworks and visit /.
Yeah, become the millionth Java programmer to create their own unmaintainable knockoff of Struts. That's exactly what the world needs.
Out of curiousity, how much Java development have you done for large (i.e. Fortune 500) companies? Priorities are a lot different there vs. Java app you throw together for a homework assignment.
But, 'out' and 'part of standard Java' are two different things, and that illustrates exactly the problem with Java for many developers, which is: standard Java is always far behind the curve, so it's always necessary to augment Java with community efforts to accomplish the tasks at hand as a professional developer.
And, great that the Java community is so active and vibrant that there *will* be something out there that solves the problem that you're having, but which one? How often have you grabbed a community Java package to solve some business problem and figured out a little too late that while it does 98% of what you need, you can't get the last 2% done at all without tossing that framework and starting over with a different one?
Ultimately what I think I'm saying is: you can't be a casual Java developer and be a good Java developer. You need to remain very current on each community project that you even might use to be able to make your architectural decisions correctly. You need to be aware of which of these things you might pull in don't play well with each other and why. This is a problem that developers in several other languages just don't, in any practical sense, have.
Congratulations, you've simplified a complex situation down to a simple black and white dichotomy which bears little relevance to the original situation. Have you considered founding a popular religion?
Yeah, that's the detail that really made the story for me.
I mean, sure, this whole thing is creepy and wrong, but going beyond snapping pictures to trying to trick the women to taking their laptops into the shower? That's one for the ages.
Resources exist to be consumed. And consumed they will be, if not by this generation then by some future. By what right does this forgotten future seek to deny us our birthright? None I say! Let us take what is ours, chew and eat our fill.