<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
    <title>llll-ll - blog</title>
    <subtitle>kako-jun&#x27;s games and apps portfolio</subtitle>
    <link rel="self" type="application/atom+xml" href="https://llll-ll.com/posts/atom.xml"/>
    <link rel="alternate" type="text/html" href="https://llll-ll.com/posts/"/>
    <generator uri="https://www.getzola.org/">Zola</generator>
    <updated>2026-06-20T00:00:00+00:00</updated>
    <id>https://llll-ll.com/posts/atom.xml</id>
    <entry xml:lang="en">
        <title>Why I built Hacker Noroshi</title>
        <published>2026-06-20T00:00:00+00:00</published>
        <updated>2026-06-20T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://llll-ll.com/posts/hacker-noroshi/"/>
        <id>https://llll-ll.com/posts/hacker-noroshi/</id>
        
        <content type="html" xml:base="https://llll-ll.com/posts/hacker-noroshi/">&lt;p&gt;If you build something as an individual developer and want the world to use it, the fastest path is to show it where the world&#x27;s developers gather: &lt;a rel=&quot;external&quot; href=&quot;https:&#x2F;&#x2F;dev.to&#x2F;&quot;&gt;dev.to&lt;&#x2F;a&gt;, &lt;a rel=&quot;external&quot; href=&quot;https:&#x2F;&#x2F;www.producthunt.com&#x2F;&quot;&gt;Product Hunt&lt;&#x2F;a&gt;, &lt;a rel=&quot;external&quot; href=&quot;https:&#x2F;&#x2F;www.reddit.com&#x2F;&quot;&gt;Reddit&lt;&#x2F;a&gt;, and &lt;a rel=&quot;external&quot; href=&quot;https:&#x2F;&#x2F;news.ycombinator.com&#x2F;&quot;&gt;Hacker News&lt;&#x2F;a&gt; (HN).&lt;&#x2F;p&gt;
&lt;p&gt;Once you&#x27;ve translated your product into English (i18n), you can reach people everywhere through these places. But you can&#x27;t just post and hope. Each one has its own etiquette — and &lt;strong&gt;HN in particular is unusually hard&lt;&#x2F;strong&gt;.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-hn-is-hard&quot;&gt;Why HN is hard&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;It&#x27;s an English-speaking technical community where promotional-sounding posts sink fast, or get flagged.&lt;&#x2F;li&gt;
&lt;li&gt;It has its own conventions: how to title a story, when to use Show HN &#x2F; Ask HN, karma, ▲ upvotes, and the norms of comment discussion.&lt;&#x2F;li&gt;
&lt;li&gt;A single misstep stays on the record. There&#x27;s no safe place to practice.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;so-i-built-a-practice-ground&quot;&gt;So I built a practice ground&lt;&#x2F;h2&gt;
&lt;p&gt;&lt;strong&gt;Hacker Noroshi&lt;&#x2F;strong&gt; is a place to practice the look and the mechanics of HN safely, in Japanese. You can try the same etiquette as the real thing — submitting, ▲ voting, commenting, hide, favorite, flag — in an environment where nothing is lost if you slip. Turn on Assist mode and it bridges the English terms (karma, Show HN…) into Japanese as you learn them.&lt;&#x2F;p&gt;
&lt;p&gt;Get comfortable with the conventions here first, then step out to the real HN, dev.to, Product Hunt, and Reddit. That&#x27;s what Hacker Noroshi is for.&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Practice ground: &lt;a rel=&quot;external&quot; href=&quot;https:&#x2F;&#x2F;hn.llll-ll.com&#x2F;&quot;&gt;https:&#x2F;&#x2F;hn.llll-ll.com&#x2F;&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>How to use Machigai Salad</title>
        <published>2026-06-15T00:00:00+00:00</published>
        <updated>2026-06-15T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://llll-ll.com/posts/machigai-salad/"/>
        <id>https://llll-ll.com/posts/machigai-salad/</id>
        
        <content type="html" xml:base="https://llll-ll.com/posts/machigai-salad/">&lt;p&gt;&lt;strong&gt;Machigai Salad&lt;&#x2F;strong&gt; is a tool that helps you solve spot-the-difference puzzles — like the famous one on the Saizeriya menu — semi-automatically, just for fun. No sign-up, and it runs entirely in your browser.&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;App: &lt;a rel=&quot;external&quot; href=&quot;https:&#x2F;&#x2F;machigai-salad.llll-ll.com&quot;&gt;https:&#x2F;&#x2F;machigai-salad.llll-ll.com&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;GitHub: &lt;a rel=&quot;external&quot; href=&quot;https:&#x2F;&#x2F;github.com&#x2F;kako-jun&#x2F;machigai-salad&quot;&gt;https:&#x2F;&#x2F;github.com&#x2F;kako-jun&#x2F;machigai-salad&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;When you overlay two pictures and flip back and forth between them, only the spots that differ appear to wiggle. This is a real technique called &lt;strong&gt;blink comparison&lt;&#x2F;strong&gt;; it&#x27;s the same method used to discover Pluto (Tombaugh, 1930).&lt;&#x2F;p&gt;
