Blog RSS Feed

Archive for the ‘Geo’ Category

Creating a High-Resolution Hillshade with Eduard and Nano Banana Pro

Monday, January 19th, 2026

Let’s say you want a high-resolution (1.2 meters per pixel) hillshade like this one of cliffs and hills to the west of the Dead Sea:

High-resolution synthetic hillshade created by Nano Banana Pro of cliffs to the west of the Dead Sea.
1:13,000 scale

So that you can layer it over a satellite image (compare the original satellite image without hillshading added):

Hillshade draped over a satellite view.

Or maybe over an idealized landscape with human features removed:

Hillshade draped over a realistic background color.
Full-resolution cliff view.
Here’s a full-resolution view (1:5,000 scale) of part of the cliff area.

But all you have is a lower-resolution (30 meters per pixel) hillshade like this:

Nano Banana Pro can help you out, if you’re willing to accept that it’s making up all the details it’s adding to your lower-resolution hillshade and that your high-resolution hillshade looks nice but doesn’t necessarily reflect reality.

Here’s how I made the above hillshade and tiled it to cover about 3,000 square kilometers around Jerusalem.

Process

First, I used Eduard to create a 30m-per-pixel hillshade derived from the recent CC-BY-licensed GEDTM30. I gave the hillshade to Nano Banana Pro along with this prompt, repeating it a few times until I was satisfied with the result. I considered whether to go straight from the DEM to the final hillshade (which does actually work decently), but I wanted to take advantage of Eduard’s hillshading know-how. I also wasn’t confident that I could use the DEM for tiling.

Once I had an initial tile, it was mostly a matter of creating tiles that extended from existing tiles. I ran Nano Banana Pro repeatedly with this prompt, overlapping each tile by 248 pixels for a 2K tile and 496 pixels for a 4K tile (about 25 square kilometers) to ensure that the style and luminosity were consistent between tiles. Here’s an example tile overlap with high-resolution hillshade on the right and bottom sides of the tile.

I did experience some style drift, however; the hillshades got fainter over time.

This process worked great for hilly terrain; I almost never had to regenerate a tile.

For terrain with large flat areas, however, this process fell apart quickly. It often took several tries, plus adjusting the amount of overlap between tiles, to get a usable result. Typically, Nano Banana Pro wouldn’t match the luminosity of the surrounding tiles, or it would add distracting detail to the flat area. It was possible to get a decent result, but it required lots of human attention and tinkering—in other words, it wasn’t an automated process like the hilly terrain was.

If you look hard enough, you can find some tiling artifacts in flat areas (and a few in hilly areas). In practice, these tiling artifacts won’t be visible to map viewers since you’re likely draping the hillshade over some kind of background and reducing the opacity or increasing the gamma to keep the hillshade from overwhelming the viewer.

I didn’t use Photoshop on any of these tiles (though I did sometimes run a histogram match between the source tile and the result tile), but I probably would need to if I were to create more tiles for flat areas.

Results

In all, I created hillshades for about 3,000 square kilometers around Jerusalem, spending US$70 on Nano Banana Pro (2.3 cents per square kilometer, or 6 cents per square mile). That cost includes a lot of experimentation; at scale, with a mix of hilly and flat areas, the all-in cost is about 1.8 cents per square kilometer.

This area represents about 15% of the area of the full extent of ancient Israel (“Dan to Beersheba”), which means it would cost around $500 to create a full set of tiles. I stopped tiling when I exhausted my budget for this project (and my patience for regenerating flat areas).

Here’s the coverage area:

The hillshade stretches from the Mediterranean to the Jordan River in the area around Jerusalem.

Discussion

As noted above, the resulting hillshade is plausible but fake—there’s no way any process can turn a 30m hillshade into a 1.2m hillshade and reflect reality.

Whether you want to use this method depends on your application. If you’re creating a fantasy map, you’re already two steps removed from reality, so this method can add some extra realism to your map. If you’re doing historical mapping, you’re one step removed from reality, as climate, landforms, and landcover have shifted over time.

