Adding a blog to my homepage
A recap of how I started a Ghost platform and how well I integrated it with my homepage.
A year ago I’ve been taking a couple of days to restore my health and then couple more days to spend with my brother and his family. While taking that health brake one night I felt I’m bored, so I took out my payment card and bought a small server with Ghost set there. I’ve spent a couple of hours to figure out the details and create a basic introduction, where I defined why it should exist.
I’ve been reading and trying and procrastinating with actually starting writing and publishing. As publishing felt weird. Despite I am used to public speaking I felt so uncomfortable to start posting my thoughts. Because I was taught what and how to speak but I was taught to stay away from my own thoughts at the same time.
Avoiding what I don’t like
This was the reason I crossed Wordpress off my list. I am considering myself professional therefore I can’t allow myself to say it’s bad. Because it is not as it solves to problems. The most relevant motivation for this decision is the simplest: I don’t like it.
Following this approach I rejected options that were based on static content, where each change would require re-deploy. It is simple and effective, but that’s not what I wanted to do. Because I felt I’d like to keep it running for a while and scale. Changing platform on the very next iteration does not feel like a good choice.
Applying Occam’s razor principle I came to a few options, and self-hosted Ghost solution was the only real option I felt I am curious and I wish to move on. Then I’ve been procrastinating for months, until I had nothing better to just set it up and write.
Temptation of technologies
I am writing this right after I posted on X about a huge temptation and distraction that technology switch brings to the table. I’ve met people who are afraid of new technologies, those they haven’t worked with. And there are other people, who love jumping into new technologies. Both attempts bring problems: it either limits them or distracts too much.
Since there was nobody reading that blog except of me I picked a minimalist theme I like the most and decided to not change it until I have enough traffic. That “enough” is still undefined, and that means one thing: it’s not about traffic, it’s more about my state. When I am bored enough again to open docs and adjust or craft my own theme. When it happens naturally - it is always the right time.
Crafting a landing page
It is weird, but I’ve been building a lot of web pages, working with platforms etc. but never took my time to tell about myself. Last autumn I felt this is exactly what I want to do. And I took Astro.build to do so. As I wanted it simple and straightforward. The most interesting thing after years with React and Vue/Nuxt I have barely went over Astro’s docs. I took MIT theme and started tweaking it, figuring out how components are built, injected and how to create my owns.
The landing page I’ve built is focused about my carrier, achievements and interests. It is rather professional than fun (like we, software developers, could build fun homepages lol). But my blog is full of entries I tag as “journey”. These are the posts where I reconsider and reflect on my own journey evolving. It is much more personal, despite it is driven by professional interest.
At the same time I building and experiencing interesting technical challenges, that might be helpful for my colleagues. And these are tagged accordingly. And the moment I figured out there is Ghost’s Content API with filtering options everything clicked! Now my homepage stores a list of software development articles, while read.elilap.dev is still a single source for my articles.
Borrowing own content might be tricky
At the moment I am keeping a list of articles titles and short introductions what it is about. And I redirect to the original article on subdomain while clicked. I’ll explain briefly why it’s not the ideal state, but that’s the good starting point.
It is technically easy to have a page that renders the entire article content under the main domain, however it requires detailed consideration about SEO. Because duplicating the same content under different URLs was never a good idea.
On the other side: blog website is entirely different site with own style and look. And it might feel overwhelming for user to jump to sub-domain with a different look. At least this is what I think at the moment. The very least functionality I miss - keeping the color scheme (dark and light themes). It is hurtful to get to full-white page from the dark-colored page at night.
Conclusions
At the moment this sounds like 2025 problem and I have a couple of ideas how to implement it. Yet I’m glad it took me not too much time to show my blog articles on my homepage, keeping it professional and avoiding overcomplicating things.
Good decisions are leading us to great results in a natural way. It is also known as evolution. If implementing this stuff would require revolution that would let me know I should start over and make better decisions.
That’s it for this year. Have a great New Year’s party and enjoy upcoming 2025.
In 2024 God made me strong. In 2025 God will make me happy.