Monday, July 31, 2006

Biodeterrence

Today the Washington Post ran an article on human-engineered viruses (registration might be required). While I certainly wouldn't want to discount the threat posed by bioweapons, it seems the press at least is prone to viewing threats in a overly compartmentalized fashion. To protect ourselves from bioweapons, we need stockpiled antivirals or other biological countermeasures, or laws to restrict the proliferation of the technology.

What seems to be ignored, though possibly not by the policy-makers, is the fact that the best way to protect ourselves against bioweapons is to prevent them from being used. Non-proliferation is definitely part of this, but one that is ultimately futile. The genie, as the cliche goes, is notoriously difficult to put back in the bottle.

We have at our disposal a considerably more effective deterrent. Consider that some country, let's call it Malignia, decides it wants to support a war of terror against the United States. Malignia manages to develop or acquire a biological weapon. If Malignian-sponsored terrorists sneak this weapon into this country and release it, it could spread very quickly causing millions or tens of millions to become severely ill or die. In response, we could launch a nuclear strike against Malignia that would completely obliterate its population.

The ability to pursue a disproportionate response to any potential attack from a terrorist state automatically gives us a strategic advantage, and is the nature of deterrence. It would be foolish to ignore this deterrent capacity in any consideration of how to prevent biological attacks.

Wednesday, July 19, 2006

Medieval Pandering Vote-Whores

Here's what the House leadership considers the nation's vital business:

The House, citing the nation's religious origins, voted Wednesday to protect the Pledge of Allegiance from federal judges who might try to stop schoolchildren and others from reciting it because of the phrase "under God." [Associated Press]

Let's be clear about this. Our politicians don't think this is important, they think it will be popular. It's a bold move of stating how courageous they are to take a position with which most of their constituents agree and which addresses no real threat. Whether or not you agree with the phrase "under God" being in the pledge (dating only as far back as the McCarthy witch-hunt era), this is a waste of time designed to do nothing but garner votes in November. The legislation is, in fact, completely irrelevant. The Pledge was established by Congress, and the debated phrase was added by Act of Congress in 1954, so if the Pledge is unconstitutional without this new bill, it will still be unconstitutional with it.

This kind of legislation shows absolutely no respect for the intelligence of the voters. It's pure pandering. And it works. Our Congressional representation, in both parties, has been treating us like children or idiots, and will continue to do so as long as we keep rewarding them for it by repeatedly returning them to their elected positions.

Show the vote-whores that you've had enough of their pandering. The sponsors and co-sponsors of this legislation can be found at thomas.loc.gov for the House and Senate.

Saturday, July 15, 2006

Net Neutrality, On The Record

While looking through The Congressional Record today for interesting items for my new blog Lying Scum-Weasels, I came upon this interesting speech by Sen. Ron Wyden (D-OR) about network neutrality. In it, he presents three examples of anti-competitive scenarios that could (though, of course, might not) occur if telcos were allowed to discriminate against certain traffic in the way permitted by the legislation that recently passed the House and is under consideration in the Senate. I found it remarkably readable and reasonable as a representation of the potential issues. It is not overly technical, yet does not condescend to the audience.

Naturally, network neutrality is a complicated issue, as most issues debated in Congress are. Neutrality and discrimination can mean different things, and for a broader discussion of the types of network discrimination that are possible, I recommend Ed Felten's paper. It's ten pages, and features a handy "Take-home lesson" at the end of each section.

A Random Tip for Embedding Python

I learned this one the hard way. I'm working on a simulator, written in C++ and using embedded Python for the interpreter. It works great, except that the arrow keys spew escape codes rather than allowing line or history editing.

I poured through Extending and Embedding the Python Interpreter. An afternoon of searching on google turned up nothing. I looked for "embedded python," "arrow keys," "readline," "escape codes," and anything else I could think of in varying combinations.

The solution was ultimately to RTFS. I downloaded the source for the version on the machine I have at work (2.2.3) and the latest release (2.4.3). The solution, found in Py_Main() in the latter, was to import the readline module in my own program before calling PyRun_InteractiveLoop().

It's simple enough, and perfectly sensible. Why the hell couldn't it be mentioned in the documentation, though?

In any event, hopefully by posting this here I will have made life a little easier for the next poor soul who finds himself googling for how to get the arrow keys to work in embedded Python.

Thursday, July 13, 2006

Slightly Belated Farewell

I've got a clan of gingerbread men.
Here are men,
There are men,
Lots of gingerbread men.
Take a couple if you wish,
They're on the dish.

Saturday, July 08, 2006

