C07 Resources — Naming Conventions, Internal Documentation & Validation
Criterion scope: Naming conventions (camelCase, snake_case, Hungarian notation), internal documentation (header comments, inline comments), validation techniques (existence check, range check, type check).
C7-1: Naming Conventions
Existing Materials (CriterionXX/)
Criterion07/ has a professional naming conventions guide and "The Year That Wouldn't Change" activity on hardcoded values/magic numbers. The gap is in interactive practice and video content.
External Resources
| Resource | Source | Format | VCAA Mapping | Why It's Useful |
|---|---|---|---|---|
| PEP 8 — Style Guide for Python Code | Python.org | Reading (official) | Naming conventions: snake_case for variables/functions, CamelCase for classes | The official Python style guide. Students should know this exists. Directly relevant to snake_case conventions used in Python. |
| Real Python — How to Write Beautiful Python Code With PEP 8 | Real Python | Reading + code examples | Naming conventions, code readability | Friendlier walkthrough of PEP 8 than the official document. Includes visual examples of good vs bad naming. |
| freeCodeCamp — Programming Naming Conventions Explained | freeCodeCamp | Reading | camelCase, snake_case, PascalCase — comparison across languages | Explains all major naming conventions side-by-side with examples. Good for understanding why different conventions exist and when to use each. Maps directly to VCAA terms. |
| Programming Naming Conventions: camelCase, snake_case, PascalCase & More | Caesar Cipher | Reading | camelCase, snake_case, Hungarian notation | Covers all three VCAA-required naming conventions with clear examples and comparison. |
| VCEData.com — Software Development | Mark Kelly (VCEData) | Reading | Naming conventions — VCE-specific context | VCE-specific notes on naming conventions in the context of the study design. |
Gaps — C7-1
- No video tutorial specifically on naming conventions for VCE Software Development. This is a simple topic but students benefit from seeing before/after examples in a video format.
- Hungarian notation in Python is unusual — Python community doesn't use Hungarian notation, but VCAA requires students to know it. No good resource bridges this gap (most Hungarian notation examples use VB.NET or C#).
- Applying naming conventions to interface controls (a specific VCAA requirement) — needs VCE-specific examples showing how to name GUI elements with conventions.
C7-2: Internal Documentation
Existing Materials (CriterionXX/)
Criterion07/ has good coverage: professional internal documentation guide, modern coding practices, turning comments into useful docs, and the "Programmer's Nightmare" activity. The gap is in video content and examples of excellent vs poor documentation.
External Resources
| Resource | Source | Format | VCAA Mapping | Why It's Useful |
|---|---|---|---|---|
| Real Python — Documenting Python Code | Real Python | Reading + code examples | Header comments, inline comments, docstrings | Comprehensive guide on Python documentation practices. Covers docstrings, inline comments, and project documentation. Maps to VCAA "internal documentation" requirements. |
| CSE Buffalo — General Style and Coding Standards | University resource | Reading (PDF) | Internal documentation best practices | Academic perspective on code documentation. Good for understanding the "why" behind documentation practices. |
| Coding Standards and Best Practices (DevCom) | DevCom | Reading | Naming conventions + internal documentation | Professional perspective linking naming conventions and documentation. Shows real-world practice. |
Gaps — C7-2
- No video showing good vs bad internal documentation for a Python project. This would be extremely valuable — students could see the same code with poor comments vs excellent comments.
- Header comment templates for Python files — no good external resource provides a VCE-appropriate header comment template. The Criterion07/ materials are the best source.
- Documentation that explains functionality AND use of data AND use of code structures (the top VCAA tier) — no external resource demonstrates this comprehensively for a VCE project.
C7-3: Validation Techniques
Existing Materials (CriterionXX/)
Criterion07/ has a validation detective activity and a real-life validation detective (GitHub) exercise. Good conceptual coverage but the gap is in code examples and video tutorials showing Python validation implementation.
External Resources
| Resource | Source | Format | VCAA Mapping | Why It's Useful |
|---|---|---|---|---|
| Data Validation in Python: Range, Type, Presence and Format Check | Medium (icodewithben) | Reading + code | Existence check, range check, type check — all three VCAA types | Covers all three VCAA validation types with Python code examples. Directly maps to the study design terminology. The best single-resource match for C7-3. |
| GeeksforGeeks — Input Validation in Python | GeeksforGeeks | Reading + code | Validation techniques — practical implementation | Practical Python examples of input validation. Good code snippets students can adapt for their SAT projects. |
| Automate the Boring Stuff — Chapter 8: Input Validation | Al Sweigart | Reading (free online) | Validation techniques, input handling | Free, well-written chapter on input validation in Python. Accessible language for high school students. The pyinputplus module examples show professional validation patterns. |
| VCEData.com — Validation | Mark Kelly (VCEData) | Reading | Validation — VCE-specific context | VCE-specific notes on validation including the exact types required by the study design. |
| Isaac Computer Science — Validation and Verification | Isaac Computer Science | Interactive (questions + reading) | Validation concepts, verification vs validation | Structured content with self-check questions distinguishing validation from verification. Good for conceptual understanding. |
| PC-Python — Validation | PC-Python (ReadTheDocs) | Reading + code | Existence, range, type checks in Python | Python-specific validation guide with clear code examples for each check type. Well-structured for learning. |
| Code ABC's — Input Validation (Python) | Code ABC's | Reading + code | Validation — practical Python examples | Simple, focused examples of Python input validation. Good for students who want quick, copy-and-adapt patterns. |
Gaps — C7-3
- No VCE-specific video demonstrating all three validation types (existence, range, type) in a single Python project context. Generic Python validation tutorials exist but none use VCE terminology.
- Reasonableness and completeness checks (top VCAA tier) — most resources cover the three basic check types but don't address checking "reasonableness and completeness of all input data".
- Validation in GUI context — most validation tutorials show console-based validation. Students doing GUI projects need to see how validation works with GUI controls (entry widgets, error labels).
Recommended Actions
- The Medium article by icodewithben is the single best external resource for C7-3 — it maps perfectly to VCAA terminology. Assign as required reading.
- Create a video (10-15 min) demonstrating naming conventions + internal documentation + validation in a single Python file, showing how all three work together. This integrated view is what students need and no external resource provides it.
- Create a Hungarian notation reference card for Python — mapping common VCAA GUI controls (textbox, button, label, etc.) to Hungarian notation prefixes, since Python tutorials don't cover this.
- Create validation examples in a GUI context — show existence/range/type checks in a tkinter application, not just console input.
