Sick for the past 4 days

Winter is here, and with it, I got my first cold of the season. The last time I had an issue was a sore-throat going around about 3 months ago. Before that, it was October 2006.

Between the hallucinations and the sinus headaches, it seems hard that I would forget what this feels like. Yet, when I’m not sick, I go about my business without a single thought of what it feels like to be sick. I just forget over time. It is only when I’m sick that I go back and think about the times when others have told me they are sick. At this one point, I always have that empathy… something like “wow, that must have been bad.”

Health problems are no fun. May your downtime be short.

Posted in General | Comments Off on Sick for the past 4 days

Handy Ruby on Rails Tip

When using a few different Unix environments for development, the location of the socket for MySQL tends to vary quite a bit. Having to keep your database config different from the tree is a pain.

Luckily, there is a neat, but not widely known fix for this issue. It turns out that the YAML files used for Rails configuration are actually passed through the ERB. Now I can use this and it works without modification:

development: adapter: mysql database: development username: root password: host: localhost socket: <%= [‘/opt/local/var/run/mysql5/mysqld.sock’, # darwinports ‘/opt/local/var/run/mysqld/mysqld.sock’, # darwinports, again ‘/var/run/mysqld/mysqld.sock’, # ubuntu/debian ‘/tmp/mysql.sock’].select { |f| File.exist? f }.first %>

yes, I know this isn’t mindblowing, but seriously… in the real world of development… isn’t it nice to get rid of the nits that pile up and frustrate everyone.

Posted in General | 1 Comment

Plaxo Pulse Reminds Me of Google

Plaxo Pulse

I used to work at Plaxo. The team there is pretty damn good. When they released the Pulse product, I really really liked it. My immediate thoughts were that they were really taking a fresh new direction. They were doing new things and finally incorporating some of the good ideas that other companies had proven to work.

Around that same time, it was also propagated on the blogosphere that Plaxo was the “open Facebook”. I had attended the Facebook ‘F8’ event, and the two seemed far apart at that point. Also, the initial Pulse release wasn’t where it is at now. So the thought of Plaxo as the ‘open facebook’, didn’t really sink in.

Now, time has passed. Plaxo was the first to launch Open Social platform. Facebook has launched beacon. Lots of facebook apps have launched. In fact, Facebook apps have essentially just become synonymous with ‘casual gaming’. No other apps have really popped up that are useful in the social context. For a lot of people, this is a bit of a let down. Also, both companies are starting to experience the same issues around privacy. So, the question now is: how are they different?

This is where it gets interesting. Their content and UI are very similar. The big difference is where do the users and apps live. In Facebook, they all live on Facebook. With Plaxo, the users and apps live on the entire internet. For example, on Facebook you have to use the Facebook photos app to share photos. If you are on Plaxo, you can use Flickr. This is a huge difference and one that will probably hurt Facebook in the long term. History shows that walled gardens always fail on the internet. There is a tremendous fear (and rightly so), that Facebook is locking in people on their platform. Lets dig a tiny bit deeper.

In the Plaxo model there is a better fit from a business perspective. Partnering is a lot less lopsided in favor of Facebook. From a consumer perspective, they are on par: the user has more choices, and the UI is a lot less constrained. This is where the Google analogy comes in. Their strategy is similar. Google does not try to own the content, they just help organize it. Plaxo is doing a fantastic job of organizing some new content… the open social graph.

So now I get it, and I’m really impressed at the magnitude of the potential. I have never seen the company move this fas and be so much in the loop. They are in an excellent position!

Posted in General | Comments Off on Plaxo Pulse Reminds Me of Google

Qmail is finally open source

It will be interesting to see what happens, but I bet it will be too little too late in the game.

Here is the announcement.

Posted in General | Comments Off on Qmail is finally open source

Dwight Elvey and the Canon Cat

Dwight Elvey CanonCat

Originally uploaded by drudru

This is Dwight Elvey. I met him at the 10th Vintage Computer Festival over at the computer history museum. I was particularly interested in his exhibit since he had a working Canon Cat. Dwight was nice enough to chat with me and answer some of the interesting questions about the Cat.

Why is the Cat interesting?

Well, the Canon cat was designed by a company called Information Appliances. This was started and headed up by Jeff Raskin. Jeff created the Macintosh project at Apple. He was a smart and opinionated designer who was definitely ahead of his time. Somehow, he got a deal with Canon to build the ‘Cat’. It was meant to be a simple computer that focused on word processing. It wasn’t uncommon, back then, to buy a typewriter for college that was essentially a daisy wheel printer with a super tiny 1×16 character LCD to work with. The Cat would be a higher-end competitor. Of course, since this was a real system, it had a few other items thrown in. For example, it also had a database, spreadsheet, modem, and supporting terminal emulator built in. It also had an innovative search system with keyboard support. Jeff also believed that the system shouldn’t have files… each disk was a document. I like these features. I believe that this was probably what Jeff was thinking of when he was going to create the Mac.

Anyways, I first heard about Information Appliances via A+ magazine when they had a little product announcement blurb. It had a picture of Woz and Jeff holding a tiny Apple ][ expansion card that had ‘amazing software’. Anything that had Woz approval was important to keep an eye on. I found out later that this software was the pre-cursor of the Canon Cat but made for the Apple ][ and accessible via a hot-key. Not too long after that, the Canon Cat was announced and it had some press for a month. Since I was in Miami, though, I never got to see it in real-life.

The interesting thing about the Cat is my recent rediscovery of the machine from a software engineering perspective. The entire system was written in Forth. Dwight showed me how you could actually execute Forth right inside the word processor. While we chatted, a few things came out about the Cat that are particularly interesting.

  • The entire system was in Forth, so they prototyped on the Apple ][ (hence the product), and then effortlessly ported it to the 68k based Canon Cat.
  • They had an extensive unit-test suite for all Forth words in the system. Dwight mentioned that the developers initially hated this, but then came to really appreciate it.
  • The system shipped on time and on budget with just a small team of devlopers and NO BUGS…. in ROM. Did I mention that it was in ROM?

That last point is huge. How many software engineers can pull that off consistently, without serious burn out.

My takeaways are:

  • The Canon should be looked at for some of the unique ideas it had that still may not be prevalent
  • Test driven development is the only way to create software. Period.
  • Forth is an underrated technology. If I were doing an embedded system project, I would seriously consider using Forth.
Posted in General | 6 Comments

Saw two good movies recently

Sicko

First, I saw Sicko. A very good movie. Mr. Moore tends to target his messages to the people in my generation fairly well. Either that or we are easy targets. I think it is because we are probably the last generation who experienced people in our family that believe ‘this is the greatest country on earth’. Yes, the US has its shining moments, but not everything we do is smart. These ‘patriots’ would smartly denounce anything done by any other country – “we’re the best”. We, on the other hand, thought they were a little weird, but between them and television, we believed what we heard. Mikey from the Life commercials died from pop-rocks. Be careful, you could get razor blades in your apples at Halloween. Gay people spread aids. Ozzy Osbourne bit the head off of a bat at a Kiss concert. blah. blah. blah. You get the picture. Toss in a few good doses of ‘communism’ is evil and ‘socialism’ is a failure, and a population essentially becomes shut off to new ideas. All of these half-truths propagate and refine the ‘conventional wisdom’ of a generation.

Do I believe in communism? No, I think it’s a flawed system. Do I believe in socialism? Yes and No. I think there are flaws in socialism, but I think we should try to figure this out. I think the decision of capitalism or socialism should be made on a case by case basis. I think they can co-exist. As Moore points out in the movie, socialism is already here in the U.S.. He didn’t point out this example, but if you look at our road and highway system. We all share these systems pretty much for free. Anyways, this post is getting too long…

Moore uses Sicko (and all of his other movies) to make a great case for the other side. I always feel ashamed and a little wiser after his movies. I wonder what he’ll think of America when he notices that things don’t change.

So as Sicko ends, they play a song while rolling the credits. I didn’t know who sang this song, because I had never heard it before. Why do I mention that? Because when I started my next movie…

Harold and Maude

Harold and Maude, it started with the same song. Weird coincidence, huh.

This was another really good movie. It was one that I had heard of off and on throughout the years and finally got a chance to see. I won’t describe the plot, but if you like provocative, well-done movies, this is definitely a must see. This definitely captures the chill of the early 70’s really well. Yet, the movie is timeless.

Also, if you like Wes Anderson movies, you should watch this just to see where he got a lot of his technique.

One more thing, the song in common to both movies was done by Cat Stevens.

Yet another thing. To see another movie from this period that was powerful (and not sci-fi), check out Network.

Posted in General | Comments Off on Saw two good movies recently

Nice quote for the times…

“You don’t know who’s swimming naked until the tide goes out.”

— Warren Buffet

Posted in General | Comments Off on Nice quote for the times…

Ruby Singleton Classes

Ruby singleton classes, or anonymous classes are just a poor man’s prototypes.

Posted in General | Comments Off on Ruby Singleton Classes