Please consider the blog defunct

Wednesday, January 18th, 2012 @ 2:20pm

I do not expect to be post­ing here any­more. I make no promises about the con­tin­ued exis­tence of the present content.

American Theism and the Treaty of Tripoli

Wednesday, June 29th, 2011 @ 4:15pm

In mod­ern American polit­i­cal dis­course, a great many indi­vid­u­als have been mak­ing the claim that America was founded by Christians as a nation built upon Christian moral­ity. Somehow, mind-bogglingly, these claims are made in spite of the exis­tence of the Establishment Clause of the First Amendment to the United States Constitution:

Congress shall make no law respect­ing an estab­lish­ment of reli­gion, or pro­hibit­ing the free exer­cise thereof

I was recently pointed to a new argu­ment against the Christian Nation idea in the form of the Treaty of Tripoli, which con­tains, as Article 11, the text:

As the Government of the United States of America is not, in any sense, founded on the Christian reli­gion, — as it has in itself no char­ac­ter of enmity against the laws, reli­gion, or tran­quil­ity, of Mussulmen, — and as the said States never entered into any war or act of hos­til­ity against any Mahometan nation, it is declared by the par­ties that no pre­text aris­ing from reli­gious opin­ions shall ever pro­duce an inter­rup­tion of the har­mony exist­ing between the two countries.

Not that the wingnuts that would make such absurd claims would lis­ten to rea­son but the Treaty of Tripoli was unan­i­mously rat­i­fied by the US Senate and signed into law by John Adams in 1797. That the Treaty of Tripoli dates to 21 years after US inde­pen­dence and 9 years after the US Constitution makes it a pretty clear indi­ca­tor of both national sen­ti­ment and the intent of the found­ing fathers, what with them still being around and all.

Maybe I should start tak­ing a more mil­i­tantly athe­is­tic stance to my per­sonal philosophy.

The word with no vowels

Friday, May 6th, 2011 @ 1:08pm

There is, to my knowl­edge, one, and only one, word in Modern English that con­tains no vowels.

For the sake of clar­ity, vow­els are the let­ters ‘a’, ‘e’, ‘i’, ‘o’, ‘u’, and, when rep­re­sent­ing vowel sounds, ‘y’, and ‘w’.

As a brief aside, if you don’t believe that ‘w’ can serve as a vowel, com­pare the pro­nun­ci­a­tions of “plow” and “snow”; ‘w’ serves as a vowel in the lat­ter case. Noting that ‘w’ can be a vowel elim­i­nates “cwm” and “crwth”.

There is, how­ever, one word that does not use any vow­els or other let­ters to rep­re­sent vowel sounds; its vowel is implied. The word is “nth”.

Fortune Cookie: 2011-04-27

Thursday, April 28th, 2011 @ 1:06am

To teach is to learn twice.

LEARN CHINESE — East
東(dōng)
Lucky Numbers 14, 30, 28, 25, 24, 1

Commentary: To for­get is to learn twice.

Tales of epic sailing failure… on the West Coast

Tuesday, April 12th, 2011 @ 1:54am

This tale has an index; a pref­ace, which presents two points; and a main body. This para­graph serves as the tale’s index, the next will be the pref­ace and then all remain­ing con­tent will be the tale itself.

To pref­ace my tale, I need to put forth two points. Firstly, I would like to make clear that my favorite branch of the United States Armed Forces is the United States Coast Guard. Secondly, I have no sailed Synchronicity in both the waters of the Atlantic and Pacific Oceans.

So, now, let’s get to the meat of the story. I am giv­ing away my Hobie 16, Synchronicity, before I move back to Boston (have I men­tioned that I’m mov­ing back to Boston?). As is my way, I would far pre­fer to gift Synchronicity to friends or friends of friends than to try to sell her for some hun­dreds or a thou­sand dol­lars to some­one ran­dom through Craigslist. As such, Synchronicity remains in my social cir­cles and goes to Denise H. and Ted S.

