Some Bits: Nelson's weblog

California politics

Today’s SF Chronicle has two remarkable opinion colums about state politics in California.

Debra Saunders, the token right-winger, reveals Carly Fiorina is a deadbeat. She owes $500,000 to her employees for her failed 2010 senate candidacy. What makes this laundry-airing remarkable is Fiorina is rumored to be running for President. And Saunders got Fiorina’s former campaign manager Marty Wilson on the record confirming the debt. Quite a takedown.

Also Slick Willie Brown’s normally terrible column is interesting this week in revealing the Democratic machine. He floats a trial balloon for how California’s top politicians might shuffle jobs in the next few years, with Harris for Boxer and Newsom for Jerry Brown. “The issue will be which of their clients they persuade to run for the Senate seat”; the “they” refers to consultancy Ace Smith. I guess they’re the ones calling the shots.

Anthem customer contempt

California’s biggest individual health insurer, Anthem, treats its customers with remarkable contempt. This blog post is boring, but I think it’s important to occasionally document poor behavior from powerful companies.

I received a letter December 9, “INTENT TO NON-RENEW”. They said I owed them $6.89 and had three weeks to pay up or they’d cancel me, a ten year customer. Except I didn’t owe them money. I pay all those bills automatically, the correct amount had been sent. The exact amount is for “pediatric dental insurance”, something they tacked on this year when they realize they screwed up the ACA requirements. I’m guessing their billing system failed to post one month somehow.

What is so contemptuous is the communication. They go straight from “minor problem” to “we are cancelling your health insurance”, in an officious letter, with no followup. Their customer service is terrible. I finally got through (two separate automated phone systems) to someone who could only vaguely say I look paid up and they have no idea why the letter was sent.

Anthem has a remarkable online bill pay system, BTW. Or rather they don’t, they outsource it to Princeton eCom, a site that looks like a clumsy phishing attempt. It requires a separate login. Your password is limited to 8 characters. For the billing site. Of a health insurance company.

Cancelling health insurance is a big, scary threat. Anthem appears to casually do that because of random billing errors, with no humane communication. I dread what the process will be like if I ever have a significant claim.

MacOS software I rely on

A friend of mine is buying his first Mac, so here’s a list I made for him for essential software.

  • Chrome for web browsing with LastPass for passwords.
  • Alfred for launching apps, small actions, etc. I can’t imagine using MacOS without it.
  • iTerm2 for terminal windows.
  • Homebrew for Unix tools. It’s not awesome, but the best option.
  • Sublime Text for text editing.
  • nvALT for note taking.
  • Adium for instant messaging.
  • VLC for playing video and audio. Plex for networked serving of video.

Notes on making pizza

I’ve gotten competent at making pizza at home. It’s an easy versatile meal, 15 minutes prep time once you have the dough. I tend to make a sort of puttanesca pizza: capers, olives, anchovies, sauce from a jar (the shame) and some salami. Today was turkey leftover pizza with white sauce, I regret being too timid to try cranberry sauce after baking.

My go-to cookbook is American Pie, specifically the “neo-Neapolitan” dough variant. I’ll make a batch of 5 servings of dough and freeze 4. A stand mixer is a huge help, the dough is very glutenous. I recently learned slicing the mozzerella works better than grating, and so much easier. The dough takes time to ferment, thaw, etc but not much active work.

The challenge of home pizza is our ovens don’t go over 550°F. I get decent results in a home oven on a pizza stone, but Ken just got a Baking Steel from Sur la Table so I gave that a shot. It definitely cooks faster and chars the crust more; too much so, the bottom was about to burn before the edge was fully baked. The steel is heavy, rusts, and needs seasoning like a cast iron skillet. I’m not sure it’s a huge improvement over a clay tile.

Neapolitan-style pizza dough is pretty tempermental. For something different and foolproof this pan pizza recipe works pretty well. A no-knead dough sort of fried up in a cast iron skillet in the oven. It’s not elegant, more of a fast-food style pizza, but it’s delicious and fresh and that is its own reward.

Uber needs corporate ethics

Uber’s sure in a shitstorm now. On top of the long standing questions about their treatment of drivers, insurance, regulatory issues, etc they’ve shot themselves in the foot twice this week with ethical lapses. Once with an executive proposing doing “opposition research” on a journalist to discredit her, and again with troubling concerns about the privacy of rider records. I love the Uber product, but it’s clear the company has a serious problem.

Google’s “Don’t be Evil” policy was a valuable guiding principle for us. It was a shorthand for not doing things that were obviously unethical. Uber needs that. “Should we offer our drivers shady subprime loans?” Of course not, that’d be evil. “Should we poach Lyft drivers without worrying how it screws up their ride dispatch?” No, don’t be evil. There’s reasonable debate about exactly what is ethical or acceptable. For instance I’m 100% fine with Uber throwing elbows at corrupt cab companies. But the overriding principle needs to be acting ethically or else you end up with the shitstorm Uber has.

Uber’s problem appears to be at the top with Travis Kalanick, the founder and CEO. He’s set the company on an aggressive libertarian path and it’s ugly. (I’m also struck by Kalanick’s early founder role with Scour, a late-90’s product for pirating music from unwitting people’s unsecured Windows computers.) It may be that a lack of ethics is in the company’s DNA.

I love Uber, but a transportation product like theirs is a natural monopoly and Uber is showing themselves untrustworthy. I’m beginning to share the pessimistic view of Metafilter user rhizome that “the taxi industry is so corrupt that any organization that would unseat them has to be just as bad”. It shouldn’t be that way, Uber could do better.

Proposal: Museum of the American Genocide

I’ve spent more time than was fun at various German museums and monuments remembering the Holocaust, the hideous state sponsored wholesale slaughter of Jews, Roma, and other “undesireables”. I’m always impressed with how direct and without bullshit the presentation is. “We did these things. These are the things we did.” Little explanation of why, certainly no attempt to justify or explain away. Not even a facile apology. Just a documentation of the evil that Germans did. It is enough.

I want a museum about the American Indian genocide. A couple of rooms documenting pre-Columbian life, to convey the Native American’s culture, their society, their technology. Purely to humanize them and set the context for what comes next. Then room after room documenting the systemic program of murder, and burning, and sabotage. A room dedicated to the science of disease, the amount of destruction wrought by smallpox whether accidental or deliberate. A room or two of war weapons. Letters from the Indian killers explaining their techniques and goals. A room about the Indians who fought back and the disproportionate response to that rebellion. A whole diorama about Andrew Jackson (themed to the twenty dollar bill). One stark room depicting the mathematical scale of the genocide, perhaps with abstract sculpture. A temporary exhibit on the Trail of Tears not as an anomaly, but as a systemization of the violence done more haphazardly before.