IDT are Scum-Sucking Bastards

I tried to make a phone call today to a friend who doesn't live that far away, but far enough to be a regional call, rather than local, so that it's handled by my regional/long-distance carrier, IDT. After dialing, I get a recorded message that my call was "unauthorized," and that I should call IDT's customer service line for more information. I call, and the automated system reports that my service was terminated on April 30th.

Note that in this little saga, IDT never notified me that they were terminating my service, though I know why. I know because they've done this to me before.

See, IDT has this policy that if you haven't made any calls for something like two months, they "assume" that you've switched long-distance carriers. The fact that they keep sending me bills for $3.95 plus taxes and fees, and I keep paying them, and no other company has told them that I've switched providers, doesn't seem to matter. Oh, and the only way to know that this is their policy is for it to happen to you. At least I haven't been able to find anything else. In fact, their comparison chart showing a couple of their plans against competitors' plans claims there's no minimum calling for this plan.

Once they've stopped your service, the only way to get it back is to call, wait who-knows-how-long, and talk directly with a human being. And then, you still have to wait several days for service to be restored.

Since my local provider (Verizon) offers the same long-distance rate with the same monthly fee, I'll be switching my service over to them. That is, assuming they don't have an inactive termination policy as well. If they do, it's pre-paid calling cards from now on. That, or actually get a cell phone. Since I can't trust anything online, and have to ask a human being to be certain, I can't even switch my service until Monday, at which point I'll still probably have a wait of several days. Unless Verizon don't have their heads up their asses.

I'm certainly not giving those bastards at IDT any more of my money.

Update, 7/10: Verizon do not, it would seem, have their heads up their asses.

Tuesday, June 06, 2006

What is This World Coming To?

I just went through all of the negative reviews for the remake of The Omen on rottentomatoes.com, and not one of them referred to any of the actors as a "devilled ham."

Sunday, May 21, 2006

Spam, Egg, Sausage, and Spam

Here's my good deed for the day. You might not be aware of this, but if you're in the U.S., the government wants your spam. Phishing, stock pump-and-dump schemes, "Nigerian" scams, bogus pharmaceuticals, forward it all (with complete headers, if possible) to spam@uce.gov.

For phishing attempts, many companies have specific addresses to which you should also forward the messages. Here's a list, sampled from phishing attempts that I've received, as well as a few other institutions that come to mind. A few of these (too few) provide a link for information regarding phishing, including the reporting address, right on their main page. Others required digging.

  • American Express: Anti.Phishing.Team@aexp.com
  • Barclays Bank: internetsecurity@barclays.co.uk
  • BB&T: InternetFraud@bbandt.com
  • Chase Bank/JP Morgan: abuse@chase.com
  • Citibank, Citigroup: emailspoof@citigroup.com
  • EBay: spoof@ebay.com
  • HSBC (USA-specific): usphishing@us.hsbc.com
  • PayPal: spoof@paypal.com
  • Visa: askvisacorporate@visa.com
  • Washington Mutual: spoof@wamu.com
  • Wells Fargo: reportphish@wellsfargo.com

Incidentally, AOL sucks. They might very well have an abuse address for phishing, but if they do they make it much too difficult to find. They don't even list an abuse address in the whois database.

Amazon sucks slightly less. They don't provide an email address, but they have a web form that's not too difficult to find. Go to www.amazon.com, click on "Help", and look for questions on security and phishing. I don't want to provide a direct link, since it's likely to change.

MasterCard is just dumb. They tell you to forward phishing attempts to them, but they neglect to provide an email address. "Priceless," indeed. There is, of course, nothing in whois either.

Thursday, May 11, 2006

Rational Immigration Reform, Part III

This is the third and final part in a series on immigration reform. The first part provided background, and the second part dealt with current illegal aliens.

There is still the problem of avoiding a flood of additional illegal aliens. By providing a (slightly punitive) path towards permanent legal residency, we maintain an appeal to other would-be immigrants unable to enter the country legally. Thus, without addressing legal immigration we are setting ourselves up for another wave of illegal entry.

There are, naturally, a number of suggestions currently on the table. The Minutemen are a vigilante group trying to enforce our immigration laws themselves. As with all vigilante groups, they have little or no training in law enforcement procedures, standards of evidence, or other sometimes subtle aspects of police work. H.R.3622 would grant legitimacy to the Minutemen as part of a border-sealing initiative. Other civilian border enforcement bills are H.R.3704, which would establish a Border Patrol Auxiliary, and H.R.4099, which would establish a Border Corps within a Citizen Corps. This last is notable in that it appears to relegate civilians to roles as spotters and general assistants to formal border enforcement personnel, the latter being the ones who would potentially detain illegal crossers.

