
    <feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
      <title>graham's blog (#longposts)</title>
      <subtitle>to distract from existential dread</subtitle>
      <link href="https://graham.build/s/a-blog/about/longposts/feed.xml"/>
      <link href="https://graham.build/"/>
      <updated>2026-09-03T19:30:00.000Z</updated>
      <id>https://graham.build/</id>
      <author>
        <name>graham</name>
      </author>
      
        <entry>
          <title>I Went Scuba Diving</title>
          <link href="https://graham.build/s/a-blog/040-i-went-scuba-diving/" />
          <id>https://graham.build/s/a-blog/040-i-went-scuba-diving/</id>
          <published>2026-09-03T19:30:00.000Z</published>
          <updated>2026-09-03T19:30:00.000Z</updated>
          <category>travel</category>
<category>cozumel</category>
<category>mexico</category>
<category>scuba diving</category>
<category>longposts</category>
<category>fish</category>
<category>turtles</category>
<category>eels</category>
<category>crabs</category>
<category>lobsters</category>
          <content type="html">
            &lt;p&gt;My partner has been scuba certified since the age of twelve.&lt;sup class=&quot;footnote-ref&quot;&gt;&lt;a href=&quot;#fn1&quot; id=&quot;fnref1&quot;&gt;[1]&lt;/a&gt;&lt;/sup&gt; I have long enjoyed hearing animated stories of the cool sights to be seen, the majesty of coral reefs, and the safety and care that goes into such an ecological sport. In 2022, as a birthday/holiday present, my family bought a special phone case for my partner to go diving with so that we could see pictures and videos of the results.&lt;sup class=&quot;footnote-ref&quot;&gt;&lt;a href=&quot;#fn2&quot; id=&quot;fnref2&quot;&gt;[2]&lt;/a&gt;&lt;/sup&gt; Getting to see what was down there has definitely made me appreciate the activity more than hearing about it ever did. It&#039;s a lot of work to edit any of the photos to balance for the blueness&lt;sup class=&quot;footnote-ref&quot;&gt;&lt;a href=&quot;#fn3&quot; id=&quot;fnref3&quot;&gt;[3]&lt;/a&gt;&lt;/sup&gt; and low contrast of the ocean, which is why these images are just presented as is. Despite all of the stories and pictures and videos I had seen and heard, for years, I had maintained my stance that I was uninterested in ever going scuba diving, myself.&lt;sup class=&quot;footnote-ref&quot;&gt;&lt;a href=&quot;#fn4&quot; id=&quot;fnref4&quot;&gt;[4]&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;
