Making Your Code OSS-Appealing?
goldcd writes "A while back I wrote some pretty reasonable forum code, a PHPBB alternative. A few years down the line it's pretty stable, I've stopped tinkering with it, and it's standing up by itself. I have neither the time, inclination, nor inspiration to do anything more with it, but would very much like to give the code to the world to use and expand upon. Now I could just upload it as it is onto SourceForge, but currently it's very specific in its usage and I'd be ashamed of what 'proper' coders would think of my amateur offering — I'm afraid it would be laughed at and ignored. On the other hand, I don't want to waste hours of my own time perfecting it for people just to 'rip off' as is, and never contribute anything. My question is, what do you have to do to make your code 'OSS appealing?'"
Considering the majority of OSS code, if I were to release any of my code, I'd have to make it more amateurish.
Don't worry about it. There are those that will like it, those that won't, but they'll all cream their star wars underoos because it's free (as in beer).
Steve's Computer Service, Hobbs, NM
If its a needed product, and it has decent enough code, it will be accepted. For example, Linux is loaded with: Text Editors, IDEs, Media Players, Browsers based on the Gecko engine, simple rip-offs of games. Its the niche products that will survive, although there might not be 100 developers on it, it will be used by those that need it. The worst that will happen is its ignored, generally if theres a need for a program no one is going to flame you for bad code, they will either live with it, help you with it or privately fix it themselves. The reason most OSS projects don't succeed is because they end up falling into the "monopolies" (Not abusive monopolies that of the MS world but 1 de-facto standard) of the OSS world, for example, vi, emacs and somewhat nano are the only terminal based text editors that will be used by the majority of users, so whenever someone else comes up with one, its largely ignored, but things that put a "friendly" GUI on a common CLI program (Such as Synaptic for apt-get) it is usually appreciated, but bottom line, if it does something nothing else does, and does it better it will be accepted, if not then it will be largely ignored, you won't have people yelling at poorly documented code it will just be silently ignored.
There is no "disagree" moderation, and troll, flamebait and overrated are not valid substitutes
If you don't want to put any more work into it, it's effectively dead. OSS isn't just about giving away the source, it's also about allowing other people to contribute - simply posting it on SF.net and walking away does nothing if you're not willing to review submissions, process bug reports and/or bring people into the project.
my sig's at the bottom of the page.
If it works, don't be ashamed of it.
It you planned it, and then executed the plan to completion, there's nothing "amateurish" about that. This is one
*definition* of professional work.
-fb Everything not expressly forbidden is now mandatory.
I make video games and release them under the GPL. Hardly anybody cares. There are plenty of BB programs out there already. The world doesn't need another one. Same goes for my video games.
I also make music and release it for free. Hardly anybody cares, because there's plenty of "free" music out there anyways.
If you don't think that your code is really all that grand, just quietly release it and hope it somehow finds a place in someone's heart. The few comments you get about it are still nice to have.
I agree. I was somewhat worried when I put my first code out there, but once you take the plunge it's really not that bad. I remember a guy mailing me with a patch to replace a really dumb subroutine (this was a Perl script) with a one liner. He was very polite and helpful about it, considering how awful it must have looked to him. And he took the time to submit the patch, which makes all the difference.
:)
Just do it. It's highly unlikely anyone will laugh at you. Anyone that has spent time to read through your code is unlikely to be so juvenile as to mail you just to point out how bad it is.
Of course, it may be ignored by all but a few people. Some of my stuff certainly has been. But those few people that have used it have mailed me to say how helpful it has been to them. Even if you just help one person, thats one person more than if you'd left it sitting on your hard drive. Getting that single thank you mail can really give you the warm fuzzies.
It's also interesting to see where it might end up being used. I've had people that use my stuff at NASA, the Pentagon and even Disney. Have code, will travel!
I agree wholeheartedly. Most systems fail to gain popularity not based on their code quality, but on their documentation. The more documentation, the better - especially for PHP projects, where documentation tends to lead developers by the hand, often spoon-feeding them.
If there is guides on how to customise this, add things here, remove things from there, etc people will be more inclined to adopt the system.
When checking out any software, I always check for documentation, from the specific itty-gritty (like API references), to tutorials, blog postings and articles on the system. It means if have problems, I stand a chance of identifying a fix by doing a quick Google search, instead of unnecessarily trawling through code myself.
(I'll pass on vi. If you can't say something nice ...)
You can't see ANYTHING from a car, You've got to get out of the goddamned contraption and walk...Edward Abbey