## The Goal of Breakdown Problems

I learned the idea of **breakdown problems** from
Pavel Pevzner. The basic idea, is
that learning is not a linear process: you are given new information,
you digest it, and then you move to the next piece of information. Rather,
meaningful learning happens when there is a **breakdown** in your
understanding. You reach a point where things just don’t make sense!

Don’t dispair, you now have an opportunity to learn, to **really**
learn. It is hard work, but the result is important and
satisfying. Real knowledge is not something that you recieve by
osmosis, real knowledge that you wrestle out and make your own!

First, make sure that this is really a breakdown, not just laziness. Carefully read through the explanations in the notebook, and the information you can find through links on the notebook or through wikiPedia, etc. Maybe you are missing some background knowledge (Linear algebra is an example), if so, go and brush up on that background knowledge.

Now, if you are **still** confused, it is time to write a **BreakDown
Problem** and post it to Piazza.

## Writing BreakDown Problems on Piazza

Breakdown problems are not the only type of postings you can make on
Piazza. You can post questions such as `Why does this code not work?`

,
or `Anybody has a good reference on Kmeans++?`

or ```
Why is the Prof. so
mean?
```

BreakDown problems are different:

## How Are Breakdown Problems are different?

- You cannot post a BreakDown Problem Anonymously.
- You have to refer to a specific place in a specific notebook which caused the breakdown.
- You have to use the
**same terminology**that is used in the notebook and you have to use it accurately. - You have to show that you have given the problem a significant amount of thought. You show that by identifying the break-point as accurately as possible. For example:

I am confused about the second sentence in the 3rd cell of the notebook

`foo.ipynb`

which says that “The running time for bucket-sort is O(n).” How is that possible when we know (Knuth 73) that the lower bound on any sort algorithm is O(n log n)?

Writing a good breakdown question is hard. Remember that you can go back an edit your question so that it is clearer. Responses by TAs or other students will help you identify where your question is unclear so that you can make it better.

## Credits for breakdown problems.

- Asking or answering a breakdown problem contributes 10% to the final grade.
- The poster can suggest that the problem is a breakdown problem, but only a TA or the instructor can confirm that this is a good problem. The TA/Instructor does it by marking the problem as “instructor thinks this is a good question” on piazza.
- The first poster of a confirmed breakdown problem will recieve 5 points. If a student provides a good answer to a breakdown problem s/he will also recieve 5 points
- This means that to recieve full credit each student needs to make two contributions to the BreakDown problems.
- Before you post a breakdown problem, check to see that this problem has not been posted yet. Check Piazza for both CSE255 and DSE230.
- Good breakdown problems would be:
- discussed in class.
- A cell with the problem and the answer will be added to the notebooks, for the benefit of future students….