I do roughly the same thing, though it tends to be Oracle rather than MySQL.
I like to work in local coffee shops on my laptop.
Carrying around two laptops and the cable to connect them would be a drag. VMWare lets me do it all on one box, though testing MSIE under VMWare while running piggish Oracle under Linux requires a fair amount of memory (256MB works OK).
Cough... have you ever heard of the Ottoman Empire? With their artillery and other technical military items unmatched by Europeans for a couple of centuries?
Yes, eventually their fortunes turned as those of France, Russia and other nations rose. Of course,
those nations found their fortunes wane as well.
Rule Britannia! The sun never sets on the British Empire!
Of course, Bismark and the Prussians brought great power to Germany (and don't forget that the Turks were still a force to be reckoned with in WW I).
And those powers waned as well, leaving the US and
Russia as the two remaining superpowers after WW II.
Now, of course, there is only one. But before we get too full of ourselves and assume we'll remain the world's most dominant force forever, consider that our bizarre unflinching adherance to ancient religious law rivals that of fundamentalist Islams .
Let's see... we still fight over the teaching of evolution because so many Americans have a bizarre
unflinching adherance to a literal belief in Genesis. That's not the whole story but it's not a bad place to start...
If the company felt it was going to win, it would've continued the case. This represents a victory by the FSF and the GPL. Remember that the company first refused to comply, went to court, and have now backed down and have agreed to comply. Someone scored a point here, and it wasn't the company that was in violation of the GPL.
No, the judge didn't rule since they settled out of court, but the solution - "fix it so it complies" - is undoubtably what the judge would've ordered if the FSF had pushed to the end and insisted on a full trial.
What do you imagine the FSF's goal to be in such a case? It appears that their notion of their goal is to force companies to comply with the license.
They've succeeded in this case.
Re:NuSphere clearly violating 15 USC � 1125(d)
on
MySQL & Nusphere
·
· Score: 5
No, they aren't. They are claiming that their agreement with Monty and David grant them the right to use the trademark in various ways, including within a domain name. The statute you cite doesn't prevent a trademark owner from granting such rights.
There seem to be two parts to their disagreement that are legally pertinent (though IANAL):
1. MySQL claims the only agreement that has existed is the preliminary agreement and that it is no longer in force. NuSphere claims otherwise.
2. MySQL claims that the preliminary agreement didn't grant NuSphere the right to use their trademark in this way, regardless of whether or not it is still in force. NuSphere disagrees.
NuSphere's *not* claiming they have the right to use MySQL's trademark absent any agreement with MySQL. Rather they claim that they've been granted that right, a very different thing.
The courts, not Slashdot, will decide whose interpretation of the preliminary agreement is correct, of course, and whether or not any statements or promises by either side outside of that agreement are binding.
Unless they can find a way to settle out of court, of course...
Huh... I live in Portland, too, and have had Qwest DSL for about two years. I had no problem signing up to use my ISP (Pacifier), just filled in the form on the web page.
Of course things may've changed in the past two years. They stopped handing out Cisco 675's like candy, that's for sure (a friend ended up by two, they couldn't figure out how to set up a return even though he called them about it).
I had some problems the first winter, but I'm 17500 yards from the CO and my decibel level had dropped far below their qualification cutoff. They upgraded equipment in the CO before the next winter came along and I've had no problems since. Been down once in the last 15 months or so, for a couple of hours.
For $29.95 a month and no need for a second phone line (I work out of my home) I'm not complaining. 640 kbs down and 256 kbs up, good enough for my needs.
Uhhh...Chris, as you know I'm a Postgres user as well.
Sap DB has many features and administrative tools still lacking in PostgreSQL.
Try real archiving and replication, for instance. Being able to specify where to allocate tables and indices without using "ln -s". An overwriting storage manager so you don't need to VACUUM nightly (or hourly as some do on very busy systems).
That just scratches the surface.
Yes, PG is vastly improved and I'm a big fan. And much of the above list is scheduled for PG 7.2. But today it's PG 7.1 and PG doesn't have these features.
OpenACScurrently is supporting Oracle and PostgreSQL with our upcoming OpenACS 4.x product. Sap DB is very likely to become the third RDBMS we support with the toolkit.
I'm amazed that no one has mentioned the quick shot in sneakers of them going through the trash of one of the geeks working for the bad guys. The quick flash of a "Captain Crunch" box on the screen caused me to convulse with laughter, much to the bemusement of others in the theater. "Captain Crunch", the original star of the phone phreaking world, an ultimate insiders joke flashed on screen for a couple of seconds with no further mention.
There were other inside jokes of this sort planted throughout the movie. They seemed to be making the point that their technical advisor really *did* understand this stuff even if they'd turned it into a hollywood fantasy in order to entertain the masses.
If you read http://www.arsdigita.com/asj/professionalism carefully you'll see that the article does not
posit large engineering groups either today or any time in the past. It says that the closed-source packaged
software business strategy ends up requiring large groups of people for physical packaging, traditional
marketing, and fulfillment to retailers.
One of the nice things about the 1970s and 1980s was the fact that there were a lot of small third-party software firms about, at least in my world. That world was largely centered around DEC , the world's second largest computer company at the time and one that early in life encouraged third-party developers. DEC sold its 10,000th computer in the mid-1970s and many of those were working on factory floors, so it didn't really take a large company to package and distribute software that had a fairly large impact in that world.
This helped Unix as well, BTW. The world learned about Unix on PDP-11s and it was distributed on RK05 disks, not the 'net, with source available for universities or non-profits (like my group) for $200. Of course, Unix wasn't discovered by all that many folks until the VAX came out, but the popularity of DEC minicomputers within the university environment had quite a bit to do with its popularity. Along with the availability of the source, even if AT&T's lawyers were a bit intimidating (we asked one favor of them in 1975 and never bothered again after reading their response).
Of course the fact that the PDP-11 was the first minicomputer with an instruction set designed to make compilers for it simple didn't hurt at all, either.
Now... there wasn't much money to be made by starting a small third-party software company in those days (when I was a teenager one of my software products owned 10% of the PDP-8 market, closer to 50% of those not humping bits on the factory floor, but at the time only 3,000 PDP-8s had been built). At the time it was pretty clear that one could do better financially by working for a major manufacturer's software engineering department. But opportunities to do what you wanted were there for those willing to take the risk and the fact that the rewards were modest.
There were no VCs running around minicomputer land offering to dump $35M in your lap, that's certainly a change. Then again, I didn't have to worry about them kicking me out of my own company, did I?
Beyond this quibbling over details I largely agree with you. The open source model is great for development, but the financial implications are less clear. Certainly making a living selling $30 boxes ala RedHat is a more viable business model in a world with millions of cheap computers. Equally certainly it would've been madness back in the days when the number of potential buyers was in the hundreds or low thousands.
One of the interesting developments in today's open source world is that people who never meet can build a project and deliver software. That was nearly impossible back in the days of my youth. The OpenACS project numbers about 20 volunteers as of today. Ben and I have met a few times. Ben's met with Dan Wickstrom. None of the others have ever met face-to-face or talked on the phone.
Cheap connectivity and cheap cycles are what make this possible.
Another example is the PostgreSQL group, which never met face-to-face until the money people behind Great Bridge brought them together about a fifteen months ago.
So the world has certainly changed over the years. In 1975 I couldn't bring my laptop to a place that serves decent coffee and hang out, get wired, and work with Oracle. In Portland I could find decent coffee back in those days, but dragging along my VAX 11/780 was unthinkable.
In Boston all I could find was Dunking Donuts back then...today cheap laptops,good coffee, and rotaries with stop signs or traffic lights combine to make Boston a tolerable and reasonably safe town to visit!
aD University certainly isn't a web mill designed to churn out aD employees - a charitable view of the post suggesting this might be that the poster was confusing aD's bootcamps with aD University.
Though I must say that would be an exceptionally charitable view of the post that triggered your response...
Only recently has it
been possible for a couple of guys to do something huge like slashdot (for example).
Bullshit...in 1970 two people did something huge called Unix, on top of doing something much less huge (and with less sanguine effect upon future trends) called C.
Smallish engineering groups were the norm in the 1970s and throughout most of the 1980s. I was there and lived it, running my own company I might add.
This norm existed outside of IBM and other large companies. That exception still lives today, of course, in Microsoft, Oracle and other well-known companies.
What has changed is that our small groups can be distributed worldwide due to cheap connectivity, and we can work cheaply within our homes due to the fact that you can buy what once would've been considered a supercomputer for the cost of two nights in Amsterdam (well, considering that I like nice hotels rather than hostels).
The lowering of the economic barrier has made open source much more viable, not vice-versa. But for good folks, the need to work in large groups or to be a drone has never been a reality.
Perhaps you hang out with the wrong crowd, Philip.
You are absolutely right. A guy stole a paperback book from my unlocked car in my open garage a few years ago. As it happened I got up to pee and noticed the garage light on, saw him, and called 911.
The police - or more precisely their dog - found him hiding in the bushes with the book.
He ended up convicted of burglary III theft II and served about a month in county plus a year pro.
I freelance nature photography to the national magazine and book market on a very, very part-time basis.
I also have a website with scans of over 1,000 of my photos, which I make available for free for use by grassroots non-profits, students, individuals who want to use them on their own personal websites, etc.
Without copyright protection, I'd pull it down because I have no interest in seeing businesses, the press, government agencies etc using my photos without permission. I'd only let my scans or photos out of my personal possession after having signed an agreement strictly limiting usage by the recipient.
The only alternative would be to require visitors to my website to read and agree to terms of visitation, something I hate.
OK, the above ignores enforcement issues, but we're talking about whether or not I, as a photographer, have the right to decide who will use my photos gratis and who won't. I'm pretty generous about it, but by God it is *my* decision one way or the other.
Sure, I'm certain that there have been businesses, etc that have illicity used my photos without informing me, but that's a risk I've chosen to take. Again, it's *my* choice.
I'm curious if the writer of this article solely works for hire, or if he freelances or otherwise publishes in markets which allow the writer to maintain copyright (which makes resale possible)?
3. What does MySQL do if your sort doesn't fit in memory? Give up? Crash? Or use temp files?
Postgres supports tables which exceed the operating system file size limit. Many of us can't afford processors with more then 2 or 4 GB of RAM. I don't think the fact that Postgres will let me sort files that don't fit in memory is a weakness...
Of course in the web environment sort results are likely to be relatively small, in which case they'll fit in RAM just fine assuming you've set the postgres per-sort limit to a reasonably large value.
Again, in some cases being able to sort directly on indices does make a difference, in other cases it doesn't.
1&2. The BLOB interface is a bit clumsy, true. However as of PG 7.1 pg_dump will make consistent snapshots of databases containing BLOBS, which can then be restored. I don't really see the fact that you need to use the interface in a transaction as a bad thing, though people who are used to not using transactions (most MySQL users) might think it is. After all, if your BLOB insert dies you generally will want to roll back any related inserts...
The clunkiness of the BLOB interface isn't a big deal for most websites. Even if you're dealing in images, word files, etc the fact of the matter is that in a well-designed system the low-level details will be abstracted into a small set of routines. It does work...
6. The BLOB interface lets you import files directly, for instance those files that a client "downloads" from the web which are stuffed into a temp file by your webserver...
1 & 2: PG 7.1 (now in beta3) allows infinite length tuples, so you might want to reconsider that restriction, given that you're still in development and that PG 7.1 will be released in a very short time.
3: "order by" has to sort the output rows regardless, so sorting the indices alone doesn't help as much as you might think. This is particularly true if you're doing a "join" first. And merge joins result in an ordered set of output tuples which in some cases, at least, will match the "order by" sort requirements, meaning it can be left out altogether
4: PG 7.1 does...
5: True
6: Not quite sure what you want, here, but PG does support a fast "COPY" command to import data quickly.
7: True
8: PG 7.1 does...
9: True
10: Sourceforge recently migrated from MySQL to PG 7.1:)
I use VMWare for exactly the same reason, running my webserver+RDBMS under linux, and testing pages in a variety of browsers under both linux and Win98. By using a bridged virtual NIC as well, I can also test remote client sites from my VMWare window using Win98/MSIE while still running Linux.
When I got this laptop from Dell, I just installed Linux (which recognized everything except the soundcard, which I've not bothered to try to fix) then re-installed Win98 within VMWare and I was set!
At home I've got an old Windows box I use, with an Xserver, and a "headless" Linux box so don't use VMWare.
Folks I work with take care of testing with Mac/MSIE...
An open source alternative is exciting.
I wasn't aware of the trick of using Wine on a vmware disk image. That sounds interesting, I'll have to give it a try.
PostgreSQL, as distributed, comes configured with an 8KB blocksize, which effectively limits the size of varchar to a bit under that. However, you can configure it to use a blocksize of up to 32KB, which means you can handle the largest string Netscape will return from a textarea widget.
Among many other enhancements, PG 7.1, due for beta very shortly and the version Tim Perdue reviewed in his article, removes this restriction. You can have varchars (and other large types) of virtually any length - though at some cost in performance. Some types (like text) can also be compressed much as InterBase does with its text type.
While InterBase is a fine choice (the OpenACS project intends to port to InterBase if the politics surrounding it clear up, as well as continue to support PostgreSQL), let me clear up two misperceptions about PostgreSQL that you apparently hold:
1. PostgreSQL does run under NT. It runs under cygwin, and I have no personal experience running it under NT, but it does run under NT (and, yes, I do mean the server, not just various clients).
2. In PostgreSQL, writers never block readers, so your statement to the contrary is a factual error. InterBase and PostgreSQL use a very similar paradigm for the storing of actual data, and InterBase's "Multi-Generational" stuff is equivalent to PostgreSQL's "Multi-Variate Concurrency Control", or "MVCC" for short).
Again, I'm not disparaging your use of InterBase, a fine product that hopefully will survive the current political machinations that surround it. But I can't let your misconceptions about PostgreSQL pass without comment.
Uhhh...you can use Oracle 8i for DEVELOPMENT for free for as long as you want, or use an EVALUATION copy for 30 days.
But... when you deploy, you must pay. Read your licence, please. While this wouldn't bother me a lot, it might bother Larry's lawyer's, and if your resulting site's visible I suspect they'll notice. Since you've posted your URL on slashdot, the odds that they'll notice may be substantially greater than it was until you posted:)
The resulting lawsuit might not be terribly pleasant.
While you're free to do what you want, and while Oracle's not known for going after small-fry and seems to be much less obnoxious than MicroSoft in terms of license enforcement, folks should at least know that what you are proposing is a violation of your Oracle license.
At the risk of being redundant - deployment or other non-development, non-evaluation use = $$$.
Well, the effect of caching query plans, or pre-parsing or pre-compilation will depend heavily on the query. For a query doing many joins that return little data using tables with appropriate indices, optimization time most likely will be an expensive component of the total time of query execution.
On the other hand, a quick query on a single table might spend a fairly high percentage of the execution time in the parser, because the optimizer has few options to explore and the resulting execution is likely to be fast.
Preliminary tests by the person who put together the current test implementation of the query cache code reports about a 3x improvement in the execution of simple queries.
Here's a reason why your test of precompiled functions might not help as much as you'd expected: though the function itself is precompiled, the query you use to reference the function is not. The time required to parse and optimize this query might be enough to overcome the fact that the function itself is pre-compiled.
Also, you talk of "stored procedures". I don't use PG's stored SQL functions, only PL/pgSQL. Stored SQL functions might not be pre-compiled, I can't say one way or another.
I'm not sure exactly what you mean by "raw calls to table operations". I do know, though, that a PG plan consists of a tree of operations like "merge join", "indexed scan", etc. These are "table operations" and they're "raw", but they're complex table operations.
Sadly, I don't know if Postgres does ANY
pre-compiling of stored procedures. They have two main methods: straight named 'sql' statements, and 'psql' (a true stored procedure 'language'). My
guess is that they do little more than pre-parse the statment (if even that).
Commentary like this disgusts me, because the writer makes it clear he doesn't know anything about Postgres but merely presumes it's a poor implementation.
For the record, PL/pgSQL queries are pre-compiled, which is why there's no dynamic SQL capability in the language. You can create dynamic SQL from one of the other languages (pltcl, plperl) which exposes the SPI interface to the query engine to the user.
Work is under way to allow optional caching of individual query plans (i.e. by explicit statements), which allows one to avoid parsing and optimization overhead. When completed (7.2?) this will be great in the web environment.
I know little about Sybase so will avoid speculation about that RDBMS, might you be so kind as to avoid speculating about Postgres as well?
I do roughly the same thing, though it tends to be Oracle rather than MySQL.
I like to work in local coffee shops on my laptop.
Carrying around two laptops and the cable to connect them would be a drag. VMWare lets me do it all on one box, though testing MSIE under VMWare while running piggish Oracle under Linux requires a fair amount of memory (256MB works OK).
Cough ... have you ever heard of the Ottoman Empire? With their artillery and other technical military items unmatched by Europeans for a couple of centuries?
... we still fight over the teaching of evolution because so many Americans have a bizarre
...
Yes, eventually their fortunes turned as those of France, Russia and other nations rose. Of course,
those nations found their fortunes wane as well.
Rule Britannia! The sun never sets on the British Empire!
Of course, Bismark and the Prussians brought great power to Germany (and don't forget that the Turks were still a force to be reckoned with in WW I).
And those powers waned as well, leaving the US and
Russia as the two remaining superpowers after WW II.
Now, of course, there is only one. But before we get too full of ourselves and assume we'll remain the world's most dominant force forever, consider that our bizarre unflinching adherance to ancient religious law rivals that of fundamentalist Islams .
Let's see
unflinching adherance to a literal belief in Genesis. That's not the whole story but it's not a bad place to start
Well, actually he did. He laid out the proposed structure for all seven in the series before the first one was published.
He even laid out a rough schedule.
As good as he is, he does share one trait with most of his fellow software types, an inability to
generate a reasonable schedule.
All seven books were supposed to have been completed many years ago.
He's not only late, he's got three more volumes to go!
If the company felt it was going to win, it would've continued the case. This represents a victory by the FSF and the GPL. Remember that the company first refused to comply, went to court, and have now backed down and have agreed to comply. Someone scored a point here, and it wasn't the company that was in violation of the GPL.
No, the judge didn't rule since they settled out of court, but the solution - "fix it so it complies" - is undoubtably what the judge would've ordered if the FSF had pushed to the end and insisted on a full trial.
What do you imagine the FSF's goal to be in such a case? It appears that their notion of their goal is to force companies to comply with the license.
They've succeeded in this case.
No, they aren't. They are claiming that their agreement with Monty and David grant them the right to use the trademark in various ways, including within a domain name. The statute you cite doesn't prevent a trademark owner from granting such rights.
There seem to be two parts to their disagreement that are legally pertinent (though IANAL):
1. MySQL claims the only agreement that has existed is the preliminary agreement and that it is no longer in force. NuSphere claims otherwise.
2. MySQL claims that the preliminary agreement didn't grant NuSphere the right to use their trademark in this way, regardless of whether or not it is still in force. NuSphere disagrees.
NuSphere's *not* claiming they have the right to use MySQL's trademark absent any agreement with MySQL. Rather they claim that they've been granted that right, a very different thing.
The courts, not Slashdot, will decide whose interpretation of the preliminary agreement is correct, of course, and whether or not any statements or promises by either side outside of that agreement are binding.
Unless they can find a way to settle out of court, of course...
Huh ... I live in Portland, too, and have had Qwest DSL for about two years. I had no problem signing up to use my ISP (Pacifier), just filled in the form on the web page.
Of course things may've changed in the past two years. They stopped handing out Cisco 675's like candy, that's for sure (a friend ended up by two, they couldn't figure out how to set up a return even though he called them about it).
I had some problems the first winter, but I'm 17500 yards from the CO and my decibel level had dropped far below their qualification cutoff. They upgraded equipment in the CO before the next winter came along and I've had no problems since. Been down once in the last 15 months or so, for a couple of hours.
For $29.95 a month and no need for a second phone line (I work out of my home) I'm not complaining. 640 kbs down and 256 kbs up, good enough for my needs.
MySQL and Oracle in the same sentence? I don't think you understand the issues, frankly.
MySQL vs. Oracle is a bit like me vs. Michael Jordan on the basketball court.
SAP DB is a full-featured industrial-strength RDBMS system.
Sap DB has many features and administrative tools still lacking in PostgreSQL.
Try real archiving and replication, for instance. Being able to specify where to allocate tables and indices without using "ln -s". An overwriting storage manager so you don't need to VACUUM nightly (or hourly as some do on very busy systems).
That just scratches the surface.
Yes, PG is vastly improved and I'm a big fan. And much of the above list is scheduled for PG 7.2. But today it's PG 7.1 and PG doesn't have these features.
OpenACScurrently is supporting Oracle and PostgreSQL with our upcoming OpenACS 4.x product. Sap DB is very likely to become the third RDBMS we support with the toolkit.
I'm amazed that no one has mentioned the quick shot in sneakers of them going through the trash of one of the geeks working for the bad guys. The quick flash of a "Captain Crunch" box on the screen caused me to convulse with laughter, much to the bemusement of others in the theater. "Captain Crunch", the original star of the phone phreaking world, an ultimate insiders joke flashed on screen for a couple of seconds with no further mention.
There were other inside jokes of this sort planted throughout the movie. They seemed to be making the point that their technical advisor really *did* understand this stuff even if they'd turned it into a hollywood fantasy in order to entertain the masses.
This helped Unix as well, BTW. The world learned about Unix on PDP-11s and it was distributed on RK05 disks, not the 'net, with source available for universities or non-profits (like my group) for $200. Of course, Unix wasn't discovered by all that many folks until the VAX came out, but the popularity of DEC minicomputers within the university environment had quite a bit to do with its popularity. Along with the availability of the source, even if AT&T's lawyers were a bit intimidating (we asked one favor of them in 1975 and never bothered again after reading their response).
Of course the fact that the PDP-11 was the first minicomputer with an instruction set designed to make compilers for it simple didn't hurt at all, either.
Now ... there wasn't much money to be made by starting a small third-party software company in those days (when I was a teenager one of my software products owned 10% of the PDP-8 market, closer to 50% of those not humping bits on the factory floor, but at the time only 3,000 PDP-8s had been built). At the time it was pretty clear that one could do better financially by working for a major manufacturer's software engineering department. But opportunities to do what you wanted were there for those willing to take the risk and the fact that the rewards were modest.
There were no VCs running around minicomputer land offering to dump $35M in your lap, that's certainly a change. Then again, I didn't have to worry about them kicking me out of my own company, did I?
Beyond this quibbling over details I largely agree with you. The open source model is great for development, but the financial implications are less clear. Certainly making a living selling $30 boxes ala RedHat is a more viable business model in a world with millions of cheap computers. Equally certainly it would've been madness back in the days when the number of potential buyers was in the hundreds or low thousands.
One of the interesting developments in today's open source world is that people who never meet can build a project and deliver software. That was nearly impossible back in the days of my youth. The OpenACS project numbers about 20 volunteers as of today. Ben and I have met a few times. Ben's met with Dan Wickstrom. None of the others have ever met face-to-face or talked on the phone.
Cheap connectivity and cheap cycles are what make this possible.
Another example is the PostgreSQL group, which never met face-to-face until the money people behind Great Bridge brought them together about a fifteen months ago.
So the world has certainly changed over the years. In 1975 I couldn't bring my laptop to a place that serves decent coffee and hang out, get wired, and work with Oracle. In Portland I could find decent coffee back in those days, but dragging along my VAX 11/780 was unthinkable.
In Boston all I could find was Dunking Donuts back then...today cheap laptops,good coffee, and rotaries with stop signs or traffic lights combine to make Boston a tolerable and reasonably safe town to visit!
Though I must say that would be an exceptionally charitable view of the post that triggered your response...
Smallish engineering groups were the norm in the 1970s and throughout most of the 1980s. I was there and lived it, running my own company I might add.
This norm existed outside of IBM and other large companies. That exception still lives today, of course, in Microsoft, Oracle and other well-known companies.
What has changed is that our small groups can be distributed worldwide due to cheap connectivity, and we can work cheaply within our homes due to the fact that you can buy what once would've been considered a supercomputer for the cost of two nights in Amsterdam (well, considering that I like nice hotels rather than hostels).
The lowering of the economic barrier has made open source much more viable, not vice-versa. But for good folks, the need to work in large groups or to be a drone has never been a reality.
Perhaps you hang out with the wrong crowd, Philip.
You are absolutely right. A guy stole a paperback book from my unlocked car in my open garage a few years ago. As it happened I got up to pee and noticed the garage light on, saw him, and called 911.
The police - or more precisely their dog - found him hiding in the bushes with the book.
He ended up convicted of burglary III theft II and served about a month in county plus a year pro.
I freelance nature photography to the national magazine and book market on a very, very part-time basis.
I also have a website with scans of over 1,000 of my photos, which I make available for free for use by grassroots non-profits, students, individuals who want to use them on their own personal websites, etc.
Without copyright protection, I'd pull it down because I have no interest in seeing businesses, the press, government agencies etc using my photos without permission. I'd only let my scans or photos out of my personal possession after having signed an agreement strictly limiting usage by the recipient.
The only alternative would be to require visitors to my website to read and agree to terms of visitation, something I hate.
OK, the above ignores enforcement issues, but we're talking about whether or not I, as a photographer, have the right to decide who will use my photos gratis and who won't. I'm pretty generous about it, but by God it is *my* decision one way or the other.
Sure, I'm certain that there have been businesses, etc that have illicity used my photos without informing me, but that's a risk I've chosen to take. Again, it's *my* choice.
I'm curious if the writer of this article solely works for hire, or if he freelances or otherwise publishes in markets which allow the writer to maintain copyright (which makes resale possible)?
3. What does MySQL do if your sort doesn't fit in memory? Give up? Crash? Or use temp files?
...
...
...
...
Postgres supports tables which exceed the operating system file size limit. Many of us can't afford processors with more then 2 or 4 GB of RAM. I don't think the fact that Postgres will let me sort files that don't fit in memory is a weakness
Of course in the web environment sort results are likely to be relatively small, in which case they'll fit in RAM just fine assuming you've set the postgres per-sort limit to a reasonably large value.
Again, in some cases being able to sort directly on indices does make a difference, in other cases it doesn't.
1&2. The BLOB interface is a bit clumsy, true. However as of PG 7.1 pg_dump will make consistent snapshots of databases containing BLOBS, which can then be restored. I don't really see the fact that you need to use the interface in a transaction as a bad thing, though people who are used to not using transactions (most MySQL users) might think it is. After all, if your BLOB insert dies you generally will want to roll back any related inserts
The clunkiness of the BLOB interface isn't a big deal for most websites. Even if you're dealing in images, word files, etc the fact of the matter is that in a well-designed system the low-level details will be abstracted into a small set of routines. It does work
6. The BLOB interface lets you import files directly, for instance those files that a client "downloads" from the web which are stuffed into a temp file by your webserver
Let's see ...
...
...
:)
1 & 2: PG 7.1 (now in beta3) allows infinite length tuples, so you might want to reconsider that restriction, given that you're still in development and that PG 7.1 will be released in a very short time.
3: "order by" has to sort the output rows regardless, so sorting the indices alone doesn't help as much as you might think. This is particularly true if you're doing a "join" first. And merge joins result in an ordered set of output tuples which in some cases, at least, will match the "order by" sort requirements, meaning it can be left out altogether
4: PG 7.1 does
5: True
6: Not quite sure what you want, here, but PG does support a fast "COPY" command to import data quickly.
7: True
8: PG 7.1 does
9: True
10: Sourceforge recently migrated from MySQL to PG 7.1
Postgres has had transactions for decades.
Postgres has had row-level locking for two years.
Postgres has had some form of nested selects for some time (can't remember which release).
Postgres has had referential integrity checking since PG 7.0 (a year? I forget)
You're correct about Oracle being the "big gorilla" in the house, though.
Yes, Postgres 7.1 supports LEFT, RIGHT, and FULL outer joins. It's still in beta but it's been running Sourceforge for a month ...
Oh, heck, I wrote a PDP-8 emulator that ran on the PDP-11. It was faster than a PDP-5 (the PDP-8's compatible predecessor).
... sorry, it's not available, I wrote it 28 years ago.
I'm not kidding
I use VMWare for exactly the same reason, running my webserver+RDBMS under linux, and testing pages in a variety of browsers under both linux and Win98. By using a bridged virtual NIC as well, I can also test remote client sites from my VMWare window using Win98/MSIE while still running Linux.
When I got this laptop from Dell, I just installed Linux (which recognized everything except the soundcard, which I've not bothered to try to fix) then re-installed Win98 within VMWare and I was set!
At home I've got an old Windows box I use, with an Xserver, and a "headless" Linux box so don't use VMWare.
Folks I work with take care of testing with Mac/MSIE...
An open source alternative is exciting.
I wasn't aware of the trick of using Wine on a vmware disk image. That sounds interesting, I'll have to give it a try.
PostgreSQL, as distributed, comes configured with an 8KB blocksize, which effectively limits the size of varchar to a bit under that. However, you can configure it to use a blocksize of up to 32KB, which means you can handle the largest string Netscape will return from a textarea widget.
Among many other enhancements, PG 7.1, due for beta very shortly and the version Tim Perdue reviewed in his article, removes this restriction. You can have varchars (and other large types) of virtually any length - though at some cost in performance. Some types (like text) can also be compressed much as InterBase does with its text type.
1. PostgreSQL does run under NT. It runs under cygwin, and I have no personal experience running it under NT, but it does run under NT (and, yes, I do mean the server, not just various clients).
2. In PostgreSQL, writers never block readers, so your statement to the contrary is a factual error. InterBase and PostgreSQL use a very similar paradigm for the storing of actual data, and InterBase's "Multi-Generational" stuff is equivalent to PostgreSQL's "Multi-Variate Concurrency Control", or "MVCC" for short).
Again, I'm not disparaging your use of InterBase, a fine product that hopefully will survive the current political machinations that surround it. But I can't let your misconceptions about PostgreSQL pass without comment.
Uhhh...you can use Oracle 8i for DEVELOPMENT for free for as long as you want, or use an EVALUATION copy for 30 days.
... when you deploy, you must pay. Read your licence, please. While this wouldn't bother me a lot, it might bother Larry's lawyer's, and if your resulting site's visible I suspect they'll notice. Since you've posted your URL on slashdot, the odds that they'll notice may be substantially greater than it was until you posted :)
But
The resulting lawsuit might not be terribly pleasant.
While you're free to do what you want, and while Oracle's not known for going after small-fry and seems to be much less obnoxious than MicroSoft in terms of license enforcement, folks should at least know that what you are proposing is a violation of your Oracle license.
At the risk of being redundant - deployment or other non-development, non-evaluation use = $$$.
Well, the effect of caching query plans, or pre-parsing or pre-compilation will depend heavily on the query. For a query doing many joins that return little data using tables with appropriate indices, optimization time most likely will be an expensive component of the total time of query execution.
On the other hand, a quick query on a single table might spend a fairly high percentage of the execution time in the parser, because the optimizer has few options to explore and the resulting execution is likely to be fast.
Preliminary tests by the person who put together the current test implementation of the query cache code reports about a 3x improvement in the execution of simple queries.
Here's a reason why your test of precompiled functions might not help as much as you'd expected: though the function itself is precompiled, the query you use to reference the function is not. The time required to parse and optimize this query might be enough to overcome the fact that the function itself is pre-compiled.
Also, you talk of "stored procedures". I don't use PG's stored SQL functions, only PL/pgSQL. Stored SQL functions might not be pre-compiled, I can't say one way or another.
I'm not sure exactly what you mean by "raw calls to table operations". I do know, though, that a PG plan consists of a tree of operations like "merge join", "indexed scan", etc. These are "table operations" and they're "raw", but they're complex table operations.
Commentary like this disgusts me, because the writer makes it clear he doesn't know anything about Postgres but merely presumes it's a poor implementation.
For the record, PL/pgSQL queries are pre-compiled, which is why there's no dynamic SQL capability in the language. You can create dynamic SQL from one of the other languages (pltcl, plperl) which exposes the SPI interface to the query engine to the user.
Work is under way to allow optional caching of individual query plans (i.e. by explicit statements), which allows one to avoid parsing and optimization overhead. When completed (7.2?) this will be great in the web environment.
I know little about Sybase so will avoid speculation about that RDBMS, might you be so kind as to avoid speculating about Postgres as well?