Write awesome DNS server, teach English?

One of the reasons I left IT is nicely summed up by the author of maradns. While it’s an awesome DNS server, apparently being awesome doesn’t pay the bills.

I can not guarantee that MaraDNS will get this feature. There are a lot
of feature requests on the table right now, and no one (so far) is
willing to pay to have any of these features implemented. This is the
downside of open-source software: since no one is paying me to write
this code, I have little motivation to implement features that don’t
directly benefit myself.

The tech industry was not very good to me after the 2001 dot-com
implosion. Even though I have a lot of talent, after getting my degree
in computational linguistics, I ended up working as a cashier at
Wal-Mart. This was the result of a three-month job search in late 2005.
I only got one interview during those three months. This, even though I
had five years of experience in the industry beforehand. Basically,
clueless HR departments didn’t care if I had five years of programming
experience; it had to be five years of, say, PHP experience, or they
would throw my resume away.

MaraDNS development doesn’t help me have a nice-looking resume; if
MaraDNS was written in PHP, Java, or whatever the current
buzzword-compliant language is, I may be able to get interviews. But
it’s written in C. The only C programming that would have gotten me
interviews in 2005 was device driver development. Or if MaraDNS was
written in C++, that would have been buzzword-compliant enough in 2005
to get me interviews.

I’m now an English teacher in Mexico, of all things.

- Sam

Zimbra Desktop not quite ready

I have been using Yahoo’s Zimbra Desktop as my primary collaboration client for nearly four weeks now. During that period, I reported a number of bugs and voted for many other bugs and feature requests. Unfortunately, Zimbra Desktop is as yet unsuitable for productive use.

Zimbra Desktop itself is actually the Zimbra Web client, but running locally inside Prism, a Mozilla XULRunner application. Zimbra is leveraging their existing client, with a few changes, and running it locally. The background daemon handles actually syncing mail with Zimbra proper. It also speaks IMAP and POP3 and interfaces with a number of APIs for Web based services, like gmail.

Sadly, the desktop client facade implies native responsiveness and functionality where none exists. All limitations of a Web client still exist.

Column sorting is limited. Pagination renders column sorting generally useless. Want to sort on a particular sender, select those emails, and delete them from your inbox? Not so fast with Zimbra Desktop. You can try to use the search interface instead, but it frequently behaves in unexpected ways and the search interface itself is confusing.

For example, an advanced search by sender for an email with spam in it doesn’t work, but spamcop did. Why? Who knows.

If you’re into having messages sorted in ascending order by received date, you’re out of gas with Zimbra Desktop. The pagination puts those messages on the last page, but results always start on page one.

The paging itself is unclear. The icons are up and down, not left or right as one would expect.

Paging, in fact, is a significant misfeature stemming directly from the unique way in which Zimbra Desktop recycles the server based Web client into a native experience with Mozilla Prism.

Other issues include lack of persistence in visible colums, expanded mail folders, and the poor handling of multiple uploads.

Moreover, there is no way to specify a draft or trash folder on an IMAP server, so interoperability between ZD and other IMAP clients is notably poor. Sent email and deleted mails should be immediately available across all IMAP clients, not saved on the local system. Using two installs of Zimbra Desktop, both connecting to the same IMAP server from different systems, I found the movement of mail between folders rarely unnoticed on the other. (I have seen this behavior a few times with KMail, too.)

One of the big wins, if you’re using a Zimbra account, is server side filtering. All filters will persist between clients. Additionally, Zimbra allows you to tag any resource, including from within a filter. Strangely, a bug in Zimbra seems to limit you to a maximium of 63 tags defined. Odd.

The calender is one of the bright spots of Zimbra Desktop. The limitations of the Web based UI don’t hamper effective usage of the calendar.

The tasks, unfortunately, are as abandoned in ZD as in Mozilla’s Sunbird. You can’t see the task description, which includes support for rich HTML text, without editing the task you want to see. That’s entirely nonsensical. The “Click here to add new task” seemingly creates phantom tasks. You can’t sort on nearly any useful field.

