About Using Piazza

Posting on Piazza is a vital part of this class. It is 5% of your grade, and I think you will find it helpful.

You need to post regularly to earn the number of points needed for full participation credit. Do not wait until the last few weeks and then go through making minor changes or meaningless responses on half a dozen old posts at a time. Such spam posts waste other people's time. I will deduct points for that behavior.

What counts as a meaningful post?

What does not count?

It is perfectly legitimate to post a "Thank you" Or wish your classmates luck on an exam. Or note that Codecheck is not working for you either. That builds community and a certain amount is good. What is not good is to spend 15 minutes opening olds posts and making minor changes in hopes of earning points. So go ahead and post a "Thank you" when someone had been helpful or "You're welcome" . You know the difference. And so do I. I can see who made a post as I am looking for students who need help. I read through all posts looking for what has been added. If a student makes a bunch of useless posts in a short time, it is obvious. It wastes my time and your classmates' time. So do not do it.

End of lecture. Now read about signing up and posting.

Signing up

  1. When you register for Piazza, use your first and last name so I can give you credit at the end of the semester.
  2. Do not post anonymously. It gets very confusing when Anonymous replies to Anonymous who replied to Anonymous. I will delete anonymous post and you will not get a point. If you happen to answer an anonymous post, it will also be deleted when I delete the original.

Writing and editing your posts

  1. Use a meaningful Subject
  2. If you want to post an answer, do it in the "Student Answer" box. If someone has given an incorrect answer, edit the post to make it correct. If you want to add details to the answer, edit it to do so rather than posting a follow-up. You and the original posters will all get credit, and the answer will be easier to find. Use the follow-up if you have a related question. This image is of the Instructors' answer box, but the student one is similar.
    posting
  3. If you have posted a follow-up and what to add more information, edit the follow-up. Do not make a new follow-up. Click on the Action menu on the right and select Edit
    follow-up

Posting Code

  1. Do not post working code or the actual answer. It does not help your classmate to become a better programmer if you simply give him the answer and he copies it from Piazza. Give hints, give examples using other variables, tell where to find the answer in the book or video. All those things are helpful. Posts with working code will also be deleted along with any replies
  2. Often you will want to post code. It is considered rude to post unformatted, sloppy code. I will delete unformatted code (and any relies will get deleted also). Here is how to post formatted code on Piazza

    It is usually better to actually copy/paste code rather than taking a screen shot because then other students (or I) can easily copy it and play with it if needed.

    Before you copy the code from Bluej, select Edit -> Auto-layout

    Then when you paste your code into Piazza, you need for it to stay nicely formatted. That is what the code button is for. When you are editing a post, the code button is on the toolbar below the menu bar right above the edit window.

    Do this where you want to paste

    • Hit enter a few times
    • Use the up arrow to go back up a line or 2.
    • Click auto layout in Bluej to format  the code
    • Copy your code
    • Click the code button
    • Paste your code in the gray box

    code

How to ask good questions

  1. Do not just say "This does not work. What is wrong?" and expect us to fix it. Tell us what problem you see.
    1. Is it a syntax error? Give us the error message and the statement that caused the error.
    2. Is it a runtime exception? What was the error message and what line caused the exception?
    3. Did it run but not do what you expected? What result did you expect and what did you get? Which of the test cases did it fail? How was that case different from the ones that the code passed?
  2. Take the time to figure out where you are going wrong and what you do not understand. "I understand what a method is but not what a static method is" or I know how to get user input but do not understand how to tell if the input is positive?
  3. The more information you can give, the better we can help. And it will help you be a stronger programmer.