This method shines where you’re pushing past the detail available in the lower-resolution hillshade and want to provide a crisper experience without presenting all the detail that’s available in the higher-resolution hillshade. The Good Samaritan images below show where I think this method works especially well.

The hillshade quality is pretty good. In general, the results are hydrologically consistent (rivers drain in the correct direction). It also captures the traditional hillshade look exceptionally well, in my opinion, and this process scales well in hilly terrain. The limiting factor in hilly terrain is cost, whereas the limiting factor in flat terrain is the time involved to revise tiles. In flat areas, it might make sense to retain the lower-resolution hillshade or to use a different super-resolution method.

In principle, it would be possible to create a model similar to Eduard’s U-Net approach that could go from low-resolution to high-resolution hillshades without involving Nano Banana Pro. I’m skeptical that it would handle drainage properly, but the bigger barrier is that Google’s terms of service preclude creating such a model.

Conclusion

To give you a practical application, here’s a closeup of the road from Jericho (where the two roads intersect on the right) to Jerusalem (which is off-map to the left). This road reflects the setting of the Good Samaritan story. Everything on the high-resolution map feels crisper and clearer thanks to imaginary AI detail.

First the lower-resolution map:

A lower-resolution hillshade of the road between Jericho and Jerusalem.

And then the higher-resolution map:

A high-resolution hillshade of the road between Jericho and Jerusalem.

The source 30m hillshade and derived 1.2m hillshade are both available here for your use. You’ll probably want a GIS tool like QGIS to work with them; you won’t be able to just use them as-is in Google Earth.

Enhancing a Natural Earth Base Layer with Potential Vegetation Data

Tuesday, January 6th, 2026

If you’re using free Natural Earth rasters as a base layer for your historical cartography needs (and why wouldn’t you be?), you might find it helpful to add an extra layer of vegetation to create more consistency with satellite views:

Global view with a Natural Earth 2 base layer and an overlaid vegetation layer.

Here’s the original Natural Earth 2, where you can see that vegetated areas are much lighter-toned:

Global view with a Natural Earth 2 base layer.

Vegetation also punches up a regional view by adding realistic coloring. Note especially the darker areas along the eastern and northern Mediterranean coast:

Regional view of the eastern Mediterranean with a Natural Earth 2 base layer and an overlaid vegetation layer.

Compared to the original:

Regional view of the eastern Mediterranean with a Natural Earth 2 base layer.

Even on more-minimalist maps, vegetation can convey information without adding distracting detail. For example, here’s water, hillshading, and vegetation on a neutral background:

Regional view of the eastern Mediterranean with a light gray base layer, dark blue water, hillshading, and light green vegetation. Coastline data is (c) OpenStreetMap and its contributors.

Try it yourself

The vegetation data in the above maps is derived from a 2023 article in Nature that plots idealized vegetation coverage.

You can find the CC-BY-licensed data at Zenodo. The output file is “Full TGB potential Map of ensembled mean merged.tif.”

In the above maps, I converted the data to an 8-bit grayscale and then applied this color ramp to the layer in QGIS.

Why potential vegetation

Instead of showing current vegetation cover, which reflects modern, human-induced changes to the environment (such as deforestation and irrigated agriculture), these maps show what the vegetation coverage might be without humans. While the landscape in biblical times was hardly untouched by humans, such changes were much smaller-scale than they are today. This type of view helps recreate a version of the natural world that’s closer to what biblical writers experienced.

Natural Earth 2 provides a good basemap for historical mapping because it aspires to present a less-developed earth: for “historical maps before the modern era and the explosive growth of human population, [potential natural vegetation maps] more accurately reflect what the landscape actually looked like. The Mediterranean region at the time of the Phoenicians was more verdant than today.”

More-detailed vegetation alters the character of the Natural Earth maps somewhat by elevating vegetation over other biome indicators. It doesn’t preserve as strongly the distinction between the different kinds of forests (tropical, temperate, and northern) that Natural Earth 2 makes. For historical maps, these changes mean that the adjusted maps feel more in line with satellite imagery.

