There’s a new Italian restaurant downtown Palo Alto. They’ve been open for dinner for the last few month, but just started opening for lunch last week. The food is really good, and because it’s new it’s not yet crowded during lunch. The meat lasagne with bechamel is easily as good as Mike’s Cafe in Menlo Park, which is saying A LOT. And they have an excellent espresso. I think I might just stop by for the coffee on the days when I don’t eat there. They have a placeholder website up (cause it’s Palo Alto, of course), but the restaurant is up and going. Here’s a map. It’s on Bryant right between University and Hamilton (530 Bryant St.), very convenient.
Databases almost always start to suck if you’re trying to build a scalable system. I like relational databases. Databases are great when you’re putting together an application that needs to be used by hundreds or thousands of people. However, once it starts to get to Internet scale, lots of applications need to move to something different. Take a look at the Livejournal backend presentation if you’re curious what I’m talking about. Once you get to systems like that maximum distribution of the service is really what you want to end up with. And I mean distribution of ALL resources. That includes stuff like network interfaces and memory busses. As in, if every request is really completely independent then you’re better off with two single processor machines than you are with one dual processor machine. Dual processor systems still tend to share a memory bus, they share a network interface (especially in the world of x86 based Linux systems). Sometimes they even share cache lines. All of that means contention where there doesn’t need to be any. Dual processor systems make sense where the individual stages of a single requests allow for decomposition into two associated tasks that benefit from being able to pass information from one stage to another via local services. But if what you’re doing is throwing compute cycles at a problem that’s been architected for maximum distribution, your best bet is lots of small systems rather than a few large ones.
We went out to Defcon last weekend too. Presentations were fantastic, people were great. Yes, Vegas was hot. No, I didn’t die. Yes, there are real hackers there. No, I can’t put you in touch with them. Besides a ton of amusing info, like spoofing a root DNS server while executing an intentially blunt attack for IDS to find you and start autoshunning the name system (teehehehehe) to information about physical locks like spool pins and what a dual ball locking padlock is and why you should care. There was a great presentation about penetration testing the backbone that mentioned the horrid horrid mistakes that Cisco is making. If you have anything to do with security and/or networking equipment I highly recommend paying attention to what Cisco is doing and never EVER doing anything of the sort. It’s stupid. I’m sure all those companies calling me looking for help creating Linux based backbone networking equiptment are just drooling over the huge hole that Cisco has left for them to drive through.
The last Mobile Monday kicked some ass! Thanks to the presenters, fantastic stuff. However I would like to point out that Russ’s posts are mistaken. The topic for October is Mobile Search (NOT September, as he posted). We haven’t decided on a topic for Sept yet, so mail me if you have ideas. I’ve alredy gotten a few (thanks John!), but don’t be bashful if you have something you want to talk about. Email me, or join the discussion group and propose what you want to talk about.
I’m pretty sure there’s something about Suse and Yast that I’m supposed to like. Maybe once I get to know it more I will like it. But I have a 64 bit desktop system I’m using now, running Suse Enterprise 9.2, and I have absolutely no idea where to look for packages that don’t show up when I search in the Yast tool. Fortunately it’s a nice beefy system, so I was able to compile Firefox and Thunderbird and a bunch of other tools when I wasn’t able to find packaged versions. But I’ve run into a bunch of annoying incompatabilities. Take Spellbound for example. I love Spellbound, I can’t spell at all. I use ‘a’ where I should use ‘e’, I love to use ‘z’ where it’s completely inappropriate, and ‘i’ comes before ‘e’ about 50% of the time depending on my mood. But I can’t get Spellbound to work with my local compile of Firefox. Why? Ummm… I have no idea. Every time I install it everything seems to go fine. But when I restart it tells me it can’t load the extension, I need to reinstall. Is it cause the core of FF is compiled for x86_64 and the spellcheck libs it installs are for 32 bit? I replaced the libs and xpi from the packaged spelling library with the versions from my Thunderbird compile (which does spell checking fine, W00T!), but that certainly didn’t fix it at all. Running firefox from the command line and looking for errors didn’t help at all either, nothing there that gave me any hints. So I’m kinda sad. But mostly I feel sorry for you folks, who have to now deal with reading something rife with spelling errors.
I haven’t been posting very often cause I’ve been so busy running around working on a bunch of interesting projects. It’s not cause I’m tired of blogging or feel like I have nothing to say or any of those kinds of reasons. I’ve just been completely whomped with stuff to do. I expected to have some time between jobs to do a little catchup, but that hasn’t happened. So I’m gonna post a buncha stuff as little snippets, stuff I’ve had sitting here waiting to go out.
I’m starting a new job with a startup company on Thursday. I would be starting it today, but I have a bunch of errands to run, a dentists appointment, and I’m giving a presentation this evening at the ACM that I still need to do some prep for. My four days of unemployment (I do get to count weekend days, right?) yeilded a whole ton of offers. I’m just amazed at everything that’s going on in the valley right now! There are tons of fantastic ideas, lots of great teams, and everyone is full of infectious energy. I wish I could jump on more than one opportunity, but alas, MikeR 1.0 does not support fork(). I’ve logged a trouble ticket, but the issue isn’t moving along at all.
One of the things that Seni talks about is the difference between “talkers” and “doers”. Russ and Seni have been talking about the idea for a long time, but it’s relatively new to me and it’s crept into a bunch of conversations recently. The original context of the conversation was around starting up a business. There are people who float around to all the entrepreneurial events year after year and talk about businesses, but never quite get around to actually starting one. That’s just the most superficial case however. It’s something of an infectious idea actually, figuring out the different styles of behavior. At first I classified talker as something like a bullshit artist. I probably missed the point completely however. Talkers are also analysts, experts, and inventors. It’s not that talkers are useless, they just approach the unknown differently. It’s something like the difference between extroverts and introverts. Talkers have a focus on discussion for discovery and doers have a focus on experimentation. Talkers without doers run the risk of just happily standing around yammering all day long. Doers without talkers run the risk of wasting tons of time experimenting with things they could have simply asked about (and possibly blowing stuff up in the process).
Today was my last day over at Feedster. It’s been a great experience working there. It’s had ups and downs, but that always happens in a startup when you’re trying to do spectacular things. Mostly there have been ups, and I’ve learned a fantastic amount. Particularly from having worked with Rafer and Redlitz. They’ve done an amazing job getting the company to the stage that it’s at now. But the stage now is growth, and I’m really a formation stage kind of person. They have customers calling them wanting to do business and they just need the systems in place in order to be able to fulfill on that business. So I’m stepping aside to make room for Tony to take over the operation and work his brand of magic on it.
I reinstalled Linux on one of my systems at home. The fileserver is a permanent install Fedora, but not really usable as a desktop system. So I reclaimed the Windows machine that I was using for Symbian and Palm development and installed Gentoo. OS X is a great work system, I like it a lot more than I expected to. But it is the system to use when I don’t want to think about how to administer my desktop. I tried out the Ubuntu live CD but for some reason it had a bunch of issues with the hardware. So I stuck with what I knew would work (the system was Gentoo before I Windocized it). Now of course the problem is Symbian and Palm development. There’s prc-tools under Linux for Palm, but that’s really a languishing older toolset not capable of dealing easily with issues like PNO or updated features or APIs. At least it has an emulator for 68k systems. Palm claims they have working versions of the current tools on both Linux and OS X, but apparently us folks outside of Palm just ain’t cool enough to get to play with them.
subscribe via RSS