Revision and Remedial work on programming topics
1 Revision and Remedial work on programming topics
Background: Programming and technical skills are key foundations for courses in Computer Science across all years. Our Software Development Courses in Year 1, and Data Structure and Algorithm Courses in Year 2, provide the main route in picking up these skills and to demonstrate proficiency through different forms of assessment. It is essential that all students have solid skills on these topics.
Revision and Remedial Material: Below is a list of resources that you can draw on for revising material on programming topics, either when doing one of these courses in Year 1 or 2, or as remedial work strengthen your foundations in these topics, if you have already progressed into Year 3. Make sure to draw on this material if you find yourself struggling with programming topics. This material complements your courses: look for information in your current courses first.
- Code clinic: a drop-in session to ask programming-related questions; this is run by lab-helpers in the GRID (Collaborative 2); the latest slots are listed here: https://www.macs.hw.ac.uk/students/code-clinic-edinburgh-cs/
- Maths Gym: an exercise session on foundational mathematical topics across all years and across courses in the Maths and CS departments; these are drop-in sessions and some interactive workshops: https://mathsgym.hw.ac.uk/
- General technical skills:
- This a full course (usually done in 2 days) on Linux skills: Software Carpentry
- Learning Linux Command-line
- do all of it: short 5 section course
- short challenges and quizzes per section
- Across tech skills search LinkedIn Learning for courses, especially:
- F28DA: Java Algorithms
- recommended to do all of the course, with challenge (and solutions)
- in a shortened setup, drop String and Array algorithms
- F28DA: Learning Java Collections
- recommended to do some sections with practical exercises:
- Secs 1, 2, 3 on basics
- Specific collections: 3. Iterators, 4. Set, 5. List, 6. Queues, 7. Maps
- 1x challenge for each of Secs 3-7
- recommended to do some sections with practical exercises:
- F28HS: Learning C
- recommended to do all of it (just 5 sections)
- challenges are short (estim 10-15mins each)
- F28HS: Advanced C Programming
- recommended to do most of it: 5 core sections with basics on arrays and pointers
- selected challenges: there are 2-3 per section; each about 10-15 minutes
- preparing for F20DP: Linux performance tuning
- course of ca 2.5 hours plus time for challenges
- F28DA: Java Algorithms