More on the funding capture problem
The usual rejoinder to the funding capture problem is that organizations will still have to actto in order to stay meaningful and important. If an organization doesnothing, outside people will come to see it as unimportant, useless, andmeaningless, resulting in the people funding it winding up not gettinganything for their money, so they'll stop paying. After all, why pay forsomething that gives you no benefits?
(Let us skip lightly over all of the practical difficulties here,starting with organizational inertia.)
Our answer to the ZFS SAN failover problem
A while back I wrote about the ZFS SAN failover problem , and recently a commentator asked what we'vedecided to do about it. Our current answer to the problem is simple butsomewhat brutal: we're not going to do failover as such.
We're still including basic support for failover in our NFS serverenvironment, things like virtual fileserver IPs and a naming conventionfor ZFS pools that includes what fileserver they are part of, but we'renot trying to build any explicit failover support, especially
SSL does not create trust
One of the stories that people tell about SSL on the web is that proper,valid SSL certificates create trust (and thus do all sorts of goodthings, like facilitating Internet commerce). This is, how shall I sayit, not actually true.
Here's how SSL certificates fail to create trust:
- simply having an SSL certificate doesn't mean you're especiallytrustworthy, because anyone can get an SSL certificate.
- you might be able to trust an identity that's guaranteed by SSL,except
First impressions of using DTrace on user-level programs
I've finally gotten around to trying out DTrace, and I have to say thatit actually is pretty cool so far. I haven't used it on kernel sidestuff, just to poke at user programs, for which it makes a nice printbased debugger ; it's easy topoint DTrace at a process and see what's going on (easier than attachinga debugger and getting anywhere in my opinion), and you have a bunch ofinteresting analysis options, none of which require you to
A performance gotcha with syslogd
Stated simply: many versions of syslogd will fsync() logfiles afterwriting a messages to them, in an attempt to make sure that the messagemakes it to disk in case something happens to the system immediatelyafterwards (crashes, loses power, etc). This obviously can have animpact (sometimes a significant one) on any other IO activity going onat the time.
On some but not all systems with this feature, you can this off forspecific syslog files by sticking a ' - ' in front of
One reason that it is so hard to challenge Google
Chris Linfoot has been reacting toCuil, and in the process he shows one somewhat unexpected reasonthat it is so hard for a new search engine to challenge Googletoday. Not only do you have to build the necessary software andinfrastructure, but it is crucial that your web spider be completely , utterly well behaved.
If your spider is not completely well behaved, peoplewill notice, talk about it, and then block you . This results in youhaving less data to build your search results on and likely worsen the
A crude system verification method
Suppose that you have a system that you are not entirely confidantof, and you want to look to see if bits of it have been modified fromstock. The easiest way is to use your packaging system's verificationsupport , but let us suppose that your packagesystem doesn't have support for this (or at least that the support isoptional and not installed at the moment).
If you happen to have another theoretically identical system lyingaround (as we do), you can do a crude system
SSL's identity problem
One of the many problems of SSL, especially on the web, is thatit gets its idea of identity wrong (in practice, in actualimplementations). SSL's version of identity is all tied to abstruse X.509 things, all CN and O andOU and so on, but on the real Internet, users don't think of identitythat way; they think of identity as websites, or more exactly of somepersonal label that they have for the entity that stands behind awebsite
What is guaranteed in languages in practice
In theory, what is guaranteed in a language is the things that arein its (official) specification; if the specification is silent orsays that something is not guaranteed, it isn't, regardless of howimplementations behave.
More and more I have come to believe that this is mistaken, and that inpractice what is guaranteed in a language is what programmers code to,regardless of what the specification says. This is because of simplepragmatics: a new implementation that does not run most of the existingcode
Another advantage of Python builtins
I've talked before about the speed advantage that Python builtins have . But speed isn't the only way that Pythonprivileges things written at the C level; as dict.setdefault() illustrates , Python makes a usefulatomicity guarantee for them that it does not make for methods writtenin Python itself.
Does this guarantee matter? I think that it does, because it issimultaneously useful and cheap. A concurrent program can avoid lockingwhen dealing with shared data built carefully from builtin types, andduplicating the effects