I agree. Seems counterproductive. Thank you for confirming @paulgoux!
Excellent topic to bring to the forum!
I am aware of these:
1 and 2 are prominently pinned on the main page if I am not signed in.
3 is available in the hamburger on top right as a FAQ.
This subject has been pervading my thoughts of late and I have been reflecting on what is best for the community.
My suggestion is to add a tab at the top of the site titled “For Students” which would direct them to a page with a checklist of things they need to consider when approaching how to solve their coding homework. This is just a rough idea, but it might go something like this:
What is the main point of this assignment?
What algorithm(s) has my teacher recently gone over in class that may be relevant to solving this project?
Can I draw out on a piece of paper what the final visual solution might look like?
Is it a static sketch, or one with animation?
Set up the basic document and include the basic shapes that will appear in the project.
Now return to the forum with your question and the code you set up in the previous step.
(There are likely additional items that could be added to the list to optimize its guidance potential.)
When a student (without accompaying code) asks for help on the forum they can be directed by any forum member to this “For Students” page.
I recognize that a version of this appears on the site on the Tips and Guideline pages.
But I think a more structured (ie “how-to” checklist) student-centric page may be a way to help students use the forum properly. And for potential helpers to refer to before providing assistance.
As I said above, this is a rough idea. And am curious what other forum members think.
Well, we do have a tag called “Project Guidance”. I guess it’s sort of similar to homework help? Your idea sound good though
Thanks for this discussion – lots of really great ideas.
Project Guidance is a subcategory – homework posts could appear in Processing, Processing.py, p5.js, Android, etc., and we probably don’t want to pool them all together or create a Homework subcategory for every single one.
Most students do not read the FAQ or browse top-level links/tabs. They arrive to a post via a Google search, use the search bar and browse past answers, then create a new post directly.
I like the idea of adding things to the FAQ. I could also imagine us adding something to new
For example, top level FAQ entries (these is an outline / sketch, not the proposed final language):
Is it homework?
Explains basic policies:
- homework questions should be identified as homework
- no asking for or offering complete solutions if this is against the assignment.
- posts that receive help will not be taken down, and answers belong to the community – no deleting / hiding help as a form of cheating
- if you want general advice without code, please say so explicitly
- Guidelines—Tips on Asking Questions
Can you share it?
- Do you have the right to post this code, or does it belong to your company / team? Posts that receive help will not be taken down, and answers belong to the community – so if you don’t want the code to be public, don’t make it public.
We could add new post template text that contains a warning. That could be something as simple as:
<!-- For homework questions, please see site FAQ -->
I’m not sure if a comprehensive attempt at pedagogy (e.g. thinking about algorithms, paper prototyping, etc.) belongs on the forum menu. We can make posts with guides of all kinds, but I think the top level should focus on policies and point towards existing resources (of which there are many). If there are Guidelines on how to do Processing homework, we could link them from the FAQ – I love the idea of such a guide.
At the same time I don’t want to assume that our ideas about pedagogy are true for every student. Some teachers / classes may disagree with us and we don’t want to presume or present information in an authoritative way that will confuse their students.
A few thoughts in response (please note bulk of new content is nearer end of post:
Also a good point. I didn’t know what the common navigation path into the forum is. So as you note it wouldn’t have much effect to create another top-level tab.
This is great idea! IMHO
Warning template is great. I like this too, IMHO
I see your reasoning and agree.
Regarding pedagogy, I definitely understand concerns of its potential to work to cross purposes. To mitigate, I wonder if:
At the head of such a guide, it might state something to the effect (note this para below is very rough):
There are often several ways to solve a coding problem. The following guide is a list of general tips to help students define and break down their homework question into more manageable parts. View these tips as a supplement to the information your teacher has taught in class. It is not meant to replace the guidance of your teacher.
Guideline list of tips would begin following the disclaimer…
Or, if you want to completely stay away from a tips list. Perhaps a page that only includes:
A comprehensive list of resources which would have a descriptive sentence or two of what the resource is and then a link to the source. (I am more inclined to click on links when I know beforehand where the link is going to lead. Also faster to decide which link to pursue first.)
Could a “Homework” tag be implemented so that moderators could tag a question as such, that would then give people a heads up before they post answers?
This tag could (no idea if this is feasible) also cause all answers that contain code require a moderator to approve first, thus stopping them getting free solutions after others had warned them that they needed to attempt it themselves.
Currently I believe (?) that the forum doesn’t have a tag system, only categories.
Even if there was a special tag we could use (an interesting idea!) there is also bit of a chicken and egg problem. We don’t have a number of moderators / admins doing a quick first pass on all posts – so we don’t have people who can flag everything in a first pass. Instead, we need to trust that regulars who give answers build consensus around best practices whenever they happen to get to a question, which is sometimes in 5 minutes and sometimes in 7+ days… and flag things that are soliciting / cheating on homework.
I do not remember what the new user experience is and have to visit the site without logging in to view the FAQ and Guidelines pinned on top in the forum:
A single topic such as “Processing Forum Guidelines and Frequently Asked Questions (FAQ)” that could be pinned at the top of each category. Pinning all three is a bit too much for members and a single post that references important links would be more compact, welcoming and not too intrusive.
It should be a requirement to read the FAQ before using the forum. You also get a badge for it.
Consistency amongst members on how we advise the community (especially new members) about the FAQ and guidelines.
My preference is to direct them to the existing guidelines and continue to work on those to meet the needs of the community.
Yes!! I agree!
Coincidentally I’ve been thinking about this too – visibility / find-ability of how to best use the site. I didn’t know about the guidelines pages until you posted them in your links above. And have referred to them since.
In terms of site navigation, it’s a bit of a hassle to have to find this thread and then scroll down to the links, and finally click through to the guideline pages. It really should be a one-click process to find this kind of – HOW TO USE THIS SITE – information. IMHO.
I like the idea. And I think that we should emphasize the “Can you share it?” part. SO has a very big policy on this
Following up on some of these suggestions after looking into site settings:
It looks like there is an option “Pin topic globally: forever” that could be applied to the FAQ.
There is also a “Banner Topic” type, which creates a really splashy ask for someone to read the site orientation. This could be something pointing at the FAQ and other resources, or it could be the FAQ itself – it looks like this:
Also, there are hacky ways of making things unpin-able, if we wanted to go that far:
I am all in for whatever will alert new users the most obvious and accessible way to find the how-to-use-this-site information.
A couple of ideas:
Have a START HERE tab or link. These are commonly used on sites with a lot of information and where site owner want to guide the new user in.
Place it next to the +New Topic button at top of page. Then it will always be visible.
When a user clicks on the START HERE link / tab, page opens to an accordion page. Topic issues are divided among the headings:
Guidelines – How to Ask Questions
Guidelines – How to Answer Questions
For High School Students
I found this wordpress plugin version of what it could look like (though there are other configurations):
And it is one click into the info.
My reservations about placement in the FAQ, there will be that extra step to navigate to find. And still not obvious to new users that they should click through to find it.
If you have something that says START HERE, the language has a stronger directive quality thus making for a better click through – directing users to an obvious, central location with all of the how-to-use info in a single click.
So a bit of backtracking, I just read completely through your links about the banner topic pop up…
That’s a great idea!!
I think it’s better than the START HERE page I floated in a previous post.
Glad to see some more serious discussions about this topic. I come here on a regular basis and only use this place for help when I am drastically stuck and even then sometimes I feel bad because I’m not just looking for code. But the nature of programming also means that you don’t know what you don’t know, and therefore when a problem arises sometimes you are left with only intuition to solve a problem, which at the start will not be of much use.
However we then have people who come here posting questions expecting code for homework assignments.
The issue is that it may cause people who are not necessarily familiar with the forum to avoid it, as genuine questions may be considered homework help!
We should really be encouraging people to post questions and for others to reply with code as that ultimately I feel is what the coding community should be about.
But is it really possible to know if a questions is homework, unless a lecturer or teacher chimes in, and says hey don’t answer that, thats my homework assignment!
We have a lot of good ideas. A few I don’t know how we could implement – like requiring that users read a topic before they can post – but for all the others that are immediately doable:
Homework / FAQ
Please vote by checking as many ideas as you like – from none to all.
- add orientation Banner (dismissable)
- FAQ pinned on home
- FAQ pinned every category
- create “Homework” guide
- combine “Homework” w/ FAQ
- combine “Tips on Asking” w/ FAQ
- combine “How to Answer” w/ FAQ
- add post template hw warning
<-- for homework, see FAQ -->
- add post template hw warning
This isn’t the end of discussion – just trying to get a sense of what the community wants.
If you are a moderator or if you were a frequent active answerer / poster in the past year and are still involved in the forum, please consider voting and / or commenting: @montoyamoraga @fjenett @lmccart @ProcessingOrg @REAS @Chrisir @kll @GoToLoop @glv @noel @Lexyth @quark @kfrajer @Tiemen @akenaton @neilcsmith @hamoid @TfGuy44 @solub @Waboqueox @hotfooted @monkstone @jb4x
I am not sure that the 3 dots glyph (above, right) is easy to understand; this glyph is usually (see android material design) for settings…
FAQ is not exactly what we are talking about; better could be RULES
Sub category for « RULES» is « ASKING », another one (among others!) « ANSWERING »
Students or not students have to respect these rules
We ll never know why somebody is asking and why
We have to explain to everybody, students or not students that:
a) he has to verify wether this question was already posted (searching the forum)= as for me i am tired out to answer ten times to the same question…
b) he has to verify that the question is not solved by the p5 examples: dont ask for « how to put video » or « what is setup() »
c) he has to be as precise as possible for the hardware context or OS
d) he has to avoid too general questions or tag them « general discussion », or « project guidance »: in these cases he has to know that he will only get general answers
e) If he wants more precise answers he has to show what he has already tried and put his code; if he gets some error he has to put the error code. In any cases he has to provide only the code snippet which generates the error: simplify!!!
When answering the reverse is true
a) dont put complete code if not any code was present in the question
b) dont try to replace some teacher, except for general things (cut your problem in littles pieces and so on) - This community is not designed to replace university!
c) if you put code, add comments.
and this general question: what exactly are we wanting to avoid for students?
Well, we don’t want them to cheat. So no full codes etc.; that’s an important point. Except sometimes you need to cheat and we all did it somewhen. So you don’t want to be too dogmatic about it. Sometimes you have to help somebody to cheat, even when you don’t like it.
Another point I want to emphasize:
I think the atmosphere we are setting with banners and rules shouldn’t sound too nanny-like and unwelcoming. It should sound like with humor and a good community. I mean a lot of students are stressed out anyway so we want to comfort them and support them.
Also, we have to take into account that there are a lot of people (like me) that are not students but hobbyists or artists. I think here, even full code / sketch is okay. Because here, no exams or grades are involved in the first place. They want to get things done and they don’t have to learn to code.
So homework is certainly an important aspect but not all that’s going on in the forum.
Yes you are right: “Rules” is not probably the good word, perhaps something like guide line could be better… And i agree with you about humor!; yet i think that we have to be precise and explain clearly that if someone wants to ask he has to respect some points (i have tried to list some of them, that s all and i can see now that i forgot some others: e.g dont change the topic by asking another question, even if it seems to be related because this kind of behaviour makes the forum very difficult to use)- If we want to avoid cheating what are the (main) points to emphazize that is what i meant…
Second point: i am not a student, i was a teacher, i am now only an artist and a developer… for job! -And so “homework” is not the main problem on this forum…