writing a blog because I know how to set one up since 2006
- My Muxtape
Here is my current muxtape:
Update: when I click my link I only see two songs, and they aren’t mine. Hooray for new web apps!
Update2: seems to be working now… kinda wonky, probably growing pains.
What’s yours?
- I listen to this every morning when I get up
First thing I do when I sit down to start hacking: pop this video on.
CSS love the kids. The lyrics are in the About This Video section, pretty stellar.
- Booya: Cameesa.com is live
It is after much sweat, tireless work, and approximately 34,057,981,002 key strokes, that we are ready to launch the signup page for Cameesa.
Tada!
Cameesa.com
We are opening the page up to the public because we’re entering the final QA and testing phase for the app, and are ready to start showing the world what we’ve been up to for the last year.
We are super excited to start meeting with designers and forward thinking people to see what they think of the site and concept.
Also, I gotta give a shout out to the Cameesa Blog, doing big thangs over at blog.cameesa.com
Dang, 2008 is shaping up to be a great year. With the launch of the Local Motors site, and now Cameesa, things are really ramping up. And I am getting married this June!
You were right, Niel Young: it’s better to burn out, than to fade away.
Soo wise, like a miniature Buddha, with hair.
- I are on youtube internets
Here is a quick screencast I did for the Local Motors design submission page. My voice is a little quiet since the video was made during office hours.
- First Trip ever to NYC!
So, I finally made my way to the mack daddy of US cities: New York City. After having been to 15 other countries, I am finally starting to visit places in my own back yard.
I made the trip with my Local Motors comrades, Jay and Tim. We set out EARLY (6:00am) on a Thursday morning to go visit a new startup called Aviary, who does advanced in-browser image editing, among other things. There products were most impressive, and I really liked their office (even though it was adjacent to a cemetery).
After meeting up with the Aviary guys, Jay decided that we should head over to Manhattan so I could get a feel for the city. It was mostly what I expected, similar to my beloved Chicago, but a little dirtier and a little more overpowering.
We entered the city in Midtown, and headed north up to Gino’s. We stowed the car in a garage on a side street and set off on foot for the restaurant. It’s an old Italian joint, with a delicious “segreto” (secret) sauce. Lunch was delish, and Jay, Tim and I had a great discussion about open source design and collaboration.
Post lunch we made our way back to our garage parked car and happily paid the $40 fee for 90 minutes of garage time. (frickin ridic). Then we made our way further north for a drive through Central Park. No surprises there, just less cement than the rest of the city. It made me appreciate the amount of usable nature that exists in Chicago.
That was my brief first encounter with NYC; I am excited to head back and check out the night life a little.
- Twitter is the new Friendster
I see many similarities between the current day Twitter and the 2003 version of Friendster.
- New method of social connections - check
- Wildly popular and rapid growth - check
- Unable to provide acceptable reliability and uptime - check
- Declined buyout offer Friendster - check; Twitter - ???
So, if we believe that history often repeats itself, it would behoove you stop what you are doing right now and create a version of Twitter that:
- Doesn’t try to do the complicated and resource intensive part
- Looks butt ugly
- Has a small initial focus on music and bands
- Has a respectable uptime
Essentially, be what MySpace was to Friendster. A secondmover that offered a technology subset and had a music angle.

There are an incredible amount of Twitter users who are genuinely hooked on the service and becoming fed up with its reliability. But where can they turn? No where. So they just put up with it. That’s the beauty of monopolies.
So, the challenge is to analyze the Twitter service and determine the parts that make scaling it difficult. Take out as many as you can. Make it look butt ugly. Put a music spin on it. Provide rock solid uptime.
Combine parts in mixing bowl, bake at 425 degrees for 2 years, serve piping hot to News Corp.
- Digg to release its own version of duggmirror? (pure speculation)
Yesterday afternoon I noticed a few hits on this blog from “diggstage01.digg.com”. The visitor characteristics make me think it could be a content scraper bot.
There were 4 consecutive hits that happened over 1 minute period. The visitor also had javascript disabled. Both are common charecteristics of a bot. It could very well just be someone browsing with js disabled and refers off, but let’s have some fun and just speculate a little bit.
Why would digg be sending out a bot to my little blog?
My theory is that they are finally going to make their own version of duggmirror.com (now called duggtrends.com), the popular site that maintains backup copies of pages that get dugg and can’t handle the onslaught of traffic. Often when a site crashes, duggmirror will have already made a backup copy of the content, which can be viewed on the duggmirror site.
This would be a great move by digg, since sites succumbing to the digg effect is a big annoyance of the site. duggmirror does a good job right now, but digg is losing eyeballs to duggmirror, when they could be keeping them on their own site.
One downside of digg providing a cached version of crashed sites is that they might anger the owners of the original content, who make money by serving ads on their own site.
Maybe digg could create a service that attempts to ping a heavily dugg site to determine if it is still alive. If it is, link to the original content. If it is down, link to the cached version hosted by digg.
Again, this is pure speculation, but some decent food for thought none the less.
- Regular Expression for validating US Currency
While writing some code for a shopping cart, I found myself with the need to validate a text input field as US currency. Greenbacks. Dolla Dolla bills y'all. $$$
Any of the following inputs from the user should be valid:
1.00 || 0 || 0.01 || .20 || .4
And, all of these should be invalid:
1a.00 || -1.23 || 9.&8 || 0.0h
This could obviously be done on the back end, but come on, this is web 2.0! Javascript to the rescue.
I did a quick search, and found this hilarious script. It just seemed like total overkill; 6.82kb just to check if a text input is valid US currency! There had to be a better/more efficient way.
And then it dawned on me: regular expressions, duh! So here is what I came up with.
var RegExp = /^(\d*)(\.\d{0,2})?$/;
result = someTextInput.match(RegExp);In two lines of code, this accomplishes most of what that huge script does.
It looks for:
- -0 or more digits
- -followed by 0 or 1 instances of a decimal point with 2 or less digits after
I don't care about checking for dollar signs ($) or commas (,) so I don't.
You can throw the two lines of js into a little function and call it on the text input's onKeyUp.
Here is a sample.
Just type and it will tell you the results.
$
- Verizon to start calling and texting advertisements to customers?
I just received this nice letter from Verizon in the mail, outlining some changes that will soon be effective on my account.
Most interesting is the section I highlighted about how Verizon intends to send advertisements in the services that we pay for:
As part of our ongoing effort to ensure the consistent experience for all of our customers, Verizon Wireless has updated its Customer Agreement, a copy of which is enclosed. Depending on how recently you last activated a new line of service, upgraded your device or changed calling plans, the changes in this new Customer Agreement may be minimal. The “Your Privacy” section, however, has been updated to include information regarding Customer Proprietary network Information (CPNI) as well as information about how we may include our own or third-party advertising in the services you’ve purchased from us. These changes are consistent with Verizon Wireless Privacy Principles, which can been found at verizonwireless.com. this new Customer Agreement will be effective at the beginning of your next billing period. For information about our rights to make changes to the agreement, please consult your original customer Agreement, or the enclosed Customer Agreement.
Here is a copy of the actual letter that was sent to me. How long until we start getting “male performance” spam from our phone carrier? I, for one, can’t wait.



