Journal Quotes

Lines from the Journal, read back in class. No names.

Lines from the Journal worth keeping, in the words they were written in. Some get read back in class. Nobody is named, here or there. Each heading is the prompt that was asked.

One thing that doesn’t work, one that does, one you would change — and how (Class 10, 9/28)

Pair work

One thing that does not work for this course is one partner typing and the other saying what to type because sometimes the person saying what to type doesn’t know what to put and sometimes the typer does their own thing.

I think the working with a partner in class is excellent because it makes me have to think through what I’m doing and articulate it to someone else who is typing and it allows me to hear a sometimes different solution to how I would do things.

Check.is

one thing that I think does not work is the check.is because you can just check it with a system.out.println(); statement and it takes less typing and you can see what mistakes you made. … I would just remove the check.is statements total.

I also don’t like the check.is part of the course because if you want a carrer in coding your not going to have that and you need to be able to see if something doesn’t work on the screen not just from a check passing or failing. But I can live with doing it.

Pair work

I don’t think the partner work is good. I think it would be better for people to work on things themselves and have partners to help figure things out not one doing the work and one doing the thinking. That just seems counter productive to me.

the one person types one person talks strategy doesn’t work for me. I learn better when I’m doing the work alongside someone and learning from their example and working it out with them, rather than entirely relying on them to help or having to do all the thinking myself. I’m newer to programming so some things are very unfamiliar or don’t stick immediately for me.

one thing that doesnt work: the format of doing work with a partner, for me at least it is difficult having to pilot someone who might think and work entirely different from me and vice versa.

One thing that doesn’t work great, at least for me, is doing work with a partner every class. I know it is a great way to learn and discuss, however I feel as if we spend a bit too much time on it. Maybe once a week instead of twice could be better. It sometimes feels like we push the lecture part of class a bit quick to get to the partner work.

I also enjoy the partners, as I can explain a thought process of the code out loud when stuck, rubber ducky style.

I like working with partners and I think it helps both people understand what they’re learning and helps them both do better on in class assignments.

I do like working code in class with a partner. It makes it more memorable, and being able to ask questions about problems in real time is great. Practice makes perfect.

The cooperation groupwork in classes is wonderful, it helps share ideas, thought processes and build over gaps in knowledge

the working with a partner system really works well

one thing that does is getting to work in pairs.

Pyret, then Java

switching from Pyret to Java was like jumping of a cliff like I was just starting to get used to Pyret then we went to Java perhaps teaching Java and Pyret could be a bit more intertwined

I personally had confusion with the jump from pyret to java, perhaps the jump could’ve been made earlier, or been more gradual, I feel like we had started to sink into pyret when we had swapped over.

Something I think does work well in this course is using Pyret before actually getting into Java to get people used to some parts before the switch. I think the part of this class that could be done better is part of how that switch goes, it is a bit too sudden. I think what could be done to make the switch from Pyret to Java a bit less confusing is introducing a little bit of Java gradually as a smaller part when doing the Pyret part of the course.

One thing that doesn’t work well in this course is some parts of Pyret. … One thing that I would change is defining concepts in Java first instead of in Pyret terms and then in Java terms.

What works

One thing that definitely does work in this course is that we always pick up from where we were last class. No jumping ahead, and no one is expected to learn a great deal of content on their own besides reading, which we discuss.

one thing that does work is how we pick up from the last class every time and there being no jumps in material.

I enjoy the 2 quiz attempts, I enjoy speaking in front of the class to explain your code(as it shows that you understand what you wrote)

One thing that does work is having two quizzes on the reading, as it highlights and fixes whatever was missed during the most important parts of the reading.

one thing that dose work is the progress exams giving access to a coding environment because most code is built from trial and error.

I think the examples at the help and having others present their work helps everyone out.

One thing that works for this course is the assignments because they are able to be completed after the readings and class time so they are a good practice.

I like that we go in depth with programming during class to get some practice in, it really helps with the assignments

the class schedule and process works well, the in-class time is effective, and allows for students to get help and to work at their own pace, and the assignments and quizzes very properly test for textual knowledge.

What to change

I would say to just have available solutions to the in class assignments open up after class, rather than waiting until the postmortom of the first assignment to see how I organize and work through my code compares to the solution.

One thing that I feel does not work is to give a few more examples of how to format code, I feel like the textbook doesn’t always do a good job of showing absolutely everything in one place, the information is there, but it is sometimes hard to understand from just reading it over before practicing with the material.

I would maybe like it if as the class is going on through the partner classwork we could as a class go over certain sections just as like a buffer as to where we are supposed to be at.

One thing that doesn’t work is not enough explanation … I would like more explanations like video that can help us or something.

I am not a fan of using discord for communication. It isn’t horrible, but it is just different from how my other classes operate.

i think i would change the way deadlines work

What does the dot do, in your own words? (Class 9, 9/23)

The dot reads what comes before it and then based off that, it knows what to do with what comes after.

The dot applies an action to something. In Check.is and IO.println, it takes the action from Check and IO and applies it to what comes in parentheses after it. For “#”.repeat, it applies it to the # before the dot.

The first is the rule. The second found the split the rule hides: for Check and IO the action goes to what is in the parentheses, and for "#" it goes to the text before the dot. Monday’s reading is about that difference, and has a name for it.

Examples in main instead of a where: block: one thing better, one thing worse (Class 9, 9/23)

One thing that was worse was that it was more difficult to determine which tests go with which method, where with Pyret it was contained within the function.

That is the cost of moving the examples into main, stated exactly, and it is the design recipe’s own point about keeping examples beside the function they describe.

Which differences between Pyret and Java are consequential, and which are only spelling? (Class 8, 9/21)

placing all calls in a println line instead of calling them by themselves.

That is the whole difference between Pyret’s REPL and a Java program, said better than the page said it: Pyret shows you every value, and Java shows nothing unless you ask.

in pyret i feel like the codes whent with the wording so function is fun but in java function is initial.

A real hole, found in one sentence. fun is a herald: it announces a function and says nothing else. Java has no herald. The first word of a Java function is the type of its answer — int stripeWidth(int u) reads gives back an int — and that is the only announcement you get.