&lt;p&gt;The flow is three steps: &lt;strong&gt;Shoot → Align → Compare.&lt;&#x2F;strong&gt; Here they are in order.&lt;&#x2F;p&gt;
&lt;p&gt;(The screenshots below are from the Japanese UI, but every label has an English equivalent.)&lt;&#x2F;p&gt;
&lt;h2 id=&quot;1-shoot-or-import&quot;&gt;1. Shoot (or import)&lt;&#x2F;h2&gt;
&lt;p&gt;Take a photo of the puzzle with your phone. Straight-on is best, but a slight angle is fine as long as the whole thing fits in frame.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;img src=&quot;&#x2F;images&#x2F;machigai-salad&#x2F;shoot.jpg&quot; alt=&quot;The capture screen, with a &amp;quot;Take a photo&amp;quot; button and &amp;quot;Pick from album&amp;quot;&quot; &#x2F;&gt;&lt;&#x2F;p&gt;
&lt;p&gt;To use a photo you already took, tap &lt;strong&gt;&quot;Pick from album&quot;&lt;&#x2F;strong&gt; and choose one from your gallery. You then pick a mode:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;One image&lt;&#x2F;strong&gt; (the left and right are in a single photo)&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Two separate images&lt;&#x2F;strong&gt;&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;Large or curved sheets, or puzzles in a book, may not fit in one frame, or lens distortion at the edges keeps them from forming a clean rectangle. For those, use &lt;strong&gt;two-image mode&lt;&#x2F;strong&gt; and shoot the left and right pictures separately. It even handles puzzles laid out vertically.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;img src=&quot;&#x2F;images&#x2F;machigai-salad&#x2F;album-mode.jpg&quot; alt=&quot;The &amp;quot;How to load?&amp;quot; popup, offering &amp;quot;One image (side by side)&amp;quot; and &amp;quot;Two separate images&amp;quot;&quot; &#x2F;&gt;&lt;&#x2F;p&gt;
&lt;h2 id=&quot;2-align-the-corners&quot;&gt;2. Align the corners&lt;&#x2F;h2&gt;
&lt;p&gt;The app auto-detects the four corners of the sheet. Continue, and the image is split into left and right halves.&lt;&#x2F;p&gt;
&lt;p&gt;If detection struggles (low contrast between paper and table, shadows or wood grain in the way), fix it like this:&lt;&#x2F;p&gt;
&lt;ol&gt;
&lt;li&gt;Switch the detection sensitivity between &lt;strong&gt;Strict &#x2F; Normal &#x2F; Loose&lt;&#x2F;strong&gt; and tap &lt;strong&gt;Re-detect&lt;&#x2F;strong&gt;&lt;&#x2F;li&gt;
&lt;li&gt;If it still won&#x27;t fit, &lt;strong&gt;drag the four corner dots&lt;&#x2F;strong&gt; by hand to match the paper&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Undo&lt;&#x2F;strong&gt; steps back one move at a time&lt;&#x2F;li&gt;
&lt;&#x2F;ol&gt;
&lt;p&gt;When it lines up, tap &lt;strong&gt;&quot;OK! Let&#x27;s go&quot;&lt;&#x2F;strong&gt;.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;img src=&quot;&#x2F;images&#x2F;machigai-salad&#x2F;corners.jpg&quot; alt=&quot;The corner-alignment screen: round handles on the four corners of the paper, with Strict &#x2F; Normal &#x2F; Loose sensitivity buttons&quot; &#x2F;&gt;&lt;&#x2F;p&gt;
&lt;h2 id=&quot;3-compare&quot;&gt;3. Compare&lt;&#x2F;h2&gt;
&lt;p&gt;The left image is shown. &lt;strong&gt;Hold your finger down to switch to the right image; let go to flip back.&lt;&#x2F;strong&gt; Only the differences wiggle, so just look for those.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;img src=&quot;&#x2F;images&#x2F;machigai-salad&#x2F;compare.gif&quot; alt=&quot;The compare screen: holding switches to the right image, and only the differences wiggle&quot; &#x2F;&gt;&lt;&#x2F;p&gt;
&lt;h3 id=&quot;fine-tuning-when-they-don-t-line-up&quot;&gt;Fine-tuning when they don&#x27;t line up&lt;&#x2F;h3&gt;
&lt;p&gt;If the two pictures don&#x27;t overlap cleanly, everything looks shifted, not just the differences. Three adjustments help:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Slide to align horizontally&lt;&#x2F;strong&gt; — if there&#x27;s a divider (a gap) between the left and right pictures, splitting straight down the middle shifts the center. Slide with your finger to line it up.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Drag the four corners&lt;&#x2F;strong&gt; — drag the corner handles in the compare view to fix slight trapezoidal skew.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Drag the center&lt;&#x2F;strong&gt; — if the paper is warped and bulges in the middle, drag the center handle. The four corners plus the center form a 5-point mesh that bends the image to absorb the distortion.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;&lt;strong&gt;Undo&lt;&#x2F;strong&gt; steps back one move. &lt;strong&gt;&quot;Back to corners&quot;&lt;&#x2F;strong&gt; returns to the previous step.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;img src=&quot;&#x2F;images&#x2F;machigai-salad&#x2F;warp.gif&quot; alt=&quot;Dragging the four corner handles and the center handle in the compare view to fine-tune the overlay&quot; &#x2F;&gt;&lt;&#x2F;p&gt;
&lt;h2 id=&quot;save-and-revisit&quot;&gt;Save and revisit&lt;&#x2F;h2&gt;
&lt;p&gt;Once you&#x27;ve finished aligning, tap &lt;strong&gt;&quot;Save&quot;&lt;&#x2F;strong&gt; to keep it (up to 5). You can bring it back any time — handy for taking another slow look after you get home from Saizeriya.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;img src=&quot;&#x2F;images&#x2F;machigai-salad&#x2F;save.jpg&quot; alt=&quot;The &amp;quot;My saves&amp;quot; list: saved puzzles shown as thumbnails with timestamps&quot; &#x2F;&gt;&lt;&#x2F;p&gt;
&lt;h2 id=&quot;turn-it-into-an-animation-and-share&quot;&gt;Turn it into an animation and share&lt;&#x2F;h2&gt;
&lt;p&gt;From &lt;strong&gt;&quot;Create animation&quot;&lt;&#x2F;strong&gt; you can make two kinds of video.&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Wiggle video&lt;&#x2F;strong&gt; (share as GIF &#x2F; download as PNG) — the difference is obvious at a glance, so it&#x27;s good for checking answers or sharing.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;&quot;Did you notice?&quot; video&lt;&#x2F;strong&gt; (a slow 60-second crossfade &#x2F; MP4) — morphs gradually from the left image to the right. The kind that makes you go &quot;Wait, is it changing? Is it &lt;em&gt;really&lt;&#x2F;em&gt; changing?&quot; It makes the puzzle &lt;em&gt;harder&lt;&#x2F;em&gt;, so challenge your friends with it.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;&lt;img src=&quot;&#x2F;images&#x2F;machigai-salad&#x2F;animation.gif&quot; alt=&quot;Preview of the wiggle video — share as GIF, download as PNG&quot; &#x2F;&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Here&#x27;s an example of the &quot;did you notice?&quot; video. It morphs slowly from the left image to the right over 30 seconds.&lt;&#x2F;p&gt;

