top | item 8858018

Ask HN: Sell, open-source, or abandon a $10k/year Mac app?

48 points| EvanMiller | 11 years ago | reply

In 2011 I wrote a low-end GIS program for Mac, called Magic Maps. The idea for the app was to make a simple, Mac-like alternative to ArcGIS and QGIS that makes it easy to plot points, import Shapefiles, and create chloropleth maps and animations without first wanting to open your veins in a bathtub.

It was my first desktop app, so the code isn't great, but it's found a loyal user base over the years has netted over $50k since 2011. Unfortunately, Magic Maps is now suffering from neglect and bit-rot, and some of the users are starting to revolt. At the very least, it needs a bit of work to fix crashes, ensure it works smoothly on Yosemite, etc.

I'd do this work myself, but I am putting all my time into another app, and as much as it pains me, I just don't have time to invest into Magic Maps any longer. I'm putting this out there because I'm honestly not sure what to do with the software at this point, and I'd like to hear other people's perspectives. I see my available options as:

* Open-source the project. I think open-source works well for a lot of things -- and I've done a lot of open-source work in the past -- but user-friendly software doesn't seem to be a good fit for open-source without ongoing sponsorship.

* Try to sell the project. This seems ideal, as I think there's potential for Magic Maps to be a viable business with a sufficiently savvy owner, but I'm not sure there's a market for code that doesn't include a developer or test coverage.

* Wind down the project and call it a day. This would be the least amount of work for me, but it hurts me to think about it. It just seems like a waste to throw away all that design and engineering effort -- it's a neat little package and I'd hate to put it in the trash.

Have other people been in similar situations? What did you do, and what do you think I should do? Sell it, open-source it, or call it quits?

BTW here's the Magic Maps home page: http://magicmaps.evanmiller.org/

59 comments

order
[+] EvanMiller|11 years ago|reply
I received an interesting reply over email which I wanted to share here. With the author's permission I've reproduced it below but blanked out some details:

> I (or we as a company) faced pretty similar situation just a few weeks ago.

> The app is called ______, and it was our first app ever, our child - app that constituted our company brand and still is pretty useful for many small business owners (_______ is an invoicing app, making something like $20k/year on our domestic market).

> Unfortunately(?) business is business, so finally I decided to decline it. Now we’re making some final touches and will release it as open source project - again facing similar problems - the codebase is almost 6y old, app is not trivial, build procedure is not single click etc etc.

> Besides all those risks and problems, I still believe that opening the source code is worth doing. That way we can help other (less advanced) programmers to start their own mac products/businesses. I’m sure that you’ll agree that after a certain point you need to look inside something bigger than a trivial app from examples folder, something that is/was a real thing, something ‘alive'. That’s IMHO a single priceless source of practical knowledge.

> That’s my 10cents :)

[+] yuhong|11 years ago|reply
I wonder if the name will be released later, after it goes open source.
[+] tjr|11 years ago|reply
Not knowing all of the details, I'm not sure how reasonable this would be, but another possibility is to keep ownership of it, and pay someone else to fix bugs. The key question there is how much that would cost (in both your dollars and your time) vs. how much you are making on the application.
[+] debacle|11 years ago|reply
I think one of the big problems with the app store model is that it creates this idea that you only pay once for software, ever.

Your software doesn't have bit rot, it's just old. It was useful at one point in time and it is just a bit less so now. Consider the value proposition of a Magic Maps 2.0 to your users and what sort of feature list you could create. Decide an upgrade price point, and send an email to your users and create a newsletter allowing them to sign up for the new version. If you get 500 sign ups, cost out the features and have a freelancer develop them. If you get no sign ups, pack it up or sell it to someone.

[+] nthState|11 years ago|reply
Many of us would love an app that was making $10k a year. That's a lot of money, can you do without it?

If it was me, my financial situation may be different, but, I'd drag myself up by the scruff of my neck and set aside some time to fix it......$10k a year!

[+] EvanMiller|11 years ago|reply
You're right, it's a fair amount of money, and I'm lucky to have this problem. Right now I'm doing everything I can to focus on another app. I'm trying to give that app 100% of my time and attention, even if I could be making more money in the short term doing something else.

I personally find it difficult to work on multiple large software projects at the same time. There's just so much I can keep in my head at once. If it were a few thousand lines of code, maybe, but Magic Maps weighs in around 35 kLoC, and the other one is pushing 100 kLoC. It takes a fair amount of mental bandwidth to dig into deep bugs, and I'd like to save that bandwidth for my other app.

[+] echoless|11 years ago|reply
I think there's another option. You could hire a freelancer and have him/her fix the bugs and get it working on Yosemite. Depending on the complexity of the code, this may or may not be feasible.
[+] EvanMiller|11 years ago|reply
Thanks for the suggestion. The code is somewhat complex, though I've tried to isolate the really hairy parts in separate libraries (e.g. OpenCL code). I'm really not sure what the ramp-up time would be, and whether it'd be too much. Where would you look for a Mac freelancer?

For the record the Yosemite issues are the most glaring ones, but there are deeper crashes and bugs (think "mysterious Core Data error") that have eluded me.

[+] harisamin|11 years ago|reply
I’d be interested in collboarating/contracting if I could help. I just launched my first mac app http://mackernews.com You should also checkout http://sideprojects.assembly.com/
[+] soylentcola|11 years ago|reply
On a somewhat unrelated side-note, you might want to look at how those images are scaling/displaying on your mackernews site depending on the scaling of the page (I noticed that if I zoomed the scaling in the browser it started to look better but at normal settings the images compressed vertically but not horizontally).

I'm not a software or web dev but things like that definitely influence my decision to try or buy software.