It’s not a museum about Native Americans really. It’s a museum about Europeans, the things we did to conquer this continent. And should never forget.

TCPINC

IETF has an interesting new working group: TCPINC. “TCP extensions to provide unauthenticated encryption and integrity protection of TCP streams”. Practically what this means is “make it harder for third parties to eavesdrop on your Internet traffic”.

In theory IPsec was going to solve this problem for the Internet, but it is a failed technology. Right now the best we have is HTTPS for some websites. But wrapping every network protocol in an SSL layer is stupid, why not just encrypt the network? TCPINC is making a lot of compromises. “Unauthenticated” means they are punting on the harder half of the crypto problem and will leave users vulnerable to man in the middle attacks. It’s TCP only, and has to be NAT-compatible at that, so it won’t be a complete clean solution. But compared to the status quo of a lot of traffic not being encrypted at all, it’s a good choice. Making it a TCP extension should mean it can be deployed incrementally without a lot of pain.

There’s a few related draft specs already, such as draft-bittau-tcpinc-tcpcrypt-00.txt. tcpcrypt.org has more info as well. The mailing list archives go back to March 2014. The IAB just came out with a statement in favor of encryption, which is nice support.

OpenStreetMap can’t grow

I’m a huge fan of OpenStreetMap but the organization is a mess. Last year I fished around thinking I should get deeply involved with OSM, it’d be a good use of my time. But I gave up on the idea because I didn’t like what I learned about the culture. I think OSM could grow to be as important and influential as Wikipedia. But not with the current trajectory.

The problem boils down to a question of scale and influence. OSM has accomplished a huge amount with very little. No full time staff, lots of borrowed server resources, annual budget of less than $200,000. Think what it could do with more! The impression I’ve got talking to the folks who make OSM work day to day is they’re perfectly happy with the current scale. The de facto leadership, the most active mappers, sysadmins, developers, don’t want a change. And there’s no single visionary leader to bring things forward.

There are related problems with OSM. There’s a strong anti-commercial bent which not only results in an awkward license but also an inability to engage with potential partners like Apple or MapBox. The community itself has some toxic elements; I gave up asking questions on the IRC channel after the seventh time someone implied my questions were dumb. And right now there’s a bunch of drama around elections for new leadership that indicates structural problems, years-old grievances getting aired ineffectively on mailing lists.

I don’t have a solution to get OSM to grow into the massive influence it could have. I worry there can’t be one, that culturally the active OSM members want to remain small and unsullied by commercial interests. I could say and do a lot more to try to help, but I don’t think it would get me anywhere.

Paris 2014 notes

Ken and I went back to Paris for the first time in a few years, visited a bunch of old favorite spots. Some sadly in decline (Le Caveau du Palais), some still good. And a couple of new experiences.

Auberge Pyrénées Cévennes
Rustic, hearty restaurant. Specializes in cassoulet presented with pride in giant copper vats. It was a delicious cassoulet and definitely satisfied our hunger for same but I have some reservations. Cassoulet is never a light dish, but the quarter inch of grease floating on top of my bowl was a bit troubling. OTOH the goose leg confit was just amazing. Comfortable room, nice people, I will gladly go back.
Au Bourguignon du Marais
One of our old favorite restaurants, still delicious food. It’s a bit more interesting than the usual bistro menu, well prepared and with good wines. We went on a Saturday night and it was intensely crowded and about 80% tourists, which put us off a bit, next time I’ll go at a quieter time.
Le Relais de l’Entrecôte
Another old favorite, the basic steak frites experience. Perfect lunch for a day of wandering around Saint-Germain-des-Prés.
Ma Bourgogne
A fine bistro under the arcades of the Places des Vosges, this has been one of Ken’s favorites for years. Personally I thought it was good but nothing particularly distinguishes the food. Reliable and pleasant though, and you can’t beat the location.
Taillevent
One of Paris’ famous temples of food, two or three Michelin stars for years and years. I go back and forth on how I feel about this place. It’s a bit too traditional, uninspired in the kitchen. There’s no complex molecular gastronomy and radical flavor combinations you’d expect from high end chefs. On the other hand every single experience I or my friends have had there has been excellent, something I can’t say for some of the other super fancy restaurants in Paris. So I enthusiastically recommend it if you want to experience the very pinnacle of a French dining experience, albeit without being on the forefront of gastronomic exploration.
Hotel de Vendôme
Good luxury boutique hotel with an excellent central location, friendly staff, and very comfortable rooms. Also terribly expensive, although for this class of hotel it’s better value than you get from the competition. Sometimes you can get lucky and get a pretty good rate (€350 / night), particularly mid-week. The furnishings are starting to feel a bit worn and the Internet didn’t work as well as it should, so not perfect.
Musée Carnavalet
The Paris city museum, the quirkiness of random stuff the city has collected makes it one of my favorites. It’s not well organized, the quality varies highly, parts of the museum are closed at random intervals because someone went to lunch. But there’s a feel of discovery in the museum, finding an unexpected 1871 painting from the Commune or a beautiful wooden cradle in the shape of a boat or a collection of 25 little busts of Spinoza. It helps that it’s free and situated in the Marais where you’re probably wandering around anyway. You can just pop in for 30 minutes and see a couple of rooms, then leave without feeling like you had to see everything.

Discouragement: Paris street art 2014

I’ve loved the street art in Paris. So many fun discoveries, random art in unexpected public places, some beautiful works by Mesnager, L’Atlas, C214, Space Invader, Miss Tic, and so many more. Sadly, my visit to Paris in 2014 was a bit more discouraging.

The bits I’ve found in the posh parts of town, the 1st, 2nd, 4th, and 6th have been interesting. But a lot of work I remember is gone. Many suspiciously blank spots where there used to be invaders, or interesting affiches, or other things. It feels like someone went and cleaned many of the streets.

Also a very discouraging walk through Bellveille; see my Flickr photos. It’s always been a grimy neighborhood, it’s part of the charm, but the street art there has taken a turn for shitty tags over clever site pieces. And the amazing old gallery at La Forge / La Kommune is completely gone, the artist squat space has been replaced by an ugly modern building. An inevitable development, but a disappointing conclusion for a street art walk. Some of that energy has moved down to Rue Dénoyez but it’s mostly tags, not interest art. Also apparently that space is threatened.

Sorry to be a bummer, maybe it’s just me. Particularly sad to have found almost nothing new and exciting.

Donors Choose

This week I had a great experience with charitable giving thanks to Donors Choose, a charity that gives money through to teachers for classroom needs. Right now is a good time to give with school starting soon. And the way Donors Choose works feels personally meaningful.

