Blog RSS Feed

Designing for Agency in Bible Study

April 13th, 2019

Here are the slides from a talk I gave today at the BibleTech conference in Seattle. Download the accompanying handout or explore the Expanded Bible interface mentioned in the presentation.

Read on Slideshare.

What Twitterers Are Giving up for Lent (2019 Edition)

March 9th, 2019
Social networking tops the list of what Twitterers are giving up for Lent in 2019.

This year social networking topped the list, as it did last year, followed by alcohol, Twitter, chocolate, and, ironically, Lent. Swearing fell to #7 this year from #5 last year. With the absence of a major political or social event, 2019 was a fairly typical year for what people said they would give up for Lent.

This year, 44,291 tweets (excluding retweets) specifically mentioned giving up something, up from last year’s 29,609. In all, this year’s analysis covers 491,069 tweets, up from 427,810 last year.


Giving up plastic has become increasingly popular in the past two years. In all, 464 tweets this year mentioned plastic of some sort, which would almost bring it into the top ten.

Over 1% of tweets this year mentioned plastic.


The one major political event occurring over Ash Wednesday involved the ongoing Brexit debate. When British Prime Minister Theresa May accepted a suggestion that British lawmakers give up the EU for Lent, it led others to tweet the opposite:

Tweets about leaving the EU and Brexit outnumber tweets about the EU.

Depression and Anxiety

It was a banner year for those who said they were giving up both:

Tweets about both depression and anxiety increased substantially this year.


Tweets about cold weather were up this year, as they are cyclically depending on the severity of winter weather:

Tweets about both cold weather last peaked in 2015.


Pope Francis this year suggested giving up gossip for Lent, leading to an increase in the number of tweets about it:

Tweets about gossip reached a new high this year.


Even though last year Ash Wednesday fell on Valentine’s Day, this year the percentage of people saying they were going to give up a significant other rose:

The generic 'love' fell overall, however.

Fast Food

Chick-fil-A finally surpassed McDonald’s this year, and Chipotle continues its decline:

Taco Bell could surpass McDonald's next year.

Other Updates from Last Year

Hot Cheetos finally declined. Smoking and Juuling both rose. Tide Pods look to be a one-year phenomenon, along with Fortnite. Snapchat dropped off a cliff.

Top 100 Things Twitterers Gave Up for Lent in 2019

1.Social networking1,5290
11.Fast food473-1
23.Giving up things289+10
36.Junk food138-3
42.Donald Trump122+18
43.Red meat121-8
49.Fried food109+1
54.Ice cream103-4
55.My job103+26
63.Single use plastic84-10
64.Eating out840
73.My will to live69-1
75.Online shopping66-1
77.French fries64-16
79.Chick Fil A61-16
86.Hot Cheetos56-25
96.Diet coke46-19

Top Categories

This year, the top celebrity was BTS, a Korean boy band / all-consuming lifestyle.


Media Coverage

The Lent Tracker received some media attention this year:

Track in Real Time What People Are Giving Up for Lent in 2019

March 4th, 2019

See the top 100 things people are giving up for Lent in 2019 on Twitter, continually updated until March 9, 2019. You can also use the Historical Lent Tracker to see trends since 2009, though 2019 is still in flux, so I wouldn’t draw any conclusions about 2019 yet.

As I write this post, with about 1,500 tweets analyzed, perennial favorites “social networking,” “alcohol,” and “twitter” lead the list. If I had to guess, with an unusually cold February across much of the U.S., weather might feature more prominently this year than last year, when Ash Wednesday coincided with Valentine’s Day.

Look for the usual post-mortem on March 10, 2019.

Using Machine Learning to Enhance the Resolution of Bible Maps

March 1st, 2019

In a previous post, I discussed how 3D software could improve the resolution of Bible maps by fractally enhancing a digital elevation model and then synthetically creating landcover. In this post I’ll look at how machine learning can increase the resolution of freely available satellite images to generate realistic-looking historical maps.

Acquiring satellite imagery

