The Downward Spiral

Published January 27, 2011
Advertisement
Reading the community journals these days is a disheartening task of shoveling through the mud and the muck to find rare gems. As the layers of filth get deeper and deeper, the payoff becomes less and less worth it; hence, The Downward Spiral.

Today I ran across the start of a so-called "tutorial series" on software engineering: The Begining [sic]. I tried to post my thoughts there as a comment, but in the infinite wisdom of the new forum software, users are allowed to moderate comments to their own blogs, so I had to make a separate entry. Besides being a prime example of the previously mentioned "mud and muck", it's also the poster child for Josh Petrie's seminal blog post: Don't Write Tutorials. I'll highlight some relevant sections for you in case you don't want to read it:

Josh Petrie said:
The larger problem with tutorials is that there are just so many of them, and most of them are written by people who at best have only a passing understanding of the subject. Frequently the author lacks even that basic foundation, and just thinks he or she understands the material (see "Unskilled and Unaware of It")..

Stonemetal's tutorial is not software engineering. Encouraging people to do error checking, which is a basic programming practice, is a good idea of course, but he's picked one of the lousiest possible examples to explain it with. But disregarding the "moral" of the post, which is ridiculously narrow and yet manages to be so overly broad as to be useless, let's look at the far worse transgression:

Josh Petrie said:
In short, tutorials should only be written by people who are very experienced – indeed, experts – in the problem domain. Even then there are dangers; just because somebody knows the subject well does not mean they have the requisite communications skill to pass that information on in a clear, understandable format.

Now, it's obvious that stonemetal isn't an expert here. But more than that, the layout, structure, formatting, mechanics, and grammar are absolutely hideous. He's misspelled several words, including the very name of the entry. Furthermore his explanations are scatterbrained, anecdotal, and filled with vague speculation and nonsense like this:

stonemetal said:
So now some definitions of technical terms: right: this method has worked for me in this situation in the past, wrong: doing this has blown up in my face before or typically it makes things harder than necessary.

Since when are those technical terms, and why didn't anyone else get the memo?

stonemetal said:
so how would we do this with exceptions why the function std::cout.exceptions gives you access to what will throw an exception and allow you to set what will throw an exception.

I can't even begin to comprehend what this... "sentence"... is trying to explain, but it's hardly even English.

Please journal writers, for the love of all that is good and decent, do not write more of this. Perpetuating more of this filth on the unsuspecting internet is not only pointless from your end but damaging to any beginners who read it and think you might know what you're talking about. You should spend your time studying real software engineering and programming practices, and work on your communication skills as well while you're at it.
Previous Entry Job Interviews
15 likes 18 comments

Comments

a_insomniac
Kinda harsh eh? :huh:

IMO the OP is just exersising the right to post what's on his mind in his own way regardless if we think it's technically sound or not.

+1 for agreement that there's a lot of crap via journals and blogs on the Internet though. I know this because I've contributed my fair share over the years and I still do. Thus the beauty of free speech...you are free to say it and others are free to ignore it.

With that said, you obviously exercised your freedom to write what you wrote but at some point "one" has to consider the "community" as a whole.

Personally, I'd rather participate in an environment of sharing, learning and just overall fun without the fear of feeling slighted because of something I wrote of which could have either:
[b]
A)[/b] Been ignored
or
[b]B)[/b] Addressed in a way to educate


IMO one of the purposes of technical communities is to balance out the information on all levels which in turns edifies the group overall.


You appear to have the skill and talk a good game so why not the attempt to edify?

I'm not trying to attack you and I apologize upfront if my reply implies as such...I'm just saying your comments about Stonemetal are a tad flippant and would have definitely hurt my feelings.


January 28, 2011 01:47 AM
Mike.Popoloski
I tried to make this less public by making a comment on his article, but he has it set to approval and he did not approve it, so I had no other recourse but to post my thoughts here.

The fact is, his "article" was terribly written and downright misleading, so it's up to us to disabuse him of the notion that he knows what he's talking about so that the quality of information in the community as a whole does not suffer and degrade precipitously.

This is not personal nor do I think it's unreasonable, but obviously people don't like being told they're wrong, hence the negative connotation given my post.
January 28, 2011 02:00 AM
Servant of the Lord
80% people don't like being told they're wrong, but 99.9% downright hate being told they're wrong, insulted, and embarrassed in public, especially when they were trying to help others (regardless of their motives for doing so).
([i]Note: Percentages made up[/i])

