Wrap-up and resources
Key Takeaways
- 1. How a computer thinks: algorithms without code: Every program is sequence, decision and repetition. Write the steps in your own words first; translating them to any language is then easy.
- 2. Data made simple: variables, lists and tables: Choosing the right shape of data is half the solution: a list for order, a dictionary for lookup by name, a queue for first come first served.
- 3. Problem solving: from a vague question to steps: Do not write code for a problem you have not solved by hand on two examples. Examples and edge cases come before code.
- 4. Computational Thinking & Visual Programming: Before any language: split the problem, spot what repeats, drop the unimportant details, then order the steps. Scratch blocks are the same loops and conditions you later write as text.
Glossary
| Term | Definition | Part |
|---|---|---|
| Algorithm | Ordered, clear, finite steps that turn input into output. | 1 |
| Pseudocode | Steps written in near-human, near-code language that no machine runs. | 1 |
| Flowchart | A drawing of an algorithm: rectangle for a step, diamond for a decision, arrow for direction. | 1 |
| Variable | A name that points to a value you can read and change. | 2 |
| Index | The position number of an item in a list, starting at 0. | 2 |
| Dictionary | Key → value pairs for direct lookup by name. | 2 |
| Decomposition | Splitting a problem into small parts you solve and test alone. | 3 |
| Edge case | An input at the edge of the range: empty, one item, negative, huge. | 3 |
| Trace table | A hand run recording variable values after every step. | 3 |
| Decomposition | Breaking a big problem into smaller, independently solvable pieces. | 4 |
| Pseudocode | A structured description of an algorithm in code-like text without compiler rules. | 4 |
| Trace table | A table recording variable values after each step of a manual execution. | 4 |
Resources for this lesson
Grouped by type. Start with the official docs for precision, or an article or video for the explanation.
Official docs1
Tools4
ScratchDrag-and-drop programming: you see sequence, decision and repetition as coloured blocks.scratch.mit.eduVisuAlgoAnimations of data structures where you watch every operation.visualgo.netExercism: Python trackShort problems with mentor review, great for practising the method.exercism.orgPython TutorAn automatic trace table: draws every variable at every step.pythontutor.com
Done with this lesson?
Sign in to save your progress.