2011 Favorite Restaurants (in the U.S.)

It has been a little over a year since I put together my first list of my top ten favorite restaurants in the U.S., along with some honorable mentions. Things have changed over the past year, though there was no movement in the top four.

  1. La Belle Vie (510 Groveland Avenue, Minneapolis, MN)
  2. Grocery (288 Smith Street, Brooklyn, NY)
  3. Burma Superstar (309 Clement Street, San Francisco, CA)
  4. Hard Times Café (1821 Riverside Avenue, Minneapolis, MN)
  5. Frankie’s 457 (457 Court Street, Brooklyn, NY)
  6. Amber Indian (2290 West El Camino Real, Mountain View, CA‎)
  7. Saad’s Halal Restaurant (4500 Walnut Street, Philadelphia, PA)
  8. Jasmine Deli (2532 Nicollet Avenue, Minneapolis, MN‎)
  9. Boqueria (53 West 19th Street, New York, NY)
  10. Maialino (2 Lexington Avenue, New York, NY)

Worth mentioning:

Posted in Food | Leave a comment

Incredible 2011 NBA Finals

I’m not a big basketball fan. I rarely watch during the regular season. However, the NBA finals are fantastic every time I watch and this year was no exception – loved it! Energetic, passionate, and incredibly talented play. Jason Terry was my favorite player in the end. His performance in game six when Nowitzki had a tough night was inspiring.

Congrats Mavs!

Posted in Miscellaneous | Leave a comment

Visiting the Mozilla Community in Indonesia


Bali. Photo by Yofie Setiawan.

I visited Indonesia with fellow Mozilla engineers David Mandelin and David Anderson at the beginning of May. It was a great chance to explore a new place and get to know some of our Mozilla community members.

After the 22-hour journey to Jakarta (New York -> Hong Kong -> Jakarta) I had one day to relax and explore by myself before meeting my co-workers and hosts. Indonesia’s energy and enthusiasm was apparent right from the start. Jakarta proved to be quite the buzzing metropolis, its population frantically engaged in economic and cultural expansion. Despite the pace of modernization, some parts of the city might have existed just the same in any number of past decades. I took a car to Sunda Kelapa in the evening and watched Pinisi being loaded at sunset. Simultaneously beautiful and eery calls to prayer drifted across the water from the many minarets surrounding the harbor.

Event in Malang

Students and community members at the Firefox event in Malang.

I met up with my co-workers and our first Indonesian hosts, Yofie and Andi, the next morning. We headed to the airport for our flight to Surabaya, where the first Firefox event on our agenda was held. Between one and two hundred people attended and I think we met over half of them by the time the evening was over. We really enjoyed talking and taking pictures with community members.

After the event in Surabaya we attended events in Malang, Makassar, and Bali. Each was fantastic and unique, but energy, enthusiasm and kindness were constants. In Malang we had some particularly good technical discussions because the event was at a university. David Mandelin and I also got to play basketball in the university’s gym after the event! David Anderson and I had a great time exploring Makassar together on foot, and the food we ate there was amazing. We had a gourmet Indonesian lunch, complete with banana fritters and fresh fruit for dessert. Bali was somewhat over-developed for tourists, with nothing less than a huge American-style mall, but there is no denying its natural beauty. And the people, like everywhere else in Indonesia, really make the place something special.

Firefox event in Malang

David Mandelin, Yofie Setiawan, David Anderson, Andi Darmawan, Josh Aas

I can’t thank our wonderful hosts Yofie, Andi, RaRa, Mamie, and Viking, enough. We learned so much from them and we couldn’t have asked for better company throughout our visit. It’s great to know that we have such an organized and vibrant community in Indonesia because it is clear that the country is only going to become more and more influential in the world.

(Lots more pictures on my Flickr page!)

Posted in Mozilla | 3 Comments

Wells Fargo Rewards is a Sleazy Program

Here is how the rewards program works. First my banker bothers me about enrolling until I do. Undoubtedly he got commission for that which ultimately I paid for in higher fees. Then I get charged $19.00 per year for the rewards program enrollment. Over time I built up points by spending money on my credit and debit cards. Then I have to go to a totally different website from the normal WellsFargo.com site, WellsFargoRewards.com, register a new account there, then log in and select cash rewards. This is hundreds of dollars that they’ve been sitting on for years.

They took my money up front and again every year automatically, just for this program. Then they make it non-automatic and non-obvious for me to reap the benefits of what I paid for. The whole process involves wasting my time (talking to my banker about it, signing up and redeeming points) just to get cash I’m entitled to. I don’t want to play this stupid, sleazy game. If they are sitting on all of this money for me why can’t they just lower my fees and interest rates with it? Because they’re hoping I’m too forgetful and/or inept to redeem, but they’ll never forget to charge me the fee!

Due to things like this (there’s more but I won’t bore you with it) and their part in the financial/mortgage crisis over the past few years I’m done doing business with Wells Fargo.

Posted in Uncategorized | 10 Comments

Firefox 4 for Mac OS X: Under the Hood

Looking under the hood of a carFirefox 4 will be an exciting release and we’ve made a number of improvements specific to Mac OS X. Users will benefit primarily in terms of speed, stability, and security. We’ve come a long way since Firefox 3 for Mac OS X.

