FAQ: English | Español
(To help translate, please contact us.)

This is a Civilized Place for Public Discussion

Please treat this discussion forum with the same respect you would a public park. We, too, are a shared community resource — a place to share skills, knowledge and interests through ongoing conversation.

These are not hard and fast rules, merely guidelines to aid the human judgment of our community and keep this a clean and well-lighted place for civilized public discourse.

Improve the Discussion

Help us make this a great place for discussion by always working to improve the discussion in some way, however small. If you are not sure your post adds to the conversation, think over what you want to say and try again later.

The topics discussed here matter to us, and we want you to act as if they matter to you, too. Be respectful of the topics and the people discussing them, even if you disagree with some of what is being said.

One way to improve the discussion is by discovering ones that are already happening. Spend time browsing the topics here before replying or starting your own, and you’ll have a better chance of meeting others who share your interests.

Be Agreeable, Even When You Disagree

Going beyond mere technical compliance with the code of conduct, we encourage everyone to embrace the spirit of these guidelines and strive to be sincerely caring and considerate in our interactions.

When expressing disagreement or offering a different perspective, focus on constructively addressing ideas rather than attacking the person who expressed them. Avoid name-calling, personal attacks, knee-jerk contradiction, or playing devil’s advocate.

Instead we encourage you to:

  • Address the content and substance of the argument only.
  • Maintain a respectful tone and presume that others have good intentions.
  • Thoughtfully consider the points raised before responding.
  • Share alternative viewpoints that contribute positively to the conversation.

By approaching conversations with kindness and in good faith, we can foster an environment of growth, learning, and open-mindedness, where everyone feels welcome to engage and share their thoughts.

Your Participation Counts

The conversations we have here set the tone for every new arrival. Help us influence the future of this community by choosing to engage in discussions that make this forum an interesting place to be — and avoiding those that do not.

Discourse provides tools that enable the community to collectively identify the best (and worst) contributions: bookmarks, likes, flags, replies, edits, and so forth. Use these tools to improve your own experience, and everyone else’s, too.

Let’s leave our community better than we found it.

If You See a Problem, Flag It

Moderators have special authority; they are responsible for this forum. But so are you. With your help, moderators can be community facilitators, not just janitors or police.

When you see bad behavior, don’t reply. It encourages the bad behavior by acknowledging it, consumes your energy, and wastes everyone’s time. Just flag it. If enough flags accrue, action will be taken, either automatically or by moderator intervention.

In order to maintain our community, moderators reserve the right to remove any content and any user account for any reason at any time. Moderators do not preview new posts; the moderators and site operators take no responsibility for any content posted by the community.

Always Be Civil

Nothing sabotages a healthy conversation like rudeness:

  • Be civil. Don’t post anything that a reasonable person would consider offensive, abusive, or hate speech.
  • Keep it clean. Don’t post anything obscene or sexually explicit.
  • Respect each other. Don’t harass or grief anyone, impersonate people, or expose their private information.
  • Respect our forum. Don’t post spam or otherwise vandalize the forum.

These are not concrete terms with precise definitions — avoid even the appearance of any of these things. If you’re unsure, ask yourself how you would feel if your post was featured on the front page of the New York Times.

This is a public forum, and search engines index these discussions. Keep the language, links, and images safe for family and friends.

Keep It Tidy

Make the effort to put things in the right place, so that we can spend more time discussing and less cleaning up. So:

  • Don’t start a topic in the wrong category.
  • Don’t cross-post the same thing in multiple topics.
  • Don’t post no-content replies.
  • Don’t divert a topic by changing it midstream.
  • Don’t sign your posts — every post has your profile information attached to it.

Rather than posting “+1” or “Agreed”, use the Like button. Rather than taking an existing topic in a radically different direction, use Reply as a Linked Topic.

Format Your Code

Please help us help you by formatting your code on this forum. Formatted code is not only easier to read, it sometimes cannot be cut-pasted and run correctly if not formatted, making it difficult for others to help you.

Please tidy your code (apply consistent indenting and whitespace) before pasting into the forum. If you are editing code in the PDE desktop application, press Edit > Auto Format to automatically tidy your code, or if you are using the p5.js online editor, you can go to Edit > Tidy Code.

After you paste your code in forum, make sure it is properly displayed by using the “Preformatted text” option.

ezgif.com-gif-maker (1)

Formatting new code

  1. Create a reply or new topic
  2. In the editor header bar, press the </> code button (labeled Preformatted text) …or press Ctrl+E. This will add a code region that looks like this:
    type or paste code here
  3. Type or paste your code between the two lines of backticks.