If you’re going to give away a cata­ma­ran to folks who haven’t rigged or sailed a cata­ma­ran before, clearly you should go out sail­ing with them; this is, of course, more clear if you haven’t man­aged to sail your own cata­ma­ran since bring­ing it out to the West Coast. So, Denise, Ted, and I grabbed Synchronicity, grabbed her rig­ging, and headed over to the Treasure Island Sailing Center, which is a won­der­ful small boat­ing facil­ity with a con­ve­nient ramp if your boat is light enough to carry by hand. For a nom­i­nal fee, we were able to park car and trailer, as well as launch boat.

With about six (6) knots of wind and rea­son­ably calm waters, we were able to pick up a fair bit of speed, even though we were inten­tion­ally spilling quite a bit of wind (it’s been a while, no rea­son for us to go over­board (lit­er­ally or so to speak)). All in all, quite a won­der­ful sail.

At some point, when we were half a mile or so out from Treasure Island (a few tacks in), there was a funny sound; the sound was as one piece of metal clank­ing against another. I’d say that we were mov­ing at a decent 8 – 12 knots (the rud­ders were singing), and I thought it was just one of our water bot­tles bang­ing against the tram­po­line frame. A few moments later, there was another clank and I asked if any­one else heard it. Others had heard it but, with­out any par­tic­u­lar idea of what it was, we didn’t have much rea­son to pay atten­tion. A few moments later there was a loud snap­ping noise, the port shroud snapped, and the mast crashed into the Bay; the event took no more than a frac­tion of a sec­ond, all told.

Luckily, nobody was caught by the freed cable or the plum­met­ing mast. Unluckily, our mast, sails, and rig­ging were no longer in our boat. After the “oh shit” moment had passed, it was time for save the boat and don’t drift into that barge mode. Did I men­tion that we were right in the midst of a num­ber of large sta­tion­ary barges that are moored in the Bay just south of Treasure Island? Well, we were.

Taking all the rig­ging down from on the boat proved hope­less, so I hopped in the water and started work­ing from there (quick aside, wet­suits are amaz­ing). With a fair bit of wran­gling and remov­ing all the bat­tens from the main­sail (another aside, small knives are great when you can’t untie ropes and need them free in a hurry), we man­aged to haul every­thing back onto the boat.

Having brought pad­dles in case any­thing got hairy, we started pad­dling for Treasure Island. Paddling, with the cur­rents and, more so, the wind, got us worse than nowhere. Despite our efforts, we were trav­el­ing par­al­lel to Treasure Island and mostly in the direc­tion of the Bay Bridge.

Eventually, we man­aged to get the atten­tion of a pass­ing tug­boat (really and truly an absolutely mas­sive tug­boat). The tug offered to call the Coast Guard and drag us to a nearby buoy, which we gra­ciously accepted. Tossing us a rope as thick as my fore­arm, we tied up to the tug and they slowly started tow­ing us (the del­i­cacy exer­cised by the cap­tain was a work of art).

Eventually the Coast Guard showed up (they had another cap­size to deal with first). After some dis­cus­sions between us and the Coast Guard boat, as well as the Coast Guard boat and their base, they offered to tow us back to Treasure Island (quite gen­er­ous in the face of the gen­eral Coast Guard pol­icy of help­ing indi­vid­u­als in dan­ger but avoid­ing any direct involve­ment in sal­vage oper­a­tions). We gra­ciously accepted the offer, thanked the tug­boat and were slowly dragged back to Treasure Island.

Returning to shore, and haul­ing the boat out, we took stock of our sit­u­a­tion. None of us were par­tic­u­larly injured (torn cuti­cles and a few fiber­glass splin­ters from the bat­tens don’t count for much), the boat wasn’t in ter­ri­ble shape (snapped shroud, cut ropes to hold the bat­tens), and we even sailed for a while. All in all, for a pretty epic sail­ing fail, every­thing turned out pretty well in the end.

Fortune Cookie: 2011-04-03

Tuesday, April 5th, 2011 @ 1:39am

Keep in mind your most
cher­ished dreams
of the future.

LEARN CHINESE — Mango
芒(máng) 果(guǒ)
Lucky Numbers 26, 36, 46, 17, 48, 6

