The decline in American carnage (in Boston and New York, anyway) — February 7, 2017

The decline in American carnage (in Boston and New York, anyway)

I hadn’t ever seen a time series of violent crime in Boston. The current rate of violent crime is really quite low by historical standards — shockingly so. The Uniform Crime Reports website is poorly run, but go to a UCR-navigating website, select cities whose population is between 500k and 999,999, go to the next and select Boston, then click Get Table. I cached the results before they vanish down the Trump memory hole.

Violent crimes are down 60% from where they were in 1985, while the city’s population is up 14%.

The numbers for New York are quite similar.

Somehow Chicago doesn’t report violent-crime numbers into the UCR. Not sure why.

Happiest day of my life — June 6, 2016
What we did on our summer vacation — September 6, 2015

What we did on our summer vacation

Attention conservation notice: 6756 words about our Budapest → Ljubljana → Piran → Venice → Lake Como → Chur → Geneva trip. More below, step by step, if you’re interested. I hope it provides some helpful information for future travelers who follow any or all of this route. I also hope it’s interesting to those who have no intention of visiting any of those places. Apologies to those with no interest in municipal buses around Lake Como, or how to get WiFi at the Geneva airport.

General notes:

  1. In general the structure of this trip was city, country, city, country. It helped to cut the sometimes-hectic feel of a city with the relaxation of a lake. We would definitely use this structure again.
  2. My passport was stamped only at Charles de Gaulle airport in Paris, and at Keflavik airport in Reykjavik. Note that all I saw of France or Iceland on this trip were their airports. It’s possible that we were supposed to get our passports stamped when we got off the flight from Paris to Budapest, but we certainly weren’t corralled in a way that suggested this was mandatory.

    We crossed some EU/non-EU borders during this trip; at none of them did anyone seem to care about our risk to the homeland. The border between Italy and Switzerland, in particular, is quite porous: at the border near Lugano, going in either direction, all that the border guards seemed to do was raise a half-skeptical/half-friendly eyebrow toward the bus and then nod slightly to indicate that it should pass. I guess the Swiss and the Italians aren’t too concerned about each other.

    Ten-cent mental model: the only places in the world where borders are heavily guarded are borders between poor and not-poor countries. Though I guess the truth of this rests on what we mean by “heavily”: the border between Canada and the U.S. is shockingly militarized, it seems to me.

  3. We played a little game that we like to call Find The Most Absurdly Mistranslated English-Language T-shirt. The two finalists were one reading, simply, DRUG DEALER, and another reading — and I swear to you, all of this is sic

    “Simple way girlish
    Simple shirt is so lady to be spankle”

    I’m really happy to discover that I’m not the only person to have seen this t-shirt (Google Cache; supporting image cached for posterity).

  4. We took walking tours everywhere that such a thing was available. This squares with our general love of walking. Whichever city you go to, Google for [city name free walking tour]. That worked great for us in Budapest, Ljubljana, and Venice. It also allowed me to feel horribly envious of tour guides who speak far better English than I speak Hungarian, Slovenian, or Italian. I’m tempted to move to Geneva just to force myself to speak four languages fluently.

  5. AirBNB for the win. We stay in AirBNBs everywhere we can; in practice, on this trip that meant everywhere other than Chur. We’ve now stayed in AirBNBs on three continents. I have nothing but positive things to say about it.
  6. It’s a bit of a pain to get a SIM card that works in all European countries, if by ‘European’ we include countries like Switzerland that are outside the EU. We used my friend’s SIM cards from LeFrenchMobile, which says that “This pack includes a All-in-one SIM Card + €30 of credit valid in Europe*.” The asterisk then explains that Europe does not include Switzerland. Damn you, neutrality.

    The ideal would be that you’d get one SIM card that would work all through the actual continent of Europe (rather than within the boundaries of a political multi-national arrangement). Barring that, we ended up needing to take advantage of free WiFi wherever it was available. This wasn’t so bad: free WiFi is basically available everywhere in Europe. But it does create some anxious moments. Plus, if you’re trying (as we were) to keep in touch with people back home or call local restaurants, having a working telephone is indispensable.

    To get an AT&T phone to work in Europe, you need to unlock it. Be sure to put in the unlock request well before you leave; it can take AT&T a few days to process your request. Once they’ve deigned to unlock your phone, they send you instructions: back up the phone to iTunes, restore, and restart. I believe what happens is that, upon restarting, your phone sends some kind of signal to AT&T, which sends back a message indicating that it’s unlocked. So you have to do all of this before you leave for Europe; the AT&T signal (assuming my model is correct) won’t reach the phone once you’re off the AT&T network. My partner’s phone was unlocked before we left; mine was not. Hence hers had a working European SIM and mine did not.

    Assuming everything is properly unlocked, when you get to Europe you follow the LeFrenchMobile iPhone instructions. This entails connecting to WiFi, then downloading and installing a profile that allows your phone to connect to LeFrenchMobile network partners in Europe. When you get back to the U.S., be sure to delete the LFM profile (Settings → General → Profiles & Device Management) from your iPhone, or you won’t be able to connect to the AT&T network.

    All of the above synthesizes my, my partner’s, and my friend’s experiences with this particular SIM card. It would be nice if you could “unit test” your phone, in a sense, before you leave: you want to know, before you even get on the plane, that everything will work once you touch down in Europe. I don’t know of any way to do that; if you do, let me know. Barring that, the above is the state of my knowledge.

  7. I wish U.S. trains were nearly as great as Swiss trains, or Italian trains, or Hungarian trains. And I wish our train stations were as pretty as, say, the Milanese train station: Milan train station, rather than the garish Brazil-esque horror that South Station has become. (We didn’t even go to France on this trip. French train stations like Gare du Nord are at a whole other level. The French Musée d’Orsay is a spectacular space on its own, and is a converted train station. A converted South Station would still smell like grilled cheese.)

  8. Rome2Rio confused me at first, but it’s a handy site to help travelers find mass-transit or automobile routes between any two cities. The Man In Seat Sixty-One is also super-useful to get a narrative take on navigating many nations’ train systems.
  9. Just as Steve Martin and John Candy had planes, trains, and automobiles, so we had (in order) plane, train, van, ferry, vaporetto, train, bus, personal motorcar, bus, bus, train, train, train. Makes for a more ungainly movie title.
  10. We’re both vegetarian, which can limit our dining options now and again. But our modus operandi, both in the U.S. and abroad, is not to seek out restaurants that explicitly label themselves “vegetarian”. In the U.S. that gets you places like Veggie Galaxy or, at the higher end, True Bistro. Much love for both those places, and much love for the really stellar vegetarian places like Dirt Candy in New York or Vedge in Philadelphia. But you really limit your options if you force the places where you dine to serve only vegetables. You exclude places like Coppa that are focused on meat but do a great job for non-carnivores; indeed, Coppa’s Jamie Bissonnette is himself a former vegan, and still makes life for vegans perfectly lovely at his restaurants. It would be a shame to limit your world to Veggie Galaxy (one love!) and never experience Coppa.

    Our options on this trip would have been even more limited than they would be in the U.S., had we picked only self-described vegetarian places. “Vegetarian” in Hungary, for instance, seems to be associated with “clean eating” and so forth; eating at vegetarian-only restaurants in Hungary means you’re just eating salad.

    Instead our usual approach, in the U.S. and elsewhere, is to look for places that have one or two really good vegetarian options on the menu. If we’re comfortable having a culinary back-and-forth with the waiter, as we would be in the U.S., we can ask for a dish “minus the meat” or “with some vegetarian substitute” (e.g., mushrooms for meat). In Europe, where we’re less comfortable having that conversation, we just looked for vegetarian items on the menu and left it at that.

    There doesn’t seem to be an accepted Googlable term of art for “not an explicitly vegetarian restaurant, but rather a restaurant that has some good vegetarian options.” Just Googling for [city name vegetarian] usually turns up the Veggie Galaxies of the world (which, again: much love). There needs to be a more flexible keyword here. On this trip, we discussed putting together a search engine, or at least a curated list, of the sorts of places we’re talking about.

  11. I would like to apply a blanket apology to everything I say below. I was just a tourist, not a resident. I know from living in Boston that if someone came to my town, walked the Freedom Trail, ate at a couple of nice restaurants, spent time in the Public Garden, then proclaimed the city a festival of bullshit and moved on to New York, I would be pissed. I once tried to start a conversation with a Turkish woman on OkCupid by conveying some of my observations of Istanbul from an earlier trip I had taken there, and got torn to shreds via a haranguing that (probably rightly) featured the noun “Orientalism“.

    So please don’t take any of my observations below about any of these cities as anything other than the casual observations of a passing stranger. In all cases I want to learn more about these places. In all cases, as always, my axiom is that I shouldn’t sound like an ass in front of people who actually know what they’re talking about. If I do end up sounding like an ass, I apologize in advance.

