Once again, The Register screws up and misrepresents the truth as some sensationalistic trash. Why am I not surprised? They can't just sit back and admit they made a mistake putting up that article and try to blame it on some other tech site. And they go on to try and demonize Miguel de Icaza a bit more at the bottom! Come on guys, what ever happened to fact checking and journalistic integrity? You wrote the article, you didn't check your facts, you were in the wrong. Admit it.
Hah. The day The Register posts an honest retraction and admits they made a mistake without trying to weasel out of it is the day satan drives to work in a snowplow.
I honestly can't believe the amount of crap Miguel gets, based on The Register's blatant misreporting of the truth. It's time people stopped going after leaders like Miguel and after the people who profiteer from turning the community on itself.
'Your problems are two small and specialized to realize any significant advantages of OOP.'
The kinds of problems you're trying to solve aren't problems object oriented designs are good at. While OO is a natural way of dealing with some concepts (for example, GUI concepts), its real power doesn't come from this kind of thing. It tends to be best for designing very large systems that are complex and may change significantly over their life-time. The kinds of problems you mention (finite difference solutions to differential equations, finite-volume computational fluid dynamics, iterative solutions to non-linear equations, Monte-Carlo simulation of radiative heat transfer, etc.) aren't really the kind of software engineering projects that require carefull design. They may be hard problems, but they're also understood and well studied problems.
Take a step away from the scientific problems and consider something like an inventory management system for a pharmacy chain that needs to be solid and accurate, while at the same time collecting data and producing pretty reports for whatever statistic the company directors think is important on that particular day of the week. A slightly different kettle of fish, no?
Another often stated advantage of object oriented programming is component reuse. It seems that most developers don't really try, but for a little bit more effort and thought, object oriented techniques make writing highly reusable software components easy.
For my own personal projects, I have a set of classes that do all sorts of things for me, from a log file manager to a small LALR(1) parser which I have a generic config file parser built using (all in C++, no need for external programs). It's a pain in the ass to write the code originally, but it was all well worth the effort.:)
These are not members of the commitee as described in the settlement. They are corporate officers.
Microsoft has wised up, if you look at companies holding monopoly positions in other industries they spend a lot of effort trying to stay clear of anti-trust statues, and more importantly make it look like they're trying to stay clear of them. If you're a big company and you look like you're trying to stay within the confines of the law to the best of your ability, if something does happen that isn't completely legal things aren't nearly as bad as if you go around openly flauting anti-trust law (like Microsoft did), and you're likely to get away with a quiet conversation and an amicable agreement with the DoJ.
It seems that Microsoft has finally figured out that as big as they are, they can't afford to piss off the feds (sure, they got out of this one, but what happens next time?), and appear to be going to a lot of effort to show to the world they've changed and are willing to fully comply both with the proposed settlement and anti-trust law.
Finally, a bit of legal savvy from the corporate behemoth.
Factoring isn't a hard problem at all; it's
RSA isn't secure because it's tough to crack, compared to other problem cracking RSA is fairly trivial, RSA is secure because it's really easy to compute. You can compute RSA in O(log n) where n is the size of the keyspace.
It's not that RSA is hard to crack, it's just that it's exponentially easier to compute so you just use really, really long keys (can you imagine using a 4k bit key for Rijndael or Blowfish?).
So I'm trying to startup a small software company. The product is, IMHO, fairly cool and extremely usefull. My research tells me there doesn't appear to be anyone else selling anything remotely similar to this. I am taking a large personal economic risk in this venture.
In RMS' world, however, I'm evil. I'm trying to obtain power over my client-base by selling them proprietary software. I should license my software under the GPL and give it away for free! Hrmmm. I have no power over my clients, this is BS! Is it any wonder this is coming from a person who has never had to do a hard day's work in his life?
Say I approach a customer and I sell them my software. What has happened? They've willingly entered an arrangement where I give them a software of value and benefit to them, and they give me money and agree to some terms. Have I decreased their freedom? No! Freedoms are alienable, they chose to give away some freedom in exchange for the benefit the software gives them. And has their freedom decreased with respect to being able to change my program, or examine its source-code? No, had they not entered into the contract, they would still not be able to change my program or examine its source-code. I have not taken anything away from them (apart for money, which is an exchange they believe is a fair one).
Say I approach a customer and they think my software isn't worth the price I ask, or they think the license is too restrictive. They don't like the agreement and we go away. I have not made a sale and they have not bought any software. Has their freedom decreased? They were not able to see or use my software before, and they're not able to see and use it now. Where's the decrease in freedom?
So, Mr. Stallman, how am I evil for selling software which is a net benefit (in their opinion!) to my willing clients?
So let's look at the other situation. Say I start my company at great personal financial risk to me and we create this software, but along you come and force us to use the GPL. Suddenly my revenue stream has been for all intents and purposes destroyed and I am bankrupt and destitute after spending years of my life and thousands of dollars of my money working on a risky venture with no reward at the end. Who has the freedom and power in that arrangement?
So let's say in 3 or 4 years I'm doing well, I've sold my software to half of the clients in the target industry, and it's giving them such a competitive advantage that their competitors are coming to me and buying my software now. Am I exerting some sort of evil power? Sorry, try again. Meet what is simply a competitive industry. My software gives their competitors an advantage which is putting their businesses at risk, so they must buy my software or find other ways of restoring competitive advantages. In some respects yes, I now have power over them, but they have the freedom to try other things, or write their own software that does the same job as mine so they still have their freedom. What is the alternative? That we forever restrict what the smarter and more innovative companies and people do to the level of the lowest common demoninator so that the weakest and most ineffectual aren't put at some sort of disadvantage? Where's the power and freedom in that arrangement?
Like it or not, Mr. Stallman, this is a free society and a free market. Success isn't a right, you have to prove your worth to society.
All prodigy needs to do to get out of this is just stall for a year, maybe two. BT won't last that long.
BT are nearly bankrupt with billions of pounds in debt. How are they trying to deal with this?
They sold off their overseas investments, for one. Their profitable overseas investments (as opposed to their highly unprofitable UK phone service). The only thing they've got going for them right now is BT Wireless which brings in huge revenues, primarily because the UK is entirely mobile-phone crazy. Sending text-messages seems to be the national obsession. Of course, they're spinning that off into a seperate company.
The local loop is bleeding them to death. Is this similar to the cut-throat competition that the North American telecoms have come up against over the past few years? Not likely. BT still charge per minute for local calls, as a rule. The competition is so meek, they're hardly noticable.
What's the problem then? Incompetance. Both managerial and technical incompetance on a grand scale in every department, at every level. Would anyone be sad to see them go? They've spent years trying to enforce the status quo and crush new technology to maintain their monopoly (you thought Microsoft was bad? Hah!), and bear a significant responsability for the slow uptake of the internet in the UK. No, not many people would be sad to see them go.
It all comes back to this, though. They're so desperate for cash right now, they'll try anything.
Microsoft has demonstrated that they are interested in one thing only, short term Profit.
Yes. Microsoft are interested in profit. They are a company. Call me crazy and all, but isn't profit is something that companies are usually interested in?
Stop evangelising Sony and Nintendo. Neither of them are out for goals any more altruistic than Microsoft, the quest for the allmighty dollar. You think the CEO of Sony woke up one day and thought 'I think I'll make the world a better place for gamers'? That's just completely laughable.
Sony of all people too! Sony are just as bad as Microsoft (for example, see the way they bullied retailers around over Bleem). Get a clue or one day you're going to wake up and find yourself being screwed over left, right and centre.
Marketing ploy or genuine interest in what is best for the internet?
Almost. Genuine interest in what is best for Microsoft's shareholders.
That's exactly the problem. Upper managements aren't techie and don't care about the technical merits, which so many of the Linux community seem to have so much trouble getting beyond.
If Microsoft's people can walk in and convince upper management that their products can do the job cheaper than the Linux alternative, 9 times out of 10 they'll get the contract. Anything else would be foolish.
Don't go on about how you don't have to pay license fees for the OS and how this makes Linux a vastly cheaper alternative. Most people realise the fact that OS licenses, in the real world, are a minor factor in the total cost of ownership compared to maintainance, management and training.
It's time the community got together and came up with some significant financial and economic advantages associated with Linux and get beyond the 'free as $0' argument. Then Microsoft will have something to worry about.
There's a reason why MS takes so long to get security patches out.
A previous posted mentioned Apple with the iTunes installer nuking the hdd, and how they got a patch out quickly, implying that if Apple can do it, MS should be able to too... well, things aren't quite so black and white:
The problem in the iTunes installer was a small typo in a bash script. The behaviour of the installer script is so simple that it's fairly obvious what effects the change would make. Easy patch. If only all bugs were so easy to fix.
A relatively short while ago some info regarding few vulnerabilities in Exchange (I think it was Exchange...) were released to the public@large by some third party. MS rushes out patches and lo and behold! A fairly significant proportion of users reported serious issues after installing the patch - it was messing up other parts of the system. MS rushed out a second version of the patch, which again wasn't satisfactory. It took 3 iterations of the patch to get something that seemed to work successfully on almost every machine it was installed on!
What went wrong? The Law of Unintended Consequences reared its ugly head.
If you look at the security holes that poke up in MS stuff, they often look like they result from some complex interaction that Microsoft's developers never expected. These interactions are partially the fault of the way they seem to design their systems and partially due to the vast number of configurations they end up operating in. Unfortunately, when you're fixing a bug that's resulting from some complex and probably subtle interaction between different components of your application (or even worse: another application) then your change could have drastic and far-reaching effects.
To help mitigate this problem they do extremely extensive regression testing. Typically, before a patch gets posted it's run through some of the weirdest and craziest system configurations they can think of to make sure it doesn't break anything, and if it does they figure out why and fix it. This takes time. Lots of time!
How true. Nowdays, if someone mentions the word computer I conjure up images of either some big box humming away somewhere with a UNIX prompt, or a Windows desktop machine.
Am I the only person who thinks this is kinda scarey?
In the machine room, OpenVMS is 'technically' alive, but I don't hear stories of massive new OpenVMS installations, and the VAX line is on its last legs. You've still got a few mainframe operating systems still around (MVS, etc...), but IBM seems to be moving in the direction of partitioned linux installations.
On the desktop IBM's managerial stupidity killed OS/2, Apple has made MacOS into just a BSD shell...for whatever reason, BeOS is dead for whatever reason (but it was pretty UNIXy anyway).
Whatever happened to all the diversity? I don't think you could blame that _all_ on Microsoft - they're the sole surviving company hawking a non-UNIX operating system.
Err, yes, NT might not be open-sourced, but it's
actually pretty well documented. Remember one of the most important laws of software engineering: for any project of reasonable complexity, poorly documented source-code isn't a substantially more
usefull than just a compiled image. If I'm not mistaken, NT5's VMM model is pretty complex.
Last I checked it relies heavily on the concept of
working sets and its paging algorithm relies not
only on statistics about memory accesses, but also
about the processes that own pages (it's more
likely to page out memory for a process that isn't
likely to grab CPU time again for a while than one
that's currently running, or will probably be running soon), proactively tries to clear pages out of memory to prevent thrashing and, if it detects thashing, auto-tunes various system and process parameters to try get everything back under control. Does all this actually work? Well, YMMV.:)
Remember, Linux can't just blow past Win9x on the desktop nowdays, it's going to have to compete with the NT 5 system executive on the desktop. You know, the windows kernel that actually...well...works, not that POS kludge.
The tech front may be fairly mute
these days, whatever the cause, but the competition is tougher and more intense than ever;
hopefully once this disagreement is resolved
Linux's VMM will be better, shinier and faster. Ain't competition grand?
For those who are interested in understanding what
this discussion is all about, and what the all the
terms mean (you know, all that unimportant stuff),
Tannenbaum has a fairly good introduction to VMM
in 'Modern Operating Systems', and the 2nd edition
includes case studies of both Unix&Linux and Win2K
(I'm not sure which version of Linux he's looking at though); I'd be shocked if any decent computer bookstore or university library didn't have at least one copy of this. It's a fairly good read for anyone interested in the mystical world of ring 0 (eww...x86ism), and is the kind of thing that's usefull to have read before getting into a discussion of vmm and other complex kernel issues.
After September 11th, while every other media source was running the usual watered down stories
presenting simplistic views of the situation (everything from the geopolitics of the situation
to any possible bioterror threat), the Economist has been consistently running articles
examining the situation in depth [economist.com]
and not trying to present its readers with some beautified and doctored picture of what's really going on to give people a warm fuzzy fealing inside or capitalise on the shock-value *cough*CNN*cough*.
And you know what? It's nice having a publication which doesn't treat you like an idiot or a child. Or one which isn't 90% adverts. Or only tells you what you want to hear.
You can bash Microsoft, but you don't bash
The Economist.:)
The Economist happens to be one of the most trusted publications around; they have a well-deserved repuation for being right. You can pretty much guarentee that any article by them is well researched and as accurate as they come.
To be brutally frank,
the kind of articles you find in the Economist
[economist.com]
are far beyond what you typically read on/. in terms of complexity, subtlety and breadth of vision, without the usual journalistic bias and bullsh*t you find in a lot of other places - particularly online.
What I find most ironic about the Economist is
they usually do a lot better job at picking the
important (tech) stuff [economist.com] than most of the tech publications; best of all - they've usually picked it out months before it's mostly ignored by the likes of Wired.
If more people read the Economist, the world would
be a better place.:o)
Software often gets compared to other products and analogies drawn - these analogies are often flawed and really make trying to figure out WTF's going on tough. They are flawed because they compare software to the two other primary forms of commerce that occurs in modern society.
Sales of products
Sales of services
A product is a physical entity, it is consumed and used; while the CD software typically comes on is a physical entity, it is just a medium: by destroying the CD you don't destroy the software, just one physical representation of it. So software can't be a physical product (and isn't).
A service is something that is done for you by someone else, it expires. Software does not expire, and it is not something someone does for you (ASPs would fall into this category, however). Software does not expire, it is something you use yourself (with the assistance of a computer) so software can't be a service (and isn't).
Software is the rarely discussed third type of entity, software is information. It isn't a product and it isn't a service, it shouldn't be treated as such.
Information is intangible, it can't really be sold or bought and this is the stance a lot of people like to take. This is perfectly correct but like everything else, its use can be restricted and protected; enter copyright law. Copyright law implies that you don't have the right to use information (whether it be music, art, pure information or software) without the creators permission (or whomever the creator has given the right to). When you 'buy' software at the store, you buy a box, some pieces of paper and a CD medium of the information...and a license. The license is important bit, though; it's the legal agreement that gives you the right to use the information presented on the CD. You don't have to agree to this, but as it says in the GPL, nothing else gives you the right to use the software; if you don't like it, too bad. A previous posted noted that installing/running software involves it be copied to the hdd and ram, which is restricted by copyright laws.
The great thing about the law is it gives you a whole slew of legal protections, unfortunately with the exception of a very few rights (like right to not be imprisoned, killed, etc...), these rights are alienable - you can sign these rights away in a contract, and it can be legally binding.
This, of course, is where EULAs get their teeth.
Jump to the real-world. There are further legal protections: there are things you are not legally allowed to include in copyright licenses as opposed to normal contracts since they're not signed, etc... (hence side-stepping the whole alienable rights and copyright protection issue) which is usefull somewhat, but the story doesn't end there. If you have a contract (or license agreement) which has sections which are found to be illegal, the entire contract (or license) is null & void - not only do you not have the right to resell the license onto someone else, you don't have the right to use the software product at all, except where the contract/license has provisions which explicitly deal with the situation where some of the license is found to be illegal (in which case what the contract/license says goes).
Of course, there's no such thing as a perfect contract (and by extension, license), and you can always get around them with enough subtlety of thought (and a good lawyer).
So I better not hear anymore software/service or software/car analogies.:)
Congratulations, you've discovered the concept of a long CPU pipeline. No doubt as almost everyone who reads/. knows, a longer pipeline means you can go faster since at each stage you have to do less. The side-effect is longer latencies, as you have noticed. Of course, while each instruction is taking many, many clock cycles to complete, the chip is doing upwards of 20 instructions at once.
This is indicated by the fact the P4 2ghz is slightly faster than a P3 667.;)
It's all a tradeoff. On one hand, having a deep pipeline is good since it lets you turn up the clock-speed, but you hurt whenever you mispredict a jump. On the other hand, having a lot of short pipelines is good because you can get a lot done and don't have to worry about jump mispredits - except out-of-band processing gets a lot harder since you have to do a lot of reordering. Pick a route, it bites you in the end.
Don't expect Intel to stop the MHz (or is it GHz now?) run anytime soon. The marketing gods have spoken.
Of course, if you look at the technical aspects you can see where Intel want to go with the P4 core. The chip includes pipeline stages where it simply sits around waiting for signals to propagate across the chip. Given the speed of an electrical signal on a CPU, and the size of the die currently it would seem Intel are aiming at hitting 30ghz before the end of its life. I think AMD probably needs to rethink their strategy and get something out that can compete mhz per mhz with the P4 if they want to get widespread adoption.
Once again, The Register screws up and misrepresents the truth as some sensationalistic trash. Why am I not surprised? They can't just sit back and admit they made a mistake putting up that article and try to blame it on some other tech site. And they go on to try and demonize Miguel de Icaza a bit more at the bottom! Come on guys, what ever happened to fact checking and journalistic integrity? You wrote the article, you didn't check your facts, you were in the wrong. Admit it.
Hah. The day The Register posts an honest retraction and admits they made a mistake without trying to weasel out of it is the day satan drives to work in a snowplow.
I honestly can't believe the amount of crap Miguel gets, based on The Register's blatant misreporting of the truth. It's time people stopped going after leaders like Miguel and after the people who profiteer from turning the community on itself.
All opinions expressed are opinions. Duh.
The kinds of problems you're trying to solve aren't problems object oriented designs are good at. While OO is a natural way of dealing with some concepts (for example, GUI concepts), its real power doesn't come from this kind of thing. It tends to be best for designing very large systems that are complex and may change significantly over their life-time. The kinds of problems you mention (finite difference solutions to differential equations, finite-volume computational fluid dynamics, iterative solutions to non-linear equations, Monte-Carlo simulation of radiative heat transfer, etc.) aren't really the kind of software engineering projects that require carefull design. They may be hard problems, but they're also understood and well studied problems.
Take a step away from the scientific problems and consider something like an inventory management system for a pharmacy chain that needs to be solid and accurate, while at the same time collecting data and producing pretty reports for whatever statistic the company directors think is important on that particular day of the week. A slightly different kettle of fish, no?
Another often stated advantage of object oriented programming is component reuse. It seems that most developers don't really try, but for a little bit more effort and thought, object oriented techniques make writing highly reusable software components easy.
For my own personal projects, I have a set of classes that do all sorts of things for me, from a log file manager to a small LALR(1) parser which I have a generic config file parser built using (all in C++, no need for external programs). It's a pain in the ass to write the code originally, but it was all well worth the effort. :)
Microsoft has wised up, if you look at companies holding monopoly positions in other industries they spend a lot of effort trying to stay clear of anti-trust statues, and more importantly make it look like they're trying to stay clear of them. If you're a big company and you look like you're trying to stay within the confines of the law to the best of your ability, if something does happen that isn't completely legal things aren't nearly as bad as if you go around openly flauting anti-trust law (like Microsoft did), and you're likely to get away with a quiet conversation and an amicable agreement with the DoJ.
It seems that Microsoft has finally figured out that as big as they are, they can't afford to piss off the feds (sure, they got out of this one, but what happens next time?), and appear to be going to a lot of effort to show to the world they've changed and are willing to fully comply both with the proposed settlement and anti-trust law.
Finally, a bit of legal savvy from the corporate behemoth.
It's not that RSA is hard to crack, it's just that it's exponentially easier to compute so you just use really, really long keys (can you imagine using a 4k bit key for Rijndael or Blowfish?).
In RMS' world, however, I'm evil. I'm trying to obtain power over my client-base by selling them proprietary software. I should license my software under the GPL and give it away for free! Hrmmm. I have no power over my clients, this is BS! Is it any wonder this is coming from a person who has never had to do a hard day's work in his life?
Say I approach a customer and I sell them my software. What has happened? They've willingly entered an arrangement where I give them a software of value and benefit to them, and they give me money and agree to some terms. Have I decreased their freedom? No! Freedoms are alienable, they chose to give away some freedom in exchange for the benefit the software gives them. And has their freedom decreased with respect to being able to change my program, or examine its source-code? No, had they not entered into the contract, they would still not be able to change my program or examine its source-code. I have not taken anything away from them (apart for money, which is an exchange they believe is a fair one).
Say I approach a customer and they think my software isn't worth the price I ask, or they think the license is too restrictive. They don't like the agreement and we go away. I have not made a sale and they have not bought any software. Has their freedom decreased? They were not able to see or use my software before, and they're not able to see and use it now. Where's the decrease in freedom?
So, Mr. Stallman, how am I evil for selling software which is a net benefit (in their opinion!) to my willing clients?
So let's look at the other situation. Say I start my company at great personal financial risk to me and we create this software, but along you come and force us to use the GPL. Suddenly my revenue stream has been for all intents and purposes destroyed and I am bankrupt and destitute after spending years of my life and thousands of dollars of my money working on a risky venture with no reward at the end. Who has the freedom and power in that arrangement?
So let's say in 3 or 4 years I'm doing well, I've sold my software to half of the clients in the target industry, and it's giving them such a competitive advantage that their competitors are coming to me and buying my software now. Am I exerting some sort of evil power? Sorry, try again. Meet what is simply a competitive industry. My software gives their competitors an advantage which is putting their businesses at risk, so they must buy my software or find other ways of restoring competitive advantages. In some respects yes, I now have power over them, but they have the freedom to try other things, or write their own software that does the same job as mine so they still have their freedom. What is the alternative? That we forever restrict what the smarter and more innovative companies and people do to the level of the lowest common demoninator so that the weakest and most ineffectual aren't put at some sort of disadvantage? Where's the power and freedom in that arrangement?
Like it or not, Mr. Stallman, this is a free society and a free market. Success isn't a right, you have to prove your worth to society.
How was that insightfull? Informative, maybe. Interesting, possibly, but insightfull? I don't get it... :D
BT are nearly bankrupt with billions of pounds in debt. How are they trying to deal with this? They sold off their overseas investments, for one. Their profitable overseas investments (as opposed to their highly unprofitable UK phone service). The only thing they've got going for them right now is BT Wireless which brings in huge revenues, primarily because the UK is entirely mobile-phone crazy. Sending text-messages seems to be the national obsession. Of course, they're spinning that off into a seperate company.
The local loop is bleeding them to death. Is this similar to the cut-throat competition that the North American telecoms have come up against over the past few years? Not likely. BT still charge per minute for local calls, as a rule. The competition is so meek, they're hardly noticable.
What's the problem then? Incompetance. Both managerial and technical incompetance on a grand scale in every department, at every level. Would anyone be sad to see them go? They've spent years trying to enforce the status quo and crush new technology to maintain their monopoly (you thought Microsoft was bad? Hah!), and bear a significant responsability for the slow uptake of the internet in the UK. No, not many people would be sad to see them go.
It all comes back to this, though. They're so desperate for cash right now, they'll try anything.
Uh...yeah. Right.
Microsoft has demonstrated that they are interested in one thing only, short term Profit.
Yes. Microsoft are interested in profit. They are a company. Call me crazy and all, but isn't profit is something that companies are usually interested in?
Stop evangelising Sony and Nintendo. Neither of them are out for goals any more altruistic than Microsoft, the quest for the allmighty dollar. You think the CEO of Sony woke up one day and thought 'I think I'll make the world a better place for gamers'? That's just completely laughable.
Sony of all people too! Sony are just as bad as Microsoft (for example, see the way they bullied retailers around over Bleem). Get a clue or one day you're going to wake up and find yourself being screwed over left, right and centre.
Marketing ploy or genuine interest in what is best for the internet?
Almost. Genuine interest in what is best for Microsoft's shareholders.
It's too bad they're not spending the billions working on stuff like voice recognition , natural language parsing , voice synthesis or intelligent user interfaces .
Where are the VR interfaces, massive dataset visualisers and massively distributed systems ?
Oh... wait...
If Microsoft's people can walk in and convince upper management that their products can do the job cheaper than the Linux alternative, 9 times out of 10 they'll get the contract. Anything else would be foolish.
Don't go on about how you don't have to pay license fees for the OS and how this makes Linux a vastly cheaper alternative. Most people realise the fact that OS licenses, in the real world, are a minor factor in the total cost of ownership compared to maintainance, management and training.
It's time the community got together and came up with some significant financial and economic advantages associated with Linux and get beyond the 'free as $0' argument. Then Microsoft will have something to worry about.
There's a reason why MS takes so long to get security patches out.
A previous posted mentioned Apple with the iTunes installer nuking the hdd, and how they got a patch out quickly, implying that if Apple can do it, MS should be able to too... well, things aren't quite so black and white:
The problem in the iTunes installer was a small typo in a bash script. The behaviour of the installer script is so simple that it's fairly obvious what effects the change would make. Easy patch. If only all bugs were so easy to fix.
A relatively short while ago some info regarding few vulnerabilities in Exchange (I think it was Exchange...) were released to the public@large by some third party. MS rushes out patches and lo and behold! A fairly significant proportion of users reported serious issues after installing the patch - it was messing up other parts of the system. MS rushed out a second version of the patch, which again wasn't satisfactory. It took 3 iterations of the patch to get something that seemed to work successfully on almost every machine it was installed on!
What went wrong? The Law of Unintended Consequences reared its ugly head.
If you look at the security holes that poke up in MS stuff, they often look like they result from some complex interaction that Microsoft's developers never expected. These interactions are partially the fault of the way they seem to design their systems and partially due to the vast number of configurations they end up operating in. Unfortunately, when you're fixing a bug that's resulting from some complex and probably subtle interaction between different components of your application (or even worse: another application) then your change could have drastic and far-reaching effects.
To help mitigate this problem they do extremely extensive regression testing. Typically, before a patch gets posted it's run through some of the weirdest and craziest system configurations they can think of to make sure it doesn't break anything, and if it does they figure out why and fix it. This takes time. Lots of time!
How true. Nowdays, if someone mentions the word computer I conjure up images of either some big box humming away somewhere with a UNIX prompt, or a Windows desktop machine.
Am I the only person who thinks this is kinda scarey?
In the machine room, OpenVMS is 'technically' alive, but I don't hear stories of massive new OpenVMS installations, and the VAX line is on its last legs. You've still got a few mainframe operating systems still around (MVS, etc...), but IBM seems to be moving in the direction of partitioned linux installations.
On the desktop IBM's managerial stupidity killed OS/2, Apple has made MacOS into just a BSD shell...for whatever reason, BeOS is dead for whatever reason (but it was pretty UNIXy anyway).
Whatever happened to all the diversity? I don't think you could blame that _all_ on Microsoft - they're the sole surviving company hawking a non-UNIX operating system.
WTF's up with that?
Err, yes, NT might not be open-sourced, but it's actually pretty well documented. Remember one of the most important laws of software engineering: for any project of reasonable complexity, poorly documented source-code isn't a substantially more usefull than just a compiled image. If I'm not mistaken, NT5's VMM model is pretty complex.
Last I checked it relies heavily on the concept of working sets and its paging algorithm relies not only on statistics about memory accesses, but also about the processes that own pages (it's more likely to page out memory for a process that isn't likely to grab CPU time again for a while than one that's currently running, or will probably be running soon), proactively tries to clear pages out of memory to prevent thrashing and, if it detects thashing, auto-tunes various system and process parameters to try get everything back under control. Does all this actually work? Well, YMMV. :)
Remember, Linux can't just blow past Win9x on the desktop nowdays, it's going to have to compete with the NT 5 system executive on the desktop. You know, the windows kernel that actually...well...works, not that POS kludge.
The tech front may be fairly mute these days, whatever the cause, but the competition is tougher and more intense than ever; hopefully once this disagreement is resolved Linux's VMM will be better, shinier and faster. Ain't competition grand?
For those who are interested in understanding what this discussion is all about, and what the all the terms mean (you know, all that unimportant stuff), Tannenbaum has a fairly good introduction to VMM in 'Modern Operating Systems', and the 2nd edition includes case studies of both Unix&Linux and Win2K (I'm not sure which version of Linux he's looking at though); I'd be shocked if any decent computer bookstore or university library didn't have at least one copy of this. It's a fairly good read for anyone interested in the mystical world of ring 0 (eww...x86ism), and is the kind of thing that's usefull to have read before getting into a discussion of vmm and other complex kernel issues.
After September 11th, while every other media source was running the usual watered down stories presenting simplistic views of the situation (everything from the geopolitics of the situation to any possible bioterror threat), the Economist has been consistently running articles examining the situation in depth [economist.com] and not trying to present its readers with some beautified and doctored picture of what's really going on to give people a warm fuzzy fealing inside or capitalise on the shock-value *cough*CNN*cough*.
And you know what? It's nice having a publication which doesn't treat you like an idiot or a child. Or one which isn't 90% adverts. Or only tells you what you want to hear.
You can bash Microsoft, but you don't bash The Economist. :)
The Economist happens to be one of the most trusted publications around; they have a well-deserved repuation for being right. You can pretty much guarentee that any article by them is well researched and as accurate as they come.
To be brutally frank, the kind of articles you find in the Economist [economist.com] are far beyond what you typically read on /. in terms of complexity, subtlety and breadth of vision, without the usual journalistic bias and bullsh*t you find in a lot of other places - particularly online.
What I find most ironic about the Economist is they usually do a lot better job at picking the important (tech) stuff [economist.com] than most of the tech publications; best of all - they've usually picked it out months before it's mostly ignored by the likes of Wired.
If more people read the Economist, the world would be a better place.
Software often gets compared to other products and analogies drawn - these analogies are often flawed and really make trying to figure out WTF's going on tough. They are flawed because they compare software to the two other primary forms of commerce that occurs in modern society.
- Sales of products
- Sales of services
A product is a physical entity, it is consumed and used; while the CD software typically comes on is a physical entity, it is just a medium: by destroying the CD you don't destroy the software, just one physical representation of it. So software can't be a physical product (and isn't). A service is something that is done for you by someone else, it expires. Software does not expire, and it is not something someone does for you (ASPs would fall into this category, however). Software does not expire, it is something you use yourself (with the assistance of a computer) so software can't be a service (and isn't).Software is the rarely discussed third type of entity, software is information. It isn't a product and it isn't a service, it shouldn't be treated as such.
Information is intangible, it can't really be sold or bought and this is the stance a lot of people like to take. This is perfectly correct but like everything else, its use can be restricted and protected; enter copyright law. Copyright law implies that you don't have the right to use information (whether it be music, art, pure information or software) without the creators permission (or whomever the creator has given the right to). When you 'buy' software at the store, you buy a box, some pieces of paper and a CD medium of the information...and a license. The license is important bit, though; it's the legal agreement that gives you the right to use the information presented on the CD. You don't have to agree to this, but as it says in the GPL, nothing else gives you the right to use the software; if you don't like it, too bad. A previous posted noted that installing/running software involves it be copied to the hdd and ram, which is restricted by copyright laws.
The great thing about the law is it gives you a whole slew of legal protections, unfortunately with the exception of a very few rights (like right to not be imprisoned, killed, etc...), these rights are alienable - you can sign these rights away in a contract, and it can be legally binding.
This, of course, is where EULAs get their teeth.
Jump to the real-world. There are further legal protections: there are things you are not legally allowed to include in copyright licenses as opposed to normal contracts since they're not signed, etc... (hence side-stepping the whole alienable rights and copyright protection issue) which is usefull somewhat, but the story doesn't end there. If you have a contract (or license agreement) which has sections which are found to be illegal, the entire contract (or license) is null & void - not only do you not have the right to resell the license onto someone else, you don't have the right to use the software product at all, except where the contract/license has provisions which explicitly deal with the situation where some of the license is found to be illegal (in which case what the contract/license says goes).
Of course, there's no such thing as a perfect contract (and by extension, license), and you can always get around them with enough subtlety of thought (and a good lawyer).
So I better not hear anymore software/service or software/car analogies. :)
It brings a tear to my eye. *sniff*
It's all a tradeoff. On one hand, having a deep pipeline is good since it lets you turn up the clock-speed, but you hurt whenever you mispredict a jump. On the other hand, having a lot of short pipelines is good because you can get a lot done and don't have to worry about jump mispredits - except out-of-band processing gets a lot harder since you have to do a lot of reordering. Pick a route, it bites you in the end.
Don't expect Intel to stop the MHz (or is it GHz now?) run anytime soon. The marketing gods have spoken.
Of course, if you look at the technical aspects you can see where Intel want to go with the P4 core. The chip includes pipeline stages where it simply sits around waiting for signals to propagate across the chip. Given the speed of an electrical signal on a CPU, and the size of the die currently it would seem Intel are aiming at hitting 30ghz before the end of its life. I think AMD probably needs to rethink their strategy and get something out that can compete mhz per mhz with the P4 if they want to get widespread adoption.
Forget the P4. I want a McKinley. :)