Perl for Stoats? ("Squeak squeak." -- the author.)
How many of these Perl for Increasingly-Small-Demographic books do we need? Can't system administrators just get Programming Perl and figure it out? It's not rocket science.
I don't think that understanding is the problem, it's convenience. I like to use books, even though they often date quickly, because they are portable, easy to use, very high resolution and convenient.
So is the web, but not always in the same circumstances. (I'd quite happily read a book on the train but wouldn't dare use my laptop.)
How does it know which area code you're currently in? Cell boundaries are vague and therefore *can't* match the fixed-line area codes 100% of the time.
Since I got a cell phone -- where you have to dial the full number regardless of where you are -- I've been using the complete number on all phones. So this kind of arrangement wouldn't affect me, even if I lived in the states. I can't be the only person doing this, can I?
You're assuming that all numbers are equal and available. As the article explains, that's not true.
Here in the UK they're trying to move to the first two digits showing what the number is. Numbers starting with 01 or 02 are national, 07 means a cell phone or 'personal' number, 08 are free or local rate non-geographic calls and 09 are premium rate. So, for normal fixed lines, we're down to 2*10^9.
People interpreting the data as binary is dangerous, not the tests as a whole.
The MBTI test results *do* come as a scale, they will show whether your "I" is border-line "Extrovert" or more "Introvert" than anyone else in history. The candidate is usally shown the binary result, but the person paying for the tests normally gets the full results.
It just goes to show that managers reading these results need to have training before taking them too seriously. I think we all like to be amateur psycologists, but we're not all aware of how amateur we really are.
For anyone that thinks MySQL is good, you should take a look at Oracle. It may be closed-source, but it does make MySQL look like a toy. The basics are no more complex than Postgres but there's a lot more to it.
And if you need help setting up Oracle, have a look at my web site (there's the Oracle on Linux Installation HOWTO there).
You don't have a problem with your hardware. It should be able to handle much greater loads that you're subjecting it to.
Therefore you need to do some tuning. I generally work with Oracle, but these suggestion should apply equally to MySQL:
Make sure it can use as much real memory as possible (i.e., use memory, avoid swap space); split indexes and data over two (or more) disks; make sure you have connection pooling to avoid the overhead of making new connections.
If the machine has a load average of 0.4 and it's grinding to a halt, you probably have a disk bottle-neck. If the above suggestions do nothing, you'll have to consider rewriting your queries, denormalising the database, etc.
Finally, if you need to do a lot of updates, inserts or deletions you'll probably have to move away from MySQL (due to its lack of row-level locking). You can't go far wrong with Oracle, but PostgresSQL comes highly recommended by some.
"I mean, if I wanted to publish database results, does this mean I can't write a report about it?"
No, you can't write a report about it. As others have noted, Oracle has this condition in its licence too.
The bottom line is that if you don't agree with the licence terms, then you don't have to use the software. As the creator of the intellectual property it is your privilege to apply whatever conditions on its use that you see fit. This applies equally to free and commercial software
In this respect, Microsoft is being no more evil than rms.
However, there are other reasons why you might not have heard from anyone. I'm the author of the Oracle on Linux Installation HOWTO (mirrored all over the net as part of the LDP) and I've noticed that immediately after a new issue the amount of mail I get drops. The reason, I guess, is that it solves more peoples problems. It does the job so people feel no need to comment.
But, as you've found, it's still nice to get a "thank you" or a really good question that's not already answered.
I believe the original intention of n-tier architecture was to separate out the business logic from the data storage and presentation logic. This is still an important issue for web applications, but scalability is probably of greater importance.
If you can run your app across several machines, preferably load-balanced, you're well away. Stuff like ASP and PHP can make that kind of thing tricky (as they're built into the web server).
The site I'm helping develop at work runs the web server (3xStrongholdApache), the application server (6xDynamo) and the database (2xOracle) on separate machines. If you swap Dynamo for Enhydra all that software will run on Linux.
"Richard Stallman claimed that KDE is still in violation of the GPL even though Qt is now covered under the GPL and all KDE code is compatible with the GPL. His rather absurd reasoning is that since KDE once violated the GPL, it will always be in violation unless the individual copyright holders 'grant forgiveness.'"
Sorry guys, RMS is actually correct. If you break the terms of the GPL (e.g. by linking it with an incompatible library) then your rights under the licence are terminated. If RMS wants to 'unterminate' the licence for FSF code he can legally do that.
I'd expect comments and documentation to be *better* in free software than anything written for work.
I derive pleasure from writing quality, beautiful code. Beautiful code comes from the algorithm and the degree to which it solves is problem right down to its formatting and clarity.
Code without sufficient documentation is not complete and is not of high quality.
At work these values are often lost for the sake of something "good enough," but with free software the priorities are different.
As many other people have said, 30Gb is nothing special volume-wise on 'big' machines, like Sun's.
30Gb is probably at the top end of what you could expect to put on an x86 box and so the question is, what do you want to do with it? If you're just storing the data and doing a few simple queries, you should be okay, although you'll probably want more than a gig of memory.
If you're doing heavy duty processing with many users then forget it. It's not a problem with Linux, but the hardware. (Yes, Linux will run on a mainframe but you can't get Oracle/Sybase/Informix on it.)
The software is less of an issue. Any of the big commercial databases would do the trick (I prefer Oracle, but then I wrote the Oracle on Linux Installation HOWTO -- URL above). MySQL has no transactions or referential integrity, so even if it could handle the volume it wouldn't be appropriate. Don't think I'd trust PostgreSQL, either.
Bottom line, I think you'd be cheaper with the expensive hardware in the long term.
I got The New Renaissance by Douglas S. Robertson last year. Quite interesting and controversial (he suggests changing numbers and language so that they are more efficient for computers and people).
It's not exactly a classic, but is well worth a read.
On one level I agree with you. It took me ages to get most of the tools working properly, and I'm still not completely happy (I can now get PS format, but PDF still comes out as a muddled mess).
However, allowing authors to submit documentation in any format they see fit is a non-starter. You need some level of consistency in order to manage the volume of documents -- try handling a mish-mash of Word, SGML, HTML and plain-text files!
I think more effort is needed on the tools to make them work better. There's nothing wrong with SGML (I only claim to know enough to write a HOWTO and no more), and anyone that's technically competent enough to document Linux is up to the job of learning it.
And finally, I don't think we need 'professional writers' as such. The current policy of accepting text in 'readable' English seems fine to me, although a little more editing probably wouldn't go amiss.
I realise that we're all supposed to hate this and rally against it, but I'm not going to. I *do* have reservations, but it's not a bad balance.
Against is that the powers could be abused, but then you can abuse just about any law that involves raiding peoples property or possessions. It does happen, but not very often. (Or at least you don't hear about it very often. That's another story.)
In its favour, it doesn't try to outlaw the technology, the legitimate use or development of it. And it's not escrow. If it's implemented like a warrant, the police already need some evidence against you before they're allowed to go ahead.
I don't necessarily think that this is true. As Eric Raymond points out in his How To Be A Hacker FAQ, almost all good hackers and are also adept at mangling words.
I tend to write documentation as I go along because it helps clear my thoughts -- if I can't clearly and concicely write what I'm doing then my algorithm just isn't very good.
Further, I tend to find that small programs have *more* documentation than big ones. I think the problem is in managing change to text files. It's just not as easy as updating code.
Small, powerful and low power CPU's allow make far more than cool PDA's possible.
Think of the Negroponte-style fridge orders some new milk when you're running low, or a VCR with *intelligent* voice recognition ("Record Buffy tomorrow evening").
Perl for Stoats? ("Squeak squeak." -- the author.)
How many of these Perl for Increasingly-Small-Demographic books do we need? Can't system administrators just get Programming Perl and figure it out? It's not rocket science.
I don't think that understanding is the problem, it's convenience. I like to use books, even though they often date quickly, because they are portable, easy to use, very high resolution and convenient.
So is the web, but not always in the same circumstances. (I'd quite happily read a book on the train but wouldn't dare use my laptop.)
How does it know which area code you're currently in? Cell boundaries are vague and therefore *can't* match the fixed-line area codes 100% of the time.
Since I got a cell phone -- where you have to dial the full number regardless of where you are -- I've been using the complete number on all phones. So this kind of arrangement wouldn't affect me, even if I lived in the states. I can't be the only person doing this, can I?
You're assuming that all numbers are equal and available. As the article explains, that's not true.
Here in the UK they're trying to move to the first two digits showing what the number is. Numbers starting with 01 or 02 are national, 07 means a cell phone or 'personal' number, 08 are free or local rate non-geographic calls and 09 are premium rate. So, for normal fixed lines, we're down to 2*10^9.
I guess the US system is not dissimilar.
People interpreting the data as binary is dangerous, not the tests as a whole.
The MBTI test results *do* come as a scale, they will show whether your "I" is border-line "Extrovert" or more "Introvert" than anyone else in history. The candidate is usally shown the binary result, but the person paying for the tests normally gets the full results.
It just goes to show that managers reading these results need to have training before taking them too seriously. I think we all like to be amateur psycologists, but we're not all aware of how amateur we really are.
I think you'll find that the most cryptic programming langage is actually Intercal. APL is easy by comparison.
For anyone that thinks MySQL is good, you should take a look at Oracle. It may be closed-source, but it does make MySQL look like a toy. The basics are no more complex than Postgres but there's a lot more to it.
And if you need help setting up Oracle, have a look at my web site (there's the Oracle on Linux Installation HOWTO there).
You don't have a problem with your hardware. It should be able to handle much greater loads that you're subjecting it to.
Therefore you need to do some tuning. I generally work with Oracle, but these suggestion should apply equally to MySQL:
Make sure it can use as much real memory as possible (i.e., use memory, avoid swap space); split indexes and data over two (or more) disks; make sure you have connection pooling to avoid the overhead of making new connections.
If the machine has a load average of 0.4 and it's grinding to a halt, you probably have a disk bottle-neck. If the above suggestions do nothing, you'll have to consider rewriting your queries, denormalising the database, etc.
Finally, if you need to do a lot of updates, inserts or deletions you'll probably have to move away from MySQL (due to its lack of row-level locking). You can't go far wrong with Oracle, but PostgresSQL comes highly recommended by some.
So, to summarise, you're happy for IP-holders to add conditions on use that you approve of.
Microsoft and Oracle say you can't benchmark their software.
GNU say that you can't withold the source-code or stop people copying your code.
I don't necessarily agree with either under all circumstances, but as I didn't write that code I don't get to choose.
"I mean, if I wanted to publish database results, does this mean I can't write a report about it?"
No, you can't write a report about it. As others have noted, Oracle has this condition in its licence too.
The bottom line is that if you don't agree with the licence terms, then you don't have to use the software. As the creator of the intellectual property it is your privilege to apply whatever conditions on its use that you see fit. This applies equally to free and commercial software
In this respect, Microsoft is being no more evil than rms.
As others have said, 63 isn't actually that many.
However, there are other reasons why you might not have heard from anyone. I'm the author of the Oracle on Linux Installation HOWTO (mirrored all over the net as part of the LDP) and I've noticed that immediately after a new issue the amount of mail I get drops. The reason, I guess, is that it solves more peoples problems. It does the job so people feel no need to comment.
But, as you've found, it's still nice to get a "thank you" or a really good question that's not already answered.
Is it just a co-incidence that the challenge has been completed just as his new TV series airs?
Presumably 11 is just a floating point error?
Actually, poor ethics and lousy judgement are required qualification for the equivalent job here in the UK.
This kind of side-steps the question but...
I believe the original intention of n-tier architecture was to separate out the business logic from the data storage and presentation logic. This is still an important issue for web applications, but scalability is probably of greater importance.
If you can run your app across several machines, preferably load-balanced, you're well away. Stuff like ASP and PHP can make that kind of thing tricky (as they're built into the web server).
The site I'm helping develop at work runs the web server (3xStrongholdApache), the application server (6xDynamo) and the database (2xOracle) on separate machines. If you swap Dynamo for Enhydra all that software will run on Linux.
I'd expect comments and documentation to be *better* in free software than anything written for work.
I derive pleasure from writing quality, beautiful code. Beautiful code comes from the algorithm and the degree to which it solves is problem right down to its formatting and clarity.
Code without sufficient documentation is not complete and is not of high quality.
At work these values are often lost for the sake of something "good enough," but with free software the priorities are different.
As many other people have said, 30Gb is nothing special volume-wise on 'big' machines, like Sun's.
30Gb is probably at the top end of what you could expect to put on an x86 box and so the question is, what do you want to do with it? If you're just storing the data and doing a few simple queries, you should be okay, although you'll probably want more than a gig of memory.
If you're doing heavy duty processing with many users then forget it. It's not a problem with Linux, but the hardware. (Yes, Linux will run on a mainframe but you can't get Oracle/Sybase/Informix on it.)
The software is less of an issue. Any of the big commercial databases would do the trick (I prefer Oracle, but then I wrote the Oracle on Linux Installation HOWTO -- URL above). MySQL has no transactions or referential integrity, so even if it could handle the volume it wouldn't be appropriate. Don't think I'd trust PostgreSQL, either.
Bottom line, I think you'd be cheaper with the expensive hardware in the long term.
It's not exactly a classic, but is well worth a read.
On one level I agree with you. It took me ages to get most of the tools working properly, and I'm still not completely happy (I can now get PS format, but PDF still comes out as a muddled mess).
However, allowing authors to submit documentation in any format they see fit is a non-starter. You need some level of consistency in order to manage the volume of documents -- try handling a mish-mash of Word, SGML, HTML and plain-text files!
I think more effort is needed on the tools to make them work better. There's nothing wrong with SGML (I only claim to know enough to write a HOWTO and no more), and anyone that's technically competent enough to document Linux is up to the job of learning it.
And finally, I don't think we need 'professional writers' as such. The current policy of accepting text in 'readable' English seems fine to me, although a little more editing probably wouldn't go amiss.
I realise that we're all supposed to hate this and rally against it, but I'm not going to. I *do* have reservations, but it's not a bad balance.
Against is that the powers could be abused, but then you can abuse just about any law that involves raiding peoples property or possessions. It does happen, but not very often. (Or at least you don't hear about it very often. That's another story.)
In its favour, it doesn't try to outlaw the technology, the legitimate use or development of it. And it's not escrow. If it's implemented like a warrant, the police already need some evidence against you before they're allowed to go ahead.
It sounds like a reasonable compromise to me.
> Documentation is something most coders hate
I don't necessarily think that this is true. As Eric Raymond points out in his How To Be A Hacker FAQ, almost all good hackers and are also adept at mangling words.
I tend to write documentation as I go along because it helps clear my thoughts -- if I can't clearly and concicely write what I'm doing then my algorithm just isn't very good.
Further, I tend to find that small programs have *more* documentation than big ones. I think the problem is in managing change to text files. It's just not as easy as updating code.
Small, powerful and low power CPU's allow make far more than cool PDA's possible.
Think of the Negroponte-style fridge orders some new milk when you're running low, or a VCR with *intelligent* voice recognition ("Record Buffy tomorrow evening").
Presumably, Transmeta are saying that "this CPU is not for the desktop" more for marketing reasons that anything technical.
Taking on Intel with your first product could be considered commercial suicide. Taking on ARM, a small UK company, makes much more sense.