Budapest:

Really pretty city. It’s got much the same vibe as Prague, in that there are beautiful old buildings alongside Communist-era monstrosities. It’s nicely walkable. Our AirBNB was on the flat Pest side right next to the Parliament, rather than on the opposite bank of the Danube on the hilly Buda side. Parliament is beautiful, especially at night, when it features a cloud of creepy bats circling overhead.

We were told that the baths were the thing to do in Budapest, and indeed the one we visited was quite lovely. I think of it less as a bath, in the way that the hamams I visited in Istanbul were dedicated solely to public washing, and more as a beach vacation for people who are nowhere near a beach. The bath we visited on the Buda side had some reasonably hot water (though nothing approaching the 103- or 105-degree-Fahrenheit water of an average hot tub), some saunas, some cold pools for after the sauna, and many, many beach chairs set on a huge patio. We should have these in Boston and New York; you shouldn’t have to go outside of the city to relax poolside.

Excellent dining experience: Costes. Again, not explicitly vegetarian, but — like any good restaurant nowadays — they get the job done for vegetarians if you ask.

Budapest to Ljubljana: There’s a long but pleasant train ride through beautiful Hungarian countryside; Seat61 has the low-down. At one point the train stops and seems to go into reverse, but I think it’s just switching onto another track. I was deeply confused, though, for a good long while. Still, it ended up in Ljubljana right when it said it would be there, and the train was clean and comfortable.

Ljubljana:

Such a beautiful city; you should absolutely go there. It’s small: something like 250,000 people, in a country of just 2 million. At least when we were there (which, granted, was probably at the height of the tourist season), outdoor cafés were full all evening long; this was probably the best people-watching experience that I’ve ever had. We sat outside for hours, just admiring the people and the languages flowing past us.

Within a couple-hour bus ride of Ljubljana are Lakes Bled and Bohijn. We first took a bus to Bohijn, rented a canoe, paddled around for a bit, then took another such bus back from Bohijn to Bled. There is some sort of heated argument over which is the more beautiful; I claim that they are both gorgeous, and I say the hell with it. You should see both.

A cute castle on top of a hill overlooks the town. There are nice views from up there; there’s also a nice restaurant. Actually seeing much of the castle involved paying silly fees, which we were unwilling to do; your mileage may vary. We walked up to the castle, looked out at metropolitan Ljubljana, ate a leisurely meal, and walked back down. Highly recommended.

Historical/power-political question about Slovenia: I’ll be honest that I didn’t really know anything — at all — about Slovenia before we went there. It was a part of the former Yugoslavia; I hadn’t known that either. As our walking-tour guide explained it, Slovenia was the first of the Yugoslav countries to break off; a ten-day war followed, at the end of which Slovenia was independent. It was the other countries — Croatia, Serbia, Macedonia, and the rest — that suffered years of bloody fighting. The coalition of Yugoslav countries, it seems, was always a bit artificial, perhaps held together by Tito‘s charisma. The idea of ‘Yugoslavia’, perhaps, was always a fiction.

It’s curious that some European countries, like France and Germany, project an idea that they have existed since time immemorial as unitary entities: we (at least in the U.S.) seem to believe that there is something called ‘a Frenchman’ or ‘a German’, whereas ‘a Yugoslav’ seems like an artificial creation of (perhaps) post-World War I diplomacy. But Germany as we know it didn’t exist until 1870, and much of Bismarck’s genius in constructing Germany was to bring Catholic Bavaria on board with the Protestant north. The same sort of religious division shows up in France: rebels in the Vendée violently resisted the Revolution’s anti-clerical tendencies in the late 1700s, and my understanding is that the “French language” was forcibly constructed out of the many earlier “French” languages like Occitan and Provençal. (LazyWeb request: any recommended books on the construction of standard French out of the earlier French languages?) And of course calling the Irish “British” doesn’t always go over well.

How do some European countries manage to hold together as a single entity, whereas others fall to bits? I don’t mean to pass normative judgment on any of these countries: it’s not “good” that Germany is a single country or “bad” that Yugoslavia broke into several. I also realize that there’s a many-part answer to this question. Part of it is going to center on language: if you can wipe out Gaelic or Provençal, that will help you wipe out Irish or Provençal culture. Though if part of the recipe for wiping out ethnic differences is to destroy the local language, that’s a little question-begging: how did Occitan stop being a going concern, whereas the Irish made Gaelic an official language? In other words, how does one manage get killed off and another not? (Note: I don’t really know anything about the true state of languages in lots of countries, so this may be even more factually challenged than the rest of my life. I welcome correction.)

Ljubljana to Piran: We used GoOpti, which also seems to run the Piran-to-Venice ferry. In this incarnation it’s just a car and a driver, though with a different city pair it might have been more like a shared van. They picked us up outside a fancy modern hotel near the train station, and dropped us off as close as possible to our AirBNB in Piran. The driver was great. It was only €63.06 altogether, plus tip, and the ride was something like 90 minutes. Totally worth it. This GoOpti page contains the right cities, but doesn’t go in the correct direction; still, it should get you somewhat closer to what you’re looking for.

Piran:

We had a wonderful time swimming in the Adriatic. Confession: before I had swum in it, I don’t think I could have really distinguished for you between the Adriatic and the Aegean. I saw the Aegean from Izmir, in Turkey, and have now swum in the Adriatic on the western end of Slovenia, just a short ferry ride across from Italy. So now the geography is clear for me.

There’s not much reason to go out of your way to visit Piran. For one thing, it doesn’t have any beaches. It has boulders that sit on the shore, but boulders sitting on the shore do not a beach make. We swam, then sat on the rocks until our butts hurt (experienced tourists there lay on the rocks with what seemed to be thick butt-protection pads), then sat in a café drinking Aperol spritzes for a few hours while we read our books. No one was in any rush to move us along. So it’s a lovely little spot on the water, and it’s certainly worth stopping there if you’re in Ljubljana (which you should be) and want to end up in Venice (which you should). But it’s not worth going there as a destination on its own.

However, if you do go, I recommended wholeheartedly the AirBNB where we stayed; it features a lovely host, the perfect location about 50 feet from the water, and the right price ($89, all told, for the night).

