regarding software license fees and development

Earlier this afternoon, I tried to open up Echofon, my desktop Twitter client of choice. It gave me a persistent “401″ error, which meant that it wasn’t working with Twitter’s API. I did some searching and learned that Twitter had changed its API, and if I wanted to continue using Echofon, I’d have to upgrade to the current version.

No problem! I upgrade things all the time! I hit the update link in the menu, and the app told me that I was using the current version. Uh oh. A little more searching, and I learned that Echofon wasn’t supporting the version I bought, but was supporting a version that I could buy through the App Store. I didn’t want to pay again for the same app, so I looked for something different, and now I’m very happily using Tweetbot.

An interesting thing happened, though, that I thought was worth discussing in more depth than 140 characters at a time allows.

I said:

A non-zero number of developers were offended, and a growing shitstorm swept across my desktop. The general gist of the response was that I suggested users should expect free support forever and never pay to upgrade software. I read what I believe to be a large number of false equivalencies, and rather than try to respond point by  point on Twitter, I’ll talk about it here where we can probably have an interesting and informative discussion.

First off, I never suggested that developers should not get paid for their work, because I do not believe that. I did not mean to imply that all upgrades (like OS 1 -> OS 2) should just be free. I also realize that, in this specific instance, Echofon did nothing wrong. The developer ended support for its desktop version (which I had bought a license for in-app) and began to support mobile and App Store versions. So I would be wrong to expect Echofon to give me the App Store version because I’d already paid for the version I was using. In other words, I wasn’t paying twice for the same app; I was paying twice for essentially the same app that would be supported through different channels. I still don’t feel okay doing that, and I think it’s silly to expect users to pay again because Twitter changed its API, but I support Echofon’s decision to conduct their business the way that they feel is best for them. For the record, someone at Echofon offered to give me a license key to use with the App Store if I sent an e-mail copy of my receipt to them. I don’t know if they’re extending this offer to everyone.

One of the many false equivalencies was “would you do Star Trek again for free if it was reshot to 16:9″. This is absurd, not only because I’m more suited to play Riker than Wesley, but the more I thought about it, I began to consider what this person may have been saying.

What I think this person may have been saying was something like, “if you were asked to do your job again because the technology had changed since you first did it, would you think it’s reasonable to not be paid for your job.” Another wondered if someone who paid for w00tstock 4.0 could reasonably expect to get into w00tstock 5.0 without paying. Again, I believe this is a false equivalency (the w00tstocks are entirely different shows — versions, if you will –, while the specific piece of software I was talking about had stopped working and would not work again if I didn’t pay for the same software in a different distribution channel), but I see where that person is coming from. If I was a software developer and I read my tweet, I may have pulled out my jump to conclusions mat and decided that Wil Wheaton was saying my job isn’t worth getting paid for, and what I make isn’t worth supporting. Man, that Wil Wheaton is really a dick!

So, to be clear: everyone who makes things deserves to be compensated for their work. I fully support developers who make awesome software (and Echofon is awesome) and fully believe that those developers should be able to earn a living from their work.

Further: I would never expect that I am entitled to OSX 10.5 simply because I bought OSX 10.4, especially if the new OSX was fundamentally different from the old one. However, I do believe that it would be wrong for Apple to make me pay an additional fee because something I already bought from them stopped working through no fault of my own.

This point is where I feel like what I was saying and what developers on Twitter heard diverged. If you invest lots of time and energy into a new version of your product, and you believe it’s fair to charge users for that new version, that’s entirely your prerogative. I do not believe that it’s right to charge users for what’s essentially a maintenance update, but as I am not a developer, I can’t say if that’s fair or not.

What I do know is that I will always support development of projects I love and which provide me value when I use them. All things (in this case, features) being essentially equal, though, I will give my money to the developers who provide me with the best service experience, and in this case, I got a better service experience from Tweetbot than Echofon. Your milage may vary.

