Monthly Archives: July 2015

I think it’s a bust

The movie Draft Day doesn’t really have any business being good, but somehow it is anyway. I don’t even like football that much — who has time for it when there’s basketball? — but I’ve now seen this movie several times and love it. The movie actually gets better instead of worse on multiple viewings.

It also has a number of memorable lines. One of them is this, said by Kevin Costner’s character about the college football star who everyone thinks is the next greatest thing: “I think he’s a bust.” Five simple words that undo all momentum.

And unfortunately that’s still how I feel about Swift. I’m following Brent’s blog posts about learning Swift and I’m trying to come to terms with whether to adopt the language, and I finally got it. I already have a capable quarterback in Objective-C, and I’m not ready to rebuild my roster yet, risking everything on a young language with so much promise but less real-world success.

No matter how much Swift has improved, no matter how much everyone fawns over it, I still can’t shake the feeling that it’s a hype that someone else’s team needs. For me, it won’t end up solving the problems I have when building apps. For me, it’s a bust.

Ordered the board game Small World and it arrived today. Getting started was more complicated than I expected, but we finally got it. Hoping the next play-through goes more smoothly before the kids lose interest, because it seems great.

→ 2015/07/21 10:19 pm

Two weeks notice: podcast revenue

In my first post I framed the situation as pinning my indie hopes on two things: my own apps and client work. But as Daniel points out, I’ve actually lucked into several distinct revenue sources. And one of the most promising continues to be our Core Intuition podcast sponsorships and the companion jobs site.

The podcast got some good news over the weekend as we’re adding another long-term sponsor. We’ve had this company as sponsors in the past, and I’m looking forward to having them back and talking about how I use their products.

Like software, revenue from Core Intuition comes in waves. Sometimes we’ll be booked up for months, other times there will be a drought of sponsors, so we’ll focus on pitching the jobs site instead. Sometimes we’ll get new job listings every day, other times a week will go by with nothing. Since we’re not actively marketing it as if it was a full-time business, we can’t count on any kind of consistency from it.

It’s funny how the podcast worked out, though. We started it just because we thought it would be neat — because we thought we had something to share with the community, back in 2008 when there were very few developer podcasts. We added sponsorships to help justify the time and keep us to a weekly schedule. And now, ironically, the podcast that was about running an indie business will actually help me do just that.

I’m so grateful to listeners new and old who have supported us. I received a bunch of nice “congrats!” emails and mentions on our Slack channels yesterday. We’re approaching 200 episodes now, over 7 years, and I hope we can continue to keep the podcast interesting for some time to come.

Great to see Becky Hammon lead the San Antonio Spurs to a Summer League championship. The last few games have been fun to watch.

→ 2015/07/20 10:42 pm

Retiring App.net support for Sunlit

Sunlit 1.3.1 shipped today. It’s a minor update focused on fixing bugs, but it is also the first version to remove App.net support. Existing users still have access to all the App.net features — the code still exists in the app for now — but the App.net sign-in button and settings have been removed for new users to simplify the requirements and UI.

It was difficult to let go of the App.net-specific features. A significant amount of the codebase was around syncing and collaboration features via App.net. There was also some great location check-in support built on App.net locations and compatibility with Ohai. I had to remove screenshots and prune down the App Store description to account for the removed features.

What’s left is an app that has fewer features but which feels light and simple again. Maybe this should have been our 1.0 version all along.

Two years ago, I wrote about waiting for App.net’s killer app:

“The promise of App.net is bigger than one type of app. App.net isn’t just a blank slate; it’s an amplifier. It’s waiting to power the next new idea and help it grow into something big.”

This vision didn’t pan out. But I’m proud that we gave it a shot and put a lot of effort into the platform even after others had given up on it. Now that we’ve finished this “reset”, of sorts, we’ll move forward to build other features we always wanted in Sunlit.

Two weeks notice: the first weekend

I have some big news to share, so obviously I’m going to write a bunch of blog posts about it. This is the first one.

For a while now I’ve been juggling working on my own projects, with my indie company Riverfold Software, and having a regular job at the education e-book software company VitalSource, where I’ve been for over 14 years. As much as I felt like this balance mostly worked, lately it has become clear that the “nights and weekends” approach to Riverfold just isn’t going to be enough time going forward. Last week I resigned from my job at VitalSource to focus on growing Riverfold and shipping new apps this year, some of the most ambitious products I’ve ever tackled.

I thought it would be fun to do a series of blog posts about the early part of this transition. For the next couple weeks, as I wind down one set of projects and ramp up new ones, I’m going to post here with the slightly-catchy title prefix “Two weeks notice”. It will be me thinking out loud about the transition, kind of in the informal spirit of Brent’s syncing diary, or like a more serialized version of the classic indie posts from Gus Mueller and Paul Kafasis.

But unlike the authors of those posts, I can’t claim to have found success yet. If you take Scotty’s definition from the iDeveloper podcast, in fact, I’m not “indie” at all; I expect some percentage of my time will have to be reserved for client projects to help pay the bills. While I used to find that idea distasteful — why give up a consistent salary if you’re not even going to call the shots? — I’ve come to realize that client work can be pretty interesting. The cycle of starting new projects and shipping them is a good way to learn new APIs and iterate on how to build an app from scratch.