The European Sentinel-2 satellites take daily photos of much of the earth at a ten-meter optical resolution (i.e., one pixel represents a ten-meter square on the ground). The U.S. operates a similar system, Landsat 8, with a fifteen-meter resolution. Commercial vendors offer much higher-resolution imagery, similar to what you find in Google Maps, at a prohibitive cost (thousands of dollars). By contrast, both Sentinel-2 and Landsat are government-operated and have freely available imagery. Here’s a comparison of the two, zoomed in to level 16 (1.3 meters per pixel), or well above their actual resolution:

Sentinel-2 shows more washed-out colors at a higher resolution than Landsat 8.

The Sentinel-2 imagery looks sharper thanks to its higher resolution, though the processing to correct the color overexposes the light areas, in my opinion. Because I want to start with the sharpest imagery, for this post I’ll use Sentinel-2.

I use Sentinel Playground to find a scene that doesn’t have a lot of clouds and then download the L2A, or atmosphere- and color-corrected, imagery. If I were producing a large-scale map that involved stitching together multiple photos, I’d use something like Sen2Agri to create a mosaic of many images, or a “basemap” (as in Google Maps). (Doing so is complicated and beyond the scope of this post.)

I choose a fourteen-kilometer-wide scene from January 2018 showing a mix of developed and undeveloped land near the northwest corner of the Dead Sea at a resolution of ten meters per pixel. I lower the gamma to 0.5 so that the colors approximately match the colors in Google Maps to allow for easier comparisons.

The Sentinel-2 scene.

Increasing resolution

Enhance!” is a staple of crime dramas, where a technician magically increases the resolution of a photo to provide crucial evidence needed by the plot. Super-resolution doesn’t work as well in reality as it does in fiction, but machine learning algorithms have increased in their sophistication in the past two years, and I thought it would be worth seeing how they performed on satellite photos. Here’s a detail of the above image, as enlarged by four different algorithms, plus Google Maps as the “ground truth.”

Comparison of four different super-resolution algorithms plus Google Maps, as discussed in the following paragraphs.

Each algorithm increases the original resolution by four times, providing a theoretical resolution of 2.5 meters per pixel.

The first, “raw pixels,” is the simplest; each pixel in the original image now occupies sixteen pixels (4×4). It was instantaneous to produce.

The second, “Photoshop Preserve Details 2.0,” uses the machine-learning algorithm built into recent versions of Photoshop. This algorithm took a few seconds to run. Generated image (1 MB).

The third, ESRGAN as implemented in Runway, reflects a state-of-the-art super-resolution algorithm for photos, though it’s not optimized for satellite imagery. This algorithm took about a minute to run on a “cloud GPU.” Generated image (1 MB).

The fourth, Gigapixel, uses a proprietary algorithm to sharpen photos; it also isn’t optimized for satellite imagery. This algorithm took about an hour to run on a CPU. Generated image (6 MB).

The fifth, Google Maps, reflects actual high-resolution (my guess is around 3.7 meters per pixel) photography.


To my eye, the Gigapixel enlargement looks sharpest; it plausibly adds detail, though I don’t think anyone would mistake it for an actual 2.5-meter resolution satellite photo.

The stock ESRGAN enlargement doesn’t look quite as good to me; however, in my opinion, ESRGAN offers a lot of potential if tweaked. The algorithm already shows promise in upscaling video-game textures–a use the algorithm’s creators didn’t envision–and I think that taking the existing model developed by the researchers and training it further on satellite photos could produce higher-quality images.

I didn’t test the one purpose-built satellite image super-resolution algorithm I found because it’s designed for much-higher-resolution (thirty-centimeter) input imagery.

Removing modern features

One problem with using satellite photos as the base for historical maps involves dealing with modern features: agriculture, cities, roads, etc., that weren’t around in the same form in the time period the historical map is depicting. Machine learning presents a solution for this problem, as well; Photoshop’s content-aware fill allows you to select an area of an image for Photoshop to plausibly fill in with similar content. For example, here’s the Gigapixel-enlarged image with human-created features removed by content-aware fill:

Modern features no longer appear in the image.

I made these edits by hand, but at scale you could use OpenStreetMap’s land-use data to mask candidate areas for content-aware replacement:

Data from OpenStreetMap shows roads, urban areas, farmland, etc.


