Happy Banana Day (105/365)

I leave you this week, before handing off the next week to my colleague, on a happy but cautionary note.

Bananas feed much of the world’s population. Bananas are a staple crop. This map is designed to celebrate National Banana Day.

However, there is a menace haunting banana plantations. An airborne wilting disease that kills Cavendish Banana (i.e., the yellow banana that much of the Western world equates with banana today). It’s likely bound to wipe out the banana as we know it within 50 years.

Bananas are not fruit. They are herbs. They have no seeds. Thus, there is no way to save seeds in a vault, so to speak, to bring the species back in the future. We already lost the world’s favorite species of yellow banana many decades ago. Baby boomers may recall the Gross Michel yellow banana, which was the banana that predominated in the west until it went extinct after World War II. It no longer exists; though, its flavor is often what is mimicked and still considered the true banana flavor in candies. It was richer – I’ve been told – and creamier. It was replaced by the similar looking Cavendish banana.

But… there is no similar-looking or tasting yellow banana to replace the Cavendish when the wilting disease, presumably, wipes them all out. (For an interesting read on the topic, check out Banana by Dan Koeppel. High recommend!)

So enjoy your yellow bananas now so you can tell future generations what they are missing out on.

This map shows banana production in millions of tons by country over the past 60-some years. Each decade provides an annual average for the decade. As usual, you can map individual decades, change the classification schemes used, change the number of classes, and also highlight which countries of the world are already impacted by blight.

P.S. If you really like bananas, you can also view what a giant banana orbiting at 440 km above the Earth’s surface would look like here. This is one of the more compelling videos I’ve ever found on YouTube. I hope you enjoy it as well.

View Map Here

WebMapGPT Prompt

# Intent
A map showing banana production over the decades around the world to celebrate National Banana Day in the US.

Also, I want to raise awareness of Banana Wilting Disease and its potential impact on this important crop.

# Map Overview
Equal Earth projection using natural earth countries without lakes joined to the attached CSV file using the ISO3 country abbreviation column.

Remove Antarctica. Ensure the world map stretches to fill the screen left-to-right, even if the entire world is not visible at once.

## Mobile Map Guardrails
On mobile devices, including iPads, requires that the device be tilted to landscape mode to view and interact with the map.

# Attribution Modal
The attribution modal must be invisible when the map loads. It will be shown when a user clicks on the “i” (information button). When visible, it will close/become invisible as soon as a user taps or clicks anywhere outside of the modal. 10px border radius on the background.

## Attribution Modal Contents
Contents should include reference to Natural Earth datasets and prominently present the data sources below.

