A question I’ve been grappling with for some time now is whether I’m doing the right thing making DropSync a freeware app. There are a few perceived advantages to being free, which made me make this choice initially,
- Everybody can afford it
- You can feel good about how generous you are giving away something useful
For someone who writes applications in evenings or on weekends these are almost compelling enough since it feels nice giving away something for free, and the reward of knowing that people are finding the app useful is great. This is enough for a while, but maintaining a program like DropSync takes a lot of work and is also fairly expensive (web hosting, books, conferences, ADC memberships etc) so it can be hard to stay motivated and keep it going.
At the present time DropSync is free, but its source is closed. This halfway situation is the worst of both worlds because it puts all the responsibility of maintaining and improving code onto one person (me), and it also cuts off the most obvious income stream. Better strategies for keeping the app healthy, and its creator sane exist;
If the source code is good, and if the application is compelling then it can be possible to build a community of coders who contribute, and eventually take up the mantle of application maintenance. This can work, and has .. but usually for projects like DropSync there are often few contributions from anyone other than the original code writer. In order to get lots of people contributing you need to write programmer documentation, help newcomers and provide leadership on the direction of the project. The reality is that maintaining a large, healthy open source project is probably more work than maintaining a project on your own.
I don’t think that dumping my source code on the web would do much to help it stay well maintained, or to generate income from donations. Effectively I’d just be back where I started except that I could feel good about providing source code (which is quite nice of course).
Charge a fee
This is the classic shareware model. Users get a 30 day trial or something similar, and if they want to continue using the app after that they need to pay a small fee for a licence code. The benefit of this model in the case of DropSync is that everyone who uses the app would contribute directly back to its continued development. I might be able to offset my costs, but perhaps more importantly I’d be more motivated to continue making DropSync better because I’d know there were people who’d actually paid for it.
I don’t think the present model for DropSync (free and closed source) is the best way to run things. Ultimately I’d like to open source as much of DropSync as possible, in small useful components that other programmers could use in their apps. I’d also like to try charging a small fee for DropSync. This would start from the official 1.0 release (ie after the current bugs in the beta are ironed out). I hope this is the right decision for users who’ve been persisting with DropSync through it’s early days. For those who’ve contributed by reporting bugs and providing feedback, I’ll be sending you a free licence.