JSON Diff

Posted by Tom on June 30th, 2008 — in JavaScript, Programming, Web

I released a new project yesterday, diff for JSON. It’s very simple, but useful. Simply paste two chunks of JSON you want to diff into the two fields, and click “Compare”:

JSON Diff

It shows the difference highlighted in yellow (changed), green (added), or red (removed).

Mac OS X, Web Sharing / Apache, and Symlinks

Posted by Tom on June 25th, 2008 — in Mac, Web

Mac OS X comes with an Apache installation which is very handy, but by default it’s configured not to follow symlinks. A lot of times I have projects in other directories which I want to share via the web server, but end up getting errors such as the following:

Forbidden

You don’t have permission to access /~tlrobinson/Editor/ […]

Amazon S3 PHP helpers

Posted by Tom on April 18th, 2008 — in AWS, Internet, PHP, Programming, S3

The Amazon documentation for using S3 with PHP refers to an elusive function called “setAuthorizationHeader”. It’s apparently supposed to magically set the correct value for the Authorization header on a Pear HTTP_Request object. As far as I could tell, it didn’t actually exist — but I wanted it, so I wrote it:

Source

<?php

require_once ‘Crypt/HMAC.php’; require_once ‘HTTP/Request.php’;

define("S3URL", ‘http://s3.amazonaws.com’); define("AWSACCESSKEYID", […]

Using user stylesheets to highlight links to PDFs or other media, rel=”nofollow”, etc

Posted by Tom on March 25th, 2008 — in CSS, Web

Browsers allow you to define your own stylesheet that’s applied to every page you visit. For the longest time I’ve wondered why anyone would ever want this feature. I figured it would be useful for people with poor vision or other disabilities and that was about it.

But combined with some neat features of CSS, one […]

280 North, in the news

Posted by Tom on March 24th, 2008 — in 280 North, Startup, Y Combinator

Our new startup company, 280 North, has been covered by a few tech news sites and blogs over the past couple weeks, along with some of our fellow Y Combinator startups:

TechCrunch VentureBeat Don Dodge

Now, I just have to get on Valleywag and I can die happy.

Using command line tools to detect the most frequent words in a file

Posted by Tom on March 18th, 2008 — in Command line, Linux, Programming

Antonio Cangiano wrote a post about “Using Python to detect the most frequent words in a file“. It’s a nice summary of how to do it in Python, but (nearly) the same thing can be accomplished by stringing together a few standard command line tools.

I’m no command line ninja, but I’d like to think I […]

Chipmunk Physics engine running on the iPhone

Posted by Tom on February 21st, 2008 — in Hacks, Programming, iPhone

A couple months ago I hacked together a demo of Chipmunk Physics engine running on the iPhone using the unofficial SDK. It shows the standard Chipmunk demos, but also it reads in accelerometer data using the method described on the Medallia blog.

For the most part it was a fairly simple translation from standard OpenGL to […]

What’s wrong with Yahoo’s OpenID implementation

Posted by Tom on January 30th, 2008 — in Uncategorized

Today Yahoo launched support for OpenID. On the surface this seems great for OpenID. Unfortunately there are a number of problems with it.

For those unfamiliar with OpenID, it is a single sign-on system, which allows users to remember a single username and password for signing in to any site which supports OpenID . There are […]

Readline and rlwrap

Posted by Tom on January 10th, 2008 — in Uncategorized

I came across a neat little tool called rlwrap, which essentially wraps the functionality of readline (line editing, history, etc) for any other command line utility. For example, it works well with my GCCalc hack, which I didn’t bother to integrate readline into, but rlwrap gives you the same thing for free:

rlwrap gccalc

It’s useful with […]

Overriding library functions in Mac OS X, the easy way: DYLD_INSERT_LIBRARIES

Posted by Tom on December 21st, 2007 — in GCC, Internet, Mac, Music, Programming

Back at MacHack 2003 Jonathan Rentzsch talked about how to override functions and inject code in Mac OS X using several neat tricks. He also released a framework called mach_star which has two components: machoverride and machinject. These are great, but overkill for some simple cases.

A much easier way of doing library function overrides is […]


Home Blog 280 North SCEC-VDO Wator World X TOOBS Wikipedia Fun Kegbot EasyButton JavaScript x0xb0x XBMC iPhone