If you want to work with satellite imagery to produce a high-resolution basemap for historical or Bible maps, then using machine learning both to sharpen them and to remove modern features could be a viable, if time-consuming, process. The image in this post covers about 100 square kilometers; modern Israel is over 20,000 square kilometers. And this scene contains a mostly undeveloped area; large-scale cities are harder to erase with content-aware fill because there’s less surrounding wilderness for the algorithm to work with. But if you’re willing to put in the work, the result could be a free, plausibly realistic, reasonably detailed map over which you can overlay your own data.

BibleTech 2019

January 11th, 2019

If you’re reading this blog, then you’re probably interested in attending the BibleTech conference, held on April 11-12, 2019, in Seattle.

You may even be interested in submitting a proposal for a talk; if so, the deadline is January 31.

Here’s what I plan to talk about if they accept me:

Designing for Agency in Bible Study

This talk explores the theory and practice of designing a Bible study experience so that the distinctive property of digital media–interactivity at scale–enhances rather than constrains the participant’s agency, or ability to act. We’ll discuss how people’s psychological needs for competence, relatedness, and autonomy affect their approach to and expectations of the Bible and church life, and how developers can support these needs by considering agency during the design process. We’ll also look at a specific application that HarperCollins Christian Publishing has developed to put these ideas into practice and promote agency in the context of daily Bible reading, explaining how and why we transformed a product that wasn’t a good fit for print into one that feels digitally native.

Using 3D Software to Enhance the Resolution of Bible Maps

December 28th, 2018

The problem with using satellite photos for Bible (or other historical) maps lies in their photographic nature–they present the world as it is, with modern cities, agriculture, land use, and other infrastructure that didn’t exist in the ancient period that the maps are depicting. However, satellite maps are useful in showing “true-color” views and revealing features like transitions from deserts to wetlands.

If you’re not using satellite photos for the Bible maps you’re creating, you’re using other data, like elevation; indeed, with only elevation data, you can produce a variety of map styles. Shaded relief shows hills in a naturalistic way, approximating the look of satellite images. A hypsometric map, where the map color changes with elevation, also depicts this data, though I would argue that hypsometric maps can be misleading if they transition from green colors at low elevations to brown colors at higher elevations, since people have become used to satellite photos with these colors as depicting land cover.

The main problem with relying on elevation data (a digital elevation model, or DEM) is its relatively low resolution; until 2015, a 90-meter resolution (i.e., one pixel of elevation data corresponds to an approximate square 90 meters by 90 meters) was the highest resolution freely available worldwide (well, mostly worldwide). In 2015, the SRTM worldwide elevation data became available at a 30-meter resolution, or 9 times higher resolution than previously. Also in 2015, similar ALOS 30-meter data became available. If you’re willing to pay tens or hundreds of thousands of dollars, you can also find proprietary elevation data at resolutions of 5 meters. Most of us aren’t in a position to pay that kind of money, however, so I’m interested in free data.

Bible atlases produced before 2015 almost certainly use the coarser 90-meter resolution, while Bible atlases produced since (though as of late 2018 I’m not aware of any) would likely use the 30-meter resolution and can zoom in much further without becoming blurry.

However, 30 meters feels rough compared to the satellite imagery available in Google Maps, which is often at 30 centimeters. Even free imagery from the European Sentinel-2 project is available at 10 meters, or 9 times higher resolution than 30 meters.

DEM Enhancements

The question I have is whether it’s possible to enhance a 30-meter DEM to bring it closer to the high resolution that Google Maps is training us to expect on maps everywhere.

To answer that question, I turned to Terragen, 3D modeling software designed to render photorealistic landscapes. (I actually tried several different programs, but Terragen was the least confusing.) Terragen and similar programs procedurally improve resolution by adding fractal enhancement–in other words, they extrapolate from the available data to add plausible, if fake, detail. My process was the following:

  1. Find a high-resolution DEM to use as a reference for the output of the process.
  2. Downsample the DEM to 30-meter resolution to match the DEM available worldwide.
  3. Enhance and style the DEM in Terragen to mimic a satellite photo.
  4. Compare the output.

The U.S. Geological Survey has started making elevation data available at a 1-meter resolution for select parts of the United States. I picked a desert area near Dayton, Nevada, that roughly matches the terrain of ancient Israel (since Israel will probably be the subject of most Bible maps).

