README
author Christian Urban <christian.urban@kcl.ac.uk>
Thu, 06 Jun 2024 19:14:33 +0100
changeset 489 d51cacc92480
parent 426 b51467741af2
permissions -rw-r--r--
updated to Scala 3
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
424
Christian Urban <christian.urban@kcl.ac.uk>
parents: 396
diff changeset
     1
https://github.com/5CCS2PEP/assignment2021scala-shrisiva02/issues/30
Christian Urban <christian.urban@kcl.ac.uk>
parents: 396
diff changeset
     2
Christian Urban <christian.urban@kcl.ac.uk>
parents: 396
diff changeset
     3
Screenshot 2022-01-13 at 21.15.00
Christian Urban <christian.urban@kcl.ac.uk>
parents: 396
diff changeset
     4
Christian Urban <christian.urban@kcl.ac.uk>
parents: 396
diff changeset
     5
problems with .vscode in files
Christian Urban <christian.urban@kcl.ac.uk>
parents: 396
diff changeset
     6
Christian Urban <christian.urban@kcl.ac.uk>
parents: 396
diff changeset
     7
=============
Christian Urban <christian.urban@kcl.ac.uk>
parents: 396
diff changeset
     8
Christian Urban <christian.urban@kcl.ac.uk>
parents: 396
diff changeset
     9
333
24bc76d97db2 updated
Christian Urban <urbanc@in.tum.de>
parents: 329
diff changeset
    10
Wartremover
24bc76d97db2 updated
Christian Urban <urbanc@in.tum.de>
parents: 329
diff changeset
    11
24bc76d97db2 updated
Christian Urban <urbanc@in.tum.de>
parents: 329
diff changeset
    12
./wartremover -traverser org.wartremover.warts.Return -traverser org.wartremover.warts.Var -traverser org.wartremover.warts.MutableDataStructures $i
24bc76d97db2 updated
Christian Urban <urbanc@in.tum.de>
parents: 329
diff changeset
    13
24bc76d97db2 updated
Christian Urban <urbanc@in.tum.de>
parents: 329
diff changeset
    14
24bc76d97db2 updated
Christian Urban <urbanc@in.tum.de>
parents: 329
diff changeset
    15
compilation
24bc76d97db2 updated
Christian Urban <urbanc@in.tum.de>
parents: 329
diff changeset
    16
24bc76d97db2 updated
Christian Urban <urbanc@in.tum.de>
parents: 329
diff changeset
    17
git clone https://github.com/wartremover/wartremover.git
24bc76d97db2 updated
Christian Urban <urbanc@in.tum.de>
parents: 329
diff changeset
    18
sbt "++ 2.13.1" core/assembly
24bc76d97db2 updated
Christian Urban <urbanc@in.tum.de>
parents: 329
diff changeset
    19
341
e9d5287c3107 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 333
diff changeset
    20
======================
e9d5287c3107 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 333
diff changeset
    21
scalafix
333
24bc76d97db2 updated
Christian Urban <urbanc@in.tum.de>
parents: 329
diff changeset
    22
341
e9d5287c3107 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 333
diff changeset
    23
https://scalacenter.github.io/scalafix/docs/users/installation.html
e9d5287c3107 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 333
diff changeset
    24
https://gabro.github.io/scalafix/docs/installation/cli.html
e9d5287c3107 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 333
diff changeset
    25
e9d5287c3107 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 333
diff changeset
    26
e9d5287c3107 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 333
diff changeset
    27
=====================
e9d5287c3107 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 333
diff changeset
    28
bash cheatsheet
e9d5287c3107 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 333
diff changeset
    29
e9d5287c3107 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 333
diff changeset
    30
https://devhints.io/bash
333
24bc76d97db2 updated
Christian Urban <urbanc@in.tum.de>
parents: 329
diff changeset
    31
======================
24bc76d97db2 updated
Christian Urban <urbanc@in.tum.de>
parents: 329
diff changeset
    32
24bc76d97db2 updated
Christian Urban <urbanc@in.tum.de>
parents: 329
diff changeset
    33
