Site menu:



Site search

September 2017
« Mar    

Recent Posts



Nexus 5 TWRP Backups

Where are they stored: /data/media/TWRP/BACKUPS/<device ID>/<date>...

This is not visible as “external storage” (i.e. /sdcard/0) so you need a root file browser to manage those backups.

Google+ is now out for Apps users

Took them long enough, but they eventually figured it out.

No Google+ with Google Apps accts

I thought I’d check out Google+; a friend sent me an invite. Looks interesting. BUT… my email is on Google Apps. And it turns out Google Apps accounts can’t have Profiles, and a Profile is needed for Google+. So.. turns out I can’t use Google+ because I use another Google service! Ah well.

(Google does say that support for Apps users is coming “soon”… we’ll have to see.)

Begging the Question

Everyone knows that “begging the question” doesn’t mean what you think it means; it means, in an argument or discussion, assuming the question to be proved.  It’s of course a fallacy to be avoided.

I think that few people save philosophers and logicians actually use it that way, and there are other terms that could serve as well; but there’s another common usage of it which deserves to be elevated as there’s no good alternative, in English at least, for that meaning.

What people commonly mean when they say “That begs the question of…” is that something practically makes the question beg itself to be asked.  Many common situations are like this; if we’re out of food in the fridge, what are we going to eat for dinner?  If we’ve decided not to give in nor fight, we have to answer the obvious question before us, which is what shall we do?  Or in other words, if we decide not to give in nor fight, it begs the question of what should we do instead?  Philosophers, logicians and language purists all over the world (ok, both of them that might read my blog) cringe disdainfully at the blasphemous words I write above, but what alternative is there to express this idea?  It’s much stronger than “raises” or “brings up the question”; “begs us to answer the question” is just a circumlocution, and “forces the question” might do but it seems too strong to me. “Forces us to answer the question” is more correct, but wordy (and still too strong).

English has many dual-use expressions, which mean different things in different contexts.  I think it’s high time we allow questions to be begged in common parlance, to admit that that expression has a perfectly legitimate use, and to stop lording it over people who use it that way.  Of course this begs the question of how we might go about popularizing that idea; perhaps someone ought to write a blog post about it.

New server!

