0%

Chapter 14

Where to Go Next

Choose Your Next Project

You are done. Chapter 13 was the last assessment, and this lesson adds no new work.

It is worth stopping to notice how far that is. When you started, Python was something that happened in a browser tab when you pressed a button. Now you can open a , give a project its own environment, read and write files, turn messy input into validated data, put a real on it, debug it when it misbehaves, write tests that catch the defect coming back, talk to a service without trusting it, and hand the whole thing to another person in a form they can actually run.

That last one is the rare skill. Plenty of people can make code work on their own machine. Far fewer can package the decisions so it works on someone else’s.

Pick one thing, not six

Below are six directions. Pick one. All of them are optional and none is graded.

The reason for picking one is not modesty, it is that a half-finished project teaches less than a small finished one. Each route below names a goal, a first action, and a that tells you when you are done. That last part matters most: “get better at testing” has no end, while “the mutant is red and the correct version is green” does.

Build Git habits

  • Goal: keep a project history that contains source and nothing else.

  • First action: learn what to exclude, then review and commit one coherent change.

  • Done when: the change is committed and git status reports a clean tree.

This is the one I would choose. Your capstone is already a clean ten-file tree with generated state kept out of it, which is exactly the situation a first repository wants.

Go deeper into program design

  • Goal: turn working code into clearer structure.

  • First action: take the Fundamentals II readiness check and see which language skills that route expects.

  • Done when: you can finish the readiness check and say which skill you would refresh first.

Fundamentals II covers the language ground this course deliberately skipped: as values, classes, and the design vocabulary that goes with them. You never needed it here, and you will want it eventually.

Strengthen your testing

  • Goal: write a test that actually rejects a realistic defect.

  • First action: copy your project, break one thing on purpose, and check whether your suite notices.

  • Done when: the correct version is green, the broken one is red, and it is red for the right reason.

Chapter 10 did this to you. Doing it to yourself is the version that sticks. Keep every file effect under tmp_path.

Push on the API client

  • Goal: extend the client without depending on a live service.

  • First action: add one more bounded response case, using fake responses in tests.

  • Done when: the new behavior and its failure case are both deterministic.

Resist adding a configurable host, a token, or a retry . Each of those is a real topic that deserves better than being bolted on here.

Make the handoff smoother

  • Goal: make a fresh rebuild easier for somebody else.

  • First action: rebuild from an empty folder following only your README, and fix wherever you hesitated.

  • Done when: clean copied source runs its tests and its offline command without touching your original environment.

You will hesitate somewhere. Everyone does. The hesitation is the bug report.

Make the capstone yours

  • Goal: point the tool at something you actually care about.

  • First action: copy it, change one input domain and one useful output, and keep the failure, test, and clean-tree boundaries intact.

  • Done when: the copy passes its tests and its offline run against your data.

A note on what you built

The practice API was internal to Python Land, so the capstone will not fetch anything once it leaves the site. That is worth understanding rather than being disappointed by: everything you learned at that boundary, checking status before decoding, bounding every wait, validating what comes back, refusing to retry blindly, is exactly what you need for a real service. The service was fake so the lessons could be deterministic. The habits are not.

Go build something.