24bc76d97db2 updated
Christian Urban <urbanc@in.tum.de>
parents: 329
diff changeset
    34
./dff > sort | more
24bc76d97db2 updated
Christian Urban <urbanc@in.tum.de>
parents: 329
diff changeset
    35
./dff | sort > d
24bc76d97db2 updated
Christian Urban <urbanc@in.tum.de>
parents: 329
diff changeset
    36
24bc76d97db2 updated
Christian Urban <urbanc@in.tum.de>
parents: 329
diff changeset
    37
24bc76d97db2 updated
Christian Urban <urbanc@in.tum.de>
parents: 329
diff changeset
    38
Repeating commands for data in a file:
24bc76d97db2 updated
Christian Urban <urbanc@in.tum.de>
parents: 329
diff changeset
    39
24bc76d97db2 updated
Christian Urban <urbanc@in.tum.de>
parents: 329
diff changeset
    40
input="d"
24bc76d97db2 updated
Christian Urban <urbanc@in.tum.de>
parents: 329
diff changeset
    41
24bc76d97db2 updated
Christian Urban <urbanc@in.tum.de>
parents: 329
diff changeset
    42
while IFS= read -r file; do opendiff some_copy "$file"; done < "$input"
24bc76d97db2 updated
Christian Urban <urbanc@in.tum.de>
parents: 329
diff changeset
    43
24bc76d97db2 updated
Christian Urban <urbanc@in.tum.de>
parents: 329
diff changeset
    44
----------------------------
24bc76d97db2 updated
Christian Urban <urbanc@in.tum.de>
parents: 329
diff changeset
    45
283
ef5f62bf5987 updated
Christian Urban <urbanc@in.tum.de>
parents: 278
diff changeset
    46
Decompilation 
ef5f62bf5987 updated
Christian Urban <urbanc@in.tum.de>
parents: 278
diff changeset
    47
ef5f62bf5987 updated
Christian Urban <urbanc@in.tum.de>
parents: 278
diff changeset
    48
ef5f62bf5987 updated
Christian Urban <urbanc@in.tum.de>
parents: 278
diff changeset
    49
java -jar procyon-decompiler-0.5.36.jar -jar templates1/drumb.jar -o out
ef5f62bf5987 updated
Christian Urban <urbanc@in.tum.de>
parents: 278
diff changeset
    50
329
8a34b2ebc8cc updated
Christian Urban <urbanc@in.tum.de>
parents: 283
diff changeset
    51
-------------------------
8a34b2ebc8cc updated
Christian Urban <urbanc@in.tum.de>
parents: 283
diff changeset
    52
~/pep-material/moss/mossnet -l java -b ../base.java *.java
283
ef5f62bf5987 updated
Christian Urban <urbanc@in.tum.de>
parents: 278
diff changeset
    53
-------------------------
ef5f62bf5987 updated
Christian Urban <urbanc@in.tum.de>
parents: 278
diff changeset
    54
ef5f62bf5987 updated
Christian Urban <urbanc@in.tum.de>
parents: 278
diff changeset
    55
266
ca48ac1d3c3e updated to 2.13
Christian Urban <urbanc@in.tum.de>
parents: 264
diff changeset
    56
Brain fuck optimizer
ca48ac1d3c3e updated to 2.13
Christian Urban <urbanc@in.tum.de>
parents: 264
diff changeset
    57
ca48ac1d3c3e updated to 2.13
Christian Urban <urbanc@in.tum.de>
parents: 264
diff changeset
    58
https://github.com/Dash-Lambda/Eso/blob/master/src/main/scala/interpreters/BFOptimized.scala
ca48ac1d3c3e updated to 2.13
Christian Urban <urbanc@in.tum.de>
parents: 264
diff changeset
    59
ca48ac1d3c3e updated to 2.13
Christian Urban <urbanc@in.tum.de>
parents: 264
diff changeset
    60
--------------------------
ca48ac1d3c3e updated to 2.13
Christian Urban <urbanc@in.tum.de>
parents: 264
diff changeset
    61
278
0c2481cd8b1c updated
Christian Urban <urbanc@in.tum.de>
parents: 276
diff changeset
    62