While ZD’s documents feature, seemingly an inline wiki, initially piqued my curiousity, I found it wasn’t possible to save documents into an existing Zimbra server install. The documents never appeared to save. Unfortunate.

As ZD runs an entire Web stack on the local system, the memory requirements are quite high. It also saves a copy of each message uncompressed on the local system, so disk utilization is much higher than it would otherwise be if you’re using it as an IMAP client. (I’m at a few hundred MBs for only about 5k messages on IMAP.)

While Zimbra Desktop held much initial promise — a desktop client that supports no only email, but calendaring, tasks, file uploads, and a shared wiki like thing — in practice it’s unwieldly. Death by a thousand cuts. ZD gets some key things correct, but misses too many smaller items to prove sustainable over the long term. I’m hopeful version 2 will be a natively client, perhaps based on XULRunner directly or via the QT library.

A collaboration client that is advertised as a native client ought to be behave as a native client. Except for the multiple account and IMAP support, there’s no reason to use ZD if you’re already using Zimbra Web client. For vanilla IMAP users, there are other clients to choose from, although sadly few good ones.

Not a bankster? Here’s your bailout

Paper Avalanche Buries Plan to Stem Foreclosures:

Hanging in the balance is more than the fate of individual homeowners. The administration portrays its mortgage program as a crucial piece of its broader effort to restore vigor to the economy. If the effort fails, foreclosures will continue to surge and home prices will probably keep falling, sowing fresh losses in the financial system and threatening to crimp credit anew for businesses and households.

Yet in the four months since the Treasury Department announced the program, millions of new homeowners have slipped into delinquency and foreclosure. For now, progress is constrained by the limited capacities of mortgage servicing companies, said Michael S. Barr, the assistant Treasury secretary for financial institutions. He offered the first signs of the administration’s impatience with the institutions that control home loans.

Goldman Sachs bubble mania

Another must read piece by Matt Taibbi, scanned from Rolling Stone. Gangster Capitalism is an apt name.

From tech stocks to high gas prices, Goldman Sachs has engineered every major market manipulation since the Great Depression - and they’re about to do it again

By MATT TAIBBI

Deliciousness

Finally created a Delicious account. My open tabs now exceed practicality. I can’t work through enough projects simultaneously to hold my active tabs under 50. It’s crazy. Posting to Delicious, I am hopeful, will allow me to immediately dump resources I am not actively using in favor of fewer open tabs.

Ultimately, I’d like to be able to fulltext search blog links, but I can’t find a service that offers that functionality. Google has a service to search your browsing history, but it requires a Firefox extension and thus doesn’t work with Opera. Google also lets you search posts marked as favorite in Reader, but that’s not especially useful either.

Maybe one day I’ll combine the Delicious API with some Ruby to pull down RSS feeds of blog URLs I have tagged and shovel them at Lucene for indexing. No time in the immediately future for such a project, though.

Having to expose Opera’s Personal Toolbar so I can get at the Delicious bookmarklet vexes me. A waste of about 50px of screen realestate on a display with only 800px in height kind of sucks. I’m going to try a plugin that takes advantage of Opera custom button functionality.

Eudora 8 beta is just Thunderbird

No, seriously. I installed it, tried to run it, and my running copy of Thunderbird came to the fore. Closing Thunderbird and running Eudora brings up a seemingly broken copy of Thunderbird, rebranded as Eudora.

I was never much of a fan of Eudora back when it was actually a real email client, but I’ll try anything to replace the bag of fail that is Thunderbird v2. That said, Eudora is more of the same. Don’t bother. Additionally, it hosed my existing Thunderbird install. My in-app icons are all missing now.

Another day, another drug

Disease of Rich Extends Its Pain to Middle Class:

Right now, it is estimated that 15 million to 20 million Americans have elevated uric acid levels, known as hyperuricemia. But they do not have gout symptoms and are therefore not treated.

If further studies prove that high uric acid levels contribute to other diseases, though, then “hyperuricemia” could be defined as a disease in its own right and millions of people might one day take drugs to lower uric acid levels, much as they now do to lower cholesterol.