Commentary: As one that is about to move from the West to the East Coast specif­i­cally to pur­sue some of his cher­ished dreams for the future, I am acutely aware of the need to keep the fore­most amongst them squarely in my mind.

Fortune Cookie: 2011-03-29

Wednesday, March 30th, 2011 @ 11:02am

If you want to win any­thing – a
race, your self, your life – you
have to go a lit­tle berserk.

LEARN CHINESE — Spoon
勺(sháo) 子(zǐ)
Lucky Numbers 41, 49, 46, 16, 51, 12

Commentary: Drink Powerthirst and you’ll win at every­thing, forever.

Fast, recursion depth safe, list flattening for Python

Monday, February 28th, 2011 @ 6:10pm

I’ve been using Python at work a lot recently (yeah, I know, took me long enough) and find­ing it to be fan­tas­ti­cally use­ful for all sorts of things.

Anyway, I found myself need­ing a mech­a­nism for flat­ten­ing nested con­tainer objects and a quick google search led me to a Right Foot In arti­cle on var­i­ous flat­ten algo­rithms. Seeing as I needed some­thing to work on con­tain­ers that aren’t tuples or lists and I’m not very good at leav­ing well enough alone, I went about try­ing to come up with my own method.

Here’s what I’ve got so far:

def flatten_to_list(something):
    if not hasattr(something, '__iter__'):
        return [something]
    retlist = list(something)
    i = 0
    while i < len(retlist):
        while hasattr(retlist[i], '__iter__'):
            if not retlist[i]:
                retlist.pop(i)
                i -= 1
            else:
                retlist.insert(i, retlist[i].pop(0))
        i += 1
    return retlist

In at least one test case, my method appears to be faster than the best method in the Right Foot In arti­cle. I’m still wrestling with name­space issues relat­ing to the use of timeit but I’ll try to get some actual speed num­bers and test cases up later.

UPDATE: I am an idiot. My code was faster because my test case exploited a degen­er­ate case for the algo­rithm; the code below, which is much closer to the orig­i­nal at Right Foot In, is faster.

def flatten_to_list(something):
    if not hasattr(something, '__iter__'):
        return [something]
    retlist = list(something)
    i = 0
    while i < len(retlist):
        while hasattr(retlist[i], '__iter__'):
            if not retlist[i]:
                retlist.pop(i)
                i -= 1
            else:
                retlist[i:i + 1] = retlist[i]
        i += 1
    return retlist

Someone missed my connection

Monday, February 7th, 2011 @ 10:27pm

Here’s a first for me: some­one posted a “missed con­nec­tion” about me on craigslist. One of my room­mates ran­domly found it.

Bloodhound — w4m — 23 (SOMA / south beach)

I met you Saturday night at Bloodhound. We pet the awe­some Saint Bernard and talked about mobile media. You’re pretty cool, and I’m sorry we didn’t get to talk more. Thanks for mak­ing my Saturday night :)

Recollections on a Vegas Christmas

Monday, January 31st, 2011 @ 6:20pm

It’s been a bit over a month since my brother and I drove to Vegas to spend Christmas week­end (plus a few days) with the rest of our fam­ily (who flew out). I was being lazy but it seems that I’m get­ting called out so here are my major recollections.

The water : The water in Vegas tastes ter­ri­ble and is no good for rins­ing. I don’t think that I’ve dealt with worse tap water in the US before. I was quite happy to have refilled and brought my 5 gal­lon, road-trip, water jug before leav­ing San Francisco.

The drink­ing : In Vegas, there is booze every­where and you can drink it any­where on The Strip. Being able to wan­der from place to place while car­ry­ing drinks is quite con­ve­nient; I really enjoy par­tak­ing of pub­lic activ­i­ties while car­ry­ing a drink or, to put it bet­ter, it’s nice to have drinks with­out hav­ing to be cooped up in a bar. Then, of course, on top of the abil­ity to wan­der with booze is how very easy it is to get an awful lot of the stuff: free drinks while gam­bling, drink spe­cials all over the place, cheap con­ve­nience stores just across the street.

