cs10 / bjc-r

The Beauty and Joy of Computing public resource repository.
https://beautyjoy.github.io/bjc-r
30 stars 101 forks source link

Lab 10: Recursive Reporters #432

Open lmock opened 9 years ago

lmock commented 9 years ago

Please comment below to leave us your lab reviews! Remember, please follow this format:

Your Name:

Overview of Lab Comments: i.e. Was this lab good or bad? Too fast? Too Slow? Does it need something new?

For specific issues: (you should copy this section as many times as necessary)
Page Link:
Type of Issue: i.e. (code) bug, grammar, typo, lack of clarity, etc
Severity: i.e. "prevents students from continuing", "minor inconvenience", etc
Comments: Description of the problem, what can be done to fix it, etc.
ArielleSpencer commented 9 years ago

Lab Review

Your Name: Arielle Spencer

Overview of Lab Comments: Good lab, I liked the warning at the beginning to tell them it would be more difficult and to work with a partner. I thought it was a fairly good pace and mix of difficulty and I thought the number of examples were really helpful. The only thing I'd add is some sort of conclusion since it was really abrupt the way it ends.

For specific issues: Page Link: https://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/recur/recursive-reporters/pascals-triangle.html?topic=berkeley_bjc%2Frecur%2Frecursive-reporters-part1.topic&novideo=true&noreading=true&noassingment=true&course=cs10_fa14.html&step=2 ("what is Pascal's triangle?") Type of Issue: lack of clarity Severity: minor Comments: In the diagram showing the triangle reordered into the columns, maybe you can add the index numbers to make it more clear for the row and column indexes. Mainly since they probably aren't used to starting at 0 and that may confuse them.

numfah23 commented 9 years ago

Your Name: Natnicha Vanitchanant

Overview of Lab Comments: Overall, the lab was pretty long and the concepts were relatively difficult. However, most of the blocks were partially filled out already and hopefully everyone has a partner working with them, so it is probably doable in the given time. I feel like more hints should have been given for the subset block because that block was much more complicated than the other exercises. One of the things that I really liked was that there were quizzes that helped give hints for both the subset block and the pascal block.

For specific issues: Page Link: https://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/recur/recursive-reporters/recursive-reporters-intro.html?topic=berkeley_bjc/recur/recursive-reporters-part1.topic&step=0&novideo=true&noreading=true&noassingment=true&course=cs10_fa14.html Type of Issue: Lack of clarity Severity: Minor inconvenience Comments: Some students might not know what piglatin is and what it is supposed to report. It would be nice to provide a link to the wikipedia article (http://en.wikipedia.org/wiki/Pig_Latin) for clarification of what the piglatin block does.

For specific issues: Page Link: https://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/recur/recursive-reporters/pascals-triangle-how-long-does-the-computation-take.html?topic=berkeley_bjc%2Frecur%2Frecursive-reporters-part1.topic&novideo=true&noreading=true&noassingment=true&course=cs10_fa14.html&step=4 Type of Issue: i.e. Lack of clarity Severity: Minor inconvenience Comments: Personally, I found the diagram for the pascal recursive calls a little confusing. I feel like it would be better represented with an image similar to this, http://www.idryman.org/images/graphviz/g-ff6b576e3a2600dd84a36f0059875404.svg, where the base case calls are at the bottom of the diagram. This way, it will be easier to visualize the redundant calls.

yifatamir commented 9 years ago

Yifat Amir

Overview of Lab Comments: This lab was very intriguing! It was very different from most CS10 labs in the sense that it's more conceptual/theoretical and less about the programming itself. It is a bit long, but I liked it.

For specific issues:

Page Link: https://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/recur/recursive-reporters/pascals-triangle.html?topic=berkeley_bjc%2Frecur%2Frecursive-reporters-part1.topic&novideo=true&noreading=true&noassingment=true&course=cs10_fa14.html&step=2 Type of Issue: lack of clarity Severity: confusing and could cause misunderstanding Comments: This page has a whole lot of information on it. I think it would be easier to read/more interesting if the text was broken up a bit more or in different formats (bold for the math; italics for the history; etc.). Maybe even more images... of pascal's triangle found in nature or something like that. Also, the image in yellow of pascal's triangle being aligned to the left, is somewhat confusing and unclear. It would be better if it were put on a grid or something similar in which the rows and columns would be labelled, so that the viewer can see patterns, such that the 1's all fall under column 1 or when column=row. This would aid in the understanding of pascal's triangle's code. Also, it would be nice to have this alignment image re-pasted again on the page with the quiz questions that ask about pascal triangle code.