-----------------------------
0c2481cd8b1c updated
Christian Urban <urbanc@in.tum.de>
parents: 276
diff changeset
    63
node
0c2481cd8b1c updated
Christian Urban <urbanc@in.tum.de>
parents: 276
diff changeset
    64
Welcome to Node.js v12.11.1.
0c2481cd8b1c updated
Christian Urban <urbanc@in.tum.de>
parents: 276
diff changeset
    65
Type ".help" for more information.
0c2481cd8b1c updated
Christian Urban <urbanc@in.tum.de>
parents: 276
diff changeset
    66
> "11" + 1
0c2481cd8b1c updated
Christian Urban <urbanc@in.tum.de>
parents: 276
diff changeset
    67
'111'
0c2481cd8b1c updated
Christian Urban <urbanc@in.tum.de>
parents: 276
diff changeset
    68
> "11" - 1
0c2481cd8b1c updated
Christian Urban <urbanc@in.tum.de>
parents: 276
diff changeset
    69
10
0c2481cd8b1c updated
Christian Urban <urbanc@in.tum.de>
parents: 276
diff changeset
    70
> 
264
ecd989eee8bd updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
    71
ecd989eee8bd updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
    72
ecd989eee8bd updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
    73
ecd989eee8bd updated
Christian Urban <urbanc@in.tum.de>
parents: 229
diff changeset
    74
203
eb188f9ac038 updated
Christian Urban <urbanc@in.tum.de>
parents: 199
diff changeset
    75
scalac -Ydelambdafy:inline -d docdiff.jar docdiff.scala
eb188f9ac038 updated
Christian Urban <urbanc@in.tum.de>
parents: 199
diff changeset
    76
228
33c2655be47d updated
Christian Urban <urbanc@in.tum.de>
parents: 203
diff changeset
    77
gerp -h     // gerp without filename
203
eb188f9ac038 updated
Christian Urban <urbanc@in.tum.de>
parents: 199
diff changeset
    78
eb188f9ac038 updated
Christian Urban <urbanc@in.tum.de>
parents: 199
diff changeset
    79
191
f78b18c4c886 updated
Christian Urban <urbanc@in.tum.de>
parents: 178
diff changeset
    80
given two lists, is one a sublist of the other except one
f78b18c4c886 updated
Christian Urban <urbanc@in.tum.de>
parents: 178
diff changeset
    81
element
167
349d706586ef updated
Christian Urban <urbanc@in.tum.de>
parents: 117
diff changeset
    82
191
f78b18c4c886 updated
Christian Urban <urbanc@in.tum.de>
parents: 178
diff changeset
    83
check Graham's Haskell book
f78b18c4c886 updated
Christian Urban <urbanc@in.tum.de>
parents: 178
diff changeset
    84
f78b18c4c886 updated
Christian Urban <urbanc@in.tum.de>
parents: 178
diff changeset
    85
five-in-a-row as a spiral
f78b18c4c886 updated
Christian Urban <urbanc@in.tum.de>
parents: 178
diff changeset
    86
(Tic-Tac-Toe on steriods or Go for the weak mind)
f78b18c4c886 updated
Christian Urban <urbanc@in.tum.de>
parents: 178
diff changeset
    87
229
5549016ab10f updated
Christian Urban <urbanc@in.tum.de>
parents: 228
diff changeset
    88
----------
5549016ab10f updated
Christian Urban <urbanc@in.tum.de>
parents: 228
diff changeset
    89
for serving locally a directory
191
f78b18c4c886 updated
Christian Urban <urbanc@in.tum.de>
parents: 178
diff changeset
    90
229
5549016ab10f updated
Christian Urban <urbanc@in.tum.de>
parents: 228
diff changeset
    91
python -m SimpleHTTPServer 8000
191
f78b18c4c886 updated
Christian Urban <urbanc@in.tum.de>
parents: 178
diff changeset
    92
----------
f78b18c4c886 updated
Christian Urban <urbanc@in.tum.de>
parents: 178
diff changeset
    93
