I'm going to forgo the opportunity to mod this fascinating debate to discuss this. You mentionned that PostgreSQL was "an order of magnitude" slower on imports -- my guess is that your import tool simply connected and started running INSERTs? It's a common-ish trap for new users. If there is no transaction running, each statement is its own transaction, with all the BEGIN and COMMIT overhead that goes with it. Wrapping your import in a BEGIN;... COMMIT; pair would probably have sped it up considerably.
Actually, I did have the complete processing for each report in a begin/commit pair. That was one of the reasons I was experimenting with PostgreSQL...with MySQL there was the annoyance of having to make sure the whole report was going to be OK before inserting any of it, so I couldn't just add to each table as I processed the report, because I might find out near the end that the report is bogus and want to discard it.
In short, pgsql does require somewhat more effort to initially configure and maintain. On the other hand, for a lot of people it's very much worth that effort
Right...and for a lot of people, they need something the works in the common case without that effort, and so there's always going to be an important place for MySQL.
What I'd really like to see is a good document included with PostgreSQL that says "So..you've got a big application that just works fine in MySQL, but you want to convert? Here's what you do" that covers all these things.
MySQL can do a damn fine job for simple INSERTs and SELECTs but throw a hundred users at it or a few WHERE or ORDER BY clauses (or all of the above) and MySQL shows its true colours: Made by Fischer-Price
Last time I checked, Dark Age of Camelot usually has more than a few hundred users, and they are using MySQL. So much for your amusing theory.
Postgres offer similar performance, but takes a minor hit for data integrity
I've got a few million reports that basically look like this: some header information of the form "variable=value" (about a dozen possible values of variable), and then one or more sections. Each section has a header in the same format as the report header, and from 0 to 5000 entries of the form "item:status:file", where name is one of about 5000 items, status is one of 5 status values, and file is the full path of a file containing information about the item.
I want these in a database. So, I've got a table that represents reports, which gets the information from the header. Another table represents report sections, and has the information from the section headers, and references the report table. A third table represents the "item:status:file" lines. I've actually got a bunch more tables, because the database is in third normal form, but the above is the gist of it.
With MySQL, I write the straightforward code to parse reports and insert into the database. It takes about a day to import all my reports, and querying them runs at decent speed.
With PostgreSQL, it starts out about an order of magnitude slower at importing, and after four days, when it is isn't anywhere near done, it is running even slower.
PostgreSQL does seem to query a bit faster than MySQL (but see below), but that slowness in getting the data in is a killer.
As far as queries go, PostgreSQL seems fast, if you've done "VACUUM ANALYZE" on the database. If you don't do that, it is incredibly slow. For example, if I have a simple table, indexed on an integer field, and do a select that was "WHERE that_field = 123", it is fast, and uses the index, but if I do "WHERE that_field IN (123, 456)", it doesn't use the index, unless you analyzed the table--it scans the whole freaking table. MySQL is smart enough to actually use an index without you having to run a special command first. Geesh!
So, here's what it comes down to, and why sooooo many people choose MySQL over PostgreSQL: PostgreSQL seems to require that you know a fair amount about database stuff to actually make it work well, even if you aren't trying to do fancy stuff. MySQL, when you are doing simple stuff, just works, and works well.
Oh, one more thing. When I was importing my few million records into MySQL, it barely loaded down my machine. With PostgreSQL, pretty early on, the disk light came on and stayed on, and doing things on the machine became painful. If that were a shared machine, say, a web server with shared hosting, replacing the MySQL in LAMP with PostgreSQL would be a disaster.
Great answer to that question: Neither, he wrote his own (twice!), and wrote papers about the products
Once upon a time, at Caltech High Energy Physics, where Rob Pike had worked before going to Bell, two programmers (me and Karl Heuer) were bitching about existing editors, each claiming he could do better. That night, it got to the "oh yeah...prove it!" stage, and both sat down to write editors. By morning, they were each using their respective editors on themselves. Norman Wilson at cithep had kept in contact with Pike, and told him of this spate of editor hacking. Note that this was well before Pike did his jim and sam stuff.
Pike wrote back something like this: "writing a screen editor is fun and easy and makes them feel important. Tell them to work on something useful".
We were quite amused when we found out that Rob went on to write editors, instead of sticking to "something useful"!
One thing is clear, because Apple's iTunes Music Store has been successful, Apple has a great deal of clout during negotiations
I disagree. Apple's iTMS has been a great success among legal music download services, but legal music download services are only a very very tiny fraction of total music downloads. The labels have their eye on the big prize--the people who are not using any legal download services now. If they have to drop Apple to get a DRM standard that they think will be more attractive to that huge crowd, they will do it.
The press almost always gets this wrong. The Supreme Court, except in very limited circumatances, gets to choose what cases they accept. What it sounds like happened in this case is that they decided not to hear the appeal. That means the result of the lower court stands--in that circuit.
That is different from the Supreme Court rejecting the appeal--very different. It does NOT mean that the Supreme Court agrees with the lower court. They may, for instance, think that the issue needs more consideration in other lower courts before they take it.
This is cool, but keep in mind that when SS1 reaches space, it is going waaaaaay below orbital velocity. If NASA had only had to reach space, NASA's programs would have been considerably less expensive, too.
I did that. I still dont beleive it. It pisses me right off
What's interesting is that I blocked out the rest of the picture by covering it with other windows, leaving just parts of those two squares visible...and they STILL look like different shades.
Well, one improvement they could make is for the Firefox update to actually work. When I try it, it tells me that it failed to install because something is read-only.
If I do it as root, it installs--just for root.
If I recursively chown/usr/local/firefox to myself temporarily and then run Firefox and click the update thingy, it no longer shows the update as being available. If I chown/usr/local/firefox back to root, then the update again shows as available, but fails to install. If I start Firefox, get to the update thingy, then chown things, and try to install, it still fails.
Net result: I have no idea if the update is installed (and Firefox is just confused when it says I need it when I run it as myself), or if the update is only installed for root.
The update thingy also tells me that 1.0 PR is available and I should download it. The only problem is that I am already running 1.0 PR.
IE sucks in many ways...but their updates are still working better than Firefox's.
Voting systems are one of those things people will ALWAYS disagree on, because the set of "reasonable" desirable properties that most people would like in a system are contradictory, as shown by Kenneth Arrow.
And that's a surprise to whom? You can target the 1.4 VM when you compile, but obviously you're going to run into limitations using 1.5 features. That's the way it's always been
Well, it's a surprise to me. I had thought of the VM as being kind of like a high-level assembly language. When I switched from C to C++, I didn't have to get a new processor, after all, even when using all C++ features.:-)
I'm not meaning to sound cold hearted but yesterday alone 30 Iraqi's died, a US soldier was killed, and 50 civilians were injured in a single set of blasts
You can go farther along those lines. Just consider that if you have a world population of around 6 billion, and an average lifespan of under 70 years, it necessarily follows that 234k people die every day, or 9800 an hour, or 160 a minute, or 3 a second.
And slightly more than those numbers are born every day, hour, etc. It would be very interesting, when world record keeping gets to the point where every birth and death is tracked, to put up two monitors somewhere like Times Square, one scrolling the list of deaths, and one the list of births. Both would be scrolling slow enough (3 lines a second) that you could read names, and the birth one would be slightly faster, with the "death" side occasionally getting a big jump due to accidents.
On "The Screensavers" a while back, Kevin Rose gave out his gmail address and asked viewers to fill it, so they could see what happens when you hit your limit on gmail. It filled very quickly.
I think TSS viewers could do 100 GB in an hour or so.
At our old offices at work, we had a voice mail system that allowed you to record a message for delivery to another user at a later time, and allowed you to cancel such a message if it had not yet been delivered. So, you could record a message, queued for delivery in, say, two months. A month later, you could cancel it and rerecord it, again scheduled for two months out.
Net result: when you die, your boss gets a voice mail from you one to two months later.
Although, personally, if I'm looking for power, quiet, and ease of use, I'd just get a dual G5 Mac at this point
Dual G5 Macs aren't quiet. This is a point of much consternation in Mac forums--with Macs seeming to be ideal for audio work, many are puzzled that Apple doesn't build a truly quiet machine for that niche.
For somethine really quiet, it looks like your best bet now is to build something yourself. Start with cases and power supplies and cooling from Zalman. Their external water cooling system looks particularly nice, and easy to install.
Get one. They're dirt cheap, have plenty of CPU power, and they run Linux
Linksys home routers are only speced for an operating temperature of up to 40C. If they are in a place without good airflow, that can easily be exceeded.
I hit that in winter because the way my apartment is laid out, the computers are near a heater vent. In the summer, I hit it because I don't have air conditioning.
DLink routers are speced to 55C (and they tend to run cooler anyway, so that they would actually be OK even if only speced to 40C...I find that amusing).
Of course, it depends on what kind of router you own. For example, I would never touch a Linksys product with a 10-foot pole. I have a friend with one...that piece of crap frequently stops working, and won't come back up for a couple of hours, even after it's unplugged and re-plugged into the wall multiple times (it's not the connection--plugging the machine into the cable modem works fine..it's just the piece of crap router that's a piece of crap). Of course, she's refused to listen to me when I constantly told her to get a D-Link router, so I've refused to ever help her on anything network-related until she does
Check the environmental specs on that Linksys and your DLink, and I bet you'll find that there is a difference. I had a Linksys that consistently lost packets, and then a Netgear that consistently lost packets. I then noticed that if I blew into the vents on them while they were losing packets, they would stop losing packets for a bit. If I arranged a fan to blow over them, they were fine. Reading their specs, they are rated to 40C. I pointed an IR thermometer inside one of the vents...and it said 45C. Aha!
I then bought a DLink that is rated to 55C, and the packet loss went away. I gave the Linksys to a friend whose computers are placed where the airflow is better, and it worked great for him.
BTW, the DLink not only was rated 15C higher than the other two, it runs cooler.
A couple years ago, a couple of guys made a nice little Star Wars short shot entirely against a bluescreen, using their Macs for the backgrounds and effects. It is pretty damned cool. Here is a Coralized link: Duality.
OpenBSD is probably the most secure free OS, yet it has fewer people looking at it than Linux or FreeBSD. Fewer eyeballs are looking at OpenBSD, but they are very good eyeballs.
Another good example is Kerberos. It's been around a long time, looked at by researchers, students, open source developers, and closed source developers using it as a reference for implementing their versions. Yet, major flaws that weren't subtle have taken a long time to find.
They may have 600 G5s, and I just have a lowly ADS Instant DVD USB 2.0 hooked up between my Laserdisc player and my PC...but at least the DVD I'm making right now will actually be "Star Wars"!
Idiot moderators. Take the fucking 20 seconds (literally!) it will take to actually read the text of the Act, and you'll see that all this hype is completely unwarranted.
This Act is only a couple of short paragraphs, in fairly clear language. I don't see anything in it that would reverse the Betamax decision (or ban iPods, or any of the other "sky is falling" stuff that has been claimed, for that matter).
Anyone care to explain? Don't bother with explanations like the EFFs, which require an interpretation of words like "intentionally" that are totally at odds with how those things are interpreted in hundreds of other laws.
It would be far better to spend time trying to overturn bad existing law, like the DMCA, than arguing against this harmless thing.
One thing to be careful with...Firefox doesn't handle upgrades well when you have extensions. For example, if you had the Flash blocker (which makes it so you have to explicitly click to play Flash) installed in 0.8x, and upgraded to 0.9x, and let it import your settings, it also imports whatever it is that tells it that Flash is handled by that extension. But you no longer have that extension, so you simply cannot see Flash.
And since you don't have that externsion...you can't conveniently uninstall it to restore Flash, and since that externsion wasn't available for 0.9x you could not reinstall it (it may have since become available). What you had to do was poke around in Firefox's files and figure out what to delete to remove the extension. Yuck!
So, before doing a major upgrade, uninstall all extensions.
Actually, I did have the complete processing for each report in a begin/commit pair. That was one of the reasons I was experimenting with PostgreSQL...with MySQL there was the annoyance of having to make sure the whole report was going to be OK before inserting any of it, so I couldn't just add to each table as I processed the report, because I might find out near the end that the report is bogus and want to discard it.
In short, pgsql does require somewhat more effort to initially configure and maintain. On the other hand, for a lot of people it's very much worth that effort
Right...and for a lot of people, they need something the works in the common case without that effort, and so there's always going to be an important place for MySQL.
What I'd really like to see is a good document included with PostgreSQL that says "So..you've got a big application that just works fine in MySQL, but you want to convert? Here's what you do" that covers all these things.
just like PostgreSQL and Oracle. Your point?
Last time I checked, Dark Age of Camelot usually has more than a few hundred users, and they are using MySQL. So much for your amusing theory.
I've got a few million reports that basically look like this: some header information of the form "variable=value" (about a dozen possible values of variable), and then one or more sections. Each section has a header in the same format as the report header, and from 0 to 5000 entries of the form "item:status:file", where name is one of about 5000 items, status is one of 5 status values, and file is the full path of a file containing information about the item.
I want these in a database. So, I've got a table that represents reports, which gets the information from the header. Another table represents report sections, and has the information from the section headers, and references the report table. A third table represents the "item:status:file" lines. I've actually got a bunch more tables, because the database is in third normal form, but the above is the gist of it.
With MySQL, I write the straightforward code to parse reports and insert into the database. It takes about a day to import all my reports, and querying them runs at decent speed.
With PostgreSQL, it starts out about an order of magnitude slower at importing, and after four days, when it is isn't anywhere near done, it is running even slower.
PostgreSQL does seem to query a bit faster than MySQL (but see below), but that slowness in getting the data in is a killer.
As far as queries go, PostgreSQL seems fast, if you've done "VACUUM ANALYZE" on the database. If you don't do that, it is incredibly slow. For example, if I have a simple table, indexed on an integer field, and do a select that was "WHERE that_field = 123", it is fast, and uses the index, but if I do "WHERE that_field IN (123, 456)", it doesn't use the index, unless you analyzed the table--it scans the whole freaking table. MySQL is smart enough to actually use an index without you having to run a special command first. Geesh!
So, here's what it comes down to, and why sooooo many people choose MySQL over PostgreSQL: PostgreSQL seems to require that you know a fair amount about database stuff to actually make it work well, even if you aren't trying to do fancy stuff. MySQL, when you are doing simple stuff, just works, and works well.
Oh, one more thing. When I was importing my few million records into MySQL, it barely loaded down my machine. With PostgreSQL, pretty early on, the disk light came on and stayed on, and doing things on the machine became painful. If that were a shared machine, say, a web server with shared hosting, replacing the MySQL in LAMP with PostgreSQL would be a disaster.
Once upon a time, at Caltech High Energy Physics, where Rob Pike had worked before going to Bell, two programmers (me and Karl Heuer) were bitching about existing editors, each claiming he could do better. That night, it got to the "oh yeah...prove it!" stage, and both sat down to write editors. By morning, they were each using their respective editors on themselves. Norman Wilson at cithep had kept in contact with Pike, and told him of this spate of editor hacking. Note that this was well before Pike did his jim and sam stuff.
Pike wrote back something like this: "writing a screen editor is fun and easy and makes them feel important. Tell them to work on something useful".
We were quite amused when we found out that Rob went on to write editors, instead of sticking to "something useful"!
I disagree. Apple's iTMS has been a great success among legal music download services, but legal music download services are only a very very tiny fraction of total music downloads. The labels have their eye on the big prize--the people who are not using any legal download services now. If they have to drop Apple to get a DRM standard that they think will be more attractive to that huge crowd, they will do it.
That is different from the Supreme Court rejecting the appeal--very different. It does NOT mean that the Supreme Court agrees with the lower court. They may, for instance, think that the issue needs more consideration in other lower courts before they take it.
This is cool, but keep in mind that when SS1 reaches space, it is going waaaaaay below orbital velocity. If NASA had only had to reach space, NASA's programs would have been considerably less expensive, too.
What's interesting is that I blocked out the rest of the picture by covering it with other windows, leaving just parts of those two squares visible...and they STILL look like different shades.
I wonder what IE can do about this...
Well, one improvement they could make is for the Firefox update to actually work. When I try it, it tells me that it failed to install because something is read-only.
If I do it as root, it installs--just for root.
If I recursively chown /usr/local/firefox to myself temporarily and then run Firefox and click the update thingy, it no longer shows the update as being available. If I chown /usr/local/firefox back to root, then the update again shows as available, but fails to install. If I start Firefox, get to the update thingy, then chown things, and try to install, it still fails.
Net result: I have no idea if the update is installed (and Firefox is just confused when it says I need it when I run it as myself), or if the update is only installed for root.
The update thingy also tells me that 1.0 PR is available and I should download it. The only problem is that I am already running 1.0 PR.
IE sucks in many ways...but their updates are still working better than Firefox's.
Voting systems are one of those things people will ALWAYS disagree on, because the set of "reasonable" desirable properties that most people would like in a system are contradictory, as shown by Kenneth Arrow.
Well, it's a surprise to me. I had thought of the VM as being kind of like a high-level assembly language. When I switched from C to C++, I didn't have to get a new processor, after all, even when using all C++ features. :-)
You can go farther along those lines. Just consider that if you have a world population of around 6 billion, and an average lifespan of under 70 years, it necessarily follows that 234k people die every day, or 9800 an hour, or 160 a minute, or 3 a second.
And slightly more than those numbers are born every day, hour, etc. It would be very interesting, when world record keeping gets to the point where every birth and death is tracked, to put up two monitors somewhere like Times Square, one scrolling the list of deaths, and one the list of births. Both would be scrolling slow enough (3 lines a second) that you could read names, and the birth one would be slightly faster, with the "death" side occasionally getting a big jump due to accidents.
I think TSS viewers could do 100 GB in an hour or so.
Net result: when you die, your boss gets a voice mail from you one to two months later.
Dual G5 Macs aren't quiet. This is a point of much consternation in Mac forums--with Macs seeming to be ideal for audio work, many are puzzled that Apple doesn't build a truly quiet machine for that niche.
For somethine really quiet, it looks like your best bet now is to build something yourself. Start with cases and power supplies and cooling from Zalman. Their external water cooling system looks particularly nice, and easy to install.
Linksys home routers are only speced for an operating temperature of up to 40C. If they are in a place without good airflow, that can easily be exceeded.
I hit that in winter because the way my apartment is laid out, the computers are near a heater vent. In the summer, I hit it because I don't have air conditioning.
DLink routers are speced to 55C (and they tend to run cooler anyway, so that they would actually be OK even if only speced to 40C...I find that amusing).
Check the environmental specs on that Linksys and your DLink, and I bet you'll find that there is a difference. I had a Linksys that consistently lost packets, and then a Netgear that consistently lost packets. I then noticed that if I blew into the vents on them while they were losing packets, they would stop losing packets for a bit. If I arranged a fan to blow over them, they were fine. Reading their specs, they are rated to 40C. I pointed an IR thermometer inside one of the vents...and it said 45C. Aha!
I then bought a DLink that is rated to 55C, and the packet loss went away. I gave the Linksys to a friend whose computers are placed where the airflow is better, and it worked great for him.
BTW, the DLink not only was rated 15C higher than the other two, it runs cooler.
A couple years ago, a couple of guys made a nice little Star Wars short shot entirely against a bluescreen, using their Macs for the backgrounds and effects. It is pretty damned cool. Here is a Coralized link: Duality.
Another good example is Kerberos. It's been around a long time, looked at by researchers, students, open source developers, and closed source developers using it as a reference for implementing their versions. Yet, major flaws that weren't subtle have taken a long time to find.
They may have 600 G5s, and I just have a lowly ADS Instant DVD USB 2.0 hooked up between my Laserdisc player and my PC...but at least the DVD I'm making right now will actually be "Star Wars"!
Idiot moderators. Take the fucking 20 seconds (literally!) it will take to actually read the text of the Act, and you'll see that all this hype is completely unwarranted.
Anyone care to explain? Don't bother with explanations like the EFFs, which require an interpretation of words like "intentionally" that are totally at odds with how those things are interpreted in hundreds of other laws.
It would be far better to spend time trying to overturn bad existing law, like the DMCA, than arguing against this harmless thing.
And since you don't have that externsion...you can't conveniently uninstall it to restore Flash, and since that externsion wasn't available for 0.9x you could not reinstall it (it may have since become available). What you had to do was poke around in Firefox's files and figure out what to delete to remove the extension. Yuck!
So, before doing a major upgrade, uninstall all extensions.
That should be "he wrote". He died Sept 21, 2002.