Closed Dedekind561 closed 1 year ago
How are you getting on with this? Can I suggest you move for (let i = 0; i<10; i++) style for loops to the "other ways of doing things" last video. I think while and for of are great loopers and for is just unnecessarily complex for beginners (and they won't often write them anyway during the course)
I have some availability for recording if that would be useful?
Hi @gregdyke , I just transferred this issue to another repo - @AltomHussain and I are working on this issue. We'll let you know when it's done so you can create another set of prep exercises as discussed previously
@Dedekind561 @AltomHussain I've looked through your week 2 recordings. What a great job!
I particularly liked
Some general thoughts
if
is not very "real world" useful without some kind of variability: user input or iteration. And iteration isn't very useful without something to iterate over. Maybe we should in the future try arrays -> iteration -> conditionals (and where do booleans fit in this??? they also aren't useful except for the condition in conditionals/iteration)Things that I think you could/should address with additional recordings as intro/alternative ways of doing things
pwd
ls
cd
and clear
do"%
operator was a bit much (though I'd love to keep it for FizzBuzz! -> let me know what you decide?)Things I wish you had done differently (sorry, there is a lot, but that's only because you did such a close-to-perfect job!)
doesMitchLikePizza
(I can't think of a name for this that starts with isXxxxx
in this particular case)num1
is almost never a good variable name -> not having meaningful variable names is a "code smell" for us not having a meaningful example.repeat x times
so maybe it's the wrong place)sunIsOut === true
usually indicates to me that trainees don't understand conditionals very well, so I would avoid teaching it. (I'll put in some practice where we notice that sunIsOut === true evaluates to sunIsOut)=
, ==
and ===
look similar and explaining that one of them is assignment and the other two are comparison operators (this would also have been helped if we'd spent more time on = not being an operator in week 1) Also, wondering what you'll put in the "additional ways of doing things" materials? else if
and for (let foo; foo<10; foo++)
?
Did we cover the !
logical operator? Should we?
Also wondering if for of
would be a good thing to cover -> the we could for each character of a string? (Generally we haven't done much with string manipulation with the methods on string, but Glasgow used them heavily in past cohorts)
Thank you for providing this detailed feedback - all the points are very thorough and helpful. Due to time constraints, I'm not going to be able to action everything here.but it's still super good we've got this record so we can apply these changes if/when we re-record in the future and for future recordings. Things that are immediately actionable though:
%
from the conditionals sectionconsole.log with multiple arguments. This is new and should be briefly explained
Complete agree, should have provided more clarity. Will see if I can add a clarifying note to the video
Terminal commands: This is the first time navigating in the terminal and a "we know you're learning this for the first time, here's what pwd ls cd and clear do"
Completely agree. May have time to add a clarifying note here too. In the future, the video recording plan should mention what's new / what's not new.
I would have liked better continuity from week to week: we have seen template strings, we have seen variable assignment, we have seen the REPL, we have not yet seen arrays, we have not yet seen any navigating in the terminal. I think it's really important to signpost to trainees: "this new" and "this is something you should already know". But, not having the continuity makes it less clunky to shift material about, so maybe we need to discuss our best practices for the tradeoff between continuity/spaced repetition and modularity
Been thinking about this:
Things to note:
for..of
will be show in the video on arrays. But not in this section. Same for standard for
loop. Think they'll be able to get away with using just while
loops here.Also noting that multiple returns from if in functions is a new concept that we don't teach to the best of my knowledge (it's in some of the exercises)
Also wondering how annoying / hard else if
is to learn on top of if
and else
Content
Objectives and topics covered in this section
Booleans and comparison operators ( 8 mins ) - Altom
typeof
operator with booleansConditionals ( 6 mins ) - Mitch
if
statementif..else
statement?Logical operators ( 5 mins ) - Altom
&&
,||
, and!
Iteration ( 6 mins ) - Mitch
while
loop exampleOther ways of doing things ( 6 mins ) - from
while
tofor
for
loops instead ofwhile
loopswhile
loop into afor
loop