Saying that 99% of users don't need them is not right. 99% of users can use workarounds.
Triggers are important for data consistency but also for scalability. For instance with large databases, SELECT COUNT(*)... WHERE... just doesn't scale (with any database, not only MySQL). Even if indexes are used, the more records you have, the longer the query will be. First the database will be snappy and 2 years later, it will crawl.
With triggers, you can keep the number of matching items in a table. The triggered function will just UPDATE a field with +1 or -1 when data is inserted or deleted. Fetching the result will be as fast with 100000000000 records as with 10 records.
So many times I've seen databases requiring very beefy hardware just to compute statistics, while if triggers were used, the same statistics would be immediate and maintained in real-time.
Roundcube follows the lousy Outlook-like way of quoting messages when replying to mails. TOFU. This is really, really, really annoying, especially with mailing-lists.
Bells and whistles are fun, but please start with implementing the base of an email client : proper quoting and bottom-posting.
Firefox is a huge and complex piece of code. And in such a beast, it's difficult to avoid bugs.
But check facts, ie. what really happens to Firefox and to IE users.
In the real life, IE users quickly get tons of spywares. Auto-installing spywares for Firefox could be made, but they don't really exist, except as proofs of concept. It doesn't mean that the Firefox code is safe, but since IE remains the primary target, FIrefox users don't suffer as much as IE users from vulnerabilities.
$ uname -a OpenBSD ufo.orbus.fr 3.7 GENERIC.MP#0 i386
$ find/usr/src/sys -name '*.c' -or -name '*.h' -exec grep "belong here" {} \; /* XXX: does not belong here */ * XXX FIXME: probably does not belong here * XXX FIXME: probably does not belong here /* XXX FIXME this does not belong here */ #define IEEEPROTO_802LLC 3/* doesn't belong here */
The dfports system is not recommended any more, because it is very painful to add specific DragonFlyBSD tweaks.
DragonFlyBSD efforts are now focusing on pkgsrc. So, please use pkgsrc instead of FreeBSD ports.
Most ports are properly working. And the whole system is definitely ready for production (and documented as such) as long as you stick with the stable branch (even PREVIEW is usually rock solid).
The HEAD branch is a fast moving target, especially these days since huge work on the core infrastructure is being made. And of course, *this* branch is only for developpers, just like the current branch of any operating system.
Our web site serves about 3 millions pages a day on two gigabit links. The balancing rules are quite complex since the content is splitted on multiple servers and SANs.
We use software load balancers: Zeus ZXTM on Gentoo Linux.
The nice thing about software load balancers is that you can easily replace the hardware if it fails. Having a spare PC is way cheaper than a spare load balancer.
We are very pleased with ZXTM so far. Very reliable, fast, and very flexible. It uses a PHP-like scripting language to process requests and you can really handle any specific backend architecture with that.
Installing Linux of a laptop is easy, especially with ditributions like Ubuntu. The fact that Linux comes preinstalled or not with the hardware doesn't matter IMHO.
But once Linux is installed, the difficult part is to *use* it. Installing new software and making it work properly is not trivial. Even with GUIs like Synaptic, using any Linux distribution requires Unix knowledge. You can't use (upgrade/customize/etc) a Linux workstation without using a terminal for instance.
So for a newbie or for my parents, I'd never recommend a laptop running Linux (preinstalled or not).
For a file server, it depends... If you don't need performance and high availability, why not. But if you need speed and atomic or journaled filesystems, there is still nothing in the *BSD world. And even with UFS2 you are still limited in the number of links a directory can have. So for a file server, Linux is probably still the best choice.
There's some hope with DragonFlyBSD, though. A journaling layer has recently been added to the kernel and we can hope to get real high availability in DragonFlyBSD very soon (live offsite mirroring / point in time recovery).
When pf was limited to basic filtering (in the OpenBSD 2.9-current days), a port to Linux could have been easy.
But now, pf has many features that are deeply tied with the BSD network stack, and it would require a lot of work:( Even other BSDs ship with incomplete or old versions of pf.
Only DragonFlyBSD almost got it.
OpenBSD-current users already have PostgreSQL 8.1 in the ports tree :)
"Think of NetBSD like a continuation of FreeBSD 4.x more" No, no, no, no. The continuation of FreeBSD 4.x is DragonFlyBSD.
NetBSD 3.0 is also coming in a few weeks (end of November).
Saying that 99% of users don't need them is not right. 99% of users can use workarounds.
... WHERE... just doesn't scale (with any database, not only MySQL). Even if indexes are used, the more records you have, the longer the query will be. First the database will be snappy and 2 years later, it will crawl.
Triggers are important for data consistency but also for scalability. For instance with large databases, SELECT COUNT(*)
With triggers, you can keep the number of matching items in a table. The triggered function will just UPDATE a field with +1 or -1 when data is inserted or deleted. Fetching the result will be as fast with 100000000000 records as with 10 records.
So many times I've seen databases requiring very beefy hardware just to compute statistics, while if triggers were used, the same statistics would be immediate and maintained in real-time.
Wow, triggers and stored procedures. MySQL really does innovation.
Although there is no native build for OpenBSD yet, OpenOffice.org 2.0 runs fins on OpenBSD through Linux emulation.e _on_openbsd
Here are instructions to run it on OpenBSD: http://www.00f.net/php/show-article.php/openoffic
The OpenBSD port can be downloaded from ftp://ftp.00f.net/misc/port-dspam-3.6.0.tar.gz
Roundcube follows the lousy Outlook-like way of quoting messages when replying to mails. TOFU. This is really, really, really annoying, especially with mailing-lists.
Bells and whistles are fun, but please start with implementing the base of an email client : proper quoting and bottom-posting.
Mutt does all of this.
Firefox is a huge and complex piece of code. And in such a beast, it's difficult to avoid bugs.
But check facts, ie. what really happens to Firefox and to IE users.
In the real life, IE users quickly get tons of spywares. Auto-installing spywares for Firefox could be made, but they don't really exist, except as proofs of concept. It doesn't mean that the Firefox code is safe, but since IE remains the primary target, FIrefox users don't suffer as much as IE users from vulnerabilities.
Why has parent been mod'ed down?
Check facts, this is true.
Microsoft also sells boxes like those?
I usually use tons of "* html" css hacks to in order to add workarounds for IE.
Does anyone know whether "* html" styles will still apply to IE 7?
Is there any CSS way to apply IE 7 -specific rules?
If each page needs around a hundred or more queries, your application was very badly designed.
You need to use caches, like Smarty, PEAR::Cache, AdoDB cache or Skycache.
Even cheaper and faster, you can get a Syskonnect NIC.
The dfports system is not recommended any more, because it is very painful to add specific DragonFlyBSD tweaks.
DragonFlyBSD efforts are now focusing on pkgsrc. So, please use pkgsrc instead of FreeBSD ports.
Most ports are properly working. And the whole system is definitely ready for production (and documented as such) as long as you stick with the stable branch (even PREVIEW is usually rock solid).
The HEAD branch is a fast moving target, especially these days since huge work on the core infrastructure is being made. And of course, *this* branch is only for developpers, just like the current branch of any operating system.
Now we are waiting for IE to support the ACID2 test.
And only then, we could design web sites using today's CSS features. Oh, not today's, 5 years ago's but it will still be a revolution.
Our web site serves about 3 millions pages a day on two gigabit links. The balancing rules are quite complex since the content is splitted on multiple servers and SANs. We use software load balancers: Zeus ZXTM on Gentoo Linux. The nice thing about software load balancers is that you can easily replace the hardware if it fails. Having a spare PC is way cheaper than a spare load balancer. We are very pleased with ZXTM so far. Very reliable, fast, and very flexible. It uses a PHP-like scripting language to process requests and you can really handle any specific backend architecture with that.
Installing Linux of a laptop is easy, especially with ditributions like Ubuntu. The fact that Linux comes preinstalled or not with the hardware doesn't matter IMHO.
But once Linux is installed, the difficult part is to *use* it. Installing new software and making it work properly is not trivial. Even with GUIs like Synaptic, using any Linux distribution requires Unix knowledge. You can't use (upgrade/customize/etc) a Linux workstation without using a terminal for instance.
So for a newbie or for my parents, I'd never recommend a laptop running Linux (preinstalled or not).
export FORCE_UPDATE=Yes
make update
Sure, this is very difficult.
For a file server, it depends... If you don't need performance and high availability, why not.
But if you need speed and atomic or journaled filesystems, there is still nothing in the *BSD world. And even with UFS2 you are still limited in the number of links a directory can have. So for a file server, Linux is probably still the best choice.
There's some hope with DragonFlyBSD, though. A journaling layer has recently been added to the kernel and we can hope to get real high availability in DragonFlyBSD very soon (live offsite mirroring / point in time recovery).
When pf was limited to basic filtering (in the OpenBSD 2.9-current days), a port to Linux could have been easy.
:( Even other BSDs ship with incomplete or old versions of pf.
But now, pf has many features that are deeply tied with the BSD network stack, and it would require a lot of work