CSC 313 — Software Engineering

Getting Help

The most important skill you'll develop as a software developer is how to find answers to problems you're experiencing.

There are three steps to this:

  1. Know what to ask.

  2. Ask.

  3. Apply the answer.

Searching for Answers

The best place to find answers to specific programming questions is StackOverflow.

Let’s say that you’re trying to complete an assignment that asks you to create a web page that uses an ordered list to display a set of steps for a recipe.

The first step would be to break this down into small steps:

# 1. Create an empty file.
# 2. Add the standard HTML tags.
# 3. Add the list.
# 4. Style the list using CSS.

Let’s pretend you know how to do everything but part 4.

You could conceivably try googling for "Make a recipe list" and find a bunch of code that would work. However, in that case you would learn very little. In addition, using such code would be considered plagiarism.

Instead, you should search for just how to do step 4: styling ordered lists with css.

Those results show several examples of how to style a list using CSS.

Avoiding Plagiarism

Note what does and does not count as plagiarism when it comes to programming assignments.

Copying and pasting the CSS code we found directly without modifying or understanding it would constitute plagiarism.

Instead, if you make sure you understand what all of the code does and why, and incorporate those concepts into your own code, that is not plagiarism.

Asking for Help

If you've exhausted everything you can do on your own, please feel free to ask your teacher for assistance. There's a common phrase used in teaching: "there's no such thing as a dumb question." While this may be true, some questions are a lot better than others:

Bad questions

"I don't know what to do."

"I'm stuck."

"I'm lost."

Good question

"I'm working on the ordered lists assignment and I have the HTML part done, but I'm having trouble getting my lists to line up correctly. I have set the margins in the CSS like this ... but the result I get doesn't look right. Can you give me a hint as to what I'm doing wrong? I've attached a screen shot of the result."

The difference between a good question and a bad question is one of agency. Bad questions often indicate a lack of agency, a desire to be "acted upon", whereas good questions show a desire to be an agent who acts, someone who is proactive about their own learning.