Call for Contributors
Okay, here's the scoop. I make no secret that I consider myself to be pretty competent... In fact a number of people over the years have come to the conclusion that I'm downright conceited. :) On the other end of the spectrum a CF user group manager in Florida once in response to the question "who here has worked with x" at which I was the only person to respond said "well obviously, because Ike's done everything". I took it as a complement.
The reality is I'm just one guy and no one person, no matter how smart or how little they sleep can possibly know everything there is to know about ColdFusion, much less software in general. That being the case, I've always had a vision of the onTap framework being host to an array of plugin applications that operate as "services" to one another, creating a powerful software synergy between open-source projects and commercial products provided by entirely different people.
You would use the onTap framework as a foundation and then you would install the Members onTap plugin for managing your user information, onContact for contact information (my own commercial app), and then you would buy and install a CMS from some other vendor and a shopping cart from yet someone else. And all these applications would work together without requiring any tweaking or integration on your part. All the integration would be done for you by the framework!
Does that sound really cool? Well there's a name for it, it's called a Service Oriented Architecture (SOA) and it's something Sean Corfield has talked about a fair amount recently. Much of the underlying structure for this already exists ... in fact, most of it has been in the framework for a long time. The recently released Version 3.2 of the framework merely simplifies the management of these services and improves performance.
However! I don't know everything. I recently realized that I was somewhat behind the curve on caching techniques and I blogged at the time about starting a new project called CacheBox, which I plan to include in upcoming releases and hope will be used by other frameworks as well. And although I've had several people tell me already that they're interested in this new project, it's currently on hold. Why? Because Rob Brooks-Bilson is giving a presentation at the Adobe Max conference about advanced caching techniques for ColdFusion and I want to get his notes and pick his brain some before I make much more progress on that project (although I won't be at Max).
And herein lies the problem. I'm just one guy. I can't know it all! And I can't do it all! I've got loads of things I want to do, many that I've wanted to do for a long time, and just not enough hours in the day to do them. I need some help to make these projects fly. I've actually wanted more people to be involved in the onTap framework and contributing for a long time -- years in fact, since I started working on it. I honestly don't know why there aren't more people using it. There are probably a variety of reasons, but there's been very little feedback.
So this is my public admission that "I SUCK AT MARKETING" and at the same time an open request for more people to contribute.
So how can you get involved?
There are several ways you can contribute to the onTap framework.
- Make Suggestions: Simplest thing you can do. Is there something you've always wanted to be able to do with CF and haven't been able to figure it out? Email me and I'll see what I can do. And if I can't find a project that does it and I can't do anything about it myself, then I'll blog about it and we'll see if the community can provide a solution!
- Write about it: You can download it, check it out and write a blog about your experiences, good or bad, BOTH HELP! If you've tried it and had a bad experience, write a blog about it and shoot me an email. It may very well be that you had issues with something I myself didn't like and have since improved - OR - if not then I may be willing to work on whatever issue you're having. The worst case scenario is that we disagree about how to write software, in which case we can agree to disagree... but you won't know until you ask. :)
- Documentation: If there's anything you don't understand about the framework, or would like to understand better, just ask. If I've omitted anything in the documentation or if there's anything that could be better explained, I'm more than happy to update the documentation, and would love to include your articles or examples as well if you'd like to write them, it would help me out tremendously. :)
- Review / Contribute Code: Look over my code and see what you find. If you can improve it -- performance, better functionality, better security, whatever, send me your revisions and I'll see about including it in an upcoming release. Even if it's just comments in the code - I know a lot of my code doesn't have a lot of comments. If you're scratching your head, ask, I don't bite. :) And we can add comments wherever they might be useful.
- Write Plugins: DataFaucet is a good example of this. The DataFaucet ORM framework includes an onTap framework plugin in its distribution. What's it do? Not much -- all it does is act as a facade for integrating the DataFaucet ORM with the onTap framework. The installer may be a little involved, but guess how big the guts of it are? TWO files... yes, two. Not two-hundred, not twenty, TWO. Beyond that, the rest of the plugin is the installer... the installer is actually much larger than the plugin itself! What I'm really getting at here is that creating a plugin for the onTap framework is really easy to do and you may even already have a project or application that would work well as a service like DataFaucet or as a sub-application. Do you like Transfer? Would you rather use Transfer than DataFaucet? Write a Transfer plugin! I'm sure Mark would love to include it in his Transfer distribution and And of course, if you have any questions about how to write the plugin or the installer, just ask, I'm happy to help!
I'm looking forward to working with you!
ike