Piran to Venice: There’s a ferry, which I believe took two hours. At least when we were on it, the Adriatic was as calm as a lake. I have, in my time, vomited with so much vehemence on the ferry from Boston to Provincetown that I cleared an entire deck, so I am always extremely tentative about ferries and come equipped with Dramamine. But I had no problems at all on this ferry; I imagine the calm of the water and the high speed of the boat combine to make it smooth. It’s mostly intended for people who pack their entire visit to Venice into a single day, so it’s staffed by tour guides who spend most of the ride lecturing in English, German, Russian, Slovenian, and Italian about the day’s itinerary, but it’s also useful just as a utility ferry to get you from point A to point B.

Venice:

Okay, this city is completely fucking bananas; there’s no curse-free way to explain just how ludicrously out-of-control this fucking city is. I think I used the word “bananas” at least 400 times over our three days there. Here I am duty-bound to quote Mary McCarthy from Venice Observed: “Nothing can be said here (including this statement) that has not been said before.” Still: completely fucking bonkers.

First, have you ever been to a city that still felt really medieval, in that there are lots of crazy narrow streets and bizarre turns? That was my experience of Istanbul, or at least the parts of Istanbul that didn’t feel explicitly Westernized. Now take that and add canals — so very many canals — and you start envisioning Venice. I truly had no idea what I was going to get in Venice until I went, even though I knew at an abstract level that Venice was defined by its canals. You’ll be walking down a street that’s barely wide enough to hold a slender human being, and you’ll dead-end at a canal.

Down the middle of the city runs the Grand Canal. They are not lying about the Grand Canal: it is both a canal … and grand. To get from San Marco (one of Venice’s islands) to most anywhere else in the city, you have to cross the Grand Canal; this requires that you either take a vaporetto (a municipal bus on the water, basically), cross the absolutely tourist-mobbed and garish Rialto Bridge, or take a traghetto.

Google Maps just has no idea what to do with Venice. Even when Google Maps identifies the correct Street X, it seems to have the wrong idea of how long it takes to get from one point to another … or maybe it’s fine, and we were the problem; after a few days, I think our walking times began to approximate what Google thought they should be … but then you get the tourist problem, namely that certain streets are always packed wall-to-wall with bovine tourists who slow everything to a crawl. Any Google Maps pedestrian timings that feature a path over the Rialto Bridge at the height of summer, for instance, should be considered incredibly suspect; you will be moving at the pace of a sardine-packed mob. One of the many reasons I have usually considered walking superior to driving is that the standard deviation of the walking time is nearly zero: I know pretty precisely how long it will take me to walk a fixed distance. This is not the case in Venice. This is the first time I’ve wanted Google Maps to factor in real-time traffic stats for walking.

Our walking-tour guide explained that part of Google’s problem with Venice comes from the city’s history: every street has a couple different names. I seem to recall his saying that there are 42 streets in Venice with one particular name (I wish I could remember the details). I mean, bear in mind that Venice is 1500 years old. 1500! Years! Even Boston, which is significantly younger, still has a 76 South Street that’s in the southern part of the city and a 76 South Street up north. Anyone who lives around here would, of course, be able to explain that Boston comprises multiple neighborhoods which came into Boston via annexation; I assume you can still send letters to “76 South Street, Boston MA” and something approximating the right thing will happen, but “76 South Street, Jamaica Plain MA” would be more correct. Same goes for Brooklyn and Manhattan.

Now take that annexation-related problem, which is maybe 100 years old, and scale it up by a factor of 15. While you’re at it, throw in several epic changes in governance: the city was formed initially by exiles retreating from mainland Europe when Attila the Hun was invading the continent; eventually it became its own city-state; then it was a republic; then Napoleon invaded and it wasn’t a republic, and was instead handed over to the Austro-Hungarians; then it was part of the new nation of Italy. And this is just off the top of my head; I am seriously deficient in my Venice history. Reading up on that history is high on my list: A History of Venice, The Stones of Venice, Venice Observed.

People say Boston’s layout is weird; they say that it’s incoherent because our streets were initially cow paths. That’s possibly true, but there’s also the fact that a lot of the city is infill: roads and houses were built, and over time the city was slowly reclaimed from the marshland that it sits on. So build the city, develop it at its current dimensions, expand, repeat. My mental model of the city’s shape is that some of its odd curvy streets essentially follow the boundary of the city as it was in the 1800s. Now, again, take that and scale up the weirdness: build the city, not on marshland, but rather right on a lagoon on the Adriatic. Now do this with the architectural technology available 1500 years ago. I’m told that much of Venice’s foundation is built on wooden stakes driven into the mud; the part of the wood that’s buried in the mud is free of oxygen, so the wood doesn’t rot, while the part that’s above the water does.

I’m trying to assemble for you, bit by bit, the extreme fucking weirdness of Venice. (Proposed slogan for the city: “Venice: We Are Extremely Fucking Weird”.) Assembling that weirdness bit by bit can’t approximate the feeling of being dropped in the city, taking a vaporetto past achingly beautiful palaces along the Grand Canal, and then winding your way through medieval warrens that are barely wider than you are … all while surrounded by sweaty mindless oafs from Kettering and Boventry in their cloth caps and their cardigans and their transistor radios and their ‘Sunday Mirrors’, complaining about the tea, ‘Oh they don’t make it properly here do they! Not like at home’ stopping at Majorcan bodegas, selling fish and chips and Watney’s Red Barrel and calamares and two veg and sitting in cotton sun frocks squirting Timothy White’s suncream all over their puffy raw swollen purulent flesh cos they ‘overdid it on the first day’!

Naturally I am one of those tourists. And naturally they probably think of me the same way I think of them. And naturally there’s the same “everyone wants to be where everyone else is not” aspect to Venice that there is anywhere: we all want to go to the best restaurants in the city, but only if we’re not surrounded by too many tourists who turn the fine local food into something like an American children’s menu. That was relatively easy in Venice: just stay away from the Rialto Bridge, to the extent that crossing the Grand Canal doesn’t require it. Indeed, I might suggest that you stay on Cannaregio — again, so long as you avoid the single tourist-infested, tchotchke-laden main drag of San Leonardo.

If you want to see the Piazza San Marco, which you do, go see it at night after the ferry-boat passengers who’ve come for the day have returned to Slovenia; the church is beautiful. We didn’t get to go inside. I’m told that the way to do that is to use the side entrance for actual worshippers during a Sunday Mass, rather than the front entrance for tourists. And I’m told that the way to see Piazza San Marco is to wake up early and get there by 7am.

We didn’t get to see many churches or museums this time. Partly that’s because we didn’t have all that much time in Venice; partly it’s that churches often charge a good bit of money to let you in. There are a bunch on our list for the next time, including St. George’s Anglican Church across the Grand Canal; I’m told that it has a beautiful view of St. Mark’s. We also want to go to the Frari; it’s supposed to be filled with astonishingly beautiful artwork by Titian, who is interred there. Our tour guide recommended that we visit Torcello, the first of the Venetian islands to have any settlers. He says it’s mostly empty, covered in ruins, full of natural beauty, and largely free of tourists. (It seems comically complicated to get there, which is maybe the point.) Finally, he recommended visiting Burano. He gave us all these recommendations after we’d already been on the island a day or two, so we’d already concluded for ourselves that Murano, the Venetian island known for its glass-blowing, is largely an underwhelming tourist trap. Unfortunately we concluded this only after visiting Murano. Lesson learned.

(Less cultured, but something I want to do the next time I’m in Venice: explore amari.)