Page Link: https://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/recur/recursive-reporters/pascals-triangle-how-long-does-the-computation-take.html?topic=berkeley_bjc%2Frecur%2Frecursive-reporters-part1.topic&novideo=true&noreading=true&noassingment=true&course=cs10_fa14.html&step=4 Type of Issue: lack of clarity Severity: prevents students from having a full understanding Comments: Explain why (or put in a quiz question (I made one!)) count must be a global variable. Discuss counters within recursive functions.

thorsoch commented 9 years ago

Charles Thorson

Overview of Lab Comments: In general, I felt that this lab is too long. It took quite a while for me to do it even though I don’t have to put as much time as the student to think about the problem because it was review for me. So it would probably be highly unlikely for a student that is just starting recursion to finish everything in this lab in one session. In terms of errors and problems, I was not able to find much at all. Perhaps, breaking this entire lab into part1 and part2 might be a good idea. I agree with the others that the content was good though.

Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/recur/recursive-reporters/generalizing-the-map-pattern.html?topic=berkeley_bjc%2Frecur%2Frecursive-reporters.topic&novideo=true&noreading=true&noassignment=true&course=cs10_fa14.html&step=18 Type of Issue: question Comment: I wasn’t sure how relevant the pair up question, or how necessary the pair up question was to this page of the lab. It sort of reinforces the idea, but it felt more like it was dropped here for the sake of it.

strollinghome commented 9 years ago

Carlos Flores

I think there's too many different problems in this lab. Also we provide too many solutions in the lab. I think we should maybe cut down a bit in the number of problems we include in the lab and try to reinforce more the concepts of recursion with the most adequate problems. Moreover some of these problems might be a bit too overboard for students who are learning about recursion for the first time (e.g. the subsets problem).

Specific Issues: Not an issue just a suggestion. We should switch the order of the last two sections. I think the sorting algorithm does a great job of showing how recursion works in lists. It is less intimidating for students than the subset problem and students are more likely to actually complete the section.

jeeves833 commented 9 years ago

Lucas Karahadian

Overview of Lab Comments: I really enjoyed the overall structure of the lab, what with all the hints, multi-slide exercises, and bonuses “for hotshots.” These make me think that this lab will work extremely well with students of all skill levels. However, the length of the lab seems like it might be an issue. I had a hard time getting through the lab just to do a review, so I can imagine that some students will be hard pressed to finish this lab.

For specific issues:

Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/recur/recursive-reporters/binary-numbers.html Type of Issue: A bit rushed Severity: Could be confusing for some Comments: On this slide, after the line “Binary uses the same positional idea, but with powers of two instead of powers of ten” I think it would be helpful to include an example of binary broken down like there already is for base 10. Especially for students who have never encountered binary before.

msilva926 commented 9 years ago

Your Name: Melanie Silva

Overview of Lab Comments: Overall the lab was well put together. It was very graphical, including many images which I think I good when trying to explain recursion. Other helpful things that the lab included were mathematical backgrounds of concepts that were going to be solved recursively, and provided solutions to check work.

For specific issues: Page Link: https://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/recur/recursive-reporters/pascals-triangle.html?topic=berkeley_bjc%2Frecur%2Frecursive-reporters-part1.topic&novideo=true&noreading=true&noassingment=true&course=cs10_fa14.html&step=2 Type of Issue: n/a Severity: n/a Comments: The long explanation about Pascal's triangle helps understand the concept in full before tackling it with computer science. I like how the lab didn't just jump into the coding part, but took time to explain mathematically what Pascal's triangle is. The images also help a lot.

Page Link: https://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/recur/recursive-reporters/subsets-and-efficiency.html?topic=berkeley_bjc%2Frecur%2Frecursive-reporters-part1.topic&novideo=true&noreading=true&noassingment=true&course=cs10_fa14.html&step=8 Type of Issue: n/a Severity: n/a Comments: Since the lab might be hard for students who have just learned recursion, I like that in the lab, you guys provide solutions for multiple questions. This teaches the student how to do it, shows them what they did wrong, and also helps explain it to them better.

finnhowell commented 9 years ago

Your name: Fionnuala Howell

