Computer Science Field Guide
Chapters
1. Introduction
1.1. What’s the big picture?
1.2. How to use this guide
1.3. About this guide
1.4. Further reading
2. Data representation
2.1. What’s the big picture?
2.2. Getting Started
2.3. Representing Text with bits
2.4. Representing numbers with bits
2.5. Colours
2.6. The whole story!
2.7. Further reading
3. Algorithms
3.1. Brainstorming
3.2. What’s the big picture?
3.3. Getting started
3.4. Searching
3.5. Sorting
3.6. Subtopic 3
3.7. Subtopic n
3.8. The whole story!
3.9. Further reading
4. Human-computer interaction
4.1. What’s the big picture?
4.2. Getting started
4.3. Subtopic 1
4.4. Subtopic 2
4.5. Subtopic 3
4.6. Subtopic n
4.7. The whole story!
4.8. Further reading
5. Programming languages
5.1. What’s the big picture?
5.2. Getting started
5.3. Subtopic 2
5.4. Subtopic 3
5.5. Subtopic n
5.6. The whole story!
5.7. Further reading
6. Coding - Introduction
6.1. What’s the big picture?
6.2. Getting started
6.3. Subtopic 1
6.4. Subtopic 2
6.5. Subtopic 3
6.6. Subtopic n
6.7. The whole story!
6.8. Further reading
7. Compression coding
7.1. What’s the big picture?
7.2. Getting Started - Simple Run Length Coding
7.3. Image compression
7.4. General purpose compression
7.5. Sound compression?
7.6. Subtopic n
7.7. The whole story!
7.8. Further reading
8. Encryption coding
8.1. What’s the big picture?
8.2. Getting started - Caesar Cipher
8.3. Password Storage?
8.4. Sending messages securely?
8.5. The whole story!
8.6. Further reading
9. Error control coding
9.1. What’s the big picture?
9.2. Getting Started - The Parity Magic Trick
9.3. ISBN
9.4. RAID Disks (Maybe...)
9.5. The whole story!
9.6. Further reading
10. Artificial Intelligence
10.1. What’s the big picture?
10.2. Chatterbots and The Turing Test
10.3. The whole story!
10.4. Further reading
11. Complexity and tractability
11.1. What’s the big picture?
11.2. Algorithms, problems, and speed limits
11.3. Tractability
11.4. The Travelling Salesman Problem
11.5. Other intractable problems
11.6. The whole story!
11.7. Further reading
12. Formal languages
12.1. What’s the big picture?
12.2. Getting started
12.3. Finite state automata
12.4. Regular expressions
12.5. Grammars and parsing
12.6. The whole story!
12.7. Glossary
12.8. Further reading
13. Computer graphics
13.1. What’s the big picture?
13.2. Graphics transforms
13.3. Drawing lines and circles
13.4. The whole story!
13.5. Further reading
14. Computer vision
14.1. What’s the big picture?
14.2. Lights, Camera, Action!
14.3. Noise
14.4. Face recognition
14.5. Edge detection
14.6. The whole story!
14.7. Further reading
15. Network communication protocols
15.1. What’s the big picture?
15.2. Getting started
15.3. Subtopic 1
15.4. Subtopic 2
15.5. Subtopic 3
15.6. Subtopic n
15.7. The whole story!
15.8. Further reading
16. Software engineering
16.1. What’s the big picture?
16.2. Analysis: What do we build?
16.3. Design: How do we build it?
16.4. Testing: Did we Build the Right Thing / Does it Work?
16.5. Software processes
16.6. Agile software development
16.7. The whole story!
16.8. Further reading
17. Appendices
17.1. Glossary
17.2. Contributors
17.3. News
17.4. WebGL on Windows, Linux and Mac OS X
17.5. Teaching Guide for New Zealand
17.6. Teaching Guide for Germany
17.7. Future plans for the field guide
17.8. Guide to System for Open Source Developers
17.9. Development Status
17. Appendices
ΒΆ
17.1. Glossary
17.2. Contributors
17.2.1. Acknowledgements
17.3. News
17.4. WebGL on Windows, Linux and Mac OS X
17.4.1. Quick Fixes
17.4.2. Trouble in Linux, Windows or Mac OS X
17.4.3. The work-around
17.4.4. Extra trouble
17.4.5. Diagnose your GPU in Chrome
17.5. Teaching Guide for New Zealand
17.6. Teaching Guide for Germany
17.7. Future plans for the field guide
17.7.1. Computability
17.7.2. Logic circuits
17.7.3. Big data/cloud computing
17.7.4. Parallel/concurrent computing
17.7.5. Databases (or Information Management?)
17.7.6. Operating systems
17.7.7. Information assurance and security
17.7.8. Mobile computing
17.7.9. Social and professional issues
17.7.10. Quantum computing
17.8. Guide to System for Open Source Developers
17.8.1. Process of Textbook Creation
17.8.2. Versioning
17.8.3. PDF Generation
17.8.4. ePub/MOBI Generation
17.8.5. How to add content
17.8.6. Update script
17.8.7. Visual Appearance/CSS
17.9. Development Status