Depending on your map’s purpose, you may find that presenting vegetation this way tells a clearer story to the viewer.

Integrating Roman-era Jerusalem into a Rewilded Landscape

Saturday, December 20th, 2025
Roman-era city of Jerusalem embedded into the rewilded landscape from the last post.

If you’re wondering whether Nano Banana Pro can credibly integrate a view of Roman-era Jerusalem into the rewilded landscape from the last post, the answer is yes. I appreciate how the above image even cleared some of the area around the walls, as you’d expect from history. The structures inside the city walls are mostly too large, however.

Here the rewilded landscape is misleading—during the time of Jesus (which the above image depicts), the area around Jerusalem was less forested than this image suggests. The area included agriculture, roads, pasturelands, and other changes introduced by humans.

Below is my attempt at using Nano Banana Pro to convey this human activity. It regraded the whole image slightly, and the roads aren’t exactly right. I also don’t think the Hinnom Valley south of the city would have this much agriculture. The terraced agriculture is a nice touch, though, since I spent so much time getting rid of terraces in the original image.

Jerusalem embedded into the landscape with agriculture and small structures outside the city.

Here was my prompt:

Right now, this Roman-era city of Jerusalem feels pasted on, because it is. Integrate the feel of the city so that it integrates into the rest of the landscape.

Also add ancient roads and small-scale agriculture (think wheat barley, olives, and vineyards), reducing the forested area. Don’t have agriculture immediately outside the city walls. Especially include cultivated olive groves on the Mount of Olives across the gully to the east of the city.

Add a few small structures and villages in the area outside the walls (isolated farmhouses, etc.) that are appropriate for the time.

Make sure there’s a way to get into the city from the west (left) near where the walls make a “J” shape.

Keep the rest of the landscape as-is and don’t adjust the overall lighting or colors of the scene, just of the city.

Rewilding Jerusalem with Nano Banana Pro

Saturday, December 20th, 2025

Nano Banana Pro can rewild photos of archaeological sites with AI; it can also create rewilded maps. For example, here’s a fake satellite view of the Jerusalem area with all structures, roads, and anything human-created removed:

Natural Topography of Jerusalem as rewilded by AI with hypothetical vegetation and outline of historical city walls during Jesus's time.

And georeferenced in Google Earth:

The Natural Topography of Jerusalem map overlaid in 3D on Google Earth.

AI enables creating this kind of map in a few hours, rather than the weeks it would have taken using traditional methods.

The effective resolution of this image is about 1.2m per pixel, equivalent to a high-resolution (and therefore expensive) satellite photo. (A true satellite photo would show mostly urban development here, of course, and wouldn’t be terribly useful for visualizing the underlying landscape.) The topography is mostly accurate; the vegetation coverage is speculative.

Methodology

First, I needed a relatively high-resolution topography for the area around historical Jerusalem: approximately 2.3km by 2.3km (about 2 square miles). The highest-resolution free Digital Elevation Models are 30m per pixel, which at this latitude gives a grid of about 100 x 100 elevation pixels. While that may not sound like a lot, it’s enough to create a final 2,048 x 2,048-pixel image—but the low resolution of the source data also reinforces how much the AI is inventing fine surface detail.

I started with the GEDTM30 global 30m elevation dataset (which, as a DTM, aims to give bare earth elevations, excluding buildings and landcover). Using these instructions, I created 5m contour intervals in QGIS and exported them to a png. I compared these contours with 5m GovMap contours; they differed in some details but were plenty close enough for this purpose.

Here’s where Nano Banana Pro came in. I gave it the contours and the following prompt (the “text” in the prompt refers to the contour elevation labels):

This is a detailed map of the area around Jerusalem. Convert it to an overhead aerial view. Preserve all the topography exactly. Remove all text. Apply landcover (especially trees and scrub) in a naturalistic fashion and show bare dirt, light scrub, and trees where hydrologically appropriate.

