Skip to content

Taylor’s Automatic Refresher

I’ll admit it: When Carl’s Jr. introduced their Six-Dollar Hamburger and advertised it as a better tasting and affordable substitute for expensive restaurant hamburgers, I was at a loss. Restaurants sold hamburgers? Junk food seemed too plebeian for my concept of a restaurant. Of course, my concept has since changed after discovering “upper-class fast food” restaurants like Red Robin.

Yesterday, my concept of restaurant fare was further refined after visiting Taylor’s Automatic Refresher. I’d read about the restaurant in the New York Times and various blogs, and I had been looking for an opportunity to try it out. My cousin and her boyfriend were visiting San Francisco, so I thought Taylor’s Automatic Refresher would be a great place to grab lunch.

Ahi Tuna Burger

The restaurant was a simply styled, modern-industrial, diner. Large, red, neon letters spelled out “EAT” above the counter. Customers placed orders as they entered — the line moved quickly — and were handed electronic devices that buzzed when their order was ready for pickup. Recycle bins and tin trash bins were located at the corners of the restaurant, reinforcing the industrial aesthetic.

I ordered the Ahi Burger. The menu described it as “fresh ahi tuna seared rare with ginger wasabi mayo and asian slaw on a toasted egg bun,” and it was as delicious as it sounds. However, I was disappointed by the size of the burger considering its price: $14. Of course, that could just be because I was dying for more.

My cousin ordered the Chinese Chicken Salad, which she said was good, but had too many of those “fried wonton thingys.” Her boyfriend ordered the Texas Burger, which he described simply as “damn good.” It looked rather tasty to me too, and I’d call it a somewhat more refined version of Carl’s Jr.’s Six-Dollar Guacamole Bacon Cheeseburger.

All in all, I was pleased with the experience. The food was good, and I liked the atmosphere. My only gripe is that it was rather expensive; as a college student, I would have been just as pleased eating one of Carl’s Jr.’s more affordable Six-Dollar hamburgers. Nevertheless, the unique fusion of ahi tuna and a hamburger is not something I’m going to forget for a long time.

Battle Scars

I led a small group up to Indian Rock on Saturday morning. It was the first outdoor rock climbing experience for almost everyone in the group, and we had a great time. We started out with some simple slab climbs and worked our way up to some more difficult traverses. We’re planning on going back every Saturday; we meet at 9:30 AM at Sather Gate. If you’re interested in coming, please leave a comment.

DSC00530

Unfortunately, I took a fall practicing some parkour near Sather Gate that morning, so my ankle is currently busted, and I’m on crutches. Thankfully, I didn’t break any bones, so I should be back to my climbing self soon enough (hopefully by Saturday).

Ankle Splint

Lastly, my prayers go out to someone who was injured in a car accident on Friday. May she recover fully!

Where is Stephen?

I’ve decided that it’s time for me to move on to hobbies that don’t involve computers, namely rock climbing. Maybe I’ll post some more in the future…

I’ve halted all programming projects. Sorry. If you use any of the code that I’ve released, don’t expect any updates.

If you want to rock climb in the Berkeley area, give me a holler.

A Modest Proposal

Is it OK to make a deal with God? What happens if either side doesn’t uphold their end of the bargain?

Random Tidbits

(10:38:13) Me: i have to learn harvard asm
(10:38:16) Me: *sigh*
(10:38:35) Friend: lol
(10:38:48) Friend: they gonna have like ivy league jokes in the asm
(10:38:58) Friend: woudl you like some tea and crumpets sir
(10:38:59) Friend: har har
(10:39:02) Friend: indeed i do
(10:39:11) Friend: have you seen the latest football game with yale
(10:39:22) Friend: i say… we did very well in it
(10:39:26) Friend: yes… very well indeed

Facebook Spider

I’ve written a Perl program to spider Facebook. I was looking for a way to quickly generate statistics about the University of California, Berkeley student population, and I figured that since almost everybody had a Facebook account, I could dump all of Facebook’s information into a database and generate reports from that information. Since this program has proven useful, I’ve decided to release it to the general public.

How It Works

If you’re unfamiliar with the term spider, I recommend that you read the Wikipedia page on web spiders for a thorough discussion of how a spider works. In a nutshell, my program goes to a Facebook user’s profile, scans their friends list for other profiles, visits each of their profiles, scanning their friends list, and so on. Along the way, my program also scans a user’s profile for information, parses it, and inserts it into a SQL database.

Features