Overview of lab comments: I think the first page of recursive examples is extremely helpful for students to see the different possible kinds of recursion. These examples are similar to what I compiled when taking CS10 to study from, as they provide possible ideas to create recursive functions if you are stuck. I also like how this lab brings back problems from earlier labs that students had to solve iteratively, as this is an important aspect of the class - knowing how to solve something both iteratively and recursively, therefore learning the benefits of each. I thought altogether this was a great lab! It is good to bring in examples/ problems and have answers to some of them as recursion can be a very difficult topic for students to grasp. I thought the last part of the lab using the merge and sort blocks was useful as it is almost identical to 61a lab problems right now and it is good to familiarize students with these types of problems in case they go on further with computer science.

Page Link: https://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/recur/recursive-reporters/pascals-triangle-how-long-does-the-computation-take.html?topic=berkeley_bjc%2Frecur%2Frecursive-reporters-part1.topic&novideo=true&noreading=true&noassingment=true&course=cs10_fa14.html&step=4 Type of Issue: lack of clarity Severity: low Comments: I like the beginning half of this page describing pascal's triangle and providing information on the speed of the function. Yet, I feel that there is a lot of text that students may just skip over. The picture of the calls with the arrows is a little confusing and not necessary. The more concise the better.

333lisajin commented 9 years ago

Your Name: Lisa Jin

Overview of Lab Comments: i.e. This lab is good. A lot of useful information. However, it is too dense.

For specific issues: (you should copy this section as many times as necessary) Page Link: https://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/recur/recursive-reporters/pascals-triangle-how-long-does-the-computation-take.html?topic=berkeley_bjc%2Frecur%2Frecursive-reporters-part1.topic&novideo=true&noreading=true&noassingment=true&course=cs10_fa14.html&step=4

Type of Issue: i.e. Too dense and wordy. Severity: i.e. This page is like throws a bunch of information on the page and there are a lot of information to cover. It is very easy to get lost in the middle of the of this page and lost the track of the speed. Some suggestion: could label the important points to help the students keep track and lose some words if it is possible. Also, it is really nice if all these information could be split into two pages or so. Just clearer.

amrutayel commented 9 years ago

Your Name: Amruta Yelamanchili

Overview of Lab Comments: This is a cool lab that introduces students to the magic of recursion, but it is definitely a hard one. The subsets question is probably the hardest one, so it is good that the solution is given for it. There are a lot of solutions given in this lab though, because of the amount of hard problems. Maybe it would be better to have some more (slightly) easier problems so students aren’t just given the answer for a lot of them.

For specific issues:

Page Link: https://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/recur/recursive-reporters/pascals-triangle-how-long-does-the-computation-take.html?topic=berkeley_bjc%2Frecur%2Frecursive-reporters-part1.topic&novideo=true&noreading=true&noassingment=true&course=cs10_fa14.html&step=4 Type of Issue: clarity Severity: minor Comments: The diagram after “consider these calls” is very confusing looking; it took me a while to understand what was going on.

Page Link: https://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/recur/recursive-reporters/plurals-of-words.html?topic=berkeley_bjc%2Frecur%2Frecursive-reporters-part1.topic&novideo=true&noreading=true&noassingment=true&course=cs10_fa14.html&step=1 Type of Issue: clarity Severity:minor Comments: It should be noted that the <empty? List> block has to be imported through import tools.

Page Link: https://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/recur/recursive-reporters/recursively-sorting-even-odd.html?topic=berkeley_bjc%2Frecur%2Frecursive-reporters-part1.topic&novideo=true&noreading=true&noassingment=true&course=cs10_fa14.html&step=10 Type of Issue: time Severity: minor Comments: It might be worth it to have this code in a file that students can open, rather than having to rewrite all of these blocks.

tinatu commented 9 years ago

Your Name: Tina Tu

Overview of Lab Comments: I felt like this lab was well-paced and overall a reasonable length for the students to be able to complete in the given time. I particularly like how there were plenty of explanations, especially for the more difficult recursion concepts. Also appreciated the "skip this part if you're a math hater" because it saves a lot of time (and I suppose discomfort) for those who aren't as interested in the mathematical aspect of the algorithms.

For specific issues: Page Link: Type of Issue: i.e. (code) bug, grammar, typo, lack of clarity, etc Severity: i.e. "prevents students from continuing", "minor inconvenience", etc Comments: Description of the problem, what can be done to fix it, etc.

For specific issues: Page Link: https://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/recur/recursive-reporters/plurals-of-words.html?topic=berkeley_bjc%2Frecur%2Frecursive-reporters-part1.topic&novideo=true&noreading=true&noassingment=true&course=cs10_fa14.html&step=1 Type of Issue: grammar Severity: minor inconvenience Comments: Right before the picture of the square function, it says "Make a squares block that takes a list of numbers as input..." and I feel like it should say "takes a list of numbers as an input" or "as its input." Just extremely minor detail.