Farther down the rabbit hole are H.R.4083 and H.R.4313, both of which propose building a fence along the entire border with Mexico. H.R.4437, which has passed in the House, calls for a partially fenced border at key crossing points, which isn't necessarily unreasonable. I will not address other issues with this bill, as it is very long and has been discussed quite a bit in public and in the Congressional Record.

It seems clear that our economy has become at least somewhat reliant on foreign workers. A guest worker program has often been mentioned as a means to satisfy this reliance in a legal framework that would control the number of foreign workers and the terms of their residency in this country. H.R.2330/S.1033 would establish a new category of visa for nonimmigrant workers for a period of three years (renewable once for another three years). It would also provide labor protection for foreign workers, as well as encouraging economic development within Mexico. This last point is important, as improved economic conditions in Mexico will decrease Mexicans' incentive to come to America looking for work. Other Central and South Americans might also prefer to work in a more economically vibrant Mexico, where the local culture more closely resembles their own. H.R.3333 is similar in some ways, though it limits a foreign worker to a maximum of 365 days in the country for every two years. While apparently renewable indefinitely, this restriction effectively prevents foreign workers from changing their status from nonimmigrant to immigrant.

H.R.3333 has an additional provision worth noting. It requires that a potential guest worker obtain an offer of employment before being granted a visa. In order to match potential workers and employers, the bill mandates an Internet-based job listing site. This has the distinct advantage of ensuring that any foreign worker coming to this country has a job lined up in advance. For seasonal workers who come to America at planting or harvesting time and spend the remainder of the year at home, this could be very effective. There is always the danger of exploitation, however, and the listings and employers would have to be monitored carefully.

Guest worker visas are just one aspect of the immigration reform that we need, and address only one of the reasons that people want to come to America. America is not simply a source of employment, it represents the hope of a better life. Throughout our nation's history, immigrants have come here with the belief that if they work hard, they can be successful and provide a better future for their children than in their countries of origin. In turn, we have benefitted from their hard work and ingenuity.

Immigration benefits this country, and it is time that Congress lifted the isolationist barriers to and caps on immigration that were enacted in the 1920's.

I would like to close with yet another quote from 1870. This one is by Sen. Jacob M. Howard of Michigan, in relation to the bill advocated by Representatives Fitch and Johnson, and was made on December 22, 1869 (page 300 of the Congressional Globe for that session):

I desire to call to the attention of the committee to whom this bill may be referred that very singular provision of this bill. It is not unlawful for an American to make a contract with an Indian even in Canada or elsewhere out of the limits of the United States for the service of the person employed in the United States. There is no law, and never has been a law so far as I know, prohibiting such contracts. If they are fairly and honorably entered into they are as binding as any other contracts, and I should like to know how it has happened that the Chinese, with whom we have just entered into a treaty of friendship and commerce, are to be excluded from the right which is enjoyed by the people of all other nations of the earth, and even by our own aborigines. The right of individual immigration into the United States, I notice, is preserved by the bill. That is all well enough. I have no fault to find with that; but I do object to a discrimination against the whole population of China, such as is embraced in this bill. I think it incompatible with the spirit of our treaty with China, and unkind and unfair.

Wednesday, May 10, 2006

Rational Immigration Reform, Part II

This is the second part in a series on immigration reform. The first part appeared yesterday. The third part will appear tomorrow evening.

So, there is a problem. Is there a solution? Several have been proposed.

  1. Enforce the current laws, and deport illegal aliens.
    With most estimates putting the number of illegal aliens above ten million, it is difficult to see how this could be tenable. Nonetheless, this is the solution proposed by H.Con.Res.221, H.R.3693, H.R.3938, and H.R.4079. Perhaps the immigration laws should have been enforced more rigorously, but the time for that has passed. Similarly, we cannot deny illegal aliens treatment in emergency rooms, both because of the public health issues that would create and the mandate of emergency rooms to treat anyone who walks through the door. If emergency rooms cannot ask for proof of insurance, requiring them to ask for proof of citizenship would create a logistical nightmare. We also cannot exclude the children of illegal aliens from our public schools. For one, it is fundamentally unjust to punish these children for the actions of their parents—few if any of the children chose to come to this country illegally. For another, if they are here, and remain here, it is much better for them to have a basic education than to doom them to illiteracy, which increases the likelihood that they will eventually turn to a life of crime.
  2. Grant citizenship to all illegal aliens currently in the country.
    This solution does not have much traction outside of the Latino community, and even there its support is nowhere near unanimous. I list it here because I have heard it suggested, especially by members of the illegal alien community who feel that they are by rights citizens. This ignores the facts that:
    1. They entered this country illegally; and
    2. Many people who have entered legally have followed the rules, waited longer, and do not deserve to see those who have flouted the law jump ahead of them in the queue for citizenship.
  3. Grant illegal aliens legal status short of citizenship.
    This is a more reasonable approach, though proponents of this solution still differ on how best to implement it.