&lt;div class=&quot;youtube-embed&quot; style=&quot;position:relative;padding-bottom:56.25%;height:0;overflow:hidden;border-radius:8px;&quot;&gt;
  &lt;iframe
    style=&quot;position:absolute;top:0;left:0;width:100%;height:100%;border:0;&quot;
    src=&quot;https:&#x2F;&#x2F;www.youtube-nocookie.com&#x2F;embed&#x2F;mgYPmp_1pVg&quot;
    title=&quot;YouTube video&quot;
    loading=&quot;lazy&quot;
    allow=&quot;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share&quot;
    allowfullscreen&gt;&lt;&#x2F;iframe&gt;
&lt;&#x2F;div&gt;
&lt;h2 id=&quot;tips&quot;&gt;Tips&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Inside in-app browsers like LINE, the camera may not start.&lt;&#x2F;strong&gt; In that case, tap &lt;strong&gt;&quot;Open in browser&quot;&lt;&#x2F;strong&gt; to open it in a normal browser such as Chrome. You can also add it to your home screen there.&lt;&#x2F;li&gt;
&lt;li&gt;To start fresh, &lt;strong&gt;&quot;Start over&quot;&lt;&#x2F;strong&gt; takes you back to the capture screen.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;privacy-and-installing&quot;&gt;Privacy and installing&lt;&#x2F;h2&gt;
&lt;p&gt;All processing — including the photos you take — happens entirely in your browser. Nothing is sent anywhere, so nothing can leak.&lt;&#x2F;p&gt;
&lt;p&gt;Install it as a PWA and a little shrimp icon appears on your home screen, ready to launch — no need to search for it every time you arrive at Saizeriya.&lt;&#x2F;p&gt;
&lt;p&gt;There&#x27;s also a QR code on the home screen. If you spot someone losing their mind over a spot-the-difference puzzle, show it to them. The app is available in English too.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>About the “rebuild cost”</title>
        <published>2026-06-14T00:00:00+00:00</published>
        <updated>2026-06-14T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://llll-ll.com/posts/rebuild-cost/"/>
        <id>https://llll-ll.com/posts/rebuild-cost/</id>
        
        <content type="html" xml:base="https://llll-ll.com/posts/rebuild-cost/">&lt;p&gt;The “rebuild cost” shown on each app card is &lt;strong&gt;an estimate of the cost to rebuild that software from scratch, by hand&lt;&#x2F;strong&gt;. It is not the time or money the author actually spent, but the cost of producing the finished result again from the ground up — its replacement value.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;background&quot;&gt;Background&lt;&#x2F;h2&gt;
