CodeYourFuture / syllabus

Old Syllabus Website for CodeYourFuture
https://syllabus.codeyourfuture.io
154 stars 123 forks source link

Teach Terminal/Command Line Earlier In The Course #7

Open ChrisOwen101 opened 4 years ago

ChrisOwen101 commented 4 years ago

Which module(s) and week(s) does this change effect? Module(s): React + 1 Other Week(s): n/a

What is the work that needs to be done?

Our students currently do not learn Terminal or Command Line properly until they reach the React course. We should find some time earlier than React in the syllabus to teach command line.

This lesson should cover enough that they can use React (and the common tasks associated with React) through the Terminal.

Areas to consider:

This would should include

Why is this work important to do?

The extra cognitive load of learning command line whilst doing React means that some students struggle more than they should with the module. By moving this earlier into the syllabus is gives us some more lead time to make sure students understand it.

Who might need to know about this change?

@40thieves

40thieves commented 4 years ago

Thanks for starting the discussion @ChrisOwen101, it was on my list too.

How to navigate through a folder structure

I actually think this could be expanded to a more general concept of the "file tree metaphor". It is important for the terminal, but also when understanding other things that use the same metaphor. For example, import/require statements require knowledge of relative paths, and to some extent URLs too.

Our students currently do not learn Terminal or Command Line properly until they reach the React course

I think we should explicitly address the question of whether the terminal should be taught from the beginning of the class, as this is an extremely common suggestion from new volunteers IME. I personally am on the fence about it, so open to opinions.

40thieves commented 4 years ago

Something I just thought of too: React is also the first time that students would encounter a daemon (background) script. For performance (on slow laptops), we now explicitly teach them how to stop/start the CRA daemon. But I wonder if this would be helped by introducing the concept earlier. I am however struggling to think of a useful example of a daemon other than CRA.

SallyMcGrath commented 3 years ago

Something towards this -- suitable for HTML W3 coursework (prepping for JS1) ?

https://github.com/CodeYourFuture/CLI-Treasure-Hunt

@Dedekind561 @40thieves

SallyMcGrath commented 3 years ago

https://github.com/CodeYourFuture/syllabus/commit/6673da7554102f0b7e9f98998eb6943cd9919dcb

https://github.com/CodeYourFuture/CLI-Treasure-Hunt

As we are all super busy with the TDD conversion, I just threw this in to the syllabus as is. Please add a bunch of stuff to the linked repo when you have time.

SallyMcGrath commented 2 years ago

https://syllabus.codeyourfuture.io/git/terminal/homework