The site lets you browse projects that need funding: $115 for classroom organizers for a kindergarten in Louisiana, $70 for planters and seeds for a garden in Oklahoma, $1300 for iPads in Washington DC, or heartbreakingly $239 for fans for kids in juvie without fresh air. The requests vary widely and the schools are all over the US; you can choose what speaks to you most. Or just give some money and let the organization figure out where to send it.

I ended up spending several hours choosing projects a few bucks at a time. I used the map view to focus on poor, rural areas where the parents weren’t going to be able to raise money with a bake sale. Mostly places I had some connection to, rural Texas and New Mexico near where I used to live. Places I used to drive through thinking “thank God I didn’t grow up here, I’d be stuck”. I don’t know that a copy of The Maze Runner is going to make all the difference to help a kid in Gallup, NM access the wider world around him, but if a Teach for America teacher thinks it’d help then that’s probably a good use of $7.

One of the sad but inspirational things I learned looking through the site is that the teachers themselves are often donating. As if taking an oath of poverty to become a teacher isn’t enough. If you’re in an industry that pays well, consider chipping in a few bucks as thanks for whatever teacher gave you the education to get you where you are today.

League of Legends and malware

Riot’s hugely popular game League of Legends is still installing malware, some five months after saying they don’t use it, players can delete it, and they planned to remove it.

The malware in question is Pando Media Booster. A few years ago this software was arguably useful, it allowed games like LoL to distribute patches via a peer-to-peer network. But Pando was discontinued in August 2013. Then in February 2014 someone used Pando to install malware on any suckers who still had the software. The software Riot is still distributing. And all of Riot’s customers who clicked “yes” on the update dialog had their browsers hijacked.

Riot has millions of users all over the world. I’m sympathetic to how hard it is to make software changes; they’re famously behind on a whole lot of development projects. But continuing to distribute malware to customers is unacceptable.

Update: a Riot employee said on Reddit that the problem was “the amount of work it takes to hand update new installers for every language” and offered the idea that the previous Pando owners might help them prevent the malware. That was five months ago.

Graf Zeppelin 1929

A movie totally worth watching: Around the World by Zeppelin, a semi-documentary of a multi-week 1929 zeppelin flight. Originally a Dutch production titled “Farewell”, the BBC Channel 4 version in English (and on Youtube) is just terrific.

What makes the film so marvelous is how much primary film footage they were able to use. The multi-week journal was a press event (funded by William Randolph Hearst) so most of the passengers on board were journalists. Including at least two film cameras. Really amazing to see all this vintage aviation, engineering, and socializing. Another thing that makes the film terrific is the storytelling, drawing most of its narrative from diaries kept by Lady Grace Drummond-Hay. She was a journalist with a fairly sharp eye and pen and her story makes for a nice structure for the trip. Beware the film is partly fiction; some of the events depicted (like an unlikely mid-Pacific repair) did not actually happen.

The story itself is just amazing, the history of airships. The Graf Zeppelin comes from a parallel Earth, a time when elegant dirigibles sailed the skies like cruise ships and navy aircraft carriers were airborne. This actually happened, lovely to see it play out in a film. The Graf Zeppelin company succeeded in operating a passenger service for a few years before improving airplane technology and the looming war made airship success unlikely. Not to mention the Hindenburg disaster.

There still is a German company operating zeppelins. I flew in the Airship Ventures craft a couple of years ago in the Bay Area, but sadly that company didn’t make it.

Between the thought and the act

I love the phrase between the thought and the act. It summarizes a slightly mystical experience of humanity, the difference between willing to do something and actually doing it. It comes up in all sorts of contexts. In twitch games it explains the value of better UI for allowing the player to do what they intend (as in League of Legends quick casting). In general human affairs it describes being effective. You may think of a great product idea but ideas alone are worthless; it’s the implementation that has value. The phrase also has a second meaning it ethics, the difference between thinking of doing something vs. actually doing it.

I think the best known use of this phrase is slightly different, coming from TS Eliot’s The Hollow Men.

Between the idea
And the reality
Between the motion
And the act
Falls the Shadow

I don’t like the use of “motion” though, since in so many cases the motion is the act.

The earliest use of the phrase “between the thought and the act” I could find occurs a few years before the Eliot poem, on page 242 of the 1917 book Educational Psychology by Kate Gordon. I have no idea if that book had much reach though. I wonder if the phrase comes from an older idea, maybe Greek philosophy?

Every time I think of the phrase, I hear the Crime & The City Solution song The Adversary.

Update: Douwe tells me of the 1910 Dutch poem Het Huwelijk by Belgian poet Willem Elsschot (English translation), which contains the phrase “tussen droom en daad”, roughly the same meaning.

Update 2: my old gamer buddy Hronk wrote to tell me that this concept shows up in Shakespeare’s Julius Caesar, Act 2 Scene 1, Brutus reflecting on the turmoil of making a decision.
Since Cassius first did whet me against Caesar,
I have not slept.
Between the acting of a dreadful thing
And the first motion, all the interim is
Like a phantasma, or a hideous dream

Node.js is the MongoDB of languages

My tweet last night “Node.js is the MongoDB of programming languages” got enough response I feel I need to explain it a bit. It’s an awfully snarky thing to say, but it has some truth.

MongoDB used to be the cool kids’ database. It’s appealing when you start using it: good docs, easy to get going, a plausible story on performance. NoSQL is exciting and MongoDB is an easy NoSQL system to try. But then people started looking closer and finding all the ways it broke and now MongoDB is out of favor, at least for serious production servers.

Node.js is now the cool kids programming language. It’s appealing; good docs, clean slate of libraries and tools, fast VM, and a plausible attempt at server performance. Non-blocking systems are exciting and Javascript closures make continuation programming easy. But now people are looking closer and finding all the ways Node.js is awkward or brittle and one starts to wonder.

I’m not saying Node.js is bad. There’s a lot of good in it, I particularly like that it’s made non-blocking programming more accessible than Python or Java or Nginx has. Mostly I’m just mocking the fashion of the month. It is a shame that people are rushing to this Brand New Thing without knowing the history and potential pitfalls. Just like we learned with MongoDB that ACID is hard, Node users are now discovering that reasoning about continuations is hard and memory management with closures is tricky, not to mention unwinding the stack on errors. The Node community is hard at work on improving things, hopefully that development process will lead somewhere productive.

For a more hilarious view on MongoDB and Node.js see Mongo DB Is Web Scale and Node.js is Bad Ass Rock Star Tech.

Battlefield 4 player stats

