Tue, 25 Dec 2007
Sending mail from a laptop
I often find myself on what I would call "hostile" networks: They allow only very limited Internet access, like by blocking port 25 so I can't connect to my mail server. Maybe for you, you're never on filtered Internet access, but your home ISP doesn't let you send mail out when you're not at home, but you want to send email directly from your laptop anyway.
Just do what I do! Let me explain.
Summary
- inetd listens on port 125
- Connections to it go through an SSH tunnel that executes "nc localhost 25" on some mail server
- (Optional) A real MTA runs on the laptop, so that I can send mail when offline; when mail delivery fails temporarily, Postfix queues the message until I get back online.
Justification
- Easy. Apps can be configured to use localhost port 25 (or port 125) with no password.
- Correct: Postfix (when using 25) handles sending mail when offline, and reattempts delivery for me.
- Secure: Encryption all the way through the network, with the icing on the cake that this all looks like SSH, so nosy networkers near your laptop can't even see that's what you're doing.
Implementation in Three Steps
Step 1: ssh tunnel
This is the hardest part. To make things simple, I create a dedicated user on each end.On the remote server (server)
[me@laptop] $ ssh me@server [me@server] $ sudo adduser tunnelendpoint [me@server] $ sudo su - tunnelendpoint [tunnelendpoint@server] $ mkdir .ssh
On the local machine (laptop)
[me@laptop] $ sudo adduser tunnelclient [me@laptop] $ sudo su - tunnelclient [tunnelclient@laptop] $ ssh-keygen -t rsa # make it passwordless [tunnelclient@laptop] $ cat .ssh/id_rsa.pub | ssh tunnelendpoint@server 'mkdir -p .ssh ; chmod 0700 .ssh ; cat >> .ssh/authorized_keys'
On the remote server
[me@server] $ sudo su - tunnelendpoint [tunnelendpoint@server] $ nano -w .ssh/authorized_keysYou'll see a key that starts with "ssh-dss". Before that, add this string and leave a space before "ssh-dss":
command="nc localhost 25",no-X11-forwarding,no-agent-forwarding,no-port-forwarding
(Note: "nc" is in the netcat package.)
On the local machine (laptop)
[tunnelclient@laptop] $ ssh tunnelendpoint@server 220 rose.makesad.us ESMTP Postfix (Debian/GNU): "every tragedy is a beauty that has passed"
Hooray! If you see a reply like mine that starts with "220", then all is well.
You're done with the hard part. Now the easy parts.
Step 2: inetd
[me@laptop] $ sudo aptitude install openbsd-inetd
Now edit /etc/inetd.conf to have this line:
127.0.0.1:125 stream tcp nowait tunnelclient /usr/bin/ssh -q -T tunnelendpoint@server
Now restart the inetd (sudo /etc/init.d/openbsd-inetd restart) and test it:
[me@laptop] $ telnet localhost 125 220 rose.makesad.us ESMTP Postfix (Debian/GNU): "every tragedy is a beauty that has passed"
Step 3: Postfix (optional)
This is my favorite part, but it's only necessary if you plan to send email when you're not connected to the Internet.
Just install Postfix, and add this to /etc/postfix/main.cf:
relayhost = 127.0.0.1:125
Restart Postfix and you should be set. Try sending some mail!
Closing
I was inspired by a Debian Administration post, except I had my own ideas about the best way to do it. I still like my way best.
One problem with the above approach is that it requires root on "server". It would be possible to do the ssh tunnel thing without using a separate "tunnelendpoint" account, but instead to add that key to your regular username.
[/note/sysop] permanent link and comments
Mon, 24 Dec 2007
Git repository for Qtopia
(Cross-posted at http://qtopia.net/modules/newbb_plus/viewtopic.php?topic_id=593&forum=1 and on the OpenMoko device owners list).
In order to make it easier to track updates to the Qtopia 4.3.1 snapshots, I made a git repository out of them.
What I'm doing is, automatically (every night), untarring the snapshots into a git repository at git://git.asheesh.org/qtopia_snapshot.git , which is readable in a gitweb at http://git.asheesh.org/?p=qtopia_snapshot.git .
Note that many snapshots contain the same contents; the automatic script only commits if the snapshots contains some new data.
My current primary interest in the Qtopia GPL edition is for my HTC Universal, which runs it very nicely including sleep and wake-up, SMS, and voice calls. My interest in the git repositories lies from wanting to publish a modified version of Qtopia that's easy to merge changes into as Trolltech updates their code. I'm sure there are Neo1973 users who would like to hack on the Trolltech code or have an easy source repository from which to get updates.
http://www.handhelds.org/moin/moin.cgi/Qtopia is where I'll be posting any is where I'll be posting any updates I have. If you're working on a fork of Qtopia, I'd love to give out git commit access so you can publish a branch on my git if you like.
Similarly, if people want to publish their Qtopia-based applications in a git repository, just ask me!
[/note/software] permanent link and comments
Linux on Unmodified Xbox
Here's a conversation I had with Lisa moments ago, mostly by accident:
<paulproteus> http://forums.xbox-scene.com/lofiversion/index.php/t71173.html<paulproteus> Er, that was meant for someone else.
<paulproteus> I mean, you're welcome to read it, too.
<paulproteus> It's actually interesting if you ask me why. (-;
<lisaig_> Why?
<paulproteus> Kevin Rose (supposedely) from TechTV (a then-famous, well, tech TV show) is looking for a co-founder of the Linux On Unmodified Xbox project, "lou-x".
<paulproteus> That co-founder (supposedly; it's hard to figure who's actually who, but this one's credible) replies, "We got smoked by the Xbox-Linux project."
<paulproteus> I came into the LOU-X project in late 2002 and donated bandwidth from JHU and a wiki I ran, and by mid 2003 preferring to help Xbox-Linux.
<paulproteus> Actually, maybe my stint with LOU-X lasted only a month or two.
[/note/xbox-linux] permanent link and comments
Sat, 22 Dec 2007
Tokyo Thursday
At the start of the summer, I read an article by a journalist who successfully worked for his U.S.-based company while wandering South America for a month. No one knew that when he interviewed them over Skype, he said, he was thousands of miles away.
That sounded pretty good, so I wanted to try it. I was invited to speak on behalf of Science Commons, and Herbert had been to Japan but I hadn't, so I thought that this trip to Tokyo would be a good one to start with. Some basic notes (more later, hopefully):
Just before and after committing to my plane tickets, as I remarked that I was leaving Tokyo on a Saturday, I wondered, Maybe I should extend this so I have the weekend in Tokyo. The big lesson from this trip is, Yes, you need weekends. You weren't really able to use the weekend of the conference, and you could have predicted as much way earlier.
[/note/working-vacation] permanent link and comments
Starting fetchvoicemail
I'm starting a new project called "fetchvoicemail". The idea is to have a little app that dials my voice mail, saves the messages, and extracts the metadata from the remote bot, and saves it all to local storage. That way I can write whatever UI I want on top of it. Think of it as POP3 for voicemail.
It seems there is already a commercial service that does this called "GotVoice Premium" that was reviewed by PC World.
So far, I'm in experiment and read mode. All I've yet discovered is that if you mess with ALSA settings, you make something strange happen so that your microphone doesn't actually record anything....
[/note/projects/fetchvoicemail] permanent link and comments
Fri, 21 Dec 2007
On marriage
Life advice:
<micah> also I cant figure out what the point of marrying or tattos are
<micah> i get lover's strength from marrying i guess, but thats weak
<stew> i think i assumed that tatoos were for charm, but I don't know what charm really does for you
[/scribble/marriage] permanent link and comments
Fri, 14 Dec 2007
Beautiful attacks
In Python, if you use smart libraries like SQLObject, SQLAlchemy, and Kid, you can't generate invalid SQL or HTML, so you're not vulnerable to SQL injection, cross-site scripting, and other attacks derived from input validation problems.
Unless you're really smart:
Just a reminder that attacks against syntax aren't all you need to stop; attacks against semantics can be bad, too.
[/note/software] permanent link and comments
Mon, 10 Dec 2007
Refuting trademarks, Slashdot style
There's a new Free math package called Sage. However, some Slashdotters fear impending trademark problems.
Luckily, all is well:
[/note/free-culture] permanent link and comments
Wed, 05 Dec 2007
Open Sauce
[/note/software] permanent link and comments
Tue, 27 Nov 2007
Help from Jesus
Sometimes I think it's irresistible to make fun of other people's names. Summary of the context here: Fixing the problem won't be too hard:
If he did, I wonder what he would see.
[/note/software] permanent link and comments
Sat, 17 Nov 2007
It's ok
[/note] permanent link and comments
Fri, 16 Nov 2007
New York Times goes shopping
-- Carrie Fisher, Memoirs of a Shopper.
[/note/japan] permanent link and comments
Mon, 12 Nov 2007
Playing favorites?
This article (via /.) seems to accuse Google of playing favorites:
Uh-huh. Sure.
[/note/google] permanent link and comments
Sat, 10 Nov 2007
What about AT&T?
Interesting tidbit at the Washington Post about l33t 4dwarez h4x0r pleading guilty to being malicious:
That was for for 250,000 computers. When the evidence is laid out against people at AT&T, if the evidence says they defrauded and wiretapped at least 100 times that many people, what will their punishment be?
I'm rooting for 60 * 100 years in jail, spread evenly among the people who did the wiretapping. Or perhaps 60 * 100 years for each person, if that seems more fair.
[/note/corporations] permanent link and comments
Brings new meaning to "electronic music"
Watch + listen to the Super Mario Brothers theme as played by Tesla Coils.
Was there something like this at Burning Man this year, or were the Tesla Coils I saw not musical?
[/note/hardware] permanent link and comments
Thu, 08 Nov 2007
Is not! Is too!
Seen on OpenAFS-devel:
Quoth Jim Rees:
> It's not outside the chroot.
Quoth Michael Loftis:
It is so outside the chroot.
[/note/software] permanent link and comments
Wed, 07 Nov 2007
Tokyo
John Wilbanks from Science Commons asked me to give a talk about the Neurocommons project on SC's behalf in Tokyo.
Monday evening, as I was sitting in the CC office wondering what to work on next, I decided I would put all my papers in order and update my calendar so I would have precise notes about which of the many email attachment I'd need to refer to at which time. I wasn't leaving until Wednesday, but I figured I'd need to do this sometime.
That's when I learned that I was actually leaving Tuesday, not Wednesday. The only reason I made my flight is because I procrastinated real work with organizational work. The shock from that realization lasted for pretty much the twelve hours that followed it.
But right now, I'm in an airplane that will soon land in Tokyo. I'll be presenting on Thursday, and attending the rest of the conference Friday and Saturday, and then I plan to sort of hang out in Japan for a week (ingeniously, I'll work remotely, so I can hang out in Japan without using precious vacation time). So if you want to hang out, or if you want to tell me what to do / where to eat / who to meet, drop me a line!
I'll probably get a cell phone for the time that I'm here (apparently the Japanese aren't really into GSM, so I'll have to rent a real local one), and presumably I'll post its number when I have it.
If you're wondering where I'll sleep and bathe after the conference, it's in Joi's Lab!
[/note] permanent link and comments
Music puzzles
When I explain to people what the MIT Mystery Hunt is, I usually give this example from 2004:
You are faced with a web page whose title is "Track 13" and that embeds an MP3 file. The file is aobut 30 seconds long, and it seems to be two-second snippets from about 15 songs. So you get a bunch of people together, and you identify the songs. Once you write out the track titles, they look something like this:
That is, the first column spells out "ORDER LYRIC CLIPS BY RANK". So now you have to figure out the lyric clips that you've been hearing, which takes even more collaboration and Googling, and once you do, you stare at it, trying to figure out an order until someone comes by and says, "Hey, Rolling Stone just released their top songs list this year." So you order it by that and you get the name of some band, followed by "NOT DON".
As luck has it, everyone in that band (according to All Music Guide) had the letters "DON" in their name, except for one guy. So you call in his last name as the answer, and you move on. We did all this in the Bio Lab of ESG.
In the 2007 hunt, we had a new music puzzle! We began to work on it in the Bio Lab of ESG! But when I asked if anyone remembered "Track 13" or worked on it, they all had blank faces.
Maybe the explanation is not that I'm old. After all, there are veterans on the team who have been there since I joined them. But it struck me as evidence of a generation boundary, which saddened me, especially in my last year at Hopkins where most of my good friends had already graduated.
[/note/mystery-hunt] permanent link and comments
Mon, 05 Nov 2007
PCI Slots
Quoth Johannes Berg:
If Venkatesh went this route, I suppose he'd have more company than I once thought.
[/note/hardware] permanent link and comments
Sat, 03 Nov 2007
Maybe his phone is busy
[/note/voltron] permanent link and comments
I don't worry, I hope
AT&T has been "allegedly" illegally wiretapping Americans for ages and giving that data illegally to the government. Here's the government's take:
I don't "worry" they could bankrupt the utilities. I hope.
If there is no incentive for these corporations, and others in a long line past them, to follow the law, then we no longer have the rule of law: companies will simply do illegal things and then explain that if the law were enforced, they'd have to pay some money.
I've been screaming and swearing about this for a week. I can't understand how anyone can calmly disagree with this.
Let me remind you that the President, who is charge of the executive branch of government in this country, "shall take care that the laws be faithfully executed" according to the Constitution.
[/note/corporations] permanent link and comments
Tue, 30 Oct 2007
Hope from the One Laptop Per Child Project mailing list
That's a good motto.
[/note] permanent link and comments
Tue, 23 Oct 2007
Adding a Website: header to Mailman messages
Very often, I like to quote mailing list messages to people not on those mailing lists. Mailman is a common mailing list program, and Pipermail is commonly used for storing archives. What ends up happening is that I fish around for the archive link and spend a minute or two figuring out which message it is.
So I wrote a short program to do that scraping for me. You can check it out (literally, if you want, with svn) at the mail_tools directory - look for add_mailman_website_header.py and sample_message.
Why the "Website:" header? Thunderbird seems to show that by default, so that's one less configuration option I have to change. (To match this, I changed my alpine config to show it too.)
You may also want to look at the procmailrc snippets I use to insert it into the mail processing pipeline. Embarrassingly, configuring procmail to set it up took as long as writing this thing; it's been way too long....
One more thing: If you run it with 0 arguments, it does a self-unittest (which in a few days will give false negatives; maybe that'll encourage me to improve the program, but probably not!). Hence I give it the meaningless argument "go". It also waits for a configurable (45s by default) amount of time for the pipermail index to get updated, as in real-world tests it beat the pipermail index for the two list messages.
Screenshot: Before
Here's some mail without the header:Screenshot: After
Update 2007-10-24: It actually works now. I worked around what appears to be a bug in the Python email module. Report pending. I'll post a screenshot in a day or two and call this project a success, except for all the other non-Mailman services to index.
[/note/software] permanent link and comments
Announce and discuss lists
I have a habit of entering a community and leaving both an announce and a discuss list wherever I go. The wisdom of this is still unresolved. I thought I'd share one thing I do beyond that: set the reply-to header on the announce list to go to the discuss list.
That way, when there's an announcement and the peanut gallery wants to add something, they'll reply and the people interested in hearing more will hear it.
I remembered this upon reading that the BALUG lists have the same sort of split, and that in particular that they were considering (on an opt-out basis) auto-adding people from discuss to announce.
[/note/sysop] permanent link and comments
Mon, 22 Oct 2007
Rocking the vote
I was reading about Poland and the article used the caption "Rocking the Vote" for a movie. Huh, I wondered. I don't think there's any rock and roll here.
And then I figured out that "Rocking the vote" sounds like "rocking the boat".
Addendum: Page 2 does, indeed, talk about the Polish MTV channel. Says Kasia Szajewska of Wybieram.pl:
[/note/slow] permanent link and comments
Thu, 18 Oct 2007
Ubuntu and Debian
[/note/ubuntu] permanent link and comments
Thu, 11 Oct 2007
Reverse smileys
Kristian Hermansen sent an email to the San Francisco Linux Users Group list expressing shock at my "reverse smileys". Others have, too, so let me take a moment to explain.
Some time around 1995, I started using AOL. (I also stopped some time in the same century.) I learned important vocabulary like "a/s/l" and "rofl" and PC Magazine sent me a free mousepad with Windows 95 hotkeys like "Windows+R" for the Run dialog box. Then our free month expired, and we went on to some other network.
Eventually I got into IM, and I started messaging friends routinely. I got into the habit of making complicated smileys - my favorite was Abe Lincoln: =|:-)= [source]. And some time later on, the smileys started getting turned into pictures. It may have been cool that :-) turned into a picture of a smiling yellow face, but I found it offensive that (a) they (AOL) started doing this without asking me, on other people's computers, so I had no idea how my emoticon was going to be displayed, and (b) that they would totally corrupt smileys like Mr. Lincoln.
So I retaliated. I came up with two counter-attacks. The first was the smartest: :-) would not get graphicalized, I realized. (View the source if it's not clear how that works.) That worked fine in media where I had rich formatting (HTML), but would fail me in emails. It was great for confusing my IMees, for whom it looked like a regular, old-school smiley, except all the other old-school smileys had gone away in favor of yellow circles with black lines and points.
The other way was more drastic and, instead of hiding between the lines, vocally made the point that not all smileys needed to be graphicalized. That was to reverse the smiley. I don't know when I started doing that, but it's probably some time between 1998 and 2000.
I also liked to abuse smileys to make grinning asides in emails. (-; You might wonder why asides needed to grin; usually they wink instead! ;-) I don't know if that idea came before or after I started making backwards smileys in the first place. I don't do this as much now in large part to me having seen Thunderbird turn my closing smileys into lame yellow things that ruin the symmetry.
One day during natural language processing, Jason Eisner said in class that he thought people who did the above thing (presumably without knowing I did it) were making an NLP joke. That added to the feeling that NLP was right up my alley.
All in all, smileys have been a big part of my online life. It's only fitting that the EFF and They Might Be Giants contributed to this post.
[/note] permanent link and comments
Mon, 01 Oct 2007
A strong recommendation
-- Andrew Snow
[/note] permanent link and comments
Wed, 26 Sep 2007
Python police
[/scribble/code] permanent link and comments
Steve Jobs is still a jerk
Q: What do you do when people pay you full retail price and make the products they've bought more useful for themselves?
A: Break your customers' property.
[/note/steve jobs] permanent link and comments
Tue, 25 Sep 2007
OSI vs. FSF summary
There is a prior post with a big long table. Here are some basic statistics from that table (as of Tuesday, September 25, 2007):
Summary: There are more "Free Software" licenses than "Open Source" licenses.
Also, note that the program I whipped up for this is pretty terrible. Consider it the kind of software that academics would use but never publish for fear of embarrassment.
[/note/software] permanent link and comments
OSI vs. FSF
The Open Source Initiative and the Free Software Foundation are two organizations that have put their mark of approval on Free/Libre Open Source Software licenses. For those just joining us, those licenses are the permissions documents that make collaboration on software legal. The GNU General Public License and the "BSD License" (as if there's only one) are the two most famous ones.
I keep hearing about "the proliferation of Open Source licenses", and I also hear people claim their software is Open Source when there's no indication they're using a license that guarantees important freedoms to the software's users. I don't think I ever hear people claim their software is Free Software when it's not - at least, not when they use capital letters.
I also hear from people that Open Source software and Free Software are different things. My feelings on this are that people using the different terms are doing the same things, they just may be thinking different things when doing it. Both groups have an interest in continuing to do what they're doing, even if they think of it differently.
(If you can find me an easy-ish to parse page listing the feelings of other organizations on the topic, like Debian, then I'll try to add them to this next time 'round.)
I wrote a program (source) that scrapes the Open Source Initiative's list of licenses and the Free Software Foundation's list of licenses and comments about them and generate a table showing you which licenses have been approved by which one. I began coding in earnest on Software Freedom Day, and I'm publishing it and its results in belated celebration of that day. So here you all go:
[/note/software] permanent link and comments
Mon, 24 Sep 2007
Fast seek slash
My laptop feels slow. Having run no metrics, I'm going to guess a lot of the reason that apt-get takes more than a second or two to load its database is the seek time of the hard drive. It's some boring 5400 RPM sucker, and it has moving parts which have to move. Totally lame.
So I'll replace it with flash of some kind. Flash is expensive for lots of space, so it's probably wasteful of dollars to make it my /home partition. But if / were fast, then at least apt and application launching would be faster. And swap would be faster in a world where seeks are almost free, too.
Solid State Disk, or CF card
Here are the contenders in pre-packaged solid state land:
So it's off to CompactFlash cards then. Cards compatible with the CompactFlash 4.0 spec can do Ultra DMA mode 4, which I don't even remember how many megabytes a second but it should be fast. The cards themselves should be fast, too; no point putting a slow card on a fast bus. It looks like Transcend's 8GB TS8GCF266 is the best in price-performance, around $140.
What about the flash media dying tragically and abruptly?
It's true, flash media have a maximum number of writes they can take before tragedy. Hopefully things will be fine; Transcend's specifications seem to say has "1 000 000 times" endurance, which presumably means writes. And consumer-grade Flash cards do wear leveling, from what I hear.
If I plan to keep the 2.5" hard drive in this wonderful T43's hard drive bay, I can get the UltraBay Slim HDD adapater (Lenovo, IBM PN 62P4554) for around $50.
I'll try this, I think.
Won't you miss your CD-RW/DVD drive?
lolno.
[/note/laptop] permanent link and comments
Sat, 22 Sep 2007
Circuit art
Or, she's lucky that she made cool puns for Career Day.
[/note] permanent link and comments
Fri, 21 Sep 2007
Fascism 2007
Some notes on American Fascism:
Presumably, we should taser more people who are asking why they're being arrested (vid1, vid2) while a former presidential candidate just keeps talking as if nothing's wrong, and lock up more innocent people in jails where they can't ask why. It's the mainstream.
[/note/politics] permanent link and comments
Wed, 19 Sep 2007
On tacos
[/scribble] permanent link and comments
"It's our job"
Steve jobs thinks it's his job to make sure end-users don't make the iPhone more useful:
What a jerk. This from the man who tried to make his iPods not run with non-Apple software a few weeks ago. Why do my friends give him money?
[/note/steve jobs] permanent link and comments
QTopia first glance
I am making calls from and receiving calls to my Neo 1973. This is wonderful. I can do it thanks to the porting of QTopia to the FIC Neo 1973 platform! There was this press release as well as live, nude downloadable source and binaries as described in this mailing list thread.
Seth David Schoen brought up a good point: the press release mentions that they're Freeing their DRM implementation, too. That silenced my excitement until I could learn more.
Here's a meaningless (in a formal sense) personal testimonial from the developer who says he did most of the porting of QTopia to the Neo:
SXE is an on-phone sandboxing system for untrusted software, and the Neo doesn't use it anyway. I feel safe enough that I can go to sleep, at least.
[/note/openmoko] permanent link and comments
Tue, 18 Sep 2007
after 5 / weekends
[/scribble] permanent link and comments
Mon, 17 Sep 2007
Retort
[/scribble] permanent link and comments
Fri, 14 Sep 2007
html2dom
xhtml2dom[/scribble] permanent link and comments
Eh bien?
"NOTE! I AM NOT REALLY A CRACKHEAD, THAT WAS JUST AN EXAMPLE."[/scribble] permanent link and comments
Thu, 13 Sep 2007
Red Hat 5
From the alpine-alpha list:
I guess some people don't remember the real "Red Hat 5" but only know "Red Hat Enterprise Linux 5". But I'm not old....
[/note] permanent link and comments
Enlightened but confused
"Just went to hear RMS and came away enlightened but confused."[/scribble] permanent link and comments
Wed, 12 Sep 2007
Hey, we're clay!
Frosted Cheerios (via Gaurav)[/scribble] permanent link and comments
Tue, 11 Sep 2007
GNU Radio GSM immplementation
[Discuss-gnuradio] software implementation of GSM
[/scribble] permanent link and comments
Mon, 10 Sep 2007
GNU Free Documentation License comments
I once asked some questions.[/scribble] permanent link and comments
Sun, 09 Sep 2007
Cats and war
Two points:
[/scribble] permanent link and comments
Do something great for your country
Is the above about Canada, or Lonely Planet?
If it is about Lonely Planet, is it telling you to serve the United States by getting off This Island Earth?
[/note/politics] permanent link and comments
nano the all-powerful
I admit it, I use nano for text editing from time to time. Like right now, with this post.
nano is a simple text editor widely derided as being simple. It also has most of the features I want:
Syntax highlighting?
Yeah. Some Gentoo dudes pointed out it had it in 2003. The nano changelog indicates (from a quick skimming) that version nano-1.1.4 - 12/11/2001 was the first with "Preliminary syntax highlighting support".
Also:
Also also (from Freshmeat:
[/note] permanent link and comments
Wed, 29 Aug 2007
XP Minimal Requirement Test
The boottime of this system is extremly long, 30 minutes! After 13 minutes you can see the first icons, but there are 17 minutes more, where you can do nothing, before you can start "working".[/scribble] permanent link and comments
Contacting Congress
Let's say Alan, a regular citizen with no income (at least, that's who I was a few months ago) has a website. Let's say I'm agitated about some issue of national concern, and I want to get my readers to contact their Congresscritter. Let's say those readers don't even know who they elected. How do they do it? That person is missing two crucial pieces of information:
Shouldn't the information of which parts of the country are represented by be information anyone can use to promote democratic engatement?
Okay, so the Senator name is easy - those are two per state, easy to look up. And f you look at the House of Representatives website, they let you put in your ZIP code and tell you who represents you. If house.gov needs more information, it will ask.
But that only tells you who, not how. Different Congress-people want to be contacted in different ways - phone, web form, or email. It would be nice to have a publicly-available database of that. But who will do the hard work to maintain it? And if it's a web form, then those are different on a per-representatve basis. And when Bob uses Alan's website to contact his member of Congress, Alan would prefer to that Bob always see Alan's page templates, advice for what to put in the fields, and so on. So this information should be not only available, it should be machine-usable.
A proposal
So here's a proposal for how to maintain this information:
First of all, a technical note: All the data extraction described below can either be done by a central server that is asked every time someone wants to know, or client-side code that runs on Bob's computer/browser that does the extraction. The advantage of the latter is that it's much harder to block as well as more impressive in the server logs at house.gov.
Who's my Rep or Senator?
It is always going to be easy (in a technical sense) to determine which field on house.gov is the ZIP code entry field. (If Bob doesn't know his ZIP, you can just look it up with e.g. the USPS website.) The responses will be easy to parse, too; just see, of the results returned, which ones actually are a known possible choice according to e.g. Wikipedia.
How do I contact him/her?
All Senators and Representatives do provide web forms. In general they have a common set of fields, and then some have more advanced ones. The central component is just listing which form fields are required; Bob's computer/web browser can just dynamically create a form that matches, all within the look of Bob's site.
If you want to store the results for performance reasons, you don't have to worry about storing it for every possible location or representative. Just cache it once a client requests for about a day, I'd say.
What about reliability?
What to do if the House of Representatives website (or its form handling) is not online at the moment? Recall there are two ways to architect the form submission: Either Bob's computer could directly submit to the form on his representative's web site, or he could submit to a central computer that would do all the submissions. The advantage of the latter is that the central computer can enqueue form submissions that were problematic just like mail servers queue email.
In fact, the same strategy could be used for the form itself! Imagine that Bob wants to submit to his rep's web form but house.gov is unavailable. If the central server doesn't have the form cached, then at least
Why go through all this trouble?
Well, as a public service. It would be nice if anyone could run their own Action Alert site without having to pay or otherwise submit to the will of third parties.
Exactly how much trouble is it?
As I've described it, the whole system is automated. Optionally, a human can call representatives and see how they like to be contacted. If each conversation takes about five minutes, and there are fewer than 600 Senators and Representatives, it takes only 3,000 minutes or 50 man-hours tops to contact everyone and ask their preferred means of contact. This can be done in one shot, or it could be done by volunteers spread across the country.
Now, it would be really interesting to apply this on a state level. Cheap and widely-used action alerts to state senators would make for much more interest from state legislatures in what their constituents think....
[/note/politics] permanent link and comments
Mon, 27 Aug 2007
Inbox Zero
Inbox Zero suggests keeping my INBOX to having zero items in it. Recently I received an email that was informative rather than had information I needed to act on, and it struck me: Why do I use my INBOX as an archive?
So I'm going to try this idea out. (I first heard of it while surfing Planet Debian.) I've been using IMAP labels in (al)pine in a similar fashion to the way Merlin Mann suggests using email, but the big difference is that when an email is dealt with, I don't make it visually go away. So sometimes I dig through INBOX to see what I forgot to deal with.
I actually found the Inbox Zero web site very hard to use. Here are the lessons I've extracted so far:
INBOX is a place emails go before you act on them
The available action space is:
Disable auto-check
"Are you checking the email, Yakov, or is it checking you?"
This means both disabling my instinct to auto-check as well as the technology that auto-checks every minute. Every 30m or 60m is okay. I'm not quite sure what to do about the system monitoring alerts, though.
Do email in dashes
Defragment the day; see the Yakov link above.
[/note/organize] permanent link and comments
THIS LICENCE MAY CONTAINS TRACES OF NUT.
http://lists.debian.org/debian-legal/2000/12/msg00058.html (via Christph Berg via Planet Debian.)[/scribble] permanent link and comments
Backporting with apt-src
Let's say you run Ubuntu but want the freshest package of something from Debian Unstable. Or you run Debian Stable and you want some crazy multimedia package that only Ubuntu packages.
For many packages, it is pretty easy to "backport" them between distributions or between releases. Let's say you run Ubuntu or Debian stable and you want the latest version of my alpine package. Here's what you do:
Step 1: Make sure you have an appropriate deb-src line
Backporting is the process of taking source packages and compiling them on your Debian(-like) system. The easiest way to find Debian "source packages" is the same way you find Debian "binary packages": apt-get and its configuration.
Make sure you have this line in /etc/apt/sources.list:
Step 2: apt-get update
Step 3: install "apt-src"
Just do 'sudo aptitude install apt-src'. apt-src is a helper program that makes compiling source packages easy. It's not necessary, but it prevents you from having to type too many commands.
Step 4: apt-src -bi install $package
If you wanted to install 'alpine', just do:
The "b" stands for "build", the "i" stands for "install the resulting package", and the word "install" means "download the source for alpine as found in a Debian source line from sources.list". apt-src will "install" the source into the current directory, make sure you have all the required packages to build the package (a process called "satisfying the build dependencies"), build it, and install the resulting .debs.
Step 5: Run the new program
You should be done now!
[/note] permanent link and comments
Sat, 25 Aug 2007
Go go gadget hyperlink.
http://diveintomark.org/archives/2004/05/12/copy-editor[/scribble] permanent link and comments
Today
This is like a new year's resolution: Starting today, I'll chronicle how much money of my money I give to oil companies, monpolists in the entertainment industry, and other groups whose activities I think are bad for humans. I'll also tally the money I give to people doing work that I think is good that hopefully offsets that.
See the note about it for details. In the future, hopefully some smart application will put a tally of these stats on the right side.
[/mmm] permanent link and comments
Money meets mouth
Mark Pilgrim wrote a lot a year or so ago about his switching from Mac OS X to GNU/Linux. One small bit says:
This is as good a start as any to the MMM section of asheesh.org. I currently have a full-time job, and in this world, when you fund something, you are voting with your dollars for that thing's continued existence. That's as true for Apple's lock-in technology as it is for AT&T's illegal wiretapping program.
I claim to think that consumer freedom is important, that software freedoms are important, and that the environment is worth saving rather than trashing. In that case, if I'm ethical or at least not a hypocrite, I should put my money where my mouth is.
I read a few years ago about some remarks by some guy at some open source software conference. A young-looking dude wearing a suit and a weird expression and holding his arm asked:
(For context, the Electronic Frontier Foundation is a non-profit whose sole focus is legal and lobbying action to protect digital rights.)
For years, I had been thinking in terms of this challenge, but I knew I didn't have the kind of income and spending money where my actions would be substantial. In fact, I was in a tough spot like lots of people with very litle money: You have needs, and then wants, then somewhere hazy after that there's a planet to think of.
Well, now I'm a rich man - I have a job that pays me thousands of dollars every year. Those thousands of dollars get to go somewhere, and I get to pick. (Later on I would learn that this guy Lessig who raised this issue was an interesting guy in other ways.)
When you vote with your dollars that a movie industry that sues its customers should continue existing, or when you vote with your dollars to Microsoft that their illegal tactics are okay, your dollars will turn around and be used (quite literally) to oppress others. I say, not in my name.
As Mark Pilgrim noted: "[M]ost people don’t look at it that way, but there it is." I'm creating this section to make sure there's a record in public that I started down this path so, if I ever want to abandon it, I can see how far I've come.
[/note] permanent link and comments
Fri, 24 Aug 2007
Using an incorrect tag is not the solution
http://www.alistapart.com/articles/qtag[/scribble] permanent link and comments
Hydrocodone
I just read Hydrocodone Abuse on Rise in Appalachia. Some selections:
Maybe God is just a chemical fiction.
Those quotes speak for themselves.
All that Vicodin-selling spam is suddenly so much sadder now.
What's your drug schedule?
[/scribble] permanent link and comments
Sat, 04 Aug 2007
About me
I'm Asheesh Laroia. I want as many people as possible to have as much information as possible and be able to be as free as possible to act on that information. I use "information" broadly to include, for example, the current weather, the math necessary to predict future weather, and computer software that does such calculations. I once thought that this "information" should include information about people, but now I'm more confused about that.
Lately I've had to pay bills, so I did what I always do when I have a problem: I thought about computers. Right now, I work at Creative Commons doing just that. Creative Commons is a non-profit in San Francisco that I love because it works to make culture more available.
[/about] permanent link and comments
Wed, 01 Aug 2007
bbq
In the same vein as "Barbie in a Blender", I like the phrase "barbie queue". It serves as a convenient alternative to the word "barbecue" without sacrificing the hilarity of ubiquitous bbq.[/note] permanent link and comments
This is my first post
This is my first post with PyBlosxom.
[] permanent link and comments