While reading all these 2005-era indie blog posts, I was surprised to rediscover that Daniel Jalkut also mentioned mixing in consulting work:

“Consulting makes an excellent back-up plan. You’ve always got a job if you need it, and your destiny is very much in your own hands.”

Of course he wanted more than that: to build a great company based around his own apps. I’m sure Daniel and I will be talking about this on Core Intuition later this week.

So it is a little in the vein of “leap and the net will appear” that I’m moving on from a stable job, where I worked with great developers and friends, to something new that is a lot less certain. I thought that would make for a stressful week, but so far, everything seems okay.

There’s paperwork to do and code to write. There’s health insurance to figure out. But there are also some things that have already been wrapped up. My projects at work are in a good place, hopefully not needing constant maintenance. We just refinanced our house, so that’s a monthly savings, and something that I’m told is difficult without a “real” job.

Friday night I started catching up on some late business taxes (whoops). Saturday I finished editing the podcast (which we recorded over a week ago). The rest of the weekend I tried to relax with family (but I worked anyway). It’s Monday now and there’s a busy week ahead. Let’s see how this goes.

Really enjoying the NBA Summer League games, especially the Austin Spurs d-league players on San Antonio’s team. They go to the semifinals on a buzzer beater.

→ 2015/07/18 5:01 pm

Embrace cross-posting

When App.net was first taking off, many microbloggers struggled with how to decide where to post their short-form writing. Should they post some topics to Twitter and others to App.net? Should they cross-post everything to both services? At the time, there was an informal consensus that cross-posting was a cheat. It couldn’t take advantage of each platform’s strengths, and followers might often see the same post twice.

I now believe that cross-posting is a good thing. Photos, as one example, are frequently cross-posted to both Instagram and Facebook. Tweets can be sent to Twitter as well as our own blogs. Many apps like Instagram or Foursquare support and even encourage cross-posting. It’s good for developers because it helps spread knowledge of the publishing app, and it’s good for writers because it means there are multiple copies of our content.

It’s no secret that I’m building a microblog aggregation and publishing service. The goal is for us to get back to our roots with blogging — to write on our own web sites first, not as an afterthought to Twitter. Cross-posting is an important bootstrap for that.

If you don’t have a blog, start one today. It takes minutes to set up, and hardly any more time to wire up automatic tweeting via IFTTT from your RSS feed. Start with cross-posting and see if something interesting evolves from there.

Summer weather in Austin now. It’s the time of year when we start counting down the days until we leave for a vacation.

→ 2015/07/17 11:12 am

Ev on Twitter third-party devs

Business Insider quotes Evan Williams on the developer-hostile attitude of previous Twitter management:

“The API denial was, ‘One of our strategic errors we had to wind down over time,’ Evans explained. ‘It wasn’t a win/win for developers, users, and the company.’”

Just acknowledging this publicly is progress. It’s now been almost 3 years since my last tweet. I don’t expect to return to Twitter, but I’m still very interested in whether there’ll be a noticeable change in direction from the new CEO.

The new iPod Touch looks like a great device. It’s exactly what I want in my next phone: A8, 4-inch screen, better camera than the 5C. Just missing cellular.

→ 2015/07/15 10:51 am

“We’ll be okay. And I’m going to take my one client and we’re gonna go all the way.” — Jerry Maguire: small business owner, optimist

→ 2015/07/14 9:02 am

Yesterday I wrote a blog post and ended it with: “Tomorrow anything is possible.” Well, today was a big day. I plan to write more about why throughout the week.

→ 2015/07/13 8:59 pm

Deciding who we are

Dave Wiskus follows up on the response to his post about Apple Music’s Connect:

“Music is art, and someone who makes art is an artist. More importantly: who sits around waiting for labels to be bestowed upon them? I get to decide who and what I am.”

Strongly agree. This fits into a larger theme that has been on my mind today.

As kids, we needed encouragement even to pursue our dreams. Too much negative feedback could quickly derail someone with the most hopeful intentions. Society said: if you’re not good enough today, give up. Tomorrow is hopeless.

As adults, encouragement from peers is still great, but by now we should have enough experience to realize that defining who we are comes from within first. The line of work, the projects we tackle, the hobbies on the side — we can change any of that with enough determination. Tomorrow anything is possible.

Sent a minor update to Sunlit off to Apple for review. Felt good to take a break from other projects and work on this app again.

→ 2015/07/12 8:53 am

More with Typed.com

Last week I mentioned Typed.com and Elliot Jackson’s tips in the Realmac forums for posting via Drafts and Editorial. Now Elliot has expanded his solution into a full blog post:

“The gist of it is that your post, written in Drafts, gets sent to Editorial which will take care of the publishing part thanks to it’s ability to run Python and Javascript scripts in it’s built in browser. The post could be both written and published from Editorial, but as nearly everything I do on my phone runs through Drafts anyway, it made sense for this to too.”

I’ve been using Editorial as my default iOS text editor for a while. I have a “Notes” folder on Dropbox that I use like Simplenote, but driven from Justnotes on the Mac and accessible via Editorial or any iOS editor. But I’ve just barely scratched the surface of what is possible with Editorial. It’s one of those rare apps that is fine for new users, but which also contains a great depth of features when you’re ready to explore underneath the initial layer of its UI.