Just finished another game visualization project, graphs of stats for the top 5000 BF4 players. It makes scatterplots for the player population of statistics like skill score vs time played, win/loss ratio vs. skill, and kill/death vs. win/loss. Lots of details in this Reddit post.

Another fun D3 project; scrape a bunch of data, cook it into a 2 megabyte CSV file, then do custom visualizations. I like the way the scatterplot came out and may re-mix it as a generic data exploration tool, a sort of GGobi lite in your web browser. Drop a CSV file into your browser window and get a simple tool for exploring it for correlations.

It’s frustrating trying to get attention for projects like this. All I know to do is post it to the relevant subreddit and hope for the up-votes, but that’s pretty random. My Reddit attempt for the LoL lag tool failed, and a site I worked about 50 hours on has had a total of a few hundred visitors after a week. Discouraging.

Bing Ads imports from Google Adwords

I had no idea Microsoft’s Bing Ads included an option to import from Google AdWords. Complete with simple OAuth-like authentication and seamless data import. It’s been able to do that for at least a couple of years, I only learned about it today when setting up a Bing campaign.

Warms my heart to think my AdWords API project helped enable some data portability for Google customers. That’s essential to having a competitive market. Google AdWords is nearly a monopoly, so much so I’m surprised there’s not more anti-trust interest in Google’s ad business. Allowing customers to bring their data to competitors is a valuable step in staying honest and legal.

The drawback is Bing’s ads have to mirror Google’s crazily complex data model. (Quick, what’s an AdGroup, and how is it different from a Campaign or a Creative?) I also recently set up my first AdWords campaign in years and the frontend product is really complicated and confusing. It’s been nearly ten years since I worked on the AdWords advertiser UI, I was sad to see that it hadn’t gotten any simpler or clearer for advertisers.

Logs of Lag

I just released Logs of Lag, a small project I’ve been working on. It’s a netlog analyzer for the game League of Legends. You drop a log file from the game on it and the tool gives you a nice report. Not a huge thing, but it’s been useful to me already.

The webapp is another of my line of client-heavy programs. It all runs in static files, no server needed at all, the parsing and rendering is all done in the browser. I really like this style of programming, it’s fun and interactive and easy to scale. I did end up making a simple CGI server for storing log files so that people could share reports with friends. I may yet rewrite that to just use S3 as a filestore and bypass my server entirely.

The code is on GitHub.

Language fashions

There’s a new history of Perl making the rounds now that’s worth reading, if nothing else then for the dissonance of reading a whole thing written about Perl in the past tense. It reminded me of a bet my friend Marc and I made back in 1999 or so.

Marc and Nelson will agree that Python has more mindshare than Perl on May 1, 2004. If so, Nelson gets the contents of this envelope. If not, Marc does.

In 2004 I conceded he won the bet, based on this evidence of Google search result counts:

Perl: 28M. Python: 14M
Perl filetype:pl: 2.9M. Python filetype:py 0.2M

I don’t think anyone would argue that Perl is still more popular than Python in 2014. I looked at those measures again today, but given how goofy Google’s results count can be I don’t put too much stock in this:

Perl: 28M. Python: 45M
Perl filetype:pl: 11M. Python filetype:py 2.9M

I wish I’d taken up his 2004 follow-on bet: Groovy vs Python. Oops. Meanwhile we both missed the language right under our noses, Javascript. Mostly I’m just grateful Java is on the way out. If it weren’t for all the work put into JVM efficiency I think it’d be entirely dead now.

Phishing via Google ads

Interesting report of stolen Bitcoins, a phishing scam involving a Google ad. I just confirmed that the phishing ad is still running on Google on a search for blockchain.

The ad says the URL goes to blockchain.info. The URL displayed on mouseover on the link is to a Google redirector, goo.gl/vL2zmr. But when you click the link you go through a few redirectors and end up at blockchain-info.consulpisos.com, which is allegedly a phishing site. It sure looks suspicious; that page goes straight to a “type in your password” page, which the real site hides behind several clicks.

I don’t much care about the Bitcoin part of this, but Google should really not be selling ads with fake URLs on display.

Game pre-funding is bad for gamers

The indie game industry has been shifting in the past few years to a pre-funding model. Gamers pay for games before release, either via Kickstarter campaigns or by buying games in alpha release or Steam Early Access or the like. A lot of neat games have been funded this way (see: Minecraft) but I worry it’s bad for game consumers.

We’re no longer being asked to buy a game, we’re buying something completely ephemeral, the idea of a game. We hope that maybe someday the game will be released and we can play it. And we get no guarantee of a quality finished project. (See Clang, which cynically claimed their unplayable alpha tech demo counted as a game release). Games are no longer really released, they are put out as an “alpha”, then a “beta”, then laughably a “gamma”. Really, why bother even finishing a game if people will pay you for your game anyway? Avoid the whole review cycle!

The most predatory of these “buy the game that does not exist” things I’ve seen yet is Star Citizen. They have collected $44 million for a game where you fly around spaceships in a giant procedurally generated universe. Except that universe doesn’t exist and last I heard the only code you could actually run lets you look at a rendered spaceship sitting motionless in a hanger. Nevertheless, people are paying hundreds of dollars for special rare spaceships in the hopes one day they can fly them. The Star Citizen project is not a game, it’s a marketing campaign for a game. I sure hope it turns into a real game some day or a bunch of people are going to be disappointed. It’s many, many months behind schedule, to the extent there even is a schedule. Why bother shipping when you can just keep collecting money?

adapted from a Metafilter comment

Scribd and Quora considered harmful

There are two terrible web properties out there that everyone hates, Scribd and Quora. Please don’t use them. Instead of Scribd just host a PDF anywhere, or upload text to pastebin or make a nice blog on WordPress or Medium or something. And instead of Quora use Ask MetaFilter or StackExchange.

Scribd’s business model is to host documents in formats that are unusable. For instance, here’s a copy of the Declaration of Independence. Or rather, the free preview; you have to download it to read the rest and a one-day guest pass costs $9. Here’s a copy of Elliot Rodger’s insane manifesto. It starts “This is the story of how I, Elliot Rodger, came to be.” Only I had to retype that phrase; if I copy-and-paste I get “]fjs js tfh stgry gl fgw J, Hccjgt Tgmahr, eknh tg dh” because Scribd uses some stupid DRM font. Easy enough for a pirate to reverse engineer but impossible for normal use. They also broke “Find”; there’s some Javascript thing overriding the browser that doesn’t seem to work.

Quora’s business model is to trick people into sharing information for free, then put it behind a login. It’s like Experts Exchange 2.0! For instance, on Quora you can read Who owns the copyright on content contributed to Quora? Only you can’t just read the text. Depending on your history with the site and the way you got there you may see a giant popup demanding you log in obscuring the page, or the first answer clear and then the rest blurred, or if you’re lucky just the page. It appears nondeterministic.