The hang­over : Vegas leads to an almost per­pet­ual state of hang­over. I wasn’t drink­ing enough to get a par­tic­u­larly bad hang­over but between the drink­ing, the ter­ri­ble water, and stay­ing up late, I was def­i­nitely a below 100% most of the trip. P.S. Worth it.

The poker : I should never play poker with peo­ple that aren’t my friends and I should never play poker where any­one expects me to drop more than $20-$40. I lost about $100 in under an hour (maybe half that) the first night we arrived. Fuck every­thing about Vegas poker.

The craps : Let me tell you about Christmas Day (parts of it at least). Christmas stuff hap­pened; Dave and I hung out with the rest of the fam­ily; and we all went out for din­ner at Pampas Churrascaria, which was phe­nom­e­nally good. After din­ner, we all wan­dered The Strip for a bit, lost a lit­tle money on a few things and then Dave and I split off from the rest of our fam­ily to con­tinue adven­tur­ing on our own.

I had been in con­tact with my friend Gautham, who hap­pened to con­cur­rently be in Vegas, and we made plans to meet up later to play craps. While Dave and I were wait­ing for Gautham to be ready to hang out, we had a few more drinks, checked out the Vegas archi­tec­ture (Luxor is awe­some; Aria is gor­geous; MGM is strangely green), and gen­er­ally wan­dered around. At some point, we grabbed our­selves a cou­ple of Four Lokos (so ter­ri­ble but so awe­some) from a con­ve­nience store and, shortly there­after, man­aged to prop­erly get a hold of Gautham.

We met up with Gautham at the Aria and promptly decided that $25 was too high a min­i­mum for craps. Keep in mind that I had never played craps before in my life. So we wan­dered over to the Bellagio to avail our­selves of their $10 min­i­mum tables. Understanding the basic prin­ci­ple of craps (roll some dice, sev­ens are good open­ing rolls but bad oth­er­wise) I mostly took my guid­ance from Gautham at first and started avail­ing myself of free scotch & sodas. As I became slightly more ine­bri­ated and started to get the hang of the game, things became increas­ingly more enter­tain­ing. We had a pretty good table with some pretty fun folks around but, most impor­tantly, we had a really good win­ning streak. At peak, I was prob­a­bly up about $300-$400 and when we even­tu­ally cashed out, I was up about $200 and a hand­ful of drinks.

The net : Between my poker losses, slot machine losses (shiny things are hard to resist), drink pur­chases, food pur­chases, roulette win­nings, roulette losses, and craps win­nings, I ended up leav­ing Vegas slightly (<$50) richer than when I arrived.

The guns : On our last full day in Vegas, Dave, Joe, our dad, and I went out to shoot some guns. At first we went to The Gun Store, which is adver­tised all over the place, but the line was atro­cious (well over an hour, pos­si­bly two) so I fired up Yelp and found out about Las Vegas Gun Range & Firearm Center. We bailed on The Gun Store and found that the line at Las Vegas Fun Range & Firearm Center was a few min­utes long.

I fired off a few clips from a 9mm pis­tol (don’t recall the make or model) and a cou­ple clips from an H&K MP5. Man oh man, let me tell you, the MP5 is a nice gun. Firing the MP5 fully auto­matic was kind of neat but being zom­bie sur­vival minded, I rather pre­ferred switch­ing it to semi-automatic and going for accuracy.

The com­pany : Vegas was awe­some. Hanging out with Dave was awe­some. Hanging out with Gautham was awe­some. Having din­ners with my fam­ily was nice. Going to the Valley of Fire with my fam­ily was neat. Hanging out with my fam­ily on the strip was not par­tic­u­larly awesome.

I’m pretty sure that, going for­ward, I am going to view Vegas as a place to go with friends but not fam­ily. I would say, if you’re going to Vegas with fam­ily, plan to do some stuff with them and plan to ditch them the rest of the time.

Return : I’m prob­a­bly going back with a bunch of Fort Awesome folks in April and I’m really look­ing for­ward to the trip.

I did NOT coin the term wiki-hole

Monday, January 24th, 2011 @ 1:55am

