<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
<title>obk</title>
<link>https://obk.dev/</link>
<description>obk, or bahadır: systems, tooling, building, learning, and navigating in life.</description>
<language>en</language>
<atom:link href="https://obk.dev/feed.xml" rel="self" type="application/rss+xml"/>
<item>
<title>hello</title>
<link>https://obk.dev/posts/hello/</link>
<guid>https://obk.dev/posts/hello/</guid>
<pubDate>Wed, 04 Nov 2026 00:00:00 +0000</pubDate>
<description>the first post on obk.dev, and a tour of what a post can hold.</description>
<content:encoded><![CDATA[<p>this site has posts now. each one is a markdown file in <code>content/posts/</code>, with a title, a date and a line of description at the top, and the build does the rest: the page, the <a href="https://obk.dev/posts/">list of posts</a>, and a <a href="https://obk.dev/feed.xml">feed</a> for readers.<label for="sn-1" class="margin-toggle sidenote-number"></label><input type="checkbox" id="sn-1" class="margin-toggle"><span class="sidenote">the feed carries every post whole, so it can be read without visiting the site.</span></p>
<p>this first one is mostly a sample, to show what a post can hold. <em>emphasis</em>, <strong>strong text</strong>, <del>struck-out text</del>, <code>inline code</code> and <a href="https://github.com/obk/obk.dev">links</a> all work inline.</p>
<h2 id="why-so-small">why so small</h2>
<p>the site used to have a typeface of its own, shapes in three colours, grain over the window and words that came up out of a blur. it was fun to build.<label for="mn-2" class="margin-toggle">⊕</label><input type="checkbox" id="mn-2" class="margin-toggle"><span class="marginnote">the old design was bauhaus: kandinsky's circle, square and triangle, set in jost.</span> but a page that is mostly words reads best when there is nothing else on it.</p>
<p>so now it is one column, inter for text and ibm plex mono for code, black on white or white on black, and grey for whatever is quieter.</p>
<blockquote>
<p>make everything as simple as possible, but not simpler.</p>
<footer>after albert einstein</footer>
</blockquote>
<h3 id="what-went">what went</h3>
<ul>
<li>jost, for two fonts that read better small</li>
<li>the animation and the grain</li>
<li>the colours, but for grey</li>
</ul>
<h3 id="what-stayed">what stayed</h3>
<ol>
<li>markdown in, static html out</li>
<li>no javascript<label for="sn-3" class="margin-toggle sidenote-number"></label><input type="checkbox" id="sn-3" class="margin-toggle"><span class="sidenote">not even for the notes in the margin: on a phone, a tap opens them with a checkbox and a line of css.</span></li>
<li>lowercase, everywhere but in code</li>
</ol>
<h2 id="code">code</h2>
<p>code is coloured when the site is built, in grey alone: keywords bold, comments and strings quieter.</p>
<pre class="chroma"><code><span class="line"><span class="cl"><span class="c1">// notes turns {sn|text} into a numbered sidenote.</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="kd">func</span><span class="w"> </span><span class="nf">notes</span><span class="p">(</span><span class="nx">src</span><span class="w"> </span><span class="kt">string</span><span class="p">)</span><span class="w"> </span><span class="kt">string</span><span class="w"> </span><span class="p">{</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">	</span><span class="nx">n</span><span class="w"> </span><span class="o">:=</span><span class="w"> </span><span class="mi">0</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">	</span><span class="k">return</span><span class="w"> </span><span class="nx">noteMarks</span><span class="p">.</span><span class="nf">ReplaceAllStringFunc</span><span class="p">(</span><span class="nx">src</span><span class="p">,</span><span class="w"> </span><span class="kd">func</span><span class="p">(</span><span class="nx">m</span><span class="w"> </span><span class="kt">string</span><span class="p">)</span><span class="w"> </span><span class="kt">string</span><span class="w"> </span><span class="p">{</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">		</span><span class="nx">n</span><span class="o">++</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">		</span><span class="k">return</span><span class="w"> </span><span class="nx">fmt</span><span class="p">.</span><span class="nf">Sprintf</span><span class="p">(</span><span class="s">&#34;note %d&#34;</span><span class="p">,</span><span class="w"> </span><span class="nx">n</span><span class="p">)</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">	</span><span class="p">})</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="p">}</span><span class="w">
</span></span></span></code></pre><p>a long line scrolls sideways rather than wrapping:</p>
<pre class="chroma"><code><span class="line"><span class="cl">go run . -serve :8000   <span class="c1"># build the site into public/, then serve it on http://localhost:8000 for a look</span>
</span></span></code></pre><h2 id="tables-and-tasks">tables and tasks</h2>
<table>
<thead>
<tr>
<th>page</th>
<th>at</th>
<th>what</th>
</tr>
</thead>
<tbody>
<tr>
<td>about</td>
<td><code>/</code></td>
<td>the bio and how to reach me</td>
</tr>
<tr>
<td>now</td>
<td><code>/now/</code></td>
<td>what i'm doing now</td>
</tr>
<tr>
<td>posts</td>
<td><code>/posts/</code></td>
<td>every post, by year</td>
</tr>
<tr>
<td>feed</td>
<td><code>/feed.xml</code></td>
<td>the same, for feed readers</td>
</tr>
</tbody>
</table>
<ul>
<li><input checked="" disabled="" type="checkbox"> posts, with a list by year</li>
<li><input checked="" disabled="" type="checkbox"> a feed</li>
<li><input checked="" disabled="" type="checkbox"> notes in the margin</li>
<li><input disabled="" type="checkbox"> the next post</li>
</ul>
<h2 id="figures-and-pairs">figures and pairs</h2>
<figure>
<img src="https://obk.dev/favicon.svg" alt="the site's icon: a circle, a square and a triangle" width="96" height="96">
<figcaption>the icon, still in three colours.</figcaption>
</figure>
<p>definition lists, as on the home page, work here too:</p>
<dl>
<dt>markdown</dt>
<dd>what every page and post is written in</dd>
<dt>goldmark</dt>
<dd>the go library that turns it into html</dd>
</dl>
<hr>
<p>that's all for now. the next posts will be about the tools in <a href="https://obk.dev/#projects">projects</a>.</p>
]]></content:encoded>
</item>
</channel>
</rss>
