Nice quote for the times…
“You don’t know who’s swimming naked until the tide goes out.”
– Warren Buffet
“You don’t know who’s swimming naked until the tide goes out.”
– Warren Buffet
This is the company I work for and helped start. It is doing great. If you haven’t seen the news, we made two very significant press releases this week.
The first piece of news is about the funding… we closed $5 million. This will give us plenty of runway over the next few years, but allow us to make some more key hires right now. Speaking of which we’re hiring great engineers. Yes, there are other companies hiring, and they all want great engineers. The difference is that we are still small and we are generating a good, growing revenue stream. Most of the other opportunities out there have already gotten big (google or facebook)… or they don’t have a viable revenue model (we’ll make cash out of those eyballs somehow…). If you want to see where video is headed, check out this post by Tod, our CEO. In a few words “monster growth”.
The second piece of news is about the 1 BILLIONTH AD! This speaks volumes about our system. Our customers are very pleased with the way we have executed the campaigns. As a result, we’ve been getting more repeat business. Let me also say that its not easy to execute these campaigns. There are a lot of variables (technical, business, etc.) that can go wrong. This event is a testament to the quality of the team!
We’re going to have a celebration of these great events really soon, so keep an eye out for the invite in your inbox.
Go BrightRoll!
Ruby singleton classes, or anonymous classes are just a poor man’s prototypes.
Back in the day, Ken Olsen, then CEO of Digital Equipment Corp. (or DEC), handled an interview badly and was quoted with the phrase:
[”There is no reason for any individual to have a computer in his home.” ](http://www.snopes.com/quotes/kenolsen.asp)
What he really mean is described in the Snopes article linked by the quote.
However, Ken was a big proponent of shared computing. He believed that most companies and individuals didn’t have enought “IT Skills” to manager their own computers well. (Backups, failures, etc.) I seem to recall that he even started another small startup company after DEC that was going to market such services to small businesses. But after that quote it was too late. He was branded. I bet he wishes he had a blog back then.
The concept of outsourcing it all is interesting. I remember Steve Jobs making the same claim when he was CEO of NeXT. He raved about how awesome it was to have his NeXTstation at home in Palo Alto with a T1 connection to his office. He raved about how he didn’t have to worry about backups since the IT guys at the office had all of his data on some expensive redundant NFS servers.
Now, we are here in the 2000’s soon to be to the 2010’s. As the tech people look around, they don’t notice too many changes. However, if you look at the user side of the house, more and more people are doing everything completely on the web. The browser is definitely the modern day 3270 (I used to call HTTP/HTML the VT100 of the 90’s, but the 3270 is definitely a better analogy).
If the only application that people use is the browser, it would be pretty safe to say that Ken was right.
It is good to see that some old ideas are still kicking around. I’ve been reading more threads about people trying to recreate Genera, the old Symbolics lisp environment on a modern day cpu. Apparently, and unsurprisingly, the open source community is having a hard time coming up with anything better. The old ideas are still better, and are slowly being rediscovered.
The same will be true for OO. In a recent article, a new kid on the block states: Inheritance is evil and must be destroyed. Ignore the pretty flowers and butterflies on his blog… this is war and this guy is a warrior. Or he is just using the ‘let me shout heresy’ technique to get readers. Either way I read his talk.
Here is my take. Anybody who has done a lot of OO work will learn that they don’t subclass as much when they are building ‘real apps’. There is a reason for that and it is covered in the article. I do think that the author gave a great description, but he misses a lot of the history on this. Javascript, which is prototype based, borrows more from Lisp and Self than Java. In Self and LISP, the concept of a ‘mixin’ is much more prevalent than in other languages. Of course, even in those languages, when people learn OO, the inheritance and subclassing are drilled home very early on.
Anyways, the main point I’m trying to make is this. The ideas are old. In fact, if you look at Microsoft COM, which came from old DEC guys in the late 80’s and was deployed in the mid 90’s… it was completely based on the concept of interfaces and mixins. Unfortunately, they had to make that work in C++, so most of the new programmers will never see these old ideas behind the C++ complexity and hacks.
I remember talking to Steve about this a while ago. He noticed it earlier than I did. It is probably one of the things that led him to the path of prototype languages. It is an interesting topic and I think there is new ground to be broken in understanding them. I don’t necessarily think ‘patterns’ are the right way to describe them. They tend to look like workarounds to limitations in languages more than generic patterns (think Java and C++). What I would like to see is a great description on mixin architectures. What makes them work … or not work? How do you design them?
BTW, why aren’t the old ideas out and copied more often? I think a lot of this has to do with how expensive some of these old systems used to be. If you wanted to use Smalltalk or a Nexstation, you better have a serious budget for machines and software. As a result, only the relative few good devs were justified the cap-ex. So if only a few people had access, and only a few of them were great communicators.. a lot of interesting ideas will sit on old tapes. I also think the open-source community under estimates the cost of copying some of the great old ideas. The net result is that old-ideas have to be rediscovered.
Saw this on Techcrunch, of all places. I sense big changes in the record industry.
(this was written about a month ago, but its time to kick this and other articles out)

Ok, lolcats - I’m late to the game, but I get it and I like them.
I first saw a LOLCAT photo when Twitter was down. I didn’t think the photo was that funny since the service was down and I was seeing a lot of them. Only those who appreciated the LOLCAT could enjoy the subtelty of that cat.

Then I saw this blog post with the author making the statement ‘I can has iphone?’. It was funny. Real funny. What is going on here? What is this I CAN HAS thing?
After a little bit of searching, I finally grokked it. They are mixing the script-kiddie hacker talk (which isn’t funny) with pictures of cats (which isn’t funny) and ending up with something… Funny! Or to the 60’s kids out there… ‘It’s like the beatles… as a group, they are awesome… on their own.. well…’. Or to the 80’s kids out there ‘hey your chocolate got into my peanut-butter’. I like! I guess cats are just the best medium and representation of haxor talk.
What is going on here?
Somebody made a programming language in LOLCAT talk. It’s called lolcode.. Genius!
Somebody has converted an entire episode of Star Trek to …LOLTREK! - highly recommended!
Writeups in the Chronicle and the WSJ!
Origins
Where this come from?. Wikipedia has its take on LOLCATS.This came from I CAN HAS CHEESEBURGER? Here is the ICANHASCHEESEBURGER take on the phenomenon.

My favorite american colloquilism take on him is this: PIMPBURGER
..however, maybe this was pre-internets:


Memes
‘I’m in your base - killing your dudes’ is the most common meme.
Then you have the ‘invisible’ x, y, or z.
Then you have ‘DO NOT WANT’.
MONORAIL CAT!
OH HAI! KTHXGBYE!
… and yes, like all good things on the internets… we need their take on old memes:
‘Its a trap!’
( from icanhascheezburger )

… people are also trying this with Elephants and Walruses (Walrii?)
