From 94c692a54c69c15099d46f002a6b15c1b443b935 Mon Sep 17 00:00:00 2001 From: Aleks Rutins Date: Mon, 9 Jun 2025 22:51:53 -0400 Subject: [PATCH] Start writing --- pages/blog.rb | 2 +- posts/2025-06-09-an-ode-to-simplicity.md | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) create mode 100644 posts/2025-06-09-an-ode-to-simplicity.md diff --git a/pages/blog.rb b/pages/blog.rb index f22919b..42aeaf4 100644 --- a/pages/blog.rb +++ b/pages/blog.rb @@ -8,7 +8,7 @@ class Pages::Blog < ::Phlex::HTML posts.each { |post| meta = post[:data].front_matter - return unless meta.key?('published_on') + next unless meta.key?('published_on') tr { td { diff --git a/posts/2025-06-09-an-ode-to-simplicity.md b/posts/2025-06-09-an-ode-to-simplicity.md new file mode 100644 index 0000000..1cadb3b --- /dev/null +++ b/posts/2025-06-09-an-ode-to-simplicity.md @@ -0,0 +1,7 @@ +--- +title: An ode to simplicity +--- + +If there's one lesson that I take from developing — and, more importantly, later abandoning — [Cheetah](https://cheetah.farthergate.com), it's this: nothing can kill a good project, or even a middling-to-mediocre project, like scope creep. + +The first big mistake I made was to do everything myself. Now, this was an incredible learning experience, of course: I learned how to write functioning Rust code, for one (functioning, not clean; please mind your footing around the `Rc>>>>`), but by everything, I mean _everything_. Starting with the template engine. And it wouldn't just be a normal, text-based template engine: this template engine (in [one file](https://github.com/aleksrutins/cheetah/blob/master/src/template.rs), for those who don't value their sanity) worked on the DOM.