CokeBottle cokeBottle = new CokeBottle();
f78b18c4c886 updated
Christian Urban <urbanc@in.tum.de>
parents: 178
diff changeset
    94
f78b18c4c886 updated
Christian Urban <urbanc@in.tum.de>
parents: 178
diff changeset
    95
joke from...
f78b18c4c886 updated
Christian Urban <urbanc@in.tum.de>
parents: 178
diff changeset
    96
f78b18c4c886 updated
Christian Urban <urbanc@in.tum.de>
parents: 178
diff changeset
    97
https://www.youtube.com/watch?v=9e_oEE72d3U
f78b18c4c886 updated
Christian Urban <urbanc@in.tum.de>
parents: 178
diff changeset
    98
----------
116
Christian Urban <urbanc@in.tum.de>
parents: 113
diff changeset
    99
178
fdf77ee57cdc updated
Christian Urban <urbanc@in.tum.de>
parents: 167
diff changeset
   100
---------------
fdf77ee57cdc updated
Christian Urban <urbanc@in.tum.de>
parents: 167
diff changeset
   101
Hepec...generating static pages
fdf77ee57cdc updated
Christian Urban <urbanc@in.tum.de>
parents: 167
diff changeset
   102
https://sake92.github.io/hepek/quick-start.html
113
b8ba08170d79 hook test
Christian Urban <urbanc@in.tum.de>
parents: 112
diff changeset
   103
167
349d706586ef updated
Christian Urban <urbanc@in.tum.de>
parents: 117
diff changeset
   104
==================================
78
85f2f75abeeb updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   105
Calling ediff from the command line
85f2f75abeeb updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   106
85f2f75abeeb updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   107
85f2f75abeeb updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   108
emacs --eval "(ediff-files \"k1502472/drumb.scala\" \"k1502752/drumb.scala\")"
85
fd3f8581ce85 updated
Christian Urban <urbanc@in.tum.de>
parents: 78
diff changeset
   109
fd3f8581ce85 updated
Christian Urban <urbanc@in.tum.de>
parents: 78
diff changeset
   110
fd3f8581ce85 updated
Christian Urban <urbanc@in.tum.de>
parents: 78
diff changeset
   111
deleting comments from scala files
fd3f8581ce85 updated
Christian Urban <urbanc@in.tum.de>
parents: 78
diff changeset
   112
89
fac25de665d2 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 85
diff changeset
   113
find . -name '*.scala' -print0 | xargs -0 perl -n -p -0 -i.bak -e 's%/\*([^*].*?)?\*/%%gs;s%^([^\"\n\r]*(\"[^\"\n\r]*\"[^\"\n\r]*?)*?)//([^*\n\r].*)?$%$1%gm'
fac25de665d2 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 85
diff changeset
   114
fac25de665d2 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 85
diff changeset
   115
fac25de665d2 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 85
diff changeset
   116
find . -name '*.scala' -print0 | sed -i.2 's|def ordered_moves(dim: Int, path: Path, x: Pos): List[Pos] = ..|//def ordered_moves(dim: Int, path: Path, x: Pos): List[Pos] = ..|g'
fac25de665d2 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 85
diff changeset
   117
fac25de665d2 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 85
diff changeset
   118
fac25de665d2 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 85
diff changeset
   119
LC_ALL=C sed -i.2 -- 's|def ordered_moves(dim: Int, path: Path, x: Pos): List\[Pos\] = \.\.|//def ordered_moves(dim: Int, path: Path, x: Pos): List[Pos] = ..|g' k*/knight3.scala.bak
fac25de665d2 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 85
diff changeset
   120
fac25de665d2 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 85
diff changeset
   121
LC_ALL=C sed -i.2 -- 's|def first_closed_tour_heuristic(dim: Int, path: Path): Option\[Path\] = \.\.\.|//def first_closed_tour_heuristic(dim: Int, path: Path): Option[Path] = ...|g' k*/knight3.scala.bak
fac25de665d2 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 85
diff changeset
   122
90
d77af4aca939 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 89
diff changeset
   123