The problem of illegal aliens is not simply one of what to do with those people who are here illegally now. There is a larger problem of preventing future illegal entry into the country. Consequently, I would like to build on the third type of solution, while also addressing the broader problem.

I will begin with how to reconcile the ten million or so illegal aliens currently living in the United States. First, we must parameterize what is and is not acceptable. I believe it is fair to say that anyone here illegally who has committed a felony must be deported. It is also fair to say that a person in this country illegally cannot be granted immediate citizenship (barring acts of Congress, of course). I would go further and say that illegal aliens cannot be granted permanent residence status as their first legal status. This has the same fairness problem as granting them immediate citizenship, given that there are many people who have followed the rules and are waiting for permanent resident status.

This implies that whatever legal status we give illegal aliens, it must be temporary. Further, it should not have a shorter waiting period for permanent resident status than the status of those who enter the country legally. Consequently, upon attaining legal status a person should have to wait at least as long to become a permanent resident as someone who entered the country legally with similar status. It is not unreasonable to add an additional one year penalty to this wait time, as well as any typical wait time experienced by people applying for visas through normal channels.

As for the specific status, there are existing visa categories for foreign workers, both skilled and unskilled. The principal argument for allowing illegal aliens to stay is that they are gainfully employed and contributing to society. An illegal alien who can demonstrate that he or she has a job and is paying taxes should be able to get a temporary worker visa in some existing category. That person's dependents can then be given appropriate visas based on that. Because of the cost of leaving the country to obtain a visa, as well as the risk of losing a job, it should be possible for illegal aliens to apply for these visas from their current locations. This granting of legal status must also have a limited period of availability. This period should be long enough to process all illegal aliens currently in the country, and might be adjusted as the time to process each individual is better known. We might also require that illegal aliens seeking legal status demonstrate a basic proficiency in English or complete a course in English as a foreign language; this reduces the burden they will place on public services and is a fair additional price to pay.

I believe this to be a fair way to grant current illegal aliens legal status. If they are contributing to the economy, obeying the law, and learning the language, then they may remain. They do not, however, gain any advantage over those who entered the country legally. Unemployed illegal aliens or those who have committed serious crimes may not remain, though.

A potential wrinkle with this plan is that many illegal aliens are employed for less than the Federal or local minimum wage. Currently, they have no incentive to demand increased pay, even if they are aware of minimum wage laws, since to do so invites their employers to report them to Citizenship and Immigration Services. With legal status, there is greater incentive to demand the minimum wage. While not threatened with deportation, the threat of job loss is still present. If newly legal foreign workers lose jobs as they gain legal status, this could lead to workers declining to become legal or possibly a large number of legal foreign workers who have lost the eligibility for their visas. This is a serious potential consequence of legalizing current illegal aliens, and one I am not competent to assess.

In the third part of this series, I will discuss changes to the immigration system intended to deter illegal entry.

Tuesday, May 09, 2006

Rational Immigration Reform, Part I

For reasons of length, I will be posting the following piece as a series. This first part provides some background. The second part will appear tomorrow evening.

If you've been reading the news, or merely not living under a rock, then you know that there has been considerable debate about the millions of people in this country illegally. It seems the only thing that everyone agrees on is that Something Must Be Done. For some reason, this issue is more urgent than Iraq, Afghanistan, Iran, the Sudan, warrantless wiretapping, failing schools, rebuilding New Orleans in such a way that it won't get destroyed during the next hurricane season, or an impending avian flu pandemic. The only thing that might be as important to the American people is who in Major League Baseball is injecting steroids into their butts.

National priorities aside, there is a real problem, and it has existed for many years. We can trace much of the current problem to the Immigration Act of 1924, which severely limited the number of aliens who could legally immigrate to the United States. For many countries, their nationals were completely excluded, since the Act limited immigration to a fraction of that country's nationals who had already immigrated. The Immigration and Nationality Act of 1952 eased this restriction somewhat, providing for a minimum quota of 100 immigrants from any country. This did not, however, substantially change the fact that 1924 marked the year in which America effectively declared itself no longer a nation that welcomes immigrants seeking a better life.