Going to Venice slightly off-season might be the way to do it. I’m not sure how it feels in December; it might be cold and wet and raw. So maybe October or so? This seems like a question worth investigating, since the (other) tourists made the city quite a lot less enjoyable than it otherwise might have been. The numbers I heard varied, but Venice’s population is in the tens of thousands, while it gets tens of millions of visitors annually.

That’s not at all to say that you should stay away from Venice. You should absolutely go. It is one of the couple most remarkable places I’ve been in my life. You do need, though, to plan how to keep away from the terrible crowds, which means planning your routes to avoid the Rialto Bridge.

From another perspective, you need to plan how not to be one of the tourists who’s turning the city into Disneyland. One tiny step in this direction: behave appropriately in houses of god. Wear long pants and long-sleeve shirts. Don’t take photographs. Don’t carry around a selfie stick, you monster. Speak in a whisper, if at all. In fact, don’t speak. Carve out spaces of quiet for yourself and for others. Generally be a decent human being. Feel an internal hush in a space that is literally awesome.

When you’re out of the church, do as Venetians do (as I understand it): around 6pm, wander over near the Ponte dell’Accademia. There you’ll find little clusters of people sitting along the canals, eating bar snacks and drinking apéritifs. In particular, everyone in our time in Italy seemed to be drinking Aperol spritzes. The going rate for an Aperol spritz is about €2.50. Contrast that with Coppa, where the same drink costs $10.00. It’s a lovely, lovely drink. We drank our weight in spritzes around Italy.

Now that you’re fortified with a lovely apéritif, walk along the canals. Get hopelessly lost and laugh about it. Bask in one of the most beautiful, most perplexing places on the planet.

Venice to Lake Como:

This was easy: vaporetto to Ferrovia train station (here my French education helped: ‘Ferrovia’ is something like ‘chemin de fer’, which is the French word for ‘railroad’: ‘chemin de fer’ is literally ‘iron road’), train to Milan, train from Milan to Como San Giovanni, bus (I believe it was the C10; see generally this bus-schedule page) from Como San Giovanni to Menaggio. You buy the bus ticket in San Giovanni at the snack bar, which is just across the way from the tourist information booth inside the station. The C10 bus let us off right around the Grand Hotel Menaggio.

We stayed in Menaggio, on the western side of the lake, because our next stop was the Bernina Express bus. The Bernina route is divided into two pieces: a bus from Lugano to Tirano, then a train from Tirano to Chur. You can take just the train piece, or train+bus; we opted for the latter. We had to get to Tirano in time for the Bernina bus’s departure; had we stayed on the eastern side of the lake, getting to the Bernina bus would have required us to take an early-morning ferry to the western side. Seemed easier to stay on the west and shorten that piece.

If we were to do it again, we’d skip the Bernina bus and just take the train; the bus was a rather boring ride through towns that, honestly, felt no more picturesque than mid-Cape towns in Massachusetts. If — when — we do it again, we’ll stay in Varenna on the eastern side of Lake Como, then cut out the Bernina-bus piece and head straight for Tirano. Lesson learned.

Lake Como:

Just beautiful. Where land meets water, my blood pressure drops noticeably. We stayed in probably the most beautiful AirBNB I’ve ever been in. It … uh … well … the view from the balcony looked like this:

Menaggio, panoramic from AirBNB

And the view from the town itself looked like this:

View of Menaggio from closer to town

On someone’s advice — I forget whose; might’ve been Trip Advisor’s, or it might have been our AirBNB host’s — we went on our first evening to a lovely little bar (on Via Calvi, maybe?) for apéritifs, where we were charmed by the bar’s owner; she served us a delicious glass of wine, whose name I didn’t write down, from a wall of taps. Then we headed around the corner for dinner proper. (I can’t tell whether it’s considered gauche in Italy to have your apéritifs at the same place whence you get your dinner.) There were a couple really nice places for dinner in Menaggio. And, again, sitting in a café watching the people pass, or sitting on the lake and watching the waves lap, never hurt anyone.

Menaggio to Lugano:

Again, were we to do it again, we’d cut out this piece altogether; we’d go straight from Varenna on the eastern side to Tirano. But given that we opted this time to stay in Menaggio and take the Bernina bus from Lugano to Tirano, it turned out to be rather easy to get from Menaggio to Lugano: hop on the C12 bus near the church in Menaggio, and take it 45 minutes to Lugano.

It got a bit confusing there: the C12 bus ends at Lugano Cassarate (the bus terminal), whereas the Bernina bus starts from the Lugano train station. The bus terminal is not the same as the train terminal. It’s a 20-minute walk between them, or you can take the #2 bus. You can buy #2-bus tickets where the C12 ends.

Note the mild annoyance here: to get from Menaggio to the Bernina train, you need to take the C12 to a bus station to the #2 bus to the train station, which gets you on a Bernina bus that you then take to the Bernina train. Now imagine doing this in the morning before you’ve had your coffee, while you’re schlepping bags.

In general I would advise getting all of these maps and itineraries printed out before you leave. Really nail down the details: which exact bus station does this exact bus go to? Better to figure that out ahead of time (to the extent possible) than be anxious about making it to your bus on time. We built in tons of buffer time, so it was never a close call, but forewarned is forearmed and so forth.

Lugano to Tirano:

But okay, so you’ve gotten on the C12 bus in the picturesque lakeside town of Menaggio, so that you can take it to Lugano, so that you can get on the Bernina bus. The Bernina bus then takes you from Lugano to Tirano, by way of … the picturesque lakeside town of Menaggio. Yep: you have just recapitulated, on the Bernina bus, the last 45 minutes that you spent on the C12 bus.

Past Menaggio, the Bernina bus winds through lots of towns that look a lot like Hyannis. I advise you to skip this.

Tirano to Chur

Okay, HERE is where the party gets started. I advise you to do whatever you can to take the train from Tirano to Chur. Dear lord. It’s a bus through the Alps, reaching an altitude of something like 6000 feet. It is beyond breathtaking, every step of the way. The train has windows that curve up onto the ceiling, so that you can see not only the jaw-dropping beauty in front of you but also the jaw-dropping beauty above you. (Whoever the ad wizards are who came up with this one, I would like to thank them; designing your trains with scenery-appropriate windows is an attention to passenger experience that I’m not used to from American trains.) It looks like this:

View of the inside of the Bernina

No photo could possibly capture the scale of the beauty visible just out your window on the Bernina; god knows I tried. You really just need to ride it.

Chur:

The less said about this place, the better. On the positive side, we stayed in a perfectly nice hostel rather than an AirBNB, because there were none of the latter (or at least none that were affordable; I forget). We got a private room, for which they charged us per-person rather than per-room. This is perfectly consistent with my experience of Switzerland: shockingly overpriced in every particular.

On the negative side, we took a cab from the train station to the hostel because it was pouring rain when we arrived; otherwise it would have been a 20-minute walk. I had the hostel’s address on my phone, and showed it to the cabbie; somehow that didn’t register. Without belaboring the story, the situation with the cabbie continued to escalate. He didn’t like us at all. We wish him ill.

We found a not-completely-insanely-priced restaurant in Chur, ate dinner there, went back to the hostel, read our books, went to sleep, and got out of the city as quickly as we could the next morning (this time walking to the train station).

Chur to Geneva:

The Swiss train system, in my experience of it, is exactly as efficient and clean as the rumors would have it. My only problem was that the conductors were unwilling to use their QR-code scanners against our laptop or iPhones, for reasons that are completely unclear to me. The left hand and the right hand didn’t know what the other hand was doing, however, because the station agents told us that we didn’t need to print our tickets; in fact I think the machines didn’t even give us a way to print them. The moral: if at all possible, have your tickets printed before you leave the U.S., or at least before you arrive at the station.