&lt;p&gt;In current software development, the amount of AI-agent usage affects how much and what quality can be produced. Most companies use AI on a metered, usage-based basis. Finished software can be acquired in its completed state, without the development time or the metered cost. The rebuild cost is a reference figure for evaluating such an acquisition or transfer.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;how-it-is-calculated&quot;&gt;How it is calculated&lt;&#x2F;h2&gt;
&lt;p&gt;Line count alone cannot distinguish repetitive code from novel code, so the estimate is made in two stages.&lt;&#x2F;p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Lines of code (SLOC) are measured with &lt;a rel=&quot;external&quot; href=&quot;https:&#x2F;&#x2F;github.com&#x2F;boyter&#x2F;scc&quot;&gt;scc&lt;&#x2F;a&gt;&lt;&#x2F;strong&gt;, counting code and data (CSV &#x2F; JSON &#x2F; YAML, etc.) separately.&lt;&#x2F;li&gt;
&lt;li&gt;A rule shared by all apps is applied to those lines to estimate effort.&lt;&#x2F;li&gt;
&lt;&#x2F;ol&gt;
&lt;pre&gt;&lt;code&gt;effort (person-months) = fixed overhead 0.5
                + code lines ÷ code speed
                + data lines ÷ data speed

rebuild cost (USD) = effort × $7,000 &#x2F; month   (rounded)
&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;The speeds are lines that can be produced by hand, finished and reviewed, per month, divided by difficulty.&lt;&#x2F;p&gt;
&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;Code tier&lt;&#x2F;th&gt;&lt;th&gt;Speed&lt;&#x2F;th&gt;&lt;th&gt;Example&lt;&#x2F;th&gt;&lt;&#x2F;tr&gt;&lt;&#x2F;thead&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;Hard (novel low-level &#x2F; graphics &#x2F; reverse-engineering &#x2F; engines)&lt;&#x2F;td&gt;&lt;td&gt;1,800 lines&#x2F;mo&lt;&#x2F;td&gt;&lt;td&gt;orber (GPU &#x2F; WGSL)&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Standard (typical web &#x2F; CLI &#x2F; game &#x2F; app)&lt;&#x2F;td&gt;&lt;td&gt;3,500 lines&#x2F;mo&lt;&#x2F;td&gt;&lt;td&gt;most&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Repetitive (many similar parts, config-driven)&lt;&#x2F;td&gt;&lt;td&gt;7,000 lines&#x2F;mo&lt;&#x2F;td&gt;&lt;td&gt;tail-match (scrapers for 47 prefectures)&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;&#x2F;tbody&gt;&lt;&#x2F;table&gt;
&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;Data tier&lt;&#x2F;th&gt;&lt;th&gt;Speed&lt;&#x2F;th&gt;&lt;th&gt;Example&lt;&#x2F;th&gt;&lt;&#x2F;tr&gt;&lt;&#x2F;thead&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;Authored (translations, legal text, linguistic data)&lt;&#x2F;td&gt;&lt;td&gt;9,000 lines&#x2F;mo&lt;&#x2F;td&gt;&lt;td&gt;noun-gender, osaka-kenpo&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Config &#x2F; generated&lt;&#x2F;td&gt;&lt;td&gt;50,000 lines&#x2F;mo&lt;&#x2F;td&gt;&lt;td&gt;the rest&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;&#x2F;tbody&gt;&lt;&#x2F;table&gt;
&lt;p&gt;The fixed overhead of 0.5 person-months is the minimum design, testing and release cost incurred regardless of size. The $7,000 &#x2F; month rate is a standard rate for a skilled contractor.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;consistency&quot;&gt;Consistency&lt;&#x2F;h3&gt;
&lt;p&gt;The only per-app judgment is the tier assignment; the figure follows from the rule. Individual apps are not adjusted on their own. To change the scale, a shared coefficient such as the monthly rate is changed and applied to all apps at once.&lt;&#x2F;p&gt;
&lt;p&gt;The tier assignments were made by &lt;strong&gt;Claude Opus 4.8&lt;&#x2F;strong&gt;, reading each app’s source code and description and following the criteria above, which serve as the instructions for the judgment. The procedure is reproducible and applies the same rule as apps are added.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;notes&quot;&gt;Notes&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;For apps with few lines, the cost per line is higher, because of the fixed overhead. The line count is the final result; the trial, error and review behind it are included in the overhead.&lt;&#x2F;li&gt;
&lt;li&gt;“Building by hand” includes the time to become able to work with the technology. Becoming able to write in a new language takes years.&lt;&#x2F;li&gt;
&lt;li&gt;This is not a precise quote, but a single rule applied uniformly to every app.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>About this site&#x27;s counter and comment boards (Nostalgic)</title>
        <published>2026-06-13T00:00:00+00:00</published>
        <updated>2026-06-13T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://llll-ll.com/posts/nostalgic/"/>
        <id>https://llll-ll.com/posts/nostalgic/</id>
        
        <content type="html" xml:base="https://llll-ll.com/posts/nostalgic/">&lt;p&gt;The visit counter at the top of this site (the &quot;visits&quot; bar) and the comment box under each blog post are both powered by &lt;strong&gt;Nostalgic&lt;&#x2F;strong&gt;.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;what-nostalgic-is&quot;&gt;What Nostalgic is&lt;&#x2F;h2&gt;