(ex: http://i.imgur.com/PgmrAm6.png)

[+] EvanMiller|11 years ago|reply
Very cool. Let's talk over email. Home page is in my HN profile, email is on my home page.
[+] hayksaakian|11 years ago|reply
Have you considered hiring a contractor tonmaintain the code?

If its generating a profit, maybe its worth it?

[+] gsands|11 years ago|reply
I would fix it up.

You get 3 benefits:

1. Continued income from it (people aren't going to continue to buy it if the bad reviews keep coming in).

2. You keep/improve your reputation. If your software isn't working well for any reason at all, it can give a bad reputation to the person/company attached.

3. You increase the chances of a good buy-out in the future, over what it would currently bring now.

We all know it can be difficult to get traction on a project, not to mention paying users. You already have proved this one can get both.

[+] EvanMiller|11 years ago|reply
Thanks for advice. The main issue is that I have better traction/reviews/revenue on another app, and the work required to get #2 and #3 on your list would seriously detract from the attention I could give to that other app.

There have been a few times where I've followed that exact logic to fix it up, spent a weekend or two on it, and gotten pulled away again. The software has reached a size where it's hard (mentally) to switch back and forth between it and my other app.

The other issue is that now that I have more experience doing Mac development, I'm starting to see that it's not a simple matter of bug-fixing. Some significant development would be needed to bring it up to the same level of polish as my other app, and in the meantime I'm concerned it's detracting from my App Store reputation.

[+] tylerhall|11 years ago|reply
I was in the same situation as you a few years ago. My Mac app was making enough money to be helpful but not quite enough to be worth the trouble. I seriously considered open sourcing it. But I stuck with it and, four years later, it grew and began supporting my family full-time.

If you truly believe there's no chance of it ever growing larger, than by all means, retire it. I've sunsetted many apps that never caught on. But don't give up on it too soon!

[+] EvanMiller|11 years ago|reply
That's a great story! What's the app if I may ask?
[+] sbarker|11 years ago|reply
Sell it. Get ahold of esri or partnersoft both have iOS apps yet lack Mac support unless you run a VM. It maybe a harder sell as most of the industries that use GIS data (power, telco, gov) use windows. Your are in a premo spot though because Partner and esri are both pushing iOS for outside guys/field workers quite a bit right now even if it's only a bullet point for them it could be a nice pay out for you.
[+] samspenc|11 years ago|reply
Please don't wind down the project! I'm sure people are using it because they find it useful, and I think they would be disappointed if it stopped - I know I would if someone stopped working on an app I used heavily.

(1) I think its worth trying to sell the app - you did a good job, obviously it has a user base, and I think its fair you get paid for it and have someone continue to maintain it.

(2) If that's a hassle and you lose control of the project's trajectory - why not open-source? Your users would still use it, it would be free, and there might be some power user willing to take it on and improve the code base.

(3) As someone else mentioned in the comments below, maybe find a contractor to maintain it? This only makes sense if the cost of the contractor is less than what you're making off it, of course.

[+] opless|11 years ago|reply
I'd consider selling it. I'm sure there's a 100lb GIS gorilla that would snap you up. Have you tried waving it at them. I'm afraid the only one I know is MapInfo who I'm sure got bought out by Pitney Bowes back around 2005?
[+] EvanMiller|11 years ago|reply
Thanks. To sell to a larger company I think I'd need to build a small company first with at least a handful of employees. I'm trying to step away from this code if I can to focus on another app, and generally large companies only want to buy software that come with personnel.
[+] nasmorn|11 years ago|reply
That is not a very big gorilla.
[+] revorad|11 years ago|reply
You could hire someone. I know you might find it hard to let go of your codebase and feel it's too complex, but there are plenty of good programmers out there.

You said you're concerned about how much it might cost. Surely you can afford to try someone out for a short amount of time, given the app makes $10K a year. If you shut it down or open source it, that income's gone anyway. So why not try to keep a good product alive?

One good place to look for a programmer might be the monthly HN threads by whoishiring - https://news.ycombinator.com/submitted?id=whoishiring

[+] glasses|11 years ago|reply
What about letting someone take over the project but you get to keep a share of the profits for guidance and advice (30% or so).

It benefits both parties, you know what features the project needs to implement and what direction it needs to take to make more money, while the new owner/developer gets ramped up. You guys can even agree to a one year period of help and then separate, but at least the project keeps running and making money.

Not sure if this is usually done, but it seems like everyone wins :)

[+] EvanMiller|11 years ago|reply
I like the idea, but it seems a bit risky and would require a lot of trust. I'd be open to this with someone I trusted, but I don't want someone to take the software as passive income and ride it down without fixing bugs etc.
[+] Mnwhlp|11 years ago|reply
Why don't you pay me to update it and keep half of the profits. That way you get to keep control of the app and half of the profits while I do all of the work. I made this public because I think it's a good alternative for you even we don't end up working together. But hey PM me if you're interested.
[+] bdcravens|11 years ago|reply
How much time do you put into it each year? You need to subtract that time from your yearly revenue.
[+] v_ignatyev|11 years ago|reply
Try to receive funds and make business from it: hire developers, create few updates, try to expand onto new markets etc. and then try to exit this business.

Or just throw off this project and focus on another one. It's old. It's kind of liability not a money generator.

[+] ErikRogneby|11 years ago|reply
This just showed up on HN: http://sideprojects.assembly.com/

Crowd source further development and continue to participate in revenue and product direction.

[+] keville|11 years ago|reply
This project does sound like it would be a good match for Assembly's platform. Good eye!
[+] blyxem|11 years ago|reply
With that amount of revenue, you could easily outsource it to an offshore dev and claim back a lot of your time, while still retaining ownership of the app and IP.