For specific issues: Page Link: https://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/recur/recursive-reporters/even-number-filter-without-generalization.html?topic=berkeley_bjc%2Frecur%2Frecursive-reporters-part1.topic&novideo=true&noreading=true&noassingment=true&course=cs10_fa14.html&step=5 Type of Issue: (code) bug (possibly) Severity: minor inconvenience Comments: So in the code shown, the base case states that if the list is empty, to report an empty list. However, wouldn't it also be possible to just return the list? Because it would only report in the case that the list is empty, and I feel like this would make more sense intuitively.

For specific issues: Page Link: https://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/recur/recursive-reporters/recursively-sorting-merge.html?topic=berkeley_bjc%2Frecur%2Frecursive-reporters-part1.topic&novideo=true&noreading=true&noassingment=true&course=cs10_fa14.html&step=11 Type of Issue: No link to built code Severity: minor inconvenience Comments: Although it would be good practice for the students to continuously drag the if else block and the base cases out according to the code shown, I feel that because they just need to fill in the else case, that it would easier and ore efficient to provide the other code of that block for them.

erikdahlquist commented 9 years ago

Erik Dahlquist

Overview: This lab is hard, dense, and long. I think this lab will likely be a struggle for most students, and I think if might be good if we could lower the difficulty somewhat. Surely there are less complicated examples that it might be easier for them to grasp for their first foray into recursive reporters? Do we need all three intimidating subjects of Pascal's triangle, subsets, and recursive sorters? I do think its good that many of the difficult solutions are provided, but I think the lab is a bit much. There are surely pairs of students that could handle the lab in a reasonable time without excessive frustration and who could absorb all the information provided, but I doubt this is true for most of them.

Page Link: https://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/recur/recursive-reporters/plurals-of-words.html?topic=berkeley_bjc%2Frecur%2Frecursive-reporters-part1.topic&novideo=true&noreading=true&noassingment=true&course=cs10_fa14.html&step=1 Type of Issue: Unclear block origins Severity: Moderate/Major Comments: You might want to emphasise for the plurals block how you need to specially import the " in front of " block.

Page Link: https://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/recur/recursive-reporters/pascals-triangle-selftest.html?topic=berkeley_bjc%2Frecur%2Frecursive-reporters-part1.topic&novideo=true&noreading=true&noassingment=true&course=cs10_fa14.html&step=3 Type of issue: Improper question formatting Severity: Moderate Comments: In question 2, the answer with the "Correct!" response (Answer 2) is different than the answer that responds with a green border (Answer 3). It's confusing and anyone who answers the questions will notice it.

Page Link: https://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/recur/recursive-reporters/pascals-triangle-how-long-does-the-computation-take.html?topic=berkeley_bjc%2Frecur%2Frecursive-reporters-part1.topic&novideo=true&noreading=true&noassingment=true&course=cs10_fa14.html&step=4 Type of Issue: Confusing diagram Severity: Moderate Comments: The recursive call diagram is a bit hard to look at. It's pretty hard to analyse...

Page Link: https://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/recur/recursive-reporters/recursively-sorting-merge.html?topic=berkeley_bjc%2Frecur%2Frecursive-reporters-part1.topic&novideo=true&noreading=true&noassingment=true&course=cs10_fa14.html&step=11 Type of Issue: Unnecessary copying Severity: Minor Comments: Why not just give them the 'merge' skeleton? It's a fairly hefty chunk of code to copy over to Snap.

jeffz6 commented 9 years ago

Your Name: Jeffrey Zhang

Overview of Lab Comments: This one was a bit of a mixed bag. The lab is written very differently from the other ones, and I think it works well. I like the way it asks questions to help the students think about how they would solve the problem, and then leads into exercises. The example code blocks help a lot. However, it's a little weird to read through a couple of pages of thinking only to have the answer shoved in your face without any real warning. Also, the subset block, probably the hardest part of the lab, has the least explanation.

Page Link: https://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/recur/recursive-reporters/pascals-triangle-selftest.html?topic=berkeley_bjc%2Frecur%2Frecursive-reporters-part1.topic&novideo=true&noreading=true&noassingment=true&course=cs10_fa14.html&step=3 Type of Issue: formatting Severity: minor Comments: The problem makes more sense when the columns are aligned