&lt;p&gt;This week, I went scuba diving for the first time, and I loved it. My partner and my mother-in-law&lt;sup class=&quot;footnote-ref&quot;&gt;&lt;a href=&quot;#fn5&quot; id=&quot;fnref5&quot;&gt;[5]&lt;/a&gt;&lt;/sup&gt; and I all went to Cozumel, Mexico to dive along the &lt;a href=&quot;https://en.wikipedia.org/wiki/Mesoamerican_Barrier_Reef_System&quot;&gt;Great Mayan Reef&lt;/a&gt;.&lt;sup class=&quot;footnote-ref&quot;&gt;&lt;a href=&quot;#fn6&quot; id=&quot;fnref6&quot;&gt;[6]&lt;/a&gt;&lt;/sup&gt; This is the second largest reef in the world after the Great Barrier Reef, and it stretches on for 625 miles&lt;sup class=&quot;footnote-ref&quot;&gt;&lt;a href=&quot;#fn7&quot; id=&quot;fnref7&quot;&gt;[7]&lt;/a&gt;&lt;/sup&gt;. The Cozumel portion of the reef tends to have huge underwater cliffs lined with coral. This makes for scenery that is a combination of seeing novel marine life and appreciating a sort of architectural geology.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/post-assets/040-i-went-scuba-diving/reef_1.jpg&quot; alt=&quot;Looking up at a coral reef cliff from approximately 40 feet deep, with the water&#039;s surface at the top&quot;&gt;&lt;/p&gt;
&lt;p&gt;For a person who has never gone scuba diving before, there are programs that certain dive shops offer like &amp;quot;discover scuba&amp;quot; where you can have a guide teach you what you need to safely dive before taking you on a roughly 45 minute underwater tour to immediately test your skills. During that dive, you&#039;ll generally stay at or above 30ft deep, which means that if anything goes wrong and you and your guide can&#039;t find a fix for it underwater, you&#039;re safe to swim directly to the surface, and potentially even end the dive early. This appealed to me as a safe subset of scuba diving: I&#039;d never have to worry about decompression sickness at all, and I would be able to go deeper and spend a longer time underwater than I ever did snorkeling. Going in, I thought that scuba diving required you to be 1. great at swimming, 2. obsessed with being underwater, 3. clean-shaven. Each of those items helps but is not necessary.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/post-assets/040-i-went-scuba-diving/reef_2.jpg&quot; alt=&quot;A reef with multiple layers of coral sticking out over each other&quot;&gt;&lt;/p&gt;
&lt;h3&gt;You don&#039;t need to be great at swimming&lt;/h3&gt;
&lt;p&gt;I currently cannot easily swim the length of an olympic swimming pool. I can tread water, and I can swim for survival by alternating floating and the backstroke, but that&#039;s about it. With flippers, I can go a lot farther a lot faster, but my technique for most swimming styles is lacking. Despite that, I had no trouble swimming while scuba diving.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/post-assets/040-i-went-scuba-diving/reef_3.jpg&quot; alt=&quot;A coral column jutting vertically up out of the rest of the reef&quot;&gt;&lt;/p&gt;
&lt;p&gt;The primary method of movement while scuba diving is the same as a fish: &lt;a href=&quot;https://en.wikipedia.org/wiki/Swim_bladder&quot;&gt;a swim bladder&lt;/a&gt;. Your equipment includes a Buoyancy Control Device (BCD) that can fill up with air from your tank and has pockets for additional weights. By balancing the buoyant force of the air in your BCD against the gravitational force of the weights, you can achieve perfect buoyancy, meaning that you will neither sink nor float. However, you need to breathe&lt;sup class=&quot;footnote-ref&quot;&gt;&lt;a href=&quot;#fn8&quot; id=&quot;fnref8&quot;&gt;[8]&lt;/a&gt;&lt;/sup&gt;, so you &lt;em&gt;must&lt;/em&gt; inhale or you&#039;ll eventually be at risk of hypoxia. But, by inhaling through your regulator, your lungs expand with gas that makes you more buoyant, and as you exhale, your lungs shrink back down and you become less buoyant. Because inhaling and exhaling take some time, you wind up being able to control your buoyancy through the regulation of your own breath.&lt;sup class=&quot;footnote-ref&quot;&gt;&lt;a href=&quot;#fn9&quot; id=&quot;fnref9&quot;&gt;[9]&lt;/a&gt;&lt;/sup&gt; Recall that there&#039;s &lt;a href=&quot;https://en.wikipedia.org/wiki/Vertical_pressure_variation&quot;&gt;lower pressure at higher altitudes&lt;/a&gt;, even in water, so there is some real danger in holding your breath: your lungs are only supposed to fluctuate between a certain range of sizes, and the extra pressure from changes in depth could cause you permanent damage. For this reason, &lt;strong&gt;the number 1 rule of scuba diving is to &amp;quot;keep breathing.&amp;quot;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/post-assets/040-i-went-scuba-diving/hermit_crab.jpg&quot; alt=&quot;A hermit crab in a conch shell with a path in the sand from where it&#039;s been crawling&quot;&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;One of the other main rules of scuba is to clear your ears regularly.&lt;/strong&gt; As the water pressure around you increases or decreases, it can be very similar to a plane takeoff or landing in terms of your ears&#039; need to &amp;quot;pop&amp;quot; so that your inner-ear stays neutrally pressured. Failure to neutralize this pressure tends to hurt after a bit, and if ignored too long can cause permanent hearing damage! If I was a physics teacher, I&#039;d focus on these problems as a more important part of scuba diving to know about than decompression sickness, I think.&lt;/p&gt;
&lt;h3&gt;You don&#039;t need to be obsessed with being underwater&lt;/h3&gt;
&lt;p&gt;I have generally enjoyed going in the water since I was a kid. I never thought of myself as a mermaid or anything, but I liked the challenge of diving deep to get stuff off the bottom of the pool. I tried snorkeling when I was in middle school, and I liked that too. It was tough to breathe and I always felt like I had more I wanted see before we had to head home. In college and afterwards, I entered a sort of negative feedback loop where I&#039;d go somewhere that had water and hang out but never actually go in, which made me not want to go in because people knew me as someone who didn&#039;t really go in the water. I&#039;ve grown more and more distant from swimming to the point where I could probably count on one hand the number of times I&#039;ve actually swam in a pool or ocean in the last decade or so.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/post-assets/040-i-went-scuba-diving/green_moray_eel.jpg&quot; alt=&quot;A rare sight of a green moray eel outside of its den&quot;&gt;&lt;/p&gt;
&lt;p&gt;That all being said, you may have noticed if you&#039;ve been &lt;a href=&quot;/s/a-blog/012-listening-on-hikes&quot;&gt;reading this blog&lt;/a&gt; that I &lt;a href=&quot;/s/a-blog/014-caring-about-a-royal-family&quot;&gt;enjoy wildlife&lt;/a&gt; &lt;a href=&quot;/s/a-blog/038-i-saw-some-puffins&quot;&gt;quite a bit&lt;/a&gt;. Scuba diving to me is a lot less about being able to achieve some dream of swimming in the same manner as a fish. Far more important is the way that scuba diving emulates a hike or bird-watching, just underwater. Yes, many of the fish on a reef at first may look like the ones in your Dentist&#039;s tropical salt-water tank. But I&#039;m someone who finds meaning in being able to distinguish a house sparrow from a house finch or a crow from a raven in my local neighborhood, so I am just as likely to have fun telling a &lt;a href=&quot;https://en.wikipedia.org/wiki/Parrotfish&quot;&gt;parrotfish&lt;/a&gt; from a &lt;a href=&quot;https://en.wikipedia.org/wiki/Triggerfish&quot;&gt;triggerfish&lt;/a&gt; or a &lt;a href=&quot;https://en.wikipedia.org/wiki/Ostraciidae&quot;&gt;boxfish from a cowfish&lt;/a&gt; out here.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/post-assets/040-i-went-scuba-diving/caribbean_spiny_lobster_under_reef.jpg&quot; alt=&quot;A Caribbean spiny lobster sitting underneath the coral ledge&quot;&gt;&lt;/p&gt;
&lt;p&gt;And if I know which houses&#039; eaves a corvid may like to sit and caw from back home, I can also appreciate the shapes and structures of reef ledges that give spots for eels, fish, and crustaceans to rest.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/post-assets/040-i-went-scuba-diving/nurse_sharks.jpg&quot; alt=&quot;A pair of nurse sharks underneath another coral reef ledge&quot;&gt;&lt;/p&gt;
&lt;p&gt;Ed Yong&lt;sup class=&quot;footnote-ref&quot;&gt;&lt;a href=&quot;#fn10&quot; id=&quot;fnref10&quot;&gt;[10]&lt;/a&gt;&lt;/sup&gt; said in &lt;a href=&quot;https://www.okaybutbirds.com/episodes/e9&quot;&gt;an episode of Okay But Birds&lt;/a&gt; that:&lt;/p&gt;
&lt;blockquote&gt;
I think one of the joys of birding is that there is this glorious, virtuous cycle between how much you look and how much you see. And the more you look, the more you see. And the more you see, the more inclined you are to spend your time looking. And that&#039;s what happened to me.
&lt;/blockquote&gt;
&lt;p&gt;I find the same holds true for scuba diving in a couple of ways. Even after looking at a dozen coral reefs that seemed to mostly have the same sorts of fish in and around them, closer inspection of any one reef or piece of coral could reveal something camouflaged like the Caribbean reef crab,&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/post-assets/040-i-went-scuba-diving/caribbean_reef_crab.jpg&quot; alt=&quot;A Caribbean reef crab with just a few legs, its pincers, and part of its head sticking out from under some coral&quot;&gt;&lt;/p&gt;
&lt;p&gt;something safely nestled between arms of coral like the trumpetfish,&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/post-assets/040-i-went-scuba-diving/trumpetfish.jpg&quot; alt=&quot;A trumpetfish floating in between pieces of coral&quot;&gt;&lt;/p&gt;
&lt;p&gt;or something much smaller like the &lt;a href=&quot;https://en.wikipedia.org/wiki/Stenorhynchus_seticornis&quot;&gt;arrow crab&lt;/a&gt;, for instance.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/post-assets/040-i-went-scuba-diving/arrow_crab.jpg&quot; alt=&quot;An arrow crab in between arms of a coral&quot;&gt;&lt;/p&gt;
&lt;p&gt;And as you leave one coral reef and come upon the next, there also tend to be opportunities to look up and further away, where you might realize that you&#039;re in the presence of an exciting and much bigger organism.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/post-assets/040-i-went-scuba-diving/black_tipped_reef_shark.jpg&quot; alt=&quot;A black-tipped reef shark off in the distance&quot;&gt;&lt;/p&gt;
&lt;p&gt;It should be noted that despite plenty of movies, TV, and music insisting that animals like sharks and barracudas are dangerous, they are generally harmless if left undisturbed. Reef sharks are particularly docile as long as you stay out of their space, and barracudas tend to only go after small shiny fish. If you&#039;re wearing small shiny jewelry, that &lt;em&gt;might&lt;/em&gt; be a problem, but even then, the chances of your jewelry glinting in exactly the wrong way to fool a barracuda and have it think it can get that &amp;quot;food&amp;quot; while you, a much larger &amp;quot;fish&amp;quot; are swimming right nearby, are low. As with all wildlife appreciation, you should keep a respectful distance and keep your hands to yourself.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/post-assets/040-i-went-scuba-diving/barracuda_and_cozumel_porcupine.jpg&quot; alt=&quot;A barracuda next to a spotted porcupinefish - a type of pufferfish&quot;&gt;&lt;/p&gt;
&lt;h3&gt;You don&#039;t need to be clean-shaven&lt;/h3&gt;
&lt;p&gt;When I climbed onto the boat, my dive instructor began running through the high-level overview of how scuba works and the safety measures we would be taking. He had a large beard and long hair, so I asked about whether his facial hair ever gets in the way of creating a good seal with the dive mask. He said that there&#039;s usually a slightly worse seal because of his moustache, but that there was no problem besides a little bit of water under the nose from some initial leakage at the surface. He explained that while diving, you generally want to exhale a little bit out of your nose from time to time to make sure tha air pressure in the mask balances out the water pressure outside the mask, and that positive air pressure tends to keep the slightly worse seal on the philtrum&lt;sup class=&quot;footnote-ref&quot;&gt;&lt;a href=&quot;#fn11&quot; id=&quot;fnref11&quot;&gt;[11]&lt;/a&gt;&lt;/sup&gt; from getting much water into your mask. Apparently, not balancing the pressure during descent into the depths can lead to &lt;a href=&quot;https://en.wikipedia.org/wiki/Barotrauma&quot;&gt;facial barotrauma&lt;/a&gt;, so it&#039;s better to just exhale a little through your nose every so often and do the rest out the mouth!&lt;/p&gt;
&lt;h3&gt;Other things I learned&lt;/h3&gt;
&lt;h4&gt;Communication&lt;/h4&gt;
&lt;p&gt;Because the regulator is in your mouth and comprehending spoken words underwater is already pretty fraught, communication during scuba diving is limited. There are several &lt;a href=&quot;https://en.wikipedia.org/wiki/Diver_communications#Hand_signals&quot;&gt;common hand signals&lt;/a&gt; that recreational divers use, many of which I learned&lt;sup class=&quot;footnote-ref&quot;&gt;&lt;a href=&quot;#fn12&quot; id=&quot;fnref12&quot;&gt;[12]&lt;/a&gt;&lt;/sup&gt;. I think it&#039;s pretty fun to be in a place where viewing wildlife is a primary goal, and when you see something exciting, you need to be able to tell other people where to look and what to look for without using words. And when they see it, it seems common to either point or mirror the gesture back to confirm. Some divers will bring a small noisemaker that they can briefly use to get divers&#039; attention from further away before communicating what they saw.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/post-assets/040-i-went-scuba-diving/caribbean_spiny_lobster.jpg&quot; alt=&quot;A low angle shot of a spiny lobster perched on a reef with the ocean surface behind it&quot;&gt;&lt;/p&gt;
&lt;p&gt;I wish that there was more of this &amp;quot;mostly silent communication&amp;quot; in birding. I sometimes find the discussion about &amp;quot;what bird do you think that was&amp;quot; or &amp;quot;wow, isn&#039;t that so cool&amp;quot; or &amp;quot;which bird song were you referring to&amp;quot; to get in the way of focusing on the wildlife itself. The silent acknowledgement of things underwater leaves something to be desired on land.&lt;/p&gt;
&lt;p&gt;It&#039;s funny timing to have a new activity in my life that features communicating without sound, given how much I&#039;ve been playing &lt;a href=&quot;https://bigwalk.game/&quot;&gt;Big Walk&lt;/a&gt; this summer with friends. There are plenty of parts in that game where not being able to hear the other people you&#039;re trying to communicate with is a core feature of the design, and I&#039;ve greatly enjoyed it.&lt;sup class=&quot;footnote-ref&quot;&gt;&lt;a href=&quot;#fn13&quot; id=&quot;fnref13&quot;&gt;[13]&lt;/a&gt;&lt;/sup&gt; There are even arm signals you can do in the game, even if they&#039;re not &lt;em&gt;that&lt;/em&gt; expressive. I&#039;d love to see an online cooperative exploration game in the same vein as &lt;a href=&quot;https://peakpeakpeak.com/&quot;&gt;Peak&lt;/a&gt; or Big Walk attempt to make the communication of cool stuff you see be the goal of the hand/arm signaling.&lt;sup class=&quot;footnote-ref&quot;&gt;&lt;a href=&quot;#fn14&quot; id=&quot;fnref14&quot;&gt;[14]&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;
&lt;h4&gt;Camouflage to humans&lt;/h4&gt;
&lt;p&gt;I was fortunate enough to see both little &lt;a href=&quot;https://en.wikipedia.org/wiki/Yellow_stingray&quot;&gt;yellow stingrays&lt;/a&gt; and larger &lt;a href=&quot;https://en.wikipedia.org/wiki/Southern_stingray&quot;&gt;southern stingrays&lt;/a&gt; while diving. The yellow stingrays were better at camouflaging themselves against the sand and grass, but it was very common to see each stingray with another fish hitching a ride right above it to try to gobble up any loose bits from the messy way stingrays eat their food. This meant that there were grassy sea floors where you would see a couple of stationary brown-colored bar jacks,&lt;sup class=&quot;footnote-ref&quot;&gt;&lt;a href=&quot;#fn15&quot; id=&quot;fnref15&quot;&gt;[15]&lt;/a&gt;&lt;/sup&gt; until you realized that each of those floating fish was actually giving away the position of a yellow stingray below it.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/post-assets/040-i-went-scuba-diving/southern_sting_ray.jpg&quot; alt=&quot;A southern stingray with a smooth trunkfish following above it&quot;&gt;&lt;/p&gt;
&lt;p&gt;This particular southern stingray had a &lt;a href=&quot;https://en.wikipedia.org/wiki/Smooth_trunkfish&quot;&gt;smooth trunkfish&lt;/a&gt; above it, which was a rare exception to the bar jacks we otherwise saw.&lt;/p&gt;
&lt;h4&gt;Scuba diving is expensive&lt;/h4&gt;
&lt;p&gt;Even ignoring the costs of getting there,&lt;sup class=&quot;footnote-ref&quot;&gt;&lt;a href=&quot;#fn16&quot; id=&quot;fnref16&quot;&gt;[16]&lt;/a&gt;&lt;/sup&gt; scuba diving is prohibitively expensive for most people. I think that&#039;s a shame, and in an ideal world, reefs and other interesting places to go underwater would be protected, subsidized parks, just like their above-ground counterparts. Scuba diving costs should be comparable to the costs of backpacking. Generally, it should be cheaper to go outside to see wildlife than just about any other recreational activity, in my opinion.&lt;/p&gt;
&lt;p&gt;I hope that I can get scuba certified and keep diving for many years in the future. I know there are live-aboards that allow you to ammortize the travel and shelter costs quite a bit, even though they&#039;re often more remote. My partner and I are extremely privileged to have the freedom to travel that we do.&lt;/p&gt;
&lt;h4&gt;I like swimming with turtles&lt;/h4&gt;
&lt;p&gt;I have liked turtles for the vast majority of my life. They were something I&#039;d get to see at aquariums or maybe in a fountain at a park. Occasionally they would be featured on some documentary about how fragile the baby turtles are or how corporate irresponsibility was leading to plastic hurting or killing them. I&#039;ve had friends who owned pet turtles. All of these are sort of admiring or caring for turtles from afar or outside of their natural habitat.&lt;/p&gt;
&lt;p&gt;Going into scuba diving this week, the one animal I wanted to see more than any other was a sea turtle. Obviously I&#039;d be excited to see sharks or eels or an octopus or something, but my big hope was for getting the chance to swim in the same water as a turtle and sort of occupy the same approximate space.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/post-assets/040-i-went-scuba-diving/green_sea_turtle.jpg&quot; alt=&quot;A green sea turtle up close&quot;&gt;&lt;/p&gt;
&lt;p&gt;And I did, and it was great.&lt;/p&gt;
&lt;hr class=&quot;footnotes-sep&quot;&gt;
&lt;section class=&quot;footnotes&quot;&gt;
&lt;ol class=&quot;footnotes-list&quot;&gt;
&lt;li id=&quot;fn1&quot; class=&quot;footnote-item&quot;&gt;&lt;p&gt;Prior to the age of 15, you can get a Junior Open Water Certification. At 15, you&#039;re eligible for Open Water Certification.&lt;sup class=&quot;footnote-ref&quot;&gt;&lt;a href=&quot;#fn17&quot; id=&quot;fnref17&quot;&gt;[17]&lt;/a&gt;&lt;/sup&gt; &lt;a href=&quot;#fnref1&quot; class=&quot;footnote-backref&quot;&gt;↩︎&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&quot;fn2&quot; class=&quot;footnote-item&quot;&gt;&lt;p&gt;All of the included photos were taken by one of us from a phone in &lt;a href=&quot;https://www.divevolkdiving.com/products/divevolk-seatouch-4max-underwater-iphone-diving-housing-iphone-diving-case-compatiable-for-iphone-12-pro-max-13-pro-13-pro-max&quot;&gt;that case&lt;/a&gt;. I&#039;m not trying to advertise for this specific case as much as I want to make the methods reproducible. &lt;a href=&quot;#fnref2&quot; class=&quot;footnote-backref&quot;&gt;↩︎&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&quot;fn3&quot; class=&quot;footnote-item&quot;&gt;&lt;p&gt;Or maybe I should say &lt;a href=&quot;https://en.wikipedia.org/wiki/Underwater_vision&quot;&gt;&amp;quot;lack of redness,&amp;quot;&lt;/a&gt; since there&#039;s very little emitting any extra light down there. &lt;a href=&quot;#fnref3&quot; class=&quot;footnote-backref&quot;&gt;↩︎&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&quot;fn4&quot; class=&quot;footnote-item&quot;&gt;&lt;p&gt;A big part of this was from completing a classic chemistry problem from high school and college about &amp;quot;&lt;a href=&quot;https://en.wikipedia.org/wiki/Decompression_sickness&quot;&gt;The Bends&lt;/a&gt;&amp;quot; and a bunch of misinformed opinions about the safety precautions dive groups take in choosing where and when to go, as well as misinformed opinions about what a person scuba diving needs to do relative to this biological constraint. &lt;a href=&quot;#fnref4&quot; class=&quot;footnote-backref&quot;&gt;↩︎&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&quot;fn5&quot; class=&quot;footnote-item&quot;&gt;&lt;p&gt;Just the &lt;a href=&quot;/s/a-blog/021-blood-and-law&quot;&gt;one law and one implied blood&lt;/a&gt;. My MIL has been my partner&#039;s dive buddy for many years, and this time I was convinced to come along and try for a day, while otherwise just taking a relaxing week off from work as the two of them went diving. &lt;a href=&quot;#fnref5&quot; class=&quot;footnote-backref&quot;&gt;↩︎&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&quot;fn6&quot; class=&quot;footnote-item&quot;&gt;&lt;p&gt;Going scuba diving for the first time in Cozumel has absolutely spoiled my expectations for what a good dive is like. The water is some of the clearest in the world, the reefs are huge and have plenty of biodiversity, the water is usually just as warm of a temperature as the air, and the weather tends to be very agreeable, even during the stormy season right now. The only usual downside is fast currents, sometimes as much as 4-5 knots underwater. &lt;a href=&quot;#fnref6&quot; class=&quot;footnote-backref&quot;&gt;↩︎&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&quot;fn7&quot; class=&quot;footnote-item&quot;&gt;&lt;p&gt;Approximately the distance as the crow flies from New York City to Charleston, North Carolina. &lt;a href=&quot;#fnref7&quot; class=&quot;footnote-backref&quot;&gt;↩︎&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&quot;fn8&quot; class=&quot;footnote-item&quot;&gt;&lt;p&gt;This is close enough to true to just accept as a precondition for scuba diving. The &lt;a href=&quot;https://en.wikipedia.org/wiki/Constant_weight_apnea#Current_World_Record_Holders&quot;&gt;record depth for Constant Weight Apnea (free-diving)&lt;/a&gt; is 136 meters in 4 minutes 37 seconds. Most scuba divers would need to breathe before that point. &lt;a href=&quot;#fnref8&quot; class=&quot;footnote-backref&quot;&gt;↩︎&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&quot;fn9&quot; class=&quot;footnote-item&quot;&gt;&lt;p&gt;The intuition required to know how much to inhale or exhale is definitely a learned skill. I think there could be an interesting sort of Flappy Bird clone where your input is tied to your breathing, but maybe just mapping breathe-in to one button and breathe-out to tapping a second button could wind up with a close-enough approximation to get the gist? &lt;a href=&quot;#fnref9&quot; class=&quot;footnote-backref&quot;&gt;↩︎&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&quot;fn10&quot; class=&quot;footnote-item&quot;&gt;&lt;p&gt;A journalist whose &lt;a href=&quot;https://www.theatlantic.com/science/archive/2021/06/ed-yongs-pulitzer-prize-winning-pandemic-coverage/619182/&quot;&gt;work&lt;/a&gt; and &lt;a href=&quot;https://xoxofest.com/2024/videos/ed-yong/&quot;&gt;talks&lt;/a&gt; I&#039;ve greatly admired for a while &lt;a href=&quot;#fnref10&quot; class=&quot;footnote-backref&quot;&gt;↩︎&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&quot;fn11&quot; class=&quot;footnote-item&quot;&gt;&lt;p&gt;Your philtrum is the skin above your upper lip and below the septum of your nose. &lt;a href=&quot;#fnref11&quot; class=&quot;footnote-backref&quot;&gt;↩︎&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&quot;fn12&quot; class=&quot;footnote-item&quot;&gt;&lt;p&gt;My favorite one was squid, which was basically the same gesture with one hand that you might do if you were a bored teen and wanted to make and overly complex handshake after doing a &amp;quot;pound it&amp;quot; gesture. We did see two squid go by, which is the only reason I learned what the gesture was. &lt;a href=&quot;#fnref12&quot; class=&quot;footnote-backref&quot;&gt;↩︎&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&quot;fn13&quot; class=&quot;footnote-item&quot;&gt;&lt;p&gt;I&#039;ve seen several of my gaming friends enjoying it ok, but where I think the game really shines is in the crowd of people who have not gotten used to twin-stick movement yet. The fact that it has no game overs makes it a fantastically approachable game. If you&#039;re thinking about getting it but don&#039;t know who to play with, I highly recommend finding your friend or family member who has expressed some vague interest in games before but was afraid or anxious of losing or being stressed out. This is a game you could play with your parents or your kids or both. &lt;a href=&quot;#fnref13&quot; class=&quot;footnote-backref&quot;&gt;↩︎&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&quot;fn14&quot; class=&quot;footnote-item&quot;&gt;&lt;p&gt;&lt;a href=&quot;https://en.wikipedia.org/wiki/Journey_(2012_video_game)&quot;&gt;Journey&lt;/a&gt; may have gotten the closest so far to this, in that there was online multiplayer coop without talking, but most of the things to point out were not wildlife, and the expressivity of the communication options were lacking by today&#039;s standards. &lt;a href=&quot;https://en.wikipedia.org/wiki/Portal_2&quot;&gt;Portal 2&lt;/a&gt; back in 2011 gave many options for pinging with puzzle-specific contexts like &amp;quot;countdown from 3&amp;quot; or &amp;quot;stand on that button&amp;quot;, but it wasn&#039;t until &lt;a href=&quot;https://en.wikipedia.org/wiki/Apex_Legends&quot;&gt;Apex Legends&lt;/a&gt; in 2019 that pinging as an expected tool in multiplayer games really became the form that it is today. &lt;a href=&quot;#fnref14&quot; class=&quot;footnote-backref&quot;&gt;↩︎&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&quot;fn15&quot; class=&quot;footnote-item&quot;&gt;&lt;p&gt;You can read more about the &lt;a href=&quot;https://www.researchgate.net/figure/Association-between-an-American-stingray-Dasyatis-americana-and-a-bar-jack-Caranx_fig1_288824329&quot;&gt;association between the bar jack and the southern stingray&lt;/a&gt; &lt;a href=&quot;#fnref15&quot; class=&quot;footnote-backref&quot;&gt;↩︎&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&quot;fn16&quot; class=&quot;footnote-item&quot;&gt;&lt;p&gt;Transportation costs to get to the rough area you want to dive, hotel costs, and then the cost of the actual dive itself, which is ignoring the cost for taking time off from work. Scuba is on par with skiing in terms of unaffordable activities. &lt;a href=&quot;#fnref16&quot; class=&quot;footnote-backref&quot;&gt;↩︎&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&quot;fn17&quot; class=&quot;footnote-item&quot;&gt;&lt;p&gt;Open water certification is generally what you need to go regular scuba diving. See &lt;a href=&quot;https://www.iso.org/standard/60460.html&quot;&gt;ISO-24801&lt;/a&gt; for more information about the international regulations of scuba diving. &lt;a href=&quot;#fnref17&quot; class=&quot;footnote-backref&quot;&gt;↩︎&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/section&gt;

          </content>
        </entry>
      

        <entry>
          <title>Pokemon Gen 1 Phonetic Pangram</title>
          <link href="https://graham.build/s/a-blog/034-pokemon-gen-1-phonetic-pangram/" />
          <id>https://graham.build/s/a-blog/034-pokemon-gen-1-phonetic-pangram/</id>
          <published>2025-12-28T21:40:00.000Z</published>
          <updated>2025-12-28T21:40:00.000Z</updated>
          <category>pokemon</category>