I converted the USGS .img file into a geotiff using gdal_translate and resampled it to 30-meter resolution using gdalwarp -tr 30 30 USGS_NED_one_meter_x27y436_NV_Reno_Carson_QL2_2017_IMG_2018.img nv-30.tif.

The result was two tiffs that I imported into Terragen. After that, I spent some time coloring and styling them, with the below results:

Comparison of six different views of the same scene.

This image shows 1-meter shaded relief, 30-meter shaded relief with blurry bicubic resampling, 10-meter publicly available satellite photo that I slightly retouched, 1-meter colored and enhanced in Terragen, 30-meter colored and enhanced in Terragen, and the Google Maps view for this area.

I feel like the 30-meter Terragen view, which is what you could plausibly produce for Bible maps, looks pretty OK, actually–though a trained 3D artist would do better. The 1-meter data, while accurate, reproduces modern features like the road on the right side, which is unhelpful for Bible maps–mitigating modern features is the one of the main points of this exercise. While the 30-meter view doesn’t have all the detail of the 1-meter version, the rendering feels plausible to me.

Of course, “plausible” doesn’t mean “accurate,” and there’s the question of whether it’s ethical to enhance terrain in this way–you’re essentially inventing detail that doesn’t exist in the source data, which could mislead someone if they believe that the detail reflects reality. It depends how far you want to push the idea that all maps are in some way plausible fictions.

Scaling Up

What’s needed to implement this technique in production?

  1. A base map to use for coloring (I’d use Natural Earth II–I tried it in the Nevada scene and think it could work–but you could also use satellite imagery or your own colors).
  2. A way to export and reproject the finished product. My free version of Terragen can only export images 800 pixels wide; you’ll probably want to export them at over 10,000 pixels wide. And then you’ll need to stitch them together and reproject them to Web Mercator to display them in online mapping applications.
  3. A way to layer the images with other data (such as bodies of water and labels).
  4. A delivery mechanism (probably tiles over the Internet, as with Google Maps and most mapping applications).


This approach represents a plausible way to improve the resolution of Bible maps or other historical maps using only publicly available, free data. Although it creates some ethical problems, with proper disclosure it could potentially be a useful way to make Bible maps more compelling and zoomable.

Update March 2019: See the followup post, Using Machine Learning to Enhance the Resolution of Bible Maps.

Art of the Bible

November 8th, 2018

Art of the Bible is a website I made to catalog 5,800 freely available historical Christian-themed artworks on Wikipedia. The site primarily focuses on European paintings from the 1400s to the 1800s that, at least in the U.S., should be free from copyright considerations. Arranged into 116 Bible stories, it relies on linked data to populate its database–which means you should be able to use these images for pretty much any purpose.

Visit the Art of the.Bible website.

Linked Data

The site uses Wikidata, a “linked,” or structured, data project from Wikimedia that annotates Wikipedia articles and Wikimedia Commons images with computer-readable data.

Specifically, the site builds on Iconclass, a Dutch system for categorizing (mostly European) artworks based on their subject–for example: Eve takes the fruit from the serpent (or the tree) in the presence of Adam (who may be trying to stop her).

Wikidata has an Iconclass property, so it was just a matter of finding religious art in Wikidata that didn’t have an Iconclass and then making 14,366 edits.

All the data is available in Wikidata; the two SPARQL queries that power the site are for biblical and Christian art.

Most images on Wikimedia Commons don’t have a corresponding Wikidata entry; I estimate that Wikimedia Commons contains at least 50,000 potential biblical artworks that aren’t on Wikidata.

The Frontend

The frontend is a simple, static HTML browser; it’s full of JSON+LD if you’re into that kind of thing.

Google Will Now Answer Your Theological Questions

April 14th, 2018

Google just announced an AI-powered experiment called Talk to Books, which lets you enter a query and find passages in books that are semantically similar to your query, not merely passages that happen to match the keywords you chose. For theology- and Bible-related questions, it often presents an evangelical perspective, perhaps because U.S. evangelical publishers have been eager for Google to index their books.

Here are some questions I asked it, with a sample response (not always the first):

Does God exist? “Creatures may or may not exist; God must exist; He cannot not exist.” — The Catholic Collection.