I'd say, it shouldn't even have been a comment. It'd be best as a Private Message, not discouraging him from trying to help others, but encouraging him to gain more knowledge before doing so and also linking to the articles you mentioned in your post, while still clearly getting the message across that tutorials about professional programming ought to be written by professional programmers, otherwise people will be getting taught unprofessional programming, which they'll be forced to unlearn later.
January 28, 2011 03:03 AM
Aardvajk
Nah, if stonemetal has the right to post crap tutorials then Mike has the right to call him out on it. That's what happens when you post something publicly on the internet and to disapprove a comment that criticises your work has a simple name - censorship.

If stonemetal had approved Mike's comment and then attempted to defend his work in the same public arena he posted it, there would have been no need for this separate post.

I say that if the journals are now free, disable the locking and approving mechanisms so they work like posts in the forums. We never had these features when we paid for our journals.
January 28, 2011 02:28 PM
F1N1TY
Just wait until I start a Journal ^_^<br>
January 28, 2011 04:18 PM
Servant of the Lord
Mike certainly has the right to make this entry, and I'm not saying otherwise.What I am saying, is that stonemetal's tutorial wasn't professionally written, and Mike is ironically calling him out for it in an equally unprofessional manner ([i]In my[/i] [i]opinion[/i]).
The professional way to inform stonemetal of his unprofessionalism is through private correspondence, I'd say. The points Mike made in his entry were valid though - people need to stop writing "tutorials" in the same way they text their friends.
I also agree with removing the censoring ability for comments.
January 28, 2011 07:37 PM
Aardvajk
Well, I hear what you are saying Servant, and Mike's journal comments probably aren't the best place to have this discussion, but all I would say is that one of the strongest points of this community to me was always that anything posted [i]had[/i] to be subject to peer review - posts, articles, journals - anything put on GDNet was open to be commented on, rated etc etc.

This is a good thing. This has maintained the standard of information here. Now and again I delve into other sites related to C++ (my own thing) and see terrible, terrible things going unchallenged and there to hurt beginners learning.

What concerns me more than the free journals now is the ability to block or prevent comments on content. This, to me, seems to be inviting content to appear under the GDNet banner [i]without[/i] the benefit of community review.

If you want to blog without peer review, such services exist. But if the GDNet logo is at the top of a page of content my view is that the GDNet community should be able to comment on and criticise that content.

What do you think?
January 28, 2011 08:26 PM
Drilian
I can sort of see both sides of this one:

1. It's stonemetal's personal blog (hosted by gdnet), and thus, he should be able to moderate comments if he wants, just like he could if he'd posted it to Wordpress or some other standard blogging site.

2. It's on gamedev.net and part of all of the content here has traditionally been the ability to freely comment on, without restriction.

Personally, I would like to see gamedev not allow this sort of comment moderation on dev journals hosted here, as it would keep the content posted to the site at a higher standard of accountability, but considering other choices made in the site redesign, I don't think that's particularly high on their list.

If he wants to moderate comments on his posts, he could post them to a 3rd party blog, but I'd personally prefer it if journals on gdnet didn't have that capability.

tl;dr: I agree with Aardvajk on this one :)
January 28, 2011 08:38 PM
Servant of the Lord
Yes, I completely agree with you Aardvajk. I think the ability to stop comments is not a good thing - I believe we are all in accord on that matter. Though I think it should be either "Disable all comments" or "Allow all comments" - because I'm sure some people don't want to pay attention to any comments on their blog. However, "Only allow the comments that make me look good" is not a good feature.

I'm all for peer review and community moderation also - my only deviation of opinion is, "Hey, he's a kid" (I assume), "[i]don't drive him away from helping people[/i], just encourage him to pursue more knowledge first before he does so."
Now if he is [i]repeatedly[/i] spreading misinformation to beginners, that is when you oil up your whip for 40 minus 1 lashes. [img]http://public.gamedev.net/public/style_emoticons/default/wink.gif[/img]
January 29, 2011 01:27 AM
Gaiiden
So while I agree with the purpose and core idea behind this post, I certainly don't think any consideration was given to user stonemetal whatsoever in regard to his possible motives for writing the post in question, as Servant of the Lord points out in the comment just above me. Mike, there was no need to make a ton of assumptions about him and then base your declarations and subsequent trash talk upon those assumptions. This all also could have been said, IMO without the need for an apparent ego trip as well. In addition to people not liking being told they're wrong, as you said Mike, they also don't like being told they're wrong by someone who automatically asserts that they are better than them. Again, this post was good in its intention, but bad in its execution.

Regarding the commenting issue - I will bring it up before the staff. Like a lot of things with this new system, there are hundreds of settings we simply have not touched. I have a feeling we'll all agree with not allowing users to moderate blog comments - again for the same reason Servant of the Lord gives in his comment above, which I feel personally is a very valid point.

But I also really love you and want to make out with you.