42 thoughts on “regarding software license fees and development”

  1. It’s amazing the things people get worked up about, or read into what you have written, isn’t it?

    I’m curious why you use a Twitter client in the first place. You specifically said this was for a “desktop Twitter client” in an earlier post on Facebook. Why wouldn’t you just use Twitter directly in your browser?

    I’m wondering what features something like Tweetbot (or Echofon) give you that you find useful.

  2. I think I had a similar although geeky experience to this to some degree, I play a certain mmo and as many people know the number of people playing had gone down. The server I played on was dying and there then came an option to move your characters off the server for half price.. not a bad deal but still just a band aid. My guild and I took the chance and moved. Then not 2 days after they sale ended they say they are going to fix the problem with low pop servers and create a virtual server.. So essentially I paid money I didn’t have to because the company decided to be greedy and not inform everyone until after the sale was over that this problem was getting fixed. Does this company deserve to make money because of their game.. yes of course but sometimes companies choose a bad way to do it.

  3. I think this statement here says a lot, “because something I already bought from them stopped working through no fault of my own.

    Probably through no fault of Echofon themselves, as they’re governed by Twitter’s API as well and have no control over that, the issue remains is that the software stopped working. Was there advance notice given in regards to the stoppage? Is the App Store version so much more significantly different than what was offered in the desktop version it would warrant paying extra money again? In this particular case I would assume that there should be a form of recourse for people who have already paid.

  4. As someone who has been developing software for 20+ years, I really hate it when other companies screw over end-users. I don’t know why Twitter won’t support the old API or why Echofon won’t produce an old version that supports the new API. Seems that either way would keep their customers happy.

  5. As a software developer, I can see where the other devs are coming from (‘natch, right?)

    They’ve made the decision that the branch of software you’re using is End of Life and are not making any more changes to it. They’ve probably branched and made changes since moving to the App Store, including supporting the new Twitter API. They could probably backport their patches to make Echofon work with the new Twitter API, but that is definitely a non-zero amount of work (how much work is hard to tell from the outside — one would hope it’s not too much, but if the abstraction layer wasn’t quite right to begin with, well…).

    Then you get to testing. This is the real fuck you of the software world. Every branch you actively support/change requires test coverage and the amount of that work grows linearly with the number of supported branches. For a smaller application team, some amount of this testing may be done by hand, which really sucks as well. Even if you’re completely automated, there’s still a lot of work to go through and categorize and triage failures.

    It’s hard to come up with a movie analogy that works to be honest, because I don’t understand the movie business. I would assume though, that it’s not just greed that keeps me from getting free iTunes versions of content I previously bought on DVD. That may or may not be a shitty analogy, thoughts?

    1. This is the movie analogy:

      Imagine if the law required a refund on a movie ticket if any “errors” were found in the film. You see the boom mike? Refund. Reflection of a crew person or camera? Refund. Airplane in the sky during a scene in the 1600s? Refund. Person talking clipped out of frame on the DVD release? Refund.

      Movies would need to be scrubbed and scrubbed before release. Any new edit would require a complete re-review process. You’d probably need different tests for different theater types and different media. And you would never be sure if you missed something until the movie has been playing to the public for a while.

      Movies are awesome. If you make a mistake you get to say, “It’s only a movie” instead of the whole thing grinding to a sudden halt.

      1. Your movie analogy doesn’t really work for this situation. Never was there mention of a refund for mistakes or anything. A more apt analogy would be if you purchased a complete set of an incomplete series of films on DVD. You receive all the current titles, films 1,2,3, and 4 at the time of purchase, and when 5 and 6 are released they are shipped to you per the terms of your purchase. But when 7 is released they’ve decided to abandon DVD as “old tech” and only release it on Blu-Ray, and since your purchase was specifically for DVDs, they refuse to supply your final item insisting that the only way to get it is accept that your prior purchase is void and to purchase it again, separately in its new form.

        I know this is a stretch as there’s really no film analogue to new software “versions.”

  6. Wil -

    I guess the most appropriate response I can give is to say that I’m in absolute agreement with you, with a couple of extra thoughts.

    I guess the baseline for me here is that (as you said) I don’t agree with having to pay a second time to use a service or product that I have already paid for. Once I own a product or the rights to use a service… it should work and I should be able to use it. I don’t know about the inner workings of Echofon or the team that develops it and so I can’t make a definitive comment, but at the same time… discontinuing a product and then “rebranding” that same product seems slightly shady. I would feel played, were I in your position (I’m not, because I tend to use the web-based Twitter client when I’m on my PC *I use the Twitter app on my phone*).

    With that being said, I feel like the part of this whole discussion that slipped under the radar is the issue of software support. For example. I currently am running Windows 7 on my PC. With the advent of Windows 8, how long is it ethically acceptable (and in line with Microsoft’s business model) for me to expect support for this version of Windows? At a certain point the nature of our society – and the technology industry, specifically – is that things evolve and change, and also that at a certain point a better or more popular product will inevitably supplant the previous one. In the specific case of Echofon, it appears to be an ethical violation of your purchased rights to use that product that support has been discontinued in favor of a new, purchasable service *that provides no alternate or improved service other than the fact that it works*. At the same time, is the onus entirely on Echofon to ensure support for this product when a newer, more compatible product becomes available? In the case of my operating system, I feel that while Windows 7 is still more widely used than Microsoft’s other systems, I expect this product to be maintained and it’s functionality and compatibility ensured. At the same time, I know that eventually it would be asinine of me to expect support for this product to continue indefinitely.

    It seems that over a long period of time these questions are being answered and will continue to be answered. Int the meantime, I think it’s wrong for developers and Twitter users to question you when you are simply examining the ethics and practices behind a new and largely undefined culture of software use.

    :)

    SM

    1. Microsoft’s support policy is a number of years of ‘mainstream support’ followed, for business, developer and desktop OS products, with a further number of years of ‘extended support’. ‘Mainstream’ support is full support: call support, or open a case online, for any bug; request changes to how features work; you can use free ‘incidents’ that came with the product (most people don’t know that if you buy Windows in a store, as a full package, you get two free support incidents). I’ve heard that if they end up issuing a hotfix they usually refund the incident or credit card, although I can’t see it formally documented. Extended support doesn’t allow change requests, and you have to take out an extended hotfix support agreement to get new hotfixes developed (where one doesn’t already exist). Security updates are available through mainstream and extended support.

      However: if you bought Windows pre-installed on a computer, that’s an OEM edition and you have to get support from your computer manufacturer. That’s why OEM editions are cheaper.

      For software, the mainstream support period is five years after general availability, and the extended period (if applicable) is another five years. They round up the end date to fall on the second Tuesday of the following quarter (which is the day they issue new security updates). For hardware it’s four years of mainstream support. These dates can be revised if the next version of the product is delayed: then, mainstream support ends two years after the next version became generally available, if it would otherwise have ended by then.

      You also have to keep up to date with service packs: the service pack prior to the current released one (or the original release, if no prior service pack) is only supported for two years after the release of the latest service pack, for Windows, or one year for other products.

      All that means that Windows 7 (all editions, except the EU ‘N’ that doesn’t include Media Player) will be in mainstream support until 13 January 2015, and in extended support until 14 January 2020. You must be running SP1: support for the original release ended on 9 April 2013 (two months ago). Windows 8 will be supported up to 9 January 2018 (mainstream)/10 January 2023 (extended).

      It has been known for Microsoft to unofficially support products beyond their official end-of-support dates, but that tends to be for corporates who have to take out some very expensive support contracts to get it. My belief is that Windows XP security updates to consumers will end next April, as scheduled.

      Source: Microsoft Support Lifecycle.

  7. You are being way too kind. Having to rebuy software you already own is a scam. If I choose to upgrade software it needs to be because the new version is superior or else it’s a rip-off. Here’s a hint. Most new software isn’t better. Half the ‘features’ that are added are simply more ways for companies to extract revenue from existing users without offering anything in return. For a specific example there is absolutely NOTHING in MS Office 2010 that wasn’t perfectly adequately handled by Office 95 with the Office 98 add-on.

    But of course since Win-7 won’t run my software as is, I’m the loser. It’s utter BS. Your ‘developer’ friends aren’t entitled to a job ‘just cuz’ If they aren’t adding value they should be in a different line of work.

  8. At some point developers stop supporting old versions of their software. It’s not realistic to expect that software you buy now will be viable forever. Especially apps that depend on ever changing API’s of third parties. That being said, I’m not really sure how long a developer should be expected to support older versions of web apps.

    Users depend on/expect OS makers to keep supporting their apps for a decade or more. Same story with other types of software(Drivers, DB’s, Business Apps, etc…). Do users expect the same type of support for the web apps they are purchasing? I certainly don’t think that is realistic to ask of web developers, but what is? Maybe it is more a question of user expectations not matching developers perceived responsibilities.

    1. I agree that there remains an unanswered question of “how long should software be supported….?” I think a good software/web site vendor would mention this, and stick to it, kind of like hardware manufacturers and warranties (not that it’s completely similar, but I consider it a good idea for someone to say “we will support your use of this application/web experience, assuming you meet our system requirements, through this length of time.”) As paid users, I think we should start seeking that behavior out and rewarding it (assuming the supporters are doing their jobs,) because otherwise, we’re paying for the most enticing gamble. As a developer, I want to engage in that way of doing business, because it encourages customers to buy from me, and it makes them feel more secure after they’ve made the buy (so they’re more likely to either buy again, or encourage their friends to do so.)

    2. I wouldn’t expect a developer to support old software for a long time. But I also wouldn’t expect old software to stop working, either.

      Microsoft is ending support for Windows XP in 2014. Can you imagine what would happen if everyone who failed to upgrade would suddenly be unable to boot up their computer on April 8th, 2014?

  9. “I don’t believe it’s right to charge users for what is essentially a maintenance update…” Most app developers don’t either, Wil. Unfortunately, Apple puts developers in Echofon’s position by not supporting upgrades in the App Store, and not providing the ability for developers to migrate their existing customers . Nor does it provide a good mechanism for allowing developers to notify customers of new versions.

    Echofon’s offer of a license key is a mechanism that can be used to circumvent the problem. I would guess (but don’t know) that Echofon has extended that offer to other dissatisfied customers—in order to provide the “best service experience” they can.

    Thought I don’t know you, I think I can safely say you’re not a dick, based on the things you express here and on Twitter, etc. But I think you could also give Echofon the same benefit of the doubt, no?

    FWIW, See http://bjango.com/articles/hotdogapplife/ for a great explanation of the problem.

  10. On the plus side, as a Mac user you still have the option of using Echofon. As a Windows user, Echofon for Windows is now dead dead dead, meaning I no longer have a desktop client that can sync with my phone client.

    I find that all this really does is make me care less about twitter. I should go find another client, I suppose, but my caring about twitter has waned enough that I don’t really want to spend the time and energy looking for another client; especialy when my experience in finding Echofon for Windows made me hate every other twitter desktop client I found at the time.

  11. I followed the exchange on twitter and decided to chime in here. In my opinion your analysis is right on the point. What Echofon should have been doing is: 1. learn about the api changes, 2. review whether all current versions of their software can be made to work with the new api, 3. if not, develop a new version, 4. REACH OUT TO YOUR PAYING CUSTOMERS and let them know what is going on, 5. in a perfect world, offer your existing users attractive upgrade options.
    If your whole business model is around connecting to a 3rd party, you should be interested adding value by keeping your users informed and happy. Echofon failed in both cases: they didnt tell you upfront and then they were difficult in providing options.
    Seeing that getting user into the door is the hardest part of the sell, it is really amazing that Echefon didnt handle it any better.

    1. Very thoughtful response–especially point number 4. It’s amazing how far a simple, short message that begins, “We’re sorry, but . . .” will go in smoothing out annoyed customers’ gripes. If Echofon had taken that approach, this whole “shitstorm” would never have brewed.

      Glad I still don’t use Twitter.

  12. Ditching the analogies, here’s another way to look at this.

    Maintaining software requires work. Should buying a copy of software mean that all future work on that software is provided at you free of charge? It’s easy to see why software developers take exception to that idea.

    There is some tension between defect repair and enhancement. We expect software developers to repair defects in their products. This is clearly not a defect situation, though – no error was created by the developer. In physical terms (yeah, I know analogy… I failed) this is more like the charging plug on your new phone being different. There isn’t anything wrong with your old charger (app) – it just doesn’t talk to the new phone (Twitter).

    So basically, you have to decide whether it’s worth paying the developer for the work they did between when you bought the original version and when you needed the new one. That’s a personal choice, and you’re certainly entitled to decide that that work isn’t worth paying for. But the “I’m not paying again” concept glosses over the fact that actual work was done to make the new one work where the old one didn’t.

  13. What you are really saying is that you are angry with Twitter, not the Echofon developers. It was Twitter that broke your app, causing you to need to buy a new one, with new functionality. “What?”, you say, “There is no new functionality. The old one talks to Twitter and the new one talks to Twitter.”

    You are right and you are wrong. As a software developer, I know how much work goes into “fixing” what you “think” is a bug, or a break in your “old” software. It is NOT a bug. If you connected that software to “Old Twitter” it would work just fine. No need for an upgrade. But, because you want to connect to “New Twitter”, not “Old Twitter” (and who wouldn’t), you think there is a “bug” in your software.

    Sorry, your statements are not logical (as Mr. Data or Mr. Spock would say)

    1. Speaking as a software developer who has also worked in support, Wil’s statements are logical give the data in his possession: he was happy using Echofon, then it stopped working and the company wanted to charge him for a working version. That the underlying issue is with a third party is not immediately apparent to the end user.

      Ideally Echofon would have warned their users about the impending change and offered an upgrade path, but from comments above it sounds like it’s not that easy.

      It’s not a nice position to be in, relying on a third party’s API and getting the blame when it changes.

  14. They have the right to stop updating old software. They have the right to develop new software. But you have the right to not wanting to support them anymore. If their users think their product is good enough and they think that paying for the new software or the update or whatever is worthwile, they will pay. If they don’t, the developers will have to study if they can afford free updates, or they will have to stop developing their product. That’s how most bussinesses work, and software development is no different.

    Are there people wanting to pay again for a product if they think that helps development? Yes, I often read comments to developers saying “Hey, I really like this app I bought but I can’t pay for it again, do you have a donation address or something?”.

    Some people may feel betrayed, some people may refuse to pay again. I agree with Marco, the problem is lack of communication. Saying “hey user, your app is going to stop working on this date, and we’re sorry but the only solution is to do this thing, but we’re open to suggestions and you can ask for a refund here” will go a long way.

  15. I see where you’re coming from, Wil, and I agree. Personally, as a web and software developer, I understand the desire not to have to support multiple versions of software. As a consumer of software, I have a problem with having to upgrade because I have no choice.

    As a web developer, I’m also one of those people who’ve lamented how long Microsoft supports old (and bad) versions which results in my having to support them when clients complain. But, usually, with something as free as browsers are, it also a bit ridiculous because the damned thing doesn’t cost anything to upgrade. It’s usually an IT department unwilling to have to support a new version because they want to support a single (ridiculous) setup across an entire organization. I get not wanting to have thousands of possible configurations to support but when you consider security and user experience, it’s a ridiculous argument to stick to just to avoid an upgrade. But I’m digressing…

    Specific to Twitter, I really don’t understand why they can’t just support multiple versions of the API. Even Google’s App Engine supports versioning so you can go to /someapi/v1/somemethod or /someapi/v2/somemethod depending on the version you need (and what’s supported by the developer). It’s friggin software and a little bit of (existing) infrastructure. Unless you’re doing something stupid, there’s little reason why developers wouldn’t want to upgrade to a newer (and better) API.

    In your case, specific to Echofon, I think they did their customers a disservice and it exemplifies their commitment to the business they’re in. I understand that the changes to Twitter’s API might break the previous version. But, if they’re any sort of legitimate shop (I don’t care how small), they’ll have a version of the existing code for a previous release sitting in source control. Just branch that, make the necessary changes, release a patch. Depending on the changes to the API, it might be all of an hour of work plus some QA time and you’ve done a great service for your customers. And, if you want to be THAT way and just require upgrades, then at least off a low cost upgrade (as countless software companies have for decades) from an earlier version.

    I’d honestly get it if a small dev shop was giving the software away for free and just didn’t want to spend precious time supporting an older one when everyone can just upgrade to the newer one (that works on older OS versions…right? RIGHT?). Otherwise, support your customers or watch them walk, idiots.

    By the way, I’ve run tech departments for web startups for years now and we always balance support with client needs. We can see what browsers and OSes people are using to access the Web apps we build and can thus determine where we need to push support and where we don’t. I was actually surprised (or maybe not) to see the transition from a large IE majority to first Firefox then Chrome as a majority browser for our public apps. But, in the end, you’re selling to a customer who you can’t control. You can do whatever you want but if you want to actually succeed, you need to listen to your customers. We would usually debate support for older browsers based on how many people still used the site with their browser. As IE6 slowly died (even though some people still use that relic today!), it became a business decision. If fewer than 5% of our users used that browser, why support it, unless it’s an easy change/fix?

    In the end, I think smaller shops are toeing that line between having enough resources to work on new features and supporting previous releases. Most engineers I’ve ever met are all the same: give them a pile of bugs, they suffer; give them something new and interesting to build, they thrive. Personally, unless it’s minor or just plain rare (what? You’re trying to run this on a 486?), fix it. Mix fixes with new features and everyone’s happy.

  16. Wil, I work for an app development company. We moved from an app distributed directly through us, to billing through the App Store. We most certainly still support the previous purchase, and honor the previous subscriptions. If a company is not doing so, it’s out of laziness or greed, it was not difficult for us to so in the slightest.

  17. So the one thing I haven’t heard anyone mention is this…

    Was there at some point an App Store version and a non App Store version of Echophone that were in every other way identical?

    If so and they updated one to meet Twitters new (horrible) API rules, but not the other, well then shame on them.

    If not, and they both switched from the old API to the new, and moved into the App Store at the same time, well… I won’t be mad at them for that.

    Ian

  18. “…was fundamentally different from the old one.”

    Wil makes a strong point here, and something I think a fair measure of end product users have/will take into consideration. This ultimately comes down to a personal line: what’s too much, what is not enough, and what you are ok with buying into. As others have said, a company does have a right to stop supporting out of date technology, regardless of their reasoning. But a customer also has the right to move on from a company in the same fashion as well. Cost to keep up with functionality is a personal decision and should not be reflective against one’s previous support of a company when they decide enough is enough. They did great for you in the past and you were happy with your investment until it was going to cost you more than you thought fair to keep going in what results in the same end result. Other people may not be in that same position and content with buying into the upgrade. I don’t find you to be a dick for looking elsewhere, even if this was your sole reason, you simply decided enough was enough and no more.

    It’s one thing for a user to complain about having to pay to upgrade for what is no more than a hotfix or patch to keep current functionality going. Its something else when they complain about paying to upgrade to what equates to a considerable expansion, or a complete internal/external/reboot-all-the-things overhaul. This doesn’t sound like a complete overhaul, but most definitely extended maintenance work that has been coming down the line. Congratulations, its a grey area. Be it poor luck or a faulty finance plan to market their software fell short, I don’t see that necessarily as a good reason to cut existing customers off cold turkey and herd everyone into new licenses en masse.

    As much as I understand that this was not echofon’s fault for their code no longer working, seriously… bridge the gap a little. I, too, wonder if they only offered the serial in anticipation of quelling bad publicity, or if this was something made known to all purchasers within a given time frame of their old product. But I don’t tweet so its purely curiosity here :)

  19. Ok, so I am reading a lot of people trying to make sense of this issue. You made some very valid points, but I also think you are victim of a fallacy yourself. You are objecting to having to pay for a new version because the old version stopped working through no fault of your own. The problem here, is that it is not Echofon’s fault that Twitter forced an API change. Why should they be forced to do whatever amount of additional work twice (app store version and previous version) for something that was out of their control.

    Consider this: Let’s say that in 2013 you buy yourself a nice spiffy new car, we’ll call it the Crusher. The company that sold you that car engineers and builds a new car the following year. In 2015, the NHSTS implements a new roadway system that require all new cars to have a functional Wheatonator unit. Your Crusher purchased in 2013 does not have this and due to core design, installing one involves a not inconsiderable amount of work. Do you think that the manufacturer is responsible for undertaking the work as well as the R&D to install a Wheatonator into your Crusher? It’s not their fault that an entity they have no control over, changed the rules. Now, the manufacturer did learn of the new requirement in time to make their 2015 Crusher to be completely Wheatonator compatible. Would you consider them greedy for advising that you upgrade to the new compliant version instead of you trying to use an outdated non-compliant version?

    Granted the analogy is not perfect, but I think it does make my point.

    just sayin’…

  20. I was in a similar situation a couple of years ago. When I upgraded to OS-X Lion, my version of Parallels stopped working, and I was forced to pay and upgrade to the latest version. It does seem pretty unfair, and I let them know in a long email.

    As a software developer I have to say that for me, building great products is my primary aim, and getting rich would be a great thing, but it’s not what I’m all about. I would have offered people the chance to upgrade for free if they ended up in a situation where they had no choice in the matter.

  21. This could not be more timely written then right now. I’m a Motorola cell phone user and have been for life because they usually make the best product with the best reception and I’m a reception fanatic. A year ago I finally took the plunge after years of owning the most reliable Motorola clam shell cell phone and using Verizon cell phone service to switch to Sprint and a smart phone. My son, being Mr. Practical, decided to get the free, cheap smart phone that was touted as Android. I, however, fanatical about my reception read all the reviews and decided the things I wanted to do would be best matched with a Motorola Photon 4G. While we didn’t have 4G in our area, I expected they would some day. Like all the other Motorola phones I figured I could use this one for several years and be happy.

    It had Gingerbread on it at the time. We were told we would get an upgrade – later then most, but still worth waiting for. After waiting forever, we were finally told our phones would not be updated (and oddly enough, Sprint NEVER upgraded our service from 3G to 4G either). After patiently waiting for the smallest of upgrades, I’m now told my machine is a lovely paper weight.

    As someone who has to manage their limited income, I made an investment in that phone and I was told it would last me for quite a while because Android was upwardly mobile software. Who knew Motorola was more interesting in making a buck then caring about their customers needs? This phone that I actually had to save up money to pay for ($150 cell phone for someone on disability is an investment) was sold as being valuable for AT LEAST a few years.

    Motorola’s answer was to offer us a $500 phone with $100 trade-in for our old ones. EXCUSE ME MOTOROLA, where in the heck do you suppose the other $400 is supposed to come from and who’s to say you won’t do the same thing again in another year? Sprint says I’m screwed because I have a 2-year contract and I don’t qualify for another phone for another year. In the mean time, my technology challenged phone is failing miserably at digesting new mobile internet content. I can’t even get my weather alert pages anymore because the news station figures everyone has at least upgraded to Ice Cream Sandwich, much less Jellybean. My son’s phone on the other hand was upgraded without any fanfare.

    Motorola refused to take responsibility for duping us. They won’t even give you the address to their legal department. The final Sprint representative I spoke with callously informed me my “phone skills” were not good enough to make a case for them giving me any assistance with the situation (well excuse me for not taking debate class in high school). I’m about to switch to Virgin Mobile out of pure hatred for being bullied by corporations, which are betting that if you’re rich enough to be able to afford a smart phone, you won’t mind paying for a new one when THEY tell you to.

    The only solace I have in this debacle (no, I won’t ever do T-Mobile again after one of their reps changed my plan to one $30 higher without my permission) is that the ACLU has filed a lawsuit against the big three cell phone providers for not providing timely software updates. I don’t have a lot of hope that they’ll do more that slap some senseless fine against them so they can continue bullying customers.

    If our world wasn’t in such a dilemma with wild weather, people gunning one another down and driving drunk causing horrible accidents I really wouldn’t need a cell phone. I don’t leave my house much to begin with. The reality of the situation is, however, that I’m physically challenged and if something happens I need to be able to keep in touch. I live in Florida so I need to know where the bad weather is or have access to a map if I get lost.

    The bottom line in determining whether my purchasing dollars go to new software, hardware and anything else is customer service. I’m happy to save up and pay for something that’s new – as long as I’m not being FORCED to do it on someone else’s time table. The question for businesses like Motorola or any other software provider is “are you bullying your customer into the new purchase or are you offering them an opportunity to take advantage of the new product?” If you are being a bully, then no, you don’t deserve my money. There are other fish in the sea. Ask Netflix.

  22. If anything good came of this, it;s that you’re now using Tweetbot. I’ve been using it for a good while now and it’s easily the nicest functioning twitter client available, on all platforms I’ve tried it on (iPhone, Mac and iPad).

    And I guess it was rather nice of the echofon guys to give you an app store code for their app. I’d imagine they’d be happy to do this for most of their customers, if it means moving them over to a more stable and supported release.

    People on these here interwebs just complain too much and probably interpreted your tweet as such, as opposed to you simply saying goodbye to one app choice and hello to another, with your reason for doing so at the time.

    Anyway, you’re using tweetbot now. Life should be better all round, if yours can get any more awesome!

  23. Trillian did a similar thing when they broke into the Astra builds. I essentially had to buy a “lifetime” license again because the way they worded it was that the previous “lifetime” license was only good for the lifetime of the Trillian development cycle “of that particular version” of Trillian. They assured us with the “new” lifetime license that this would indeed be a “lifetime” (yours, not our software’s) license.

    I, of course, paid because 1) I use Trillian all of the time on all of my devices, and 2) we’re talking about an aggregate total of less than $100 (I think) for the past 15 years. I’ll cut them some slack. I collect $7 a year in pennies.

    But there was the same turmoil and gnashing of teeth. And I’ll admit that I too was momentarily annoyed.

  24. Why are we all pretending that your decision to buy the app is directly related to the developers getting paid?

    Employee salaries are one expense a company has, but it’s far from the only one. There’s also marketing, sales, customer service, and so forth. When Twitter changed their API, Echofon had many options. They could have paid their developers to update the app and then given it away to existing customers for free (a customer service expense). They could have paid their developers to update the app, and then charged a lower price to existing customers than they do for new customers (a marketing expense). They could have paid their developers to update the app, offerred it for free (or at a reduced rate) for a certain period of time, and then began charging regular price for it (a promotional expense). And so on, and so on…

    In all cases, the developer gets paid for his/her work. The bottom line here is that Echofon lost a customer (you) because they chose to make you pay full price for something you didn’t expect/want to buy. It has nothing to do with whether not the developer gets paid, except in the sense that a poorly run marketing strategy may cause the company to lose enough business that they have to layoff employees. Still, though, it’s up to Echofon to work that out, not you, the customer…

  25. The development of software is an interesting phenomenon; I’m a dev for custom online workflow solutions at my company and I can see both points of view here.

    I purchase a product, I may have expectations as to how that product is supported (usually according to the terms… and also according to my own expectations which, if I am lazy and don’t read them, may be different from the ToS). I make a product, I have expectations as to how it is supposed to be supported past its release date. This balance… has no standards. Companies want solid expectations that maximise profits, devs want a reasonable code solution and a paycheque, customers want to know what they’ll have to shell out for a product and how long it will last.

    The balance point is… messy. It shifts, especially with web-based products, because the technology is shifting (jQuery 1.9 is Very different from jQuery 2.0+, and it’s used just about everywhere at this point… HTML5 is still evolving, database technologies are likely to shift if MySQL adopts a for-profit model which will likely kick everyone and their dog over to Postgre…), because products that depend on other products (Twitter feeds, yes?) have to adapt to any changes in the API in their source, because the OS changes, because the Browser changes…

    The dust isn’t settled, and no one has any decent expectations as to what is appropriate.

    So, all I’m saying is that Echofon tried to assert an order on that balance and that it missed your expectations. My opinion as a dev is that… updating software to a new API is practically required work to keep a product supported. If it were making it work as a feed for a completely different product, I’d feel entitled to present it as a new product. If there is a significant amount of code overlap, I’d also feel it proper to bundle it together with the other product at a very good discount. These pricing models meet my current expectations; they may change as my experience as a dev grows.

    But forcing a charge due to a change in the source API? Only if they have no license system in place already and it doesn’t go against their ToS.

    I use JetBrains PHPstorm for dev work (I learned to like it quite a bit; comparable features and support to Dreamweaver, 1/10th the price!) and they have a system that sets up what I feel is an appropriate set of expectations. It works for me, so I stick with it. Echofon’s choices don’t work for you, so you left. That’s a solid choice as far as I’m concerned. People who say otherwise, well, I’d wonder what they’re thinking.

  26. I pay for maintenance updates on my car all of the time.

    Someone has to pay for that developer to update the software. Either the company eats the cost (which could drive a small shop out of business) or the customer pays for it.

    I got a warning on the Twitter app for my Windows phone that Twitter was changing their API’s and I’d need to upgrade or the program would stop working. I imagine the same thing happened to your app. So Twitter provides and API for free, someone sells software that uses that API, then Twitter removes the API. That is kind of a weird value chain and it isn’t clear to me at all who is the wronged party and who should pay to keep it working.

    If the app includes a promise of support for some amount of time, then obviously the app authors should pay for the fix. But you as the customer will need to pay more up-front for that benefit.

    1. Not that any of this removes your right to spend your money wherever you want. I fully support your decision to spend your money wherever you want for whatever reason want.

  27. This happened to me with VueMinder. I supposedly had a lifetime license…Sure. It was lifetime for the version I had bought. The creator came out with newer versions that required a new purchase. I changed calendar systems after that.

  28. Either the company eats the cost (which could drive a small shop out of business) or the customer pays for it

    …or the company doesn’t eat the cost and the customer leaves.

  29. As a software engineer I 100% agree with Wil, and even agreed with him before he posted this clarification.

    The company made a business decision to change their model. They had to know they would loose a certain amount of their users during the transition. The fact that the current version stropped working, and the only option to continue is to purchase sucks too. Even when there is a major OS version released, the company will continue to support the previous version for a while. I understand the technical issue they had, and understand it sucked just as much for them as it did for their users. Yet you can’t blame the user for not liking it and choosing competing product.

    In the end, if someone wanted to make a w00tstock equivalent, it would be more like this:
    I paid to get into the show. Halfway through the show the power goes out. The coordinators inform me that they are moving to a venue across the street. However I will need to buy another ticket to get into this version of the show. I say, screw that I am not paying again, I am going to go to the zoo instead.

    It was not the coordinators fault the power went out, and that they incurred extra costs in having to move to a different venue. However, you can’t blame me because I didn’t feel it was worth paying again to see the rest of the show.

    If it was me at Echofon, I would have offered existing customers a free 30-day trial of the AppStore version. That way their existing users can try it out and see if they feel its worth dropping money on again. However, maybe Echofon felt the extra work to build this trial in wasn’t worth it. Maybe they are correct, maybe they did not loose enough of their customer base to have justified this. In the end, that was their business decision to make, and they knew they are not the only option their customers can choose from. The developers at Tweetbot deserve to get paid too, and if they treat their users better, then they are going to be the ones to get paid.

Comments are closed.