Skip to content
Start free

Do I need to know how to code to use Claude Code?

Read the code Claude Code ran in a real session and say what it counted: the only programming you really need.

Free course. Your Maestro, an AI, .

To use Claude Code, you ask for the work in plain language and it writes and runs the code for you. Your part is to look at what it ran, check what it counted, and decide whether that result answers your question before you put your name on a report.

If you already work with tables, that review will feel familiar. When someone on your team sends you an Excel file with a percentage on the cover sheet, you check the cell's formula to see which sheet it pulls from, which rows it filters and what it divides by what. With a Claude Code wrote, you do the same reading, even if you've never written a line of Python.

Let's see it with a real session. On October 31, 2026 we opened Claude Code in an empty folder and gave it this instruction:

Download the planets table from the NASA Exoplanet Archive at this address and save it as planetas.csv: https://exoplanetarchive.ipac.caltech.edu/TAP/sync?query=select+pl_name,hostname,disc_year,discoverymethod,default_flag+from+ps&format=csvThen tell me what percentage of confirmed exoplanets were discovered by the transit method.
Prompt
The request from the test session. In Module 2 you run it yourself.

Claude Code downloaded the file, checked the column names in the first lines, and then wrote and ran this Python program to do the calculation:

Python
import csvr=list(csv.DictReader(open('planetas.csv')))print(len(r))d={}for x in r:    if x['default_flag']=='1': d[x['pl_name']]=x['discoverymethod']allp={x['pl_name']:x['discoverymethod'] for x in r}for n,m in (('default',d),('unicos',allp)):    t=sum(v=='Transit' for v in m.values()); print(n,len(m),t,100*t/len(m))
Output
40350default 6451 4785 74.17454658192528unicos 6451 4785 74.17454658192528
What Claude Code ran and what it printed, in the October 31, 2026 session.Ran on October 31, 2026 by Maestro.

How to read code you didn't write

To audit this block you can ignore the language's technical words like import, DictReader or the parentheses. Focus on three clues that line up with the columns in your data:

  1. Which file it opens

    The second line has open('planetas.csv'). That confirms it's reading the file it just downloaded and keeping all its rows in r.

  2. Which rows it keeps

    The line if x['default_flag']=='1': d[x['pl_name']]=x['discoverymethod'] sets a condition: it only takes rows where the default_flag column is '1' and keeps one entry per planet name (pl_name). Below it, allp also groups by pl_name.

  3. What it counts at the end

    In the last line, len(m) counts how many planets were kept, v=='Transit' adds up how many have transit as their discovery method (discoverymethod), and 100*t/len(m) computes the percentage.

Now look at the three lines in the output:

  • 40,350 is the total number of rows in planetas.csv (print(len(r))).
  • 6,451 and 4,785 on the default line say that, keeping only the rows marked with default_flag equal to '1', there are 6,451 planets and 4,785 were discovered by transit: 74.2%.
  • 6,451 and 4,785 on the unicos line confirm that grouping by planet name (pl_name) gives exactly the same count.

If part of the code looks strange, copy it and ask your Maestro what it does in plain words. In your own session you can also ask Claude Code directly why it wrote a certain line. Here's how it summed up the finding in its answer:

Guardé la tabla como `planetas.csv` en `exoplanetas/planetas.csv`. Tiene 40,350 filas.**Cerca del 74.2% de los exoplanetas confirmados se descubrió por tránsito.** Son 4,785 de 6,451.La tabla `ps` trae una fila por cada conjunto de parámetros publicado, así que un mismo planeta aparece varias veces. Por eso conté planetas únicos por `pl_name` y no filas. Al usar solo las filas con `default_flag = 1` (una por planeta) el resultado es el mismo.
Claude Code's answer in the same session, translated from Spanish. We shortened the full folder path.Ran on October 31, 2026 by Maestro.

Why your judgment about the data is still in charge

In NASA's ps table, each row is a scientific publication about a planet, and the same planet shows up as many as 34 times. That's why there are 40,350 rows for 6,451 planets.

Imagine the program had counted every row with discoverymethod equal to 'Transit' across all 40,350 rows of the table. Counting rows instead of planets would have given you 89.8%. That calculation runs in Python without a single error message, just as fast as the one that gave 74.2%.

Whether you report 89.8% or 74.2% comes down to understanding the table's : knowing what each row stands for and deciding which unit answers the question you asked. Claude Code saves you writing the program and doing the count by hand, but you're still the one accountable for the number you hand over. If you want to see what this same check would look like on a table from your job, tell your Maestro what each row of your file stands for.

Common mistake: Code that runs without errors only proves the math worked

When Python finishes without failing, it means the program was well written for the computer. It never means it used the filter or the unit your analysis needed. Reviewing the code means checking which rows went into the count.

Try it

Go back over the session's code above and answer these two questions without running anything. If you're unsure about an option, your Maestro can help you trace the line in the code.

Check yourself, 1 of 2: Which part of the code makes it count unique planets instead of the table's 40,350 rows?