This WordPress blog is now hosted on an Ubuntu VM via Amazon Web Services free account!  Amazingly, with the free account you get a full-time “micro” (10GB) VM to run anything on; I installed Ubuntu 10.04, full LAMP stack, WordPress, etc.  Full root/ssh access.  Migrated my blog over from the old server ( and it came up pretty much instantly.  Even feels faster now!  Go Amazon!  (Question: what will it cost after the first year’s free account runs out?)

Also I’m now using namecheap for DNS hosting.  Free, extremely easy to use and modify.  The control panel is very simple, no weird popups or multi-page forms.  Thumbs up to  And btw, this blog is now at, which took all of about 30 seconds between Ubuntu/Apache config and adding a CNAME with namecheap.  New CNAME was set and propagated instantly, pretty amazing.

A circular git-svn workflow

Here’s my NEW latest-and-greatest git-svn workflow.  I’ve spent a lot of time thinking about git svn workflows and how to optimize them in a mixed git/svn environment where the repo is svn for historical reasons, and some of the team is using svn directly, but others want the flexibility of git.

Update: ToodleDo is back

Wow, makes me realize how reliant I have become on it!  The site admins handled the whole thing very well, and didn’t lose any data.  Kudos to them!

ToodleDo is down… ouch!

This is what happens when people (ahem) get too reliant on web services.  This is what toodledo‘s home page looks like as of last night, and still this morning (12 hours later):

“So, here’s the story. A big storm went through the city where our datacenter is located. The datacenter decided to proactively switch to generators. During the switch, something got screwed up, and the power went off for a few minutes. As (bad) luck would have it, this caused our database to get corrupted. We are currently working to bring it back online and restored from the live backup. The crack team at Rackspace is on the job. Thanks Rackspace! Unfortunately, the database is so large, that it will take some time to transfer and verify all the data. Hopefuly not more than a few hours. We know that this is very bad, and we apologize for any inconvience that this will cause. Please check the forums when we are back online for a full report.

Update: Its obviously taking longer than we expected and we are really sorry for that.”

ToodleDo is a really great online GTD-style todo manager with lots of great features, simple interface (for the most part), very responsive developers, and inexpensive subscription program.  I’ve tried lots of others and ToodleDo is where I ended up; I need something online that’s available wherever I am.  Their “slim” version works great on the Android G1 browser even.

But… now they’re down, the database is corrupt, and the last backup I have is (of course) way too old to be useful.  Cue feeling of helplessness.  Hopefully it will be back up soon; the TD folks must be going crazy right about now.

HOWTO: Back up a rooted Android phone with Nandroid

Power off as usual, then Home+Power to boot into recovery mode. Then follow the directions (Alt-B). This assumes you’re running one of the common root ROMs like JF or Haykuro which includes Nandroid in recovery mode.

Python: executing code in a module’s context

While working on SCons recently, I came across an interesting conundrum.  How can you load an arbitrary piece of python code (file, string, or code block) into a module’s namespace?

The solution is quite simple once you know what to do, but finding it took me some time and I had to learn a few things — which is what it’s all about!  Read more »

iTunes Music Store: can’t buy iTunes gifts anymore

My account is “ineligible” to buy itunes gift certs online as of a few weeks ago. I suspect they’ve just turned off this functionality entirely due to the recent Chinese piracy issues.
Here’s the reply I got from itunes support when I asked about it: Read more »

Backup an Android Developer Phone

How to back up an Android Developer Phone (ADP1) (like a Google G1, but unlocked and with slightly different firmware), using Windows as the host OS.  This does NOT erase the contents of the phone so it is totally safe. Read more »

Teaching programming to a 9-year-old

I decided to teach my 9 year old son a little bit of programming, so eventually he could write a simple video game.  Before this, the longest python program he had ever written was: print “Carl is cool!”

Tools needed: python, pygame, and a python IDE.  I chose SPE.  We decided to do it on Windows for now.

So far in the first week he’s making good progress; we’ve covered constants (numeric and string), variables, while loops, and simple functions.  Explaining function arguments and parameters is not easy!

New G1 phone

Time to retire the Glofiish.  No more Windows Mobile!  I never liked the OS (even WM61 which I upgraded to “unofficially”), though there are a lot of useful and well-thought-out apps for it.

Since I’m a die-hard T-Mobile fan and wanted a 3G smartphone, the Android G1 seemed like the obvious choice.  I got an unlocked dev phone by joining the Android developer program.  Having a root shell on your phone is something else!  Overall I think it has a lot of potential and I’m really enjoying it.  An open source phone OS is a really exciting idea, and I hope it takes off.

I’ll post something soon about my experiences so far with the apps it comes with and what’s available on the Android Market.

Multiple Shells and startup files

Because I work on a lot of different Linux/Unix systems, I have a large and confusing set of shell startup files that don’t always work together well.  Here’s an attempt to get all that info in one place so I can start to rationalize that setup.  Let’s say you want one set of startup files that work no matter whether you’re running zsh, bash, or ksh.  I’m not even going to get into csh-like shells, those are pretty easy to avoid in all modern systems. Read more »

WordPress Update

Now running WordPress 2.5.1; should be pretty seamless.  Looks OK so far.  I used the new WordPress Auto-update plug-in which worked perfectly, first time!

OpenSSL cert with multiple domain names

I have a mail server that goes by several names:,, and just “server2”. More commonly you might want an SSL cert for and How can you make a single cert that contains both names so browsers or mail clients won’t complain about the cert name not matching the actual name? The answer is subjectAltName. Assuming you’re using “openssl req” to create the cert, here’s a working openssl config file, after the jump.

Read more »

E-TEN Glofiish X500+ software

The Glofiish comes with a number of software apps preinstalled. If you hard-reset the device and press the camera button while it reboots, the E-TEN apps don’t get installed. It works just fine as a Windows Mobile 6 device without any of the apps; however some of them can be useful. Here’s a list, from the Application Recovery app:

Read more »

first post from my new Glofiish!

I’m writing this on my new windows Mobile device, an ETEN Glofiish. It’s very nice (beautiful!) but the handwriting recognition is something I will need to work on, at least to get fast at it.

Looking for a new gadget

It’s time to ditch the old Palm (actually a Sony Clie NX70). It was a great device in its time, but it’s showing its age. What I really want is a single do-it-all device: phone, internet (GSM and wifi), PDA. I use T-Mobile so GSM is the way to go. They don’t have a 3G network yet, so that feature is a moot point. But wifi and T-Mobile’s 2.5G network is good enough.  Read on to see what I ended up with! Read more »