First, we’ve switched from a ppc/i386 universal binary to an i386/x86_64 universal binary. The default architecture on Mac OS X 10.6 will be x86_64. The default architecture on Mac OS X 10.5 will be i386. You will be able to run in i386 mode on Mac OS X 10.6 if you choose to do so but you will not be able to run in x86_64 mode on Mac OS X 10.5. Performance is the primary motivation for the move to x86_64. These numbers comparing Firefox 4b7 i386 to Firefox 4b7 x86_64 on Mac OS X 10.6.4 give some idea of the kinds of gains we’re seeing from the architecture change alone:

  • Cold startup: x86_64 is ~26% faster
  • Warm startup: x86_64 is ~5% faster
  • MS Psychadelic Browsing Demo: x86_64 is ~540% faster
  • MS Speed Reading Demo: x86_64 is ~35% faster

A big part of this is the availability of more CPU registers, but there are a number of other factors in play such as the ABI and the caching of system libraries. If most of your other applications are x86_64, and this is the case on most Mac OS X 10.6 systems, then x86_64 system libraries are more likely to be cache-hot. Your mileage may vary depending on your exact system configuration.

We dropped ATSUI for text rendering and moved to Harfbuzz and Core Text. The move to Harfbuzz for many operations was done for security reasons and in order to expose advanced typographic features. Font handling is difficult in general, and even more so in web browsers. We’d prefer to depend on open source font code if possible because we can patch it quickly and participate in improving it.

We enabled OpenGL accelerated layer composition. This stage in the rendering pipeline is where we composite independently-rendered regions of a web page for your screen. Accelerating it helps us most when resizing images and video. GPUs are much better at performing those sorts of transformations than CPUs. For more information, see this post from Joe Drew. We hope to accelerate the rest of our rendering pipeline on Mac OS X soon.

We also added support for the Cocoa NPAPI event model and the Core Animation NPAPI drawing model. These specifications are a big step forward for browser plugins on Mac OS X. They are easier to develop for, properly documented, and designed with IPC in mind. As of version 10.1, Adobe’s Flash plugin supports Cocoa NPAPI. Which leads me to the next improvement…

Firefox 4 will run many plugins out-of-process on Mac OS X. All of your plugins will be out-of-process if you’re running the x86_64 version of Firefox. If you’re running the i386 version of Firefox we’ll run some popular plugins, such as Flash 10.1+, out-of-process but others will run in-process for performance and user experience reasons. And yes – the x86_64 version of Firefox will be able to use i386 plugins.

Those are the major Mac OS X-specific changes but we’ve also made a large number of minor improvements for Mac OS X. Combined with all of the great cross-platform improvements like our new JavaScript engine, WebM, and better HTML5 support, Firefox 4 should take the web to a whole new level for our users.

Posted in Mozilla, Programming | 35 Comments

Favorite Restaurants (in the U.S.)

It’ll be interesting to look back on this in a year or two and see how much I still agree with.

  1. La Belle Vie (510 Groveland Avenue, Minneapolis, MN)
  2. Grocery (288 Smith Street, Brooklyn, NY)
  3. Burma Superstar (309 Clement Street, San Francisco, CA)
  4. Hard Times Café (1821 Riverside Avenue, Minneapolis, MN)
  5. Saad’s Halal Restaurant (4500 Walnut Street, Philadelphia, PA)
  6. Tartine Bakery (600 Guerrero Street, San Francisco, CA)
  7. Amber Indian (2290 West El Camino Real, Mountain View, CA‎)
  8. Jasmine Deli (2532 Nicollet Avenue, Minneapolis, MN‎)
  9. Frankie’s 457 (457 Court Street, Brooklyn, NY)
  10. Boqueria (53 West 19th Street, New York, NY)

Worth mentioning:

Posted in Food | 2 Comments

Goodbye iPhone, Hello Nexus One

I got an iPhone 3G two years ago and I loved it. It was fast, easy to use, and beautiful. Since then I’ve fallen out of love and every time it takes the phone 5-10 seconds to show a new text message I have to resist the urge to smash it. I was never very pleased with my high cell phone bill or the accompanying contract, or the fact that it’ll probably be a long time before I’m allowed to run Firefox on the phone.

I thought long and hard about getting an iPhone 4 because it would solve some major problems (speed, screen quality) and despite the other issues the user experience is just amazing. However, I decided to go with a solution that also solves the other problems. In total I wanted better phone performance, a nicer screen, better network service, the ability to run Firefox, I don’t want a contract, and I want to pay significantly less for service than I do now. I chose to go with a Nexus One from Google on T-Mobile and so far I’m pretty happy.

The T-Mobile plan I chose has no contract, 1000 any time minutes, unlimited text messaging, and unlimited internet for $70. The AT&T plan I had has a 2-year contract, 900 any time minutes, 1500 text messages, and unlimited internet for $105. T-Mobile reportedly has great service in New York City, so this is an easy choice.

The Nexus One is sold unlocked, it’s fast, thin, has a beautiful screen, gets Android updates quickly, and runs the only two third party apps I really care about – MLB At Bat and Firefox. My only two issues are that the Android OS is generally less polished than iPhone’s iOS and MLB At Bat for Android is junk compared to the iPhone edition.

Posted in Miscellaneous, Mozilla | 4 Comments