.htaccess File Causes 500 Internal Server Error on Network Solutions
How’s that for a search engine friendly title, eh?
This is just a quick note for anyone who has to deal with Network Solutions hosting (for clients or otherwise). Apperantly Network Solutions doesn’t run PHP with Apache’s mod_php, but rather as a CGI application. That means if you try to put PHP configuration directives in a .htaccess file it will cause a 500 Internal Server Error. My helpful reference: Because Network Solutions Sucks.
You have been warned.
Auto-Linking URLs with PHP
A week or so ago I was working on a bug in the auto-linking code for Laconica, the software that powers Indenti.ca. Squashing that particular bug wasn’t too hard, but I wanted to take the functionality a step further (closer to the calibre of Gmail) and it turns out, writing robust auto-linking code is more difficult than it initially seems. So I played with it a little at a time here and there, testing as many edge cases as I could think of. The result is a function that’s more robust than most URL auto-linking code I’ve come across.
I still need to add support of internationalized TLDs and HTML. So, although it only works with plain text for now, I think it’s off to a good start. Check out the demo or download the source.
LongURL Integration For Your Website
I wasn’t sure it could be done, but I’ve done it. I’m happy to say that I’ve made it even easier to use the LongURL web service, specifically on your own site. Today I wrote a jQuery plugin that allows you to add LongURL support to a website in like, I don’t know, 30 seconds?! It really depends on how fast you are, but the point is that it’s really easy.
I noticed that Twitter search lets you expand URLs from some of the most popular shortening services (though, if they used LongURL they could support a whole lot more
). I liked their UI approach; it’s clear, simple, and effective. So I pretty much mimicked their UI for my plugin.
CouchDB View Generation
An alternative technology quickly gaining popularity these days is CouchDB, a document-based database system for semi-structured data. I wasn’t sure what that meant at first, so I read as much as I could about it. The result? I couldn’t wait to use it.
I decided CouchDB would be a good fit for my next project (which I should be releasing sometime this week BTW) and rolled up my sleeves. Because of the amount of data I’m working with, I hit a few snags along the way with regard to CouchDB view performance. Some of the things I learned, although they make sense, were not what I was expecting initially (even after reading all the docs). So for the benefit of others, I thought it’d be a good idea to share my current understanding of the way views work in CouchDB, and share some of the tips & tricks Jan, Chris, and others have given me along the way.
LongURL—Restoring Order to the Universe
It’s been two weeks since I conceptualized LongURL, and a productive two weeks at that! Last Monday I officially launched the service (which provides a handy REST API) with support for a dozen or so shortening services like TinyURL.com. Once I stepped away from the problem for a little while I realized there was a better way to go about solving it. Thankfully the way I designed the service didn’t make it very difficult to swap out that bit of business logic, so this week I rolled-out an update that adds support for all shortening services.
After getting feedback from some helpful beta testers (thanks Marjolein and Børge!) and making a few tweaks I was happy yesterday to release the LongURL Mobile Expander Greasemokey script and Firefox extension which use the LongURL API to expand shortened URLs on any web page. I haven’t had much feedback from others yet, but for me personally, the extension tremendously improves my user experience. Sorry guys, no more rickrolling me!


