views:

204

answers:

6

I've got a framework for PHP that I've developed for about 3 weeks total, but it's quite ready to be released ... if I choose to do so. In this economy I cannot just take what I have done and release it for free and feel just (because I need the money it could garner), and yet I am torn by my appreciation for open source projects. I want to eat and I want to share as open source. I'm sure some understand my conundrum right off the bat.

As an example of the pros and cons of my project, here's a very quick comparison against CodeIgniter. My framework is 10x faster at the base speed (blank CI versus the basic demo of mine) and gets upto 20-30x faster elsewhere. Yet, my framework lacks many things that CI has like advanced routing (with regex, or named parameters) and ORM. If I was to compare it to a similar framework in another language, I'd call my work the Sinatra, or Ramaze, of PHP.

I need some extra income. This is a flat-out fact, and yet I don't want it to be a strictly commercial project.

I like open source, and I want to contribute my own work. Yes, I know frameworks for PHP are a dime a dozen, but I think I might have something here. So, I don't want to let my work go entirely.

So I remain torn. Licensing can help, but only when people are honest. I don't believe in putting "DRM" into my software. Yet, I don't have enough features to say, "If you donate/pay you'll get X other features!" and make a benefit to this.

How do I (can I) sell this? How do I promote it and release it as open-source for free uses? How do I license my work adequately for these purposes?

What is your general policy or tips for projects like this? Especially when you want a cut of the profit someone would get using your project commercially. What licenses, restrictions, etc, do you think would work in this model?

I appreciate any answers which might help me to figure out what to do.

Edit:

To clarify on what I'm thinking, let me add this: this is my pet project. It's something that I made because I felt its lack in the market of PHP frameworks, and have been maintaining it for my own works. But, unlike most my work, I would really like to make this public. I want people to see it, try it, use it, and work with it.

However, I've put in enough off-hours time into this for it to be just given away. I appreciate the open source model, but I don't see how I can just donate some 80+ hours of work for free for a speculative increase in my "reputation" within the software world. PHP frameworks are a dime a dozen and I think I've made a good one, but I'm sure there are just as many others who've done the same. Mine may be better, but it's got an equal or greater chance of being average to poor.

I'd love to release my pet project to the world under an open source license. But, I'd rather someone not take my work and make software that nets some $30k in profits, and not give me a small slice of it. I'm not being greedy--I wouldn't care if it were only $100 for a profit that large.

I am simply trying to figure out how, when, or if I even should, monetize the work that I've done for myself.

A: 

The best way might be to ask for donations. I would definately donate if I like your framework.

kthakore
I forgot to add that in my post but I agree. If I use something that I think is well done, I have no problem donating.
Cody C
Thanks for the encouragement. I just see that most projects that ask for donations net maybe $600 every year or two. It's a start, that's for sure, but we'll see the way things go.
The Wicked Flea
Oh, and that's for the known and more widely used (the moderate sized) projects that I know of.
The Wicked Flea
+3  A: 

I feel that if you actually believe you have started something big, release it to the open source world. If it get's adopted and becomes a standard for many, this in itself will open many more profit making opportunities for you as the creator/inventor. The biggest potential for you to make big money (in my opinion) is to be a major player/founder of a big initiative.

Cody C
wouldn't this take some time though
kthakore
Yes, but so would selling it to create income. Other than the few exceptions, making serious profit takes time.
Cody C
I'm not really after big money. I'm just trying to get _some_ extra profit from the things I've done for myself. Thanks for the answer, I'm just trying to gather some third-party opinions.
The Wicked Flea
A: 

You could try the QT model: Dual-license you framework with a free copyleft license (you'll have to check which one is appropriate) and a paid-for commercial license.

balpha
A: 

You better choose dual licence. Its similer to MySQL.

Jonathan itou
+3  A: 

To be absolutely frank, you probably have an overinflated idea of how good your framework is and how ready it is to be released (in any form).

Firstly, you said it took you three weeks to develop. Well if you can do it in three weeks, so can a bunch of other people and that's a fact.

Secondly, release of a commercial product would require having a license (count on a lawyer for this one), writing documentation, building a Website to promote the product, having some means of payment, getting a suitable legal structure to sell software, insurances (generally speaking you'd need some sort of professional indemnity--open source is generally provided without indemnity; commercial software is different), bookkeeping, accounting and so on.

Third, it's PHP so source code protection will be an issue. My advice would be to treat this as a social rather than technical problem, meaning if someone is going to steal your software, there's not a whole lot you can do. More to the point, don't hurt (or even inconvenience) your legitimate users for fear of pirates and thieves.

Lastly, one of the advantages of open source is that you can get community effort in development. You lose that as soon as you go commercial. Even if you go dual license, you can't take someone's GPLed (for example) code contribution and release it under a commercial license.

You may need money but selling software is generally a terrible way of doing it. A longer term view would be to have you build a profile and a name for yourself by people adopting your framework and the best way to make that happen is for it to be open source. Linux may be free but I can guarantee you Linus Torvalds earns a healthy income from his efforts.

cletus
Sure, folks could do the same in a few weeks--and I'm sure that many people have. But I have not found something similar to my own framework in the list of open-source frameworks at Wikipedia. Though I think you read to much into the, "I have something" remark--I never did say it was spectacular. I thought about the "donationware license" style, but I've only seen people get a few hundred dollars over the course of a year or two with that idea.
The Wicked Flea
Oh, if I had written this in Ruby or Python code protection would still be an issue. Even .NET software has this issue thanks to reflection.
The Wicked Flea
You're right about anything having this problem but disassembling (or using reflection on) Java/.Net code is still harder than PHP normally is (Zend encryption and the like notwithstanding).
cletus
It's obviously hard to comment on what you have because you're being understandably coy on that front. I'm just trying to emphasize how difficult it is to make money out of PHP in particular, where open source is overwhelmingly dominant. PHP also has a huge variety of frameworks from the lightweight CodeIgniter to the not-so-lightweight CakePHP, Zend (modular), Symfony, etc. It's hard for me to envision some niche there.
cletus
+2  A: 

If the framework is indeed good, and sees a minimum adoption after it is released, you might be able to land some PHP consulting work.

For me the main problem with new software is credibility - it might be the best software yet, but if no one is using it and if reviews are nowhere to be found, I don't want to be a guinea pig. Making money from commercial software can be very hard if you don't find customers early on...

This is why I would prefer to license it under a, "when you make money, I would like a donation/payment around 'this much' in size." So that those guinea pigs can have a chance to eat the food and decide if it fits *first*, and know they get what they paid for. I don't want to be a guinea pig either!
The Wicked Flea