Smooth out all the elevation lines—there are only smooth hills, no terraces or cliffs. Use the elevation lines as a reference, not to create terraces. No terraces should be visible at all; just smooth them out.

The idea is to make it look natural, without any human developments.

As you can tell from my pleas in the prompt, Nano Banana Pro really liked making terraces (since the contour intervals look like terraces). I ended up generating twenty-four iterations but used the seventh one because it preserved the topography of the City of David especially well. Each generation had different pluses and minuses—some were better at color, some at vegetation, and some at hydrology. That’s part of the beauty of using AI: it allows rapid iteration and many generations at low cost. This project cost about $5 in total.

I also explored giving it a version of the DTM itself (with the elevations scaled to grayscale values 25 through 244), as well as a hillshaded version. Nano Banana Pro gave me roughly comparable results for each, but I preferred how the contour versions turned out.

With a 2,048 x 2,048-pixel png in hand, it was time for Photoshop. I used the spot healing brush extensively to remove visible terraces. I also went back to Nano Banana Pro to generate trees and scrub for certain areas, brought in parts of other discarded generations, and used Photoshop’s built-in generative features in some places. You can definitely see artifacts from my editing if you look closely at the finished map. I also added an exposed rock (just visible under the “m” in “Temple” in the above map) where the Dome of the Rock now stands.

Then it was off to Illustrator to add the text and the outline of the city walls. ChatGPT gave me a few pointers to refine the look.

Finally, I georeferenced the map in Google Earth and consequently adjusted some of the wall placement in Illustrator to align the wall more precisely with structures that are still visible today.

Discussion

I’ve never used an AI + real data workflow like this one before. It would’ve been prohibitively time-consuming to create this map without AI, which is part of the ethical question around using AI. Did I “steal” the hundreds or thousands of dollars I might otherwise have paid a cartographer-artist to create this map? More realistically, I never would have created it at all.

The map’s high degree of realism could lead people to believe that it reflects reality more than it does; at first glance, you could easily take it for a real satellite photo. The landscape that it depicts never looked exactly like it does in the map. This combination of extreme realism with plausible hallucinations captures the current state of AI in a nutshell: it looks real, but it isn’t.

The map depicts a pre-human landscape (thus the “rewilding”). Biblically, it’s closest to how it might have looked in Abraham’s time, before subsequent urbanization. But even during his time, there still would be settlements, visible footpaths, grazing areas, small-scale agriculture, and potentially less forest.

Nano Banana Pro’s interpretation of the elevation data is reasonable. I feel like it made some of the eastern hills ridgier than they are in reality, however.

It also did a good job with the trees and scrub, though they’re much more speculative than the topography. I chose, artistically, to forest the western half of the map more than the eastern half, since Jerusalem approximately marks where denser vegetation in the west would yield to sparser vegetation in the east. I may have gone too far in either direction—too much forest in the west and too little vegetation in the east.

Data

You can download a jpeg of the map with and without labels. The unlabeled version is available as a geotiff for your own GIS applications. I also added both the labeled and unlabeled versions to the Map Overlays for Google Earth page, where you can download a KML to explore them in Google Earth.

Rewilding Photos of Archaeological Sites with Nano Banana Pro

Saturday, December 13th, 2025

In addition to reconstructing archaeological sites from photos, Nano Banana Pro can do the opposite: it can rewild them—removing modern features to give a sense of what the natural place might have looked like in ancient times. Where reconstruction involves plausible additions to existing photos, rewilding involves plausible subtractions from them. In both cases, the AI is producing “plausible” output, not a historical reality.

Mount of Olives

For example, the modern Mount of Olives has many human-created developments on it (roads, structures, walls, etc.). My first reaction to seeing it in person was that there were a lot fewer olive trees than I was expecting, and I wondered what it would’ve looked like 2,000 years ago.

Nano Banana Pro can edit images of the Mount of Olives to show how Jesus might have seen it, giving viewers an “artificially authentic” experience. It’s “authentic” by providing a view that removes accreted history, getting closer to how the scene may have appeared thousands of years ago. It’s “artificial” because these AI images depict a reality that never existed, combined with a level of realism that far outshines traditional illustrations. Without proper context, rewilded AI images could potentially mislead viewers into thinking that they’re “objective” photographs rather than subjective interpretations.

Rewilded Mount of Olives

The first image below is derived from a monochrome 1800s drawing of the Mount of Olives, which allowed Nano Banana Pro to add an intensely modern color grading (as though post-processed with a modern phone). The second is derived from a recent photo taken from a different vantage point.

An AI rewilding of a nineteenth-century illustration of the Mount of Olives, minus features that were present then.
Derived from an image by Nir909
An AI rewilding of a recent photo of the Mount of Olives that removes much more modern construction than the first image.
Derived from an image by Hagai Agmon-Snir حچاي اچمون-سنير חגי אגמון-שניר

Rewilded Mount Gerizim

Similarly, here’s Mount Gerizim, minus the modern city of Nablus. Nano Banana Pro didn’t completely remove everything modern, but it got close. If I were turning it into a finished piece, I’d edit the remaining modern features using Photoshop’s AI tools (at least until Google allows Nano Banana Pro to edit partial images).

An AI rewilding of Mount Gerizim that removes most modern features.
Derived from an image by יאיר דב

Conclusion

This process only works if existing illustrations or photos accurately depict a location. If I owned rights to a library of photos of Bible places, I’d explore how AI could enhance some of them (with appropriate labeling), either through reconstruction or rewilding. A before/after slider interface could help viewers understand the difference between the original photos and the AI derivatives, letting them choose the view they want.

Restoration (using original or equivalent materials to restore portions of the original site) is another archaeological approach that AI could contribute to, but the methods there would be radically different.

Nano Banana Pro did its best job at converting the Mount of Olives illustration, in my opinion. I wonder if doing multiple conversions (going from a photo to an illustration and then back to a photo) could yield consistently strong results.

Revisiting Bible “Vibe Cartography”

Saturday, November 29th, 2025

In April, I had GPT-4o create a bunch of maps of the Holy Land based on an existing public-domain map. My chief complaint at the time was that GPT-4o “falls apart on the details”—it gives the right macro features but hallucinates micro features (such as omitting specific hills and valleys and creating nonexistent rivers).

Nano Banana Pro changes that. It preserves features both big and small and doesn’t alter the location of features you give it, which means that you can hand it a map, have it transform the look, and then export it back out of Nano Banana with the correct georeferencing. You can completely change the appearance of a map and just swap it out for your purposes.

This time, I started with the same public-domain map but had Nano Banana Pro extend it so that it would have the same 2:3 aspect ratio as the GPT-4o images. It did a phenomenal job. If you’ve heard of the “jagged frontier” of AI, this work is an example of “sometimes it’s amazing.” There’s no reason why it should be so good at creating a map this accurate. But here we are. (You can download the 4K version of the generated image.)

The original Holy Land illustration by Kenneth Townsend on the left, extended east, south, west, and slightly north by Nano Banana. The look and terrain it created are accurate.

Then I ran the same prompts on Nano Banana Pro that I used for the earlier GPT-4o images. The results preserve all the details but apply the appropriate style. While the Nano Banana Pro images are more accurate, I feel like the GPT-4o images were, on the whole, more aesthetically pleasing for the same prompt. On the other hand, the NBP images followed the prompts way better. Only a few of the more heavily stylized NBP images inserted the nonexistent river between the Red Sea and the Dead Sea.

GPT-4o has simpler, more rainbow colors, while, Nano Banana Pro embraces the jeweled "crystal" look.
Compare the “shattered crystal” look between GPT-4o and Nano Banana Pro. GPT-4o is more conceptual, while Nano Banana Pro is more literal.
For "Painter's Impression," GPT-4o uses a rainbow palette with broad brushstrokes, while Nano Banana Pro has a rougher, almost acrylic-paint look to it.
Compare the “painter’s impression” look between GPT-4o and Nano Banana Pro. To my eye, the GPT-4o one captures Impressionism better.