LC_ALL=C sed -i.2 -- 's|def first_tour_heuristic(dim: Int, path: Path): Option\[Path\] = \.\.\.|//def first_tour_heuristic(dim: Int, path: Path): Option[Path] = ...|g' k*/knight3.scala.bak
d77af4aca939 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 89
diff changeset
   124
d77af4aca939 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 89
diff changeset
   125
LC_ALL=C sed -i.2 -- 's|def nullable (r: Rexp) : Boolean = \.\.\.|//def nullable (r: Rexp) : Boolean = ...|g' k*/re.scala.bak
d77af4aca939 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 89
diff changeset
   126
d77af4aca939 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 89
diff changeset
   127
LC_ALL=C sed -i.2 -- 's|def der (c: Char, r: Rexp) : Rexp = \.\.\.|//def der (c: Char, r: Rexp) : Rexp = ...|g' k*/re.scala.bak
d77af4aca939 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 89
diff changeset
   128
d77af4aca939 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 89
diff changeset
   129
LC_ALL=C sed -i.2 -- 's|def simp(r: Rexp) : Rexp = \.\.\.|//def simp(r: Rexp) : Rexp = ...|g' k*/re.scala.bak
d77af4aca939 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 89
diff changeset
   130
d77af4aca939 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 89
diff changeset
   131
LC_ALL=C sed -i.2 -- 's|def ders (s: List[Char], r: Rexp) : Rexp = \.\.\.|//def ders (s: List[Char], r: Rexp) : Rexp = ...|g' k*/re.scala.bak
d77af4aca939 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 89
diff changeset
   132
d77af4aca939 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 89
diff changeset
   133
LC_ALL=C sed -i.2 -- 's|def matcher(r: Rexp, s: String): Boolean = \.\.\.|//def matcher(r: Rexp, s: String): Boolean = ...|g' k*/re.scala.bak
d77af4aca939 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 89
diff changeset
   134
d77af4aca939 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 89
diff changeset
   135
LC_ALL=C sed -i.2 -- 's|def replace(r: Rexp, s1: String, s2: String): String = \.\.\.|//def replace(r: Rexp, s1: String, s2: String): String = ...|g' k*/re.scala.bak
d77af4aca939 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 89
diff changeset
   136
d77af4aca939 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 89
diff changeset
   137
LC_ALL=C sed -i.2 -- 's|println(matcher(EVIL,|//println(matcher(EVIL,|g' k*/re.scala.bak
d77af4aca939 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 89
diff changeset
   138
99
e10a9b2fd35a updated
Christian Urban <urbanc@in.tum.de>
parents: 90
diff changeset
   139
LC_ALL=C sed -i.2 -- 's|for (i <- 1 to 5000001 by 500000)|for (i <- 1 to 11 by 10)|g' k*/re.scala.bak
e10a9b2fd35a updated
Christian Urban <urbanc@in.tum.de>
parents: 90
diff changeset
   140
e10a9b2fd35a updated
Christian Urban <urbanc@in.tum.de>
parents: 90
diff changeset
   141
e10a9b2fd35a updated
Christian Urban <urbanc@in.tum.de>
parents: 90
diff changeset
   142
194
060b081523de updated
Christian Urban <urbanc@in.tum.de>
parents: 191
diff changeset
   143
060b081523de updated
Christian Urban <urbanc@in.tum.de>
parents: 191
diff changeset
   144
111
cd6b9fe4bce5 updated
Christian Urban <urbanc@in.tum.de>
parents: 99
diff changeset
   145
cd6b9fe4bce5 updated
Christian Urban <urbanc@in.tum.de>
parents: 99
diff changeset
   146
cd6b9fe4bce5 updated
Christian Urban <urbanc@in.tum.de>
parents: 99
diff changeset
   147
cd6b9fe4bce5 updated
Christian Urban <urbanc@in.tum.de>
parents: 99
diff changeset
   148
194
060b081523de updated
Christian Urban <urbanc@in.tum.de>
parents: 191
diff changeset
   149
=========================
060b081523de updated
Christian Urban <urbanc@in.tum.de>
parents: 191
diff changeset
   150
Admin atudd
060b081523de updated
Christian Urban <urbanc@in.tum.de>
parents: 191
diff changeset
   151