Both businesses are deliberately trying to lock up text content to make it harder to access, to force users to pay or share advertising data or some such bullshit. The part that kills me is some engineer actually wrote code to deliberately break document sharing on the web. It’s terrible.

Update: the Quora CEO responded on Hacker News to correct me that Quora neither runs ads nor charges users. At the moment, they apparently have no revenue.

Screenflick Mac screen capture

Screenflick is good software. It captures full video with sound from your Mac desktop, full screen or a portion. I’m using it to record games I play. Could have all sorts of applications.

There’s a variety of screen capture options on the Mac from the free recorder included in Quicktime to the market leader ScreenFlow for $99. Screenflick’s only $29 and is very good at capture, including keystrokes, mouse events, and audio via Soundflower. I also appreciate its ability to downsample the raw video when recording. It also has an impressive variety of export options.

The big drawback is that Screenflick has no editor, not even a simple interface for cropping out sections of video. My theory is that’s what iMovie is for. But folks I know who produce a lot of screencasts appreciate that ScreenFlow is an integrated solution.

Linkblog, 2014 setup

I continue to maintain my linkblog; here’s how it works these days. It’s all managed via a Pinboard account. Every time I see something I want to linkblog, I add it as an URL to Pinboard with a browser extension. My Pinboard page is the web view of my linkblog. Pinboard also publishes an RSS feed for my followers. I also use dlvr.it to automatically tweet my links to a Twitter account.

The Twitter account has been very successful for me, it’s a natural form of engagement for the short form. (The follower number is hugely inflated because it was a featured account for a couple of hours a long time back.) The Pinboard extension is great because it makes it very easy to linkblog any URL I’m looking at. I also like that Pinboard archives the full text of pages I link ($25/year); I often find myself searching my own linkblog. The one drawback to my setup is the web view is ugly. That’s kind of purpose, I expect people to mostly follow via RSS or Twitter. But I may yet use IFTTT or the like to set up a Tumblr for a nicer web view.

Tex-Mex chili

One of the few things I can cook competently is Tex-Mex chili. It’s basically a pot of meat cooked with red chile and onion. No beans, no tomato. Hearty and delicious with tortillas, sharp cheddar, fresh onion, and sour cream garnishes.

I’ve learned to make chili from scratch. But if you want to cheat, Wick Fowler’s 2 Alarm Chili Kit is a reasonable compromise. It’s not as good as making it the hard way but it’s still pretty good, particularly if you bump it up with some of your own chile powder.

To make it from scratch, I use this Homesick Texan recipe. I love her blog and cookbook. It’s a very fussy recipe but makes an excellent result. Over time I’ve modified it a bit.

  • Working with all those kinds of whole chile makes a well rounded flavor but is a lot of effort (and tricky shopping). I usually end up using some powdered New Mexican red chile instead of some or all of the varieties she calls for, you just dump it in like a spice (a lot of it; more than half a cup for 4 pounds of meat if that’s all the chile you use).
  • The chipotle in adobo is the most important extra flavor and is easy to add from a can. Beyond that you want dried chiles and the extra work that entails. Cayenne is for heat, not flavor.
  • The recipe calls for chuck roast. I use half ground beef for texture. You can also use 100% ground beef which saves a lot of preparation time.
  • Leave out the clove. Too much can ruin the dish and it’s not worth the risk.
  • The beer and coffee aren’t really necessary but are nice to add some bitterness. You just need enough liquid of some sort. I use boxed beef broth instead of water.

I grew up with this kind of food.

Unison file synchronization software

Unison is good software. It’s a command line program to synchronize filesystems, to keep a directory tree identical on multiple computers. I use it to sync about 40G of files across two Macs, to keep my home directory and source code and various applications in sync. The neat trick is I sync those two Macs through a portable hard drive so I don’t have to wait for hours for files to go over the Internet. Unison can also work online so changes are propagated automatically.

Unison is a lot like rsync. But Unison is designed to be bidirectional. Rsync always syncs one way: copy A to B. Unison will look at the differences between A and B and merge them, including a limited UI for conflict resolution. This protects me from the case where I modify something on both machines without syncing beforehand.

The main drawback with Unison is it’s slow, it takes many minutes to decide what files to sync. I also hate the interactive UI; it doesn’t work well when you have lots of files that changed in both places. I’m also a bit concerned that it’s no longer under active development but Unison is the rare software that’s a complete product, it’s not clear it needs many changes.

There are other tools solving similar file sync problems, none perfect. Dropbox is phenomenal but doesn’t have offline syncing of large files. Camlistore is promising but not quite ready for civilian use. git can be used to keep stuff in sync but is better suited for text files whose history you want to keepl. And CrashPlan is great for online backup but doesn’t really provide a second live copy.

Cass House Inn

There’s good fine dining in California’s Central Coast. Cayucos is one of those tiny California beach towns from the 50s. A few dumpy motels, a surf shop, restaurants with names like The Salty Seagull and The Rusty Pelican you’d only ever eat at because you’re on vacation in a beach town. But there’s something special and unique in Cayucos, the Cass House, and as the Michelin folks say it is vaut le voyage.

Chef Jensen Lorenzen and his crew are turning out phenomenal fine dining, as good as anything I’d expect to find at San Francisco’s top restaurants. They are serving only one option, a 14 course tasting menu of delicate little plates. With excellent (but laid back) service and a good wine list and a lovely room that only seats about 30 people.

The key thing here is the cooking works. The kitchen knows its business and is producing excellent creative food with technique but not silly gimmicks. My favorite dish was a dessert, a fennel-based gelée that was delicate, deeply flavored, with a bit of candied fennel as a crunch accent. So elegant and precise. The cauliflower “curds & whey” were also phenomenal, a rich risotto-like texture with a deep butter and cheese flavor. A heavy dish, it came after a very delicate dashi bouillon. The main course (I chose chicken) was a satisfying solid portion, keeping the whole meal from being a bit too precious and dainty. We were also very impressed at how they handled my friend’s near-vegan diet, deftly substituting coconut milk and the like for the dairy that would have been in half the dishes. (Elegant cooking without butter!) I admit I was concerned going in that the menu was too demanding, but Cass House executed incredibly well.

They’ve been doing fine dining for a couple of years but jumped full in to the tasting menu program this February. It’s ambitious and risky and one service a night at a reasonable $85 caps their business. My impression is they’re doing this because they love this kind of cooking, like being in control and preparing food with art in the way they want. I was glad to be along for the ride and hope to return.

The Mozilla crisis