Why does a good God allow suffering? “Either you somehow deny the world’s suffering (that is, suffering is eventually shown to belong to a higher order of goodness) or else one or more of God’s characteristics (existence, benevolence, omnipotence) are denied.” — A Philosophy of Evil.

When does the rapture happen? “Depending upon one’s view, the rapture occurs either before, during, or after a seven-year period of intense trial and trauma on earth known as the tribulation, as recorded in Revelation 6-19.” — Armed Groups: Studies in National Security, Counterterrorism, and Counterinsurgency.

Where is Jesus now? “Wherever you are as you read these words, he is present.” — And the Angels Were Silent. Some of the other answers, like “He is on the shore of the Sea of Galilee with Andrew and other apostles,” are on the strange side–even in context, the answer is wrong, as this sentence is talking about Peter, not Jesus.

It totally whiffs on Who is Abraham’s father? Rather than interpreting the question and providing a factual answer, it presents a number of passages describing how Abraham is the father of Isaac or of Isaac’s descendants. These passages relate semantically but don’t answer the question.

Answers to 'What is the role of the Holy Spirit' include responses from an NKJV study Bible and Billy Graham.

What Twitterers Are Giving up for Lent (2018 Edition)

February 17th, 2018

Social networking, Twitter, and alcohol are the top three things Twitterers gave up for Lent in 2018.

This year social networking topped the list, followed by Twitter, alcohol, chocolate, and swearing. It was a fairly typical year, with the top five the same as last year (though in a different order)–except for swearing, which came in at #6 last year, behind chips. (Chips had received a boost last year from Theresa May’s vow to give them up; this year they returned to closer to their usual spot.)

This year, 29,609 tweets (excluding retweets) specifically mention giving up something, down substantially from last year’s 73,334. In all, this year the analysis covers 427,810 tweets, down from 694,244 last year.


As expected with Valentine’s Day falling on Ash Wednesday this year, relationship-related tweets increased:

Men + boys increased, Valentine's Day + love + being single increased sharply, and women + girls increased slightly.


Plastic also jumped substantially this year, boosted by the Church of England’s suggestion that followers give up various forms of plastic for Lent.

Plastic increased to nearly 1% of tweets this year.


New to the list this year is Fortnite, a Hunger Games-style video game:

“It’s all they talk about,” said Glen Irvin, a teacher coach at a high school in Sauk Rapids, Minn., of “Fortnite”-playing students. “The only other game I’ve ever heard kids get this passionate about is ‘Minecraft.’”

Fortnite drastically outperformed Minecraft this year.


Also new this year is juuling, a slick and covert way to vape:

Resembling a flash drive, Juul conveys a sense of industry — you’re Juuling into your MacBook Air while you are cramming for your test on Theodore Dreiser and thinking about trigonometry — and it is so easy to conceal that, as one mother explained to me, she failed to notice that her daughter was vaping in the back seat of the car as she was driving.

Giving up juuling this year was nearly half as popular as giving up smoking:

Vaping is a distant third place.


Two newcomers to the list this year are #30, guns, and #88, mass shootings. These tweets reflected a shooting at a Florida high school on Ash Wednesday.

The relevant topics jumped

Donald Trump

Donald Trump fell this year from #22 to #67, sandwiched between hope and procrastination.

Percentagewise, tweets related to President Trump fell by about two-thirds.

Tide Pods

Finishing just out of the top 100 this year are Tide Pods, which people keep eating for some reason.

Hopefully this is a one-year wonder.

Fast Food

Chick-fil-A surged to near-parity with McDonald’s, while Chipotle this week decided to deal with its Taco Bell parity by hiring Taco Bell’s former CEO.

Meanwhile, In-N-Out lost its momentum from last year.

Snack Food

Have Hot Cheetos finally plateaued?

Hot Cheetos were identical to last year.


This year 4,667 tweets (16%) contained at least one emoji, down from 19% last year. The most-popular emojis were: 😂 😭 ♀ 😩 🙃 🙏 ✌ 😅 🙄 ♂.


Here’s the most-retweeted Lent post this year, with over 71,000 retweets. I’m not totally sure why. (All the rest of the data on this page excludes retweets.)

Top 100 Things Twitterers Gave Up for Lent in 2018

