<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>The History of History Engineering (HE-X) on Alex's blog</title><link>https://mihnev.com/series/the-history-of-history-engineering-he-x/</link><description>Recent content in The History of History Engineering (HE-X) on Alex's blog</description><generator>Hugo</generator><language>en</language><lastBuildDate>Mon, 15 Jun 2026 00:00:00 -0500</lastBuildDate><atom:link href="https://mihnev.com/series/the-history-of-history-engineering-he-x/index.xml" rel="self" type="application/rss+xml"/><item><title>HE-3: The pastaverse and parallel timelines</title><link>https://mihnev.com/posts/he3/</link><pubDate>Mon, 15 Jun 2026 00:00:00 -0500</pubDate><dc:creator>Alex Mihnev</dc:creator><guid>https://mihnev.com/posts/he3/</guid><description>&lt;h1 id="the-spaghetti-model"&gt;The spaghetti model&lt;/h1&gt;
&lt;p&gt;Our protagonists had the idea for a time traveler&amp;rsquo;s scheduler locked in so we could remove some of the scaffolding used to get there. Since the brain had a strong interest in cinema, this presented an excellent opportunity to distill decades of wild fiction into stuff which actually tracks.&lt;/p&gt;

&lt;style&gt;
.sms-wrap {
 margin: 1.5rem 0;
 border-left: 3px solid #00a884;
 border-right: 3px solid #00a884;
 border-radius: 4px;
 overflow: hidden;
 font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
 font-size: 0.9rem;
}
.sms-header {
 display: flex;
 align-items: center;
 padding: 0.55rem 0.85rem;
 background: rgba(0, 168, 132, 0.1);
 gap: 0.5rem;
 border-bottom: 1px solid rgba(0, 168, 132, 0.2);
}
.sms-header-left {
 display: flex;
 align-items: center;
 gap: 0.4rem;
 flex-shrink: 0;
}
.sms-header-left svg { width: 0.9rem; height: 0.9rem; stroke: #00a884; }
.sms-callout-label {
 font-size: 0.75rem;
 font-weight: 700;
 text-transform: uppercase;
 letter-spacing: 0.06em;
 color: #00a884;
}
.sms-header-center {
 display: flex;
 align-items: center;
 gap: 0.5rem;
 flex: 1;
 justify-content: center;
}
.sms-avatar {
 width: 1.75rem;
 height: 1.75rem;
 border-radius: 50%;
 background: #00a884;
 color: #fff;
 display: flex;
 align-items: center;
 justify-content: center;
 font-weight: 700;
 font-size: 0.8rem;
 flex-shrink: 0;
 overflow: hidden;
}
.sms-avatar img { width: 100%; height: 100%; object-fit: cover; border-radius: 50%; }
.sms-contact-name { font-weight: 600; font-size: 0.88rem; color: #e9edef; }
.sms-header-icons { display: flex; gap: 0.85rem; align-items: center; flex-shrink: 0; }
.sms-header-icons svg { width: 1rem; height: 1rem; stroke: #aebac1; }
.sms-thread &gt; *:not(.sms-bubble):not(.sms-typing):not(.sms-typing-label) { text-align: center; align-self: center; }
.sms-thread {
 display: flex;
 flex-direction: column;
 gap: 0.5rem;
 padding: 1.25rem;
 position: relative;
 background-color: #0b141a;
 background-image:
 radial-gradient(circle at 1px 1px, rgba(255,255,255,0.03) 1px, transparent 0),
 linear-gradient(135deg, rgba(0,168,132,0.03) 25%, transparent 25%),
 linear-gradient(225deg, rgba(0,168,132,0.03) 25%, transparent 25%),
 linear-gradient(315deg, rgba(0,168,132,0.03) 25%, transparent 25%),
 linear-gradient(45deg, rgba(0,168,132,0.03) 25%, transparent 25%);
 background-size: 20px 20px, 40px 40px, 40px 40px, 40px 40px, 40px 40px;
}
.sms-bubble {
 max-width: 70%;
 padding: 0.5rem 0.75rem 0.4rem 0.75rem;
 border-radius: 7.5px;
 line-height: 1.4;
 word-break: break-word;
 position: relative;
}
.sms-bubble p { margin: 0; }
.sms-me {
 align-self: flex-end;
 background: #005c4b;
 color: #e9edef;
 border-top-right-radius: 0;
}
.sms-me::before {
 content: "";
 position: absolute;
 top: 0; right: -8px;
 width: 8px; height: 8px;
 background: #005c4b !important;
 clip-path: polygon(0 0, 0 100%, 100% 0) !important;
 border: none !important;
}
.sms-them {
 align-self: flex-start;
 background: #202c33;
 color: #e9edef;
 border-top-left-radius: 0;
}
.sms-them::before {
 content: "";
 position: absolute;
 top: 0; left: -8px;
 width: 8px; height: 8px;
 background: #202c33 !important;
 clip-path: polygon(100% 0, 0 0, 100% 100%) !important;
 border: none !important;
}
.sms-thought {
 background: #1a2530 !important;
 color: #aebac1 !important;
 font-style: italic;
 border-radius: 7.5px !important;
 opacity: 0.85;
}
.sms-thought::before { display: none !important; }
.sms-bubble figure { margin: 0.25rem 0; padding: 0; }
.sms-bubble figure img { max-width: 100%; border-radius: 6px; display: block; }
.sms-bubble figcaption { font-size: 0.78rem; opacity: 0.7; margin-top: 0.25rem; }
.sms-tick { display: inline-block; font-size: 0.7rem; opacity: 0.7; float: right; margin-left: 0.5rem; margin-top: 0.2rem; }
.sms-tick-fail { display: inline-block; font-size: 0.7rem; color: #f87171; float: right; margin-left: 0.5rem; margin-top: 0.2rem; }
.sms-input-bar {
 display: flex;
 align-items: center;
 gap: 0.5rem;
 padding: 0.6rem 0.85rem;
 background: #202c33;
 border-top: 1px solid #2a3942;
}
.sms-input-bar input {
 flex: 1;
 background: #2a3942;
 border: none;
 border-radius: 20px;
 padding: 0.45rem 0.9rem;
 color: #e9edef;
 font-size: 0.88rem;
 outline: none;
 font-family: inherit;
}
.sms-input-bar input::placeholder { color: #8696a0; }
.sms-send-btn {
 background: #00a884;
 border: none;
 border-radius: 50%;
 width: 2rem;
 height: 2rem;
 display: flex;
 align-items: center;
 justify-content: center;
 cursor: pointer;
 flex-shrink: 0;
 padding: 0;
}
.sms-send-btn svg { width: 1rem; height: 1rem; stroke: #fff; }
&lt;/style&gt;
&lt;div class="sms-wrap"&gt;
 
 &lt;span class="sms-contact-name" style="display:none" aria-hidden="true"&gt;My Brain&lt;/span&gt;
 &lt;div class="sms-thread" id="sms-thread-1781577212171457816"&gt;&lt;style&gt;
.sms-wrap {
 margin: 1.5rem 0;
 border-left: 3px solid #00a884;
 border-right: 3px solid #00a884;
 border-radius: 4px;
 overflow: hidden;
 font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
 font-size: 0.9rem;
}
.sms-header {
 display: flex;
 align-items: center;
 padding: 0.55rem 0.85rem;
 background: rgba(0, 168, 132, 0.1);
 gap: 0.5rem;
 border-bottom: 1px solid rgba(0, 168, 132, 0.2);
}
.sms-header-left {
 display: flex;
 align-items: center;
 gap: 0.4rem;
 flex-shrink: 0;
}
.sms-header-left svg { width: 0.9rem; height: 0.9rem; stroke: #00a884; }
.sms-callout-label {
 font-size: 0.75rem;
 font-weight: 700;
 text-transform: uppercase;
 letter-spacing: 0.06em;
 color: #00a884;
}
.sms-header-center {
 display: flex;
 align-items: center;
 gap: 0.5rem;
 flex: 1;
 justify-content: center;
}
.sms-avatar {
 width: 1.75rem;
 height: 1.75rem;
 border-radius: 50%;
 background: #00a884;
 color: #fff;
 display: flex;
 align-items: center;
 justify-content: center;
 font-weight: 700;
 font-size: 0.8rem;
 flex-shrink: 0;
 overflow: hidden;
}
.sms-avatar img { width: 100%; height: 100%; object-fit: cover; border-radius: 50%; }
.sms-contact-name { font-weight: 600; font-size: 0.88rem; color: #e9edef; }
.sms-header-icons { display: flex; gap: 0.85rem; align-items: center; flex-shrink: 0; }
.sms-header-icons svg { width: 1rem; height: 1rem; stroke: #aebac1; }
.sms-thread &gt; *:not(.sms-bubble):not(.sms-typing):not(.sms-typing-label) { text-align: center; align-self: center; }
.sms-thread {
 display: flex;
 flex-direction: column;
 gap: 0.5rem;
 padding: 1.25rem;
 position: relative;
 background-color: #0b141a;
 background-image:
 radial-gradient(circle at 1px 1px, rgba(255,255,255,0.03) 1px, transparent 0),
 linear-gradient(135deg, rgba(0,168,132,0.03) 25%, transparent 25%),
 linear-gradient(225deg, rgba(0,168,132,0.03) 25%, transparent 25%),
 linear-gradient(315deg, rgba(0,168,132,0.03) 25%, transparent 25%),
 linear-gradient(45deg, rgba(0,168,132,0.03) 25%, transparent 25%);
 background-size: 20px 20px, 40px 40px, 40px 40px, 40px 40px, 40px 40px;
}
.sms-bubble {
 max-width: 70%;
 padding: 0.5rem 0.75rem 0.4rem 0.75rem;
 border-radius: 7.5px;
 line-height: 1.4;
 word-break: break-word;
 position: relative;
}
.sms-bubble p { margin: 0; }
.sms-me {
 align-self: flex-end;
 background: #005c4b;
 color: #e9edef;
 border-top-right-radius: 0;
}
.sms-me::before {
 content: "";
 position: absolute;
 top: 0; right: -8px;
 width: 8px; height: 8px;
 background: #005c4b !important;
 clip-path: polygon(0 0, 0 100%, 100% 0) !important;
 border: none !important;
}
.sms-them {
 align-self: flex-start;
 background: #202c33;
 color: #e9edef;
 border-top-left-radius: 0;
}
.sms-them::before {
 content: "";
 position: absolute;
 top: 0; left: -8px;
 width: 8px; height: 8px;
 background: #202c33 !important;
 clip-path: polygon(100% 0, 0 0, 100% 100%) !important;
 border: none !important;
}
.sms-thought {
 background: #1a2530 !important;
 color: #aebac1 !important;
 font-style: italic;
 border-radius: 7.5px !important;
 opacity: 0.85;
}
.sms-thought::before { display: none !important; }
.sms-bubble figure { margin: 0.25rem 0; padding: 0; }
.sms-bubble figure img { max-width: 100%; border-radius: 6px; display: block; }
.sms-bubble figcaption { font-size: 0.78rem; opacity: 0.7; margin-top: 0.25rem; }
.sms-tick { display: inline-block; font-size: 0.7rem; opacity: 0.7; float: right; margin-left: 0.5rem; margin-top: 0.2rem; }
.sms-tick-fail { display: inline-block; font-size: 0.7rem; color: #f87171; float: right; margin-left: 0.5rem; margin-top: 0.2rem; }
.sms-input-bar {
 display: flex;
 align-items: center;
 gap: 0.5rem;
 padding: 0.6rem 0.85rem;
 background: #202c33;
 border-top: 1px solid #2a3942;
}
.sms-input-bar input {
 flex: 1;
 background: #2a3942;
 border: none;
 border-radius: 20px;
 padding: 0.45rem 0.9rem;
 color: #e9edef;
 font-size: 0.88rem;
 outline: none;
 font-family: inherit;
}
.sms-input-bar input::placeholder { color: #8696a0; }
.sms-send-btn {
 background: #00a884;
 border: none;
 border-radius: 50%;
 width: 2rem;
 height: 2rem;
 display: flex;
 align-items: center;
 justify-content: center;
 cursor: pointer;
 flex-shrink: 0;
 padding: 0;
}
.sms-send-btn svg { width: 1rem; height: 1rem; stroke: #fff; }
&lt;/style&gt;
&lt;div class="sms-bubble sms-them"&gt;I don&amp;rsquo;t hate this as much as I thought. Only somewhat.&lt;/div&gt;
&lt;style&gt;
.sms-wrap {
 margin: 1.5rem 0;
 border-left: 3px solid #00a884;
 border-right: 3px solid #00a884;
 border-radius: 4px;
 overflow: hidden;
 font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
 font-size: 0.9rem;
}
.sms-header {
 display: flex;
 align-items: center;
 padding: 0.55rem 0.85rem;
 background: rgba(0, 168, 132, 0.1);
 gap: 0.5rem;
 border-bottom: 1px solid rgba(0, 168, 132, 0.2);
}
.sms-header-left {
 display: flex;
 align-items: center;
 gap: 0.4rem;
 flex-shrink: 0;
}
.sms-header-left svg { width: 0.9rem; height: 0.9rem; stroke: #00a884; }
.sms-callout-label {
 font-size: 0.75rem;
 font-weight: 700;
 text-transform: uppercase;
 letter-spacing: 0.06em;
 color: #00a884;
}
.sms-header-center {
 display: flex;
 align-items: center;
 gap: 0.5rem;
 flex: 1;
 justify-content: center;
}
.sms-avatar {
 width: 1.75rem;
 height: 1.75rem;
 border-radius: 50%;
 background: #00a884;
 color: #fff;
 display: flex;
 align-items: center;
 justify-content: center;
 font-weight: 700;
 font-size: 0.8rem;
 flex-shrink: 0;
 overflow: hidden;
}
.sms-avatar img { width: 100%; height: 100%; object-fit: cover; border-radius: 50%; }
.sms-contact-name { font-weight: 600; font-size: 0.88rem; color: #e9edef; }
.sms-header-icons { display: flex; gap: 0.85rem; align-items: center; flex-shrink: 0; }
.sms-header-icons svg { width: 1rem; height: 1rem; stroke: #aebac1; }
.sms-thread &gt; *:not(.sms-bubble):not(.sms-typing):not(.sms-typing-label) { text-align: center; align-self: center; }
.sms-thread {
 display: flex;
 flex-direction: column;
 gap: 0.5rem;
 padding: 1.25rem;
 position: relative;
 background-color: #0b141a;
 background-image:
 radial-gradient(circle at 1px 1px, rgba(255,255,255,0.03) 1px, transparent 0),
 linear-gradient(135deg, rgba(0,168,132,0.03) 25%, transparent 25%),
 linear-gradient(225deg, rgba(0,168,132,0.03) 25%, transparent 25%),
 linear-gradient(315deg, rgba(0,168,132,0.03) 25%, transparent 25%),
 linear-gradient(45deg, rgba(0,168,132,0.03) 25%, transparent 25%);
 background-size: 20px 20px, 40px 40px, 40px 40px, 40px 40px, 40px 40px;
}
.sms-bubble {
 max-width: 70%;
 padding: 0.5rem 0.75rem 0.4rem 0.75rem;
 border-radius: 7.5px;
 line-height: 1.4;
 word-break: break-word;
 position: relative;
}
.sms-bubble p { margin: 0; }
.sms-me {
 align-self: flex-end;
 background: #005c4b;
 color: #e9edef;
 border-top-right-radius: 0;
}
.sms-me::before {
 content: "";
 position: absolute;
 top: 0; right: -8px;
 width: 8px; height: 8px;
 background: #005c4b !important;
 clip-path: polygon(0 0, 0 100%, 100% 0) !important;
 border: none !important;
}
.sms-them {
 align-self: flex-start;
 background: #202c33;
 color: #e9edef;
 border-top-left-radius: 0;
}
.sms-them::before {
 content: "";
 position: absolute;
 top: 0; left: -8px;
 width: 8px; height: 8px;
 background: #202c33 !important;
 clip-path: polygon(100% 0, 0 0, 100% 100%) !important;
 border: none !important;
}
.sms-thought {
 background: #1a2530 !important;
 color: #aebac1 !important;
 font-style: italic;
 border-radius: 7.5px !important;
 opacity: 0.85;
}
.sms-thought::before { display: none !important; }
.sms-bubble figure { margin: 0.25rem 0; padding: 0; }
.sms-bubble figure img { max-width: 100%; border-radius: 6px; display: block; }
.sms-bubble figcaption { font-size: 0.78rem; opacity: 0.7; margin-top: 0.25rem; }
.sms-tick { display: inline-block; font-size: 0.7rem; opacity: 0.7; float: right; margin-left: 0.5rem; margin-top: 0.2rem; }
.sms-tick-fail { display: inline-block; font-size: 0.7rem; color: #f87171; float: right; margin-left: 0.5rem; margin-top: 0.2rem; }
.sms-input-bar {
 display: flex;
 align-items: center;
 gap: 0.5rem;
 padding: 0.6rem 0.85rem;
 background: #202c33;
 border-top: 1px solid #2a3942;
}
.sms-input-bar input {
 flex: 1;
 background: #2a3942;
 border: none;
 border-radius: 20px;
 padding: 0.45rem 0.9rem;
 color: #e9edef;
 font-size: 0.88rem;
 outline: none;
 font-family: inherit;
}
.sms-input-bar input::placeholder { color: #8696a0; }
.sms-send-btn {
 background: #00a884;
 border: none;
 border-radius: 50%;
 width: 2rem;
 height: 2rem;
 display: flex;
 align-items: center;
 justify-content: center;
 cursor: pointer;
 flex-shrink: 0;
 padding: 0;
}
.sms-send-btn svg { width: 1rem; height: 1rem; stroke: #fff; }
&lt;/style&gt;
&lt;div class="sms-bubble sms-them"&gt;Okay, let&amp;rsquo;s play along (only so I can shoot it down later). Why would a time traveller need a scheduler? Isn&amp;rsquo;t it irrelevant? Or why wouldn&amp;rsquo;t it &lt;em&gt;have been invented already&lt;/em&gt;, or maybe &lt;em&gt;it will have been&lt;/em&gt; (hehe)? Since we&amp;rsquo;re in a loop anyway&amp;hellip;&lt;/div&gt;
&lt;style&gt;
.sms-wrap {
 margin: 1.5rem 0;
 border-left: 3px solid #00a884;
 border-right: 3px solid #00a884;
 border-radius: 4px;
 overflow: hidden;
 font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
 font-size: 0.9rem;
}
.sms-header {
 display: flex;
 align-items: center;
 padding: 0.55rem 0.85rem;
 background: rgba(0, 168, 132, 0.1);
 gap: 0.5rem;
 border-bottom: 1px solid rgba(0, 168, 132, 0.2);
}
.sms-header-left {
 display: flex;
 align-items: center;
 gap: 0.4rem;
 flex-shrink: 0;
}
.sms-header-left svg { width: 0.9rem; height: 0.9rem; stroke: #00a884; }
.sms-callout-label {
 font-size: 0.75rem;
 font-weight: 700;
 text-transform: uppercase;
 letter-spacing: 0.06em;
 color: #00a884;
}
.sms-header-center {
 display: flex;
 align-items: center;
 gap: 0.5rem;
 flex: 1;
 justify-content: center;
}
.sms-avatar {
 width: 1.75rem;
 height: 1.75rem;
 border-radius: 50%;
 background: #00a884;
 color: #fff;
 display: flex;
 align-items: center;
 justify-content: center;
 font-weight: 700;
 font-size: 0.8rem;
 flex-shrink: 0;
 overflow: hidden;
}
.sms-avatar img { width: 100%; height: 100%; object-fit: cover; border-radius: 50%; }
.sms-contact-name { font-weight: 600; font-size: 0.88rem; color: #e9edef; }
.sms-header-icons { display: flex; gap: 0.85rem; align-items: center; flex-shrink: 0; }
.sms-header-icons svg { width: 1rem; height: 1rem; stroke: #aebac1; }
.sms-thread &gt; *:not(.sms-bubble):not(.sms-typing):not(.sms-typing-label) { text-align: center; align-self: center; }
.sms-thread {
 display: flex;
 flex-direction: column;
 gap: 0.5rem;
 padding: 1.25rem;
 position: relative;
 background-color: #0b141a;
 background-image:
 radial-gradient(circle at 1px 1px, rgba(255,255,255,0.03) 1px, transparent 0),
 linear-gradient(135deg, rgba(0,168,132,0.03) 25%, transparent 25%),
 linear-gradient(225deg, rgba(0,168,132,0.03) 25%, transparent 25%),
 linear-gradient(315deg, rgba(0,168,132,0.03) 25%, transparent 25%),
 linear-gradient(45deg, rgba(0,168,132,0.03) 25%, transparent 25%);
 background-size: 20px 20px, 40px 40px, 40px 40px, 40px 40px, 40px 40px;
}
.sms-bubble {
 max-width: 70%;
 padding: 0.5rem 0.75rem 0.4rem 0.75rem;
 border-radius: 7.5px;
 line-height: 1.4;
 word-break: break-word;
 position: relative;
}
.sms-bubble p { margin: 0; }
.sms-me {
 align-self: flex-end;
 background: #005c4b;
 color: #e9edef;
 border-top-right-radius: 0;
}
.sms-me::before {
 content: "";
 position: absolute;
 top: 0; right: -8px;
 width: 8px; height: 8px;
 background: #005c4b !important;
 clip-path: polygon(0 0, 0 100%, 100% 0) !important;
 border: none !important;
}
.sms-them {
 align-self: flex-start;
 background: #202c33;
 color: #e9edef;
 border-top-left-radius: 0;
}
.sms-them::before {
 content: "";
 position: absolute;
 top: 0; left: -8px;
 width: 8px; height: 8px;
 background: #202c33 !important;
 clip-path: polygon(100% 0, 0 0, 100% 100%) !important;
 border: none !important;
}
.sms-thought {
 background: #1a2530 !important;
 color: #aebac1 !important;
 font-style: italic;
 border-radius: 7.5px !important;
 opacity: 0.85;
}
.sms-thought::before { display: none !important; }
.sms-bubble figure { margin: 0.25rem 0; padding: 0; }
.sms-bubble figure img { max-width: 100%; border-radius: 6px; display: block; }
.sms-bubble figcaption { font-size: 0.78rem; opacity: 0.7; margin-top: 0.25rem; }
.sms-tick { display: inline-block; font-size: 0.7rem; opacity: 0.7; float: right; margin-left: 0.5rem; margin-top: 0.2rem; }
.sms-tick-fail { display: inline-block; font-size: 0.7rem; color: #f87171; float: right; margin-left: 0.5rem; margin-top: 0.2rem; }
.sms-input-bar {
 display: flex;
 align-items: center;
 gap: 0.5rem;
 padding: 0.6rem 0.85rem;
 background: #202c33;
 border-top: 1px solid #2a3942;
}
.sms-input-bar input {
 flex: 1;
 background: #2a3942;
 border: none;
 border-radius: 20px;
 padding: 0.45rem 0.9rem;
 color: #e9edef;
 font-size: 0.88rem;
 outline: none;
 font-family: inherit;
}
.sms-input-bar input::placeholder { color: #8696a0; }
.sms-send-btn {
 background: #00a884;
 border: none;
 border-radius: 50%;
 width: 2rem;
 height: 2rem;
 display: flex;
 align-items: center;
 justify-content: center;
 cursor: pointer;
 flex-shrink: 0;
 padding: 0;
}
.sms-send-btn svg { width: 1rem; height: 1rem; stroke: #fff; }
&lt;/style&gt;
&lt;div class="sms-bubble sms-me"&gt;What if we&amp;rsquo;re not in a loop? What if we&amp;rsquo;re on a straight and infinite vector.&lt;span class="sms-tick"&gt;✓✓&lt;/span&gt;&lt;/div&gt;
&lt;style&gt;
.sms-wrap {
 margin: 1.5rem 0;
 border-left: 3px solid #00a884;
 border-right: 3px solid #00a884;
 border-radius: 4px;
 overflow: hidden;
 font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
 font-size: 0.9rem;
}
.sms-header {
 display: flex;
 align-items: center;
 padding: 0.55rem 0.85rem;
 background: rgba(0, 168, 132, 0.1);
 gap: 0.5rem;
 border-bottom: 1px solid rgba(0, 168, 132, 0.2);
}
.sms-header-left {
 display: flex;
 align-items: center;
 gap: 0.4rem;
 flex-shrink: 0;
}
.sms-header-left svg { width: 0.9rem; height: 0.9rem; stroke: #00a884; }
.sms-callout-label {
 font-size: 0.75rem;
 font-weight: 700;
 text-transform: uppercase;
 letter-spacing: 0.06em;
 color: #00a884;
}
.sms-header-center {
 display: flex;
 align-items: center;
 gap: 0.5rem;
 flex: 1;
 justify-content: center;
}
.sms-avatar {
 width: 1.75rem;
 height: 1.75rem;
 border-radius: 50%;
 background: #00a884;
 color: #fff;
 display: flex;
 align-items: center;
 justify-content: center;
 font-weight: 700;
 font-size: 0.8rem;
 flex-shrink: 0;
 overflow: hidden;
}
.sms-avatar img { width: 100%; height: 100%; object-fit: cover; border-radius: 50%; }
.sms-contact-name { font-weight: 600; font-size: 0.88rem; color: #e9edef; }
.sms-header-icons { display: flex; gap: 0.85rem; align-items: center; flex-shrink: 0; }
.sms-header-icons svg { width: 1rem; height: 1rem; stroke: #aebac1; }
.sms-thread &gt; *:not(.sms-bubble):not(.sms-typing):not(.sms-typing-label) { text-align: center; align-self: center; }
.sms-thread {
 display: flex;
 flex-direction: column;
 gap: 0.5rem;
 padding: 1.25rem;
 position: relative;
 background-color: #0b141a;
 background-image:
 radial-gradient(circle at 1px 1px, rgba(255,255,255,0.03) 1px, transparent 0),
 linear-gradient(135deg, rgba(0,168,132,0.03) 25%, transparent 25%),
 linear-gradient(225deg, rgba(0,168,132,0.03) 25%, transparent 25%),
 linear-gradient(315deg, rgba(0,168,132,0.03) 25%, transparent 25%),
 linear-gradient(45deg, rgba(0,168,132,0.03) 25%, transparent 25%);
 background-size: 20px 20px, 40px 40px, 40px 40px, 40px 40px, 40px 40px;
}
.sms-bubble {
 max-width: 70%;
 padding: 0.5rem 0.75rem 0.4rem 0.75rem;
 border-radius: 7.5px;
 line-height: 1.4;
 word-break: break-word;
 position: relative;
}
.sms-bubble p { margin: 0; }
.sms-me {
 align-self: flex-end;
 background: #005c4b;
 color: #e9edef;
 border-top-right-radius: 0;
}
.sms-me::before {
 content: "";
 position: absolute;
 top: 0; right: -8px;
 width: 8px; height: 8px;
 background: #005c4b !important;
 clip-path: polygon(0 0, 0 100%, 100% 0) !important;
 border: none !important;
}
.sms-them {
 align-self: flex-start;
 background: #202c33;
 color: #e9edef;
 border-top-left-radius: 0;
}
.sms-them::before {
 content: "";
 position: absolute;
 top: 0; left: -8px;
 width: 8px; height: 8px;
 background: #202c33 !important;
 clip-path: polygon(100% 0, 0 0, 100% 100%) !important;
 border: none !important;
}
.sms-thought {
 background: #1a2530 !important;
 color: #aebac1 !important;
 font-style: italic;
 border-radius: 7.5px !important;
 opacity: 0.85;
}
.sms-thought::before { display: none !important; }
.sms-bubble figure { margin: 0.25rem 0; padding: 0; }
.sms-bubble figure img { max-width: 100%; border-radius: 6px; display: block; }
.sms-bubble figcaption { font-size: 0.78rem; opacity: 0.7; margin-top: 0.25rem; }
.sms-tick { display: inline-block; font-size: 0.7rem; opacity: 0.7; float: right; margin-left: 0.5rem; margin-top: 0.2rem; }
.sms-tick-fail { display: inline-block; font-size: 0.7rem; color: #f87171; float: right; margin-left: 0.5rem; margin-top: 0.2rem; }
.sms-input-bar {
 display: flex;
 align-items: center;
 gap: 0.5rem;
 padding: 0.6rem 0.85rem;
 background: #202c33;
 border-top: 1px solid #2a3942;
}
.sms-input-bar input {
 flex: 1;
 background: #2a3942;
 border: none;
 border-radius: 20px;
 padding: 0.45rem 0.9rem;
 color: #e9edef;
 font-size: 0.88rem;
 outline: none;
 font-family: inherit;
}
.sms-input-bar input::placeholder { color: #8696a0; }
.sms-send-btn {
 background: #00a884;
 border: none;
 border-radius: 50%;
 width: 2rem;
 height: 2rem;
 display: flex;
 align-items: center;
 justify-content: center;
 cursor: pointer;
 flex-shrink: 0;
 padding: 0;
}
.sms-send-btn svg { width: 1rem; height: 1rem; stroke: #fff; }
&lt;/style&gt;
&lt;div class="sms-bubble sms-me"&gt;Where does SciFi stand on this?&lt;span class="sms-tick"&gt;✓✓&lt;/span&gt;&lt;/div&gt;
&lt;style&gt;
.sms-wrap {
 margin: 1.5rem 0;
 border-left: 3px solid #00a884;
 border-right: 3px solid #00a884;
 border-radius: 4px;
 overflow: hidden;
 font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
 font-size: 0.9rem;
}
.sms-header {
 display: flex;
 align-items: center;
 padding: 0.55rem 0.85rem;
 background: rgba(0, 168, 132, 0.1);
 gap: 0.5rem;
 border-bottom: 1px solid rgba(0, 168, 132, 0.2);
}
.sms-header-left {
 display: flex;
 align-items: center;
 gap: 0.4rem;
 flex-shrink: 0;
}
.sms-header-left svg { width: 0.9rem; height: 0.9rem; stroke: #00a884; }
.sms-callout-label {
 font-size: 0.75rem;
 font-weight: 700;
 text-transform: uppercase;
 letter-spacing: 0.06em;
 color: #00a884;
}
.sms-header-center {
 display: flex;
 align-items: center;
 gap: 0.5rem;
 flex: 1;
 justify-content: center;
}
.sms-avatar {
 width: 1.75rem;
 height: 1.75rem;
 border-radius: 50%;
 background: #00a884;
 color: #fff;
 display: flex;
 align-items: center;
 justify-content: center;
 font-weight: 700;
 font-size: 0.8rem;
 flex-shrink: 0;
 overflow: hidden;
}
.sms-avatar img { width: 100%; height: 100%; object-fit: cover; border-radius: 50%; }
.sms-contact-name { font-weight: 600; font-size: 0.88rem; color: #e9edef; }
.sms-header-icons { display: flex; gap: 0.85rem; align-items: center; flex-shrink: 0; }
.sms-header-icons svg { width: 1rem; height: 1rem; stroke: #aebac1; }
.sms-thread &gt; *:not(.sms-bubble):not(.sms-typing):not(.sms-typing-label) { text-align: center; align-self: center; }
.sms-thread {
 display: flex;
 flex-direction: column;
 gap: 0.5rem;
 padding: 1.25rem;
 position: relative;
 background-color: #0b141a;
 background-image:
 radial-gradient(circle at 1px 1px, rgba(255,255,255,0.03) 1px, transparent 0),
 linear-gradient(135deg, rgba(0,168,132,0.03) 25%, transparent 25%),
 linear-gradient(225deg, rgba(0,168,132,0.03) 25%, transparent 25%),
 linear-gradient(315deg, rgba(0,168,132,0.03) 25%, transparent 25%),
 linear-gradient(45deg, rgba(0,168,132,0.03) 25%, transparent 25%);
 background-size: 20px 20px, 40px 40px, 40px 40px, 40px 40px, 40px 40px;
}
.sms-bubble {
 max-width: 70%;
 padding: 0.5rem 0.75rem 0.4rem 0.75rem;
 border-radius: 7.5px;
 line-height: 1.4;
 word-break: break-word;
 position: relative;
}
.sms-bubble p { margin: 0; }
.sms-me {
 align-self: flex-end;
 background: #005c4b;
 color: #e9edef;
 border-top-right-radius: 0;
}
.sms-me::before {
 content: "";
 position: absolute;
 top: 0; right: -8px;
 width: 8px; height: 8px;
 background: #005c4b !important;
 clip-path: polygon(0 0, 0 100%, 100% 0) !important;
 border: none !important;
}
.sms-them {
 align-self: flex-start;
 background: #202c33;
 color: #e9edef;
 border-top-left-radius: 0;
}
.sms-them::before {
 content: "";
 position: absolute;
 top: 0; left: -8px;
 width: 8px; height: 8px;
 background: #202c33 !important;
 clip-path: polygon(100% 0, 0 0, 100% 100%) !important;
 border: none !important;
}
.sms-thought {
 background: #1a2530 !important;
 color: #aebac1 !important;
 font-style: italic;
 border-radius: 7.5px !important;
 opacity: 0.85;
}
.sms-thought::before { display: none !important; }
.sms-bubble figure { margin: 0.25rem 0; padding: 0; }
.sms-bubble figure img { max-width: 100%; border-radius: 6px; display: block; }
.sms-bubble figcaption { font-size: 0.78rem; opacity: 0.7; margin-top: 0.25rem; }
.sms-tick { display: inline-block; font-size: 0.7rem; opacity: 0.7; float: right; margin-left: 0.5rem; margin-top: 0.2rem; }
.sms-tick-fail { display: inline-block; font-size: 0.7rem; color: #f87171; float: right; margin-left: 0.5rem; margin-top: 0.2rem; }
.sms-input-bar {
 display: flex;
 align-items: center;
 gap: 0.5rem;
 padding: 0.6rem 0.85rem;
 background: #202c33;
 border-top: 1px solid #2a3942;
}
.sms-input-bar input {
 flex: 1;
 background: #2a3942;
 border: none;
 border-radius: 20px;
 padding: 0.45rem 0.9rem;
 color: #e9edef;
 font-size: 0.88rem;
 outline: none;
 font-family: inherit;
}
.sms-input-bar input::placeholder { color: #8696a0; }
.sms-send-btn {
 background: #00a884;
 border: none;
 border-radius: 50%;
 width: 2rem;
 height: 2rem;
 display: flex;
 align-items: center;
 justify-content: center;
 cursor: pointer;
 flex-shrink: 0;
 padding: 0;
}
.sms-send-btn svg { width: 1rem; height: 1rem; stroke: #fff; }
&lt;/style&gt;
&lt;div class="sms-bubble sms-them"&gt;You know &amp;ndash; the best explanation for time travel I&amp;rsquo;ve ever heard used pasta. It was the scene with Bruce Wayne playing with spaghetti in &lt;em&gt;The Flash&lt;/em&gt;. It boiled (no pun intended) down to going back in time and changing something which results in not actually changing the timeline you started on.&lt;/div&gt;
&lt;style&gt;
.sms-wrap {
 margin: 1.5rem 0;
 border-left: 3px solid #00a884;
 border-right: 3px solid #00a884;
 border-radius: 4px;
 overflow: hidden;
 font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
 font-size: 0.9rem;
}
.sms-header {
 display: flex;
 align-items: center;
 padding: 0.55rem 0.85rem;
 background: rgba(0, 168, 132, 0.1);
 gap: 0.5rem;
 border-bottom: 1px solid rgba(0, 168, 132, 0.2);
}
.sms-header-left {
 display: flex;
 align-items: center;
 gap: 0.4rem;
 flex-shrink: 0;
}
.sms-header-left svg { width: 0.9rem; height: 0.9rem; stroke: #00a884; }
.sms-callout-label {
 font-size: 0.75rem;
 font-weight: 700;
 text-transform: uppercase;
 letter-spacing: 0.06em;
 color: #00a884;
}
.sms-header-center {
 display: flex;
 align-items: center;
 gap: 0.5rem;
 flex: 1;
 justify-content: center;
}
.sms-avatar {
 width: 1.75rem;
 height: 1.75rem;
 border-radius: 50%;
 background: #00a884;
 color: #fff;
 display: flex;
 align-items: center;
 justify-content: center;
 font-weight: 700;
 font-size: 0.8rem;
 flex-shrink: 0;
 overflow: hidden;
}
.sms-avatar img { width: 100%; height: 100%; object-fit: cover; border-radius: 50%; }
.sms-contact-name { font-weight: 600; font-size: 0.88rem; color: #e9edef; }
.sms-header-icons { display: flex; gap: 0.85rem; align-items: center; flex-shrink: 0; }
.sms-header-icons svg { width: 1rem; height: 1rem; stroke: #aebac1; }
.sms-thread &gt; *:not(.sms-bubble):not(.sms-typing):not(.sms-typing-label) { text-align: center; align-self: center; }
.sms-thread {
 display: flex;
 flex-direction: column;
 gap: 0.5rem;
 padding: 1.25rem;
 position: relative;
 background-color: #0b141a;
 background-image:
 radial-gradient(circle at 1px 1px, rgba(255,255,255,0.03) 1px, transparent 0),
 linear-gradient(135deg, rgba(0,168,132,0.03) 25%, transparent 25%),
 linear-gradient(225deg, rgba(0,168,132,0.03) 25%, transparent 25%),
 linear-gradient(315deg, rgba(0,168,132,0.03) 25%, transparent 25%),
 linear-gradient(45deg, rgba(0,168,132,0.03) 25%, transparent 25%);
 background-size: 20px 20px, 40px 40px, 40px 40px, 40px 40px, 40px 40px;
}
.sms-bubble {
 max-width: 70%;
 padding: 0.5rem 0.75rem 0.4rem 0.75rem;
 border-radius: 7.5px;
 line-height: 1.4;
 word-break: break-word;
 position: relative;
}
.sms-bubble p { margin: 0; }
.sms-me {
 align-self: flex-end;
 background: #005c4b;
 color: #e9edef;
 border-top-right-radius: 0;
}
.sms-me::before {
 content: "";
 position: absolute;
 top: 0; right: -8px;
 width: 8px; height: 8px;
 background: #005c4b !important;
 clip-path: polygon(0 0, 0 100%, 100% 0) !important;
 border: none !important;
}
.sms-them {
 align-self: flex-start;
 background: #202c33;
 color: #e9edef;
 border-top-left-radius: 0;
}
.sms-them::before {
 content: "";
 position: absolute;
 top: 0; left: -8px;
 width: 8px; height: 8px;
 background: #202c33 !important;
 clip-path: polygon(100% 0, 0 0, 100% 100%) !important;
 border: none !important;
}
.sms-thought {
 background: #1a2530 !important;
 color: #aebac1 !important;
 font-style: italic;
 border-radius: 7.5px !important;
 opacity: 0.85;
}
.sms-thought::before { display: none !important; }
.sms-bubble figure { margin: 0.25rem 0; padding: 0; }
.sms-bubble figure img { max-width: 100%; border-radius: 6px; display: block; }
.sms-bubble figcaption { font-size: 0.78rem; opacity: 0.7; margin-top: 0.25rem; }
.sms-tick { display: inline-block; font-size: 0.7rem; opacity: 0.7; float: right; margin-left: 0.5rem; margin-top: 0.2rem; }
.sms-tick-fail { display: inline-block; font-size: 0.7rem; color: #f87171; float: right; margin-left: 0.5rem; margin-top: 0.2rem; }
.sms-input-bar {
 display: flex;
 align-items: center;
 gap: 0.5rem;
 padding: 0.6rem 0.85rem;
 background: #202c33;
 border-top: 1px solid #2a3942;
}
.sms-input-bar input {
 flex: 1;
 background: #2a3942;
 border: none;
 border-radius: 20px;
 padding: 0.45rem 0.9rem;
 color: #e9edef;
 font-size: 0.88rem;
 outline: none;
 font-family: inherit;
}
.sms-input-bar input::placeholder { color: #8696a0; }
.sms-send-btn {
 background: #00a884;
 border: none;
 border-radius: 50%;
 width: 2rem;
 height: 2rem;
 display: flex;
 align-items: center;
 justify-content: center;
 cursor: pointer;
 flex-shrink: 0;
 padding: 0;
}
.sms-send-btn svg { width: 1rem; height: 1rem; stroke: #fff; }
&lt;/style&gt;
&lt;div class="sms-bubble sms-them"&gt;Instead you, the time traveler, get seamlessly shifted onto another alternative timeline which intersected the original one at the point of that event you changed.&lt;/div&gt;
&lt;style&gt;
.sms-wrap {
 margin: 1.5rem 0;
 border-left: 3px solid #00a884;
 border-right: 3px solid #00a884;
 border-radius: 4px;
 overflow: hidden;
 font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
 font-size: 0.9rem;
}
.sms-header {
 display: flex;
 align-items: center;
 padding: 0.55rem 0.85rem;
 background: rgba(0, 168, 132, 0.1);
 gap: 0.5rem;
 border-bottom: 1px solid rgba(0, 168, 132, 0.2);
}
.sms-header-left {
 display: flex;
 align-items: center;
 gap: 0.4rem;
 flex-shrink: 0;
}
.sms-header-left svg { width: 0.9rem; height: 0.9rem; stroke: #00a884; }
.sms-callout-label {
 font-size: 0.75rem;
 font-weight: 700;
 text-transform: uppercase;
 letter-spacing: 0.06em;
 color: #00a884;
}
.sms-header-center {
 display: flex;
 align-items: center;
 gap: 0.5rem;
 flex: 1;
 justify-content: center;
}
.sms-avatar {
 width: 1.75rem;
 height: 1.75rem;
 border-radius: 50%;
 background: #00a884;
 color: #fff;
 display: flex;
 align-items: center;
 justify-content: center;
 font-weight: 700;
 font-size: 0.8rem;
 flex-shrink: 0;
 overflow: hidden;
}
.sms-avatar img { width: 100%; height: 100%; object-fit: cover; border-radius: 50%; }
.sms-contact-name { font-weight: 600; font-size: 0.88rem; color: #e9edef; }
.sms-header-icons { display: flex; gap: 0.85rem; align-items: center; flex-shrink: 0; }
.sms-header-icons svg { width: 1rem; height: 1rem; stroke: #aebac1; }
.sms-thread &gt; *:not(.sms-bubble):not(.sms-typing):not(.sms-typing-label) { text-align: center; align-self: center; }
.sms-thread {
 display: flex;
 flex-direction: column;
 gap: 0.5rem;
 padding: 1.25rem;
 position: relative;
 background-color: #0b141a;
 background-image:
 radial-gradient(circle at 1px 1px, rgba(255,255,255,0.03) 1px, transparent 0),
 linear-gradient(135deg, rgba(0,168,132,0.03) 25%, transparent 25%),
 linear-gradient(225deg, rgba(0,168,132,0.03) 25%, transparent 25%),
 linear-gradient(315deg, rgba(0,168,132,0.03) 25%, transparent 25%),
 linear-gradient(45deg, rgba(0,168,132,0.03) 25%, transparent 25%);
 background-size: 20px 20px, 40px 40px, 40px 40px, 40px 40px, 40px 40px;
}
.sms-bubble {
 max-width: 70%;
 padding: 0.5rem 0.75rem 0.4rem 0.75rem;
 border-radius: 7.5px;
 line-height: 1.4;
 word-break: break-word;
 position: relative;
}
.sms-bubble p { margin: 0; }
.sms-me {
 align-self: flex-end;
 background: #005c4b;
 color: #e9edef;
 border-top-right-radius: 0;
}
.sms-me::before {
 content: "";
 position: absolute;
 top: 0; right: -8px;
 width: 8px; height: 8px;
 background: #005c4b !important;
 clip-path: polygon(0 0, 0 100%, 100% 0) !important;
 border: none !important;
}
.sms-them {
 align-self: flex-start;
 background: #202c33;
 color: #e9edef;
 border-top-left-radius: 0;
}
.sms-them::before {
 content: "";
 position: absolute;
 top: 0; left: -8px;
 width: 8px; height: 8px;
 background: #202c33 !important;
 clip-path: polygon(100% 0, 0 0, 100% 100%) !important;
 border: none !important;
}
.sms-thought {
 background: #1a2530 !important;
 color: #aebac1 !important;
 font-style: italic;
 border-radius: 7.5px !important;
 opacity: 0.85;
}
.sms-thought::before { display: none !important; }
.sms-bubble figure { margin: 0.25rem 0; padding: 0; }
.sms-bubble figure img { max-width: 100%; border-radius: 6px; display: block; }
.sms-bubble figcaption { font-size: 0.78rem; opacity: 0.7; margin-top: 0.25rem; }
.sms-tick { display: inline-block; font-size: 0.7rem; opacity: 0.7; float: right; margin-left: 0.5rem; margin-top: 0.2rem; }
.sms-tick-fail { display: inline-block; font-size: 0.7rem; color: #f87171; float: right; margin-left: 0.5rem; margin-top: 0.2rem; }
.sms-input-bar {
 display: flex;
 align-items: center;
 gap: 0.5rem;
 padding: 0.6rem 0.85rem;
 background: #202c33;
 border-top: 1px solid #2a3942;
}
.sms-input-bar input {
 flex: 1;
 background: #2a3942;
 border: none;
 border-radius: 20px;
 padding: 0.45rem 0.9rem;
 color: #e9edef;
 font-size: 0.88rem;
 outline: none;
 font-family: inherit;
}
.sms-input-bar input::placeholder { color: #8696a0; }
.sms-send-btn {
 background: #00a884;
 border: none;
 border-radius: 50%;
 width: 2rem;
 height: 2rem;
 display: flex;
 align-items: center;
 justify-content: center;
 cursor: pointer;
 flex-shrink: 0;
 padding: 0;
}
.sms-send-btn svg { width: 1rem; height: 1rem; stroke: #fff; }
&lt;/style&gt;
&lt;div class="sms-bubble sms-them"&gt;And our actions cause us to jump onto different vectors at any moment. Like a bowl of spaghetti.&lt;/div&gt;
&lt;/div&gt;
 
&lt;/div&gt;



&lt;p&gt;Thus began the famous association of time travel and pasta in our fictional world. This is a stereotype, you know? Pasta is not universally craved among the diverse time travel community, carbs are.&lt;/p&gt;</description></item><item><title>HE-2: Socratic dialogue with my brain, over text messaging</title><link>https://mihnev.com/posts/he2/</link><pubDate>Sun, 14 Jun 2026 00:00:00 -0500</pubDate><dc:creator>Alex Mihnev</dc:creator><guid>https://mihnev.com/posts/he2/</guid><description>&lt;h1 id="introduction"&gt;Introduction&lt;/h1&gt;
&lt;p&gt;Our story begins with a random dude when the shadow of an idea started knocking on his mind&amp;rsquo;s door. Before you start with the jokes &amp;ndash; the knocking wasn&amp;rsquo;t due to a lose screw! Not before too long our guy realized that, to understand what the idea wants from him, it may be necessary to employ his brain &amp;ndash; surprising, I know. Naturally, just like others from his generation and extroverts in general, he had outsourced most of his critical reasoning skills to stuff he saw on the internet and his social network in general. Luckily, our hero lived in a timeline where his own brain was part of his social network.&lt;/p&gt;</description></item><item><title>HE-1: So you want to be a time traveler? ⏰</title><link>https://mihnev.com/posts/he1/</link><pubDate>Sat, 13 Jun 2026 00:00:00 -0500</pubDate><dc:creator>Alex Mihnev</dc:creator><guid>https://mihnev.com/posts/he1/</guid><description>&lt;p&gt;Congratulations, you&amp;rsquo;ve been volunteered!&lt;/p&gt;
&lt;p&gt;If you&amp;rsquo;re here reading this then you&amp;rsquo;ve most likely discovered that time travel is not only possible, but quite common too. If you haven&amp;rsquo;t discovered this yet then you were pretty close to it anyway, trust me.&lt;/p&gt;
&lt;p&gt;Regardless, the stuff in this series is an essential study material for your time travel license which, by means of knowing about time travel, you now MUST obtain. Or else. We can&amp;rsquo;t have you running wild with sanctioned knowledge of the future, nor spreading rumors about the past.&lt;/p&gt;</description></item></channel></rss>