What value is the record industry currently adding?
If people like you succeed in your apparent wish to get rid of them, you'll find out the hard way. The promoters might not be worth what they charge at present, but pretending they don't do anything is just silly.
Not a lot, more cookie cut bands to fill a focus group identified niche that the record industry probably created though branding in the first place.
Yep, no-one likes those cookie cutter bands and their cheap, cloned pop from yesteryear. If the record industry just produced new, original material like all these Indie bands, they'd do much better. That's why Britney, Kylie et al. get download figures in the millions over P2P, while most of us have never even heard of the random bands a few people cite in each thread like this one, and often don't like what we do encounter enough to either download it or go out and buy it.
"Britney is just a cloned pop princess, if I didn't download her new album I wouldn't go out and buy it either so I'm not costing them anything!" And yet still the downloads go on, and on, and on. The hypocrisy around here is staggering.
But believe it or not, intellectual property exists simply to protect stupid abilities and rights such as these which dont even matter while removing our personal freedom.
Jeez, who the hell are you? How many times are you going to post the same exaggerated or ill-informed material in this thread? And, most scarily of all, how come you keep getting modded up so much? That must tell us a lot about the typical/. reader looking at this story.:-(
Oh yay, another idealistic "everything in the world should be free" post that hasn't thought about the consequences of what it advocates, preferring to take cheap shots at non-representative straw men. Let's see...
Its funny how 1% of the population who owns the information can force their rules on the 100 million or so file sharing people who dont own any intellectual property and who dont think its morally wrong to share it.
Bull. Most of these people agree that it's morally wrong, and know that they should be paying for it or not having it at all. They do it because they know they can (probably) get away with it.
Since when did capitalism decide the concept of right and wrong?
Since most of your population decided to vote for the guys in the two big parties who put on a snazzy show, rather than investing a handful of hours doing their homework and voting for someone who might actually act in the best interests of the population. Until you do that, you're going to get a lot of rich people in government who get richer, and the stand-up guys who put moral integrity ahead of their wallets will be in a small, cherished minority.
I guess some peoples religion is capitalism, and I suppose this government is run by capitalism and not democracy.
The problem with democracy is that in its purest form, it only works in the presence of an informed and rational population (for some values of "informed" and "rational"). Your informed and rational population in the US spends more time watching American Idol than the news. Go figure.
It's curious, actually, that 1/6 figure mentioned in the original story, and the comparison to speeding made there. Statistically speaking, although many people speed, it's about the top 1/6 who speed dangerously enough to cause a higher accident rate. Perhaps unsurprisingly, they're also among the most vocal advocates of their own driving ability, and the fact that, as they see it, they're not doing anything wrong. It's only after the accident when they've taken a life and wrecked a family that they realise the consequences of their actions.
Mass copyright theft isn't, I hope, going to have such dire consequences, but the people who think they can carry on regardless without doing long term harm are kidding themselves. The big guys are big enough to play these games with them, but the small guys in the music biz are getting hurt already.
SHARE, but dont STEAL, if someone wants to pay for Eminems CD, Eminem made the music and should get to profit from his work, however if someone refuses to pay for it and just wants to hear it, why not let them?
Because you didn't put the work in to make it, so you have no right to let them, maybe?
I love this bit from the original story the most:
Also the EFF will be running ads in Rolling Stone next month asking if enthusiasts are tired of being treated like criminals.
They're not enthusiasts. They are criminals. You have a legal system that says so, and those laws are there for a good reason. Get over it. If you don't like it, lobby for someone to hit the price-fixing monopolies who abuse the intellectual property laws, but at least aim somewhere near the right target.
I have found that OO.o falls a bit short even on simple documents. I've been using OO.o for quite a while, and although its problems are fading, they aren't gone.
Exactly. It's got a lot of potential, and many of us support it because of that, but the document interchange is still ropey. I've had problems going the other way with simple documents: single page letters with no formatting more complex than right-aligned text caused OO to crash when importing a Word.doc file.:-(
(It should be noted that this was an exceptional case; most of the problems I have are layout or more advanced features not translating quite correctly.)
It would help if there were a more effective way of reporting bugs with things like OO (and Mozilla, and...). I'd be quite happy to file a bug report where I had something useful to record, or even to look at fixing things, if the barriers to entry if you want to help these projects weren't so damned high. I'd spend a half hour writing a report. I won't spend a half-day just trying to find the tools to file it.
If I read that right, the max resolution is 1280x768. That's very poor for a monitor that size. I run my 19" CRTs at home and work at 1152x864 and 1280x960. There's not much point having all that extra screen real estate and clarity if you don't have the resolution to match, so I'd be looking for something like 1600x1200 or 2048x1536 as a native resolution on beasties like this. 1280x768 is the worst of both worlds: it's low res so you can't display much but big screen so your eyes have to track a long way.:-(
Your just too busy being sour cream to see that violence has it's place, and in most cases, there is nothing like a swift kick in the ass to get your point across.
And what point would that be? That you can "liberate" a country?
Well, except that now there are thousands of people starving or going without vital medication in Iraq, an economy that's fallen apart so vital public service workers don't get paid, people terrified to go out in the streets outside their own homes because they might get raided by bandits. It took Saddam years to demonstrate how brutally he could treat the Iraqi population, how many he could kill on a whim to serve his own ends. GWB is trying to do the same stuff on the same scale in months.
The problem with a certain type of American -- I won't say all of them, but it seems to be the majority right now -- is that they have so much national pride drummed into them, constantly reinforced by their politicians and media, that they have a warped view of the way things really are. You honestly and truly believe that you are the liberators of the world, that you helped the people of Iraq (and Afghanistan and...) and that your leaders are reducing the risk from terrorist groups by these actions, don't you?
You should try watching some of the media from around the world some time, instead of CNN or Fox News. And don't automatically dismiss it as uninformed rubbish if you disagree with it; ask why the rest of the world's media portrary things differently to your own, and when so much of the rest of the world agrees to disagree with you, which side is likely to be the one with the more biased perspective.
Ground troops are all trained these days in hand-to-hand combat.
Actually, most military training doesn't cover a whole lot about H2H fighting. Soliders are very fit, so they'd still take most average guys anyway. But their primary means of combat is using weapons, preferably ranged ones, and their training reflects that.
The military is smarter than making a soldier solely reliable on the equipment they carry.
The sargeants are certainly that smart. I'm betting that right now, quite a few well-informed sargeants are desperately hoping that their COs are too.
Well, never being one to let someone else have the last say;-), here are some points on your points on my points...
However, it is a process the military goes through for all software, so presumably it could be followed for OSS. I am not personally familiar with the process and what it entails... but it is obvious it is something the military and the OSS proponents would have to work out together.
I don't think it's an insurmountable barrier, but it's certainly a very significant barrier to entry. I'm not from the US and don't know the specifics of your DoD's policy, but if it's anything like those I have encountered elsewhere, it will be a costly and time-consuming process to have everything tested and certified properly. It might even restrict the tools you're allowed to use, or the features within a particular programming language you may use.
If you're the size of Microsoft and looking to have your kit installed on thousands of military boxes, you might consider it a justified step to get things certified at significant cost. I doubt most OSS suppliers will be in that position, though. Someone like IBM presumably has the resources, but even then, whether it's cost-effective when you're working on a support model and not generating all that money up front from licence fees is a decision only they can make.
Moving on to the support issues:
IBM provides 24/7 and onsite support for Linux and open source products with the same sort of contracts they provide for their closed-source products. RedHat likewise provides 24/7 support for Linux.
IBM was actually the notable exception I had in mind when I wrote "little or" on this one. However, it takes an organisation that size to provide for the software, and while IBM seem to like Linux at present, they aren't offering the same backing to other major OSS products AFAIK. No disrespect to Red Hat, but they aren't nearly big enough to be considered on an equal footing for the scale of deployment we're talking about here, and their financial stability and thus the future reliability of any support contract offer few guarantees. (Not that some of the big names are much better at present!)
I agree with pretty most of your comments about the training and TCO issue, so I won't say much there. I do like this bit, though:
Perhaps [Microsoft] use the same dictionary for their marketing documents that our Congress uses to understand the Constitution.
Someone somewhere should put that in their.sig.:-)
I think you summed it up very neatly here:
Ultimately TCO is something only your organization can evaluate because it is specific to your implementations and processes.
Finally, regarding the everyday benefits advocated by OSS proponents:
For instance, there is the historic incompatability of Microsoft Word with Microsoft Word. There is also the problem that the Microsoft Word filters in Microsoft Word do not work properly and have not for years.
Sure, MS screwed up when they changed the file formats for Office 97, but other than that, I'm aware of no major catastrophes. OpenOffice, on the other hand, is frequently cited as having top notch Word import/export, when my experience is that it often crashes even importing trival docs (one page letters?!) and even when it does import or export fairly successfully, there are still typically several obscure and hard to fix formatting errors in any complex documents. As I've noted here numerous times before, this sort of thing might be acceptable to geeks like us -- I use OO myself at home -- but in the professional world it's a different game.
Similar arguments apply to the vast majority of serious open source products I've ever used, notably including Linux and Mozilla. For geeks and those prepared to make an effort, they're great, and might even do better than the closed source equivalents. For a large-scale deployment in the professional workplace with Joe Average as the end user, there's quite a way to go.
I don't think you understand how OSS works. See, if Linus&Co decide to stop whatever they're doing and go live fat and happy in Silicon Valley or somewhere, 'we' still have the code. Anyone can take it and continue the development -worst case scenario, they can't call it 'Linux' anymore.
Unfortunately, as anyone who's been through the exercise of trying to pick up development of a poorly documented MLOC project can tell you, it is frequently more efficient in both time and money to start from scratch than it is to try and work out all the little things that the original guys knew but you don't, and how they interact to create the mostly working system you see before you.
You can evolve a project team, hopefully passing on most of the relevant knowledge if you have good processes in place and good people doing the work, but that's about the best you can hope for. Picking up a major OSS project that had been dropped and doing anything more than fixing a few trivial bugs would be beyond almost any group that hadn't previously been heavily involved anyway, at least within sensible time and cost constraints.
Everyone knows that the benefits of using open source products far exceeds any benefits that can be reaped by paying a whole bunch of money for closed source products and their associated licenses (which are arguably always more extensive and restrictive then open source license schemes).
Sure, just as everyone knows that open source advocates repeatedly present opinion as fact without supporting evidence.
It's hard to beat an honest man in an argument. If the open source world wants to be taken seriously, it needs to stop posting crap like the quote above and start providing compelling arguments.
In order to avoid being hypocritical here, my compelling arguments against the generalisation quoted above start with:
Little or no open source software has been through the same level of testing and validation as military spec requires.
Little or no open source software has the support behind it that can be offered by the big commercial groups in terms of 24/7 fixing of problems in their own products, closed source or otherwise.
Little or no open source software is as widely used and understood as the major closed source equivalents, which has implications for training and TCO.
Several of the biggest name open source products are demonstrably behind their nearest closed source equivalents in terms of reliability, features, performance.
A lot of the claimed benefits of open source projects aren't borne out in practice, notably including claims of compatibility with industry standard closed source products. You can bitch about whose faults this is all you like, but like it or not, it is how things stand today.
OSS is not a toddler - it's tends to be just as mature as proprietry equivilants.
So it should be covered by similar guidlines.
I agree wholeheartedly with the latter statement. Being open source does not exempt software from the usual rules and regs, nor should it impose additional requirements, certain obvious security implications notwithstanding (and since I rather doubt the DoD are about to publish the code they actually use, since they'll be under no obligation to do so anyway, that's pretty much academic). The rules and regs, if they're sensible, should cover things like reliability, security of protocols, yada yada, and these things don't pay any attention to whether or not the source for the app was visible.
Whether OSS is yet as mature as proprietary equivalents is something of a moot point. In a few cases, clearly it is. In plenty more, including several high profile, widely used applications, clearly it isn't. But as you noted, the guidelines should be similar either way.
Unless you're using a different compiler than mine, "void main() { }" compiles. there's nothing technically wrong with "void main(void) { }" either
No. It's wrong theoretically (it's not allowed by either the C or C++ standards) and in practice (on some platforms you'll shaft the linking between the run-time start-up code and your own code in main(), typically resulting in a crash).
I'll self-moderate this down since it's not really on topic, but for goodness' sake go and read page one of a good book before you start going off on one about programming languages.
Remember that ultimate in silly frivolous lawsuits when someone spilled hot coffee on herself, and made McDonald's pay for her own clumsiness.
And remember to check the actual facts of that case when considering it, since it wasn't nearly as frivolous as this (commonly presented but somewhat misleading) summary makes out.
Man, this post is so totally wrong, and convinced that it is so totally right,...
I think that's harsh.
A lot of replies have immediately cited US law on the subject, while ignoring the fact that the vast majority of the world does not subscribe to such laws, or indeed have anything like the same "fair use" provisions within their intellectual property laws. In the UK, for example, there is very little provision for so-called "fair use", notably including the absence of any automatic legal right to make copies of things for personal use. In other words, for many people reading this, several of the replies to this post were the things that were totally wrong, and yet convinced they are totally right.
Morally speaking, fair use is a dicey proposition. You want to leave freedom for genuine study and criticism of works, but where do you draw the line? As the post everyone's objecting to noted, just because people would like something to be free doesn't mean it actually is, or even should be.
To use a more common example, is letting half a dozen friends all copy a CD I bought fair use (in the English language sense, not the legal one)? If so, then if they each allow half a dozen of their own friends the same privilege, and so on, then after not very many generations at all, everyone in the country has a copy of that CD. You've used a dubious loophole to mass-copy, just as P2P networks infamously do, and deprived the copyright holder of their exclusivity.
Even if you don't like the music industry and its pricing policies, it's hard to argue the same way against a self-employed electronic artist who earns their living designing custom graphics for web sites. And yet, if you decide that fair use should include the principle above, what's to stop someone depriving that artist of his or her livelihood?
So, while obviously US law provides for more fair use than the super-parent post gave credit for, I think that post still made some very valid points. The fact that it's been slammed and modded down so much is symptomatic of how few people around here actually think about why we have intellectual property laws. They aren't the problem with the RIAA, MPAA, BSA, etc, and they never have been. The problem there is really just plain old monopoly abuse. The principle of intellectual property is sound, and it's in so many legal systems for a good reason that hasn't changed with the advent of the Internet.
The person asking this question clearly knows very well what the answer is already: you should get permission before you copy original graphics on someone else's site, and if you can't get that permission, you shouldn't use them. It's really that simple, and I fail to see how even under US law any fair use provision is remotely applicable.
If the government had a clue,they would sue or FORCE all the major software and hardware companies to open up their source code for compatibility with other Operating systems and other software.
Of course, because we all know that no R&D effort goes into those drivers. That's why performance goes up so much with good ones. And releasing the code to those good ones, thus giving away any performance-enhancing algorithms developed during the aforementioned R&D, would in no way competitively disadvantage the company concerned.
It would be beneficial to the user community if the interface specs for these cards were made available by the manufacturers, thus allowing those prepared to put in the effort to write drivers for, say, Linux. But whether to release the actual code for their own drivers, thus probably getting a massive amount of support and quick bug fixes from the geek community but also exposing them to competitive damage, is a commercial decision, and the legal system has no business making commercial decisions.
Nothing will even use the new kit to its fullest for that long.
I'm rapidly coming to the conclusion that the way to go with video cards is to buy one a year old. It's much cheaper, and typically handles all current and near future games perfectly well. The new gizmos, and speed boosts, on these cards rarely provide worthwhile bang for your buck these days.
Use the money you save to buy a faster processor, more RAM, a RAID array or something else that provides a useful improvement in performance outside of the theoretical. Or if you're buying/upgrading card + monitor together, get an extra couple of inches of screen real estate or go for a nice flat panel. The difference in price really is of that order, yet the difference in ability is irrelevant for almost all real applications.
I'm trying to figure out why no one has pre-ordered a CD containing all my slashdot posts.
I think you'd need more than a CD to contain all the posts by "Anonymous Coward" in the history of Slashdot. Of course, all the worthwhile posts by AC is a different matter...
With all due respect, thats a project management problem, not an issue with C++.
Of course; I never suggested otherwise. My point was simply that certain project management issues seem to apply to the vast majority of projects using a certain common development platform, because an awful lot of C++ developers don't actually know what the rule is, having learned the behaviour of their current platform and not the standard.
Of course if it were my choice, we'd just switch on all the warnings and upgrade to a good STL implementation. Unfortunately, it's not. I've been campaigning for some time for people to fix this issue, and made some progress, but still this problem and others like it waste incredible amounts of time. As I originally said, it's not just whether you can compile your code, it's whether the rest of your dev team can as well. The problems in this area aren't inherently due to C++, but they are part and parcel of working in the C++ world.
The job-hunter and the job-offerer simply do not have symmetrical power or luxury to walk away from the table, and it is disingenuous in the extreme to pretend that they do.
I don't think it's as disproportionate as you make out. Companies do better if they hire good people. Quick savings by employing cheaper people or firing people for stupid reasons generally cost far more than they save in the long run due to higher training costs, lower morale and other factors that all lead to reduced productivity.
As I understand it, in the US either the employer or the employee can terminate the employment without notice. That means that in an employer's market, they have more power to set rates, but in an employee's market, it's the other way around. Since these things cycle every so often, it is prudent for both sides to act reasonably when they have the advantage so as to be seen as a stronger option when they do not.
Of course, not everyone or every company does this, not by a long shot. Even so, while one side will usually have a degree of advantage at any given time, it will even out after a while. What we're seeing in the programming industry right now is the balancing of the absurd overpayment pretty underpowered employees came to expect in the late '90s. So it goes.
I don't think the track record of Microsoft products really helps the case that closed source is more secure...
Sure, but their track record on many other things doesn't help closed source, either. Look at many other vendors, Apple for example, and they're much better; sometimes they've been known to publish patches for security flaws faster than the open source community.
VC 6 can disable this behavior, and I don't see how it affects MSs libraries (unless the STL that ships with them uses that construct? It's not even MS's STL, but okay...)
Large amounts of MS source code wouldn't compile with the option switched on, allegedly including libraries such as the Dinkumware STL implementation that shipped with VC6 where the library code is effectively supplied as source.
If people in your project using it bother you, then disable it. It's a syntatical issue, one of coding style, not one of efficency.
Yes; in fact, at my request as the only person currently using VS.NET on the project, the master makefiles were adjusted so that when building with VC7 the scoping option is set to standard compliant. However, and this was my original point, most people on the project haven't bothered to, or can't (because of the library issue), set this option with VC6, and thus they check in "clean" code that doesn't build on any other platform we support.
No, i == 0, just as it did immediately after you initialised it. The i changed in the for loop is a different i in a different scope, and has no bearing outside that loop. But I'm sure you knew that, or you wouldn't have posted the code sample. At least most compilers will warn about the hiding of the outer-scope i here, though. The problem with the non-standard scoping generally is that code can compile cleanly on VC++ 6, get checked in, and promptly break the overnight builds on 15 other standard-conforming platforms.:-(
Not to mention that the non-standard behavior (which pre-dates the standard that said it's wrong) is well known
That's a cop out. The draft standard was indicating the final behaviour way before VC++ 6 was out, and Microsoft knew damn well they weren't going to follow it. The behaviour was left as it was by default because changing it would break Microsoft's library implementations, which is also the reason why the options you mention were useless with that particular compiler and its supplied libraries.
BTW, we compile on around 15 different platforms at work, from various Windows and Mac through to various flavours of UNIX. VC++ 6 is the only one, even including the UNIXy ones several years older, that has this problem, and the only one without a useful switch to disable it.
If people like you succeed in your apparent wish to get rid of them, you'll find out the hard way. The promoters might not be worth what they charge at present, but pretending they don't do anything is just silly.
Yep, no-one likes those cookie cutter bands and their cheap, cloned pop from yesteryear. If the record industry just produced new, original material like all these Indie bands, they'd do much better. That's why Britney, Kylie et al. get download figures in the millions over P2P, while most of us have never even heard of the random bands a few people cite in each thread like this one, and often don't like what we do encounter enough to either download it or go out and buy it.
"Britney is just a cloned pop princess, if I didn't download her new album I wouldn't go out and buy it either so I'm not costing them anything!" And yet still the downloads go on, and on, and on. The hypocrisy around here is staggering.
Jeez, who the hell are you? How many times are you going to post the same exaggerated or ill-informed material in this thread? And, most scarily of all, how come you keep getting modded up so much? That must tell us a lot about the typical /. reader looking at this story. :-(
Oh yay, another idealistic "everything in the world should be free" post that hasn't thought about the consequences of what it advocates, preferring to take cheap shots at non-representative straw men. Let's see...
Bull. Most of these people agree that it's morally wrong, and know that they should be paying for it or not having it at all. They do it because they know they can (probably) get away with it.
Since most of your population decided to vote for the guys in the two big parties who put on a snazzy show, rather than investing a handful of hours doing their homework and voting for someone who might actually act in the best interests of the population. Until you do that, you're going to get a lot of rich people in government who get richer, and the stand-up guys who put moral integrity ahead of their wallets will be in a small, cherished minority.
The problem with democracy is that in its purest form, it only works in the presence of an informed and rational population (for some values of "informed" and "rational"). Your informed and rational population in the US spends more time watching American Idol than the news. Go figure.
It's curious, actually, that 1/6 figure mentioned in the original story, and the comparison to speeding made there. Statistically speaking, although many people speed, it's about the top 1/6 who speed dangerously enough to cause a higher accident rate. Perhaps unsurprisingly, they're also among the most vocal advocates of their own driving ability, and the fact that, as they see it, they're not doing anything wrong. It's only after the accident when they've taken a life and wrecked a family that they realise the consequences of their actions.
Mass copyright theft isn't, I hope, going to have such dire consequences, but the people who think they can carry on regardless without doing long term harm are kidding themselves. The big guys are big enough to play these games with them, but the small guys in the music biz are getting hurt already.
Because you didn't put the work in to make it, so you have no right to let them, maybe?
I love this bit from the original story the most:
They're not enthusiasts. They are criminals. You have a legal system that says so, and those laws are there for a good reason. Get over it. If you don't like it, lobby for someone to hit the price-fixing monopolies who abuse the intellectual property laws, but at least aim somewhere near the right target.
Um... Would those be paying customers? ;-)
Exactly. It's got a lot of potential, and many of us support it because of that, but the document interchange is still ropey. I've had problems going the other way with simple documents: single page letters with no formatting more complex than right-aligned text caused OO to crash when importing a Word .doc file. :-(
(It should be noted that this was an exceptional case; most of the problems I have are layout or more advanced features not translating quite correctly.)
It would help if there were a more effective way of reporting bugs with things like OO (and Mozilla, and...). I'd be quite happy to file a bug report where I had something useful to record, or even to look at fixing things, if the barriers to entry if you want to help these projects weren't so damned high. I'd spend a half hour writing a report. I won't spend a half-day just trying to find the tools to file it.
...I suspect so
If I read that right, the max resolution is 1280x768. That's very poor for a monitor that size. I run my 19" CRTs at home and work at 1152x864 and 1280x960. There's not much point having all that extra screen real estate and clarity if you don't have the resolution to match, so I'd be looking for something like 1600x1200 or 2048x1536 as a native resolution on beasties like this. 1280x768 is the worst of both worlds: it's low res so you can't display much but big screen so your eyes have to track a long way. :-(
And what point would that be? That you can "liberate" a country?
Well, except that now there are thousands of people starving or going without vital medication in Iraq, an economy that's fallen apart so vital public service workers don't get paid, people terrified to go out in the streets outside their own homes because they might get raided by bandits. It took Saddam years to demonstrate how brutally he could treat the Iraqi population, how many he could kill on a whim to serve his own ends. GWB is trying to do the same stuff on the same scale in months.
The problem with a certain type of American -- I won't say all of them, but it seems to be the majority right now -- is that they have so much national pride drummed into them, constantly reinforced by their politicians and media, that they have a warped view of the way things really are. You honestly and truly believe that you are the liberators of the world, that you helped the people of Iraq (and Afghanistan and...) and that your leaders are reducing the risk from terrorist groups by these actions, don't you?
You should try watching some of the media from around the world some time, instead of CNN or Fox News. And don't automatically dismiss it as uninformed rubbish if you disagree with it; ask why the rest of the world's media portrary things differently to your own, and when so much of the rest of the world agrees to disagree with you, which side is likely to be the one with the more biased perspective.
Actually, most military training doesn't cover a whole lot about H2H fighting. Soliders are very fit, so they'd still take most average guys anyway. But their primary means of combat is using weapons, preferably ranged ones, and their training reflects that.
The sargeants are certainly that smart. I'm betting that right now, quite a few well-informed sargeants are desperately hoping that their COs are too.
Well, never being one to let someone else have the last say ;-), here are some points on your points on my points...
I don't think it's an insurmountable barrier, but it's certainly a very significant barrier to entry. I'm not from the US and don't know the specifics of your DoD's policy, but if it's anything like those I have encountered elsewhere, it will be a costly and time-consuming process to have everything tested and certified properly. It might even restrict the tools you're allowed to use, or the features within a particular programming language you may use.
If you're the size of Microsoft and looking to have your kit installed on thousands of military boxes, you might consider it a justified step to get things certified at significant cost. I doubt most OSS suppliers will be in that position, though. Someone like IBM presumably has the resources, but even then, whether it's cost-effective when you're working on a support model and not generating all that money up front from licence fees is a decision only they can make.
Moving on to the support issues:
IBM was actually the notable exception I had in mind when I wrote "little or" on this one. However, it takes an organisation that size to provide for the software, and while IBM seem to like Linux at present, they aren't offering the same backing to other major OSS products AFAIK. No disrespect to Red Hat, but they aren't nearly big enough to be considered on an equal footing for the scale of deployment we're talking about here, and their financial stability and thus the future reliability of any support contract offer few guarantees. (Not that some of the big names are much better at present!)
I agree with pretty most of your comments about the training and TCO issue, so I won't say much there. I do like this bit, though:
Someone somewhere should put that in their .sig. :-)
I think you summed it up very neatly here:
Finally, regarding the everyday benefits advocated by OSS proponents:
Sure, MS screwed up when they changed the file formats for Office 97, but other than that, I'm aware of no major catastrophes. OpenOffice, on the other hand, is frequently cited as having top notch Word import/export, when my experience is that it often crashes even importing trival docs (one page letters?!) and even when it does import or export fairly successfully, there are still typically several obscure and hard to fix formatting errors in any complex documents. As I've noted here numerous times before, this sort of thing might be acceptable to geeks like us -- I use OO myself at home -- but in the professional world it's a different game.
Similar arguments apply to the vast majority of serious open source products I've ever used, notably including Linux and Mozilla. For geeks and those prepared to make an effort, they're great, and might even do better than the closed source equivalents. For a large-scale deployment in the professional workplace with Joe Average as the end user, there's quite a way to go.
Unfortunately, as anyone who's been through the exercise of trying to pick up development of a poorly documented MLOC project can tell you, it is frequently more efficient in both time and money to start from scratch than it is to try and work out all the little things that the original guys knew but you don't, and how they interact to create the mostly working system you see before you.
You can evolve a project team, hopefully passing on most of the relevant knowledge if you have good processes in place and good people doing the work, but that's about the best you can hope for. Picking up a major OSS project that had been dropped and doing anything more than fixing a few trivial bugs would be beyond almost any group that hadn't previously been heavily involved anyway, at least within sensible time and cost constraints.
Sure, just as everyone knows that open source advocates repeatedly present opinion as fact without supporting evidence.
It's hard to beat an honest man in an argument. If the open source world wants to be taken seriously, it needs to stop posting crap like the quote above and start providing compelling arguments.
In order to avoid being hypocritical here, my compelling arguments against the generalisation quoted above start with:
I agree wholeheartedly with the latter statement. Being open source does not exempt software from the usual rules and regs, nor should it impose additional requirements, certain obvious security implications notwithstanding (and since I rather doubt the DoD are about to publish the code they actually use, since they'll be under no obligation to do so anyway, that's pretty much academic). The rules and regs, if they're sensible, should cover things like reliability, security of protocols, yada yada, and these things don't pay any attention to whether or not the source for the app was visible.
Whether OSS is yet as mature as proprietary equivalents is something of a moot point. In a few cases, clearly it is. In plenty more, including several high profile, widely used applications, clearly it isn't. But as you noted, the guidelines should be similar either way.
No. It's wrong theoretically (it's not allowed by either the C or C++ standards) and in practice (on some platforms you'll shaft the linking between the run-time start-up code and your own code in main(), typically resulting in a crash).
I'll self-moderate this down since it's not really on topic, but for goodness' sake go and read page one of a good book before you start going off on one about programming languages.
And remember to check the actual facts of that case when considering it, since it wasn't nearly as frivolous as this (commonly presented but somewhat misleading) summary makes out.
I think that's harsh.
A lot of replies have immediately cited US law on the subject, while ignoring the fact that the vast majority of the world does not subscribe to such laws, or indeed have anything like the same "fair use" provisions within their intellectual property laws. In the UK, for example, there is very little provision for so-called "fair use", notably including the absence of any automatic legal right to make copies of things for personal use. In other words, for many people reading this, several of the replies to this post were the things that were totally wrong, and yet convinced they are totally right.
Morally speaking, fair use is a dicey proposition. You want to leave freedom for genuine study and criticism of works, but where do you draw the line? As the post everyone's objecting to noted, just because people would like something to be free doesn't mean it actually is, or even should be.
To use a more common example, is letting half a dozen friends all copy a CD I bought fair use (in the English language sense, not the legal one)? If so, then if they each allow half a dozen of their own friends the same privilege, and so on, then after not very many generations at all, everyone in the country has a copy of that CD. You've used a dubious loophole to mass-copy, just as P2P networks infamously do, and deprived the copyright holder of their exclusivity.
Even if you don't like the music industry and its pricing policies, it's hard to argue the same way against a self-employed electronic artist who earns their living designing custom graphics for web sites. And yet, if you decide that fair use should include the principle above, what's to stop someone depriving that artist of his or her livelihood?
So, while obviously US law provides for more fair use than the super-parent post gave credit for, I think that post still made some very valid points. The fact that it's been slammed and modded down so much is symptomatic of how few people around here actually think about why we have intellectual property laws. They aren't the problem with the RIAA, MPAA, BSA, etc, and they never have been. The problem there is really just plain old monopoly abuse. The principle of intellectual property is sound, and it's in so many legal systems for a good reason that hasn't changed with the advent of the Internet.
The person asking this question clearly knows very well what the answer is already: you should get permission before you copy original graphics on someone else's site, and if you can't get that permission, you shouldn't use them. It's really that simple, and I fail to see how even under US law any fair use provision is remotely applicable.
Of course, because we all know that no R&D effort goes into those drivers. That's why performance goes up so much with good ones. And releasing the code to those good ones, thus giving away any performance-enhancing algorithms developed during the aforementioned R&D, would in no way competitively disadvantage the company concerned.
It would be beneficial to the user community if the interface specs for these cards were made available by the manufacturers, thus allowing those prepared to put in the effort to write drivers for, say, Linux. But whether to release the actual code for their own drivers, thus probably getting a massive amount of support and quick bug fixes from the geek community but also exposing them to competitive damage, is a commercial decision, and the legal system has no business making commercial decisions.
Nothing will even use the new kit to its fullest for that long.
I'm rapidly coming to the conclusion that the way to go with video cards is to buy one a year old. It's much cheaper, and typically handles all current and near future games perfectly well. The new gizmos, and speed boosts, on these cards rarely provide worthwhile bang for your buck these days.
Use the money you save to buy a faster processor, more RAM, a RAID array or something else that provides a useful improvement in performance outside of the theoretical. Or if you're buying/upgrading card + monitor together, get an extra couple of inches of screen real estate or go for a nice flat panel. The difference in price really is of that order, yet the difference in ability is irrelevant for almost all real applications.
Quoth the AC:
I think you'd need more than a CD to contain all the posts by "Anonymous Coward" in the history of Slashdot. Of course, all the worthwhile posts by AC is a different matter...
Of course; I never suggested otherwise. My point was simply that certain project management issues seem to apply to the vast majority of projects using a certain common development platform, because an awful lot of C++ developers don't actually know what the rule is, having learned the behaviour of their current platform and not the standard.
Of course if it were my choice, we'd just switch on all the warnings and upgrade to a good STL implementation. Unfortunately, it's not. I've been campaigning for some time for people to fix this issue, and made some progress, but still this problem and others like it waste incredible amounts of time. As I originally said, it's not just whether you can compile your code, it's whether the rest of your dev team can as well. The problems in this area aren't inherently due to C++, but they are part and parcel of working in the C++ world.
I don't think it's as disproportionate as you make out. Companies do better if they hire good people. Quick savings by employing cheaper people or firing people for stupid reasons generally cost far more than they save in the long run due to higher training costs, lower morale and other factors that all lead to reduced productivity.
As I understand it, in the US either the employer or the employee can terminate the employment without notice. That means that in an employer's market, they have more power to set rates, but in an employee's market, it's the other way around. Since these things cycle every so often, it is prudent for both sides to act reasonably when they have the advantage so as to be seen as a stronger option when they do not.
Of course, not everyone or every company does this, not by a long shot. Even so, while one side will usually have a degree of advantage at any given time, it will even out after a while. What we're seeing in the programming industry right now is the balancing of the absurd overpayment pretty underpowered employees came to expect in the late '90s. So it goes.
Sure, but their track record on many other things doesn't help closed source, either. Look at many other vendors, Apple for example, and they're much better; sometimes they've been known to publish patches for security flaws faster than the open source community.
VC++ 6 will compile the following quite happily. Not a lot else will.
Large amounts of MS source code wouldn't compile with the option switched on, allegedly including libraries such as the Dinkumware STL implementation that shipped with VC6 where the library code is effectively supplied as source.
Yes; in fact, at my request as the only person currently using VS.NET on the project, the master makefiles were adjusted so that when building with VC7 the scoping option is set to standard compliant. However, and this was my original point, most people on the project haven't bothered to, or can't (because of the library issue), set this option with VC6, and thus they check in "clean" code that doesn't build on any other platform we support.
No, i == 0, just as it did immediately after you initialised it. The i changed in the for loop is a different i in a different scope, and has no bearing outside that loop. But I'm sure you knew that, or you wouldn't have posted the code sample. At least most compilers will warn about the hiding of the outer-scope i here, though. The problem with the non-standard scoping generally is that code can compile cleanly on VC++ 6, get checked in, and promptly break the overnight builds on 15 other standard-conforming platforms. :-(
That's a cop out. The draft standard was indicating the final behaviour way before VC++ 6 was out, and Microsoft knew damn well they weren't going to follow it. The behaviour was left as it was by default because changing it would break Microsoft's library implementations, which is also the reason why the options you mention were useless with that particular compiler and its supplied libraries.
BTW, we compile on around 15 different platforms at work, from various Windows and Mac through to various flavours of UNIX. VC++ 6 is the only one, even including the UNIXy ones several years older, that has this problem, and the only one without a useful switch to disable it.