Complaints About "Improved Extended Entry Script" Post

| 10 Comments

Since publishing my post "Improved Extended Entry Script and Template Code for MT", a couple of complaints have surfaced regarding what I wrote.

In an MT Forum thread, LisaJill posted a link to my post. In response, Girlie (a forum moderator) responded with this:

I'm all for improved versions of code, but I just don't think it's necessary to trash the person or persons whose code you're improving in order to do it.

Girlie mischaracterized what I wrote. I did not "trash the person" - I criticized the provided code. The criticism, although harsh, was rightly deserved. I stand behind every word I wrote. What should not have been necessary was the time and effort I put into fixing and documenting the code. I do not believe it was appropriate for a forum moderator to post her (misleading) personal opinion of my post in the forum. That is what her weblog and my comments are for.

In another MT Forum thread, I learned that ScriptyGoddess had posted an updated Show/Hide Comments Script, using my modified code as the base for her new script. In that post, ScriptyGoddess remarked:

(Side note: to Mr. Tweezer's complaint in his post about my not making it easier for him to use my scripts... I'm sorry- I'll refund your money... oh wait - this site is free and actually here for my OWN PERSONAL reference... Sometimes I even drop code here without explanation - just so I can grab it later. The "disclaimer" in the sidebar also says "we are volunteers, not paid tech support. In the end, you're on your own.")

My complaint with the original script was that it was hard to understand, not to use.

I don't know why ScriptyGoddess cites her disclaimer. I did not ask her for anything, not even to bother notifying her of the problems I found in the code. Considering that the script has been posted for 18 months (since June, 2002), the script is widely known and linked to frequently in the MT Forums and elsewhere, the disclaimer on ScriptyGoddess' web site, and the fact that the script had not been fixed even at this time, communication of any sort seemed pointless.

I spent quite a few hours learning to understand how the script worked, repeatedly testing and debugging it, then documenting my changes. I don't think this work should have been necessary, especially since the script has been around for such a long time. Since I did the work to debug it, fix it, and document it, I have earned the right to voice my opinion on the original code. It is not a service to anyone to post flawed code, free or not, supported or not.

If I was to make any request of ScriptyGoddess, it would not be for a refund - it would be to fix the code. I don't really care if she fixes it or not. To those who don't like what I wrote, and still think ScriptyGoddess' (flawed) code is so great, you are more than welcome to link to and use her code. But don't read things into my post that aren't there.

Update 10-Jan-2004: I looked at ScriptyGoddess' post today just to see if there were any interesting comments. She has edited the post:

(Side note: to Mr. Tweezer's complaint in his post about my not making it easier for him to use my scripts... I'm sorry- I'll refund your money... oh wait - this site is free and actually here for my OWN PERSONAL reference... Sometimes I even drop code here without explanation - just so I can grab it later. The "disclaimer" in the sidebar also says "we are volunteers, not paid tech support. In the end, you're on your own." Seems he decided to take that part down. How nice.)

Sorry, but I took nothing down. The entry is as I originally posted, except for a couple edits to correct and clarify my explanation of the invalid XHTML in the original code. It looks like my remark "But don't read things into my post that aren't there." was pretty much on target.

10 Comments

I'm very glad you have the time to tweak the code. **I do not.** I was **not** the "provider of the code", I just modified the orignal enough for it to work without the silly variable names. (I think you can notice I made my change without mention of my opinion of the original code or coder) I got mine to work enough for my satisfaction. I posted the code because it was USEFUL to ME. Other people found it useful for them too. I don't know why you think I or anyone else who publishes code for FREE has any obligation do anything more than that. We are not here to SERVE YOU.

I think you could have simply posted your code saying you improved it - without the dig. You can complain about the problem or you can be part of the solution. I guess you decided to do both. Personally, I think one was more useful than the other - and that other wasn't really neccessary and didn't serve any purpose except to show some light on the kind of person you are.

If it's any consolation, I use your modified code and I appreciated the insight you provided about the process. The criticism I saw was very light and no different than any other sort of literary criticism you see anyplace else, but this being the internet, people get butt-hurt over the tiniest slights. It seems the internet can conceal your physical features, with one glaring exception: It always reveals, with amazing accuracy, the thickness of your skin.

As tm knows, I was very happy about the code. I was using Aaron's code (I actually found the variable names rather amusing and had no intent of learning what the code meant...) because sg's failed miserably in firebird .7 when I tested it, as well as causing a huge slew of problems with the xhtml validator.

Since Six Apart put so much work into making mt produce valid xhtml that was a huge disappointment. Aaron's validated and worked xbrowser.

So, I was thrilled when tm fixed it, he validates his code (and helped me validate mine at one point =)) and uses firebird, so I was able to implement it without any question. I also was also able to see where it did things such that I could modify how it displays if I wanted to. With the two previous scripts that was impossible.

An in depth explanation is always of use to people wanting to learn, so again I was thankful for that.

Thanks TM. =)

Paul - Your comment is much appreciated (as well as the comments left by users in the original post). I'm glad that my code and explanations were helpful. Your remark about the internet revealing the thickness of one's skin made me remember something I was thinking as I was typing up this post - "allergic to criticism".

TM: I think there's a belief among a few that absolutely no criticism whatsoever should ever be employed. In their eyes, all criticism is mean-spirited. I don't subscribe to that viewpoint, since it encourages mediocrity.