### Data sources
Original data from [Food and Agriculture Organization of the United Nations (2025)](https://www.fao.org/faostat/en/#data/QCL) with major processing by [Our World in Data](https://ourworldindata.org/grapher/banana-production?tab=table&overlay=download-data). More processing and decade averages created using [Spatial Dataset Doctor GPT](https://chatgpt.com/g/g-69433babe5648191b56993ba465bc3fe-spatial-dataset-doctor-alpha).

### Other Attributions
– Prompt Cartographer: [Ian Muehlenhaus](https://www.linkedin.com/in/ianmule)
– Tool: [WebMapGPT](https://www.webmapgpt.com)
– Campaign: [#365DaysOfMaps](https://mapdesign.icaci.org), Map Design Commission of the International Cartographic Association
– APIs used

The map should be a choropleth map showing total percent change in banana production between 1960s Annual Average and 2020s Annual average. Exclude from the choropleth coloration any countries that have no data in the 1960s and only 0s in 2010s and/or in the 2020s column.

Show the choropleth with a light yellow to dark unripe banana green color ramp. Countries without banana production or that have been excluded should be shown in a banana brown color with banana yellow boundaries. Countris with yellow choropleth fills should have banana green boundaries, and those with green fills banana yellow outlines.

# Info Window
When the user hovers or clicks on a country show a pop-up window (without arrow pointers) with a light, banana yellow background and dark green text with the following info. No outline. The pop-up should have rounded corners.

Include the following information in the popup:
– Country Name
– 2010s Average Rank (highest average is ranked #1)
– Decade Average Annual production as a table for each decade in the dataset (i.e., 1960s – 2020s).
– For countries on the provided Banana Wilting Disease list, please include at the bottom, in dark red print, a warning with a red exclamation mark at the start to catch attention or similar symbol, that the country is exposed to the {wilting_disease_types}, threatening their banana production.

# Title
Title the map like a journalist might across the top, left-aligned: “Global Banana Production”
Subtitle: “Percent change in average annual production 1960s-2020s and exposure to Wilting Disease”

# Hamburger Icon
In the upper right, include a hamburger button that has the following options:
– Revise Visualization
– Attribution

Clicking the attribution button will open the attribution/sources modal discussed above.
Clicking Revise Visualization will open a different modal explained below

# Visualization modal
– In the visualization modal, stylishly include an option to change the classification scheme, number of classes, and fields being mapped on the map.

## Allow users to do the following via interaction
### 1. Change the classification scheme between Natural Breaks (default), Equal Interval, Standard Deviation, Quantiles, Arithmetic, or Unclassed classifications.
### 2. Change the number of classes. Default is 5. May change it from 3-7 classes. A quaint slider would be ideal but I leave it to you to design. Disable this when the “unclassed” scheme is selected, obviously.
### 3. Which field to map
Default map is percent change in average annual tonnage between 1960s and 2020s.
The user is allowed to show average annual production for any decade of their choice. Provide in a dropdown list.

When the field being mapped changes, update the map accordingly maintaining the currently selected classification scheme and number of classes.

## Disease exposure.
Please provide a list of the different Wilting Disease categories (as collected off of the attached screen capture of a map above). Above the list have a title similar to “Wilting Disease Types” and underneath that in fine print, filter countries based on exposure.

Allow the user to multiselect countries based on whether or not they are exposed to any of the different wilting disease categories. Make those not exposed, including those with no production, 50% transparent. If none of the diseases are selected, show all countries as normal.

## Closing Modal
Ensure that the modal can be closed or disappears when the user clicks outside of it.
Ensure this modal starts closed when the map loads.

Attachments:
– CSV Banana Dataset
– Map image (with list) of different banana wilting disease ranges. Please use this to classify cities on the map for the country filters. You may peruse the internet to finalize the categories for these if interpreting the map proves too difficult. Thanks!

Happy Moment of Laughter Day (104/365)

Happy National Moment of Laughter Day, America.

You certainly can use it. You’re being led by a (allegedly) senile narcissist and going through hegemonic decline at a steady clip. It’s rough going – both here and for the rest of the world.

Laughter doesn’t cure anything, but it does kill the pain of the uncontrollable.

Though simple to create, I’m quite happy with how this map came out. I actually quite like the symbology and the vibe I get looking at it – a Hallmark condolence card for a traumatized nation.

Originally, I was trying to get Google Gemini to create a laugh track for an animated map of laughter, but my endeavor failed miserably. I am sharing the results of that endeavor, because in many ways, the results are as maniacal sounding as the US actually feels right now – a horror show, in my opinion.

United we laugh… and hopefully, live to pick up the pieces. 

Google Gemini Image Creator Prompt

Please draw an artistic map of the United States in colored pencil where every state is represented by the profile of a laughing, smiling, friendly looking person. Make sure the people included are diverse in age, race, and a good mix of female and males. All pictures should be of people laughing and coming out of where the state borders would be, with some overlap of one another, etc. Only include the 48 contiguous states, please. The image is meant to be used to celebrate the Moment of Laughter Day. No text should be included on the map except at the top somewhere in handwriting “Enjoy a Moment of Laughter”.

 


And creepy Google Gemini laugh-track musical results… too scary to use.

Link to several of them… The first one gets very weird about halfway through. Like a Terry Gilliam film without the film.

https://gemini.google.com/share/0381d2943a29

P.S. I swear I hear Jabba the Hutt’s little laughing monster sidekick in one of these.

 

 

 

Happy Scrabble Day (103/365)

Happy National Scrabble Day!

I always stunk at Scrabble. It didn’t help that my mother was trained as an English teacher. She loved spelling, definitions, grammar — all of it — and took no mercy on her children, regardless of our age. (For the record, she still skunks me at Bananagrams too.)

But I do enjoy the game. In fact, I love all games! I play Euro boardgames, nerdy deck-building card games, and tactical war games with my local gaming friends several week nights or weekend days most weeks.

And as an analog game addict, I was thrilled to see a game with its very own day — that wasn’t Monopoly. (Curses!)

I like designing games too, in my spare time, so I thought… let’s combine Scrabble with Geography for this map.

Moreover, it’s fun to see where people visit our prompt maps from, so I thought… why not let people record their scores and see how they do compared to others? So I added a little database so you can store your high score like you’re playing Pole Position at an arcade on the Italian Riviera in 1983! (That’s what my brother spent his summer doing. He was so proud having the highest score for kilometers around!)

## How to Play

A country name will be randomly selected. You will be shown the letters required to spell it.

Simply drag the letters to spell the country name. Once you’ve spelled it right, you’ll hear a little ding and be shown the next random country to spell. You earn points based on the real-life Scrabble value of the letters in the country name.

View Map Here / Play Game Here

You get three passes. (I admit, there are some questionable ones in there. I blame Natural Earth data for those… “StGeorge and Isl”?) Save those passes for when you really need them! 🙂

After that, your score is frozen. You can keep playing if you want. Or you can record your score and see how you compare.

The countries fill in as you solve them and their point totals are added to a list you can see.

This works on mobile too. I tried it. It’s a little easier in some ways dragging letters on mobile. (Though, the map is not very big. You can zoom if you like.

Have fun! And play more games; they keep people young and may help prevent dementia.

Original Web Mapper GPT Prompt

# Intention
I would like to make a fun, puzzle map for International Scrabble Day on Monday.

For this map, I would like to have a world map where someone is shown a scrambled country name.

They need to unscramble the name by pulling and placing the letters in the correct order (some squares at the bottom of the map where Antarctica would be. (I ask that you exclude Antarctica from the map for the interactive board area.)

Once a country is correctly spelled, it is automatically filled, and the points for that country (based on the Scrabble point values for the letters in the name just spelled) is added to a score board.

If a user completes the entire map, the map will be filled in with countries and they will be able to enter their first name, last name initial, and country of residence on a User Score board that is maintained on the server and shown when the user clicks a button that will be described later.

# Map Area

Please use natural earth countries without lakes boundary data. Equal Earth Projection. Remove Antarctica and islands smaller than 300 square kilometers.

## Map Interactivity

Allow the user to zoom in on the map up to five times full extent and pan the map. Do not allow the user to zoom out past the map’s full extent nor pan off the edge of the map.

## Map Coloring. The app background should be light gray with random, intermittent, and very light tiles and squares in pink and blue in the same style of a Scrabble board. Make it lighter than a scrabble board, though. Just game board light with light papery texture.

The countries should start off with light gray, semi-transparent (65% alpha) fills. The border outlines should be 100% alpha and the baby blue from the Scrabble board, full value and saturation (unlike the background blue).

## When a country name is spelled correctly
The country will fill with a wood-tile grain style fill (like the letter pieces in Scrabble.) Make sure they tile to fill without gaudy interruptions in the image in large countries like Canada and Russia, etc.

## Country click
When a user clicks on a country, nothing happens if the user has not yet filled in the name successfully or been offered an opportunity to fill in the name.

### Country name concluded
If the user already successfully spelled the name, the country is filled in with wood grain, and the user may click on the country and see the name of the country as well as its point value based on Scrabble letters. (You will have to look up the value of different Scrabble letter points in English and determine this when coding. Sorry, I’m not sure offhand.)

# The Scrabble Game
At the bottom of the map (where Antarctica would be) will be the game area.

You will randomly select one of the countries in the Natural Earth Dataset and provide a number of blank square spaces at the bottom center of the map that the user must fill in.

Additionally, you will provide all the letters required to fill in the spelling, one for each blank square at the bottom, scattered over the center of the world map at different, random angles between -45 to +45 angles from standard reading level so they are all right-side up but look truly dispersed on the board. Ensure that the letters are mixed and NOT in the correct order to spell the country name easily. (The game is figuring out what country name to spell.)

The user will drag each letter to a square and drop it. When dropped, it should be made to fit correctly (and at the correct angle). The user will spell the country name. The user may move letters that have already been dropped to other spaces (so they can correct misspellings). If another letters is already in that space, they will swap spaces. If a new letter is dropped onto a space that already has a letter in it, the originally placed letter will be displaced to just above the space it was in so the user can use it again in a different space.

Once a user spells a country’s name correctly, make a light ding noise (like a help desk bell sound) and randomly select another country from those remaining (i.e., that haven’t yet been played) and set up the new game board. Also, make sure the country that they just spelled fills in on the board as described above in the map section.

When the user spells the name correctly, automatically add the Scrabble point total to the scoreboard, which I will be mentioned in more detail later. Keep a sum.

The user will get “Three Passes.” Each pass is -50 points. However, when used, have the letters move and arrange themselves to fill in the spelling. Do the ding, flash “-50” on the screen briefly, and fill in the country. Subtract 50 points from the score. Negative scores are possible.

The pass button should be to the right of the empty spelling squares for each country. When the user hovers over the “Pass” button, tell them how many passes they have left. Once they have used all three passes, remove the button from all forthcoming spelling challenges and instead replace the button with a “Record My Score” button.

When the user clicks the “Record My Score” button, show a score-modal in the middle of the screen. The score-modal should be titled: “Join our leaderboard”. It should contain two fill-in input text boxes.

– Name/Alias: {they fill in an alias name. Ensure no derogatory, sexual, or vulgar words are allowed please}
– Country of Residence: {country where they live}

Add a save button.

Once saved, update the modal to show all saved scores with Alias, Country, and Total Score in table format (without borders) in descending order from highest score to lowest. Add a scroll bar if enough people record their score that you need to scroll down. Maintain this scoring database on the backend. (I have my own Ubuntu/Apache server, so if I need to do something on the backend to make this happen, I can.)

Make sure that the user can close out the save and high scores dual modal by click a close button “X” in the upper right.

# Title
Place the title in the upper left of the map, on a navbar header. Use a traditional Scrabble-title like font from Google Fonts.

Title = “International Scrabble Day!”

# Information
On the right side of the navbar header, have an “i” icon for information.

When the user clicks on the “i”, have a modal pop up with simple, straight-forward, and inviting directions on how to play the game.

At the top of the modal please place an obvious but not gaudy “High Scores” button and when clicked replace the text and info in the current modal with a table (styled the same as the high scores table above) showing Alias and Score for the Top 10 scores currently saved. There should be a small “X” button inside the scores text to get back to the information modal content.

At the bottom of the modal include styled hyperlinks mentioning “Created for free with Web Mapper GPT” with a link to the provenance file, and then some text to “ICA Map Design Commission” with a hyperlink to “https://mapdesign.icaci.org”. In the provenance put “Idea and design by Ian Muehlenhaus.”

# Mobile devices.
The following directions pertains to only handheld mobile devices:

– Please make this mobile device friendly by ensuring the user is in landscape mode for it to work.
– Have the title bar disappear after 8 seconds. In the lower left corner add a button to click that shows the title bar again, or hides it if it is showing. (A show/hide button, so to speak).
– Ensure the letters are large enough to click on and drag with a fat finger. 🙂

Thank you.

Any questions before you begin? If not, proceed. If yes, stop and ask before concluding. Thanks!

Happy Drop Everything and Read (DEAR) Day! (102/365)

Happy drop everything and read day!

Beverly Cleary shaped millions of American children’s reading habits. She was a prolific author of children’s literature from the 1950s onward. Sadly, she passed away at 95 in 2021. However, her stories and books live on and are still widely read today — including by my kids when they were in grade school.

Her most famous character, arguably, was Ramona Quimby. (Ramona was a pest!) In those books, there was a reading group or initiative that Ramona took part in called: “Drop Everything and Read.”

The idea of celebrating Drop Everything and Read Day on Beverly Cleary’s birthday was born.

Though I went on a diatribe against capitalism and the death of writing careers two days ago in Friday’s post (Map 100 in this series), I want to assure you that I also enjoy reading and I do encourage young people to read. So this map is a mea culpa, in a way.

Each state shows the number one Google-searched children’s book and young adult fiction book in 2023 (I believe… the exact date should be in the pop-up window).

Each state is also colored based on the percent of the state population that is 0-18 years of age using US Census data.

Originally I was going to color the states with the appropriate book covers, but alas… darn copyright laws, make such free advertisements nearly impossible to pull off. Sorry! 🙂

Happy Drop Everything and Read Day! And thank you for all the great stories and memories, Beverly Cleary!

View Map Here

 

Data Creation with Perplexity Pro Prompt

Can you create a simple state-based dataset of most popular children’s book state-by-state based on 95 percent group and also Fusion Academy’s Young Adult most popular books by state and combine them into a single dataset. Also, if possible create a separate field using the most recent Census population survey/estimate data 2023 or later for each state showing percent of total population aged 0-18 or ~5 to 18 years of age (wherever the closest census breakdown is, please).

This dataset will be used in a map to celebrate “Drop Everything and Read Day” on Beverly Cleary’s birthday. Thanks! (P.S. Please include a column with state abbreviations too.)

WebMapGPT Prompt

Hi there. Sunday is Beverly Clearly Day or Drop Everything and Read Day (DERD).

To celebrate, I’m creating a simple US state map that displays either the top searched for children’s book and young adult book by state.

# Intent
To highlight young adult and children’s literature to celebrate Beverly Cleary’s contribution to reading.

# Map
Please use a US state base map in equal area albers or similar projection with Alaska and Hawaii placed in the lower left.

Each state should be filled with the book cover of the book represented by the data. States should have white outlines.

I’m not sure where images of book covers are on the internet, but I imagine Wikipedia probably has some good images, perhaps Amazon, or Google Books?

When a user clicks on a state, a pop up should appear (without an arrow) with the following information laid out similarly:

<div>
<h3>{state} ({state_abbr})</h3>
<p><strong>Children’s pick:</strong> {children_book_95percentgroup}<br>
<strong>YA pick:</strong> {ya_book_fusionacademy}<br>
<strong>Population under 18:</strong> {pct_under_18}%</p>
<p>Compiled for Drop Everything and Read Day using state-level book-interest studies and ACS 2023 Census profile data. We love you Ramona Quimby!!! We miss you Beverly Cleary.</p>
</div>

There should be a toggle switch in the upper-right of the map to switch between Children’s / Young Adult.

When toggled, have the book covers change to the appropriate book cover for that book type in each state. You may tile book covers to fill each state.

Splash screen title at start that is open in a modal:

Title: Happy Drop Everything and Read Day
Subtitle (60% font size of title): Top Children’s and Young Adult Book Google Searches by State

Beneath, a brief bit about “DEAR” Day and Beverly Cleary.

Sources for the data spelled out.

Smaller and more subtle font:
List of tools used to make the map: APIs, Made with WebMapGPT (webmapgpt.com), Ian Muehlenhaus (linkedin.com/in/ianmule), Map Design Commission of the ICA (mapdesign.icaci.org), and with links to the websites where applicable and Ian’s LinkedIn profile are. Provenance link.

I’m attaching an EXCEL dataset and some data source and provenance information. Thanks!

 

Happy National Cheese Fondue Day! (101/365)

I knew going into this that this map was going to disgust me. But I couldn’t resist. Besides, it’s a Saturday, so hopefully it doesn’t get too many looks.

I like fondue well enough, but how do you make a cheese fondue map without it looking like… well… yeah.

Alas, here it is. I can only say that Monday’s Map (103/365) will more than make up for this. I’m hooked on visiting that one right now, and I’m pretty sure others will be too. Until then… bon appétit!

View Map Conversation and Map Image on Google Gemini Here

The Prompt (Google Gemini – Image)

I would like to make a tasteful cheese fondue map for Cheese Fondue Day.

I would like to see a world map, with generalized elevation in a stereographic style projection (circular), layered in cheese fondue. The image should look like a print map and appear as though it is a photograph of cheese fondue dumped on elevation model paper map. Have waves and drips, etc.

 

Happy Encourage a Young Writer Day! (100/365)

We made it to 100! To celebrate, I thought I’d make a map showing that LLMs are not destroying white-collar, cerebral creative jobs on their own. Oh, no! The internet did a number on many of those first. In particular, on careers in writing and publishing.

To be up front: I adore writing. Nothing gives me the joy of parroting my way through explaining my own thoughts and emotions using words and syntax I’ve stolen throughout my lifetime of listening to people talk and reading the New Yorker. (This is why I empathize with LLMs; they are no more stochastic parrots than humans. We have no original linguistic thought or writing ourselves. Every word I write, I read or heard somewhere else, thousands of times, and I am parroting and placing these words in an order that seems logical and to make sense. It’s no different. It’s plagiarism.

All writing — LLM-based or now — is plagiarism. But plagiarism is only a crime in a capitalist world-economy that has commodified reasoning… copyright laws are literally the commodification of communicating free-will thought and reason — much as property laws are the commodification of geography.

What cracks me up is that LLMs are stripping the veneer off the shortcomings of the social (and economic) construction of copyright laws. Hmmm… maybe Marx was on to something? ! But I’ll leave that to the David Harveys of the world to bicker about in copyrighted academic publications.

Writing is also why I dig prompt cartography. Language is merely human code for engineering our own and others’ beliefs about the world and changing people’s behaviors. That’s all. It’s a programming language we use on ourselves. Viewed that way, it’s absolutely brilliant!

As a wayward teenager lost in Hungary in 1993/1994, reading English translations of Jozsef Attila and Orkeny Istvan in cafes while cutting class, I decided I would grow up to be a writer someday. It became my life’s goal. I even entered my undergraduate degree as an English Major.

And why not? The world was once full of writers. My family knew a bunch of them. My mother had a writing business at one point – Said Write, LLC. My second best man’s — meaning the best man at my second wedding in this case — dad was full-time poet! Imagine that!

The woman neighbor next door to us growing up was a journalist for the local newspaper. My parents were friends with a couple of full-time magazine writers. We knew the editor of Lake Superior Magazine, which was a full-time job back in the day… unbelievable!

And then it hit me… I don’t know anyone today who makes a living writing. We all have to write. And I know people who have written novels. I’ve written screenplays and non-fiction books, but I don’t know anyone who holds a career in writing. (And yes, I know there are still journalists. Just not nearly as many.)

Now… there was the big blog phase in the mid-2000s. But even blogs are no longer a major thing like they once were compared to podcasts and influencer videos. And what about all those newspapers and book publishers that got shutdown, merged, downsized, and sold off? Including Rand McNally Atlas even being bought and weeded out by a Hedge Fund… not even atlases are sacred?!?!) And what exactly doesn’t Taylor & Francis Group not own in academic publishing, I ask, in all sincerity? (Aside from Springer – keep it real, Deutschland!)

I realize that many of my former colleagues in academia may be livid right now. They write. They have careers. True but… you don’t officially get paid for your writing. In fact, you often have to pay Taylor & Francis Group to ensure your writing can be read (i.e., to make it open to anyone outside of academia). Rather, you get paid to do research and report on your findings. Writing is one form of communicating your results. I would argue it’s probably less effective than a podcast or vlog, but writing still possesses a higher stature even if it goes largely… well, unread.

I digress again… it’s what I do best… particularly while freewriting!

So where was I, ah yes, encourage a young writer day…

I began thinking: my daughter loves writing. But how can I possibly encourage her to become a writer? (Similarly, my sister-in-law loves calligraphy. But I wouldn’t encourage her to become a calligrapher right now; she’s already struck out as a yoga instructor so…)

I simply can’t encourage any young person to pursue a career in writing. All I can do is encourage someone, like my daughter, to write for enjoyment — similar to how I don’t encourage her to become a professional videogame player, but to play Baulder’s Gate for enjoyment purposes. 

Encouraging young people to only write for enjoyment also happily removes a lot of the problems young people have with writing.

Writing for enjoyment means you don’t have to worry about what others think of your writing or following others’ prescribed notions of what constitutes writing versus what doesn’t. You can try new tools.

Not a gifted writer… or perhaps you have dyslexia like someone in my family does?

No worries! Spellcheck, word processing, or writing outlines of your ideas and feeding them to LLMs to spit out more clearly counts as writing. Because it is… writing is using tools to communicate your ideas in code that other humans (that share your natural language) can interpret and do with what they want. No human has ever written anything without technology.  No human has ever written anything without plagiarizing everything they’ve ever heard, read, or seen. LLMs are just the next technological step.

But I then remembered, and coming full circle, the death spiral of writing for a career started way before LLMs.

Video may have killed the radio star, but internet killed professional, career-based writing jobs with health insurance and benefits.

At least, that was my hypothesis, which I decided to explore in today’s map.

I went and downloaded US Census data to map the number of writers per square mile by county in the US in 1990 versus in 2023. I used the US Census’s Business something or other data, which changed a bit in classification scheme since 1990s but is roughly the same.

Again, I love writing. I encourage young people to write using whatever tools they want — pens, pencils, word processors, paint, or LLMs. (Lord knows, an LLM would have written this more clearly than I just did.)

I do not advise anyone assume they will be able to feed themselves making it their day job, though. More like a passion project similar to this 365 Days of Maps Campaign. Just for fun. Just to make people think. Just to poke some sleeping bears.

Happy Encourage Young Writers Day!

P.S. For those of you that think I’ve committed some sort of writing blasphemy… perhaps I have. But I promise Monday’s map makes up for this – it requires impeccable spelling! 😉

View Map Here

Data compilation and cleaning:

Spatial Data Doctor GPT

Original Prompt Used in WebMapGPT

I would like to make a sad map for Friday’s National “Encourage a Young Writer Day”.

The map should use the two attached datasets, or a combination of them, to do the following:
Show the difference in the number of people employed in writing and publishing jobs between 1990 and 2023 by county in the US.

I have two geojson files. One shows different employee counts by type of writing/publishing employment, count of employers, as well as total payrolls in thousands of dollars in 1990 and the other shows total people employed and either payroll or count of employers in 2023.

Though they use slightly different categories (due to technological changes), the evidence is clear — there are fewer writing jobs.

Please come up with a map design of the United States that is equal area (with Alaska and Hawaii in the lower left) that does the following:

Shows total number of people employed in writing and publishing (regardless of field) in 1990). Also shows the total number of people employed in writing in 2023 by county. Also shows the change in count as a percent between the two years (using a purple (decrease) to green (increase) diverging color ramp. (You may have to add separate values within a year per county and then subtract the count differences between the two datasets per county to show change over time. Sorry about that. Feel free to clean or create a new geojson, etc.)

For counties that are missing data from both years, please still include the boundaries but use a light gray fill with no boundary outline.

Once the data is prepped, I provide some guidelines for the map design below beyond the projection, which was discussed above.

# Intent
To show how bleak the future of writing looks, not to mention LLMs replacing a lot of the human writing grunt work.

# Communicative Goal
– Tongue-in-Cheek Satire for Young Writers’ Day
– Informative about just how much the internet changed the writing and publishing landscape and hinting at AI changing it

# Interactive panel
Should allow users to change which map they are looking at, as well as the number of classes in the dataset and visualization technique.

## Three Mapped Datasets:
1. 1990 Writers/Publishers
2. 2023 Writers/Publishers
3. Percent change between the two

### For datasets 1 and 2
Allow the user to change the classification scheme. Default scheme is natural breaks, six classes.
– User may choose among: natural breaks (default), equal interval, arithmetic, standard deviation, unclassed.

User may select between 4 and 8 classes on a slider for each classification scheme, except for unclassed, in which case the slider will made inactive and when the user hovers over it a tool tip will note: “Change classification to select number of classes.”

### For dataset 3
Default classification scheme is diverging in arithmetic chunks for 0% change. User may select number of classes. They may also select unclassed diverging from 0%. Color scheme is the same as above, except the middle color is white. Purple is heavier negative percent and green is heavier positive percent growth.

# Map Layout
Interactive panel should be in lower right-hand corner of hte map with some padding from edge of window. Title should be: “Writing Opportunities”

When the user clicks on the panel, it should minimize. When they click on it again, it should open again. When the map loads, the panel should be open. A legend should be included in the panel.

The title should be in a header across the top, left-aligned. “Never tell a writer the odds…” in a handwritten display font, preferably a bit modern cursive. (Use Google fonts or similar open font.)

On the right of the header, right-aligned wiht some margins from the right window border, have an small “i” button. When the user clicks that a modal opens with sources and information, as well as a link to www.webmapgpt.com and attribution information for the API. Please note the datasets came from the Census: County Business Patterns and were filtered to writing and publishing jobs.

# Styling
– Popups should be white with light drop shadown and have an arrow to the county.
– All divs with borders or fills should have border-radius values of 10 or less.
– Colors… let’s go for faded typewriter ribbon style and graphite pencil.
– Fonts: let’s go with typewriter fonts in the pop-up windows and in the legend, etc. Title will be handwritten as described above.

Colors: Purple = decline/low, Green = positive/growth (try to find a color ramp that mimics Color Brewer but isn’t ungodly bright.

County outlines should look like they were drawn in pencil with light line thickness variation and grayness density.

Background of HTML page should be lined paper with a light texture and very light blue lines.


Once it concluded, I realized my error in the original instructions and added a second prompt to recreate the choropleth maps to show derived values based on number of writers per square mile.

Happy Winston Churchill Day (99/365)

Winston Churchill… the man, the myth, the cigars… Today is officially Winston Churchill Day.

Here is a story map of his life to celebrate. Single prompt. If I were to revise, I would remove the lines, but alas, I’m excited about other maps more than this one, so I’m moving on.

View Map Here

Original Web Mapper GPT Prompt

# Intent
Create a biographical, interactive map about Winston Churchill for Winston Churchill Day. The map component should look early twentieth-century antique (font selection, yellowish textured paper vibe, and muted, matte color print style).

The goal will be to walk through Winston Churchill’s life, both the highs and lows, beginning with his birth, boarding school life, and then political and military adventures, and culminating with his death.

We don’t need all of the details, just the biggest highlights as found on https://en.wikipedia.org/wiki/Winston_Churchill and/or in his autobiography.

Please include at least 15-25 highlights / major moments from his life and career.

# Audience
Random internet people interested in Winston Churchill, cartographers interested in prompt cartography, and people that see the link when it’s shared in a post on LinkedIn.

# Map Style
The maps should be tileset based – Web Mercator is fine. Please find an open and free to use tileset that looks antiquarian or World War II map style. (I don’t care if it’s an Esri base map, CARTO, Stamen, Mapbox, or even made by the PLA, as long as it looks antique and is in English.) If you must, you may add some masking, etc., to give the map text and muted colors.

The user must not be allowed to zoom out to space. In fact, the panning bounds should be limited to no more than 10 degrees latitude or longitude beyond the dataset extent and the user must not be allowed to zoom out past the total data extent. The map may zoom in as far as necessary up to a metropolitan area zoom level (not sure what level that is exactly but limit it around there).

# Locate the Data
Each places should be located on the map as a point and color coded (in period-appropriate colors by category).

# Story Pane
The map should have a floating pane that is draggable (by clicking and dragging on the header) and movable. When the map loads, it should start in the lower right, with modern margins (e.g., 5-10px) from the edges of the browser window.

The title of the pane should be “Churchill’s Journey” and the first event (probably his birth I’m guessing, should be loaded and zoomed in on with the map to start.

If there is a picture available, load the image link URL into the panel. If it’s landscape, have it at the top of the panel. If it’s portrait mode, have it fill 2/3s of the panel’s width or less and ensure the image isn’t larger than 150px in height (constrain width based on that).

Below, place Event Title followed by the Year as a title.
Below that the category using the same font color as the categorical point symbol.
Then, the place and country (when available).
Below that the description.
Below that the URL to any follow-up sources.
Below that a
In the panel, if there is a picture, it should be

At the bottom, a small button on the left that says “Previous” and when clicked goes to the event preceding the current one, and on the right a button that says “Next” that goes to the next event.

In this way, the user can go through Churchill’s entire life one event at a time.

# Title in the upper left

Come up with some stoic and concise title for a map about Winston Churchill celebrating him.

Use a Serif font from Google fonts that works for early Twentieth Century.

# Filters
In the lower left have a minimized panel floating with the same margins as the story panel on the lower right, but in this case from the left and bottom browser windows. (Symmetrical margin spacing is what I’m saying.)

It should be labeled “Filter by Category”. When clicked, it should open and show the different event categories in alphabetical order and in the color of their symbology. They are multi-selectable and all are selected by default.

When only one is selected, only that category’s events are shown on the map and the panel updates to the closest event from where it was currently in the order of viewing. If more than one is selected, all events from both are shown and the panel updates simiarly. If none are selected, all events are shown by default. Make it intuitive and logical.

Beneath the filters put a button called “Sources”. This should open a modal with APIs used, Web Mapper GPT hyperlink, data source(s) (i.e., Wikipedia), and any other important info — i.e., a link to a provenance.json.

National Draw a Picture of a Bird Day (98/365)

It’s National Dog Fighting Awareness Day. It’s also Pygmy Hippo Day. But National Draw a Bird Day caught my attention. for no real reason other than pondering what the heck we can do with that on a map. So i asked AI just that. And it did. Take it or leave it as is your desire. But now you have the basic technique for how to draw a bird. Give it a go!

Bird map

Original Prompt (ChatGPT)

I need a world map to celebrate national draw a picture of a bird day. So maybe a world map with several birds that represent different countries, drawn in a pencil sketch style. Somewhere on the map should also be several images that illustrate how to construct a drawing of a bird using geometric shapes and other steps.

International Beaver Day (97/365)

A species in decline – hence the day dedicated to raising awareness. Beavers build dams, they cleanse water, they are Canada’s national animal. But dig a little deeper and they’re fascinating rodents. Rather than being seen as a tree-munching nuisance they’re actually pretty efficient in their use of the environment. They eat buds, bark and leaves, and use the remainder for construction. Their dams help wetland areas, and trap sediment from downstream waterways. In turn, they help prevent the spread of wildfire.

Anyway, here’s a map of the main species distribution across the world.

Beaver map

And if you don’t care for a map of Beaver distribution, here’s Lieutenant Frank Drebin, played by Leslie Nielsen, admiring a ‘nice beaver’ in the classic Naked Gun sketch.

Original Prompt (Google Gemini)

Please create a world map showing beaver habitat, and create annotations to explain some of their characteristics.

California Poppy Day (96/365)

It’s California Poppy Day. Beautiful flowers that tend to appear in superblooms in parts of the State for a short time each Spring. In fact, by the time this day comes most will have already flowered due to the unusually short winter and early onset of Spring this year. Something about climate change I guess but i digress. So here’s an illustrate map that gives some general locations of some of California’s most famous superblooms.

Poppy map

Original Prompt (ChatGPT)

Can you design an illustrative map that celebrates the California Poppy. perhaps identify places where poppy superblooms are located in California. Make the map beautiful!