<category>video games</category>
<category>wordplay</category>
<category>phonetic pangrams</category>
<category>longposts</category>
          <content type="html">
            &lt;p&gt;As I mentioned in my &lt;a href=&quot;/s/a-blog/033-phonetic-pangrams&quot;&gt;previous post&lt;/a&gt;, a phonetic pangram is a sentence or phrase that covers every one of the sounds in a given dialect of a language. Since proper nouns can form a phrase, a phonetic pangram could potentially be made from any sufficiently large collection of names.&lt;/p&gt;
&lt;p&gt;This led me to the question: &amp;quot;Is it possible to make a phonetic pangram from pokemon names?&amp;quot; and more specifically, &amp;quot;Can we do so using only the 151 from the first generation of pokemon?&amp;quot;&lt;/p&gt;
&lt;h3&gt;Phonetics&lt;/h3&gt;
&lt;p&gt;For General American English, &lt;a href=&quot;https://en.wikipedia.org/wiki/English_phonology&quot;&gt;wikipedia&lt;/a&gt; lists the following sounds that comprise every commonly spoken word:&lt;/p&gt;
&lt;h4&gt;Consonants (24&lt;sup class=&quot;footnote-ref&quot;&gt;&lt;a href=&quot;#fn1&quot; id=&quot;fnref1&quot;&gt;[1]&lt;/a&gt;&lt;/sup&gt;)&lt;/h4&gt;
&lt;p&gt;&lt;code&gt;m, n, ŋ, p, b, t, d, k, ɡ, tʃ, dʒ, f, v, θ, ð, s, z, ʃ, ʒ, h, l, r, j, w&lt;/code&gt;&lt;/p&gt;
&lt;h4&gt;Vowels (14)&lt;/h4&gt;
&lt;p&gt;&lt;code&gt;ɪ, i, ʊ, u, ɛ, eɪ, ə, oʊ, æ, ɑ, aɪ, ɔɪ, aʊ, ɚ&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;To make a pangram, I simply needed pokemon names that encompassed each of these 38 phonemes. You could imagine a worst case of 38, where each pokemon is picked for having exactly on phoneme represented in its name, though I figured there was probably more overlap than that.&lt;/p&gt;
&lt;h3&gt;Pokemon name pronunciations&lt;/h3&gt;
&lt;p&gt;I was able to find &lt;a href=&quot;https://pokemonlp.antifandom.com/wiki/Pok%C3%A9mon_Pronunciation_Guide/Generation_I&quot;&gt;the pronunciations of all 151 gen 1 pokemon&lt;/a&gt;. I copied the table and kept only the name and IPA pronunciation columns. A given pokemon name contains many phonemes:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;ekans &lt;code&gt;ɛkənz&lt;/code&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;First, I had to figure out whether the set of these pokemon match the 48 phonemes labeled above. To do this, I iterated over every row and added the phonemes for that pokemon&#039;s pronunciation to an ever-growing set. Once I reached the end, I found that there were more than 48 phonemes represented, which meant I needed to do some data cleanup.&lt;/p&gt;
&lt;h3&gt;Data Cleanup&lt;/h3&gt;
&lt;p&gt;There are four different kinds of cleanup that were necessary for this dataset:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Two-character phonemes:&lt;/strong&gt; for diphthongs and dual-character phonemes like &lt;code&gt;dʒ&lt;/code&gt;, I needed to replace these combos with single-character variants instead.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Americanized phonemes:&lt;/strong&gt; because of the &lt;a href=&quot;https://en.wikipedia.org/wiki/Cot%E2%80%93caught_merger&quot;&gt;cot/caught merger&lt;/a&gt; and the &lt;a href=&quot;https://en.wikipedia.org/wiki/Hurry%E2%80%93furry_merger&quot;&gt;hurry/furry merger&lt;/a&gt;, among others, it was necessary to map all present phonemes that other dialects used onto General American English.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Incorrect phonemes:&lt;/strong&gt; There were a couple of places like Victreebel where phones like &lt;code&gt;/r/&lt;/code&gt;&lt;sup class=&quot;footnote-ref&quot;&gt;&lt;a href=&quot;#fn2&quot; id=&quot;fnref2&quot;&gt;[2]&lt;/a&gt;&lt;/sup&gt; which seemed like a mistake, to my ears.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Ambiguous phonemes:&lt;/strong&gt; In the case of Nidoran♂ and Nidoran♀, it is unclear whether the names are supposed to include &amp;quot;male&amp;quot; and &amp;quot;female&amp;quot; in the pronunciations. Even canonical anime pronunciations differ depending on episode.&lt;sup class=&quot;footnote-ref&quot;&gt;&lt;a href=&quot;#fn3&quot; id=&quot;fnref3&quot;&gt;[3]&lt;/a&gt;&lt;/sup&gt; For the purposes of this challenge, it seemed best to omit them.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;After cleanup, I continued to work on the problem.&lt;/p&gt;
&lt;h3&gt;Set Cover&lt;/h3&gt;
&lt;p&gt;I got an old familiar feeling while doing this problem. I thought maybe it was from a previous &lt;a href=&quot;https://adventofcode.com&quot;&gt;advent of code&lt;/a&gt; or something. I couldn&#039;t remember what the problem I was thinking of was formally called -- only previous times that I had encountered it.&lt;/p&gt;
&lt;p&gt;In designing levels for &lt;a href=&quot;https://anvilfood.itch.io/snails-and-sorcery&quot;&gt;Snails and Sorcery&lt;/a&gt;&lt;sup class=&quot;footnote-ref&quot;&gt;&lt;a href=&quot;#fn4&quot; id=&quot;fnref4&quot;&gt;[4]&lt;/a&gt;&lt;/sup&gt;, I mapped out every single mechanic for every single level into a big spreadsheet so that I could tell at a glance whether a given level was introducing too many mechanics at once. Later, I wanted to see which levels would make the smallest set while representing every mechanic.&lt;/p&gt;
&lt;p&gt;Another place this has come up is in Magic: the Gathering combos. There&#039;s a silver-bordered&lt;sup class=&quot;footnote-ref&quot;&gt;&lt;a href=&quot;#fn5&quot; id=&quot;fnref5&quot;&gt;[5]&lt;/a&gt;&lt;/sup&gt; card that lets you win the game if you make a pangram with card names.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://cards.scryfall.io/large/front/9/5/95c790e6-340f-42c2-af88-e458b7b9690c.jpg&quot; alt=&quot;Now I Know My ABCs, a card that checks if you control cards whose names span the English alphabet&quot;&gt;&lt;/p&gt;
&lt;p&gt;Trying to find the smallest combo of card names to achieve this pangram is the same problem, just put in a slightly different context.&lt;/p&gt;
&lt;p&gt;When I asked around, my friends told me that this was a &lt;a href=&quot;https://en.wikipedia.org/wiki/Set_cover_problem&quot;&gt;classic Set Cover problem&lt;/a&gt; and that it&#039;s a notoriously difficult problem once the problem size grows big enough.&lt;/p&gt;
&lt;p&gt;Here I was, once again wondering if there was some collection of things (i.e. pokemon names) that would cover all of a set (i.e. General American English phonemes). Thankfully this problem has the benefit that the set of all pokemon (especially just gen 1) is plenty small compared to the set of all MTG cards and is also very small compared to the limit where solving this problem would take too long to complete.&lt;/p&gt;
&lt;h3&gt;A greedy approximation&lt;/h3&gt;
&lt;p&gt;Generally with Set Cover, it&#039;s a lot easier to get a solution that&#039;s pretty good than a solution that&#039;s provably the best. Instead of worrying about the best next step, a heuristic like &amp;quot;start by adding the item which has the fewest overlaps with other items&amp;quot; can get close enough. In this case, that&#039;d be a pokemon whose names contain a phoneme or phonemes that are shared least by the other pokemons&#039; names in the set.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Persian &lt;code&gt;pɝʒən&lt;/code&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Persian is the only gen one pokemon with the &lt;code&gt;ʒ&lt;/code&gt; sound. This means that Persian must be included in every gen 1 phonetic pangram. It also means that &lt;code&gt;p&lt;/code&gt;,&lt;code&gt;ɝ&lt;/code&gt;,&lt;code&gt;ə&lt;/code&gt;, and &lt;code&gt;n&lt;/code&gt; get covered automatically.&lt;/p&gt;
&lt;p&gt;For all other &amp;quot;least common remaining phonemes&amp;quot;, there would be more than one pokemon which contained that phoneme in its name. For instance:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Vulpix &lt;code&gt;vʊlpɪks&lt;/code&gt;, Bulbasaur &lt;code&gt;bʊlbəsɑɹ&lt;/code&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;Blastoise &lt;code&gt;blæstɔɪs&lt;/code&gt;, Cloyster &lt;code&gt;klɔɪstɚ&lt;/code&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Which of the pokemon names in these pairs is better to add? Is it better to add a pokemon from the first pair or the second one? For this greedy approximation, I went with &amp;quot;the one from the first-looked-at-phoneme that will cause the most phonemes to be added to the covering set, or go with the last pokemon if there&#039;s a tie.&amp;quot; In this case, that&#039;s &lt;code&gt;Bulbasaur&lt;/code&gt; because &lt;code&gt;b ʊ l ə s ɑ ɹ&lt;/code&gt; is seven more phonemes covered, as compared with &lt;code&gt;v ʊ l ɪ k s&lt;/code&gt; the six from &lt;code&gt;Vulpix&lt;/code&gt; when you account for &lt;code&gt;p&lt;/code&gt; already being covered by &lt;code&gt;Persian&lt;/code&gt;. From here it&#039;s possible to continue and get an answer, but remember that that&#039;s still a heuristic (good enough) approximation rather than a provably best answer.&lt;/p&gt;
&lt;p&gt;From here, there was a bunch of trial and error to discover and fix the points mentioned in the data cleanup. Originally, the next to choose from was Nidoran♀ because it contained an empty space &lt;code&gt; &lt;/code&gt;&lt;sup class=&quot;footnote-ref&quot;&gt;&lt;a href=&quot;#fn6&quot; id=&quot;fnref6&quot;&gt;[6]&lt;/a&gt;&lt;/sup&gt;. Next, every answer included Victreebel because it was the only one containing &lt;code&gt;/r/&lt;/code&gt;. Then, every answer contained Omanyte or Arcanine because they contained &lt;code&gt;ɑɪ&lt;/code&gt; instead of &lt;code&gt;aɪ&lt;/code&gt;. This continued for a while.&lt;/p&gt;
&lt;p&gt;After working through cleaning up all of these edge cases, there was finally a reasonable approximate answer:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-csv&quot;&gt;Persian 
Bulbasaur
Blastoise
Meowth
Sandshrew
Hypno
Exeggcute
Koffing
Squirtle
Ivysaur
Charmander
Pidgey
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;These 12 pokemon names looked to form a nice phonetic pangram. But could the same be achieved with 11? 10?&lt;/p&gt;
&lt;h3&gt;Minmaxing with Recursion™&lt;/h3&gt;
&lt;p&gt;I noticed while writing the greedy heuristic algorithm that one aspect (number of pokemon names which contain this next phoneme)was minimized while another aspect (the number of phonemes that would get added to the covering set) was maximized. By thinking of these steps as a two-player game, it&#039;s possible to reframe this problem as a version of &lt;a href=&quot;https://en.wikipedia.org/wiki/Minimax&quot;&gt;Minimax&lt;/a&gt;. Similar to how humans and computers &amp;quot;think ahead&amp;quot; a number of moves in a game like chess, perhaps the best move (pokemon to choose) at a given step could be dependent on thinking X-many moves ahead?&lt;/p&gt;
&lt;p&gt;I wrote a recursive algorithm in Typescript for solving this problem. If there were no phonemes that still needed to be added to the set, then the program could stop and return the solution. A given solution could be rated by its number of pokemon names. The best solution would be one that minimized the number of pokemon, which could be filtered for after exploring all of the possible solutions.&lt;/p&gt;
&lt;h3&gt;Searching without Recursion™&lt;/h3&gt;
&lt;p&gt;Javascript, which Typescript runs under the hood, has a max number of times that a recursive function can call itself (i.e. &amp;quot;max depth&amp;quot;) of 10 times. I immediately ran into this limit. I should have known better when I selected this language for writing the algorithm in the first place, but I forgot. There are ways around the max depth restriction, but I find it&#039;s always good practice for code maintainability to unwind the recursion. Generally recursion asks the person reading the code to maintain the state of the program in their head, whereas other approaches can make that state much clearer and easier to inspect when things go wrong.&lt;/p&gt;
&lt;p&gt;I rewrote the algorithm to be more like searching an N-dimensional grid, where each pokemon chosen was like a new direction through a maze, and the set of pokemon names at the end was like the path taken to get to the finish. The goal was to minimize the path length, and at each step along the way, I kept track of &amp;quot;the path so far&amp;quot; for every possible &amp;quot;next step to take&amp;quot;. As I got to a branching point in the maze, I just added each of the &amp;quot;potential next steps to take&amp;quot; to a list. When the list was empty, I knew that all possible paths had been exhausted.&lt;/p&gt;
&lt;p&gt;This time, when I ran the program, it didn&#039;t immediately error out. In fact, it didn&#039;t do much of anything for a very long time, and I got bored.&lt;/p&gt;
&lt;h3&gt;Speeding up the search with pruning&lt;/h3&gt;
&lt;p&gt;Given that the greedy heuristic solution found a way through the &amp;quot;maze&amp;quot; in 12 steps, I knew that I could get rid of any potential next step that would be greater than or equal to 12 steps long. This is sort of like a simple version of &lt;a href=&quot;https://en.wikipedia.org/wiki/Alpha%E2%80%93beta_pruning&quot;&gt;alpha-beta pruning&lt;/a&gt;, in that I was pruning out solutions that were known to be worse than the greedy approximation solution of 12. This optimization may have helped, but not enough for me to notice.&lt;/p&gt;
&lt;p&gt;Next, I tried to keep the list ordered by how long the path had been so far. This helped avoid looking at bad solutions before good ones, but I found that the program still took a very long time.&lt;/p&gt;
&lt;p&gt;When I looked at what was happening step by step towards the beginning of the search, I noticed that there were ways for the same list of pokemon to show up in a solution, just in a different order. Going back to the greedy algorithm example from before:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Vulpix &lt;code&gt;vʊlpɪks&lt;/code&gt;, Bulbasaur &lt;code&gt;bʊlbəsɑɹ&lt;/code&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;Blastoise &lt;code&gt;blæstɔɪs&lt;/code&gt;, Cloyster &lt;code&gt;klɔɪstɚ&lt;/code&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;In exploring each of these possibilities, there would be one that would look like &lt;code&gt;Persian, Vulpix, Blastoise&lt;/code&gt; and another that would look like &lt;code&gt;Persian, Blastoise, Vulpix&lt;/code&gt;. These two states are equivalent in terms of how much they cover the set of phonemes, but the paths to get to each were different-looking enough that my code was treating them as independent solutions.&lt;/p&gt;
&lt;p&gt;I decided to make an in-memory cache that would tell me whether I had &amp;quot;been to this part of the maze&amp;quot; before. All I had to do was name each spot in the maze in a way that would give the same name every time I asked for the same spot. For instance, the first spot in the maze could be called &lt;code&gt;Persian&lt;/code&gt; since the algorithm only had one choice. Then when I added new names, I could sort them all alphabetically, and then join them together into a single name like &lt;code&gt;Persian|Vulpix&lt;/code&gt; or &lt;code&gt;Blastoise|Persian|Vulpix&lt;/code&gt;. By storing each place name I had already been, I could avoid accidentally back-tracking through parts of the maze. This greatly sped up how long the search took to solve.&lt;/p&gt;
&lt;h3&gt;The final results&lt;/h3&gt;
&lt;p&gt;After running and re-running to find the best solutions, these were the solutions I found. Note that Persian, Blastoise, and Vulpix are in all of them:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;Persian
Blastoise
Vulpix
Growlithe
Shellder
Hitmonchan
Ninetales
Cubone
Jigglypuff
Weezing
&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;Persian
Blastoise
Vulpix
Growlithe
Shellder
Hitmonchan
Ninetales
Cubone
Jynx
Wigglytuff
&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;Persian
Blastoise
Vulpix
Growlithe
Shellder
Hitmonchan
Primeape
Cubone
Jigglypuff
Weezing
&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;Persian
Blastoise
Vulpix
Growlithe
Shellder
Rhyhorn
Clefable
Charmeleon
Geodude
Weezing
&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;Persian
Blastoise
Vulpix
Growlithe
Oddish
Clefable
Rhyhorn
Charmeleon
Geodude
Weezing
&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;Persian
Blastoise
Vulpix
Growlithe
Sandshrew
Rhyhorn
Clefable
Charmeleon
Geodude
Weezing
&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;Persian
Blastoise
Vulpix
Growlithe
Sandshrew
Rhyhorn
Clefable
Charmeleon
Pidgeotto
Weezing
&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;Persian
Blastoise
Vulpix
Growlithe
Rapidash
Rhyhorn
Clefable
Charmeleon
Geodude
Weezing
&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;Persian
Blastoise
Vulpix
Growlithe
Sandslash
Rhyhorn
Clefable
Charmeleon
Geodude
Weezing
&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code&gt;Persian
Blastoise
Vulpix
Meowth
Shellder
Hitmonchan
Primeape
Cubone
Jigglypuff
Weezing
&lt;/code&gt;&lt;/pre&gt;
&lt;h3&gt;Conclusion&lt;/h3&gt;
&lt;p&gt;While writing this post, I had to go back through and double check everything. After all, who would ever want to be wrong on the internet?&lt;/p&gt;
&lt;p&gt;I took one of the sets of phonemes from these final results and checked each phoneme against the list at the beginning. There was one missing. Apparently, throughout my process cleaning, running, readjusting, etc I had thought that there were 38 phonemes present, but it was just an errant &lt;code&gt;ˌ&lt;/code&gt; in &lt;code&gt;/ˌpɪdʒiːˈoʊɾoʊ/&lt;/code&gt; and a few others that had caused the number to look right when it wasn&#039;t. Upon cleaning that final non-phoneme up, my solutions all read 37. The missing phoneme throughout all of this has been &lt;code&gt;ð&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Sure, there&#039;s some &lt;a href=&quot;https://en.wikipedia.org/wiki/Sunk_cost&quot;&gt;sunk cost&lt;/a&gt; aspect to have written all of this only to have the answers to:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&amp;quot;Is it possible to make a phonetic pangram from pokemon names?&amp;quot; and more specifically, &amp;quot;Can we do so using only the 151 from the first generation of pokemon?&amp;quot;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;be &amp;quot;no.&amp;quot; I double-checked that I hadn&#039;t missed any pronunciations. Was Growlithe maybe actually pronounced like &amp;quot;tithe&amp;quot;? No, it definitely used &lt;code&gt;θ&lt;/code&gt; in the pronunciation guide.&lt;/p&gt;
&lt;p&gt;Ok, so the above solutions are sufficient for 37/38 phonemes, which seems like as good as could be done for gen 1. What generation of pokemon does &lt;code&gt;ð&lt;/code&gt; first show up in? According to the same dataset I got these gen 1 pronunciations from, it wasn&#039;t until &lt;a href=&quot;https://antifandom.com/pokemonlp/wiki/Pok%C3%A9mon_Pronunciation_Guide/Generation_IX&quot;&gt;Gen IX&lt;/a&gt; that there finally was a pokemon whose english pronunciation contained &lt;code&gt;ð&lt;/code&gt;. It was &lt;a href=&quot;https://bulbapedia.bulbagarden.net/wiki/Slither_Wing_(Pok%C3%A9mon)&quot;&gt;Slither Wing&lt;/a&gt;. The only other pokemon to ever have &lt;code&gt;ithe&lt;/code&gt; in its name was Growlithe.&lt;/p&gt;
&lt;p&gt;To get a phonetic pangram with pokemon, it&#039;s possible to add Slither Wing to any of the above solutions and have 11 names cover it. I&#039;ll postpone looking into phonetic pangrams across all gens for &lt;a href=&quot;/s/a-blog/035-pokemon-phonetic-pangram&quot;&gt;a future post&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;As for gen 1 specifically, maybe I&#039;ll try to start saying Growlithe with a &lt;code&gt;ð&lt;/code&gt; from now on, and say it&#039;s 11 pokemon for gen 1 to make a phonetic pangram. You might say &amp;quot;but if Growlithe uses &lt;code&gt;ð&lt;/code&gt;, then how will you get the &lt;code&gt;θ&lt;/code&gt; you previously used it to cover?&amp;quot; and I would reply simply:&lt;/p&gt;
&lt;p&gt;Meowth &lt;code&gt;/miːˈaʊθ/&lt;/code&gt;, that&#039;s right.&lt;/p&gt;
&lt;hr class=&quot;footnotes-sep&quot;&gt;
&lt;section class=&quot;footnotes&quot;&gt;
&lt;ol class=&quot;footnotes-list&quot;&gt;
&lt;li id=&quot;fn1&quot; class=&quot;footnote-item&quot;&gt;&lt;p&gt;Note that while my previous pangrams included the &lt;code&gt;/x/&lt;/code&gt; sound of &amp;quot;loch&amp;quot; and &amp;quot;chutzpah&amp;quot;, this is a rare and often excluded phoneme for General American English. I included it in those because it was a fun constraint to work around, but I&#039;m ignoring it here because no pokemon in any gen have that sound at all, and it&#039;d be a kind of boring exercise. &lt;a href=&quot;#fnref1&quot; class=&quot;footnote-backref&quot;&gt;↩︎&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&quot;fn2&quot; class=&quot;footnote-item&quot;&gt;&lt;p&gt;This is the rolled r trill that gets used in Spanish and Scottish English, among other places. &lt;a href=&quot;#fnref2&quot; class=&quot;footnote-backref&quot;&gt;↩︎&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&quot;fn3&quot; class=&quot;footnote-item&quot;&gt;&lt;p&gt;Gen 1 didn&#039;t have the concept of pokemon gender outside of these two names. Gen 2 added gender for every pokemon, but never consolidated Nidoran into a single entry for legacy pokedex numbering reasons. The anime includes &lt;a href=&quot;https://youtu.be/EJHqzKQ3guQ&quot;&gt;a pokedex entry that does say the gender&lt;/a&gt; but also includes &lt;a href=&quot;https://youtu.be/xMk8wuw7nek&quot;&gt;the pokerap, which does not say the gender&lt;/a&gt;. Human characters in the anime tend not to say the gender, and I imagine this would be the case in real life too: you wouldn&#039;t say the gender unless specifically asked or unless you had to disambiguate. &lt;a href=&quot;#fnref3&quot; class=&quot;footnote-backref&quot;&gt;↩︎&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&quot;fn4&quot; class=&quot;footnote-item&quot;&gt;&lt;p&gt;You may remember this as &lt;a href=&quot;/s/a-blog/001-wizard-sokoban&quot;&gt;Wizard Sokoban&lt;/a&gt; prior to the name change last year. &lt;a href=&quot;#fnref4&quot; class=&quot;footnote-backref&quot;&gt;↩︎&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&quot;fn5&quot; class=&quot;footnote-item&quot;&gt;&lt;p&gt;Silver-bordered in that game means &amp;quot;don&#039;t take this too seriously&amp;quot; and tends to involve meta-mechanics and humor. &lt;a href=&quot;#fnref5&quot; class=&quot;footnote-backref&quot;&gt;↩︎&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id=&quot;fn6&quot; class=&quot;footnote-item&quot;&gt;&lt;p&gt;A space character in the pronunciation was treated as a distinct phoneme, and then &lt;code&gt;/ˈniːdoʊɹæn (ˈfiːmeɪl)/&lt;/code&gt; added a bunch more phonemes to the set, so it was always selected &lt;a href=&quot;#fnref6&quot; class=&quot;footnote-backref&quot;&gt;↩︎&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/section&gt;

          </content>
        </entry>
      

        <entry>
          <title>How my friend and I became Lords of Oblivion</title>
          <link href="https://graham.build/s/a-blog/005-how-my-friend-and-i-became-lords/" />
          <id>https://graham.build/s/a-blog/005-how-my-friend-and-i-became-lords/</id>
          <published>2024-10-11T10:00:00.000Z</published>
          <updated>2022-09-04T07:36:15.000Z</updated>
          <category>video games</category>
<category>elder scrolls</category>
<category>glitches</category>
<category>longposts</category>
          <content type="html">
            &lt;p&gt;The Elder Scrolls IV: Oblivion came out for the Xbox 360 on March 20, 2006 -- almost two decades ago. It launched during an era when there weren&#039;t really game wikis to google, which meant that most of the bugs and strange discoveries in the game for me came from word of mouth in my social circle.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/post-assets/005-how-my-friend-and-i-became-lords/View_Frostcrag_Spire.webp&quot; alt=&quot;A view of Frostcrag spire from above, pulled from the Oblivion wiki&quot;&gt;&lt;/p&gt;
&lt;p&gt;Beyond the more widely-known &amp;quot;horse-armor&amp;quot; DLC launched in April of 2006, there was a number of other DLC items. The only relevant one to this story was the Frostcrag Spire quest for the &amp;quot;Wizard&#039;s Tower&amp;quot;. I did not buy it, but my friend did and we would regularly hang out. We found that if my friend logged in while he was at my house, then I was able to download and play the DLC on my console. However, either because of limitation in the storage of our hard-drives or because you could only associate your Xbox Live account with so many Xbox 360s at once, we got into this mess where I kept having to re-download the DLC every time he visited if I wanted to play it.&lt;/p&gt;
&lt;p&gt;This went on for a few weeks until one of us accidentally tried to load a save from inside the DLC even though it was not downloaded. What we found was likely not supposed to be accessible except for the developers of the game.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/post-assets/005-how-my-friend-and-i-became-lords/test_village.jpg&quot; alt=&quot;Oblivion developer test village featuring some houses in a circle and some flat texture-less ground that comes to an abrupt end well before the skybox&quot;&gt;&lt;/p&gt;
&lt;p&gt;This demo area existed outside of the bounds of the main game, and the underlying method for how we got to it seemed to be exploiting a memory pointer. Our best guess was that the DLC overwrote some &amp;quot;unused&amp;quot; (aka only used for developer testing) memory when it was installed, so removing it points the save state at that memory location.&lt;/p&gt;
&lt;p&gt;I was spurred to undergo all of this work to reproduce the glitch because of a combination of wanting to port over the summarized version of this story from Twitter and from a Steam sale where Oblivion with all the DLC was bundled for $6. After making my way through the tutorial and going directly towards the DLC objective indicator, I summited some nearby mountains and entered the tower.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/post-assets/005-how-my-friend-and-i-became-lords/frostcrag_spire_interior.jpg&quot; alt=&quot;Picture of the interior of Frostcrag Spire, where a giant hand made of ice is coming out of the floor in front of a tall doorway into the inner sanctum&quot;&gt;&lt;/p&gt;
&lt;p&gt;Once I saw the ice hand on the floor, my memories of this glitch came flooding back to me. This was the room in which we first found the glitch. I saved, exited the game, and then restarted -- this time making sure to uncheck the tower DLC on startup so that it wouldn&#039;t be loaded. I ignored the warning that my save was loading from a version of the game that had different content from the one I had running.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/post-assets/005-how-my-friend-and-i-became-lords/uncheck_frostcrag.png&quot; alt=&quot;Settings screen for Oblivion on PC where there are options to check or uncheck various DLC bundles&quot;&gt;&lt;/p&gt;
&lt;p&gt;My character loaded into a black zone outside of a house looking in through one-way walls. It was impossible to travel through these walls by default, but by carefully jumping around the edges of the house, the front door became accessible, and it happened to be functional even through the invisible wall. This door led to the outside of the house, labeled &amp;quot;Wilderness&amp;quot;, which was the village screenshot from before.&lt;/p&gt;
&lt;p&gt;The village contained a number of empty houses that could not be entered -- they each had a &amp;quot;Door&amp;quot; that did not budge when interacted with. There were also a few houses which had functional doors labeled things like &amp;quot;Wooden Door to Bruma House Test&amp;quot; and &amp;quot;Wooden Door to TesterHouseBrumaMid&amp;quot;.&lt;/p&gt;
&lt;p&gt;While all of the exteriors of the houses matched those of homes and buildings in Bruma, there was one house whose insides did not match the exterior at all. Upon entering, it looked almost pitch black. Picking khajiit for this verification run wound up being a good choice because of access to night vision at level 1.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/post-assets/005-how-my-friend-and-i-became-lords/oblivion_gate_interior.jpg&quot; alt=&quot;The interior room of the end of an Oblivion Gate with a sigil stone suspended in midair two stories above. All of this picture has a blue hue to it because of Night Vision&quot;&gt;&lt;/p&gt;
&lt;p&gt;With night vision active, it was clear that the interior of this house was the final room of an Oblivion Gate. Following the ramps up to the top, a sigil stone sat just out of reach. If you have not played Oblivion in 16+ years, you can &lt;a href=&quot;https://en.uesp.net/wiki/Oblivion:Sigil_Stone&quot;&gt;read up on what a sigil stone is here&lt;/a&gt;. The important parts to note for this are:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Sigil stones were extremely rare with only 70 total in the entire game.&lt;/li&gt;
&lt;li&gt;Sigil stones could be used to enchant armor and weapons with magical effects that were randomly selected from a set of possible options upon collection.&lt;/li&gt;
&lt;li&gt;For what seemed like balancing purposes, the strength of the magical effects from the sigil stones were dependent on the level of the character collecting them at collection time. At level 3, this meant they were &amp;quot;Descendent Sigil Stones&amp;quot; (the weakest), while my friend and I originally found this glitch as characters that were at least level 13, which meant &amp;quot;Ascendent Sigil Stones&amp;quot;.
Interacting with the stone at the top added the sigil stone into the inventory and the only exit was through the floating wooden door that also served as the entrance two floors below.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Trying to get this sigil stone at level 3 proved difficult. Despite a few ranks up in the acrobatics skill, falling from this height was an instant death upon impact due to fall damage. I spent a few minutes wedged under the ramp to the sigil stone platform so that I could jump repeatedly in rapid succession. These ranks allowed me to level up, so I could increase my endurance, which would increase my health and help me live through a fall. I went back to the other Bruma houses and one of them had a bed I could sleep in to level up. Between the health increase from endurance going up and the higher and longer jumps from acrobatics going up, it was finally possible to jump across the gap and land only one level below, immediately pause and heal, and then drop again to land directly next to the door.&lt;/p&gt;
&lt;p&gt;This house wasn&#039;t just a test to refine the design of an Oblivion Gate final room. It also may have been a way to practice generating all of the different sigil stone types and potentially load testing as well. Being able to access the door was an essential part of this because part of grabbing the sigil stone was that it effectively became impossible to move after about a second or two of game-time.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/post-assets/005-how-my-friend-and-i-became-lords/sigil_stones_in_inventory.jpg&quot; alt=&quot;The inventory now that sigil stones have begun spawning rapidly inside the inventory pocket. Each of a dozen of the stones has about 100 quantity, which has led to carrying 2955/200 pounds of items&quot;&gt;&lt;/p&gt;
&lt;p&gt;It has been impossible for me to ever play an Elder Scrolls Game without having to deal with becoming over-encumbered. 16+ years ago, my friend and I learned that we could make our way through doors while over-encumbered. And it turned out that exiting the room back into the Wilderness would stop the sigil stones from replicating in the inventory. At this point, in the Xbox 360 version, removing sigil stones from the player&#039;s inventory would drop individual orbs one by one. Unpausing after removing all the excess sigil stones from the inventory would lead to the game freezing up or crashing on that console from having to render the collision physics of all of those great many orbs. On PC, they were dropped in large-quantity bunches. Either way, dropping sigil stones was required, and we could drop just about all types of them.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/post-assets/005-how-my-friend-and-i-became-lords/chameleon_armor_full.jpg&quot; alt=&quot;My character wearing four pieces of armor, each enchanted with a sigil stone to provide chameleon&quot;&gt;&lt;/p&gt;
&lt;p&gt;The most important sigil stone for us the one that provided chameleon on self. chameleon was a form of &amp;quot;soft invisibility&amp;quot; that usually rendered a user less-than-fully invisible. However, in a crucial difference from the invisibility spell, chameleon would not dispel after making an attack or doing an action. At the &amp;quot;ascendant&amp;quot; strength for a level 13+ character, these sigil stones would have magic effects of 25% chameleon per piece of clothing enchanted. This meant that with only 4/5 pieces of armor enchanted, we could get passive 100% chameleon. No one could see us no matter how many items we stole or people we attacked.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/post-assets/005-how-my-friend-and-i-became-lords/fast_travel_to_bravil.jpg&quot; alt=&quot;Overworld map showing that I could fast travel to Bravil&quot;&gt;&lt;/p&gt;
&lt;p&gt;After no longer being over-encumbered, it was possible to fast travel out to any other city, which returned the game memory to the regular range in case any of the DLC areas continued to be important to access.&lt;/p&gt;
&lt;p&gt;From here on, hardly any characters in the game would interact with us without trying to speak to them first. Finally, we had transcended combat or laws. We had become Lords.&lt;/p&gt;

          </content>
        </entry>
      
    </feed>
  