Tag: digital life

  • I Built My Own Search Engine (And You Can Too)

    Soundtrack to this post.

    Every time I typed something into Google, I thought about who else was reading it.

    Not in a paranoid way. Just in the quiet, background sense of knowing that somewhere, a profile was being updated. Another data point added to the picture they have of me. Douglas Ireland, Paisley, searched for: bus times, herniated disc recovery, Viking history, Oldham Athletic score.

    It starts to feel less like a search engine and more like a diary that someone else owns.

    Rows of servers on metal shelving racks in a data centre, with colourful cables running between units
    Somewhere in a building like this, a profile with your name on it is being updated. Photo: Centaur server room by Ttog via Wikimedia Commons, licensed under CC BY-SA 2.0

    So I built my own.

    The part I enjoyed most was not the installation. It was making it mine.

    SearXNG out of the box looks like SearXNG. Clean, functional, unmistakably generic. But the templates are open, the CSS is yours to change, and nothing is locked down. So I started pulling at threads.

    First it needed a name. DouglasBot Search. Then a logo, a pixel-font wordmark in cyan and purple sitting next to a robot avatar I had generated for an earlier project. Then a dark, slightly brutalist colour scheme that matched the aesthetic I had in my head. Then a custom placeholder in the search bar. Then a rewritten About page that sounds like a person wrote it rather than a committee.

    At some point it stopped feeling like a piece of software I was running and started feeling like a thing I had made.

    DouglasBot Search homepage showing a robot avatar, pixel-font logo in cyan and purple, and a search bar reading "Ask DouglasBot anything..."
    DouglasBot Search – running at search.douglasirelanddigital.com

    Then I added custom search shortcuts, called !bangs, so I can type !r selfhosted to search Reddit or !!osm Edinburgh to pull up a map. I even added a random ad rotator that displays one of my own projects on the results page. Advertising my own things to myself. The circle is complete.

    That is the part nobody tells you about self-hosting. The technical setup is just the door. What is on the other side is a blank canvas, and how much you do with it is entirely up to you. Most self-hosted SearXNG instances look identical. Mine does not. That feels worth something.

    DouglasBot Search lives at search.douglasirelanddigital.com. It is a private, self-hosted search engine that runs on my own server in a data centre in Germany. It does not store what I search for. It does not build a profile. It does not know my name. It just searches.

    How does it actually work?

    DouglasBot Search is built on SearXNG, a free and open-source metasearch engine. A metasearch engine does not crawl the web itself. Instead, it sends your query to multiple search engines simultaneously, collects the results, and presents them to you without passing on who you are. You get the results. Google gets nothing useful.

    Setting it up required a VPS, Docker, and a reverse proxy called Caddy to handle the domain and HTTPS. If none of those words mean anything to you, do not worry. The point is that the technical barrier, while real, is lower than you might think. The SearXNG documentation is good. There are Docker images ready to go. I had a working instance running within an afternoon.

    Why bother?

    Because I think the act of self-hosting is, as I wrote in an earlier post, a political one. When I use Google, I am a tenant. When I run my own search engine, I am an owner. The distinction matters more than it might seem.

    There is also something satisfying about using a tool you built yourself, even if “built” in this case means configured, customised, and made your own. It is the difference between a rented flat and a place where you are allowed to paint the walls.

    The results are genuinely good, by the way. It pulls from multiple sources and returns clean, uncluttered results without the sponsored entries and SEO slop that litter a standard Google page. I use it every day now. I have set it as my default browser search engine. I do not miss Google.

    Can you actually do this yourself?

    Yes. You need:

    • A VPS (I use Hetzner, which is EU-based, reliable, and not expensive)
    • Docker and Docker Compose installed
    • A domain name
    • An afternoon and a willingness to read documentation

    The SearXNG project has everything you need to get started. Search for “SearXNG Docker install” and follow the official docs. If you get stuck, the r/selfhosted community on Reddit is full of people who have done exactly this and are happy to help.

    It is not magic. It is just a small, deliberate choice to take back a corner of your digital life.

    One search at a time.

  • Like Shit Off a Shovel

    I first got online in 1994. Back then, just saying that felt futuristic. Most people I knew didn’t have the internet at all. You had to dial in, literally. That high-pitched screech of a modem connecting was the sound of something new.

    We called it the information superhighway, and it really did feel like that, a strange and open road with no clear destination. You just explored.

    The web was small. Pages were mostly grey. Text was blue and underlined. If you wanted a picture, it took time to load. Search engines weren’t very good. But there was something honest about it. You were more likely to stumble upon someone’s handmade website or message board than be guided by an algorithm. It felt like wandering.

    I remember someone in my family trying my 28.8k modem for the first time. After watching a page load faster than expected, they leaned back and said, “That thing goes like shit off a shovel.” At the time, it really did feel like that.

    I spent time on Usenet newsgroups, where people held long, often thoughtful discussions, threaded and searchable. And I used IRC, where you could drop into a channel and chat in real time with strangers from around the world. There was something raw but real about it. No profiles. No bios. Just usernames and conversation.

    There was no social media, no feeds, no notifications. If you wanted to connect with someone, you’d read their post or their homepage and send them an email. Maybe they’d write back. It was slow in the best way.

    Now the internet is always on, always loud. Every platform wants your attention. Content is chopped into algorithms and pushed into your day whether you asked for it or not. People compete for visibility, likes, reach. It’s not all bad, but it’s a long way from how it started.

    I’ve been thinking about that a lot lately. About how the internet used to be made up of small, personal spaces. And how it could be that again, at least in a quiet corner.

    That’s what I’m trying to build here. This site doesn’t run on likes or shares. I don’t have to post at the right time or follow trends. I just write when I want to. People can leave a comment if they feel like it. Or not.

    The difference is, I control this space. No ads. No feeds. Just a small corner of the internet where I can show up as myself.

    It might seem old-fashioned, but I don’t mind that. I’m from the dial-up days. And I still think there’s something worth keeping from that time.

    At the same time, I’m not anti-technology. Quite the opposite. I still get excited about new ideas and tools, especially AI. I think we’re only just beginning to see how it’s going to change how we work, create, communicate and learn. Used well, it can help us cut through noise, automate the boring stuff, and make space for more human connection, not less.

    So I’m not turning my back on the future. I just want to bring a little more of the past into it.