&lt;p&gt;Nostalgic is a &lt;strong&gt;free service that brings old-school hit counters, likes, rankings and guestbooks (BBS) to static sites that have no backend of their own&lt;&#x2F;strong&gt;. kako-jun built it. Each counter or board is identified by a &quot;URL + token&quot; pair, and you add it to a page with a small snippet.&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Home &#x2F; docs: &lt;a rel=&quot;external&quot; href=&quot;https:&#x2F;&#x2F;nostalgic.llll-ll.com&#x2F;&quot;&gt;https:&#x2F;&#x2F;nostalgic.llll-ll.com&#x2F;&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;why-this-site-uses-it&quot;&gt;Why this site uses it&lt;&#x2F;h2&gt;
&lt;p&gt;llll-ll is a static site built with &lt;a rel=&quot;external&quot; href=&quot;https:&#x2F;&#x2F;www.getzola.org&#x2F;&quot;&gt;Zola&lt;&#x2F;a&gt;; it has no database or server of its own. To still show &quot;how many people have visited&quot; and let visitors &quot;leave a short comment,&quot; it uses Nostalgic.&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Visit counter&lt;&#x2F;strong&gt;: the Total &#x2F; Today &#x2F; Yesterday &#x2F; Week &#x2F; Month figures in the visits bar are real counts returned by a Nostalgic visit counter.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Comments&lt;&#x2F;strong&gt;: the comment box under each article is a Nostalgic BBS. Comments are returned as an image, so they&#x27;re readable even with JavaScript turned off.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;on-your-own-site&quot;&gt;On your own site&lt;&#x2F;h2&gt;
&lt;p&gt;You can add the same thing to your own static site or blog — no server, no database required. If you&#x27;re curious, take a look at &lt;a rel=&quot;external&quot; href=&quot;https:&#x2F;&#x2F;nostalgic.llll-ll.com&#x2F;&quot;&gt;https:&#x2F;&#x2F;nostalgic.llll-ll.com&#x2F;&lt;&#x2F;a&gt;.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Read this first</title>
        <published>2026-06-12T00:00:00+00:00</published>
        <updated>2026-06-12T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://llll-ll.com/posts/start-here/"/>
        <id>https://llll-ll.com/posts/start-here/</id>
        
        <content type="html" xml:base="https://llll-ll.com/posts/start-here/">&lt;p&gt;Welcome to Planning Division 42 — the personal site where kako-jun keeps the games and apps he has made (look for the &quot;llll-ll&quot; wordmark).&lt;&#x2F;p&gt;
