My name is Ryan Heath and Formed Function is my web design and development business. I do my best to produce great work every day, and I love to write down my thoughts, explorations, and ideas as I go. That, plus a few other coding-and-design-related tidbits, is what you'll find here on this blog.

2932625113

Maps in Golf Trac

So far Golf Trac has a little over 15,000 US golf courses. I’m thrilled to have that many courses in the system, but the thing about golf courses (unlike, say, email addresses) is that there can be duplicate titles. For example, take this set of search results for the keyword “stonewall”:

As you can see there are more than one. I knew this would be a problem from the beginning. So, every golf course in Golf Trac has associated geocodes. This means that the system can tell you where that golf course is located, and even further, show you on a map! See the city/state link to the right of each result? Here’s what happens when you click on one:

Now you can easily determine which courses you play by not only their title, but also by location. And as a bonus, since each course already has a stored location, wouldn’t it be cool to see a map of all of the courses you play? I thought so, too. Here’s mine for example:

Hopefully these maps make it much easier to find courses in the future, as well as give you a reason to golf outside of your own state—gotta fill up that map! Enjoy!

2595168750

Coming Soon: Golf Trac On iPhone

That’s right, Golf Trac for iPhone is now in active development. I thought it might be fun to outline a few of the features I’m considering for the first version.

Firstly, it will be of no use to you without a Golf Trac account. In fact, here’s the first screen you’ll see:

So, if you don’t plan on signing up for Golf Trac, feel free to stop reading—you’ll just get excited for no reason at all.

It makes sense for a lot of web applications to have a mobile counterpart, and Golf Trac is no different. Here are a few of the things that make up my vision for Golf Trac on the iPhone:

  • Dashboard: this will highlight some of general stats one would care about, like your handicap index, average score, average putts, and maybe FIR/GIR.
  • Stats: this will be an exhaustive breakdown of your game, giving you access to stats you didn’t even know were being recorded.
  • Rounds: this is where things start to get juicy. Here, you’ll be able to record new rounds as you’re playing a round of golf, and when finished, it will be as simple as a “Push to Golf Trac” button. You’ll also be able to get access to the rounds you’ve already posted.
  • Courses: at first, this might seem like an odd section. But! Golf Trac already has over 15,000 courses in the system, and the courses have phone numbers. This means you’ll instantly have a contact list for all of your courses (to be clear, the courses section will only load courses you play), making it a breeze to call and schedule a tee time! This is a problem I’ve been suffering from for years. As a bonus, all of the courses have latitude and longitude values, so it’s possible to view a map of all of the courses you play. We’ll see.
  • Friends: golf by itself is fun, but even more so with friends. This feature would let you view a stream of what your friends are up to, when they played, where they played, what their scores were, and so on.

That should give you some insight into what the mobile Golf Trac might look like. Of course, these things are subject to change, but all of my current sketches are based around these concepts. Follow me on dribbble to get more sneak peeks along the way. Also, feel free to get in touch with me if you have suggestions or ideas.

Oh, and my aggressive launch date is the end of March 2011. Wish me luck!

1305865377

Thoughts On Chargify And The Pricing Mess

Update3: In the end, the folks at Chargify decided to give unlimited free customers across the board, and also added a “Launch” plan. You can read the blog post here.

Update2: Here’s a post by David Hauser: how to break the trust of your customers in just one day. It’s worth a look if you’re at all involved in the recent Chargify issues. Also, I have decided to upgrade to the $39/month plan, but not because of either of the posts linked here. It’s because Chargify is a great product and worth paying for, despite how bitter I am over these recent events. Hopefully I’ve made the right decision.

Update1: Here’s a post on the Chargify blog about their reasons for the price increase.

Warning: this is a long post, but I felt compelled to write down my thoughts. I only expect those directly involved with Chargify to care. I do realize that debating a situation only gets both parties even more engrained in their original perspective, but I’m not trying to debate, just giving my point-of-view.

I’m a Chargify customer, it powers the billing for Golf Trac. Their pricing was a large part of why I initially chose them for my billing solution, but that was prior to this big pricing debacle that came about recently.