With all that out of the way: the trains were great. Chur to Zurich, then Zurich to Geneva, were perfectly lovely. It’s striking to me that Swiss trains have much less of a buffer between them and the surrounding country than U.S. trains do, even though the trains are moving much faster; I think Italian trains are the same way. It’s also striking how much prettier the land around Swiss and Italian trains is than the land around U.S. trains. In the U.S., train tracks almost universally abut disgusting, trash-strewn land. I saw none of that in Europe.

Oh, and on the topic of cleanliness: there was virtually no trash on the ground, nor graffiti on the walls, anywhere we went in Europe. U.S. filth is about social norms, and perhaps about insufficient public services (Galbraith’s “private opulence and public squalor”). I’d love to know why we ended up like that and Europe did not. I thought about that a lot while we were there.

Finally, it charms me to bits that the Swiss train system is labeled, always and everywhere, “SBB CFF FFS”, in keeping with three of the official Swiss languages. Those abbreviations stand, respectively, for “Schweizerische Bundesbahnen”, “Chemins de fer fédéraux suisses”, and “Ferrovie federali svizzere”. I like to imagine how much less imposing the U.S. bureaucracy would feel if it were required to placate three languages at a time. “Oh yeah, tough guy? Wanna mess with the United States? Well feel the wrath of our Central Intelligence Agency / Agence centrale du renseignement / Osrednja obveščevalna agencija. Not laughing now, are you?” Takes the piss right out of it.

Geneva:

Beautiful town on a beautiful lake:

Panoramic view of Geneva. Mountains, lakes, loveliness.

Super-overpriced: $25 for a pizza, $13 for a burrito. Though there’s surpassingly good falafel — maybe the best of my life, actually — at Parfums de Beyrouth near the train station for $7. (Hat tip to my colleague Matt, who used to work at CERN, for the pointer.) I wish I understood why Geneva is so expensive. Do salaries here mean that locals can afford it but tourists cannot?

Geneva to airport

One stop on the same train that brought you into town. Trivial.

Airport

Oddly complicated. I was flying out on Icelandair, and there were no kiosks from which to print Icelandair tickets. I expected I’d have the same difficulty with bar-coded boarding passes on my phone as we had had with the Swiss train (see supra), so I expected I’d have to stand in line for an hour just to print the boarding pass. A helpful fellow from the airport suggested that I could just cut in line and ask a ticket agent to print my boarding pass for me, but the ticket agent wasn’t playing along. Eventually I decided to risk going ahead with a barcode on my phone only; that worked fine. It would have been less fine had I not been able to access the barcode on my phone. The moral, again, is to print this stuff out as early as you can and avoid the last-minute anxieties.

To get WiFi access in the airport, you can use a little machine near the info desks. You scan your boarding pass’s bar code (I used it on my phone and it worked fine), and it prints a receipt containing a code that you enter on your device when authenticating. Of course, if you don’t have access to WiFi, it may be hard to access the boarding-pass barcode. Again: print ahead of time, or make sure that you get the SIM card before you reach Europe.

Come work with me! — November 17, 2014

Come work with me!

I work for Akamai, the company that everyone who uses the Internet uses every day of his or her life (we carry 15-30% of all web traffic), yet no one (not even geeks, in my experience) knows that they’re using. What we do is super-important, and the scale is just fantastic. In truth, there are only a few companies in the world that would allow you to work at this kind of scale. For an engineer, it’s great work.

Also, I work there, and I’m pretty great.

These two facts together should get you, if you’re a geek, to want to work at my company. We’re hiring for a role that would allow you to work with me every single day.

If I haven’t sold you yet, how about if I tell you that the company pays pretty well?

You should email me about applying to work at Akamai.

Four trivial financial notes — June 3, 2014

Four trivial financial notes

1. Savings accounts suck. I have an account with Capital One 360 (ne ING Direct), where the interest rate is uncommonly high at 0.75%. The inflation rate, for comparison’s sake, was 1.2% last year. So the *real* interest rate on that savings account is -0.45% per year. I.e., you’re losing money every month.
I realized the other day that it’s actually even worse: your interest is taxable. Suppose your marginal rate is 28%; that means your interest rate drops to (1-.28)*0.75% = 0.54% in nominal terms, or -0.66% in real terms.
2. Somehow the world allowed me to become an adult at some point, which is weird to me. In part because of the realization in 1., I looked around the other day for some basic index funds to put some savings in, while leaving enough in my savings account to cover about six months of expenses. [1] So I just opened up an account on Vanguard and transferred a significant sum of money into it … like I’m some kind of adult who’s capable of handling his own money. Frankly, I think the world got something horribly wrong here, but I won’t tell them.
3. When I created the Vanguard account, I told it to seed the account with money from my bank account. The withdrawal happened with no roadblocks at all. But in order for me to *withdraw* money from Vanguard into the bank account, I need to go through a verification step that involves the standard “deposit two small sums of money into your bank and confirm that you know what the amounts were” trick. Q: does this make any sense at all?
4. I’ve decided for now not to buy a single-family home. a) The housing market here is just insane, b) any number of calculators tell me I shouldn’t buy unless my rent is insane (which it’s not), and c) my partner’s and my geographic location in this world isn’t entirely static for the next few years. I still think the economics of a multi-family home are different, but I need to save up the downpayment on that for a while longer.

Not that anyone asked about my finances. But since I’m off Facebook and Twitter, this is what I’ve got.

[1] – Why an index fund? Because I’m not smart enough to do better than the market. Or if I’m smart enough, I’m too lazy. There are people who get paid many millions of dollars a year to pick stocks as their full-time jobs. It’s hard to believe that I am going to win against them. Granted, there are well-known anomalies. Last I knew, there were even some persistent patterns, owing to people’s reluctance to end a quarter with a loss and so forth, such that there’s predictable non-randomness all over the place. And maybe in time I will get un-lazy enough that I will build a portfolio for myself based around these anomalies. It’s still hard for me to believe that hedge funds and so forth wouldn’t have already exploited these, but you never know.

In the meantime, I follow Daniel Davies’ advice:

> As far as active investment goes, I always put it this way are you prepared to put as much time and effort into managing your investments as you would into running a small business? If you are then go for it playing the market is not a bad hobby, about as interesting as birdwatching or something. And most people on this list actually do have enough intelligence to beat the market and therefore to beat most active-managed funds, in my opinion. The trouble is of course that beating the market doesnt just require intelligence, it requires self-discipline, hard work and the ability to control your emotions. But in many ways so does success in bird-watching.

Why is it so expensive to get from Boston to Montreal? — May 4, 2014

Why is it so expensive to get from Boston to Montreal?

I just looked into flights to Montreal, out of idle curiosity. The cheapest flights available on Matrix are $270, but that involves flying through Toronto — at which point I think a lot of people would decide just to hang out in Toronto. (It’s $201 round-trip, nonstop, Boston to Toronto.)

If you want a direct flight from Boston to Montreal, it’s $429 and takes just over an hour. Then add 45 minutes to get to Logan by T from Cambridge, an hour to go through security and such in the international terminal at Logan, some time to get through customs in Montreal, and half an hour to get from YUL to the center of the city. Call it four hours, door to door.

You could take a bus, but that’s 7 or 8 hours in the best case, and costs $188. Then 30 minutes to South Station on this side, maybe some hassle at the border, and another half hour on that end. 9.5-10 hours door to door. Your time is worth some money.

You could rent a car and drive there in 5 hours, apparently, plus some time at the border; call it 6 hours in total. I would have expected it to be longer. As for how much this option costs: a moment’s searching on the Budget rent-a-car site yields a car that costs $122.76. That’s for something akin to a Hyundai Accent; it claims to get 38 miles per gallon on the highway, and it’s 300 miles or so to Montreal, and gas is (let’s say) $3.60 a gallon, so that’s another $56 or so. So, like the bus, we’re up to about $180 round-trip.

(Incidentally, the IRS lets you deduct 56 cents per mile for business mileage. Assuming the mileage rate is a decent approximation to the actual cost of driving a mile, driving your own car there and back would cost somewhere north of $300.)

Finally, as far as I can tell, there’s no train going from Boston to Montreal. (And while we’re at it griping about travel difficulties: if you want to take a train or a plane from Boston to Burlington, VT, you’re going to go through New York City first. That makes very little sense to me.)

Shouldn’t it be just as cheap and quick to get to Montreal from Boston as it is to get to Toronto from Boston? Puzzling.

I have funny friends — April 23, 2014

I have funny friends

Quote #1 from today, after an iMessage conversation and involving a ton of context that I wouldn’t print here if you paid me:

> Only through that kind of multi-generational emotional torsion can you twist someone around far enough to have them believe they really want to wear inside-out bear costume feet someone named “Uggs”.

Quote #2, in re “Coakley lawsuit wants colleges ex-chief to repay millions”. I write,

> ‘Northeastern University investigative reporting students’!
>
> I’ll grant you that I only skimmed the article, but I don’t entirely get the grounds on which the state is suing him.
>
> Also, I don’t entirely understand how you can just get your organization to pay for a bunch of stuff without their knowing about it.

whereupon (here’s where the funny comes in) my friend replies:

> Right. Like: he founded a college, then spent millions on vacation homes and Mercedes, and then Northeastern students noticed when they made an Excel spreadsheet of public data and sorted by the “salary” column. Why didn’t I think of that?!?

Notes on traveling to Argentina and Brazil (spring vacation 2014) — March 2, 2014

Notes on traveling to Argentina and Brazil (spring vacation 2014)

The first thing I would like to say about this trip is that it was awesome. Buenos Aires resembles Paris in a lot of really amazing ways (including an abundance of dogs, though BA does a much worse job cleaning up after them), and Iguazu Falls is really awe-inspiring; the several hundred (sic) waterfalls make Niagara look like a piker.

The second thing to note is that the currency situation is completely bizarre. I include this second because it unfortunately consumed a large part of our trip and our mental energy. The basic gist is that Argentina is experiencing hyperinflation, which would lead to a plummeting exchange rate with the US dollar if the market were allowed to do its thing. But the market is not allowed to do its thing; Argentina is under currency controls. The most important upshot of this for tourists is that there is a massive disconnect between the official exchange rate and the unofficial rate, the latter of which is called the “blue dollar”. The blue dollar even has a Twitter feed to track its current exchange rate; the blue rate is currently 11.3 pesos to the dollar. Contrast this with the official exchange rate, currently 7.89 to 1. If you withdraw cash from an ATM or use a credit card, you’ll get the official rate, which means you’ll be paying (11.3/7.89)-1 = 43% more for any given item than you should be.

I expected that it would be fairly easy to get the blue rate. It probably would have been if I had planned things more deliberately ahead of time. My understanding is that most hotels will hook you up with someone who can get you the proper rate. Once we had a waiter in a restaurant change $20 for us at 10 pesos to the dollar. Another time I asked a cashier at a café to change money at the blue rate, and he reacted as though I had just asked him, “Hey, do you have any drugs?” while he’s standing next to a cop. “No blue dollar,” he said; “just the official rate.”

We ultimately got 10 pesos to the dollar from Mobile Wechselstube, which delivered money to us by bicycle while we sipped cold drinks at a café. So if we were to do it again, I think we’d

1. Change a small amount of money at the airport, just to get a cab to our AirBNB.
2. Pre-arrange with Mobile Wechselstube to deliver to us at a café, or arrange with a friend to get 11-to-1.

It has to be mapped out ahead of time, though. That, I think, is the final lesson in all of this. In general, I hope I’ll be a lot more deliberate in my foreign-travel preparations from now on.

The exchange-rate situation is part of a larger story that I really need to understand in detail, given that it overlaps with a number of my interests and seems to intersect with larger parts of Argentine history. In capsule form (which is most of what I know at the moment): the current president, Cristina Kirchner, is the widow of the former president, Néstor Kirchner, who in 2007 fired the head of the agency for official statistics (Indec) when it dared to publish an estimate of inflation that was markedly higher than what the government said it was. The government has continued to insist on its inaccurate inflation numbers since 2007, apparently having gutted Indec’s autonomy in the meantime. The IMF took the strong step within the past few months of censuring the Argentine government over its statistical practices. Official statistics are in many ways central to the functioning of a modern industrial democracy; it’s a testament to the United States that our official statistics (the Census Bureau and the BLS specifically) are almost universally respected, with the exception of some cranks. I’d love to understand the institutional structures that keep our statistics collection independent. I’d also like to understand how the IMF can confirm that a nation is playing a game of funny buggers with its inflation statistics.

Back to our more-local story: if you get the blue exchange rate in Argentina, everything is really cheap. For instance, we had the best meal of our lives at Casa Felix for 400 pesos per person, including wine pairings. At 11.3 pesos to the dollar, that’s $35.39 per person for what — I repeat — was the best meal of our lives, including wine.

Indeed, flying around was the most expensive part of the trip, by far. Looking through my receipts, it looks like the whole trip cost $6500, of which about 70% was the airfare. Housing through AirBNB was only about 8% of the total cost.

We took the free walking tour around Buenos Aires, which I would highly recommend. It’s funded entirely through tips for the tour guides. We gave ours $20, and it seemed like most others on the tour did as well. Our tour guide was named Magdalena; she was charming as hell. I was concerned going into the tour that it would be propagandistic, or rather that it would whitewash the parts of Argentine history that don’t fit a pleasant narrative. Maybe I’ve been mis-trained by Boston tours, whose theme is basically “Boston was central to the American Revolution … and then a few hundred years passed.” No Joseph Rakes attacking Ted Landsmark with a flag pole there. So I was pleasantly surprised that Magdalena didn’t shy away from discussing the Dirty War.

You have to see tango while you’re there. I can’t pretend that I know The Best And Most Authentic Tango Spot In All Of Buenos Aires, but I would like to direct your favorable attention to Buenos Ayres [sic] Club. The night we went, dancing was in full effect, and El Afronte was blowing everyone’s minds. I must own their music now.

We saw something that is seemingly quite a lot less authentic the next night, having had our whistles wetted by El Afronte. This was Bar Sur. It’s run down, a little sad, and entirely surreal; I guess it’s a Porteño’s vision of what a tourist in Buenos Aires thinks tango is. I’m glad we saw El Afronte first; it was achingly intimate and lovely. (Bar Sur was 200 pesos per person after the doorman bargained himself down. I think his initial offer of 400 pesos, or whatever it was, was entirely for effect. The place was almost empty that night.)

Overall our itinerary was: first night in Palermo Hollywood, fly up to Iguazu, spend a few nights there, then fly back and spend a few nights in Palermo (near the Bulnes Subte station). Palermo is a really nice neighborhood to spend your time in; I would highly recommend it. Recoleta is also nice, but Palermo is more transit-accessible. The city has 40-some barrios, and we only saw maybe five of them, so I can’t say that we’ve landed on the one objectively correct place to stay. But we did well. We really enjoyed ourselves. If we were to do it all over again, I think I’d spend one day less — or maybe ideally half a day less — in Iguazu. And I’d probably explore San Telmo more during the day; our only encounter with it was the milonga at night, and a restaurant just before the milonga that was completely empty other than the two of us.