Before mak­ing any claims to hav­ing coined a term, it is gen­er­ally a good idea to check that no one else has used the term before. Having just spent three hours and change read­ing through arti­cles on the Warhammer 40K Wiki (what can I say, I like super far future sci­ence fic­tion), I couldn’t help but feel like I’d been stuck in a black hole of triv­ial knowl­edge. This wiki-triggered and wiki-fed hole in time was not a unique expe­ri­ence for me; I have fallen into these before on other wikis in the past.

Having freed myself, the term “wiki hole” came to mind as a per­fect term to describe. Not want­ing to make any (eas­ily refutable) ridicu­lous claims, I per­formed a cou­ple quick google searches (1 2) only to find that the term already exists. I can’t say that I’m par­tic­u­larly sur­prised that some­one else has already coined the term “wiki-hole” – it is phe­nom­e­nally intu­itive – but I am glad that my lin­guis­tic instincts were reasonable.

Will O’ The Wisp (cocktail recipe)

Sunday, January 16th, 2011 @ 8:04pm

Continuing my ear­lier work in the realm of mixol­ogy, I would like to present my sec­ond cock­tail inven­tion. The inven­tion of this cock­tail is the result of play­ing around with gin, Chartreuse, St. Germain, and var­i­ous other liqueurs in an attempt to make some­thing tasty. This cock­tail earns its name, Will O’ The Wisp, from its faint, ghostly, green color.

Ingredients:

  • 3/4 oz Green Chartreuse
  • 3/4 oz St. Germain
  • 3/4 oz White Vermouth
  • 1 dash Lavender Bitters
  • 3 oz Dry Gin
  • 1/4 oz Herbsaint or Absinth

Recipe:

  1. Pour the Chartreuse, St. Germain, Vermouth, Bitters, and Gin into a cock­tail shaker
  2. Pour the Herbsaint/Absinth into a chilled cock­tail glass
  3. Swirl the cock­tail glass, coat­ing the sides, and pour­ing off any excess Herbsaint/Absinth
  4. Add ice to the cock­tail shaker and shake
  5. Pour shaken cock­tail into the pre­pared glass

Notes:
The Herbsaint/Absinth can be skipped, though I don’t rec­om­mend it. The Lavender Bitters are also optional but very highly rec­om­mended. I would rec­om­mend stir­ring this cock­tail (instead of shak­ing) as the result­ing bev­er­age has a very dif­fer­ent appearance.

Fortune Cookie: 2010-12-27

Monday, December 27th, 2010 @ 4:08pm

It is bet­ter to have beans
and bacon in peace than
cakes and ale in fear.

Vegetable
蔬(shǔ)菜(cài)
Lucky Numbers 10, 13, 15, 20, 25, 28

Commentary: It is bet­ter to have beans and bacon in fear than cakes and ale in peace.

SanFran to Vegas on one tank: or exactly why I love my car

Sunday, December 26th, 2010 @ 12:01am

My brother and I drove from San Francisco to Las Vegas yes­ter­day where we met up with the rest of our imme­di­ate fam­ily for the whole Christmas thing. I don’t really have an awful lot to say about the whole Christmas thing that I haven’t said a great many times before and, although I could prob­a­bly find things to say about Las Vegas, there is very lit­tle to say that cap­ture the sheer je ne sais quoi of this place.

Really, to be entirely hon­est, this post exists solely so that I can gloat about the fact that I man­aged to drive from San Francisco to Las Vegas on less than one tank of fuel; I really do love my Volkswagen TDi.

Fortune Cookie: 2010-12-15

Saturday, December 18th, 2010 @ 5:34pm

Good news is on the way.

LEARN CHINESE — Daughter
女(nǚ)兒(ér)
Lucky Numbers 20, 18, 5, 9, 10, 54

Commentary: Good ways are not in the news.

The potato button is the apex of human technology

Monday, November 29th, 2010 @ 4:50pm

The potato but­ton is the sin­gle great­est thing that mankind has ever achieved. Dwarfing sliced bread, slightly sur­pass­ing the Saturn V, and even edg­ing out the Internet, the potato but­ton expresses our unpar­al­leled supe­ri­or­ity over not just every other crea­ture on this planet but over the pri­mor­dial forces of nature themselves.