When I first got wind of this via the newsletter, I was beside myself. I immediately sent them an email for confirmation that I would be grandfathered in with the old pricing. I was a beta user for about 11 months and already had/have my app in production, so the email was more for reassurance… I thought to myself, “Surely this great service who cares so dearly about their customers wouldn’t hike the prices like this and expect existing customers to pay it, right?!”

Wrong. Much to my surprise, that was exactly the case. And we weren’t dealing with a $10 shift, we were dealing with $100 (and from $0 to $100 at that).

I didn’t want to immediately write a post about this because I was afraid I might wrongly bash an otherwise great company due to a poor decision (albeit, a monumentally poor decision). So I spent the last day or two cooling off, and decided to write down my thoughts on Chargify itself and what I think of this pricing mess.

Note: the decision I’m referring to is their choosing to not grandfather in their existing customers under the original pricing, I don’t necessarily disagree with their pricing update for new customers.

Without question, Chargify is a great product

I can’t argue this, nor do I want to. Chargify itself is an incredible product, and one worth paying money for. They’re solving a big problem for folks like myself. Their UI needs a little work in areas, but their API is rock-solid, at least based on my integration experience thus far. Their customer service is good, although I have waited several days for a response in some cases. But they always respond, and their staff is very helpful.

I’ve not had the pleasure to meet David or Lance in person, but if you talk to people who have, they would instantly tell you that they are great guys. I’m inclined to believe that, they often do seem very genuine in support forums and email. Especially Lance.

Now, onto this pricing mess

Before I say anything, I want to again emphasize that Chargify is a product worth paying for. I’m not, in any way, trying to suggest that’s not the case. And I’m a person who will happily pay for a product that deserves it.

However.

I’m also a person who likes to consider my options and make the best decision for my business. I like getting a deal and buying things on sale just as much as anyone else. With that said, about a year ago, I spent months going through the available billing solutions for my application(s). They all had what seemed to be great APIs, they all promised good service, and they all seemed to have quality people who cared about their customers. But Chargify had something none of the other competitors had (at the time): pricing that worked for a bootstrapping company. Here it was, in all its glory:

Notice the giant heading… “Start Billing for FREE”. Pretty appealing, eh?

The original pricing was like this: the first 49 customers were free, and from 50-500 you would pay $49/month. This was my deciding factor, and it actually made it a no-brainer. So I signed up for the beta and spent the next several months getting my app prepared for launch.

Now, one caveat of this was if you had a Free plan in your app (like a lot of apps do), that still would count against your customer count. So you could get into a situation where you met your first 50 customers limit and would be required to pay the $49/month, even if all 50 customers signed up for the Free plan. In trying to avoid that, I launched my app with three paying plans, all of which had/have 14-day free trials.

And then Chargify announced that they were going to give you an additional 1,000 subscriptions free for non-paying plans. Awesome! This update was the exact reason I added a Free plan to my app! But even more than that, it confirmed that this company really “got it”. They truly did understand the needs of a bootstrapped business. I was sleeping pretty good at night, completely trusting my billing service provider when suddenly, I woke up from my dream.

I got an email newsletter that said there was an update to their pricing. Here’s a screenshot… notice the “Start Billing for FREE” headline is long gone.

You’re seeing that right, it went from $0/month to $100/month, and now they’re no longer supporting any free, non-paying plans (yeah, I really wish I wouldn’t have customers who signed up for that free plan I added after launch).

It wouldn’t be fair to claim that they lured their first 2,500-ish customers in for a year based on false pricing, knowing that they would/could jack up the prices once everyone was tightly integrated and they got enough publicity. I honestly don’t believe that’s the case. But if I were to imagine that situation in my head, it would feel EXACTLY like this.

It’s almost like there’s a change in attitude, as well, at least from David’s perspective. All of a sudden I’m seeing a little more arrogance than I’ve ever seen before. Pulling a quote from David’s Hacker News post…

There will always be a “cheap” or cheaper competitor out there but we are not that one.

Here’s a recent response from @dh saying “Price is not what we compete on”. That seems like a shift from the original philosophy, wherein the pricing competed on every level. They claimed to understand and empathize with bootstrapped businesses, and that they really wanted to help young, small entrepreneurs get off the ground. And they proved that with their great (original) pricing. So, why then, were the original prices the best around? To lure in customers and spread the word? It certainly feels like it, regardless of actual intent. At any rate, it’s definitely a change. And to cap it off, another quote from @dh himself:

Love when competitors are willing to take customers that want “cheap” solutions, makes my life better. Keep only the best customers.

I’m guessing “cheap” means anyone who doesn’t offer 24/7 phone support. While I’m sure that’s expensive, I highly doubt the majority of Chargify’s customers were demanding that feature, and definitely not at the expense of a $100 price increase. I’m guessing phone support will never be the reason anyone on the internet signs up for a web-based service.

And I’m guesssing “best” refers to those who already have an established user base (or have enough funds to drop $100/month minimum), and not to those just starting out with nothing but a product. It feels like the “best” customers no longer refer to the bootstrapped, young entrepreneurs that they once wanted to support. Their passion for them has seemingly and suddenly, evaporated.

Despite my tone or remarks, I do understand that Chargify no longer wants to support the freemium model anymore. I’m sure they’ve had a lot of lessons learned in this past year. That’s fine, and I actually agree with them. They do provide good service and have a good product, I wouldn’t want to give it away for free, either. But that should be moving forward and not by neglecting their existing user base. Especially not after a year full of customers giving praise, recommending Chargify, helping other customers with integration, and so on. Not one single person out of their 2,500-ish beta users signed up under the impression that they would be charged $100/month minimum. Some might be alright with that, but it’s still not what they signed up for. This “pay up or leave” attitude kind of sucks.

But then they made an adjustment. The $39/month plan does indeed help, and I really do appreciate that adjustment. But I still think they should also grandfather in that “first N customers free” deal, because that’s what pulled a lot of us in. Even if it’s 25 instead of 50 (or even 15 instead of 50). It just feels like the right thing to do. But unfortunately, I now have the impression that I’m too small and not in their “best customer” category, so I won’t get my hopes up.

So, what now?

I don’t know. My application is live, fully integrated with Chargify. I even got the new webhook system working over the weekend, and was about to post a tutorial on how to get it setup in case other developers are stuck. It would be a royal pain to migrate away from them at this point, but there’s still an outside chance. It’s hard to trust them now. Who’s to say they won’t raise prices again in another year, maybe in hopes to move from the “best” customers to the “bestest” customers? It’s a scary thought.

Again, I do understand and agree with the pricing increase, and I’m nearly positive that they won’t grandfather in the old prices verbatim, so here’s a deal that I think meets everyone in the middle, and of which I’d be happy to pay for:

  • $25/month
  • Up to 100 (active) customers
  • First [15-25] customers at no charge (even with a 6 month expiration)
  • No 24/7 phone support

I really want to stay on with Chargify, it truly is a great service. But the $39/month plan is still a tad high when considering that could be as little as a single customer. I personally sign up for my own services to make sure the billing is working properly, and I’m sure I’m not alone—it would suck to pay $39/month for yourself!

Hopefully they’re successfully withering out their non-best and non-paying customers, because their new pricing is geared for an entirely different market.

And there you have it, I’ve said my piece. Happy billing, everyone, and the best of luck to all (including you, Chargify).

1255783268

Have Some Fun With Login Screens

Login screens often get overlooked. It’s easy to do, they’re mostly boilerplate after all, and typically seen as a small barrier between the user and what they really want to do. However, I say to embrace login screens, they’re a great place to have a little fun. Vimeo does a wonderful job of this, and so does Apple’s MobileMe.

Golf Trac is a product of my love and passion for the game of golf. And just recently I completely revamped the design of the login screen. I fell victim of the boring login myself. Here’s what it used to look like:

It got the job done, but it was about as drab as it could be. Leaving it like this makes it feel like an extra step or a barrier, blocking the user from getting to his/her account (even though that’s really what it is, we should try and make the experience better). Here’s the updated version:

Needless to say, it’s much improved. Now when a user comes to this screen to access their account, the experience is a little more pleasant. And hopefully this attention to detail reinforces the reasons they signed up in the first place. You can see this live at the Golf Trac login screen.

The moral of the story is this: take a look at the places in your application where you think the experience and/or page itself is boring, and give it a little life. Login screens are a great place to start!