Paul Hamelin, president of Savient, said, “There’s a huge amount of ground that nobody’s ever plowed yet.”

Somewhere, a pharmaceutical company CEO had an orgasm. I’d bet dollars to doughnuts Hamelin is looking forward to engaging in some plowing of customers. And I don’t mean their yards.

It could be there’s nothing wrong with any of those people. Another manufactured disease to treat.

I’ve always maintained that Big Parma wants your money; And they’ll kill you for it. Who’s next? Step right up!

Useless user directories on kubuntu

For years, the introduction of certain compulsory directories on a kubuntu install has annoyed me to no end. You can’t simply remove them, as they’re recreated. I’ve never had enough time or inclination to discover how to remove them, because they’re easy to ignore and harmless.

The directories are introduced by a package called xdg-user-dirs. As kubuntu uses some of the package functionality for autostart and such, the easiest fix is to edit /etc/xdg/user-dirs.conf and disables the directories. Now, they can be removed. Silly.

Proxying Zimbra Web and Desktop via Apache 2.2

It’s possible to proxy Zimbra for both the traditional Web client and the newer Zimbra Desktop client. There are some mostly working configurations outlined on the Zimbra wiki, with some mistakes. (I had the same experience with the DAViCal wiki, but Zimbra is a far larger effort.)

Before you attempt to reverse proxy anything, please read the definitive guide on reverse proxying at Apache Tutor. Thereafter, the following configuration ought to work correctly.

Ensure you hack your zcs installation to enable ajp support before continuing, which involves adding ajp support back into Jetty and modifying the jetty.xml.in configuration file.

<VirtualHost *:443>
 
# Your SSL stuff here
 
# Disallow forward proxying
ProxyRequests Off
ProxyVia On
 
# Prevents larger requests from failing with 503
ProxyIOBufferSize 65536
<Proxy *>
Order allow,deny
Allow from all
</Proxy>
 
ProxyPass /home http://zimbra.mboxmaninsurance.com/home nocanon
ProxyPass /service ajp://zimbra.mboxmaninsurance.com:8009/service
ProxyPass /zimbra ajp://zimbra.mboxmaninsurance.com:8009/zimbra
 
<Location /home>
Order allow,deny
Allow from all # or your domain or subnet(s)
ProxyPassReverse /
</Location>
 
<Location /service>
Order allow,deny
Allow from all
ProxyPassReverse /
</Location>
 
<Location /zimbra>
Order allow,deny
Allow from all
ProxyPassReverse /
</Location>
 
</VirtualHost>

First, we disable ProxyRequests. On Debian GNU/Linux, it’s off by default anyway.

The ProxyIOBufferSize is important. The default of 8K is not large enough, causing some POSTs to the Zimbra server by zdesktop to fail with a 503 error. (While the mod_proxy docs aren’t clear, you can actually set a max size of 64k when dealing with ajp requests.)

The Proxy block is necessary to allow reverse proxying to function.

Finally, we configure each proxy directive. Please note the use of nocanon, which was not introduced until at least Apache 2.2.4 (possibly) later. It prevents mod_proxy from mangling the occurance of ~ in the URL Zimbra Desktop uses to GET tar.gz files of email when syncing. Without nocanon, Zimbra Desktop will not work properly. (The Web client is uneffected.)

For each Location directive, you may wish to restrict access to your domain or subnet. If you have roaming Internet users, that may not be possible. (You could always setup a VPN, but then why bother with the above at all?)

The above configuration works with Apache 2.2.9 proxying to zcs v5.0.16. Zimbra Desktop 1.0 works, too.

You have been kicked from channel #debian-kde by MoDaX

As an idler in #debian-kde for nearly ten years, I have to say, as the channel is now +m, fuck you very much MoDax.

[14:59] [Kick] You have been kicked from channel #debian-kde by MoDaX
  (This channel is closed. Please join us in #debian-kde on OFTC: irc://irc.debian.org/#debian-kde).