Speaking of which, a word on the Buenos Aires schedule: I don’t understand it at all. We’d heard from nearly everyone, guide books included, that Argentines start eating dinner around 10, and routinely go to bed around 2. You’d think, then, that their schedules would be shifted four hours or so ahead of the standard American one: Porteños would wake up at 10 or 11, get into work at noon, and leave around 8 or 9 pm. Then they’d come home, eat late, party, and start the cycle all over again. Yet in our week there, I don’t think we managed to understand exactly how the schedule worked. We definitely seemed to hop on the Subte at rush hour circa 9 or 10 am, and again at 6pm or so. And restaurants were deserted when everyone had suggested that they’d be packed. Were we picking the wrong restaurants? Or m’lady’s hypothesis: everyone who visits Buenos Aires, including guide book authors, is pulling a massive joke on the rest of us. Argentines want their restaurants to be free of tourists when it’s time for the natives to dine, so they tell everyone else to show up at 11pm. Here in Boston, a similar strategy would be to tell tourists that positively *everyone* drinks at Cheers and eats at Legal Seafoods, thereby leaving lots of free space at the bars we *actually* frequent.

If you’re lucky enough to spend more time in Buenos Aires than we did, maybe you can come back and explain to me how it works. Or maybe you’re in on the conspiracy too.

Tools for making the impossible possible — January 29, 2012

Tools for making the impossible possible

I’ve been thinking a lot lately about tools that help make the difficult easy, which has got me thinking again about probably my favorite quote of all time, by A.N. Whitehead:

> It is a profoundly erroneous truism, repeated by all copy-books and by eminent people when they are making speeches, that we should cultivate the habit of thinking of what we are doing. The precise opposite is the case. Civilisation advances by extending the number of operations we can perform without thinking about them.

I think about this at work all the time, because our use of SQL makes possible a lot of data-gathering and -analysis tasks which really would have been impossible without it. Answering some question about many thousands of servers (100,770 as of the end of September, 2011) would be unimaginable. Certainly getting many *quick* answers to many *quick* queries would be absolutely unimaginable. Without some tool that allows quick aggregation across many different datasets, we’d have to resort to home-brewed scripts that, say, ssh to thousands of machines in parallel and ask them questions. Or we’d have to reinvent Query, more likely.

There are two aspects to SQL that I think about constantly at work: first this trick of turning an impossible problem into a triviality, and second the sense of *playfulness* that it enables. It takes only a tiny bit more effort to turn from the question you were trying to answer into something unexpected, something more general, or something more nuanced. Often answering questions that you didn’t know you had involves finding a table you didn’t know the company published, which in turn involves asking around to see who would know best about a given kind of data. Finding answers to questions you didn’t know you had seems to me part and parcel of what SQL is all about.

The term “generative technology” gets at this. I would link to the first Google search result for this, except that I don’t really like how Jonathan Zittrain — who is, in fairness, most associated with this term — runs with it. iPhones versus non-iPhones isn’t really at all related to what I have in mind here, and I don’t think the definition he has there gets at what even he means by it. The term “generative” comes ultimately from generative grammar, which my non-linguistically-trained self understands to mean “a set of simple rules for the formation of sentences, which rules can be combined in infinitely many ways to construct infinitely many distinct sentences.” In mathematics, think of axioms and rules for their combination: there aren’t that many axioms defining the integers, but they can be combined with only a few more rules (about ordered pairs and what, exactly, multiplication of two ordered pairs means) to build rational numbers, and thence real numbers, and thence complex numbers. The simple axioms, and simple rules for their combination, lead to infinitely complex objects.

(Because I cannot resist a filthy quote when given the opportunity, it’s here that I’ll quote Stephen King’s advice on writing: ‘When asked, “How do you write?” I invariably answer, “One word at a time,” and the answer is invariably dismissed. But that is all it is. It sounds too simple to be true, but consider the Great Wall of China, if you will: one stone at a time, man. That’s all. One stone at a time. But I’ve read you can see that motherfucker from space without a telescope.’)

And so it is with SQL and other generative technologies. They don’t give you a single product that you use in the 10 or 20 or 100 ways that you’ve been told to use it; in this sense, I view Facebook as non-generative. A generative technology, like Unix or SQL, might have a steep learning curve, but once you’ve learned it you can do infinitely many things.

There are lots of complexities once you’ve learned the atoms, and even once you’ve learned how to combine the atoms. In Unix, for instance, your first task is learning to string together programs with pipes. Once you’ve done that, you’ll soon enough be writing your own programs. but you have to write them in the Unix Way, which often involves allowing them to sit with a pipe on their left side and a pipe on their right; in this way, they themselves become part of the generative toolkit. Again, invoking Whitehead, the point is to make complicated action reflexive and doable without thinking. Take a common Unix pattern:

[some commands] | sort | uniq | sort -nr

This takes the output of [some commands] — assumed to contain one interesting pattern per line — and displays it in descending order of frequency, with the frequency in the left column and the pattern on the right. This isn’t many characters, so typing it out becomes second nature; the smart thing to do, though, would be to put this Unix fragment in its own script, which we might call sort_by_pop (or really ‘popsort’, which would save you some keystrokes: there’s already a command that starts with ‘sort’, but no commands that start with ‘pops’, so ‘popsort’ would be easier to get from tab-completion; Unix people think this way):

(19:44 -0500) slaniel@example.com~$ cat sort_by_pop
#!/bin/bash
sort |uniq -c |sort -nr

Now you can just pipe things through sort_by_pop if you want to sort them by popularity:

(19:44 -0500) slaniel@example.com:~$ grep -o ‘^[^ ]+’ access.log |sort_by_pop |head
607 46.165.197.141
520 173.242.125.206
309 199.21.99.67
229 130.195.253.1
169 66.249.71.18
162 72.14.199.102
83 72.246.0.10
37 142.167.21.94
34 198.228.223.217
33 80.58.205.47

Hm, what’s that grep(1) bit? Looks like that bit of script could be usefully abstracted into something called ‘get_ip’:

(19:48 -0500) slaniel@example.com:~$ cat get_ip
#!/bin/bash
grep -o ‘^[^ ]+’

whence we simplify to “cat access.log | get_ip | sort_by_pop”. Now you don’t need to understand the nuances of how sort(1) and uniq(1) work if you don’t want to; in fact, you may never need to know that those atomic tools are sitting underneath your molecular abstractions. If you trust the person who wrote the tools, you can assume that get_ip gets an IP address from a suitably formatted Apache access log, and that sort_by_pop sorts a file containing one pattern per line in descending order of popularity.

And so forth. The idea is to constantly combine the atoms of your knowledge into larger and larger molecules, which allows you to forget about the individual atoms unless you really need them. (Where you often need to remember the atoms is for performance reasons.)

In SQL, one way of combining atoms into higher-order molecules is by means of views. A view is a new table (“relation” for the relational-calculus purists in the room) constructed from lower-order “base tables”. There may be some very clever way to get by without views, but I don’t know what it might be. Often you’ll end up with a query that requires you to join one complicated sub-query to itself; without views, you’d be repeating the sub-query, which would probably involve copying and pasting a bunch of text. This would make editing one of the sub-queries a hassle, because you’d have to repeat your edits once for every sub-query. With views, you create the view once, give it some shorthand name, then use the shorthand on every subsequent reference. Any edit only has to happen once, in the view. Again, the point is to make higher-order thought effortless.