America remained prosperous, however, making it an attractive place for would-be immigrants, who might not have heard about the change in its attitude. Indeed, we have retained the Statue of Liberty as a national symbol, with its words of welcome:

Give me your tired, your poor,
Your huddled masses yearning to breathe free,
The wretched refuse of your teeming shore.
[from "The New Colossus", Emma Lazarus, 1883]
In truth, it was this spirit of welcoming that made America prosperous, and has infused us continuously with creativity, ingenuity, and industry.

The fact that immigration issues have come to a head recently, when Latin American populations are becoming more predominant in many areas and a majority in some, raises suspicions of racism in immigration policy. If this is true, it is certainly nothing new in the politics of American immigration law. Consider, for example, this speech given to the House of Representatives by Rep. Thomas Fitch of Nevada on May 27, 1870, as recorded in the Appendix to the Congressional Globe (the predecessor of the Congressional Record):

With so much of the speech of the gentleman from California [Mr. Johnson] as expresses unfriendliness to the encouragement of Chinese immigration I earnestly concur. I do not believe in the cheap labor which supplants contented and well-paid toil, nor in that social theory which would force the Caucasian to rival the domestic economy of the Asiatic. I do not believe in the policy of introducing extensively into this country a race who have a distinct civilization, religion, habits, and language of their own; a race who are alike incapable and unworthy of assimilation with ours; a race with whom polygamy is a practice and female chastity is not a virtue; a race who are thrifty in habit yet slothful in thought, apt yet retrogressive, educated yet without newspapers, courageous yet without self-respect, honest in monetary affairs yet without moral principle, faithful to obligations yet utterly destitute of any regard for the truth; a race which rears no families and acquires no landed property among us, possesses no past and hopes for no future in common with our civilization, and whose members are of their own will perpetual strangers in this land, where they never design to remain, and from which they contract to have even their dead bodies exported.

A longer tirade appears in the January 25th Congressional Globe of the same year, given by the Hon. James A. Johnson of California.

We can, perhaps, see echoes of this in recent speeches, such as this one given by Rep. Sam Graves of Missouri on April 27, 2005, regarding the Emergency Immigration Workload Reduction and Homeland Security Enhancement Act of 2005:

Mr. Speaker, I rise today still afraid for our nation's security. Not because of terror alerts, but because our borders remain porous. The enforcement of our immigration policy is impotent, resulting in a continued flood of illegal immigrants across our borders.

It is time for the federal government to stop letting unchecked mass immigration undermine the wages, safety, and benefits in one occupation after another. It is time for the federal government to moderate immigration and to treat American workers, citizen and immigrant, with the respect they deserve.

Our constituents did not elect us to help cheapen the quality of their lives by importing foreign workers at six to eight times the historical average. There is no getting around the fact that when we cheapen labor with unchecked illegal immigration, we cheapen our neighbors, both citizens and immigrants alike.

I do not mean to imply that the Hon. Mr. Graves holds the sort of repugnant racial views of Mr. Fitch, nor that he opposes immigration. A critical point to observe is that Mr. Graves is discussing illegal aliens, not legal immigration against which Mr. Fitch spoke. The protectionist arguments regarding American workers are, however, similar.

In the second part of this series, I will discuss illegal aliens in this country, and how we might grant them legal status in an equitable manner.

Thursday, May 04, 2006

Dodged a Bullet

Today, I had my first brush with the legal system.

Technically, I suppose it actually began about a month ago with a short questionnaire, but today was the summons. To be more specific, and to begin yet another sentence with a parenthetical, I had jury duty today.

It wasn't too bad. There were two cases on the docket at the county circuit court. The first was a civil case, and only seven people (six jurors and an alternate) were empanelled. My call-in number was high enough that I didn't even come close to having to serve on that one. The other case was settled before voir dire. We then had to wait to see if the district court needed an "instant jury," which they didn't, and at 3PM we were dismissed.

At the beginning of the day (8:30AM), and later at 11AM, a number of returning jurors arrived. The woman running the juror's lounge and coordinating the orientation and selection process announced that they were dismissed, which was met with cheers. She chided them for cheering, joking that it was making a bad impression on us first-day jurors.

They had just been dismissed as potential jurors for the trial of John Allen Muhammad.

Sunday, April 16, 2006

Chrome for Firefox and Thunderbird

This one's a post that might be helpful for users of Mozilla Firefox or Thunderbird.

