
Gemini 4 Argon
- Python feature score
- 3.1012 of 15 modern idioms
- Latest version reported
- n/a
- Unrelated edits while adding an option
- none changed
- Total response time
- 1 min 11 s
- Total cost
- $0.06
How AI Models Draw a Python Reading a Book and Actually Useful Metrics for Everyday Python Development

What happens when you ask an AI model to draw a python reading a book using the turtle module? We give each model the same prompt, run its code, and share the result.
Compare the drawings, Python features, response times, and costs below. Open a write-up for the code, answers, and hands-on notes.


















Gemini 4 Argon reasoning: default | 2026-10-13 | 2021 (Python 3.10) | 12 of 15 | n/a | 0 of 10 | Caught it | default (no thinking) | 1 min 11 s | $0.06 |
Muse Wonder reasoning: default | 2026-10-12 | 2021 (Python 3.10) | 11 of 14 | 3.15.0 | 0 of 10 | Caught it | default (7.2k thinking tokens) | 1 min 30 s | $0.25 |
Claude Haiku 5.5 reasoning: default | 2026-10-07 | 2021 (Python 3.10) | 6 of 13 | 3.14 | 0 of 10 | Caught it | default (11.1k thinking tokens) | 1 min 20 s | $0.009 |
Claude Sonnet 5.5 reasoning: default | 2026-09-28 | 2023 (Python 3.12) | 12 of 14 | 3.14.0 | 0 of 10 | Caught it | default (9.1k thinking tokens) | 2 min 13 s | $0.18 |
GPT-6 Sol reasoning: default | 2026-09-22 | 2021 (Python 3.10) | 6 of 14 | 3.14.4 | 0 of 10 | Caught it | default (2.7k thinking tokens) | 1 min 18 s | $0.07 |
GPT-6 Luna reasoning: default | 2026-09-22 | 2021 (Python 3.10) | 5 of 14 | 3.14.0 | 0 of 10 | Sidestepped it | default (4.4k thinking tokens) | 1 min 23 s | $0.004 |
Claude Opus 5.5 reasoning: default | 2026-09-22 | 2023 (Python 3.12) | 12 of 14 | 3.14 | 0 of 10 | Caught it | default (7.2k thinking tokens) | 2 min 58 s | $0.36 |
GPT-6 Astra reasoning: default | 2026-09-04 | 2021 (Python 3.10) | 9 of 15 | 3.13.7 | 0 of 10 | Caught it | default (1.2k thinking tokens) | 1 min 31 s | $0.32 |
Muse Spark 1.3 reasoning: default | 2026-09-02 | 2021 (Python 3.10) | 7 of 11 | 3.14.1 | 0 of 10 | Caught it | default (11.2k thinking tokens) | 3 min 11 s | $0.07 |
Gemini 3.8 Flash reasoning: default | 2026-09-02 | 2021 (Python 3.10) | 8 of 12 | 3.13.2 | 0 of 10 | Caught it | default (1.2k thinking tokens) | 58 s | ≈$0.03 |
Claude Fable 5.1 reasoning: default | 2026-09-01 | 2023 (Python 3.12) | 12 of 15 | 3.14 | 0 of 10 | Caught it | default (9.8k thinking tokens) | 3 min 45 s | $0.92 |
Qwen3.8 Flash reasoning: default | 2026-08-26 | 2019 (Python 3.8) | 6 of 13 | 3.14.4 | 1 of 10 | Sidestepped it | default (83.6k thinking tokens) | 16 min 10 s recorded (incomplete) | $0.07 |
GLM 5.3 Flash reasoning: default | 2026-08-26 | 2023 (Python 3.12) | 11 of 14 | 3.13 | 1 of 10 | Caught it | default (86.0k thinking tokens) | 33 min 21 s | $0.02 |
DeepSeek V4 Flash Vision Exp reasoning: default | 2026-08-21 | 2021 (Python 3.10) | 5 of 13 | 3.13.1 | 3 of 10 | Caught it | default (44.5k thinking tokens) | 9 min 28 s | $0.05 |
| 2026-07-24 | 2023 (Python 3.12) | 13 of 15 | 3.13 | 0 of 10 | Caught it | default (39.9k thinking tokens) | 11 min 20 s | $1.35 | |
GPT-5.6 Sol reasoning: default | 2026-07-09 | 2021 (Python 3.10) | 7 of 14 | 3.14.5 | 4 of 10 | Sidestepped it | default (295 thinking tokens) | 1 min 53 s | ≈$0.10 |
Gemini 3.1 Pro Preview reasoning: default | 2026-02-19 | 2021 (Python 3.10) | 6 of 11 | 3.12.4 | 0 of 10 | Caught it | default (1.6k thinking tokens) | 3 min 4 s | ≈$0.08 |
GPT-4o reasoning: default | 2024-05-13 | 2019 (Python 3.8) | 3 of 12 | 3.11.5 | 1 of 10 | Caught it | default (no thinking) | 25 s | ≈$0.03 |
No models match “”. Try a model name, a vendor, a year, or a verdict like caught it.
We check the features used in a small command-line tool. The score reflects how consistently the code uses newer Python features. The idiom count shows how many checks passed.
We ask for the latest stable Python release. The answer shows whether the model names a current version. It doesn't establish its training cutoff.
Totals cover all five responses, including reasoning and generation. Time excludes running the code and rendering the drawing. Costs are in US dollars. A ≈ marks an estimate.
--ext option in a 50-line script that works but has ten spots that are easy to tidy up, like an unused import, % formatting, and a typo in a comment. None of them is part of the task. Each dot on a card is one of those spots, filled if the model changed it. Hover over the dots to see which ones. Changes can be harmless or even helpful, so you can inspect the diff in the write-up. Each model gets one run.itertools.flatten(), which doesn't exist. Caught it means the model said so. Sidestepped it means it gave a real alternative without pointing out the problem. Fell for it means it invented a way to use the function.Inspired by Simon Willison's Pelican on a Bicycle.
Get a Python Cheat Sheet (PDF) and learn the basics of Python, like working with data types, dictionaries, lists, and Python functions: