# Code Like a Pirate with AI

> Source: <https://bitfieldconsulting.com/posts/code-like-pirate>
> Published: 2026-08-04 19:09:15+00:00

Aug 
 4

Aug  4 
Code like a pirate with AI

John Arundel
 

Source image by Reiterlied, licensed under 
Creative Commons

Ahoy, maties! Cap’n Long John Arundel here with more tips on sailing
the good ship Go. This time, we’ll lay aloft to the crow’s nest and turn
our spyglass on AI tools. Arrr ye ready to vibe-code like a pirate?
Let’s weigh anchor and see what booty we can find on the AI seas.

For this tutorial, I be using Junie, the JetBrains AI coding agent,
but the same workflows and prompts apply to Claude Code, ChatGPT, Codex,
or any other scurvy tool ye fancy. Technically, it’s not necessary to
prompt them using pirate speak (but it’s a lot more fun, and works just
fine).

Flying the black flag

Your first voyage with AI development tools can be a perilous one,
veering from calm seas of code to storms of syntax errors and test
failures. So, will your AI agent be a trusty first mate, or just an
unpredictable 
stochastic
parrot
 squawking nonsense from your shoulder?

Junie is pretty smart, and she can tackle any task you choose, but
she needs the guidance of a good cap’n. To help you stay on course, I’ve
put together a handy six-step workflow I like to call “Code like a
PIRATE”. Aye, ‘tis another o’ my 
made-up
acronyms
—but ye’ll find it easy to remember, me hearties [
Are we
doing the pirate thing for the whole article?—Ed.
]

“P” is for Plan

Every good voyage begins with a map. When you set Junie a task, tell
her where the ship’s headed, so she’ll know which direction to steer.
(I’m sure Junie won’t mind me calling her “she”; fun fact, lots of
pirates were women—including 
quite a few of the
men
).

Ask Junie to draw up a quick chart for the voyage, but not to set
sail until you’ve approved it:

It’s important to get this stuff right before you even leave the
dock, so don’t be afeared to spend a bit of time refining the plan.
[
I’m “afeared” we might be wearing out the salty sea-dog bit
already—Ed.
]

“I” is for Iterate

Even the boldest captains don’t try to cross an ocean in a single
leap. It’s more effective to island-hop, sailing a short distance at a
time and checking you’re still on course. Give Junie one small task at a
time, starting with the simplest possible program that could be
useful:

With too vague a heading, Junie can end up going a bit adrift, like
any of us: don’t hesitate to cry “Avast heaving there!” and interrupt
her if that happens. Rowing back when the project has gone too far in
the wrong direction will cost you a lot of time and doubloons
[
Seriously, clap a stopper on the pirate speak for now—Ed.
].
Sorry, I meant to say “tokens”.

“R” is for Review

Once Junie has completed each iteration, go through the code line by
line to check and review her work. She’s pretty good at delivering

what
 you asked for, but she doesn’t necessarily know

how
 you want it. For example:

When giving feedback, bundle all your comments together in one
message. This lets Junie generate the new version of the program in a
single step, saving tokens. If you keep making small comments and asking
her to rebuild the whole program each time, you’ll find your pieces of
eight—I mean, credits—dwindling rapidly.

Good programs have a harmonious architecture that makes overall
sense: everything works the same way everywhere and it all seems to fit
together neatly. Junie can’t achieve this without your guidance, so keep
a hand on the tiller and help her ensure things slot neatly into a
unified structure.

“A” is for Assess

Once Junie has finished the step you asked for, don’t just glance at
the code and move on—take a moment to assess whether it actually does
what it should. Does the program run cleanly? Do the functions behave as
expected? Are there strange side effects lurking in the bilges, waiting
to sink your ship later? [
What did I 
just

say?—Ed.
]

Now that you can see the program in action, you might realise it’s
not quite what you want. If so, now’s the time to adjust course, either
with Junie’s help or by making little steering inputs yourself.

If you’re happy with the assessment, though, you can move on to the
next iterative step towards the final program:

“T” is for Test

No old salt trusts a ship that hasn’t been through its sea-trials,
and nor should you. As you and Junie build the program, check each new
plank is watertight by adding tests to accompany each function. That
way, you’ll know as soon as something springs a leak.

Junie can be a helpful shipmate when it comes to drafting tests, but
don’t just accept her handiwork blindly. Ask yourself: What is this
really testing? Are there hidden reefs—edge cases—that we’re missing?
And, when the tests fail (they’re no use otherwise) do they print
something helpful?

“E” is for Evaluate

Machine learning is fine, but 
human
 learning is even better.
After each task, take a little time to analyse what worked, and what
could have gone better.

Were your prompts detailed enough? Did Junie sail safely into
harbour, or did she end up grounded on a sandbar because her pilot was
too busy splicing the mainbrace? Every voyage is a lesson that’ll help
you sharpen your prompting skills, anticipate pitfalls, and become a
steadier pirate cap’n for the next expedition.

If you remember the chart we’ve drawn here and use it to navigate
your next project, with the help of Junie or your AI shipmate o’choice,
you’ll be ready to truly code like a PIRATE [
That’s it, you’re
walking the plank—Ed.
].

Anchors aweigh

Check out the 
booty
calculator project
 to see what Junie and I built together—try using
it to divvy up your own pirate booty with friends. (It’s also kind of
fun to say “booty”.)

Until next time, shipmates, wishin’ ye fair winds and full sails!

Legal disclaimer:
 
Bitfield Consulting does not
advocate piracy, illegal seizure of vessels on the high seas, or the
consumption of rum. Please swashbuckle responsibly.
