Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

As an independent, individual programmer:

How do I let people very quickly know that I have not abandoned the software I've written and given away for free? That I am putting in the effort required to maintain and support my software to a professional level?

When software written by one or two developers is available for free, or marked as open-source, usually the default assumption is that it's abandon-ware. This is usually a safe assumption - check out the answers to this question if you doubt it: Why do programmers write applications and then make them free?.

There are lots of programmers who provide free and/or open-source tools which are not abandon-ware, though.

If we're talking about large companies, ie Google, there's no real problem telling the difference between supported, live tools and software, and those which are abandoned or discontinued.

A lively git repository isn't quick - users will have to be savvy enough to understand the repository and know where to look for it. Consistent marketing and community management take more time and effort than I can put in on my own. Also, if my software becomes popular/successful, I assume those will grow on their own, and be supported by power users in the community.

share|improve this question
2  
Superp documentation? An active bug tracker with good record of issues being fixed? –  user1249 Jun 29 '11 at 22:16
    
Have "New version available" stuff in your code, and push regular updates, even if you've only done minor changes? –  Trezoid Jun 29 '11 at 23:04
2  
Why are you going to stay active with it? If you give your users a good, genuine answer to this question, they will believe you. –  NickC Jun 30 '11 at 3:48
2  
I would challenge your assumption that "usually" people think freeware is abandonware. On the flip side--you can't give a guarantee that you won't, in the future, abandon your users, because the guarantee has no 'teeth'. So what are you actually trying to achieve? –  Alex Feinman Jun 30 '11 at 15:11

8 Answers 8

up vote 15 down vote accepted

A tried to organize the suggestions into two parts with three points each: the first point targets people without technical background, the second one: every person, and the last one, the people with more IT knowledge.

Content

First and most important, the content of your website should reflect the fact that your software product is updated frequently.

  • The date of the last update. Show it. On the home page. At the top. In big letters. Because this is the most important point. You can tell me what you want trying to convince me that you are still working hard on your project. If the project was lastly updated in 2002, I'll never believe you. For example, Notepad2 website tells us: "Project last updated: May 06, 2011". Just by reading that I'm pretty sure that the project is far from being abandoned.

  • The frequency of the updates. Some projects are not abandoned in one day, but rather progressively: at the beginning, there is one update per month, then two per year, than one in two years. If for the last years, you updated your project at least once per month, it would be very convincing for the users to actually see the list of updates (and also useful to see what was modified).

  • Your feedback to the community. Do you listen to the suggestions of your users? Do you solve the reported bugs? Having the list of bug reports, where there are recent tickets and those tickets are resolved is a good sign: not only your community hasn't abandoned you, but you hasn't abandoned your community.

The last point is especially true for people like developers. If you target people without technological background, they may neither know nor care about bug-tracking software. For those people, you would like to insist on the first two points, especially the first one.

Style

It's not only about what you tell, but also about how do you tell it. In most cases, people will rather have a feeling that your software is abandoned or not. To give them the appropriate feeling:

  • Display recent dates. Not only the date of the last update. It may also be a list of recent blog posts you made related to this software product, or the number of downloads in the last two months, etc. Sometimes, even displaying the RSS feed which has nothing to do with your product can do the trick for people with no technological background.

  • Have a recent visual design. If your website gives an impression to not being changed since 1998, you may tell that you're working hard to maintain your software product, but what about maintaining your website for the last decade?

  • Use new technologies. Your website is written in HTML5/CSS3? That's great! I'm sure your product rocks as well, and if it's written in C#, it uses .NET Framework 4.

share|improve this answer
    
Yes, but it takes some expertise to look for that kind of information, and know how to process it. What about users who don't even know about forums and bug-tracking software? –  blueberryfields Jun 29 '11 at 23:42
1  
@blueberryfields: I refactored my answer. Hope it answers the question in your comment. –  MainMa Jun 30 '11 at 1:58

Make a website blog/forums and stay active.

share|improve this answer
1  
+1: My first thought. Even something every month or two saying, "It's not dead, I'm doing <this>" will probably suffice. –  Bob Murphy Jun 29 '11 at 21:29
    
Yeah, but thats only partially correct. Seriously. There's only so much you can do with superlib before it turns into bloatware and you no longer want to maintain it. At some point, it'll just work, you'll move on with life, and you'll commit the yearly patch related to dependencies. –  Denis Jun 29 '11 at 21:42

Indicate, preferably automatically, when the last updates to the production version and to the development version of the software were. SourceForge, for example, does this (somewhat) automatically with the "last activity" date, though I don't know for sure what constitutes "activity."

The approach that Wine takes seems effective also, though perhaps less so. There is a "News" section on the front page that shows the date of the development point release being advertised.

Generally speaking, a web page that looks active will go a long way toward making your project appear active.

share|improve this answer

Besides all good suggestions by other I want to add:

  • Make it clear that you are accepting issues and enhancement suggestions in an issue tracker or any suitable way.
  • Make a road map to show that you are planning to release newer versions with better features. It will give good impression to know that you are committing to evolution not just maintenance.
share|improve this answer

Besides a blog, you could throw in a twitter account for them to follow - either your personal one or one made specifically for your program. I would recommend a dedicated twitter account, as a personal one may be difficult to find update-related tweets in. However, it could help get your name out there/build followers around a central account.

share|improve this answer

Provide a history on your website or similar. If the user can see that some work has been done in the last couple of months (in the form of a release), then they'll assume a project is still being maintained.

Otherwise, have a blog or something with dated, regularly updated information. If the user can see that content is changing, they'll not likely consider a project dead.

share|improve this answer

In the future, you'll reach a point where you've implemented what you wanted, and everything is in there and works.

It might need an occasional patch and so forth due to dependencies or platform related issues, but it just works.

At that point, make sure your ticketing system is open. Say, github.

If the ticketing system has issues that have been rotting for years alongside no commits, it usually means no maintenance is occurring.

If there's a healthy number of tickers and recent commits, it means it's active.

If there are no tickets at all and recent commits (eg ruby/sequel), you've probably maintaining a jewel.

I think the key is ticket rock. It's no big deal if a piece of software hasn't been updated for years, if ticketing system shows that no valid issue has arisen since it was last updated.

share|improve this answer

One method, not mentioned so far, is to announce you're open to commercial deals. If people think you're earning money from the project (even if it's not from sales) they'll be more convinced to believe it's not abandoned. After all, you then have a motive not to abandon it.

Even more bonus points if you can note succesful deals in your release notes: "Windows 7 support kindly sponsored by Acme Inc."

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.