The potato but­ton, for those that have not beheld its unmatched glory, is a but­ton on our microwave that cooks pota­toes. To expe­ri­ence the potato button’s awe­some power, one merely inserts one (or more) potato(es) into the microwave and pushes the potato but­ton, just the potato but­ton; one need not set a timer, choose a power level, or even, for that mat­ter, push the start but­ton. Some num­ber of min­utes after push­ing the potato but­ton, any raw pota­toes one has inserted will emerge as baked pota­toes (or a fan­tas­ti­cally good fax­im­ile thereof).

The glory of the potato but­ton comes from the com­bined tech­no­log­i­cal force that is microwaves, heat sen­sors, micro­con­trollers capa­ble of han­dling feed­back sys­tems, and the mod­ern cul­ti­vated potato. The potato but­ton is a tech­no­log­i­cal tour de force that turns a rel­a­tively straight­for­ward food prepa­ra­tion task into a task that is so utterly triv­ial as to require nigh on no con­scious thought whatsoever.

Now, it may be the case that I am being a lit­tle tongue-in-cheek by sug­gest­ing that the potato but­ton is more sig­nif­i­cant than the moon land­ing but I do firmly believe that the potato but­ton is an absolutely quin­tes­sen­tial exam­ple of why tech­nol­ogy exists. Technology exists to make the triv­i­al­ize the tasks that we must oth­er­wise per­form so as to allow us to per­form grander tasks. Technology, in gen­eral, is much like soft­ware, in spe­cific, because it allows us to take tasks, abstract them, and build larger tasks from those abstracted components.

The sheer sim­plic­ity of cook­ing a potato with the push of a sin­gle but­ton is a gigan­tic step toward remov­ing time and thought from prepar­ing food. I am not sug­gest­ing that we should aban­don cook­ing alto­gether; cook­ing is fun and reward­ing as a task and group expe­ri­ence. Imagine, how­ever, a world where you never have to think about food prepa­ra­tion, except as a hobby. In Star Trek, most food is repli­cated as needed; imag­ine how much time and pro­duc­tiv­ity is gained by the removal of the time needed to pre­pare food. Sure restau­rants, cafe­te­rias, or mess halls can serve much the same pur­pose of remov­ing the need for food prepa­ra­tion but those do not let you eat at home; deliv­ery ser­vices allow one to eat from home with­out tak­ing time to pre­pare food but from an infra­struc­ture stand­point do not scale well. The more that we can use tech­nol­ogy to triv­i­al­ize the tasks of our lives, the more time we have to push beyond our cur­rently con­fines and step up the tech­no­log­i­cal lad­der toward the future.

Seriously though, pota­toes are great and being able to com­pletely cook a potato by push­ing one but­ton is amazing.

Ironhide (cocktail recipe)

Thursday, October 28th, 2010 @ 5:02pm

Some num­ber of weeks ago, hav­ing dis­cov­ered Maraschino liqueur, I con­cocted a vari­a­tion on my beloved Manhattan. I have been mean­ing to write up the recipe here for a while but had been stuck on com­ing up with a name; I needed a name befit­ting a strong whiskey cock­tail with con­nec­tions to myself and the color red. Having thought for quite a while and come up with a bunch of names that were already taken by other cock­tails, I set­tled on nam­ing the drink after the griz­zled, old Autobot, Ironhide. So, with­out fur­ther ado:

Ironhide recipe:

  • 3 oz Bourbon whiskey
  • 3/4 oz Maraschino
  • 1/4 oz grenadine
  • 2 dashes Angostura bitters
  • 1 Maraschino cherry

Serve shaken or stirred with ice in a cock­tail glass; gar­nish with the Maraschino cherry.

Notes:

I have mostly been drink­ing these on the rocks, which is an accept­able but infe­rior vari­a­tion. Being a Manhattan-like cock­tail, up-high is really the cor­rect way to serve an Ironhide.

Corn syrup based grena­dine or “maraschino” cher­ries will ruin the fla­vors imparted by the bit­ters and Maraschino; you will make a bet­ter cock­tail by skip­ping the grena­dine and cherry than using cheap, fake ones.