(Java, by contrast, requires so much boilerplate that it gets in the way of quickly scanning a piece of code and understanding what it’s trying to do. Either that, or it requires the developer to carefully shunt his boilerplate off into a little boilerplate area of his code. Or it requires the code reader to develop a finely honed skill of skipping over boilerplate. One organizing principle for writing code of any sort ought to be that it puts the least possible distance between the task you’re envisioning and the code you write for it.)

Having developed such a love for SQL, and having long ago learned how to build high-order castles in Unix, I’m now on the hunt for other generative technologies that will make difficult tasks possible. My goal for 2012 is to discover such a set of technologies for time series. It’s not just a matter of writing formulas that allow me to manipulate time series in any way I see fit, though that’s hard enough (it will probably involve R, and may also involve [book: Data Analysis with Open Source Tools], recommended in the highest terms by my awesome friend Dan Milstein). And it’s not just a matter of manipulating them in a way that makes exploring them, combining them, and being surprised possible, though that’s part and parcel of the generative idea.

Rather, the difficulty with making these things work right starts, it seems to me, way down in the guts. Akamai’s Query system is brilliant — one of the most brilliant technologies I’ve ever seen at a company, central to everything I do at every minute of every day — and works so well because there’s a lot of stuff going on under the hood which, again, I mostly don’t need to think about. The low levels do break, just as they do in any software system (all abstractions are leaky); and when they break, I’m forcibly reminded that all my simplifying abstractions rest very tentatively on a lot of lower-level foundations. Without someone doing a lot of low-level grunt work, Whitehead’s dictum doesn’t hold. (Perhaps the grandest abstractions of all in the modern world are “the market economy” and “industrial democracy” — abstractions that we forget are based on very concrete things like cheap fossil fuels or policemen who will enforce contracts at the point of a gun.) In the case of SQL, someone has to build a backend data-storage method that allows quick lookups. In the case of time series, what will the backend storage system look like? Will we need something like MapReduce? Do we need a different high-level language to concisely encapsulate high-level time-series concepts like “the trend component” or “the spectrum”?

Here is the place to note a lesson that I find I have to repeat to myself over and over: don’t think any harder than you need to. My interest in time series is very non-abstract; I have some specific questions I want to answer about some specific datasets at work. And yes, I want to make sure that I can combine them in new and interesting ways in a reasonable amount of time. But until I’ve asked a single specific question of a single specific dataset, I shouldn’t think too hard about making an apple pie from scratch.

So anyway, there’s a general point in here, and a specific one. The general point is to hunt for abstractions that make it possible to get a lot done without thinking, and make it possible to explore areas you didn’t even know you *could* explore. The specific point is that in 2012, I want to see what I can do with Akamai’s time-series data. I imagine one of these points will be interesting to you, the other less so.

I hate the word “staycation”. However. — June 19, 2011

I hate the word “staycation”. However.

…it is probably the most accurate word to describe what will be happening in a month or so. Right around a month from now will be the start of my two-week vacation, ending in early August. I am very much looking forward to it. I planned nothing in advance for that period, and just assumed I’d figure out what to do when the time came.

My experience with planning summer vacations is that there are essentially two possibilities: either

1. Go to some lovely, exotic locale and pay a lot to get there (and probably pay a lot for housing while there). I did this in the Bahamas a while ago. I did this in Turkey a whiler ago. (Istanbul is the most amazing place I’ve ever been.)

2. Go to Cape Cod (nearby vacation destination of choice for people in the Commonwealth) and pay a lot to stay there, if you can find a place at all.

So I was mostly pleased to realize this year that I do not have the free cash to do either 1) or 2). Instead I’ll be hanging out in Cambridge/Boston [1] and in the Seacoast area of New Hampshire and Massachusetts (Exeter, Portsmouth, Newburyport, Portland, and points in between). I’m very excited about this. I’m going to spend two weeks going to all the places I’ve meant to go to for years. I’m going to walk the Freedom Trail in full (it goes into Charlestown, whereas I’ve basically only walked the parts right near the Common). I’m going to hit as may restaurants as I can that people have recommended (Duck Fat and Toro come immediately to mind). I’m going to go to many bars. I’m going to spend time on many beaches with my lovely girlfriend. I’m going to buy a Boston guidebook and find anything that people always do with their tourist friends but never do on their own (minus Cheers — screw a lot of that) This will be great.

I hereby open up the comments thread to nominations for things to do during my “staycation.”

__Update (20 June 2011)__: I’ll include things here that people have suggested or have come to my mind:

* Day trip to Newport, Rhode Island. Might be annoying to get there by mass transit (commuter rail to Providence, then two buses), but I could see if my lady would like to drive with me.
* A friend reports: “You know, across the bay from Newport are the towns of Tiverton (Four Corners) and Little Compton, which are genuinely two of the most beautiful small towns in New England. Little Compton also has Goosewing Beach, a little-known gem.”
* A water park somewhere, with the lady and her son.
* Learn to sail through Community Boating, Inc.
* Lobster rolls at one or more clam shacks in Essex (see this Pittsburgh Post-Gazette piece about Gloucester and its clams).
* Bread in Plymouth, via Chowhound.
* Kolbeh of Kabob, 1500 Cambridge Street in Cambridge, also via Chowhound
* Museums at Harvard:
* The Collection of Historical Scientific Instruments, open 11 – 4 Monday through Thursday and 11-3 on Fridays during the summer. That’s for the Putnam Gallery in Science Center 136. The Foyer Exhibition Space is in Science Center 371, open M-F 9-4. Inquiries: 617-495-2779.
* The Museum of Natural History at 26 Oxford Street in Cambridge. It’s open daily 9-5 with special “Summer Nights at the Museum 2011: Fourth Wednesdays, June 22, July 27, August 24, and Extended hours, 5-8 pm, with half price admission”. It’s also “Free to Massachusetts residents every Sunday morning (year-round) from 9:00 am to noon”
* The Peabody Museum of Archaeology and Ethnology at 11 Divinity Ave in Cambridge. It’s “open seven days a week from 9 a.m. to 5 p.m.”
* The Semitic Museum at 6 Divinity Ave, open “Monday-Friday from 10:00am to 4:00pm and Sunday from 1:00pm to 4:00pm.”
* The Warren Anatomical Museum, “part of the Countway Library of Medicine’s Center for the History of Medicine. The Museum’s Exhibition Gallery, which displays 300 cases and artifacts from the larger collection, is located on the 5th floor of the Countway Library.” The Countway Library is in the Longwood Medical Area at 10 Shattuck St.
* The Sackler Art Museum, Busch-Reisinger, and Fogg museums at 485 Broadway in Cambridge, open TuesdaySaturday, 10am5pm.

* To quote a friend:

> – Providence:
> – New Rivers
> – La Laiterie
> – Red Dog
> – check out the RISD Museum
>
> – Tiverton Four Corners
> – Gray’s Ice Cream
>
> – Newport
> – Scales and Shells
> – whatever else the NY Times said
>
> – Portsmouth NH
> – there are some good places, but I can’t remember the names!
>
> – Portland
> – Hugo’s
> – Fore St
> – Cinque Terre
> – the art museum in Portland is pretty good, too

[1] – Adam and I have been trying to figure out whether there’s a good phrase to encapsulate the urban core of Boston. Boston, Cambridge, Somerville, and Brookline are in the core. Framingham, say, is not. The narrowest designation that the Census Bureau seems to work with is the Boston MSA, for Metropolitan Statistical Area, which extends all the way into New Hampshire. I will not be hanging out in something as wide as an MSA.