Redis-only migration
The best critique and praise for Heroku is that it's opinionated: only deploy with Git, only use PostgreSQL. On the whole this is a good thing, because it simplifies the choices that developers have to make. Fewer choices means more... Read MoreOctober 25, 2011 03:20 PM
Hosting for Tweet Marker
Today was day 7 of the first app to ship with Tweet Marker support. Overall, things have been working great. I thought I'd write a little bit about my hosting experience so far. First, the good news: the service is... Read MoreAugust 15, 2011 10:06 PM
Wii Transfer 2.7.2
And now for something completely different. I released a bug fix update to Wii Transfer last night, the first in over a year. It doesn't have some of the bigger things I'd like to finish for the app, but it... Read MoreAugust 14, 2011 05:29 PM
Push-based sync
Guy English writes about iCloud and the magic glue (Push Notifications' persistent connection) that makes it work: "Each of these new features tickle the persistent 'push' connection and trigger some action on the device. The short-form state may be transmitted... Read MoreJuly 1, 2011 11:13 AM
FAQ for Tweet Marker
I mentioned in my first post about Tweet Marker that there were some decisions still to be made about the service. I don't know everything yet, but I do want to answer some common questions I'm hearing from users and... Read MoreJune 13, 2011 02:59 PM
Tweet Marker
So you want to sync the last-read tweet with all your different Twitter apps on iPhone, iPad, and Mac? Yeah, me too. While I hope to build a version of Tweet Library for other platforms, what I'd also love is... Read MoreJune 3, 2011 08:53 AM
Appsterdam
A great name to go along with a big idea from Mike Lee: "If you've been to a conference, you've probably thought, as I have, how nice it would be if everyday life could be like that—being surrounded by peers,... Read MoreApril 21, 2011 03:54 PM
Twitter's platform at 5 years
Twitter recommended upgrading to OAuth "for optimal security" and so developers don't need to "worry about the user changing their password". While I dislike APIs that break old clients, I saw mostly the good things about OAuth, framed around letting... Read MoreMarch 19, 2011 08:23 AM
Overusing the term REST
Jens Alfke, commenting on the new Rdio API: "Maybe we should just give up on the term REST, since it's become so diluted as to mean nothing more than 'HTTP API that's not as hard to use as SOAP'?" Sounds... Read MoreMarch 17, 2011 10:52 PM
Laughing at the guidelines
Apple's announcement yesterday of a Mac App Store is big news. As soon as the event was over, journalists reached out to developers to get feedback on what it means for existing Mac shops. Reading the variety of responses is... Read MoreOctober 22, 2010 01:42 PM
Deprecation mentality
Today, Twitter starts shutting down basic authentication for the Twitter API. One of my favorite Twitter clients, Birdfeed, will be allowed fewer and fewer requests until finally at the end of the month it stops working. Likewise for Birdhouse and... Read MoreAugust 16, 2010 03:50 PM
New iPad hackers
My first reaction when I started reading The Kids Are All Right on Daring Fireball was: Well, I had to disagree with a John Gruber essay eventually, might as well be this one. There was no developer program fee when... Read MoreApril 16, 2010 04:13 PM
iPad ships next week
With the iPad set to ship in just a week and a half, I've been quietly reshuffling some of my projects around it. I've written critically of the iPhone and App Store a couple times, such as how the iPhone... Read MoreMarch 23, 2010 07:48 AM
I don't use Core Data either
Brent writes a fair post on when Core Data is great and when it's a performance bottleneck: "I optimized as much as I could, spent tons of time in Shark, went all multi-threaded with Core Data, switched away from my... Read MoreFebruary 27, 2010 11:49 AM
ParseKit (and Clipstart search)
The first couple versions of Clipstart had a very basic search feature. You could enter keywords and it would search filenames, tags, and video titles. You could also enter special terms such as tags=christmas or imported=today, but you couldn't mix... Read MoreFebruary 8, 2010 01:05 AM
Wii Transfer 2.7
I finally took the time to give Wii Transfer some much-needed attention, releasing version 2.7 of the application tonight. It's got the usual bug fixes and some small visual improvements, but the most important change is better video streaming. The... Read MoreJanuary 19, 2010 09:43 PM
VoodooPad help update
Somehow it's been a couple years since I wrote about using VoodooPad for authoring help. I always meant to update the post with more information, and I still receive occasional follow-up emails from developers who are trying this for themselves.... Read MoreSeptember 7, 2009 06:44 PM
Image Capture API
In episode 21 of Core Intuition, I called the Image Capture API "quirky". What did I mean by that? A few things. Refcon. This should be familiar to anyone who has built Mac OS 9 or Carbon apps. I've certainly... Read MoreSeptember 6, 2009 10:50 PM
Clipstart 1.2 ships soooon
Now that I'm done giving away a free iPhone, I can move on to the next phase of my marketing plan: release new and better software! Crazy, huh? Clipstart 1.2 is nearly ready and I'm very proud of this release.... Read MoreAugust 22, 2009 01:27 PM
Clipstart file actions
Clipstart 1.1 is out, with support for the iPhone 3GS, YouTube, and more. I'm really happy with the response I've received so far. The 3GS is such a convenient device for video that even people who weren't taking lots of... Read MoreJuly 3, 2009 12:31 AM
Clipstart for iPhone?
You know it has been a good conference when you come back inspired, with ideas and tools to build new things. No surprise that WWDC was like that for me, as it is pretty much every year. Even before the... Read MoreJune 29, 2009 01:01 PM
Open source regression
On a previous episode of Core Intuition, number 14, Daniel and I talked about open source. One LGPL tool I use in Wii Transfer is called FFmpeg, a very popular video conversion project that forms the base of many video... Read MoreMarch 23, 2009 03:11 PM
Better software, less support
A few months ago Ars carried a story about Apple canceling a call center in Colorado. This part stuck out to me: "Somewhat surprisingly, the iPhone 2.1 update was also named as one of the reasons for the cancellation. The... Read MoreFebruary 7, 2009 07:26 AM
JSCocoa in Acorn
I like this KVC mini-rant from Gus Mueller's post about writing Acorn plug-ins in JavaScript: "While KVC hacks can be awesomely cool and amazing and generally useful... it is possible to go a bit too far. So don't use that... Read MoreJanuary 11, 2009 04:54 PM
Will paginate for food
As I mentioned in my Rails rant last week, I have an unhealthy distrust for Rails plug-ins and monkey-patching gems. In addition to often breaking when you upgrade Rails, too many high-level abstractions can make it difficult to understand and... Read MoreJanuary 9, 2009 02:19 PM
Mike Ash on private APIs
Mike Ash has been rocking with his weekly Friday Q&As. From the latest about using private APIs: "Remember that the cost is not just to you, but to your users. If you're really unlucky the break will be so bad... Read MoreJanuary 3, 2009 09:01 AM
Rails 4 years later
Blog archives don't lie. It's been nearly 4 years since I first blogged about Ruby on Rails. (Three years and 10 months, but I'm not patient enough to wait until February to post this.) Here's a portion of what I... Read MoreJanuary 2, 2009 05:45 PM
Tracking sales referrers
The primary way to track marketing and word-of-mouth about your product is to look at web site referrers. Easy. Just install Mint and you're done. But not all referrers are created equal. A prominent link on Digg might lead to... Read MoreSeptember 15, 2008 07:12 PM
FLV metadata performance
One of worst-kept secrets of Wii Transfer is that the movie playback is not as good as what you might see on an Apple TV, Xbox 360, or PS3. I do my best to improve the quality with every release,... Read MoreAugust 11, 2008 12:57 AM
Wii friend codes from Twitter
As most Nintendo Wii owners know by now, Mario Kart for Wii shipped last week. I put together yet another friend code database to track and share codes, but this one is unique because it builds on Twitter. Just follow... Read MoreMay 4, 2008 10:32 PM
Fancy-pants productivity
There are a few things in this post by Ryan Norbauer (via 37signals) that bother me. One is this idea that "code is meant to be read by humans first and computers only secondarily". I understand what he is getting... Read MoreMarch 14, 2008 12:38 PM
iPhone SDK and NDAs
Craig Hockenberry half-joked on Twitter about the iPhone SDK non-disclosure agreement and it reminded me of one of my personal annoyances in the development community: we tend to take NDAs very seriously. I've always been impressed by how Scott Stevenson... Read MoreMarch 13, 2008 12:21 AM
Don't give up, shipping takes time
I love the passion in this comment from Wil Shipley: "This app is all I'm working on. My entire reputation, my 25 years in the industry, my company is all riding on this release. I'm not going to just suddenly... Read MoreFebruary 9, 2008 03:44 PM
Rails on shared hosts
David Heinemeier Hansson writes in detail on the problems with Rails in shared hosts: "Most Rails contributors are not big users of shared hosting and they tend to work on problems or enhancements that'll benefit their own usage of the... Read MoreJanuary 10, 2008 08:52 AM
Ironcoder (now with prizes!)
A new Ironcoder launches today with a longer hacking period and a nice iPod touch as the prize. I've come close to participating in the past and just haven't had time. Although I don't expect that to change this week,... Read MoreNovember 9, 2007 07:38 AM
Wii Transfer 2.5.2 and Leopard
Happy Halloween! Wii Transfer 2.5.2 is now available. This is probably one of the most difficult bug fix releases I've done. Full changes are in the release notes, but the biggest stuff includes fixed Leopard UI glitches and a new... Read MoreOctober 31, 2007 10:54 PM
Wii Transfer 2.5
This morning I finally rolled out version 2.5 of Wii Transfer, the most significant release of the product yet. It probably deserved a 3.0 label slapped on it, but I like how all the 2.x releases revolve around the sharing... Read MoreSeptember 20, 2007 11:41 PM
Rails and Mac dev communities
Damon Clinkscales has a write-up of the Charity Workshop that took place before the Lone Star Ruby Conference in Austin a couple weekends ago. I skipped the conference and attended these tutorials instead, enjoying some great talks by Marcel Molina,... Read MoreSeptember 17, 2007 01:11 PM
Ta-da List export to TaskPaper
I've been using Ta-da List for the last couple of years for all my to-do lists. I have about 100 lists and love the speed of adding new items and some of the subtle smarts it applies to sorting recent... Read MoreAugust 4, 2007 01:38 AM
Foreign sales market
From time to time on the MacSB list people ask about the value of localization and what percentage of sales come from foreign customers. Since day 1 of Wii Transfer I've always been surprised at how many sales are from... Read MoreAugust 3, 2007 09:28 AM
Wii Transfer 2.3
I finally released Wii Transfer 2.3 late last night. This is the version I demoed in my interview with The Unofficial Apple Weblog. The most notable changes are AAC support, an improved music player interface, and better use of the... Read MoreJune 20, 2007 08:05 AM
New software releases (plus screencast)
Today is a good day to release software. MarsEdit gets a nice update and NetNewsWire 3.0 ships. At VitalSource we also just released Bookshelf 4.6 today, which lays the foundation for media-rich textbooks and adds a highlighter rating UI for... Read MoreJune 5, 2007 08:20 PM
The /Applications social network
Brent Simmons, from a TUAW interview: "One of the things I love about being a Mac developer is getting to meet the folks who make the apps I use. In a way, my /Applications folder is also my social network.... Read MoreJune 5, 2007 01:59 PM
Learning from Rails design
Since version 2.0, Wii Transfer has had a built-in web server for serving music and photos to the Nintendo Wii. The server was written in Cocoa and the code became very unwieldy as I continued to add features. Dozens of... Read MoreJune 4, 2007 12:46 AM
WiiTransfer.com
After I blogged last month about the very small number of domain names I own, I got some good feedback from people I respect. They basically said: "You're an idiot. Domain names are cheap." And the more I thought about... Read MoreMarch 22, 2007 09:52 PM
First 75 days of Wii Transfer
In the tradition of other independent Mac developers such as Mike Zornek, Daniel Jalkut, and Gus Mueller, I'm going to share some sales information from the first 75 days of Wii Transfer. The following chart shows daily sales (in units... Read MoreFebruary 27, 2007 09:40 PM
Reflecting on a beta release and server testing
Wii Transfer 2.2 is taking longer to get ready than I had planned, so I've decided to post a public beta while the last pieces are polished up. You can grab it from the news section of the Riverfold site... Read MoreFebruary 9, 2007 11:23 PM
Bookshelf note sharing
I've blogged a lot about my side project Riverfold lately, but it's time to show my "real" job some love as well. Internally at VitalSource last week we rolled over to beta status for the upcoming Bookshelf 4.5, and I'm... Read MoreJanuary 28, 2007 10:25 PM
Wii Transfer takes over internet
Okay, not really. But this has been a crazy and surprising week for my "little" application, Wii Transfer. Putting 8 hours each day into VitalSource (I have a post coming about that tomorrow, by the way) and then juggling home... Read MoreJanuary 28, 2007 12:40 AM
Wii Transfer 2.0 featured on Apple Downloads
I finished Wii Transfer 2.0 late Thursday night. This version is an interesting milestone for the application because it goes beyond just using the SD card to shuttle data back and forth between your Mac and Wii. There is a... Read MoreJanuary 20, 2007 01:12 AM
Falling in love with VoodooPad again
A few years ago I used VoodooPad Lite extensively. Every note, to-do list, and feature description went into it. At some point I migrated away from VoodooPad to a combination of text files and Ta-da list, perhaps fearing I would... Read MoreJanuary 6, 2007 12:21 AM
Holiday hacking on Wii Transfer 2.0
I got sick (the flu?) shortly after Christmas, but nevertheless managed to sneak in some coding on Wii Transfer 2.0, which I hope to release this weekend. The big new feature for 2.0 is music and picture sharing. Essentially, there... Read MoreJanuary 3, 2007 12:02 AM
MacSanta and Wii Transfer 1.5
Wii Transfer is now listed as part of the MacSanta promotion. Only $7 through Christmas day! I also released Wii Transfer 1.5 late last night. The major change in this version is support for automatically backing up saved game data... Read MoreDecember 20, 2006 07:40 PM
Re-introducing Wii Transfer
I guess it's a sign I'm not blogging very often when I don't even announce my own product! A big thanks to Dan Benjamin and John Gruber for linking up Wii Transfer, a little application I quietly rolled out last... Read MoreDecember 14, 2006 08:45 PM
I didn't go to C4
C4 was last weekend and looked like a lot of fun. Unfortunately I was about travelled-out this year with RailsConf and WWDC. Perhaps next time. Daniel Jalkut was the first I saw with nice write-up. He provides a speed-through of... Read MoreOctober 25, 2006 09:47 PM
Reflecting on WWDC 2006
WWDC 2006 was great. (Yes, it was two weeks ago. Finally making time to blog again.) I won't dwell on the announcements too much, but I generally agree with some that there was nothing earth-shattering. We have only seen a... Read MoreAugust 25, 2006 01:00 AM
FlipBook
Last year I started some extra work to help bring DigiCel FlipBook to the Mac. FlipBook is software for traditional, hand-drawn animators, and it is actually somewhat unique in the industry. Whereas Flash and Toon Boom are vector-based, FlipBook started... Read MoreAugust 3, 2006 12:35 AM
RubyCocoa
I write Mac software, but over the last year I've increasingly been building Ruby on Rails web apps as well. Today I finally took a look at RubyCocoa. I wanted to whip up a quick Cocoa app that would involve... Read MoreJuly 16, 2006 10:08 PM
Time for thinking
Gillian Carson talks about vacation time on the Amigo blog: "A holiday is a time for thinking, for relaxing your mind, for drinking beer and laughing and... for having ideas. The last time we went on holiday we came up... Read MoreJuly 4, 2006 01:05 PM
Hello Saturday
I had a busy week coding. Long days and longer nights. Deadlines are fast approaching. The last few weeks of a project are always the most stressful, but also the most rewarding as all the pieces start to fall into... Read MoreMay 27, 2006 02:53 PM
Austin on Rails
About 20 people met at the Frog Design building downtown a few months ago for the first Austin Ruby on Rails user group meeting, and by the third meeting that number had doubled. Founders Damon, Robert Rasmussen, and Rob... Read MoreFebruary 22, 2006 09:45 PM
Campfire Beep
I’ve been living in Campfire quite a bit over the last few days. It’s a great app, well designed and very fast. But it suffers from a problem that iChat and other AIM clients do not have: it’s easy to... Read MoreFebruary 18, 2006 12:35 PM
CGContextSelectFont is slow
We’ve heard it countless times: Before you spend any time optimizing, profile your code. And yet we always think we know where the performance problems are without testing. Earlier this year I started some extra work to help a company... Read MoreDecember 14, 2005 05:41 PM
Set unreasonable deadlines
Damon and I have been discussing how time constraints can encourage creativity. I hinted at this in my first NaNoWriMo post, and it’s something I’ve been trying on other projects at work. Of course the concept is all through what... Read MoreDecember 11, 2005 01:12 PM
Perfection
I don’t consider myself a perfectionist. In fact, I can often be downright lazy. I write sloppy code sometimes. I am hasty with my artwork instead of thorough. I am always impatient to see the end result, regardless of what... Read MoreAugust 20, 2005 10:48 PM
VitalSource Store
One of our big projects at work just launched: the VitalSource Store. James Duncan Davidson and Mike Clark have posted about what it was like working on this project. My favorite posts include this one about the Rails development sandbox,... Read MoreAugust 19, 2005 08:53 AM
Collaboration and Goodbyes
The .Mac SDK session here at WWDC was interesting. First, it was forward-looking, not something we've seen much this year with the exception of Intel. Also, it wasn't covered under NDA (hence this blog post). The 2.0 kit will be... Read MoreJune 9, 2005 09:50 AM
Tabs are a hack
I don’t like Safari-style tabs. Sure, I use them — and in NetNewsWire if you want to use the built-in web browser, there is no choice) — but I’ve always thought that there should be better ways to manage windows,... Read MoreMay 1, 2005 08:04 PM
SXSW: Wrap-up
Leaving SXSW I think I noticed two major themes at the conference this year: Software development. Jason Fried’s talk on small teams set the tone here. Get close to your users, start building the real thing early, and keep it... Read MoreMarch 17, 2005 01:56 AM
The Ruby end-run
It was fun while it lasted, but PHP’s time may have come and gone. The benefits of PHP in the early days (extremely fast prototyping, embedded in HTML) outweighed the problems (haphazard function naming, poor object-oriented features, and difficulty designing... Read MoreFebruary 25, 2005 08:25 PM
Delicious coding
Apparently I wasn’t the only person to purchase Delicious Library in the first week of release. They’ve had $250,000 in sales so far. For an app that no one really needs, this is pretty incredible. And no office space... Read MoreJanuary 18, 2005 08:44 PM
Tiger Tech Talk
I didn't know exactly what to expect when I signed up for Apple's Tiger Tech Talk. It looked like a sort of mini WWDC event, and since the first stop on their tour was here in Austin, it was a... Read MoreNovember 11, 2004 10:43 PM
Flowdelic and Frontier
Mason Hale of frog design started a weblog last week, and already he's got some great posts and discussion. Mason and I worked together around 1995. You know, back when the Internet was still fun. At the time, Mason had... Read MoreMay 18, 2004 01:06 PM
Productive week
I think I do some of my best work when we first start development on a project. No one is paying particular attention, the user interface is flexible, and bugs are inevitable and okay. As we get closer to shipping... Read MoreJanuary 16, 2004 03:51 PM
Control drag hidden constant
I'm blogging this so it will be indexed by the great search engine in the sky, and perhaps save some Mac programmer out there a little time. The new control drag-and-drop Carbon Events are only partially documented. In addition to... Read MoreDecember 30, 2003 10:15 AM
Why Cocoa text drags are broken
Apple still hasn't fixed text drag-and-drop in Cocoa. In addition to going against how drag-and-drop has worked in previous versions of Mac OS for a decade, I believe it is based on a flawed concept. Has it seen any usability... Read MoreDecember 22, 2003 08:32 PM
Mac files, volumes
While looking for something else the other day, I ran across this Apple technote. I think it illustrates quite nicely the kind of sacrifices that were made to put Mac OS on top of unix. In the end the rewards... Read MoreNovember 24, 2003 02:23 PM
Hackers and Painters
Paul Graham's Hackers and Painters essay surprised me. I put off reading it for months, because I assumed I knew what it was about -- that programmers are artists, that their work today is just as important an art form... Read MoreOctober 7, 2003 03:11 PM
Doubting Cocoa
TidBITS, iMovie 3 Tips and Gotchas: "Although the program introduced a number of welcome new features, performance was sluggish, the program crashed for no reason, and exporting data was problematic. iMovie 3 had become the new Word 6 (for those... Read MoreOctober 1, 2003 11:04 AM
Carbon and Cocoa sitting in a tree
John Gruber counters anti-Carbon arguments from Andrew Stone, again: "Apple's original plan more or less boiled down to replacing the Mac OS with NextStep; Mac developers had the crazy idea that it should be replaced with a new version of... Read MoreAugust 5, 2003 02:14 PM
WWDC coding frenzy
It's appropriate that I'm in a coding frenzy for the next few weeks. WWDC e-ticket in hand, and at work we go GM on a major version of our software just a week before the conference. This will be my... Read MoreMay 28, 2003 10:08 AM
Implementing TrackBack
After the panel Tuesday I commented to Mena that TrackBack is still sort of Movable Type-only and maybe needs simplifying if it is to gain acceptance in other tools. Turns out I was wrong, in part. TrackBack is a pretty... Read MoreMarch 12, 2003 11:41 PM
Parenthesis s
It wasn't long after I started programming that I developed a pet peeve with other programmers who don't feel the user is worth the time to put an extra "if" statement into their code. Here's an example: "There were 5... Read MoreJanuary 30, 2003 12:34 AM
Leaky Abstractions
Joel on Software, "The Law of Leaky Abstractions": "If a large UFO on its way to Area 51 crashes on the highway in Nevada, rendering it impassable, all the actors that went that way are rerouted via Arizona and Hollywood... Read MoreNovember 12, 2002 09:28 AM
Cocoa/Carbon opinions from Applelust
Brent Simmons responds point by point to the misinformation in the Applelust.com article, "Going Native: The Attraction of the Cocoa Interface." Although the article is a mess, there are a couple of valid observations in it: "Still, at this point... Read MoreOctober 16, 2002 11:08 AM
