bjc-r
bjc-r copied to clipboard
5. Lists 1 (LA Review - Sp15)
Your Name:
Overview of Lab Comments: i.e. Was this lab good or bad? Too fast? Too Slow? Does it need something new?
--- For each specific Issue (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.
- [ ] 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.
Your Name: Julia Alcaraz
Overview of Lab Comments:The lab is a good length since the material is more difficult than the previous. It does a good job at introducing the student to high order functions and explaining them through the presented examples. An overall effective lab.
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/what-good-are-lists.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&novideo&noreading&noassingment&course=cs10_sp15.html Type of Issue: lack of clarity Severity: minor inconvenience Comments: The end of the page mentions lists of lists which is a pretty difficult concept at first, which I believe would be helpful to briefly explain here.
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/composing-higher-order-functions-to-solve-more-complicated-problems.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&novideo&noreading&noassingment&course=cs10_sp15.html Type of Issue: lack of clarity Severity: minor Comments: The last exercise on this page asks the student to make a block that requires the use of the unicode block, however that block is never introduced or even briefly explained, and I think that would be helpful for the student to complete this part.
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/when-you-really-have-to-loop.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&novideo&noreading&noassingment&course=cs10_sp15.html Type of Issue: lack of clarity Severity: minor Comments: In this page for each item loops are introduced to the student and there is an explanation that differentiates from looping through the indexes of a list, however I think that portion would be clearer to the student if the for i loop was mentioned as the loop that iterates through indexes of a list.
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/intro/swap-two-list-values.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&novideo&noreading&noassingment&course=cs10_sp15.html Type of Issue: emphasis Severity: minor Comments: The last paragraph of this page contains information about global variables that is very useful for the student to know, but since it is at the end students might be tempted to skip over it, so it would be helpful to bold a few words or include a block or something that will capture the students attention.
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/projects/hangman/hangman-classic.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&novideo&noreading&noassingment&course=cs10_sp15.html Type of Issue: grammar, Severity: minor inconvenience Comments: Under timeline the sentence says: "This assignment is due on at the end of..."
Your Name: Meghna Dasgupta
Overview of Lab Comments: I think this Lab was perfect! It was very detailed to help the student understand a new concept like lists but at the same time it was not intimidating despite the difficult content. I especially like the addition of the last page (Help with Hangman) because it gives students an idea of where to begin working on their project.
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/composing-higher-order-functions-to-solve-more-complicated-problems.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&novideo&noreading&noassingment&course=cs10_sp15.html Type of Issue: i.e. Lack of Clarity Severity: i.e. Minor Comments: The mod block is used in the block to find the odd numbers. It is a block which has just been introduced once before in Lab 3 so I think it would be useful to remind students about the function of the mod block.
- [ ] Page Link:http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/combining-all-the-items-of-a-list.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&novideo&noreading&noassingment&course=cs10_sp15.html Type of Issue: i.e. Lack of emphasis Severity: i.e. Minor Comments: There are two lines towards the end of the page about using custom-made reporters for the combine block. I think it is an important concept so it should be highlighted / emphasized a little more.
- [ ] Page Link:http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/composing-higher-order-functions-to-solve-more-complicated-problems.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&novideo&noreading&noassingment&course=cs10_sp15.html Type of Issue: i.e. Lack of Clarity Severity: i.e. Slightly severe Comments: At the bottom of the page it asks students to utilize the unicode block. However the block has never been introduced before so most students will find it hard to understand its use. I think there should be a brief explanation about what the unicode block does.
- [ ] Page Link:http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/intro/swap-two-list-values.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&novideo&noreading&noassingment&course=cs10_sp15.html Type of Issue: i.e. Lack of Clarity Severity: i.e. Minor Comments: Though functional programming is mentioned towards the end of the page, it is not explained fully to the students for those who do not know what it means. Maybe a one line definition would help!
Michelle Chen
Overview of Lab Comments: Very detailed lab. Concepts are more difficult to understand, so the shorter length helps. Good amount of exercises, although I think they could be spaced out more.
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/choosing-some-items-from-a-list.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&course=cs10_sp15.html&novideo&noreading&noassignmentI.topic&course=cs10_sp15.html&novideo&noreading&noassignment Type of Issue: lack of clarity Severity: minor Comments: purpose of multiple blank spaces could be further elaborated on, as this may cause confusion later on
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/combining-all-the-items-of-a-list.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&course=cs10_sp15.html&novideo&noreading&noassignment Type of Issue: lack of clarity Severity: minor Comments: function of combine could be further elaborated on. Also, I think explaining about the different number of outputs for each HOF could help students later on when understanding HOFs. This is somewhat elaborated on in a couple of pages, but I think introducing this idea when each HOF is introduced would help students more.
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/more-on-composition-of-higher-order-functions.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&course=cs10_sp15.html&novideo&noreading&noassignmentI.topic&course=cs10_sp15.html&novideo&noreading&noassignment Type of Issue: organization Severity: minor Comments: lots of exercises on one page. Could be overwhelming
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/intro/swap-two-list-values.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&course=cs10_sp15.html&novideo&noreading&noassignment Type of Issue: lack of clarity Severity: minor Comments: term functional programming not fully elaborated on
Your Name: Amy Vatcha
Overview of Lab Comments: -- Great introduction to the use of lists and HOFs in combination -- The hints and examples are very useful as they are similar to the in-lab problems but don't give away too much of the solution to the problems that the student has to solve -- Great introduction to Homework 2 as it taught all the necessary concepts so the student can get started on it after the first lab of the week (Homework 1 had a much tighter time frame)
- [ ] Page Link:http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/choosing-some-items-from-a-list.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&novideo&noreading&noassingment&course=cs10_sp15.html Type of Issue: Code Severity: Inconvenience Comments: Linking the list of states to a Snap! starter file would be very helpful since it is inefficient for a student to type it out again to use HOFs on it
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/more-on-composition-of-higher-order-functions.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&novideo&noreading&noassingment&course=cs10_sp15.html Type of Issue: Lack of clarity Severity: Very minor inconvenience Comments: This page would be a great place to introduce the concept of unicode to the students even though it isn't a very commonly used function in Snap!
Tori Cabot
This was a good lab overall. It read a little slow but I believe that taking time with these concepts now will pay off for students later. The Composing HOFs page was particularly clear and well laid out. The Mutation of Variables page also took an appropriate amount of time for a difficult concept. I like that the homework is introduced on the last page of the lab. It gives students the chance to think about how what they just learned will apply directly to what they are about to work on for a grade.
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/what-good-are-lists.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&novideo&noreading&noassingment&course=cs10_sp15.html Type of Issue: lack of clarity Severity: minor inconvenience Comments: We should clarify the important parts of the "try this" section. A lot of labs have extensive suggestions after "try this" and sometimes it is too much for students to complete. We should provide them with a prioritization of what they can skip and what is essential to completing future projects.
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/when-you-really-have-to-loop.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&novideo&noreading&noassingment&course=cs10_sp15.html Type of Issue: lack of clarity Severity: potentially will cause confusion Comments: The "increasing?" block is a reporter in the provided SNAP! file and a predicate in the lab instructions. We should pick one and provide a logical reason why to pick one over the other.
Justin Kim
It's a good start to the concept of higher order functions and lists. It is a difficult for students to understand this at first. I would of liked to see some of those self answer questions, because it seemed to help students visualize how the code works that deals with lists and higher order functions. Initially, it seemed that the lab has a lot of words, but after reading it more carefully, the lab is nicely detailed. I would have to agree with some of the other people in terms of what lab questions the students to work on to help them in the future. For example, I don't know if I mentioned this in the last lab, but the number guessing game was a considerably large for the students, yet it wasn't even tested for in the lab check offs. With the labs, having a lot of practice problems is a great thing, but having too many can be unnecessary. Also, having the lab check off questions on the website is nice so that students can prepare for the questions that will be asked by a Lab assistant or a TA, but it might sway the students to only do the code that will be asked for. That's why I was saying maybe doing questions that are necessary for future projects and maybe alter the lab check off questions to keep the big idea questions, but alter the coding questions to say something like, "Lab assistant or TA will check you off on your codes based on what they would like to see" so that students are more inclined to do all of the coding questions in the lab, instead of doing the ones being tested on. This idea is open for debate, but that's why I feel like would make sense.
Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/more-on-composition-of-higher-order-functions.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&course=cs10_sp15.html&noassignment&noreading&novideo Type of issue: The "Try This" section Severity: Minor Comments: Too many questions in the try this section. Maybe two questions at the most.
Your Name: Michael Wang
Overview of Lab Comments: This lab was generally very instructive, but may be moving at a quick pace. The introduction to map using the algebraic functions as comparisons is confusing initially, but showing the clear examples of how it works helped. The way combine and keep are introduced are very detailed and presented well, but the combine function could use some more examples in addition to just "average" and then display how the code works itself.
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/more-on-composition-of-higher-order-functions.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&novideo&noreading&noassingment&course=cs10_sp15.html Type of Issue: General suggestion Severity: May confuse students Comments: Personally, I think that unicode is an interesting concept to introduce, but this was the only instance when unicode was actually utilized. I don't recall it appearing in future labs or on exams. It might be better to find a clearer and less abstract example to illustrate the effects of nesting higher order functions.

Your Name: Anusha Syed
Overview of Lab Comments: All the exercises and examples in this lab are really helpful to understanding how lists and HOFs work. Although HOFs are difficult at first, I think this lab does a great job of explaining how they work (i.e. leaving one input blank, etc.). I also think a few quiz questions throughout would be nice to make sure they know that they are using lists/HOFs correctly through out the lab.
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/more-on-composition-of-higher-order-functions.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&course=cs10_sp15.html&novideo&noreading&noassignment Type of Issue: lack of clarity Severity: A bit confusing, hint might be helpful. Comments: I remember being stuck on the "display word" block when doing this lab. I think the hint of making and using a helper function within the block would be really helpful.
Liza Praprotnik
This lab is a great introduction to the general concepts of lists and higher-order functions, and how they are implemented in Snap!. I think the pace of the lab is appropriate; it introduces many new ideas, but isn't so packed as to be overwhelming.
Page link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/combining-all-the-items-of-a-list.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&novideo&noreading&noassingment&course=cs10_sp15.html Type of issue: Clarity Severity: Nothing major, just to clear it up a little I think that somewhere in the introduction of higher-order functions in Snap!, the lab should emphasize what each of the higher-order functions return (keep and map return a list, while combine returns a single value or string).
Page link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/intro/swap-two-list-values.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&novideo&noreading&noassingment&course=cs10_sp15.html Type of issue: Clarity Severity: Minor I would explain what functional programming is.
Your Name: Caroline Kim
Overview of Lab Comments: When I first found out that Lists and Higher Order Functions are taught together in a single lab, I though it would be difficult for students to understand. However, after going through the lab, I actually think it is a good idea that Lists and Higher Order Functions are combined together because one can not be used without the other. The descriptions in the lab are very specific, and it is helpful that there are small questions after each important lesson that students can practice, and learn/grasp the concept better.
--- For each specific Issue (Copy this section as many times as necessary) ---
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/choosing-some-items-from-a-list.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&novideo&noreading&noassingment&course=cs10_sp15.html Type of Issue: level of difficulty Severity: minor inconvenience Comments: There is nothing specifically wrong with the page, however, in the "Try this" section, I feel like it would be helpful if more hints are given (for example, the block that the students should use to get certain results) since it is their first time learning lists and higher order functions.
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/more-on-composition-of-higher-order-functions.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&novideo&noreading&noassingment&course=cs10_sp15.html Type of Issue: level of difficulty Severity: prevents students from continuing Comments: The last problem on this page (creating the "exaggerate") block may appear a little difficult to first time learners. I feel like the question lacks description, and may be more helpful if there is a more thorough list of words that students should exaggerate and some hints of blocks that students should/can use.
Your Name: Mason Fujimoto
Overview of Lab Comments: I enjoyed how the activities in this lab built upon each other. I am worried though that this lab will not be finished in one period due it its length. I felt the pages on higher order functions are extremely important. A way to improve this lab would be to add quizzes on these sections to prevent misconceptions. Other than that I think the only other improvement would be ways to streamline this lab in terms of time.
--- For each specific Issue (Copy this section as many times as necessary) ---
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/more-on-composition-of-higher-order-functions.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&novideo&noreading&noassingment&course=cs10_sp15.html Type of Issue: breadth of exercises excessive Severity: minor Comments: I feel that completing the exercises in this page could take up to a half hour, and not every exercise is necessary. I feel that removing the exaggerate block is one way to remedy this and cut down the lab.
Name: Arielle Spencer
Overview: I thought this was a really well written lab. It covered a lot of very important material and due to that and its consequent length, it's possible that students may not finish, or only finish things that get checked off. It was a bit hand-holdy, especially in the beginning but that will hopefully help understanding more than hinder it since they are harder concepts. The number of exercises is pretty high and difficult to complete in a single lab, and the difficulty of them may make it difficult for students to try to complete the lab at home on their own if they don't finish. Maybe make some of the more interesting ones optional or have them go back if they have time. Overall, really good and good exercises.
No specific issues, just the length/difficulty of so many exercises :)
Your Name: Omar Buenrostro
Comments: I feel this lab serves as a good intro to two very important topics: lists and higher order functions. I liked that for each problem the student was asking to do, there was a "list" of helpful examples and hints to help solidified the concept in a person's brain. The large of amounts of examples were helpful because lists and high order functions a difficult and important concepts, but on the other hand, the examples make the lab excessively long, and people who are already behind in labs are less likely to be able to complete this lab.
--- For each specific Issue (Copy this section as many times as necessary) ---
- Page Link:http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/intro/swap-two-list-values.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&novideo&noreading&noassingment&course=cs10_sp15.html Type of Issue: Clarity Severity: Minor Comments: It was already stated, but a definition of what functional programming is would be helpful on this page, as well as stating what paradigm of programming we are stepping into when we start mutating lists (for the curious cat).
Your Name: Yifat Amir
Overview of Lab Comments: I thought this lab was relatively straightforward, and that the examples given are relevant and clear! I think that higher order functions would be the only thing students may not fully understand, but that might just take more time and practice. I think the challenge/extra problems on the bottom of some of the pages are great practice, but students should know that they don't need to complete them all in order to be checked off for the lab (otherwise students may not finish the lab in class). However, not including those, the lab is a good length-- not too long or too short!
--- For each specific Issue
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/using-the-LIST-block-to-make-a-list.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&novideo&noreading&noassingment&course=cs10_sp15.html Type of Issue: lack of clarity Severity: very minor Comments: I would explicitly point out the empty list, how it can be created, and an example of why it may be useful. Students ask me questions related to this all time throughout the semester even! And a couple times they said that they didn't know that an empty list is even a thing.
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/what-good-are-lists.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&novideo&noreading&noassingment&course=cs10_sp15.html Type of Issue: lack of clarity Severity: relatively minor Comments: In the Beatles example, I think it would be useful to note that it is a list of lists, since they have not necessarily seen that before.
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/choosing-some-items-from-a-list.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&novideo&noreading&noassingment&course=cs10_sp15.html Type of Issue: too much time Severity: minor Comments: Just in general, I would recommend either taking out some of the "Try This!" exercises at the bottom or clarifying that the student may move on without completing them all, because otherwise some students will work on them until they get them all and then not finish the lab and complain that the lab wasn't doable in 2 hours.
Elizabeth Steger
Overview: This is a great introduction to lists and HOFs. It seems to be very clear and easy to follow, as well as packed with information. I really like the Geography example as explaining the keep block. I know this is a very important concept that carries through the semester, and that's why it's great this lab has so many exercises--even if the students don't complete them their first time through.
Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/more-on-composition-of-higher-order-functions.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&novideo&noreading&noassingment&course=cs10_sp15.html
Issue: Gentle reminder could be beneficial Severity: Minor
In the exercises, it says how if you get stuck breaking down a whole sentence to find the longest word you can try to just compare two words first. I think this is a great thing to have there, but I think it's a great opportunity to say how a key part of solving problems (especially in CS) is by breaking them down into smaller simpler ones. :)
Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/composing-higher-order-functions-to-solve-more-complicated-problems.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&novideo&noreading&noassingment&course=cs10_sp15.html
No issue here! I just found this page really straightforward and awesome.
Name: Caryn Tran
Overview of Lab Comments: The lab was long. But it contained a lot of useful information. I suggest the following possible changes. Change the "Try This!" into "Exercise 1, 2, 3..." the former sounds optional, while the latter sounds more important. If labs are going to continue to be long, have a summary page at the end so that students rehash the large new concepts and new blocks introduced.
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/using-the-LIST-block-to-make-a-list.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&course=cs10_sp15.html&novideo&noreading&noassignment Type of Issue: Unnecessary Information Severity: Minor Comments: "When a list value is seen in a variable watcher, you can use these controls to modify the contents of the list directly. But we're not doing that for a while, so for now just focus on the values in the red rectangles." I think that this should be reduced to an annotated link to the bottom of the page to explain. Reading it now seems frivolous and makes the lab wordy.
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/what-good-are-lists.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&course=cs10_sp15.html&novideo&noreading&noassignment Type of Issue: Words vs Pictures Severity: Minor Comments: The second input slot in the item block is something you haven't seen before: "a rectangle with two orange smaller rectangles inside it." Just insert a picture instead or or along with describing it. Makes the lab easier to read.
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/transforming-each-item-of-a-list.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&course=cs10_sp15.html&novideo&noreading&noassignment Type of Issue: Confusing Severity: Mild Comments: The following paragraph is difficult to understand. So many different examples being thrown about. "The first input to the map block has a form you haven't seen before this: The grey ring means that the input should be a function. What we mean by this is basically the same thing as the f(x)=3x+7 kind of function in algebra, except that it doesn't have to be a numeric function. In this case the function we want is "join the letter 's' after the given word." When you drag the join block into the map input slot, the grey ring is still visible, to remind you that the input is a function, not the word that you'd get from some particular joining. Instead of using a variable, like the x in f(x), to represent the input to the function, we leave one of join's input slots as an empty box. This is supposed to remind you of the notation 3×☐+7 ("three times box plus seven") that you learned for functions in elementary school before you knew about variables."
Your Name: Miguel Ugalde
Overview of Lab Comments: I think that this lab is a good introduction to lists. I felt like it was kind of dense. I know that when I took the class this was one of the harder labs. There are a lot of new ideas and blocks in this one. I got a feeling that a lot of my students wanted to know more about how exactly the list is being stored and why certain errors come about. Like what happens if you fill the empty box in the mapping block. I think that maybe the lab can be cut up into two parts, and each can have a little more depth about some specific processes.
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/transforming-each-item-of-a-list.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&course=cs10_sp15.html&novideo&noreading&noassignment Type of Issue: lack of clarity Severity: mild Comments: I had a lot of students in my lab get confused with the mapping block. They would fill in the empty "box" and wouldn't understand why they're code wasn't working. Although the lab makes an effort to really point out that that space should be left blank, a lot of students wanted to know what happens, in terms of the logic, when you fill in that bock. Maybe we can add a portion that explains what the computer does if the space is in fact filled in .
- [ ] Page Link :http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/mutation/mutate-vars.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&course=cs10_sp15.html&novideo&noreading&noassignment Type of Issue: Lack of clarity Severity: minor Comments: I felt like the last page of the lab was very wordy and dense. The explanation is good about the foo block, but I think that it could have been layed out better. Maybe breaking up the examples more for this part.
Katherine McGauley
Overview of Lab Comments: i.e. I felt like the pacing of this lab was quite good, covering some difficult topics but not cramming in too much. I also think that some of the examples could potentially be re-phrased as questions to get students to stop and reset their pace, but all in all, I really liked this lab!
--- For each specific Issue (Copy this section as many times as necessary) ---
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/choosing-some-items-from-a-list.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&novideo&noreading&noassingment&course=cs10_sp15.html Type of Issue: Long example doesn't provide source code Severity: Might prevent students from trying the example Comments: The "Geography" game example illustrates some operations on a list containing 50 of the United States--it might be helpful to provide a link to a Snap! window containing that variable so that students can follow along with the example on their own without needing to type in all of the state names.
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/composing-higher-order-functions-to-solve-more-complicated-problems.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&novideo&noreading&noassingment&course=cs10_sp15.html Type of Issue: Sightly verbose explanation Severity: i.e. Minor Comments: It might be helpful to concretely define the inputs and outputs of map and keep near the top of the page, before delving into the individual explanations of each script. Short explanations to the tune of "Map takes in a function and a list, and returns a new list of the same size as the input list" and "Keep takes in a predicate function and a list, and returns a new list of equal or lesser size than the input list" might be helpful to stick at the top of this page for reference.
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/intro/swap-two-list-values.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&novideo&noreading&noassingment&course=cs10_sp15.html Type of Issue: Typo Severity: i.e. Minor Comments: The first block shown on the page reads "swap items..." and the second screenshot, supposedly of the same block, says "swap rows..."; could be changed to "swap items..." to keep the rest of the page consistent.
Your Name: Thomas Lee
Overview of Lab Comments: Overall, I think that this lab did a good job of teaching the concepts surrounding lists and higher order functions. It may have been helpful to add in an additional page describing what higher order functions are before transitioning from lists to higher order functions i.e. higher order functions take functions as inputs, require a blank slot for arguments to be run through, can produce different types of output (lists, strings, values), etc. I think that a lot of the content in this lab was dense and it may have made sense to divide the content over more pages. Finally, I think that having quizzes may have been more effective than having so many "Try this" sections.
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/composing-higher-order-functions-to-solve-more-complicated-problems.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&novideo&noreading&noassingment&course=cs10_sp15.html Type of Issue: Clarity Severity: Minor, depending on past lab experience Comments: The instructions for making the acronym block tell the student to utilize the sentence to list block; I would suggest indicating that this block must be imported from tools in order to be used.
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/when-you-really-have-to-loop.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&novideo&noreading&noassingment&course=cs10_sp15.html Type of Issue: Clarity Severity: Minor Comments: The wording of the first prompt at the bottom of the page is confusing. ("Try this: Display a longish list using time instead of space on the screen by saying each item for two seconds.")
Kimia Ghodoosian
Overview of Lab Comments: This lab is fairly well-paced. I remember really struggling with some of the additional exercise questions when I was taking the class though. There are a lot of slides devoted to showing examples of outputs using HOFs. I think what may be more valuable for students is to try and guess these outputs for themselves. The final slide was a great preview of future projects and encourages students to start thinking about how to apply what they've just learned in their homework.
Your Name: Jessica Larson
Overview of Lab Comments: I think this lab introduced things a little quickly, and maybe moved too fast.
--- For each specific Issue (Copy this section as many times as necessary) ---
- [http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/what-good-are-lists.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&course=cs10_sp15.html&novideo&noreading&noassignment ] Page Link: Type of Issue: tedious Severity: minor inconvenience Comments: Could a starter file be offered with the nouns and articles, etc, and maybe have the students create a list of the verbs. Something along those lines?
William Cheung
Overview of Lab Comments: I like the lists lab. But make exercises more of the required type than "try this". I like the snapshots of the results so it is easier to see what outputs are like. HOFs might be confusing at first but this lab does a good job clearing it up. The last few exercises are difficult, but it leads well for the Hangman homework.
Specific Issues: Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/more-on-composition-of-higher-order-functions.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&novideo&noreading&noassingment&course=cs10_sp15.html type of issue: amount of work severity: minor comments: Many exercises on one slide, can be frustrating. Instead, spread if over a couple slides for more accomplished feeling.
Your Name: Satoko Ayabe
Overview of Lab Comments: The pace of the lab was really good. Lists is a confusing lab, and it's nice that this lab's pace was a bit slower than all the other ones from before
--- For each specific Issue (Copy this section as many times as necessary) ---
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/more-on-composition-of-higher-order-functions.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&novideo&noreading&noassingment&course=cs10_sp15.html Type of Issue: to help students Severity: i.e. minor inconvenience Comments: Put an advice: "use script variables!". This really helped me last semester
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/transforming-each-item-of-a-list.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&novideo&noreading&noassingment&course=cs10_sp15.html Type of Issue: to help students Severity: minor inconvenience Comments: A good hint could be: "consider what type of data "John Lennon" is (It is a list instead of a string!"
Your Name: Eurie Oh
Overview of Lab Comments: I thought that for explaining such confusing concept, this lab did a very good job. However, I do think that it would be a good idea to tell students that they need to import blocks to use some of the list blocks they need for the lab.
--- For each specific Issue (Copy this section as many times as necessary) ---
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/choosing-some-items-from-a-list.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&course=cs10_sp15.html&novideo&noreading&noassignment Type of Issue: starter file Severity: "minor inconvenience" Comments: I think that making a starter file for the States problem would be a good idea
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/when-you-really-have-to-loop.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&course=cs10_sp15.html&novideo&noreading&noassignment Type of Issue: lack of clarity Severity: minor convenience Comments: When telling the students to create the expand block, saying that they'll need to make an additional block to put into a HOF I think would really help them understand how they are supposed to approach the problem
Your Name: Nicolas Zoghb
Overview: for a lab that introduces two new very difficult concepts (HOFs and Lists), I found that it was just the right pace and that it challenged students, with a few minor issues.
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/what-good-are-lists.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&novideo&noreading&noassingment&course=cs10_sp15.html Type of Issue: code context Severity: minor Comments: some students did not understand the point of a list of lists. Nor did they get why anyone would employ such a difficult concept. It would be nice to explain that on this page.
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/more-on-composition-of-higher-order-functions.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&novideo&noreading&noassingment&course=cs10_sp15.html Type of Issue: difficulty in understanding Severity: potentially problematic Comments: students found that there was not enough information given on HOFs and how leaving an input blank in a HOF block worked. This seemed to be true especially when they tried to use the "item ___ of [=]" block in conjunction with HOFs.
Janice Chui
The questions for the lab are really helpful in reinforcing the knowledge of lists. The examples provide a good framework for the question exercises for the students. The lab can maybe show a picture of the 'replace' function when mentioning the replace block.
Your Name: Emily Pedersen
Overview of Lab Comments: I think this lab was a good introduction to lists, and using higher order functions. I do think that map, keep, and combine could be explained further- what are their domains and ranges, how many blanks spaces do each function need? I also thought that the mutation aspect should be convered in more depth, especially since it is an important topic is CS61A that I personally didn't grasp as a CS10 student.
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/what-good-are-lists.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&novideo&noreading&noassingment&course=cs10_sp15.html Type of Issue: bug Severity: minor inconvenience Comments: In this case, are the nouns, verbs, etc script or global variables? How would this code work if you haven't bound those names to something before?
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/transforming-each-item-of-a-list.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&novideo&noreading&noassingment&course=cs10_sp15.html Type of Issue: lack of clarity Severity: prevents students from continuing inconvenience Comments: I don't think students have seen the map or keep blocks before, so you might want to introduce the domain and range of map, and that at least one of the inputs needs to be blank.
Your Name: Jiazhen Chen
Overview of Lab Comments: I think the lab is pretty nice. It gives a good introduction to higher order function. It gives obvious examples that help students to understand. The only concern is that the lab is a bit long and there's many word descriptions throughout the lab. Some students may feel a bit bored with so much reading.
--- For each specific Issue (Copy this section as many times as necessary) ---
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/mutation/mutate-vars.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&course=cs10_sp15.html&noassignment&noreading&novideo Type of Issue: Severity: Comments: It's not a problem. I just feel that this page does not relate too much to the list until the very end of the page, where "mutation" is introduced. This lab has already been a long lab. I feel that maybe this example about the global variable would be better if it goes with the end of lab 4, and just introduce the mutation attribute of list at this page.
Your Name: Daniel Duazo
Overview of Lab Comments: This lab was a good introduction to how lists in Snap work. I might just be nitpicking here but I think it would have been better if lists in Snap were zero-indexed like how they are in other languages. It might make it a bit more difficult to understand, but it would make the transition to other languages easier.
--- For each specific Issue (Copy this section as many times as necessary) ---
- [ ] Page Link: http://inst.eecs.berkeley.edu/~cs10/labs/cur/programming/lists/hof/more-on-composition-of-higher-order-functions.html?topic=berkeley_bjc%2Flists%2Flists-I.topic&novideo&noreading&noassingment&course=cs10_sp15.html Type of Issue: lack of clarity Severity: "minor inconvenience" Comments: It says to "replace "good" with "great," "bad" with "terrible," "like" with "love," etc." It might be unclear to some students if they are only supposed to replace those words, or other words as well.