Mozilla, the creators of the Firefox browser and other important open web technologies, just appointed Brendan Eich as CEO. The problem is Brendan Eich donated $1000 to Proposition 8, the anti-gay marriage referendum that set back marriage equality in California for five years. And now there’s a shitstorm.

I held my tongue on this for a few days to give Eich and Mozilla time to give their side of the story. Well, they did and it’s a mealy-mouthed non-explanation where Eich desperately tries to sidetrack any questions about his politics with a confusing endorsement of “inclusiveness” and Indonesians. It ends with him questioning the world’s faith in Firefox because his colleagues are calling him out on failing a basic measure of human decency. The interview is dishonest and disgusting.

I don’t think there should be a political litmus test for CEOs, even CEOs of mission-driven non-profits. It’d be fine with me if Eich were an NRA supporter or a no-tax Tea Partier or some other debatable position. But this isn’t politics. Gay marriage is a civil right and Eich unapologetically contributed to deny me and my friends equal citizenship in the United States. It’s unacceptable and makes him unfit to be the CEO of Mozilla.

Apparently he doesn’t intend to apologize or recant. Fine. But it’s particularly appalling that he doesn’t even want to explain his position. I’d respect him more if he said “I oppose gay marriage because of my religious beliefs” or whatever, at least then he’d have some integrity. Instead he just wants us all to ignore his demonstrated anti-gay stance, a dishonesty and lack of courage. Unexamined bigotry is the most dangerous kind.

Brendan Eich must go. His position as CEO is threatening Mozilla’s future. Sadly there’s a crisis in the board of directors too. This kind of chaos destroys organizations.

Cooking tools

Ken is the family chef but I enjoy cooking in Grass Valley. Partly because it’s a huge kitchen with plenty of room to work. And also because we outfitted it from scratch with high quality kitchen tools. Here’s some of the stuff I particularly like using.

Wüstoff Classic Ikon knives
Solid European knives, holds an edge a long time when properly sharpened, and I love the synthetic handles. The 6” chef’s knife is what I use 90% of the time, along with a 9” for big jobs and a paring knife for detail work. Worth testing in person, you want to see if the balance feels right.
OXO Good Grips Cutting Board
I like plastic cutting boards because I can throw them in the dishwasher. This brand has the right design with rubber edges so the board doesn’t slide around.
All-Clad Stainless pots and pans
Excellent, durable, heavy cookware. The aluminum core construction is essential for heat distribution. The stainless surface is bulletproof, or at least steel-wool-proof. Expensive but they last forever and sometimes you can get a good deal on a set. The 12” fry pan, 1.5qt sauce pan, and 8 quart stock pot get the most use.
T-Fal nonstick pan
Nonstick pans are disposable, so might as well skip the All-Clad and buy a cheap one. (As careful as you try to be after a year you have a laminate of burnt grease that ruins the surface.) The good thing about T-Fal is they have a thick metal bottom that spreads heat.
OXO Good Grips stuff
For odds and ends like vegetable peelers, cooking spoons, etc. I look to Good Grips first. Most of it is nothing special (other than the cutting board I called out) but it’s well made and the grip is, indeed, good.

Neither the knives or pans are particularly cheap. But if you can afford the initial cost they’ll pay for themselves in longevity. Also most have generous warranties. In my salad days I threw out cheap pans about once every two years; we have All Clad that’s 20 years old and still in great shape.

Apologies for the spammy-sounding Amazon links; they’re for your convenience, but I do pocket a few bucks a year from affiliate fees

Good web error reporting

Gfycat (and CloudFlare) has a fantastic error page for when they have a server error.
Such a clear, simple statement of what the error is and what the user can do. One of my pet peeves is software that blames the user when it’s not their fault, like the “your Internet is down” message Steam displays when their client can’t connect to their server. This kind of message is much more honest and useful.

BTW, Gfycat is an awesome service. They host animated GIFs for sharing. And they transcode the bloated source GIF to much smaller HTML 5 video, then serve the smaller file to browsers who can handle it. The hosting is good, the 95% bandwidth savings is great.

Brainstorm

The 1983 movie Brainstorm is worth seeing, or maybe revisiting if you last saw it decades ago. It fits in with Tron, WarGames, and Videodrome as early 80s imaginings of what the near-future of technology will look like. Great performances by Christopher Walken and Louise Fletcher.

The reason to watch Brainstorm now is is the production design, the imagination of consumer products and user interfaces for the near future. It feels like totally relevant, modern commentary on product design for things like the iPhone, Google Glass, Tesla, or a Microsoft Kinect. Dialed up to 11 with a sci-fi flight of fancy, of course, but well done for that. I’ll be honest and say the plot is sort of silly, a combination of military-industrial complex paranoia and some fairly hokey spiritualism. That’s partly redeemed by Louise Fletcher’s role as the head of the research project, a totally badass lady scientist. But mostly watch it for the animation sequences and the industrial design.

Consumer victims of DDoS

League of Legends has a serious security problem: denial of service attacks. Some of these attacks are against the game as a whole and bring down the whole system. Presumably Riot can eventually protect their servers from that. Worse are targeted DDoS attacks against single players; it’s not clear they can defend themselves

The motivation for attacking individual players is ugly. The game is very competitive at the highest levels of play, with prize money and pro careers on the line. Knocking an opponent offline or just lagging them is enough to get a win. Even if the game is thrown out as invalid a DDoS is still way for a losing game to be converted into a tie.

There are guides on how to avoid being a DDoS victim. They boil down to “don’t reveal your IP address”, which in practice means “don’t use Skype from your real IP”. VPNs, playing only from Internet cafes, etc are other options. But these are minimal solutions at best; hiding your location from the world is really difficult. There’s new rumors the whole IP identification part is entirely automated and foolproof.

I don’t really know how a normal Internet consumer can protect his ISP from being knocked offline with a DDoS. It’s an ugly situation.

Information wants to be free

The phrase information wants to be free is one of the most important observations of the information age. Dating to Stewart Brand in 1984, the statement is often misunderstood and sure to piss people off.

The phrase is a simple observation, like saying “a compass wants to point north”. Information intrinsically has a tendency to spread. Controlling information, bottling it up and keeping it limited, is difficult. There’s a bit of a poetic turn in saying “wants”, since of course information has no agency. The underlying truth is really a statement about human nature; people tend to share information.

The phrase is not a statement that information should be free. It’s not a statement that sharing information is an intrinsic good. It’s also not saying it’s impossible to keep information not-free. Just difficult.

The truth of “information wants to be free” is obvious to anyone who works in informatics. But it’s ignored time and again. It’s ignored by record companies trying to prevent music downloads, by startups trying to enforce embargoes on tech news, by the US government trying to share secrets with thousands of people and yet somehow not the world at large.