=========================
060b081523de updated
Christian Urban <urbanc@in.tum.de>
parents: 191
diff changeset
   152
Hi all,
060b081523de updated
Christian Urban <urbanc@in.tum.de>
parents: 191
diff changeset
   153
060b081523de updated
Christian Urban <urbanc@in.tum.de>
parents: 191
diff changeset
   154
As you will have heard from Chris, you've been appointed as TAs on 5CCS2PEP -- congrats.  We had a large number of high quality applicants.  It was quite a challenge to fit you to labs based on your own timetables, but we managed to figure out a schedule.
111
cd6b9fe4bce5 updated
Christian Urban <urbanc@in.tum.de>
parents: 99
diff changeset
   155
194
060b081523de updated
Christian Urban <urbanc@in.tum.de>
parents: 191
diff changeset
   156
The module setup is very similar to last year, with the difference that there are now 5 C++ assignments and 5 Scala assignments, to balance things out.  Chris should have told you which sessions you're each covering.  The definitive schedule for the module is the timetable on timetables.kcl.ac.uk, but to summarise:
060b081523de updated
Christian Urban <urbanc@in.tum.de>
parents: 191
diff changeset
   157
All the labs are in Bush House.  Most sessions have about 40 students, so there are two TAs.
060b081523de updated
Christian Urban <urbanc@in.tum.de>
parents: 191
diff changeset
   158
Labs start in week 1 of term (the first lab is on Monday the 24th of September); there's a week off for reading week; then labs run until the end of term (last lab on Thursday the 13th of December).  If you're planning to skip part of the last week of term to get a cheap flight home, the best bet is to see if you can swap sessions with someone else for that week.
060b081523de updated
Christian Urban <urbanc@in.tum.de>
parents: 191
diff changeset
   159
As the first lecture is on Friday, the first week of labs are pretty laid back.  A Java revision assignment has been set that you will have seen last year or the year before (Assignment 0).  This doesn't contribute towards the module marks; its main purpose is to get the students into the lab, to set themselves up ahead of assignment 1 -- this is released on Friday, and does count towards the module marks.  The to do list I've given them is:
060b081523de updated
Christian Urban <urbanc@in.tum.de>
parents: 191
diff changeset
   160
Complete the Plagiarism and Collusion quiz.  They need to get 100% to do anything on this module.
060b081523de updated
Christian Urban <urbanc@in.tum.de>
parents: 191
diff changeset
   161
Create an account on GitHub.com if they don't have one already.
060b081523de updated
Christian Urban <urbanc@in.tum.de>
parents: 191
diff changeset
   162
Enter their GitHub username (e.g. SomeStudent) into the form linked to from the module KEATS page: in the section 'How this module works', click 'Register to submit work on this module via github.com'
060b081523de updated
Christian Urban <urbanc@in.tum.de>
parents: 191
diff changeset
   163
Click the link to start assignment 0, and do some work on it.
060b081523de updated
Christian Urban <urbanc@in.tum.de>
parents: 191
diff changeset
   164
Note the link to assignment 0 is set up so that if they haven't a GitHub username (step 3 above), they can't click the link to the assignment.  If you want to skip straight to it, here's the link:
112
3252fd0c0dd2 updated
Christian Urban <urbanc@in.tum.de>
parents: 111
diff changeset
   165
194
060b081523de updated
Christian Urban <urbanc@in.tum.de>
parents: 191
diff changeset
   166
https://classroom.github.com/a/xyDQjYoD
112
3252fd0c0dd2 updated
Christian Urban <urbanc@in.tum.de>
parents: 111
diff changeset
   167
194
060b081523de updated
Christian Urban <urbanc@in.tum.de>
parents: 191
diff changeset
   168
...but you could just as well look at your own assignment0 repository from last year/the year before, to see how you solved it.  Please don't give the students this direct link -- as the automated testing service is running their code on College machines, we need to ensure we only let the appropriate students access the resources for this modules.
060b081523de updated
Christian Urban <urbanc@in.tum.de>
parents: 191
diff changeset
   169