I’m only aware of one other Facebook spider: a Perl script written by Michael Kelly. However, Michael’s script only collects information about user’s friends. My script captures all the information available in a user’s profile (except for the ‘About Me’ field). Furthermore, my script provides the following enhancements:

  • Multi-threaded support. Each user’s profile is processed in its own thread. The total number of threads can be set using a command-line parameter, and the program uses semaphores to enforce the maximum number of threads.
  • SQL database storage. My script stores user information in a SQL database ordered by Facebook UID. I’ve used relatively simple queries throughout the script, so any SQL database should be supported (i.e., MySQL and PostgreSQL should work). However, I’ve chosen SQLite3 as the default database. If you wish to use another database type, install the appropriate DBD driver and modify the database handle line to use that driver.
  • Easy data processing. Since all data is stored in a SQL database, it should be relatively easy to write programs that query the database for information.
  • Sleep between threads. It’s possible to provide a value, in seconds, that my script should wait before spawning a new thread. This should prevent the script from overloading the Facebook servers.

Quick Start

Assuming you have all the necessary Perl modules and sqlite3 installed:

  1. Create a SQLite3 database:
    $ sqlite3 database.db ‘CREATE TABLE userdata ( uid integer, name, friends, school, status, sex, concentration, residence, hometown, highschool, screenname, mobile, website, lookingfor, interestedin, relationshipstatus, politicalviews, interests, clubsjobs, favoritemusic, favoritemovies, favoritebooks );’
  2. Create a facebook.conf:
    $ cp facebook.conf.sample facebook.conf
    $ vim facebook.conf
  3. Start the script:
    $ ./facebook.pl -t 2 -s 10 -f database.db [SOME FACEBOOK UID]

I Want It!

The script has been removed at Facebook’s request.

Notes

I haven’t tested the script lately, but it should still work. If it doesn’t, post a comment, and I’ll release an update.

Since my script parses the HTML returned from Facebook, if Facebook makes any changes to their profile layouts, I’ll have to make major modifications to the code.

Future

I’m in the process of designing an interface to Facebook that resembles Google Maps. Users will be able to interactively visualize their friend network, and clicking a user’s “node” should bring up their Facebook profile in a new window. More details will be forthcoming.

Financial Advice

The following is the log of an online conversation I had with one of my friends when I asked her about the advantages of various IRA accounts:

(22:44:47) Me: hey business major!
(22:44:58) Me: why would someone want a roth ira instead of a regular ira?
(22:46:23) Me: actually, why traditional instead of roth?
(03:13:00) Friend: oh
(03:13:11) Friend: cuz r0th, the total contribution = 4000
(03:13:23) Friend: total;, = roth + traditio
(03:13:33) Friend: whereas thet raditional, the limit itself is 4000
(03:13:42) Friend: roths are tax exe,pt
(03:14:37) Friend: ur contirbutions are after-ax,and the money y get from it arent taxed
(03:14:58) Friend: rtarditional iras, its before tax contribution , and the money u get from the trad ira is taxed
(03:15:06) Friend: sorrry im reALLLLLY cdrunk
(03:15:14) Friend: here is someone who is less drunk ahtn i am
(03:15:57) Friend: um, nm he said what i sed

Financial advice from drunk business majors…

Uncomfortably Numb

My fifth semester at UC Berkeley is drawing to an end. I have finals on Wednesday, Thursday, Friday, and Monday — two materials science courses and one each of chemistry and chemical engineering.

I’ve spent the past few days alternating between sleep and studying, but once Wednesday hits, I’m going to be able to count the hours of sleep I get until the end of this madness using my fingers.

Let’s see how this goes…

UPDATE: It seems my performance on finals has a positive derivative. I’m hoping it holds out until Monday.

Flame Bait

Whoa. This is definitely going to stir up a lot of responses. Jill at the World Magazine Blog writes:

Nationally syndicated radio show host Dennis Prager poses five questions that non-Muslims want answered in the wake of Muslim riots in France and the bombings in Jordan. Here are two of the five: Why are none of the Palestinian terrorists Christian? (“They are just as nationalistic and just as occupied as Muslim Palestinians.”) Why are so many atrocities committed and threatened by Muslims in the name of Islam? (The recent beheading of two young girls in Indonesia, the slaughter of hundreds of school children in Russia last year, the deaths of countless Christians in Sudan, and 9-11 just touch the surface of the terror caused by Muslim extremists in recent years). “Hundreds of millions of non-Muslims want honest answers to these questions, even if the only answer you offer is ‘Yes, we have real problems in Islam.’ Such an acknowledgement is infinitely better—for you and for the world—than dismissing us as anti-Muslim. We await your response.”

Links for 2005-11-09

On abortion, a nuanced stand | csmonitor.com
In 3 of 4 cases, Supreme Court nominee Alito voted on the side of abortion rights.
(tags: politics reference)

Wow! I Didn’t Know You Could Do That In vi
a nice summary of useful vi commands
(tags: reference unix vi)

Famous Sites and Buildings on Google Maps
(tags: cool google travel)