Page Link: https://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/recur/recursive-reporters/subsets-of-a-set-fast-soln.html?topic=berkeley_bjc%2Frecur%2Frecursive-reporters-part1.topic&novideo=true&noreading=true&noassingment=true&course=cs10_fa14.html&step=9 Type of Issue: difficulty Severity: severe Comments: I looked at these blocks for about a minute or two and I don't understand them. I'm pretty sure most students aren't going to even have a clue, and even worse, I might not be able to explain even if I did spend more time to understand what is going on.

MicBrain commented 9 years ago

Rafayel Mkrtchyan

Overall the material was clear and I didn't notice any sophisticated part during this lab. This lab is an excellent opportunity for pair programming. The organization of materials are also well done. Even though this is going to be one of the hardest labs of this semester, students will struggle a lot in understanding the concepts.

Understanding the ideas of this lab is very important. However just 2 hours for the lab is not enough and I think most of the students would have difficulties in finishing the lab on time. The provided information is very important, however, I think it will be much more beneficial if we try to split the amount of information of two parts and present some ideas for this lab during the next lab section.

carynbear commented 9 years ago

Your Name: Caryn Tran

Overview of Lab Comments: This lab is pretty advanced. A lot of concepts and strategies are introduced. I wish there were more resources to learn more about mutual recursion (non-mandatory links to more info about mutual recursion!). I feel like it was sped through and dismissed too quickly. It's a pretty cool topic. (honestly, I'd rather learn about mutual recursion than the internet.)

Page Link: http://beautyjoy.github.io/bjc-r/cur/programming/recur/recursive-reporters/recursive-reporters-intro.html?topic=berkeley_bjc%2Frecur%2Frecursive-reporters-part1.topic&novideo=true&noreading=true&noassignment=true&course=cs10_fa14.html&step=0 Type of Issue: Distracting Examples Severity: Minor Comments: Might be nice to make a table of combiners just to highlight that that's the main point of all those examples

Page Link: http://beautyjoy.github.io/bjc-r/cur/programming/recur/recursive-reporters/plurals-of-words.html?topic=berkeley_bjc%2Frecur%2Frecursive-reporters-part1.topic&novideo=true&noreading=true&noassignment=true&course=cs10_fa14.html&step=1 Page Link: http://beautyjoy.github.io/bjc-r/cur/programming/recur/recursive-reporters/even-number-filter-without-generalization.html?topic=berkeley_bjc%2Frecur%2Frecursive-reporters-part1.topic&novideo=true&noreading=true&noassignment=true&course=cs10_fa14.html&step=5 Type of Issue: Answer too easily shown Severity: High Comments: Even if I wanted to figure it out on my own, I get bombarded with the solution immediately. Can't we hide it or something?

nish2020 commented 9 years ago

Your Name: Nishchala Singhal