060b081523de updated
Christian Urban <urbanc@in.tum.de>
parents: 191
diff changeset
   170
I'll circulate the link to assignment 1 (for the second week of labs) and a model answer in due course.
112
3252fd0c0dd2 updated
Christian Urban <urbanc@in.tum.de>
parents: 111
diff changeset
   171
194
060b081523de updated
Christian Urban <urbanc@in.tum.de>
parents: 191
diff changeset
   172
Finally, as for some of you this is your first time at being a TA, here are a few helpful notes:
060b081523de updated
Christian Urban <urbanc@in.tum.de>
parents: 191
diff changeset
   173
Being a good teacher in programming is about getting the students to think, and to become self-sufficient.  If they ask you a question, think about how you would find the answer out yourself.  If you would Google it, Google it with them.  If you'd get a piece of paper out and start sketching out ideas, encourage them to do that.
060b081523de updated
Christian Urban <urbanc@in.tum.de>
parents: 191
diff changeset
   174
Don't give students the answers.  If they realise what the right way to do something is, you can agree, but otherwise, guide them in the right direction but don't just spell it out.  If they seem stuck, go back a few steps and cover the basics of the assignment.
060b081523de updated
Christian Urban <urbanc@in.tum.de>
parents: 191
diff changeset
   175
Don't sit in the corner of the lab waiting for things to happen.  Walk around, ask people how they're getting on.  Some students are a bit shy to ask for help, we need to engage them with the course and help them get the most out of it.
060b081523de updated
Christian Urban <urbanc@in.tum.de>
parents: 191
diff changeset
   176
As a TA, you're representing the department as a member of staff.  Don't make advances on the students.  Outside the lab, you're a student and it's none of our business; but for those hours there, you're staff.
060b081523de updated
Christian Urban <urbanc@in.tum.de>
parents: 191
diff changeset
   177
If a student kicks off (I've never heard of this happening) we've got your back - come get a member of academic or office staff, you're paid to teach not do crowd control.  
060b081523de updated
Christian Urban <urbanc@in.tum.de>
parents: 191
diff changeset
   178
We take attendance in labs.  Half way through, one of you should go to the departmental office (level 6) and pick up a barcode scanner.  There's a barcode to scan to denote the session -- you scan this once -- then scan the student cards of the students in the lab.  It's unfortunately important that we do this, as the UK Border Agency take a sample of attendance records for overseas students, and the College will lose its ability to sponsor overseas student visas if we aren't seen to be taking attendance.
060b081523de updated
Christian Urban <urbanc@in.tum.de>
parents: 191
diff changeset
   179
If you're doing two consecutive sessions, classes finish at 5 to the hour and start again at 5 past.  Take a break.
060b081523de updated
Christian Urban <urbanc@in.tum.de>
parents: 191
diff changeset
   180
If you're talking a lot, and need some water, don't forget about the cold water machines in the kitchens.
060b081523de updated
Christian Urban <urbanc@in.tum.de>
parents: 191
diff changeset
   181
Our students sometimes say that the labs are noisy.  This is usually due to students who aren't taking the module sitting in the lab.  Politely ask them to be quiet or leave; there are other labs on campus and other study spaces.
060b081523de updated
Christian Urban <urbanc@in.tum.de>
parents: 191
diff changeset
   182
Because I'm not in the labs, but you are, if there any snags please let me know.
060b081523de updated
Christian Urban <urbanc@in.tum.de>
parents: 191
diff changeset
   183
I think that's it - I look forwards to working with you.
112
3252fd0c0dd2 updated
Christian Urban <urbanc@in.tum.de>
parents: 111
diff changeset
   184
194
060b081523de updated
Christian Urban <urbanc@in.tum.de>
parents: 191
diff changeset
   185
All the best,
112
3252fd0c0dd2 updated
Christian Urban <urbanc@in.tum.de>
parents: 111
diff changeset
   186
194
060b081523de updated
Christian Urban <urbanc@in.tum.de>
parents: 191
diff changeset
   187
Andrew
112
3252fd0c0dd2 updated
Christian Urban <urbanc@in.tum.de>
parents: 111
diff changeset
   188