Call to Developers
I want to challenge architects and developers to improve the sophistication of their architectures for web applications. To do this requires new and sophisticated frameworks. I cannot hope to implement these frameworks single-handedly nor do I expect to have a good handle on all the varying complex requirements that other developers might need. However, I have a number of good ideas born out of my own Web 2.0 architecture experience that I just can't let go. I'm the sort of guy who gets frustrated with tools that don't do exactly what I want and need me to fix them or write repetitive and superfluous code. I often say "There has to be a better way to do this that will save time and be more fun". To this end I am publishing my design patterns for the future of Web 2.0 and calling for developers to participate in projects to implement them as frameworks. I will specify the semantics of the frameworks up front as much as possible, however, I expect this to change as we gain real world experiences with them. I will control the overall architecture of the platform and influence all frameworks so that they are integrated properly and consistent in their semantics and syntax. Apart from that you can have a free reign in implementation of the specs and experiment with new ideas that enhance or even challenge the current specifications.
Priorities
Co-operative source
This is not an open source project. Contributors must apply and be accepted before getting access to the source code. E-mail me at keith@DaringDeveloper.com to apply. The source code will remain the property of Daring Developer (a trading name of The Foster Family Christian Trust, Australia) owned by Keith Foster. Initially the binary frameworks will be made available free for non-commercial use. When the frameworks are deemed useful in a commercial context I intend to license the technology at a very low cost in order to make them a defacto standard. I do not intend to make money from the frameworks directly. I hope to build some form of IDE and/or domain specific languages and editors on top of the frameworks and this bundle of tools will be sold to developers for a reasonable price including support.
As the name "Co-operative" implies, contributors will be accorded shares in the project. Any profits will be distributed proportional to the number of shares. These are not real company shares. They are shares calculated based on the value and size and complexity of the contributions made to the projects. Initially I will make this determination, however, I expect, to devise a formal system later, if the project grows in scale with many contributors. Contributors will not own any IP so they have no legal claim on the assets of the project, however, I intend to make the records of all contributions and their shares public along with the revenue and profits of the projects so the whole process is transparent and I will be made accountable. My incentive to stay honest is the fact by doing this my reputation and the reputation of the product and Daring Developer are on the line. It would not be in my interest to shaft the contributers as they will be the only thing keeping the project growing and keeping support available to customers.
On the other hand, I expect contributors to provide on-going support and maintenance for their contributions in exchange for the shares and any revenue they may receive. They risk losing the revenue and shares if they fail to provide adequate and timely support. This will be determined by me but I expect to write some form of SLA when things heat up. Of course the expectations for support and maintenance will be low as initially this is not a commercial project and more like an open source project.
If and when the project is successful, goes commercial and makes profits, I expect a business to be formed and many of the core contributers will be offered real jobs to continue what they have been doing and the others will still receive revenue payments according to the original rules. I would also expect a thriving developer community and market place to grow around such a business so early contributors will be able to command higher consulting rates in external commercial projects.
Anyway, all this is very premature, as it is rare for a project like this to make profits and when they do its many years in the making. I recommend contributers treat themselves more like volunteers and aim to make their work pay off in enhancing their person skills and marketability as a consultant or employee. The main aim here is to change the world and have fun doing it. Financial pay-offs are sure to come one way or another by the fact that your improving your skills and value to commercial projects.
© 2008 Keith Foster. "The Daring Developer" was created for people who share an insane excitement about advanced software engineering.