How to set up dnsmasq on Snow Leopard for local wildcard domains
We had a working solution to use wildcard domains on the localhost. Using a proxy.pac file and a tiny rack application we could pass any domain into the development environment. It was working great, until we tried switching to Rails3 beta. Whenever we specified a non-standard local domain, the Rails router would strip the query string off the URL. (Continued…)
Create a TextMate application
To create an application where TextMate opens a directory as a project. Create a simple Apple Script with one line: (Continued…)
Rules by Jim Lehrer of PBS The NewsHour
I found an article discussing Jim Lehrer’s — as in The Newshour with Jim Lehrer — rules for journalism. The PBS Column, Lehrer’s Rules discusses the voracity of these rules in today’s pile of mass media. It’s good reading, but the best part are the rules themselves. Every journalist should study these rules. (Continued…)
Eliminate subdomains and CNAMEs in Rails development
Having two methods of identifying the same edition on a CMS — subdomains and CNAMEs — is painful. Yet many websites have advocated this approach. Every request to the application requires multiple checks on the domain to correctly identify the edition. I believe this process developed from the difficulties of dealing with subdomains and domains in the development environment. Recently we found the answer that simplifies the whole system. (Continued…)
Rack CustomDomain converts CNAME hosts to subdomains
When we created our CMS we used tried-and-true subdomains to separate editions. SubdomainFu handled the logic of separating editions and it was easy — until we added custom domains. The standard method is to point — via CNAME — the custom domain (www.davesouth.org) to the subdomain (davesouth.example.com). Unfortunately the rails app can’t use SubdomainFu routing. (Continued…)
Subdomains and local development using proxy.pac
The NeolithicCMS we are writing separates editions by using subdomains. It works great in production. A single entry of *.neotrib.com in the DNS points all subdomains to the same server. But for local development we have to manually edit the /etc/hosts file for each subdomain. After adding a few editions it becomes a royal pain. Short of installing a DNS server, we needed a better solution. (Continued…)
Trying to connect Blog + Facebook + Twitter
I’ve had my blog linked to Facebook where it would import my blog posts as Notes. I’m not a big fan of this. For one thing, it can’t show all the photographs that I attach to blog posts — not that I’ve been posting a lot, but still. I’d rather have it post my blog post as a link with the title and abstract text and then link to the actual blog post. (Continued…)
Finally found the best iPhone note taking application
The Notes app on the iPhone has a lot to be desired. My contacts, calendar and email seamlessly sync through the Internet via MobileMe. But not my notes. That requires a cable and manually syncing with iTunes. Oh, and forget about easy syncing between two computers because it won’t happen. (Continued…)
What size to I set my browser for web design?
The short answer — 1000×600. The long answer. I recently reinstalled my computer and lost the settings in Web Developer for the carefully crafted window resizing I use when developing websites. I had to go back and retrace my research. So this post is about writing down the result so I won’t forget again. (Continued…)
Speed up “Find in Project” in TextMate
TextMate’s very useful “Find in Project” is super slow for any decent Ruby on Rails application. The problem turns out to be very simple. TextMate searches the entire project tree including the tmp and log directories. It takes a lot of time to dig through those directories — especially the log directory which can quickly become many megabytes in size. Not only that, rarely do we want “Find in Project” to return results from these directories. The solution is simple. (Continued…)
Tips for reporting “bored” meetings
Reporting a meeting has to be one of the most boring assignments a reporter will ever have. It’s ironic because it’s also one of the most important jobs, too. City councils, school boards, state legislatures, congress all make decisions that affect our lives and spend our — the people’s — money. They make these decisions in meetings wrapped by agendas, filled with tedious procedure and painted in sermons of officialese. The reporter’s job is to distill these official riddles into plain English that everyone can understand. (Continued…)
Paperclip upgrade breaks Amazon S3 upload and how to fix it
My content management system uses Thoughbot’s Paperclip gem to attach photographs to the stories. Photos are uploaded first to the local server. Then the server will later upload the photographs to Amazon S3. The process is transparent and silent — too silent it turned out. (Continued…)
My Cancer
Dr. Michael Callister finished a quick — yet surprisingly painful — exam, he pushed back the wheeled stool, peered up at me over his glasses and said, “Dave, you have testicular cancer.” My worst fear was realized. It was only the Saturday before when I noticed a difference — one side was harder than the other. Now it was Thursday, September 3 and my life has changed. (Continued…)
The voices in my head speak English
I have two pet peeves about voicemail systems. Scratch that. I have about a hundred pet peeves but I just want to point out two. The first is why am I asked to press 1 for English and 2 for Spanish? (Continued…)
The absolute failure of banner advertising
Banner advertising is a complete failure. It is a paradox of diminishing returns that traps a web publisher into treading water — never making progress and always struggling to stay afloat. What’s worse is how web publishers will flail around with bad idea after bad idea to get ahead. Yet these insane advertisements do more harm than good, cause readers to leave and sink the publisher even more. It’s time to end the madness and recognize that the banner advertising model itself is broken. (Continued…)
Manually change Top Sites in Safari 4
In the Safari 4 beta, the only way to add websites to the Top Sites page was to visit the website a bunch of times until it showed up or you edited a configuration file by hand. It was frustrating because I’d rather specify exactly what pages to show on Top Sites. I felt there had to be an easier way. With the final release of Safari 4, there is. Any website can be manually added to Top Sites. It’s quick and easy. (Continued…)
Make URL friendly filenames in paperclip attachments
We use Thoughtbot’s Paperclip gem to attach images and other media to our Ruby on Rails models. When we save documents to a model object, we wanted to make sure the filenames were URL friendly — lowercase with only letters, numbers or hyphens. Paperclip’s processing chain makes it easy to insert this behavior before saving the file or running it through the thumbnail re-sizer. (Continued…)
Our cover is blown
For several years, Loy and I have worked under the company name of Apped Design. It was a cover name Loy came up with when we attended the first Mountain West Ruby Conference in 2007. The Neotribune was on the back burner and we were working on a couple of Ruby on Rails projects. We decided that it would be easier to go as independent consultants than try to explain a long, convoluted startup story no would be interested in anyway. (Continued…)
Newspapers don't get it, online users already pay for content
The newspaper industry is trying to build pay walls around their online content. The idea is that readers need to pay for content. This is a big problem because newspaper executives don’t understand how much their readers already pay to be online. In fact, they pay more than any newspaper subscription in history. (Continued…)
Finally, the Neotribune
It started as a lark and grew into a passion. Something that consumed my mind day and night. After years of tinkering and testing we figured out how to do it — how to deliver the news, without the paper. (Continued…)