Rank Word Count Change from last year’s rank
1. Social networking 1,329 +1
2. Twitter 1,215 +2
3. Alcohol 1,105 -2
4. Chocolate 1,035 -1
5. Swearing 549 +1
6. Meat 531 +6
7. Sweets 499 +3
8. Soda 441 0
9. Coffee 387 +2
10. Fast food 380 -1
11. Lent 373 +2
12. Facebook 342 +9
13. Sex 315 +6
14. Bread 267 +2
15. School 256 -8
16. Chips 222 -11
17. Snapchat 216 +34
18. Beer 193 -3
19. You 189 +1
20. Men 189 +35
21. Plastic 188 +122
22. Sugar 185 -5
23. Boys 165 +2
24. Candy 162 +7
25. Valentine’s Day 157 +130
26. Work 145 -2
27. College 145 -13
28. Negativity 144 +32
29. Instagram 143 +13
30. Guns 141 +126
31. Life 139 -13
32. Marijuana 132 +1
33. Junk food 130 -6
34. Religion 130 -8
35. Giving up things 112  
36. Starbucks 111 -2
37. Red meat 108 +12
38. Cheese 106 -6
39. Catholicism 105 -4
40. Pizza 104 -11
41. Smoking 100 -11
42. Love 100 +96
43. Wine 93 -3
44. Carbs 91 0
45. Me 89 -7
46. Fortnite 87  
47. Lying 84 +25
48. Dairy 81 +13
49. Homework 78 -21
50. Rice 77 -7
51. Booze 76 +12
52. Fried food 75 -7
53. Ice cream 74 -17
54. Complaining 72 +14
55. Cookies 69 -18
56. Single use plastic 68 +100
57. Shopping 68 -11
58. People 66 -11
59. Caffeine 65 +11
60. Stuff 60 -10
61. Masturbation 59 +3
62. Liquor 58 -5
63. F***boys 58 -24
64. Takeout 57 -4
65. Sobriety 57 -9
66. Hope 57 -43
67. Donald Trump 56 -46
68. Procrastination 56 -13
69. Virginity 55 -21
70. McDonald’s 55 -8
71. Hot Cheetos 55 -5
72. French fries 53 -20
73. Netflix 53 -8
74. Fizzy drinks 49 +3
75. Chick Fil A 48 +4
76. Eating out 48 -10
77. Makeup 47 -32
78. Porn 47 +21
79. Myself 45 -3
80. Juuling 45  
81. Him 44 -7
82. Pasta 44 -3
83. Desserts 41 -14
84. Food 40 -25
85. Coke 40 -14
86. Pork 39 +17
87. Dating 38 +23
88. Mass shootings 38  
89. Sleep 38 -16
90. Breathing 37 -47
91. Boba 37 +3
92. Being single 36 +22
93. Cake 36 -6
94. My will to live 36 -36
95. Pancakes 36 -15
96. The presidency 35 -43
97. Online shopping 32 -15
98. Tea 31 +10
99. Brexit 30 +27
100. This 30 -5
101. TV 30 -5

Top Categories

Unlike previous years, no non-political celebrities inspired large numbers of people to give them up.

Rank Category Number of Tweets
1. food 6,702
2. technology 3,556
3. habits 2,034
4. smoking/drugs/alcohol 2,027
5. relationship 1,339
6. irony 946
7. school/work 714
8. sex 568
9. religion 404
10. politics 252
11. generic 224
12. possessions 155
13. entertainment 149
14. shopping 147
15. health/hygiene 125
16. money 94
17. sports 53
18. weather 21
19. clothes 14

Media Coverage

The Lent Tracker received some media attention this year:

Track in Real Time What People Are Giving Up for Lent in 2018

February 12th, 2018

See the top 100 things people are giving up for Lent in 2018 on Twitter, continually updated until February 17, 2018. You can also use the Historical Lent Tracker to see trends since 2009, though 2018 is still in flux, so I wouldn’t draw any conclusions about 2018 yet.

As I write this post, with about 1,500 tweets analyzed, perennial favorites “social networking,” “alcohol,” and “twitter” lead the list. Ash Wednesday coincides with Valentine’s Day this year (and thus Easter with April Fools’ Day), so I expect relationship-related tweets to run higher than usual.

Look for the usual post-mortem on February 18, 2018.