Below are some of my favorite Nano Banana Pro images. The first two recreate the Shaded Blender look that’s so hot right now. The second two show how NBP can change up the style while preserving details. I especially love how the last one makes the Mediterranean Sea feel vaguely threatening, which captures ancient Israelites’ feelings toward it.

Strategy Game Overworld Map Shadow-Only Elevation Map Byzantine Mosaic Terrain Map Sacred Breath Dot-Field Map

You can view all 200+ Nano Banana Pro-generated images here. The older GPT-4o images remain available.

Recreating a Bird’s-Eye View of the Holy Land with AI

Thursday, November 27th, 2025
A Nano Banana Pro-generated map of the Holy Land based on Hugo Herrmann's version, with naturalistic color.

This image (made with Nano Banana Pro), recreates one of my favorite views of the Holy Land. The original (by Hugo Herrmann) dates from 1931 and is in the public domain. The use of forced perspective makes the topography of the region clear, especially the relationship of the Jordan rift valley to both the Mediterranean Sea (to the west) and the hilly terrain (to the immediate east and west). Mount Hermon in the far north makes clever use of the horizon line to show its dominance.

A view like this also illustrates why biblical writers talked about going “up” to Jerusalem (which is on the peak nearly due west from the northern end of the Dead Sea near the bottom).

The original uses an older style that’s less immediately accessible to the modern eye. Nano Banana Pro is the first AI image generator to do a good job at updating the original’s appearance while removing text and other modern features. Nano Banana Pro also preserves topographic details (which are stylized in the original and not completely accurate) amazingly well. You can tell that it’s AI-generated if you zoom in on the high-resolution version linked above, though—its details feel imprecise compared to what a human would create.

I wanted to have Nano Banana Pro draw Saul’s path from Jerusalem to Damascus using a map reference, but all its attempts were wrong in various ways. So it does have limits. But those limits probably won’t exist in six months.

For comparison, here’s the original Herrmann illustration:

Herrmann's original map.

A New, Free Dataset of Roman Roads

Friday, November 7th, 2025

Itiner-e is a new and free (CC-BY) dataset of Roman roads, supplanting AWMC as the most-extensive and highest-resolution road data available. The announcement article in Nature describes the labor-intensive process of creating the 14,769 road segments that constitute the dataset.

The dataset itself is available from Zenodo. I also had ChatGPT turn it into a Google Earth KMZ if you’d like to explore it in that application.

Compared to past datasets, it more-extensively fills out roads in the Roman province of Judea, which is relevant to much of the New Testament. Here, for example, is a possible route that Saul took between Jerusalem and Damascus for his “road to Damascus” moment. The Itiner-e tool also tells you that it would have taken about 68 hours to walk this distance.

A screenshot of Itiner-e highlights the road from Jerusalem to Damascus.

Doing Bible “Vibe Cartography” with GPT-4o

Sunday, April 27th, 2025

Update November 2025: Google’s Nano Banana Pro does way more-accurate vibe cartography than GPT-4o.

Last month’s release of GPT-4o’s image-generation capabilities led to a huge improvement in instruction-following capabilities—specifically, it can now make maps that (more or less) match real geography.

So, obviously, I tried it on Bible maps and made 180 AI-generated maps of the Holy Land in many different styles.

Some of my favorites:

Sunlit Relief Map Pictorial Terrain Guide Map Atlas-Grade Physical Map Classic Swiss-Style Shaded Relief Map Data-Driven Elevation Dots Charcoal and Ash Terrain Etching Painter’s Impression Map Tiny Adventurer Isometric Map Doodle-Sketch Terrain Map Soft Felt Terrain Map Tectonic Fold Map Fabric Drape Terrain Map

Discussion

The results match what James Farrell found in his similar cartographic explorations: GPT-4o creates “generally accurate topography” but falls apart on the details. In these maps, for example, it really likes to connect the Dead Sea and the Red Sea with a nonexistent river. And it includes the Sea of Galilee only when it feels like it. The details of the topography itself—hills, valleys—are broadly correct but wrong in details.

