I have written my share of MODs. You just won't see most of them here. There are several reasons for that. First, the code may have been written for a client. It becomes their decision whether to release that code here or not, and most of the time they do not.
Second, if not written for a client, then the MOD is written for one of my own boards. I will sometimes float a trial balloon topic here to see how much interest there is, and if there isn't a lot of interest then that MOD won't be released here. Here is one example
of something that I thought would be useful, and plan on writing for myself, that got a less than even lukewarm reception here. So odds are that even if I do get that one done, I won't bother to release it here. In this case it isn't the MOD process that would keep me from releasing the MOD here, it's the lack of market.
If the community doesn't appear interested, then it's not going to miss it if I don't submit it.
Third: Duplication. There are often MODs that I read just for the description or the idea of what they're doing, then go and write my own. There are MODs that I've downloaded and looked at (I will not provide any examples, other than many of them did not
originate from this site's database) that are very poorly written. Or maybe it just doesn't work the way I want it to... so I write my own. Since there is already one MOD (or sometimes more) available that provides the function, I don't take the time to release mine.
Fourth: Complexity. And this probably comes down to the crux of the question, how long does it take to write the code versus how long does it take to package the code into an acceptable format for submission. If you look at the MODs I've submitted to the database, most of them are there because they are simple. Here
is probably the best example of that... a one-liner.
It's such a simple change, but can really help (at least in my opinion).
I can spend as much time (or more) getting the MOD ready to submit as I spent writing it. When I write MODs, I'm generally writing something that I want for myself. That means that the codebase I'm starting with is already heavily MODded. So for me to release a MOD here I have to...
- Write and test the code
- Set up a "vanilla" phpBB board of whatever the latest version is
- Remember (or document) everything I did
- Apply all of the steps that I wrote down
- Test, go back and find the steps I left out (Repeat until done)
- Write up all of the steps in the MOD template
- Post here for testing / feedback from other users
- Submit to the MOD-DB
The biggest part of developing a MOD are steps 3-6. Many times after I've written the MOD I find that I am just not interested in doing those steps. I am trying to submit more of my stuff to the MOD-DB, and I'm in the process of writing some code
that will make the process easier for me.
Brief side-track here... there is a huge market for EasyMOD. I don't personally use it, but I certainly understand the attraction. The market for MOD installers is obviously much
larger than the market for MOD authors. Having said that... what would be awesome would be a MOD-Maker, something that you could point at two different versions of phpBB (and not necessarily "vanilla" versions), extract the differences, and write that up as a MOD install file. That would make creating MODs a no-brainer. All I would have to do is create a back-up copy of the initial code, develop my MOD, and then run the MOD-Maker on the two versions. That eliminates all of the steps that I personally find take the most time.
Clearly I would still have to validate the install instructions on a vanilla board. Believe me I do understand the challenges that such a program would face.
It's not a trivial process. Think of all the decisions that you (as a MOD author) have to make when writing up your MOD template, and try to encapsulate that into code. Wow.
But that's my answer to the question. None of it is intended as a criticism of the process, so please don't take it as such. It is intended to be an honest look at why at least one MOD author (played in this episode by "me"
) doesn't have as many MODs here as I could.