Digital networks have made sharing information enormously easy. But the underlying reality that information wants to be free is as old as society. Villages have always had gossips, but now the gossip is global, instant, and with perfect fidelity.

Chinatown and rape culture

I settled down a few days ago for an old classic film, Chinatown. Great Jack Nicholson performance, fantastic film noire homage, lovely 1940s period LA. And through the whole film I kept thinking two things. The game LA Noire owes a huge debt to Chinatown. And good lord, but is that film a serious product of rape culture.

The obvious: a central plot point is that the female lead (an excellent Faye Dunaway) was raped by her father. That fact is presented sympathetically enough and she’s a little more complex than just a victim. But how do we learn it? Our hero detective literally beats it out of her. It’s a horrifying scene, played to deliver the shocking reveal. But then it’s also this disgusting revictimization. And it passes on without notice, of course the hard-boiled detective had to beat the hysterical girl silly.

There’s another upsetting thing earlier, when our detective and the heroine first meet, where she seduces him. Two days after her husband’s violent death, a death the detective is implicated in. It’s not quite so stupid; we learn later she’s playing him, the seduction is strategically deliberate on her part. But of course the hard-boiled detective gets to bed the beautiful girl.

And then there’s the central unspoken problem, that the director is Roman Polanski. Not three years after Chinatown, Polanski drugged a 13 year old girl and raped her. And pled guilty, and fled the US before sentencing, and has been an active fugitive ever since. I’m normally OK with separating the art from the artists, but in his case it’s just too much. But of course the famous director gets away with raping a child.

Part of what’s so troubling about rape culture is how insidious it is. This kind of victimization of women was mainstream entertainment, without comment, for far too long. It’s an infection.

Me in the summer of 1991 or 1992

A photo of me in the summer of 1991 or 1992, at a Queer Nation happening at the Portland Rose Festival parade. The photo is courtesy of my friend Tommy Strong, one of the QN/PDX founders. From a time when loudly saying “I’m queer and proud” was a shocking, radical act. It gets better.

Apple’s disastrous SSL library

Apple totally screwed up SSL with a fundamental bug in their certificate checking implementation in both MacOS 10.9 and iOS 7. Every consumer iPhone, iPad, and Macintosh running recent versions of their OS is vulnerable. My understanding is SSL certificate checking basically does not work and any secure site can be spoofed with a man-in-the-middle attack. It’s about as deep a flaw as it goes. There’s a patch for iOS out but not yet for MacOS. You can test if a browser is vulnerable here.

The bug boils down to a simple typo in the code, the good ol’ C gotcha that indentation doesn’t match control flow. Bugs like that happen in C. What’s alarming is Apple didn’t catch the bug; not with a lint tool, not in code review, not in unit testing, not in integration testing. No aspect of Apple’s software development process caught this bug before releasing it to millions of users. That’s terrible engineering practice; in a critical security library it’s outright negligence.

At the moment MacOS users are entirely vulnerable and there’s no fix. In the past Apple has taken many weeks to fix critical bugs in things like Java, hopefully they’ll be faster here. Using Chrome instead of Safari will insulate you from malicious web servers, Chrome wisely has its own SSL implementation. But a whole lot of other Mac software is relying on the broken certificate library, presumably including Apple’s own software update system.

Nice of Apple to publish the exploit before the fix.

Clear dark sky chart

I love the Clear Dark Sky Chart, a geeky little astronomer’s forecast. Also CSC Menu which puts it on a Mac OS menu bar. Here’s a sample image.

Above is the forecast for near Grass Valley, CA for the next two days. Time goes from left to right, each row is for a different sky condition: cloud cover, transparency, seeing, and darkness. Also the temperature, humidity, and wind for your backyard comfort. See the legend for details, but basically dark blue is good. Once you learn to read this presentation you can quickly tell if it’s likely to be a good night to look at stars in thousands of locations. Looks like it’ll be clear but relatively poor tonight.

These charts are derived from a more traditional map forecast prepared by the Canadian Meteorological Center. Their site shows you maps of things like cloud cover by the hour. The Clear Dark Sky site basically samples the pixels at a specific location and displays the time series as a strip chart. Simple and useful. The mysterious seeing forecast is particularly idiosyncratic to astronomy, an experimental forecast of how bad atmospheric distortion is likely to be.

Balinese Gamelan

I’m about to go to Bali, home to Gamelan, one of the most interesting musical traditions in the world. Equal parts rhythmic and melodic, amazing harmony and counterpoint, and an interesting participatory music culture playing one-of-a-kind musical instrument ensembles. I’m fortunate enough to have a friend who has studied gamelan in Bali. Here’s what Chris wrote me as on what I may hear when I visit. (He also gave me a copy of A House in Bali, a 1947 book about a Canadian musician who went to Bali to study.)

Most all links to video or music files, give it a listen!

Style: Gamelan “Gong Kebyar”

This is the style that is most associated with Balinese gamelan today. It’s a style that came into its own in the early 1900s-1930s, evolving away from the slower Javanese-style court gamelan that preceded it. A hallmark characteristic of this virtuosic style is the “kotekan”, or interlocking wherein different players each play one half of the melody at high speed and it’s which are zippered together at high speed (example here). It is also quite often accompanied by dance.

Jagra Parwata: This is a virtuosic gong kebyar piece, one of my favorites. I believe it won the All-Bali competition about ten years ago. It’s also the first piece I ever learned to play on Gamelan – a true “trial by fire”. Note the loose interpretation of time; it changes tempos both languidly and abruptly. This is a classic aspect of gong kebyar.

Taruna Jaya: This is the most famous of the gong kebyar dance pieces, created around 1950. For a Balinese female dancer, this is the single most important piece and is used as a required dance to judge the All-Bali competition. Taruna Jaya stands for “victorious youth”, and is intended to convey the wide range of emotions of an impetuous youthful princess. It is danced by a young girl who (as it was described to me by my Balinese teachers) is pretending to be a young man pretending to be a young girl. There’s a good description here. Carefully controlled, intense eye and finger movement are the hallmarks of this piece, and much of Balinese dance. The dance requires so much energy that most Taruna Jaya dancers peak out at around 15 years of age.

Style: Gamelan “Gender Wayang”

This is a ceremonial form of gamelan, used for religious ceremonies (weddings, tooth filings, etc) and also puppet shows. As opposed to gong kebyar, this style is played with either two or four players who sit facing each other, each side playing one half of the melody in a fashion similar to the gong kebyar kotekans.