&lt;h2 id=&quot;about-this-site&quot;&gt;About this site&lt;&#x2F;h2&gt;
&lt;p&gt;Famicom-era nostalgia meets a dark, cyberpunk mood. The whole thing wears a terminal (btop) look, with small bits of playfulness scattered around — try poking the Tetris up in the header, or flip the theme between light and dark.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;how-to-enjoy-it&quot;&gt;How to enjoy it&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;apps&lt;&#x2F;strong&gt; — a list of the games and apps I&#x27;ve built. Filter by tag or search, and try anything that catches your eye.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;art of today&lt;&#x2F;strong&gt; — a single picture that changes every day. Tomorrow it&#x27;s a different one, so drop by now and then.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;blog&lt;&#x2F;strong&gt; — the stories behind what I make, and whatever I&#x27;m thinking about. I&#x27;ll be moving older posts here little by little.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;about-kako-jun&quot;&gt;About kako-jun&lt;&#x2F;h2&gt;
&lt;p&gt;I&#x27;m in Kanazawa, blending nostalgia with modern tech to make games and apps. My motto is &quot;ship it, then polish&quot; rather than &quot;polish it, then ship.&quot;&lt;&#x2F;p&gt;
&lt;p&gt;Take a look around — and come back sometime.&lt;&#x2F;p&gt;
</content>
        
    </entry>
</feed>
