Fixing low command error distances
Suppose that you have a command with an unnervingly low error distance , either because a vendor stuck you with it orbecause it's the natural way to structure the command's arguments.The way to fix this is to change the sort of error required to makea mistake, so that you move from a likely change to an unlikely one.
(If you are working with a vendor command, you will need to do thiswith some sort of a cover script or program. If you are working witha
An update to the ZFS excessive prefetching situation
A while back I wrote about how I had discoveredthat ZFS could wind up doing excessive readahead when faced with manystreams of sequential read IO and wind up throwing 90% to 95% ofthe IO that it had done (with terrible consequences for applicationperformance). It's time for an update on that situation.
First, for various reasons we wound up moving to Solaris server machineswith 8 GB of memory (SunFire X2200s instead of X2100s)
Another problem with SSL identities
On top of SSL's general issue there is apractical problem with how SSL information is presented in browsers, onethat makes it very difficult for anyone except very technical people toactually meaningfully verify who a SSL certificate is issued to.
The issue is simple: browsers normally only show you the name of theorganization that the SSL certificate is issued to. But organizationnames are not unique , especially not across the entire world, whichmeans that just the organization name alone tells people less than theythink it does.
Why noting security fixes in Linux kernel changelogs doesn't really help
People periodically ask for the Linux kernel commit messages andchangelogs to mark changes that are security fixes, generally sothat they can easily know that they need to cherry-pick just thosefixes into their own kernel versions. Ignoring the higher levellevel issues with this for the moment, there are at least threepractical difficulties:
- not all security fixes are recognized as such at the time; sometimeseven the people making a change think that they are just fixingan ordinary bug, and the security implications are only recognizedlater.
What you select for when you make something harder
There is a general belief that when you make it harder for people to dosomething, you will get better results; better bug reports, better blogcomments, and so on. This is simplistic and, I am convinced, false inpractice.
The basic principle is simple: when you make things harder, you do notselect for quality; you select for people who care enough .
(Well, not entirely; you also select for people with lots of spare timeand for people who don't realize how
An illustration of why syntactic sugar matters
Consider a couple of imaginary languages with different approaches tohandling simple structured data :
- in the first language, anonymous structured objects are created with
obj = {'field1': value1, 'field2': value2}and then accessed withobj['field1']. - in the second language, anonymous structured objects are created with
obj = {:field1 = value1, :field2 = value2}and then accessed withobj.field1.
(Both languages also support the
The problem with using tuples and lists to hold structures
If you need to hold several bits of data about something in Python, it'sawfully tempting to just put everything into a tuple or a list and bedone with it; it's certainly the easiest way, and so crops up often .
(I've read that that Pythonic way to decide between a list and a tupleis whether or not the data is all the same type, in which case you use atuple, or different types, in which case you use a list. I don
Thinking about the best way to handle command registration
Suppose that you have a Python utility program that does a number ofrelated things; it's invoked as ' program command .... ', and decideswhat to do based on what the command is. The obvious way to implementthis in Python is to have a function for each command and a top-leveldispatcher that looks up the function to call for each command andpasses it the arguments to process. Clearly you don't want to hard-codethis in the dispatcher function in a big
Another reason to avoid having comments
To go with my previous thoughts about the purposes of comments , here is another reason that people might want to nothave them on their blog: they eat your limited time.
In a sense, comments on your blog carry with them an implicit duty toreply; while you can skip this, it may look odd andcause bad reactions. However, comments that you write will probably getless of an audience than a new entry. So if you only have a limitedamount of time to write things for your blog
Why your blog comments have less of an audience than new blog entries
Expanding on a remark in the previous entry : Ithink there are several reasons why your comments are likely to get lessof an audience than new entries. First, in most blog setups new commentsare less obvious to readers than new entries, as your readers have to goback by hand to look for them. This is especially so if people are onlyinterested in a few comments.
It's possible to work around this with a different blog layout, but itdoes mean a moderately radical change from how people