EDIT: Apparently I (Mike.Popoloski) am allowed to edit anyone's comments as I see fit, hence the above line. I was going to change everyone's comments here to say "I totally agree with you Mike", but I thought that might be a little hypocritical B)
January 29, 2011 02:44 AM
Mike.Popoloski
I really do wonder what you think the assumptions I made are. I didn't realize I'd made any; all of what I said is easily verified by looking at his post. Additionally this isn't "trash talk", it's a harsh criticism of publicly published content. There is also no ego trip involved, since this post has very little to do with me at all.

You're right though that I didn't give any thoughts at all to stonemetal's motivations, because frankly I don't really care. All that really matters to the people who go looking for content is the accuracy and usefulness of that content, which depends exclusively on technical merit and skill in communicating it; all the good intentions in the world won't magically make it so.

I think you just wanted to denounce my post with "that wasn't nice", which isn't much of a reason not to do something and indeed hasn't been ever since I got past second grade.
January 29, 2011 04:18 AM
Shadowdancer
I totally agree with you Mike
January 29, 2011 07:15 PM
Aardvajk
Part of GDNet being what it was was the fact that concerns about harshness were secondary to concerns about quality. Post here, get criticised, deal with it. Christ, the one article I ever submitted here was torn to bits and rightly bloody so.

Gaiiden - why, suddenly, are the motivations of the poster relevant? I thought we just cared about the content? Do we now have to assess the age, motivation and mental state of the poster before we dare criticise their posts?

Don't really know how to do that reliably.
January 29, 2011 08:58 PM
Jason Z
While you may be making valid points (moderating comments is completely stupid - I whole heartedly think that should not be an option), you fail to make a vital distinction. Who decides when someone is credible enough to write a tutorial? I have met and worked with many professional programmers that would be terrible at writing tutorials (for both technical and presentation reasons), while I have also met lots of people that would be great at explaining something even if they only understand it at a superficial level. I will put myself out as an example of this - I don't work in the game or graphics industries, but I have written quite a few articles on these topics. I assume they have been well received since I haven't seen any major criticism (along the lines of this post) in my UNEDITED comments sections...

The key is take stuff you find on the internet for what it is worth. You aren't paying for reading his journal, so why do you care if he writes garbage (I haven't read his tutorial, so I don't know what quality it is...). Maybe he just wants to practice typing, or whatever, it doesn't matter. Once we start walking down the path of saying certain people are worthy to write tutorials and others aren't, I think we would be just as bad off as when people decide which comments can be seen...

By the way, I think this whole issue would be moot if comments couldn't be edited. Then stonemetal could respond in public about his tutorial, and there would be some pressure for him to make sure his work is good before posting it.
January 30, 2011 08:36 PM
Zao
[quote name='Jason Z' timestamp='1296419790']
The key is take stuff you find on the internet for what it is worth. You aren't paying for reading his journal, so why do you care if he writes garbage (I haven't read his tutorial, so I don't know what quality it is...).
[/quote]

I care about the environment that beginners is exposed to. Bad tutorials should be clearly marked as being musings around a subject, encouraging feedback. If it poses as a proper tutorial, you should criticize it as a proper tutorial, which means ripping it to shreds if it's sub-par.
January 31, 2011 08:55 PM
Jason Z
That's exactly why I said that it should be allowed to comment on his material - then any crap entries will be flagged as such by the people that read it. I also think it is somewhat naive to think that a beginner will be 'poisoned' by reading bad tutorials - we have all read garbage before, and somehow we manage to pull through it. As you become a better programmer, you learn to spot the not so good material and can indicate it as such. One other point is that there is more levels of quality than crap or great - if a tutorial is mediocre, with bad grammar, it can still be of value to someone else at a lower level...
January 31, 2011 09:19 PM
Ravyne
Perhaps Mike's retort was a overly-colorful, but sometimes a little theater goes a long way towards driving a point home. This is no worse than a "ranty" review of a rotten film, which most of us love to read, secretly. We wouldn't all be telling Mike he was too harsh with his Uwe Boll criticisms and encouraging him to instead submit helpful notes and the sentiment that he should go back to film school and try harder next time, would we?.

If you've got the gumption to post something to the internet, where the whole world can see it, then you ought to at least have thick enough skin to weather any criticisms, and enough background to defend your work.

In short, never publish anything which is indefensible.
February 03, 2011 02:00 AM
Jason Z
[quote name='Ravyne' timestamp='1296698416']
In short, never publish anything which is indefensible.
[/quote]

True that!
February 03, 2011 09:53 PM
You must log in to join the conversation.
Don't have a GameDev.net account? Sign up!
Advertisement

Latest Entries

New Blog

2021 views

Progress Update

1550 views

Start of Project

1513 views

New Job

2220 views

The Downward Spiral

2879 views

Job Interviews

1479 views
Advertisement