Reformat existing code

  1. Click the edit (pencil) icon under an old post
  2. Highlight code
  3. On the editor header bar, press the </> code button (context name: Preformatted text) …or press Ctrl+E. This will add three backticks ``` on the lines above and below your code.
    void draw() {
      point(frameCount%width, random(height));
  4. In the preview, your code will now appear formatted:
    void draw() {
      point(frameCount%width, random(height));
  5. Save your post when done editing.

Can’t see the </> button?

In some cases the </> button may not appear immediately. In this case you will find the option under the gear icon (the last button to the right on the editor’s header bar).

Manually formatting your code

You may also type in the backticks yourself or copy and paste the snippet below into your own topic or reply:

type or paste code here

Homework Policy

Homework questions are welcome here. Teachers from around the world encourage their students to use this forum, and some of our regulars discuss teaching with Processing.

Our goal is to give you starting points and to help you break down problems and learn how to solve them for yourself – not to do your homework for you!

  • Homework questions should be identified as homework.
  • Do not ask for complete code solutions.
  • Do not offer complete code solutions.
  • Students are responsible for following the policies of their school, class, and instructor. Post as if your instructor is reading.
  • If you only want general advice (NO code), please say so explicitly.
  • Do not attempt to receive help and then hide it by deleting. Posts with answers belong to the community, and will not be taken down. Deleted posts will be restored.

For an overview of how to ask great questions that get the best help, see: Guidelines—Asking Questions .

If you are an instructor with concerns about student posts or answers, please flag them and contact our site administrators.

Post Only Your Own Stuff

You may not post anything digital that belongs to someone else without permission. You may not post descriptions of, links to, or methods for stealing someone’s intellectual property (software, video, audio, images), or for breaking any other law.

Before posting, ask: “Can I share it?” Do you personally have the right to share this code, or does it belong to someone else who should give you permission first, such as your company or your project group? Posts that receive answers will not be taken down, as answers belong to the community. If you don’t want code to be public, do not make it public.

AI text-generation policy

While AI text generators and Large Language Models can be helpful if used reasonably, these tools often generate misleading answers to factual questions. These mistakes are often subtle and presented in a confident tone that makes them hard to notice.

We want this forum to be a place where people come to learn from other knowledgeable folks. Therefore, we believe the use of such tools on the forum should be limited.

In particular, we do NOT allow spammy answers copy-pasted from ChatGPT or similar text generation tools. Unhelpful messages copy-pasted from a text generator will be removed, and a warning will be issued to the person posting them.

At the same time, we recognise that these tools can have a positive impact when used the right way and do not wish to ban them completely.

Acceptable uses of AI text generation on the forum are:

  • Using machine learning to improve or translate text, as long as facts and knowledge in the text come from you. Just don’t use AI to solve technical problems for you or others, especially if you don’t have a good understanding of the problem yourself.
  • It’s okay to use ChatGPT or similar text-generators for educational or research purposes (including problem solving and code generation) in dedicated topics, and as long as you clearly label the content as being generated by a machine. [This paragraph was generated by ChatGPT]

Conversational AI is an area of active development, and we encourage friendly discussions on the topic. If you want to share your feedback on this policy, please write on the dedicated topic.

Do not advertise

This forum is primarily dedicated to teaching people of all ages how to code. To maintain a learning-focused environment, we do not allow any advertising. Our moderation team has decided to implement a ban on the promotion of commercial content, including messages that encourage the collection, trading, or purchase of goods or services, including but not limited to digital collectibles. Any such messages will be removed immediately, and the individual responsible will receive a warning. Thank you for helping us maintain a space that is dedicated to learning.

Powered by You

This site is operated by your friendly local staff and you, the community. If you have any further questions about how things should work here, open a new topic in the site feedback category and let’s discuss! If there’s a critical or urgent issue that can’t be handled by a meta topic or flag, contact us via the staff page.

Leaving the Community

If you wish to close your account and leave the community at any time, you may. Please contact an admin for help with account removal. However, if you are leaving because you feel unwelcome or had difficulty, please let us know if there is any way that we can help.

When we close your account it is anonymized. That removes your name, icon, email, IP address, and all login credentials and activity logs. You will no longer be able to log in or receive forum messages at that time.

We do not delete your conversation threads once the community has contributed substantial answers – those answers belong to the community. Posts written by you will no longer be yours – instead they will be identified with a username like this: anon94203042.

Terms of Service

Yes, legalese is boring, but we must protect ourselves – and by extension, you and your data – against unfriendly folks. We have a Terms of Service describing your (and our) behavior and rights related to content, privacy, and laws. To use this service, you must agree to abide by our TOS.