|
|
|
On May 4, 2020, I revised my article "JHelpers - A Good and Faithful Servant[^] significantly, even changing the title, shortening the article, removing the previous code blocks, and adding a URL to the code in a GitHub .NET project.
I saved the changes after proofreading, verifying URLs, etc., then submitted it. I saw a notice that the article was submitted and would be reviewed.
Now I get an email (on the old article that was replaced), from who knows at CP, with no opportunity to respond. If CP is going to reject an article, why delete it and why hide behind an "unattended email box"? I did finally find the revised article at:
Build or Buy - A Simple Explanation and Example[^]
Hi MSBassSinger,
Your article 'JHelpers - A Good and Faithful Servant' has been reported by digimanus, Nelek, Rhuros, Afzaal Ahmad Zeeshan, MehreenTahir and has been closed, with the reason being given as The post is not clear, or is incomplete and has not been phrased in a way that allows it to be fully understood..
If you wish to revise and reopen your article based on the feedback from these members then simply visit JHelpers - A Good and Faithful Servant and click the "Update my article" link. This will enable you to edit and update your article and will re-open your article for other members to enjoy.
________________________________________
CodeProject
Note: This message has been sent from an unattended email box.
First, I renamed the title, which disappeared. Second, my changes to the article are there, but not the one addressed by the email, and the link refers to the old article. Third, the reason makes no sense whatsoever. Both the old article and the revised article are quite clear and easily understood by any developer.
Where is the recourse to have bad decisions like this discussed, instead of being arbitrary?
Not hiding behind an unattended email box,
Jeff Jones
MSBassSinger@comcast.net
modified 5-May-20 12:26pm.
|
|
|
|
|
|
|
We allow for article moderation from the community to help guide content on the site. In this case it seems the community viewed the article as either "unclear or incomplete" or "wrong type" (usually this means they think it should be a Tip). Looking at the older versions of the article there is a lot of exploration into the code, and in the newest iteration it gets a little too close to tool sharing rather than teaching the reader about the code. If you can find a better balance between discussing the code, how it works, what you learned, and make sure to have a link to the full source code, I'd be happy to restore the article.
Thanks,
Sean Ewington
CodeProject
|
|
|
|
|
I do have a link to the full source code of using the library, but not the source code of the library. No developer should be required to surrender intellectual property rights just to publish on here. If I were writing the same topic about a proprietary third party library (Syncfusion, etc.), would you require them to surrender their intellectual property?
Second, the topic of the article is about using value engineering to decide the "build vs buy" question. The NuGet package made for a simple example.
Why did the email not suggest moving the article to "Tip" or another location?
And if I did want to share about the use of a free NuGet library, what is the appropriate place?
If a tiny percentage of CodeProject subscribers are going to appoint themselves as censors, at least provide some constructive advice.
|
|
|
|
|
Unless they are paid for, we typically only allow articles on third party products or services provided they follow a series of guidelines. For example, ideally they would be articles pointing out some workaround with that product or service they couldn't find elsewhere.
We offer the members a series of choices on how to report an article. The email generated really just communicates the report that was selected the most. I agree it's not an ideal system, but a larger series of more specific items might not work very well either. We actually don't have a "this should be a tip" report, or email. I was simply letting you know that that's what the members who used the "wrong type" report probably intended. Had you submitted the exact same article as a Tip, it would not have ultimately been accepted either. It would still require more explanation of code, what you learned, and how it all works.
I suppose this would be an appropriate place to simply share a free library: Free Tools Discussion Boards[^]
Sometimes members write helpful suggestions in the article forum while the article is in Pending status. Sometimes I remove the article from the approval queue and send the author an email detailing what they need to do in order to get the article approved. Oddly I don't recall seeing this article in the queue. But perhaps I can brainstorm some ideas with the team on how to make some of the default emails could provide better communication, or at the very least, a clear way to reach out to the staff for clarification.
Thanks,
Sean Ewington
CodeProject
|
|
|
|
|
Thank you for a helpful and useful email. Allowing such a tiny percentage to keep an article from being published does not seem right. A tiny number winds up acting as censors who clearly let it go to their head.
The article I wrote succinctly, but completely, discussed the aspect of how to make build versus buy decisions - a workaround for one small aspect of software engineering, the value engineering in a build vs buy decision. The article explained what I learned, and how I apply what I learned. After 40 years of professional software development experience, I think I know the difference between something useful and useless.
A wiser approach would be to publish the article, and if there is a more significant number of complaints, then remove it. Why not let developers express their own opinions in the comments, which they cannot do if it is not published? Shouldn't developers decide for themselves, rather than a handful of developers that think they know what is best?
Your first few words may explain part of this - "Unless they are paid for". I am not advertising a third party tool here, just using it as an example.
Again, I appreciate that you took a helpful and informative way of responding.
|
|
|
|
|
The intended focus of CodeProject articles is on the code itself, code teaching, code learning. It's mostly what CodeProject readers are looking for. The older version of your article had plentiful discussions of code.
I am not suggesting your article is useless, I am suggesting that our readers are looking for something different. The Articles Needing Approval queue kind of acts as what you're proposing. All the members that are able to see it are established CodeProject authors and members themselves, and are able to report whether or not they think an article should be published. They are free to express their opinions of the article in the comments, but they are not required to do so. This helps prevent very poor articles from being published, as well as plagiarized articles (quite common), and spam (an every day problem). It also affords authors an opportunity (though as you discovered, not a guaranteed one) to get feedback to improve their article to make it more suitable to CodeProject's submission guidelines. Nine people made reports on your article, but none of them reported to Approve the article. If you were to make the aforementioned changes to your article, I am sure it would stand a better chance of being approved.
Thanks,
Sean Ewington
CodeProject
|
|
|
|
|
So simply reverting the article to its previous form is acceptable? Those "aforementioned changes" have not been clear, as I would expect from an objective reviewer.
When a few purport to speak unilaterally for the community, generally the community is never involved. Perhaps, especially given the snarky replies, the few are more concerned with their own power and not the community.
I have clearly explained how the article meets the required criteria. I could make a new article, get long-winded, and use someone else's third party control as an example - why would that be any better? How do you know your readers would not be interested in an article on deciding between build vs buy? That is something all developers have to decide as part of development.
It is clear to me that if you and the others are truly interested in letting developers decide for themselves what they want to read, this article should not have been blocked. None of the snarky responses provide any valid points of argument. I asked for specific items that would, as you say, constitute "aforementioned changes", but none were provided. You have been the only person with something constructive to say. Perhaps you could list those "aforementioned changes". Then I could look at revising the article.
Thanks
|
|
|
|
|
MSBassSinger wrote: Perhaps, especially given the snarky replies, the few are more concerned with their own power and not the community. I supposed you are speaking about me, since I am the only one who got the "snarky" adjective in the thread. If you really think I am more interested in showing my power than anything else... then you are not often enough here.
MSBassSinger wrote: So simply reverting the article to its previous form is acceptable? For me, it would. And since you already wrote it, if you still want to talk about it, you could add the content regarding "build vs buy" at the end, just before "points of interest"
MSBassSinger wrote: You have been the only person with something constructive to say. Pity... I really tried to talk with you. You asked and I explained you the why of my report (and probably the others').
Since it looks like you are not interested on what I could tell you at all, I say good bye and wish you a nice day.
M.D.V.
If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about?
Help me to understand what I'm saying, and I'll explain it better to you
Rating helpful answers is nice, but saying thanks can be even nicer.
|
|
|
|
|
Certainly. In a previous comment I suggested altering your article to: Discussing the code, How it works, What you learned, and add a link to the full source code.
As a starting point, here’s an example article from one of our top authors:
http://www.codeproject.com/Articles/225692/Html5-WebWorkers-experiment
His primary goal is to demonstrate “Using HTML5 WebWorkers and a custom jQuery plug-in to create a Flickr image wall.” He treats the reader like a beginner. He defines jQuery, explains what WebWorkers are, then gets into why he wanted to create a jQuery plugin. Each progressive section of the article expands on his topic, thoroughly explains the code, explains the limitations he chose in his scope, discusses how each element to his plug-in works, provides numerous code examples, and most importantly, gives a source code download at the top for the reader should they need it.
Drilling down a bit more specifically:
Discussing the Code / How it Works
In Version 4 of your article you have a discussion of Extension Methods, for example, showing certain extension methods and explaining their role in the whole. This is good stuff.
However, using the HTML5 WebWorkers article as an example, there is a step you can go beyond just to listing methods and explaining what each method does. For example, in the HTML5 WebWorkers article there is a section on Custom jQuery Plug-in. He displays the code for the jQuery plugin, and says, "The jQuery plug-in that I wrote does a pretty simple job. It is applied to a specific element, where the jQuery plug-in would accept an array of search terms. For each of the search terms, a new WebWorker is spawned that will do an AJAX Flickr search for images that match that search term. For each WebWorker spawned, my custom jQuery plug-in will hook up to both the onMessage()/onError events from the newly spawned WebWorker. When the WebWorker completes, the WebWorker calls back into the jQuery plug-in, at which point an image wall is created," which basically summarizes how the plugin works. It gives a larger picture of the code he's working on, so there's more to learn from it.
What You Learned
In Version 4 of your article you mostly explain Methods and Functions and Properties. It's not absolutely essential, but it does colour the difference between an article that is focused on teaching, and an article that mostly seeks to share a tool. Going back to an example in the HTML5 WebWorkers article, there is a section that reads:
"OK, so we have the ability to run threads, but unfortunately, we have no threading objects to ensure the communication of these threads, and ensure that there is thread safe access to shared data structures. Seems quite a big oversight. What it does mean is that your WebWorker and its related message handler within the host must pretty much be self contained and not access any shared data structures. I fell into this trap with the code within this article where I was populating a common array, until I realised that this was probably not that smart, and I then moved the array to be scoped locally to the WebWorker, and then it was all OK."
This is valuable in that people using the article as a learning resource can use this experience themselves. Maybe they have experienced similar things, or thought also along the way to populate a common array. Now they know not to do that.
Thanks,
Sean Ewington
CodeProject
|
|
|
|
|
MSBassSinger wrote: from who knows at CP
MSBassSinger wrote: hide behind an "unattended email box"?
MSBassSinger wrote: Not hiding behind an unattended email box,
MSBassSinger wrote: has been reported by digimanus, Nelek, Rhuros, Afzaal Ahmad Zeeshan, MehreenTahir That is very clear who did it.
Social Media - A platform that makes it easier for the crazies to find each other.
Everyone is born right handed. Only the strongest overcome it.
Fight for left-handed rights and hand equality.
|
|
|
|
|
With no avenue to appeal the censorship.
|
|
|
|
|
MSBassSinger wrote: changing the title, shortening the article, removing the previous code blocks, Maybe you did too much shortening?
Quote: My primary point with this article is to look at a process a developer can use to decide whether to write some general functionality, or to use a library. Of course, the secondary point is that JHelpers is just such a library availabe for use, if desired.
You speak about a library that should help me reducing my development time, but you don't explain anything about your library in the technical point of view.You don't give me anything that makes me want to invest my time in checking your library.
Even the new title:
Quote: Build or Buy - A Simple Explanation and Example
The new version of the "article" is more a marketing text than a technical content.
That's why I reported "unclear / incomplete"
And sorry... I still think the same.
MSBassSinger wrote: Where is the recourse to have bad decisions like this discussed, instead of being arbitrary? We are doing it right now, aren't we?
M.D.V.
If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about?
Help me to understand what I'm saying, and I'll explain it better to you
Rating helpful answers is nice, but saying thanks can be even nicer.
|
|
|
|
|
How is it Marketing text" when nothing is being marketed. Nothing for sale. Nada.
The article clearly explains, and focuses on, a way to apply value engineering to the "build vs buy" decision. Code that allows a deeper look at the use of the NuGet package is in a public GitHub.
A reasonable developer, interested in the topic, would then look at some of the functions provide, and think about how long it would take him or her to write it themselves.
As for the snarky "We are doing it right now, aren't we?", only because I had to dig and go to this forum, instead of a simple link in the anonymous email allowing me to have a discussion with those who complained.
What, specifically, is unclear of incomplete? The article defines its purpose, explains the thought process of the purpose, and then offers a conclusion. It doesn't get more clear than that.
I am willing to address any specific flaws you see, but subjective generalities are no excuse for censorship.
I hope you can provide some specifics.
|
|
|
|
|
MSBassSinger wrote: How is it Marketing text" when nothing is being marketed. Nothing for sale. Nada. Neither any technical content is being discused.
If you had tried to sell something, then not only your article would have gone, but your account too.
On the other hand, you mention your JHelpers in almost every paragraph, in the middle of some text that actually has nothing to do with it and telling the name brings nothing to the text or what is being explained in it. Hence, yes, for me this is marketing.
MSBassSinger wrote: The article clearly explains, and focuses on, a way to apply value engineering to the "build vs buy" decision. More the content of a blog.
MSBassSinger wrote: A reasonable developer, interested in the topic, would then look at some of the functions provide, and think about how long it would take him or her to write it themselves. Yes, but you are publishing in codeproject. Please read: Code Project Article FAQ - article requirements[^]
MSBassSinger wrote: As for the snarky "We are doing it right now, aren't we?", only because I had to dig and go to this forum, instead of a simple link in the anonymous email allowing me to have a discussion with those who complained. It is not an anonymous email, it is an automatic generated email by the server (not the same). And it is informing you about what happened and who did it, so neither it is anonymous.
MSBassSinger wrote: What, specifically, is unclear of incomplete? The article defines its purpose, explains the thought process of the purpose, and then offers a conclusion. It doesn't get more clear than that. And yet you miss the point of "technical" article. Forget the "unclear" and think in "incomplete". You are trying to promote your library, describe your library.
MSBassSinger wrote: I am willing to address any specific flaws you see No, you are not. A CP Editor told you some very valid points. And I am trying to tell you other points, you are refusing to see them and "fighting back".
MSBassSinger wrote: but subjective generalities are no excuse for censorship. The site works for and by the community. It has been like that since the very beginning and I suppose (I can't foresee) that will continue being like that for a while. And a community is full of individuals with subjective opinions. That's why it is always needed several matching opinions before any action.
MSBassSinger wrote: I hope you can provide some specifics. That's what I have been trying to.
M.D.V.
If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about?
Help me to understand what I'm saying, and I'll explain it better to you
Rating helpful answers is nice, but saying thanks can be even nicer.
|
|
|
|
|
|
|
.
"the debugger doesn't tell me anything because this code compiles just fine" - random QA comment
"Facebook is where you tell lies to your friends. Twitter is where you tell the truth to strangers." - chriselst
"I don't drink any more... then again, I don't drink any less." - Mike Mullikins uncle
|
|
|
|
|
|
.
"the debugger doesn't tell me anything because this code compiles just fine" - random QA comment
"Facebook is where you tell lies to your friends. Twitter is where you tell the truth to strangers." - chriselst
"I don't drink any more... then again, I don't drink any less." - Mike Mullikins uncle
|
|
|
|
|
|
|