Here’s a video from someone playing at a local temple festival. Here’s another video of someone practicing his half of the ankat ankatan melody at about half speed; it gives you a good idea of how both hands work together and how half of the melody sounds. This song is the first one I learned on the gender wayang, because it’s pretty simple and repetitive. It translates to “walking music” and is used as filler during the parts of the puppet shows when the characters are supposed to be “walking around on a long journey”.

Gending Rebong: This is a song used during puppet shows when two characters are expressing their love for each other.

Style: Balaganjur

This is a marching form of gamelan. You will see this in parades and cremation ceremonies. It has all the elements of gong kebyar but is much simpler and more repetitive and is easy enough that every villager learns a couple belaganjur patterns so they can take part in ceremonies for members of their village. In that sense it’s the form of gamelan that most non-musician villagers take part in at least once or twice a year.

The Belaganjur of group Jaya Sakti: I don’t think this even has a formal name, but it’s the most awesome belaganjur I’ve ever heard. I love how it starts out incredibly simple and, simply through tempo change along, seems to transform from something calm and relaxing into something violent and exciting, and then back again. If this doesn’t make you want to march, nothing will.

Angry rainbow palette

The “angry rainbow” palette is the colors you get when you set saturation and value to 100% and then spin the hue wheel. From bright red #ff0000, briefly through yellow, a long linger in #00ff00 green, longer still around dark blue #0000ff, and finally back to red via an eye-searing trip through purple. The term “angry rainbow” isn’t in common usage but I’m doing my best to spread it. I got the term from someone else, maybe another student at the MIT Media Lab? (See also: angry fruit salad).

The angry rainbow is always the wrong palette for data visualization. It’s too bright, too colorful, and too reliant on non-uniform hue discrimination. But it pops up all the time, from random weather maps to heatmap examples to NYTimes work sketches. It seems to be the default palette for various visualization tools, no doubt because it’s easy to generate in software. I’ve certainly been guilty of using it myself, somehow it’s always at my fingertips.

So what’s a better choice? Honestly, almost anything. Even knocking saturation and value down to about 80% gives a more pleasing result. If you have continuous data try plotting it with varying brightness instead of hue, or narrowing down to a red/blue color ramp (properly interpolated) instead of the full rainbow. if you want to do it right consider a ColorBrewer scale; the D3js implementation is a fine place to start. If you roll your own palette, work with colors that are not fully saturated and not fully bright. Think carefully about whether hue is really the thing you want to vary.

Angry Rainbow Dash by Uxyd

League of Legends vs the Superbowl

Sports fans had a choice yesterday: watch the Super Bowl or watch League of Legends via Twitch. I figured the Super Bowl would easily win out and no one would watch the eSport, but boy was I wrong.

Above is a graph of League of Legends viewers of the 4 LCS tournament games on Super Bowl Sunday. (I made the graph from Twitch’s published data; there are viewers on other services, but Twitch is the majority.) About 230,000 people were watching on Twitch, a typical day for LCS. The surprise is viewership peaked at 286,000 for the last game at 4pm, half an hour after the Super Bowl started. No noticeable viewer falloff at the 3:30pm kickoff either; just the usual slump after the previous match ended.

Why didn’t the Super Bowl cut into the League of Legends audience? It helped that the final game was an anticipated matchup between two of the best teams with a strong fan base. The stereotypical gamer nerd is not a sport fan, so maybe there was no conflict. On Reddit people noted that a lot of LoL fans are Europeans not interested in the Super Bowl. (There’s an enormous Asian audience too.) Some folks said they’d just watch both at the same time.

I’ve come to really enjoy watching League of Legends tournaments. It’s an enormously popular game, 27 million people play daily and 32 million (8.5M peak) watched last season’s championship. Riot Games has invested heavily in making the game into a sports event. The broadcasts are a lot of fun to watch with smart announcers, good storytelling, and exciting gameplay. I’ve generally been a skeptic that eSports would become a phenomenon but League of Legends is winning me over.

If you’ve never watched LoL before, yesterday’s TSM v C9 game was pretty good. The whole 44 minute broadcast is worth watching but here’s a 5 minute highlight reel. The game is a bit complicated but basically it’s two teams of five players fighting to control the map. Here’s an overview of the game with a lot more detail. Lots more recorded games on /r/LoLeventVoDs.

First they came for the venture capitalists…

This letter to the editor from Tom Perkins about the anti-tech backlash in SF is just breathtakingly stupid.

I would call attention to the parallels of fascist Nazi Germany to its war on its “one percent,” namely its Jews, to the progressive war on the American one percent, namely the “rich.” … This is a very dangerous drift in our American thinking. Kristallnacht was unthinkable in 1930; is its descendent “progressive” radicalism unthinkable now?
This comparison is so obviously idiotic I’d just ignore it. But it’s by Tom Perkins, founder of Kleiner-Perkins, one of the most influential VC firms in the tech industry. Blogging it so we “never forget” if you know what I mean.

I’m concerned about the growing class tension in the SF Bay Area. While I think some of the rhetoric in the protests is deplorable there’s significant, meaningful issues of equality and access in the Bay Area that need to be addressed. But then to have some jackass come in and Godwin the whole discussion, in the Wall Street Journal no less, just ick.

Maybe it’s time for Kleiner Perkins to rebrand.

Thailand

Greetings from Thailand! Just on the way home. I have to be honest and say we didn’t love this part of our trip as much. Maybe we went to the wrong places?

Bangkok is an amazing modern city, with all the excitement and hassle that entails. It’s also crowded and dirty and at least for us, not so much fun as a tourist. The highlight was seeing the amazing temple Wat Pho, totally worth a visit. But famous entertainment areas like Patpong were lost on us; too crowded and sleazy. I’m sure folks have more fun in Bangkok than we did, but for us a couple of days was enough. As for dining, it got better once we got out of hotels. Queen of Curries was quite good: divey place by American standards, but friendly staff and delicious food. The Local was more interesting, strong fresh flavors and significantly more variety than we see in the US. I particularly liked the lemongrass salad with little dried shrimps and fried tiny fish, wrapped in betel leaf.

We had more fun in Chiang Mai, the medium sized city in the north. The Dhara Dhevi hotel was phenomenal: incredible hotel architecture, great food, terrific service. Our favorite experience was the hotel’s cooking class with market tour. Our temple tour was also interesting was thanks to a good guide. Riding elephants was not for me: certainly interesting and different but I’m not much for large animals.

So now we head home from a long successful trip to Bali, Singapore, and Thailand that my sweetie Ken arranged for us with help from our travel agent. Turns out to not be so hard to visit this part of the world, at least if you’re a little patient and don’t mind paying for high end service. Bali was definitely my favorite place of the three, I’m sure I’ll be back.