Join the discussion

Write your take first — we'll ask for email only when you're ready to publish.

  • Hacker News
  • hey thanks! I learned from your article that "if you can make a website, you can make an ebook."

    This is inspiring because I can indeed make a website, and have a lot of drafts that I want to turn into a book!

  • Glad to inspire. That was the point of the post. For the record, I never made any guarantees that the book (or the website) was any good. Software or prose, you can have the most pristine build pipeline in the world, but "garbage in, garbage out" as they say.
  • Textbook example of structured procrastination. I bet you got all your household projects done as well as taxes for next year
  • Thief recognizes another thief… ;)

    I saw myself in OP’s write up, the process is nicely described.

  • In contrast, here's how I under engineered my book lol: https://news.ycombinator.com/item?id=49336392

    If our two styles found a middle ground we'd be unstoppable!

  • Ha! Indeed. Love the time-lapse video.

    ETA: Need to add "maniac on the front page of Hacker News" to my resume.

  • Related: a tool to convert HTML to EPUB, with checks and smarts:

    https://frequal.com/epublish/

  • How did people come to the conclusion that "over-engineered" is something positive?
    by _def
  • From a consumer POV it is -- even if only read as 'not under-engineered'.

    In an over engineered thing margin is left on the table which the consumer gets to take advantage of. Noting that in the real world items are often exposed to loads and demands above and beyond the idealized design constraints a 'perfectly' engineered item would just meet.

  • What gives you the impression that "people" have come to such a conclusion?
  • I love this! I'm writing short stories and I use Astro to build the site, I generate sharable qr codes and epubs for every story as well as the whole, and I use gh-pages to push to GitHub pages.

    And I hear you about over-engineering. I feel like a Linux user--spending more time getting my laptop just right instead of using it. I have to remind myself that the point of it is the result, not the process.

  • I set out likewise to write a highly structured book with FOSS, therefore: git, some hierarchical plain text format, and a visually rich editor. Markdown could not seem to meet the third point. For instance, progress-related comments that would be stripped from final output were essential, but Markdown's HTML-style comments are intolerably unergonomic, and editors know how to de-emphasize no other syntax.

    Ended up with Org-mode. Emacs with a bit of customization color- and font-codes richly. Org text goes into an Org-to-HTML converter that I hacked up in Go, incrementally added to as new wants arise.

    Most recent completed production was a photo album for relatives. In HTML form, it could be put on line, but I used Weasyprint so I could give them self-contained PDF as a keepsake.

  • It is perhaps ironic that I find this post very difficult to read. I'm super interested in the content, but it reads like it is generated.
  • I've gotten that feedback before. Once a lawyer, always a lawyer.

    Full disclosure, a few months back when I had some tokens expiring, I had Copilot spike out a draft to see if there was anything "there" worth writing. If you check the revision history (linked from the bottom of the post), I did a full (human) blank page rewrite three days ago and then only used Claude for line edits like adding links or fixing failing lints.

  • I saw a Bruce Eckel talk one time after Thinking in Java became a best seller.

    I expected him to talk about Java, and lessons learned about it writing the book (he did not start nor end in Java and documented a number of programming languages.)

    What we got instead was a rundown of how he 'overengineered' the book. He had interns solving a problem for him: How to make sure the published code examples actually run when transcribed into an editor.

    They wrote a tool to mark up live code with extraction points to excerpt it automatically into his manuscript.

    About five years later I worked at a F50 company with a bunch of contractors who were all Getting Shit Done and making some of the more bureaucratic org units around us a bit nervous. Someone thought they found a gotcha by complaining about how our developer documentation didn't meet the defined documentation standards the company had devised. They weren't wrong, but people used to the platform we were building on wouldn't have been stymied at all by what we gave them.

    If we had done it the way they suggested, it would have added almost a week of my time to every release, and I was already struggling with delegating enough work to make me not the bottleneck. So that extra week would have taken our velocity down a notch and made us a bit more comparable to everyone else. It was a clever ploy, but Bruce saved me.

    Instead of spending a slog every release on updating the docs, I found that Bruce's strategy had already been made into a FOSS tool, jcite. So I spent about 50 hours the first quarter learning to use it, and fixing up all of my integration tests to be suitable to use the way Bruce taught me.

    With that done, it took less an hour per release to fix the developer documentation, and half of that hour I got one of our tech writers to take off my plate (I couldn't get the documentation template to exactly match the corporate template, so she manually fixed the handful of errors). So within another quarter we were back to full speed. It's possible I imagined the disappointment when we explained what we did but it was a delicious hallucination if so. Nice try. Maybe you could learn from us instead of trying to pull us down with you, hmm?

    Thanks Bruce, for teaching me a lesson I didn't even know I needed.

  • Nice! My rule (pre-AI) had always been never force a human to do what a robot can. If you can automate yourself out of your least favorite part of your job, that's a win for both you and your employer. You can move on to more meaningful work, or in some environments, just leave early. Reminds me of that old xkcd about the tradeoff in time between doing something manually vs. automating it.
  • Seeing that list of tools you're using in automations, I'm guessing you'll enjoy this, as another tool to add to the pile: https://t-kalinowski.github.io/yamark/

    (disclosure: I wrote it)

  • Well, there goes my weekend. Thanks for sharing. Will take a look.
  • Thank you for the demo! I like the concept. However, I personally find that the writing style you've designed for reads very strongly as AI-generated. For example, opening a section with phrases like "Here's the irony: after automating everything up to this point," or "Turning emoji into images solved the missing-font problem and created a subtler one."

    These are both strong tells of AI-generated prose, though I find it surprisingly difficult to articulate exactly why. It makes me wonder whether your style has evolved to sound more like AI-generated prose, or whether AI-generated prose has evolved to sound more like you!

  • "Um ackshually your writing looks like AI and that is so problematic" wags finger

    This is how you people sound.

    You can't recognize AI. Nobody can without training specifically to recognize AI, and eve then, it's only been shown to be successful with a language with an online corpus significantly smaller than English.

    The thing LLMs are best at in the entire world is imitating human writing. So all you're really doing is discouraging a human from writing.

    I hate AI in the artistic disciplines. No one hates it more than I do. But Jesus Christ, I've been seeing legitimate authors get called AI for over a year now, and it's so bad that I know people are quitting writing over it. ("What's the point, everyone stopped reading because they think I'm AI") End result being the percentage of writing that is AI goes up, and humans enjoying the most human of all disciplines goes down.

  • Look at the landing site for the book. The article and book are vibe-written. This is alarming for material meant to market a book.

    Count the number of times it brags about a specific quantity.

    Count the number of false insights, sentences made to elevate the obvious into the profound.

    Count the number of em dashes. Count the number of times an inanimate object or verb is used as a noun. Observe the textbook Claude design, full of glows and embodying all the worst aspects of web 2.0 landing page culture.

    https://open-and-async.com/

    > Fun isn’t a distraction—it’s a retention strategy. Self-care isn’t weakness; it’s operational discipline

    > The book in one page / The playbook, start to finish / Ten parts, each building on the last. Here’s the path.

    The most alarming part is it appears Ben either did not bother to review and edit the content, or was not adept enough to recognize it as deficient. That didn't prevent them from posting it directly to hacker news via their own account without even a Show HN. They consider this material to be ready for an audience and that's concerning to me.

  • Fair, and I think this is the most interesting feedback here, especially because I made the same observation in the blog post itself:

    > One of these caught me. `validateHypotheticalHooks` flagged the opening of a paragraph I was certain I’d written myself — and I had. But reading it back cold, it did sound ghost-authored; I’d absorbed the cadence from reading too much generated text and produced a fluent imitation of nothing.

    As for the book, "trust me, I'm human" isn't going to cut it here (we literally prove humanity on the internet by training robots to act more like humans). As I posted earlier in the thread (https://news.ycombinator.com/item?id=49337307), most of the book's chapters began as blog posts that I've published for over a decade, well before AI slop came into the picture. The book is those, refined. 2026 me can't Terminator myself into creating a retroactive paper trail.

    And thanks for the feedback. Human Ben is going to take another pass at the post and rewrite those you flagged so that they don't take away from the message.

  • Another that hits me is the over-the-top dramatization:

    > I’m not going to tell you to write 5,500 tests for your novel. For most books, most of this is wildly disproportionate — and that’s the point.

  • Custom linting is so cheap and easy, why not!

    > "Please add in this repo, a pre-commit hook in the form of a script that prints all filenames and line numbers on which the hyphenated "open-source" string exists, and if any instances are found, will exit nonzero. Then please install it in `.git/hooks` so commits are blocked until me or an agent removes all the instances, so we never again commit the string "open-source"."

    1 minute after hitting enter you've created yourself a guarantee your repo will never again see the string "open-source".