Overview of Lab Comments: This is definitely a comprehensive lab that gives a lot of good practice with recursive reporters; however, it is quite challenging too. I think students could have difficulty completing it, and so it may be beneficial to shorten it a bit. Also, I think some of the problems (like Pascal's and subsets) should not have solutions right in the lab, as it may encourage students to just skip the exercise instead of trying it out. I do like how the first page outlines the basic anatomy of a recursive reporter and contrasts it with the recursive fractal, since that is what students have been working with before.

For specific issues: (you should copy this section as many times as necessary)

Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/recur/recursive-reporters/recursive-reporters-examples.html?topic=berkeley_bjc%2Frecur%2Frecursive-reporters-part1.topic&novideo=true&noreading=true&noassignment=true&course=cs10_fa14.html&step=1 Type of Issue: Lack of clarity Severity: Moderate Comments: There are four recursive reporter examples, and the lab says the student should understand them all before moving on. I think it might be beneficial to have a brief explanation (like on the next page), so that the students can make sure they really do understand.

Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/recur/recursive-reporters/recursively-sorting-merge.html?topic=berkeley_bjc%2Frecur%2Frecursive-reporters-part1.topic&novideo=true&noreading=true&noassignment=true&course=cs10_fa14.html&step=12part1.topic&novideo=true&noreading=true&noassignment=true&course=cs10_fa14.html&step=1 Type of Issue: Lack of clarity Severity: Minor Comments: Maybe just provide the starter code for the merge and sort blocks (it will save time and prevent mistakes).

valenzuelav94 commented 9 years ago

Your Name: Vanessa Valenzuela

Overview of Lab Comments: This is a challenging lab that opens up the "bigger picture" in computer science. The concepts in this lab, however, are incredibly challenging for beginner programmers (even when working in pairs). I think it would be useful to split (at least two days) the amount of information given instead of giving two hours to students to complete the entire lab. It's not about completing it and getting the points, but it's about understanding it.

Page Link: https://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/recur/recursive-reporters/recursive-reporters-intro.html?topic=berkeley_bjc/recur/recursive-reporters-part1.topic&step=0&novideo=true&noreading=true&noassingment=true&course=cs10_fa14.html

Type of Issue: lack of clarity
Severity: minor Comment(s): I think it's difficult to look at the different codes all at once and absorb what they're doing. Instead there should be an explanation somewhere stating the importance of understanding what you're looking at and how that will be applied in the rest of the lab.

Page Link: https://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/recur/recursive-reporters/recursive-reporters-examples.html?topic=berkeley_bjc%2Frecur%2Frecursive-reporters-part1.topic&novideo=true&noreading=true&noassingment=true&course=cs10_fa14.html&step=1

Type of Issue: lack of clarity Severity: minor Comment(s): Again, I think it is imporant to give students direction. Let them know why it is important to learn what they must learn and how it will be applied later, otherwise students will be confused.

adambrown13 commented 9 years ago

Your Name: Adam Brown

Overview of Lab Comments: I think this lab does a really good job of teaching. While a bit long, it goes over all the concepts well, and works well to really get it's point across. But I do think that it does lose some of the glamor by being too extensive. Maybe the best solution would be moving some of the topics over to another lab, or otherwise spreading them out. But as a teaching tool, very well done.

Page Link: https://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/recur/recursive-reporters/pascals-triangle-selftest.html?topic=berkeley_bjc%2Frecur%2Frecursive-reporters-part1.topic&novideo=true&noreading=true&noassingment=true&course=cs10_fa14.html&step=3 Type of Issue: Clarity Severity: Minor Comments: The columns a bit off, which makes the point they are trying to get across a bit confusing. IF they were reformatted, that would help a lot

carenthomas commented 9 years ago

Your Name: Caren Thomas

Overview of Lab Comments: This lab is extremely thorough in terms of recursion practice with lots of problems with ranging difficulty levels. In the ideal situation, I think it'd be a great idea to have it broken up into a part 1 and part 2 (with part 2 having problems with higher difficulty level) so that students can gain a strong understanding, but since time is limited I'm not entirely sure if that's possible. While the lab is lengthy, I think the importance of the content outweighs, so the problems should be kept. It's clear that this lab has been given a lot of review, and it's done well - unfortunately (or fortunately, I guess?) I have no additional commentary distinct from the feedback my peers specified above!

joelterry commented 9 years ago

Name: Joel Terry

Overview of Lab Comments: I love the line "An ounce of math is worth a pound of computer science, sometimes." Overall it's a very tricky lab, although there is a disclaimer at the beginning that students should work with partners. However, if students decide to go on in CS, I feel like the concept of recursive reporters typically comes up more than HOFs, so maybe this lesson should be easier to help students understand the material?

For specific issues: Page Link: https://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/recur/recursive-reporters/recursive-reporters-intro.html?topic=berkeley_bjc%2Frecur%2Frecursive-reporters-part1.topic&novideo=true&noreading=true&noassignment=true&course=cs10_fa14.html&step=0 and https://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/recur/recursive-reporters/recursive-reporters-examples.html?topic=berkeley_bjc%2Frecur%2Frecursive-reporters-part1.topic&novideo=true&noreading=true&noassignment=true&course=cs10_fa14.html&step=1 Type of Issue: Lesson formatting Severity: Minor inconvenience Comments: These are (mostly) duplicate pages. I'm not sure if that was intentional, to reinforce material?

Page Link: https://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/recur/recursive-reporters/subsets-and-efficiency.html?topic=berkeley_bjc%2Frecur%2Frecursive-reporters-part1.topic&novideo=true&noreading=true&noassignment=true&course=cs10_fa14.html&step=9 Type of Issue: Difficulty Severity: Minor Comments: The subset problem feels a bit tricky. I wonder how many students typically get it before they see the answer. It might be good to give them a few more hints before showing the complete solution?

Page Link: https://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/recur/recursive-reporters/recursively-sorting-even-odd.html?topic=berkeley_bjc%2Frecur%2Frecursive-reporters-part1.topic&novideo=true&noreading=true&noassignment=true&course=cs10_fa14.html&step=11 Type of Issue: Misinformation Severity: Minor Comments: "But the best one for recursively generated lists" -> should this be "randomly generated lists"?