15
Computing Science for non-continuing students Dr Helen Purchase School of Computing Science University of Glasgow [email protected]

Computing Science for non-continuing students Dr Helen Purchase School of Computing Science University of Glasgow [email protected]

Embed Size (px)

Citation preview

Page 1: Computing Science for non-continuing students Dr Helen Purchase School of Computing Science University of Glasgow helen.purchase@glasgow.ac.uk

Computing Science for non-continuing students

Dr Helen PurchaseSchool of Computing Science

University of Glasgow

[email protected]

Page 2: Computing Science for non-continuing students Dr Helen Purchase School of Computing Science University of Glasgow helen.purchase@glasgow.ac.uk

Motivation

• Introductory courses for students who:– have a general interest in Computing Science– do not wish to study Computing Science further– do not (necessarily) have any programming

experience– do not (think they) want to learn how to program– are studying any other degree programme

• Everyone can benefit from knowing about:– algorithmic and computational thinking– how computational processes are evident in the

world around us

Page 3: Computing Science for non-continuing students Dr Helen Purchase School of Computing Science University of Glasgow helen.purchase@glasgow.ac.uk

Degree structure

Page 4: Computing Science for non-continuing students Dr Helen Purchase School of Computing Science University of Glasgow helen.purchase@glasgow.ac.uk

Two courses

“Principles and Practise of Computing Science”

“Programming Digital Media”

Page 5: Computing Science for non-continuing students Dr Helen Purchase School of Computing Science University of Glasgow helen.purchase@glasgow.ac.uk

What makes these courses different?

• Not a typical ‘preparatory’ course to prepare students for advanced concepts in later years– programming (CS1P)– fundamental concepts (relations, sets,

interaction design, circuits and registers etc.) (CS1Q)

• Broad, introductory focus– unexpected consequence: more advanced

concepts can be taught early

Page 6: Computing Science for non-continuing students Dr Helen Purchase School of Computing Science University of Glasgow helen.purchase@glasgow.ac.uk

PPCS: Freedom from constraints

• No requirement to focus on low-level programming and technical skills

• Topics described at a higher level of detail – still understandable – releases students from concerns of programming

syntax and compilation errors

• Covers – diverse topics: databases, logic and operating

systems– advanced topics: concurrency, cryptography and

artificial intelligence

Page 7: Computing Science for non-continuing students Dr Helen Purchase School of Computing Science University of Glasgow helen.purchase@glasgow.ac.uk

Principles

• Algorithms: simple constructs, procedures, functions,

parameters, recursion

• Data structures: simple variables, arrays, graphs

• Boolean logic: simple statements, truth tables and circuits;

simple transformations

• Theory: complexity, intractability

Page 8: Computing Science for non-continuing students Dr Helen Purchase School of Computing Science University of Glasgow helen.purchase@glasgow.ac.uk

Practise

• Artificial intelligence: robots, game trees and learning

• Human computer interaction: usability concepts and guidelines

• Databases: relational structures and representations, simple

normalisation

• Systems: concurrency, operating systems

• Security: cryptography, malware, safety-critical systems

Page 9: Computing Science for non-continuing students Dr Helen Purchase School of Computing Science University of Glasgow helen.purchase@glasgow.ac.uk

Historical context

DenningAristotlede MorganBooleShannonBabbageLovelaceKindall

Mohammed al-Khwarizmi

TuringSearleDijkstraDiffie-Hellman-MerkleMandelbrotDeep Blue

Page 10: Computing Science for non-continuing students Dr Helen Purchase School of Computing Science University of Glasgow helen.purchase@glasgow.ac.uk

Lab work

• Raptor (flow charting)• Nifty assignments (http://nifty.stanford.edu/)– Picobot– Black box sorting and testing

• Fractal software• Game tree visualisation• Critiques: interfaces, databases• Essay on chosen current topic

Page 11: Computing Science for non-continuing students Dr Helen Purchase School of Computing Science University of Glasgow helen.purchase@glasgow.ac.uk

Challenges

• Breadth (and intensity) of topics

• Pace• Mathematics• Engagement• Lab work• Class size• Textbook

2n

Page 12: Computing Science for non-continuing students Dr Helen Purchase School of Computing Science University of Glasgow helen.purchase@glasgow.ac.uk

PDM: A back-door to Python

• Manipulation of digital media• Basic control and data structures:–manipulate images by changing pixels– create sounds by iterating over samples– render lists of numbers into music– create artefacts like collages, music, and

digital video special effects

• Show how computational primitives can manipulate media

Page 13: Computing Science for non-continuing students Dr Helen Purchase School of Computing Science University of Glasgow helen.purchase@glasgow.ac.uk

What next…

• For the students:– high performers who have been

persuaded to continue with Computing Science can do our level 2 ‘Fast Track’ programme

• For us:– refinement

• fewer topics in more depth• more appropriate lab exercises

– publicity

Page 14: Computing Science for non-continuing students Dr Helen Purchase School of Computing Science University of Glasgow helen.purchase@glasgow.ac.uk

Personal reflections

• Pace • Breadth: – no ‘building on’ topics– new topics

• Interesting historical context• Fun exercises• Guest lectures