There is unhelpful and just plain mean criticism, but then there's constructive criticism, which is meant to highlight deficiencies and help a person improve or see something they may not have noticed before. I've re-read your post numerous times, and it reads like constructive criticism. I wish everyone would go into the why's of their coding, because it makes it easier for people like me to learn and to modify the code myself if I see fit. I'd also like to see more criticism of code in general, as it might finally curb the bloated and screwy code that almost every application/script accumulates as it evolves.

You also use Firebird, which automatically makes you cool.

I think you miss the point. I completely agree that you improved the code. It validates. It works with other links inline. I wouldn't have linked to it otherwise.

What I take issue with is this:
'It would be much easier to implement said code if the provider of the code actually took steps to make it easier to understand instead of harder.'

I state quite clearly in the VERY SAME "disclaimer" that you copied a piece from, that I am actually NOT a "scriptygoddess" and that that was a joke. The point of the site was to LEARN from each other (not me professing to my readers. In fact, in most cases my readers know more about this stuff than *I* do!). I do not have all the answers. Your complaint was basically that I should spend my time explaining every aspect of the code I put on scriptygoddess. Aside from the fact that I don't have the time to do that - in some cases I understand it only from a very "high level" - as was the case with the code from Aarondot. I understood it enough to just change the variable names and still have it work well enough FOR ME. That you took the time to go into depth to understand everything that it was doing, document it, and improve it - I thought that was great! But I didn't understand why you thought that you "shouldn't have had to". That that was somehow MY responsiblity.

Why is it MY JOB ALONE to take steps to make it easier?? Hell - it's not even my code!

People post revisions to my code all the time in my comments. I LOVE it when they do - because I'm EAGER to learn how to improve my coding skills. When I first saw your post - I was psyched someone improved it. But you seem to think that I should have handed it to you on a platter.

I'm flattered that you think I know everything, and my "not taking steps to make it easier for you" is something that I could have done in that case - There's a LOT of code that I understand only enough to implement, maybe hack and modify a little. If you think everything is going to get handed to you on a platter by me, get used to disappointment.

What I take issue with is this:
'It would be much easier to implement said code if the provider of the code actually took steps to make it easier to understand instead of harder.'

Take issue with it all you want.  The code is unformatted, and the variable names do not give any indication of what information they store, as I said in my post.  It is either something you do or something you don't; you did not and all I did was point that out.

"Your complaint was basically that I should spend my time explaining every aspect of the code I put on scriptygoddess."

Actually, it wasn't.  I didn't even explain "every aspect" of the code I posted - I focused on explaining the problems I found and the changes I made to the code.  There is no explanation of the javascript statement "if( document.getElementById ) {" and what it's purpose is in the code - you either know what it does or you don't.  The point I was trying to make is related somewhat with what you said later in your comment:

"...because I'm EAGER to learn how to improve my coding skills."

There is a concept in programming circles called "self-documenting code".  What this refers to is writing code in such a way that someone else who has never seen the code before can figure out what it does and how it does what it does without having to have the programmer explain it personally or having to spend hours/days/weeks trying to decipher it.

Again, this is something you either do or don't.  If you formatted your code and used meaningful variable names, your code would be easier to read and understand.  You can take the advice and improve the readability of the code you post or not - your choice.

"But I didn't understand why you thought that you 'shouldn't have had to'. That that was somehow MY responsibility."

Why is it MY JOB ALONE to take steps to make it easier?? Hell - it's not even my code!

People post revisions to my code all the time in my comments.

Is it your code or isn't it?  Generally, my opinion is that if you modify code and then post it, that code is yours, even if you did not author the original code the modification is based on.  An example:  You took my code for extended entries and changed it so that it would do inline comments instead.  If someone has questions about the code you posted, who is the proper person to ask?  Hint: You are.  That code is *yours*, even though I authored the code you based it on.  No person in their right mind would believe I am responsible for the modified code you posted.

For code that has been in wide circulation for 18 months, no, I don't think I should have had to clean it up and debug it.  I do think the primary responsibility for this rests with you, since you modified the code and posted it on your weblog.  I found it pretty incredible that in that time, you nor anyone else that has installed and used the code analyzed the code enough to even figure out why it does not produce valid XHTML.  This fact alone implies nobody cared enough about the code enough to figure it out and fix it.  Certainly not you, and if you don't care about it, why should anyone else?  It does not have to be "your job alone" to take steps to make the code easier to understand, but I really don't see where you took *any* steps.

But you seem to think that I should have handed it to you on a platter.

If you think everything is going to get handed to you on a platter by me, get used to disappointment.

You are exaggerating what I said.  You certainly can post whatever code you want, in whatever format you want, refuse to accept any responsibility for it, and not do a single thing that would make it easier for any user to understand and use.  It is not something I would consider a virtue, though.

My dear, sainted Mother used to tell me that it's not always *what* you say, but *how* you say it that matters most. I think we can see a little of that here. I think I can understand how someone who doesn't know you might find your reference to the code snippets as "stupid" or "flawed" as confrontational. Perhaps a different approach would be to say "x" is the problem (it doesn't validate, for example), so I modified it successfully.

I think a lot of people would appreciate the professional style effort it takes to make the changes you made if it were presented in a professional style (aka sans confrontational language).

Anyway, that's my 2 bits (which is probably a lot more than it's worth!)

I do believe that your comments could be interpreted badly. I frequently edit existing code for my own use and post on my blog just in case someone else can find use with it. This doesn't mean that in the 18 months since I posted it I should feel obligated to ensure it is a perfect code - if it was a paid service I was offering then sure, but criticising someone for providing a base code is in my view out of line. If you didn't want to put time and effort into altering the code so that it works for you and others just don't do it, but don't do it and then lay down the law because she didnt.

How is it?