Starting again

10 years ago – that was the last time I wrote a personal blog. I had taught myself how to code at MIT and decided to build my own website, complete with a blog and the ability to publish ideas. Among the first I published was about “Financial services for low-income populations”.

Recently, I felt the urge to go back to writing. I am not interested in growing an audience but want to weave together the strands of ideas that flit in my mind. I am constantly inspired by the things I see, people I meet, conversations I am privy to, articles that I read, and more. This will be my creative outlet to “think aloud”. I have to admit that I am partially inspired by Stripe and its strong writing culture.

I will write down anecdotes & factoids, reflections & observations, technical guides & business ideas, and maybe even some cooking recipes!

So here goes, back to a restart!

Tons of things have happened since I published my first blog, not least the rise of LLMs. In its renaissance, I want to take the opportunity to pair up with an LLM as a research, coding and general assistant. My writing will be informed by my own style, my own takes, my own opinions. I want to use LLMs for the following purposes:

  1. Double-check my writing and give recommendations on style, prose and clarity
  2. Act as a research assistant to help me find data and solve questions that I am curious about
  3. Code the website and blog itself

In this first post I want to focus on how I published this website. 10 years ago, I coded my blog completely by myself with the help of Google, Stackoverflow, and courses I had taken on HTML; it was a .blog subdomain of my domain jdanek.de and was using Ghost as a framework. I would write my posts in markdown or even raw HTML and upload to the deployment server on Digital Ocean via Filezilla.

My setup today is still fairly similar, with Ghost as an open source framework, hosted on my own VPS. I used Claude Code (Mac App) to do most of the development work. Here’s my approach:

  1. Brainstorm on the ideal tech stack given my coding skills (Python) and requirements (simple, with a content management system, self-hosted)
  2. Once decided on the tech stack, I had Claude build out a PRD (product requirements document) that details the final blog, including future developments
  3. Finally I let Claude break down the concrete work steps required to publish the blog, divided into five phases.
Side note: There’s a great article on Why Self-Host trending on Hackernews. My main motivation was 1/ learn how to do it alongside an LLM 2/ retain flexibility 3/ save costs.

The outcome and process was great. It took me about 3 hours all-in-all to set everything up. Along the way I had to troubleshoot several unexpected issues and error but the ability to send error logs, submit screenshots and have Claude help in reasoning around where an error could be found made the process super smooth. World-difference to what it was like 10 years ago to publish this.

For those who are interested in the exact instructions and process, I had Claude type up both a layman’s introduction as well as a more “in-depth” technical guide on what we did (in the appendix).

FAQs:

  • How often will I publish? Whenever I want to – this is a project for myself, at my pace. I am aiming for about 1 post per month for now.
  • Can I subscribe to new posts? Yes, just use the subscribe button!
  • Who proofreads this stuff? Today no one but if you are interested on giving feedback, let me know!

Claude explains what we did in its own words

What We Did:

We created a professional blog at https://blog.piogen.eu - completely from scratch. It's now live on the internet, fully functional, and ready for publishing content.

Why Open Source? 🌍

Instead of using a platform like Medium or Substack where someone else controls your content, we used Ghost - open source software. This means:

  • You own everything - Your content, your data, your subscribers
  • No platform fees - No one taking a cut of your earnings
  • Full control - Customize anything, add any features
  • Privacy - Your readers' data stays with you, not sold to advertisers
  • Independence - The platform can't shut down, change rules, or delete your work

Think of it like owning your house versus renting an apartment. Open source is ownership.

What is Ghost & Why Our Own Server? 💻

Ghost is publishing software - like WordPress, but modern and focused purely on writing and newsletters. It's what professional writers and publications use.

Our own server means the blog lives on a computer we control (rented from Hostinger), not on someone else's platform. Benefits:

  • Performance - Fast loading, no shared resources
  • Customization - Any design, any feature
  • Longevity - As long as you pay ~$5/month, it stays online forever
  • Learning - You understand how the internet actually works

Why a Subdomain (blog.piogen.eu)? 🔗

Your main website (piogen.eu) lives on Hostinger's website builder - easy drag-and-drop tools. The blog needed more power and flexibility, so we put it on its own space.

Subdomain = separate section of your website:

  • piogen.eu - Main website (stays as-is, no changes)
  • blog.piogen.eu - New blog (separate but connected)

Like having your storefront on Main Street and your workshop in the back building - same address, different spaces.

This way you can:

  • Keep the simple website builder for your homepage
  • Have a powerful, customizable blog for writing
  • Later migrate everything to one system if you want

What You Now Have ✨

A professional publishing platform where:

  • ✅ People can subscribe to your newsletter
  • ✅ You own all content and subscriber data
  • ✅ Secure (HTTPS with encryption)
  • ✅ Fast and reliable
  • ✅ Costs ~$5/month to run
  • ✅ No ads, no algorithm, no corporate control

You're not renting space on someone else's platform - we built our own.

Subscribe to Julius Notes

Don’t miss out on the latest issues. Sign up now to get access to the library of members-only issues.
jamie@example.com
Subscribe