If you're like me (and I know I am), you're not completely happy with the fonts and display styles from either program, and you can't find a theme that really satisfies you. Mozilla calls all of the customization options for the display (other than actual document contents) chrome. I've gone through the trouble of figuring out some of the (undocumented) chrome settings, and now I'm passing the savings along to you with this limited, one-of-a-kind offer.

Sorry...I got carried away there for a moment.

Let's start with Thunderbird, since that's the one that I modified first. I was unhappy with the use of bold to indicate a folder or account with unread messages, since the switch from regular weight to bold changes the letter spacing. When screen real estate is an issue (and when isn't it, honestly?) this gives you the choice of having part of a folder/account name become "..." and wasting space by making the folder pane wider than it typically needs to be. My changes make the account names green, and folders with unread messages red. Accounts with unread messages ideally have their icons change, though that isn't the case for movemail accounts. When you change any of the chrome settings, you'll have to restart the relevant program to see the effects. Ideally, you should make your changes while the program isn't running, but I doubt you'll actually run into any problems, since the chrome file seems to be loaded at startup and then ignored.

The file to change is chrome/userChrome.css in your profile. If this file doesn't exist, create it as you would any other text file. Adding the following lines to userChrome.css will implement the above changes:

treechildren {
  background-color: #F1F1F1 !important;
  font-family: Nimbus Sans L !important;
  font-size: 14px !important; } 

treechildren::-moz-tree-cell-text(unread) {
  font-size: 13pt !important;
  font-family : Nimbus Sans L !important;
  font-weight: normal !important;
  color: #C50000 !important }

treechildren::-moz-tree-cell-text(read) {
  font-size: 13pt ! important;
  font-family : Nimbus Sans L !important; }

treechildren::-moz-tree-cell-text(folderNameCol, hasUnreadMessages-true),
treechildren::-moz-tree-cell-text(folderNameCol, subfoldersHaveUnreadMessages-true)
{
  font-weight: normal !important;
  color: #C50000 !important
}

treechildren::-moz-tree-cell-text(folderNameCol, newMessages-true),
treechildren::-moz-tree-cell-text(folderNameCol, hasUnreadMessages-true),
treechildren::-moz-tree-cell-text(folderNameCol, specialFolder-Inbox, newMessages-true),
treechildren::-moz-tree-cell-text(folderNameCol, biffState-NewMail, isServer-true) {
  font-weight: normal !important;
  color: #C50000 !important
}

treechildren::-moz-tree-cell-text(folderNameCol, isServer-true) {
  font-weight: normal !important;
  color: #00A500 !important
}

Some of this is slightly redundant, and some of it ends up having no effect, but it gets the job done. If you don't like (or don't have) Nimbus Sans L, you can replace it with any other font. The font sizes and colors are also easy to change. Colors are in standard 1-byte hex RGB values, so each color is specified from 00 to FF.

A more recent change that I made was to the overall menu, toolbar, dialog box, and other fonts. I did this to correct for a bunch of changes that recently went into X.org in Debian's unstable distribution. The lines to add are:

* {
  font-family: Nimbus Sans L !important;
  font-size: 14px !important; }

The "*" tells Thunderbird to apply this to everything that isn't otherwise specified.

The modifications I've made for Firefox are almost identical to the last change for Thunderbird. Again, you'll want to modify chrome/userChrome.css for your Firefox profile. Firefox seems to want to use smaller fonts (don't ask me why), so I've added the following lines:

* {
  font-family: Nimbus Sans L !important;
  font-size: 18px !important; }

For some reason, this seems to make the actual text size the same in Firefox as it is in Thunderbird. Your mileage may vary, but at least you now know how to set the font sizes for the browser or mail reader.

As an extra bonus, if you're a Gmail user, you might find some or all of the following useful:

div.msg div.mb {
  font-family: Courier !important;
  font-size: 14px !important;
}

table.tlc {
  font-size: 20px !important;
}

table.cv {
  font-size: 16px !important;
}

table.nb {
  font-size: 16px !important;
}

div.tbc {
  font-size: 16px !important;
}

div.nl {
  font-size: 16px !important;
}

td.ml {
  font-size: 14px !important;
}

This should go in chrome/userContent.css in your Firefox profile. Note that this is userContent.css, not userChrome.css. div.msg and div.mb control the display of messages. I like to use a monospaced font for these, since I often get email that has structured text in it, such as source code snippets or scripts. The rest control various decorations such as the list of folders, the panel with the "Archive" and "Report as spam" buttons and various "Select" options, the account name in the upper-right, etc. Again, once you know how to set these things, you can play around with fonts and sizes. As with the chrome settings, you'll probably have to quit Firefox and start it up again to see the effects. I've tried using the Web Developer extension to modify the Gmail style information interactively, but it doesn't seem to work.

Wednesday, April 05, 2006

Helpful Hints

Let's say you're a deputy press secretary for the Department of Homeland Security, and you're looking for a little online action with a supposed fourteen-year-old girl (SFTYOG). Here are a few hints that the SFTYOG might, in fact, be an undercover sheriff's deputy:

  1. The SFTYOG writes "tee hee" a lot.
  2. The SFTYOG uses the latest slang, like "rad" or "tubular".
  3. The SFTYOG does not recoil in horror when you offer to send her pictures of your naked fifty-five-year-old body.

Monday, March 06, 2006

The Futility of Anonymity

As a people, we place great value on our personal privacy. Very few of us would gladly accede to State scrutiny of our every move. This sentiment is captured by one of our revered Founders, on the eve of war with Britain:

Is life so dear, or peace so sweet, as to be purchased at the price of chains and slavery? Forbid it, Almighty God! I know not what course others may take; but as for me, give me liberty or give me death!

Closely related to privacy, many of us (myself included) are fascinated with and motivated to the enabling of anonymity. Though distinct, both rely on the ability to hide or obscure some information. Anonymity, like privacy, played an instrumental role in our nation's founding. But is anonymity real, or is it illusion? Is anonymity even possible? In particular, can anonymity exist on the Internet?

Whether anonymity might possibly be brought about, I cannot say. I would argue, though, that it has never really existed in the past. I doubt greatly that it will exist in the near future, either.

Why do I claim that anonymity has never existed? We will ignore, for this discussion, the variety of anonymity that results from an author's identity becoming lost through time. Nobody who wishes to benefit from anonymity has this in mind. What I claim is that true anonymity from our contemporaries is an illusion, because no work of authorship exists in a total vacuum. The authorship of The Federalist Papers is not known through the claims of its authors, but through their prominence as proponents of the Constitution and samples of their other writings. Even absent these, the articles were published in newspapers, and must have somhow been delivered. Even if under cover of darkness, the odds of avoiding all observation over the course of 85 articles is remote.

That aside, a letter might be printed anonymously by a newspaper, but that does not mean that it was received anonymously. The Washington Post, for instance, requires a name, address, and telephone number for letters, though names may be withheld on publication. Even unsolved murders have suspects: someone had motive; reputations abound; nobody knows the drifter's name, but they remember him and would recognize him. There is always speculation, whether or not there is proof.

In a society bound by the rule of law, and possessing rules and standards of evidence, a functional sort of anonymity might arise. If you cover your tracks well enough, you might escape official punishment. Social punishment, however, is another issue, and suspicion of wrong-doing is often enough to have a severe impact on an individual. If a crime or indiscretion is committed, and some individual "seems like the kind to do that," little else might be needed for community sanctions to be put into place.

Because there are people who are interested in anonymity, the problem has inevitably entered the electronic world, where it presents a special challenge that has attracted a great deal of technological interest. The fundamental difficulty with the network is that it carries data, which must be able to get from one location to another. This means that the intended recipient must somehow be specified, or the data sent in effect to every potential receiver in the world. An observation of this data reveals some or all of the path it takes, and over a large number of data transmissions, a determined adversary can learn a great deal about the data's origin. We can add to this the fact that our current network includes the origin of the data as a part of the transmission, though this can be forged without much difficulty, as long as a response is not required.

The exact origin of specific data can be obscured through various techniques. These generally involve the accumulation of a number of messages and their delayed transmission in random order, often with random "noise" data and simultaneous transmissions of data to receivers who have no interest in them but are participants in the "anonymizing" system. At best, these provide what is termed 1-out-of-n anonymity. That is, the sender (or receiver) of the data can be determined no better than belonging to a set of n individuals.

These systems rely on the honesty of the intermediaries (servers or other participants) storing and forwarding the data. While dishonest intermediaries can be accommodated, there is always an assumption about the maximum number that might be dishonest. This is unavoidable, and not necessarily a problem, so long as the assumption that is designed into the system holds. Because the assumption might be violated, we cannot say with certainty that the system is anonymous.

Setting aside the issue of honest participants, to what extent does such a system provide practical anonymity? The situation is very similar to whistle-blower hotlines. Calls to whistle-blower hotlines will show up in phone company logs; it is through law and convention that these calls maintain "anonymity." A warrant can negate this protection, however, and the existence of a whistle-blower is still only 1-out-of-n protection, since the set of people who could blow the whistle is limited. Thus there will be a set of suspects, and the difficulty of narrowing this down to a much smaller set will depend greatly on the circumstances.

1-out-of-n anonymity is a particularly dangerous illusion when the standards of proof are much different than in this country. To a repressive government, mere participation in a computer system providing this "protection" might be taken as evidence of guilt. Those taking a principled stand by using such a system, despite using it exclusively for activities that are already permitted, will nonetheless be viewed as subversives.

This leads to an issue that applies to privacy as well, and has more thoroughly been studied in that context. Encrypted communications are very useful for hiding the contents of messages from prying eyes, but again might in and of themselves be viewed as evidence of misdeeds. There is a term of art: rubber-hose cryptography. This relates to the fact that it is often not necessary to spend hundreds of thousands of hours of computer time to break an encryption key when an equally successful result can be obtained if you spend ten minutes to break a kneecap to learn that same key. The same approach can, in many circumstances, be used to "revoke" someone's anonymity. Technological measures, like all measures, have their weakest points, and these points are not necessarily (in fact, rarely) technological.

Where does this leave us? The technological approaches to anonymity have led to a considerable amount of very interesting research, both theoretical and practical. Viewing this research as a way to restore anonymity in an environment hostile to anonymity is, however, misleading. Anonymity, in its truest sense, has never existed. What appears to us as anonymity arises more from social convention and good will than from any real obscuration of identity.

Wednesday, February 01, 2006

A Red-Letter Day for the Internet

I'm pretty stoked. One of my favorite net.funny.people, Lore Sjoberg, has just had his first humor column published by Wired.

Monday, January 30, 2006

Easy, Breezy, Comical

Cover Girl has some new lip gloss that's supposed to retain water, or some such. I've seen the commercial for it a couple of times now, and both times one thing really strikes me about the ad. When the model has this "amazing" lip gloss on, it looks like she's wearing a pair of wax lips.

I'm not sure if that's the effect Cover Girl was going for.

Tuesday, January 24, 2006

Why Blogging has been Light

Big Brother is Watching...For the Children

Everyone, it seems, is abuzz about the Department of Justice subpoenaing Google's records of searches performed by all users over the course of some presumably arbitrary week. The International Herald Tribune has a short but pointed story about this that addresses a number of significant issues.

What bothers me about this story, however, is the following quote:

Protecting minors from the nastier material on the Internet is a valid goal; the courts have asked the government to test whether technologies for filtering out the bad stuff are effective.

The first problem I have with this is that it is almost universally true that when someone advocates some action or law "for the children," it's an emotional appeal that has more to do with advancing a personal agenda than benefitting any actual children.

That's not my main complaint, however. I'm more concerned with the casual assertion that government intervention, and specifically technological intervention, is good.

Technological solutions are, generally speaking, the worst solutions, especially when the technology must make a yes-or-no decision on any particular item. This is because technology lacks nuance. The classic example of this was early web filtering programs that prevented children from reading information on breast cancer because the web pages contained the word "breast."

More recent filters are considerably more sophisticated, but there will still be grey areas. Does the use of the word "fuck" make this page unacceptable for children? Does it make this entire site unacceptable? And what about these fine individuals? (Links provided by http://blogs.herald.com/dave_barrys_blog/.)

If you have an email address, you probably know how quickly spammers adapt to the latest filtering techniques, leading to an arms race between spammers and spam-filter authors. The only way to eliminate all the spam is to filter out everything, but of course that isn't particularly useful. Anything less will filter potentially desirable (and innocuous) content while still allowing some objectionable content through.

Slightly better, in the sense of not being as bad, are legislative measures. The law, at least, allows for shades of grey. Laws are difficult to enforce online, however, and fairly easy to circumvent. They also tend to focus on punishing behavior rather than preventing it, though the threat of punishment can serve as a deterrent.

The real problem, though, is not that the web is a big, open, and sometimes dangerous place for children (and adults). The problem is that parents are too quick to provide their children with the tools to access the web without also providing supervision. A computer connected to the Internet is a powerful piece of technology. Just as a parent shouldn't give a child a gun or the keys to the family sedan, a parent shouldn't give a child unlimited and unsupervised access to a worldwide computer network.

The bottom line is that the best way for parents to ensure their children's safety online is to know what they're doing and when, and not to treat computers as just another type of toy. Not only will that produce real improvements in online safety for kids, it will give the government less of an excuse to invade our privacy or restrict our activities.