What’s wrong with the Iraq war?
Posted on August 17th, 2008This postcard from the PostSecret project should bring things into perspective.

Driving the war home
[credit: PostSecret]
What’s “one more” casualty, right? ⌘
we can be tasty, nom nom nom!
This postcard from the PostSecret project should bring things into perspective.

Driving the war home
[credit: PostSecret]
What’s “one more” casualty, right? ⌘
Just browsing through a hang report about to be sent to Apple (yes, I send them, most of the time; and yes, I read them first, to see what’s going on), I discovered what had to be absolutely the longest function name ever written. Ever. In history. Ever.
Inside of one of the private frameworks, DirectoryServiceCore, is a function that action spanned beyond the length of my normal 78-column window, causing all kinds of hell with word wrapping. I give to you…
__ZN12CCachePlugin20GetRecordListLibInfoEmPKcS1_mP9tDataListPFP16sCacheValidationmmP7kvbuf_tP11tDataBufferP12tRecordEntrymPvP6CCachePPcES7_SC_SE_SG_PS5_
The rest of that framework is filled with others, too:
__ZN9DSLThread11_RunWrapperEPv__ZN12CCachePlugin19DSgethostbyname_intEPcPKcS2_ibP10sDNSLookupPi__ZN12FlatFileNode21InternalSearchRecordsEP25sBDPISearchRecordsContextPvPmThen again, even the HIToolbox framework is chock-full, with functions like __Z30SendEventToEventTargetInternalP14OpaqueEventRefP20OpaqueEventTargetRefP14HandlerCallRec and __Z19PopUpMenuSelectCoreP8MenuData5PointdS1_tjPK4RecttmS4_S4_PK10__CFStringPP13OpaqueMenuRefPt.
I’m all for descriptive function names, but when you look at those, they don’t say anything, really, about what the functions do! ⌘
This entry is going to exclude a lot of people, so it’s cool if you skip out now if you are not
⌥–[ mapped to the single open quote mark, and that ⌥–] mapped to the double open quote mark. Shouldn’t it map to the single close quote? I thought so. And then, the shifted state should map to the double quotes. (In the default layout, the shifted state maps to the close quote of each.)
How fucked up.
Along with some other bizarre keyboard mappings I just couldn’t get over—as well as a few that I wanted just to make my life as a writer easier—I decided it was time to set out to create my own keyboard layout.
By using SIL International’s free and awesome tool Ukelele, creating my own keyboard layout was a cinch. Like almost everything else in OS X, keyboard layouts are described by XML files and so can be edited or created with any type of tool—but trust me when I say that a tool like Ukelele, with its graphical interface based on Python, is so much better than hand-editing XML files. (This coming from a hand-coding geek.)
I had started my project back when I was still running OS X 10.4 (Tiger), and keyboard layouts were a bit different then, so Ukelele was able to provide some “getting started” layouts. In OS X 10.5 (Leopard), however, keyboard layouts were changed in such a way that the standard system layouts were bundled together into a big binary file instead of standard XML files; consequently, Ukelele can no longer provide starting points for these layouts on Leopard.
When I considered it, I realized that I so rarely used the Caps Lock. Other than haters on YouTube, trolls on bulletin boards, and the other bottomfeeders of the Internet, I don’t think most people do as well. And while I have little difficulty remembering complex key chording sequences, I’d prefer to avoid them for my most commonly used alternate characters.
So I remapped the Caps Lock state (in the new layout as well as in my mind) so that when the Caps Lock is on, it’s my “Writing Mode”: open and close quotes are accessible on the keyboard without the Option key. So are em dash and en dash. I also swapped out the grave character (`) for the dagger (†).
In order for it to work, though, I had to also create a new state never before seen: Caps Lock + Shift. In other words, holding the Shift key while Caps Lock is down creates a different character than Caps Lock itself does. (Try it: Your keyboard now doesn’t do that. As far as I’m aware, no U.S. plan ever for any system has ever done that.)
You see, when the Caps Lock is engaged on a standard U.S. or U.S. Extended keyboard, you get uppercase letters. But my layout is intended to be used with the Caps Lock left on for an extended period. It isn’t Caps Lock at all: it’s repurposing the Caps Lock key as simply another modifier like Option, Control, or Command. So even though the Caps Lock is turned on, I need the usual letter case, which is to say lowercase unless the Shift key is held.In my Caps Lock state, I had mapped the single quotes to the open and closed bracket—much more intuitive than putting the single quote on the same key! Instead of shifting to close, now I have left quote on left bracket and right quote on right bracket. Could it be simpler?! Since I had gotten my typographic quote marks on the keyboard, I could reuse the dumb quote mark already there for my en dash. Shifted, it became an em dash. [Of course, this is while the Caps Lock is turned on.]
If I find that I need to type a bracket for some reason or another, I simply tap my Caps Lock key to turn it off, type the bracket, then tap the Caps Lock to turn it back on.
So I got my typographical quotes and em and en dash onto the keyboard without having to hold down the Option key. There are a few others characters I’m constantly using that require me to open the Character Palette or (my favorite), UnicodeChecker. The biggest one? The prescription symbol (℞). So I put it on my new keyboard layout.
So if any of this interests you, leave me a comment. I’ll make my keyboard available along with instructions on how to install it and description of some of the more extended goodies I’ve programmed into it (such as dipthongs, ligatures—yes, ligatures!, and nearly every accented character in the Unicode standard). ⌘
I’ve been feeling so abysmal the past week and a half, I’ve completely forgotten my anniversary: December 3rd marks the 13-year anniversary since I came out to myself. I was 18 years old, and it was just before winter break of my freshman year of college at Transylvania University. I was in the process of writing a term paper on gay adoption—more because I chose the topic to test the waters than because it fit with the class I was taking.
In the process of writing the paper, I simply allowed myself to come out: First to myself, first as bi. Eventually to my friend Roxanne. Over a several-year period, I mulled over the question of whether I was gay or bi; it was the mid-90s, and such questions were not moot and the answers were anything but arbitrary. We were, above all else, politicosexual beings. We could not escape it. While everything else was falling in the deconstructionism of neo-postmodernism, PoMosexuality had yet to evolve.
Eventually, I realized the silliness of the label question. Today, when people ask for a label, I sometimes give one and sometimes give another. Sometimes I give none. My favorite description, though, is merely homoflexible.
So, anyway, raise a glass to me, if you think to. Every year, every month, every week, every day that another person of a different sexuality lives proudly is a reason to celebrate. Raise a glass to yourselves, too, as I know that many of you reading paXºº are heteroflexible or beyond.

Today and every December 1st marks World AIDS Day throughout the world. All of us are (or should be) aware of the epidemic that AIDS and HIV are not only in our own communities but in other nations and places around the world.
But World AIDS Day is more than awareness. All the awareness in the world does not solve the problem. We need a cure, and we need it now. The world has lived with AIDS for over 25 years—and over 25 million people have died because we can’t find a cure. It will take the effort of all of us to eradicate this plague from our existence, just as our forefathers and mothers made smallpox a chapter in the book of medical history.
We can do it. But it takes awareness, dedication, compassion, and resolve. Let us hope that, through the efforts of donations, volunteerism, and perseverance, this will be the last World AIDS Day we commemorate without a cure. ⌘
Each year at Thanksgiving I post this reminder of gratitude in whatever journal or blog I am using at the time. Each time I do, I read the list to see whether there’s anything I want to add, change, or delete. Only once have I made a change.
Several years ago, my career coach asked me to write down everything that I value. I keep looking back from time to time at what I came up with, and it never seems to change. So, today, on Thanksgiving, I’m sharing the list with you, as I believe “value” and “give thanks for” are interchangeable. Here is where my gratitude lies.
I VALUE:
Gratitude by
Billy S Halsey is licensed under a
Creative Commons Attribution-Noncommercial-Share Alike 3.0 United States License. ⌘
Important Things are changing. I’ve decided to divy up my blogging activity in a new way. What this means is a place for everything and everything in its place.
If you are interested in stalking following my entire presence, I make it easy for you with the use of Jaiku. Just watch my updates at my Jaiku, or subscribe in your RSS reader. (A summary of all feeds appears at the bottom of this post.) Additionally, there are some updates in Jaiku that do not go to other blogs.
| If you want… | Subscribe to… |
|---|---|
| The whole shebang | |
| Social, sexual, and technological commentary | |
| Personal updates and random blogworthy bits | |
| Intellectual grandstanding and wanna-be emo antics | |
| Apple and Macintosh-related articles |
Again, if you subscribe to or follow the Jaiku stream, then there’s no need to follow any of the others: They are automatically included with the Jaiku stream. ⌘
Vote now! My friend Lex and his brother Joe Phillips (you might have heard of him) have put together a video entry into the Dashboard Confessional Viral Video contest. I think the video is simply amazing, and I hope you’ll go to vote for it as well.
To vote, please visit the MySpace page and cast your ‘Thumbs up’ vote immediately! ⌘
Special Act now if you need new eyeglasses. The good folks over at EyeBuyDirect are offering a 48-hour sale on their eyeglasses for Monday and Tuesday only.
Buy any pair of glasses (starting at $14.95!—whoa!), including over 150 new styles, then select one of the 39 eligible frames for free.
But remember: This offer ends Tuesday. If you want two pairs of high-quality glasses for less than the cost of a meal for two, act before then! ⌘
It came out last month that Internet service provider Comcast was rate-limiting the bandwidth availability of its customers who were using BitTorrent. Now, it appears, AT&T’s SBC Yahoo! DSL is doing the same.
I am a AT&T customer (more by necessity than by choice), and after attempts to get the newest Fedora Linux ISO image via BitTorrent—completely legal and within the scope of that permitted by Fedora—were painful at best, I decided to download it directly from Fedora Project: placing the entire burden of the upload on one non-profit entity (Fedora) as opposed to a distributed system which would actually help bandwidth utilization for everyone.
What I noticed was that when the Torrent was open, even if it was slow, my entire connection was limited to less than half the level of service that I pay to use. Instead of the 6 Megabit service, I was getting somewhere between 2 and 3 Megabit download rates.
I tried an experiment: I capped the bandwidth on the torrent to 10 Kilobytes per second: an extremely slow speed, barely noticeable when you’re (supposedly) surfing at 6 Megabits per second. Despite that, my direct download from Fedora Project never reached more than 300 Kilobytes (2.4 Megabits) while it was running. When I paused the torrent, the direct download immediately jumped up to over 600 Kilobytes per second: nearly 5 megabits (and the practical throughput limit of the theoretical 6 megabit bandwidth).
There’s nothing neutral about this net. I do not agree with the decision to throttle any traffic, torrent or otherwise, but it would be slightly more understandable if ISPs only throttled the packets determined to contain illegal content. (How that determination would be made is unknown, but it’s slightly more agreeable in theory.)
To throttle all bandwidth, though, to less than half of what the customer has paid to use, for no reason at all—none, as I have said, because my intent was to download a torrent made available legally. Even if I had more questionable motives, however, my ISP has no way of knowing that, nor should they be scanning all the traffic flowing through their pipes.
In fact, when they do scan all the traffic they threaten their own safe harbor status provided under the Communications Decency Act—the only that says that ISPs and web hosting providers are not liable for the content placed there by their customers, which in practice keeps such ISPs and web hosting companies (and YouTube and MySpace and every other web site you know about) from losing their shirts due to copyright infringement, child pornography, hate speech, and other content that has been deemed to be unlawful.
So it’s yet one more double standard in the war of megacorporations versus the common people: SBC gets to steal my bandwidth that I’ve paid for back from me, but I don’t get to do anything about it. In fact, according to their new Terms of Service, they could even disconnect my service for criticizing them. But then, I’m observing, not criticizing. ⌘