It tends to do better at geographically accurate reproduction when it’s generating something close to what it likely saw in its training data. Sometimes modern features, like country borders, leak through into the generations.

This kind of “vibe cartography” is different from what JJ Santos describes when using a similar term, where you can use Claude to automate map creation inside QGIS. In that process, you should end up with geographically “correct” results, but you’d have to spend a lot of time to achieve the artistic effects in the more conceptual maps here.

Evan Applegate at the Very Expensive Maps podcast likes to say that “you should make your own maps.” I don’t know that he’d consider this process to be “making” a map so much as vibing it into existence. I can imagine a cartographer using an AI to explore a certain look and then polish and execute that look using a more-traditional cartographic workflow.

Methodology

I started by uploading to Sora the finest map of the Holy Land ever created, which is in the public domain, and using that image as a base. From there, I started with this prompt:

Turn this hand drawing of the natural vegetation and topography of the Middle East into something different while maintaining the physical features (especially note that everything south of the Dead Sea is desert; there’s no river), without labels, human features, or political borders:

And followed it up with the specific style, with wording suggested by ChatGPT. For example:

A pure, traditional Swiss-style shaded relief map of ancient Israel — delicate shading for terrain, clean coastline, classic colors, masterful light sourcing.

You can find all the prompts by hovering over (or long-pressing) the images on the AI Maps page.

Visualizing the Wind Patterns Leading to Paul’s Shipwreck

Sunday, October 20th, 2024

Acts 27 recounts Paul’s shipwreck as he travels from Crete to Malta after Yom Kippur (September 24 in AD 60, approximately when this story is set). For the shipwreck portion of the voyage, his ship starts in Fair Havens on the southern of coast of Crete. They’re trying to make port in western Crete but are blown by a strong wind from the northeast. The sailors are concerned about being driven into sandbars in the gulf of Syrtis, so they let the ship be blown along and eventually end up in Malta.

On November 11, 2021, Storm Blas set up this wind pattern almost exactly, connecting Crete to Malta (the strong white line represents my interpretation of a possible path):

Strong wind pattern from Crete to Malta, with a path following the wind.

This wind pattern comes from the mesmerizing earth.nullschool.net, where you can also play around with an animated version. (It’s way more exciting than this static image). This image reflects a point in time, while Paul’s shipwreck narrative takes two weeks. So this wind pattern would change during the voyage; this image just happens to show the appropriate wind pattern for the whole voyage.

Arguably, the wind should blow them farther south, closer to Syrtis. Cyclone Zorbas from September 27, 2018, shows an even-more-intense flow that would take a ship nearer Syrtis. It doesn’t connect to Malta, but, again, the wind patterns would change over the course of several days.

Wind blowing from Crrete to Syrtis during Cyclone Zorbas.

Earlier in the story, Luke describes sailing from Sidon “under the lee of Cyprus, because the winds were against us.” Then they “sailed across the open sea along the coast of Cilicia and Pamphylia” on the way to Myra. Bible maps don’t entirely agree what “the lee of Cyprus” implies for the route (some take it to mean sailing along Cyprus’s southern coast, though that interpretation creates tension with “Cilicia and Pamphylia” to the north). This image from October 29, 2023, illustrates the lee along Cyprus’s eastern coast:

Path from Sidon to Cyprus with few winds along the path.

Finally, the trip from Myra to Cnidus (“with difficulty”) and then to Salmone on Crete (“the wind did not allow us to go farther”) could find an expression on October 13, 2024. In this image, the winds during the segment from Myra to Cnidus are coming from the west or northwest, against the direction of travel. The strong winds from the north through the Aegean make westward travel difficult, pushing the ship south. This wind pattern appears to be typical for this time of year.

Path from Myra to Salmone in Crete via Cnidus with strong winds from the north.

Again, I’m not arguing that these images reflect the actual wind patterns involved in Paul’s shipwreck voyage; I’m just showing that it’s possible to find modern analogues to the winds described in the story.