Been playing around more with lisp lately, it’s very interesting. Yesterday I wrote a primitive interpreter in about 200 lines of lisp code. An interpreter, by the way, is a program that “interprets” (or executes) the code you write in BASIC or Python or whatever. Every time you write a BASIC program, an interpreter reads it and executes the code line by line.

The interesting thing is that unlike BASIC, I didn’t have an interpreter to execute my interpreter. So I used the interpreter I wrote to interpret itself! This actually works. Conceptually, this is what I did yesterday:

Share this:

Like this:

To those who knew Nick Esteva. . . Here’s a an email I received from him a month ago:

8/10/09

Yo, bitch. We’re leaving for Chile tomorrow. There’s a chance we might move there for a few years. Wanted to have lunch with you, but you don’t check your phone messages!! Hhhhhhhhh. Looook, good luck with your business ventures. You’re an intelligent guy, and you won the ovarian lottery, so there’s no excuse! Hehe. Let’s keep in touch. I’ll be back in 6 weeks for sure, but it will probably be to sell the rest of my shit. Living at home is such a drag, my mom threw away my best porno mag! In Chile, we’ll have our own 3 bedroom apartment in the heart of the city and plenty of people to care for Luci. Well, I hate to get all mushy, but I’m going to miss you and so is Pam. You’ve been a good friend for a lot of years. Take care of yourself and stay positive. Peace!

Turns out he’s not even coming back for the rest of his stuff after all! He’s in Chile permanently now. He and his wife Pam found an apartment in downtown Santiago and they’re going to raise their baby daughter there it seems. His mom is selling his jeep and the rest of his stuff.

Share this:

Like this:

I fear that the whole concept of freedom of speech is becoming functionally dead in America. The following video makes a very good point.

There’s been a lot of public uproar lately about Glenn Beck’s statements against Obama and John Mackey’s statements about Universal Healthcare. Unfortunately, it seems that if a public figure makes a statement about a controversial subject, there is a big risk for boycotting. In most cases, the economic loss is enough to prevent the person from speaking up again. Unfortunately, this creates an environment where people are afraid of saying the “wrong thing”. In my opinion, it doesn’t keep with the spirit of the first amendment.

Freedom of speech goes beyond criticizing the government, it’s more about sampling the opinions from all sides. Unfortunately, most people seem to be true believers of one side of an issue. Freedom of speech is pretty much useless if all it does is reinforce the prevailing viewpoint.

Share this:

Like this:

I wrote earlier about a Bach fugue that I thought was clever (basically, it overplayed the same melody on top of itself). Here’s another one where Bach once again plays the fugue over itself, but also in reverse and/or inverted. Many of Bach’s masterpieces employed techniques like this. Here:

Also, check out Godel, Escher, Bach , it’s a fascinating book. A modern day classic, in fact. The book draws parallels between many of Bach’s techniques and those used by MC Escher, Godel, and software developers in general (recursion).

Share this:

Like this:

I am currently reading Structure and Interpretation of Computer Programs, a book so influential in computer science realms that it has been largely unchanged since it’s publication in 1984. Anyway, Gerald Jay Sussman, one of the authors, has a good comment on why computer “science” has more to do with sorcery than it does with actual science. Here:

A computational process is indeed much like a sorcerer’s idea of a spirit. It cannot be seen or touched. It is not composed of matter at all. However, it is very real. It can perform intellectual work. It can answer questions. It can affect the world by disbursing money at a bank or by controlling a robot arm in a factory. The programs we use to conjure processes are like a sorcerer’s spells. They are carefully composed from symbolic expressions in arcane and esoteric programming languages that prescribe the tasks we want our processes to perform.

Share this:

Like this:

You know what makes Sherlock Holmes so genius? He knows what to pay attention to and what not to pay attenion to. Explanation:

There’s a murder and a guy lies dead on the ground. His dog is there, crying. Most people would pay attention to the dead guy and the crying dog. What Sherlock Holmes would pay attention to is the fact that the dog was silent right BEFORE the murder took place. Ie: the dog didn’t bark at an intruder, he just started crying. It implies that either a) the guy committed suicide and there was no intruder, or b) the guy was killed by someone close to him, someome the dog wouldn’t have considered an intruder (a family member or a close friend).

Most people don’t pay attention to what people DON’T do, it’s a cognitive bias people have.

Like this:

I’m currently in a new hackerspace in Silicon Valley called “Hacker Dojo“. Here:

For good measure, I donated some cases of soft drinks and snapple for the community here. For the readers who don’t know what a hackerspace is, here’s a basic description from Wikipedia:

A hackerspace is a real (as opposed to virtual) place where people with common interests, usually in science and technology, can meet, socialise and collaborate. A hackerspace can be viewed as an open community lab, workbench, machine shop, workshop and/or studio where people of diverse backgrounds can come together to share resources and knowledge to build/make things. Hackspaces provide the infrastructure needed for these activities: rooms, food and drinks, power, servers and networking with internet-connectivity, audio equipment, video projectors, game consoles and various tools.

Typical activities in hackspaces include:
– learning and sharing knowledge
– presentations and lectures
– social activities including games and parties
– work on individual or team projects

When I arrived there Saturday, the lady at the front desk was kind enough to take me on a tour. The building is about 4700 square feet, which is huge for a hackerspace, and it even has two stories. There is a large room in the back for larger projects, parties, and barcamps. They plan on putting a billiards table and some arcade-style video game cabinets in the back as well. Hopefully, they’ll be MAME-cabinets so we can play a 1000 different video games in the same cabinet.

Most of the hacking activity seems to be happen in the front of the building. I’d say there are about 7 people here, including me, so there’s plenty of space. I am currently sitting at a large table which gives me room to spread out all my stuff, which is great because normally I’m used to working at these teeny-tiny tables at starbucks. There are also some real, cushioned, sit-down office chairs in here, unlike those uncomfortable library-style wooden chairs at starbucks. Air conditioning is present in the building which makes it all the more refreshing (it’s hot outside).

The great thing about this place is the people that you can meet here. Most of the people here are bright, young startup guys. It’s close to Stanford, so there’s a lot of that crowd here (or, at least, it seems that way). You can exchange tips with other programmers and even pitch in with their project. Since everyone here is basically a hacker, you tend to have more serendipitous encounters if you work here than if you were to work at home or at a coffee shop.

Anyway, I recommend you check this place out if you ‘re in the san francisco area. Suggested donation for the use of the dojo is $10 a day. If you really want to help the hacker community, though, you can become a full member for $100/mo.