2025-07-01 18:50:00
This is part 1 of a 3 (or 4, I haven't decided yet) part series on digital hygiene.
Email is, arguably, the backbone of the modern internet. Not only is it a means of communication, but is the de-facto identity for operating online. In this way, email isn't just how I communicate, but who I am online. Yes, some services still operate with usernames and passwords; but the vast majority of services use email as user identity. This arguably makes email the most important online account. Everything else relies on email.
Email is also where I do most of my work. From technical support, to replying to friendly emails, to receiving invoices; it is the workspace through which my occupation operates. And for all of these reasons, my email is well organised and easy to use.
People regularly comment on how quickly and personally I respond to their emails, and it's because they're generally only one of a few emails in my inbox. This isn't because I just naturally don't receive emails (I run two B2C web-services!). Instead it is because I am very active in maintaining a clean workspace. In the same way a carpenter keeps his tools neat and tidy; or a barista cleans his equipment and the counter after every coffee brewed; I put away my emails and wipe down my inbox after every use.
What's fairly interesting, though, is that people assume this is difficult. But it's not. Once I started keeping a clean inbox I actually had significantly less work, since every email I received actually warranted attention. The important ones weren't buried beneath a heap of newsletters, spam, receipts, and all the other cruft that can clog up the workspace.
Here's how I do it:
To kick things off, I have 2 email addresses. The first one is the one that I use as my identity. This is a gmail address that I've had since high school, and I use it to sign up to online services, fill in forms, and all the other things that require an online identity. I don't bother with email aliases since it just makes my identity harder to control. I respect people who do this to track data-leaks, but I couldn't be bothered.
The second email address is my conversational address. This is where people can contact me, whether it be for support or to just say hi. I don't have any web-services or online identities associated with this email address, and so every email I receive here is from a person.
My email is also not a place for adverts and marketing (we'll get to this later), or a place where I read newsletters. This is a place for work and communication. For newsletters I use an RSS reader (Reeder is my choice of client). If a website or newsletter doesn't support RSS (which is very rare) and I really want to receive updates I use Kill the Newsletter, which creates an RSS feed of received emails. This could also be another email account specifically for newsletters, if RSS isn't to your liking
This is one of the most important parts of my email strategy. My inbox isn't a place for leisurely reading. When I open my email it's with purpose. If I want to catch up on my newsletters and blogs I follow, I can flop down on the couch, open my RSS reader, and enjoy them when I'm not also trying to work.
Since my first email address is used for signing up to websites, apps, and all the rest; it inevitably receives marketing emails (even though I religiously never check that checkbox). Whenever I receive a marketing newsletter I always hit unsubscribe. I'm not interested. If I receive another email from that company I report their email as spam. This is a non-negotiable. Companies that disregard unsubscribes should be penalised, and the only way to do this is to make their email deliverability metrics slightly worse. Maybe they'll learn. Probably not.
When a new email enters my inbox I explicitly act on it. Every single email is attended to like this:
And I just keep doing that. I found that over time, once the cruft has been unsubscribed, filtered, or moved elsewhere; the only emails that hit my inbox are important ones that require my attention. Additionally, I only receive between 5 and 15 emails a day, and they aren't buried and require significantly less cognitive load to address.
Naturally everyone's workflow will look different based on the work that they do and personal preference. However I think it is universal to say being active about email creates a better experience for you and the people and services you interact with. This is just how I like to do it.
It's also possible to control what kinds of emails you receive. If you take a look at my contact page, you'll notice that it's intentionally formatted, and tweaked regularly. I have a big picture of my face to remind people that they're interacting with a human being (this is particularly useful for support requests). It then provides easy links to the most frequently requested resources. I specify my working hours, establishing that people will need to be patient when waiting for a response from me, especially over weekends (this is also particularly useful for support requests). And then finally my email is at the bottom in non-copy-and-paste (and maybe anti-bot) format.
I encourage people to randomly email me. Especially if it's to discuss a post of mine, invite me for a coffee, or just open a line of communication. The page is set up to point people in the right direction when looking for information, help them quickly resolve their queries, and to remind them that I'm not a nameless customer support agent.
I am quite privileged to decide what emails are important, since I work for myself. However, even if you receive a lot of email that can't be filtered out, having a system around what you can archive or unsubscribe from will inevitably make life easier.
Email is a great tool when used well. It is a place of slow(er) communication, and for some a place for connection. In many ways it is an extension of oneself. I like to keep it tidy.
2025-05-28 18:05:00
The weather in Cape Town is slowly descending into a cold, wet winter (except for today, which is a beautiful). I've brought the heater up from the garage, doubled up the duvets on the bed, and have started wearing long pyjamas to sleep.
Generally at this time of year Emma and I are making plans to head somewhere warm, but this year we've decided to stick it out in South Africa with a month-long road-trip to the North West for some proper time in the bushveld, and then a wedding in Joburg.
For people not from South Africa, it does get cold here. Not in the same way it gets cold in Canada or Northern Europe, but in some ways it gets colder. Let me explain:
In Canada the Canadians know that it's going to get very, very cold. Unbelievably cold. Because of this they do a whole bunch of reasonable things like insulate their homes, ensure they have a robust heating system, and purchase proper winter attire. But not in South Africa. Our weather is great most of the year, with only about 2 to 3 months of cold weather.
It can get down to 5 degrees Celcius on a cold day; and while that may not seem cold to people where the weather gets to -20, we're always completely unprepared for it. Because of our good weather the rest of the year, we forget. We forget to insulate our houses. We forget to get winter sheets. And so when the time comes even the insides of our homes are cold.
I've had Polish and German friends suffer in the South African winter due to a lack of good heating and insulation. And that brings me to my topic of interest today: Heaters.
There are so many different kinds of heaters on the market. Everything from wood fireplaces to under-floor hot water heating. Now, unless you're lucky and your house or apartment has built in heating or a fireplace of some sort, you're stuck purchasing a heater from a store (or layering up, or both).
At the end of the day there are only have 3 different kinds of heating (for the purposes of this write-up):
Conduction - where you physically touch the heated surface and that heat is transferred to you via the conductivity of the surface and the body in contact.
Radiation - where infrared light is radiated from a heating element and absorbed by our skin (or the surrounding objects) over a distance.
Convection - where the heated surface warms the surrounding air, which in turn warms us. While convection involves conduction at a molecular level (heat transfer between particles), it’s distinct from conduction because it relies on the movement of a fluid (air in this case).
Most heaters rely on a combination of these mechanisms. Wood fireplaces predominately rely on radiation (infrared from the fire) and convection (warming up the surrounding air). Under-floor heating relies on conduction (direct contact with the floor) and some convection, although this isn't the main mechanism. Electric quartz heaters (those pretty glowing bars) are predominately radiation, and the oil-filled space heaters are predominately convection.
Store bought heaters come in a variety of shapes, sizes, and price points. But I noticed that by-and-large they all have the same max wattage of 2000 watts (I believe in the US it's 1500 watts due to their 120 volt power supply). Now, theoretically energy is energy is energy. Therefore, if you have a sealed room each one of these heaters will emit the same amount of heat into the room at the same rate, regardless of whether this is an expensive heater or one of those cheapie blower types you put under your desk. And since every 2000 watt heater will cause the same amount of heating and draw the same amount of power, then the mechanism of action shouldn't be that important. Or is it?
We have 3 heaters in our apartment. A quartz bar heater, a fin space heater, and an electric blanket. And they each have their own strengths and weaknesses.
The quartz bar heater is by far my favourite. As soon as I turn it on it starts radiating a gentle warmth directly onto me. This is lovely since I don't sleep with the heater on, so when the apartment is cold in the morning I can sit in front of it with my coffee and be all toasty without having to warm up the entire space. It also warms up the couch I'm sitting on, which provides conductive heating as well. Warming up the entire space is also not easily (or cheaply) done due to South African building's lack of insulation.
Left on for long enough and it does gradually increase the temperature of the room, since that same number of wattage is being radiated into the space where it's absorbed by the floor and furniture, heating them up. Those objects inevitably heat up the air around them, and boom! You have convection.
The fin space heater is no-where near as nice. Due to it relying on convection to heat up the entire space it isn't very efficient (again, no insulation). Instead we use this exclusively in the home office which is a smaller space, has slightly better insulation, and a carpet which I wouldn't like to rest the bar heater on due to the localised heat.
It is a great example of how doing something useful with the heat first is important. With the bar heater it warms me and the objects I interact with up before trying to warm up the surrounding air. Again, in the end it's 2000 watts regardless of method, so may as well make use of that energy locally before trying to warm up the room.
My third heater is the electric blanket. If I put this on 10 minutes before getting into bed it warms it up so well that it's such a toasty pleasure to get into. This is also by far the most efficient form of heating since it is insulated by default, and relies entirely on conduction. It warms up the specific area that I will inhabit without losing much heat to the surrounding area. Due to this the power draw of an electric blanket is negligible compared to actual space heaters (about 7-10%). This is a great example of super localised heat. There's no way that I'm going to use my electric blanket to heat up the apartment.
I grew up with gas heaters (and briefly an anthracite stove heater) and have spent a decent amount of time with wood-fired stoves and fireplaces, and I can honestly say that electricity is just so much subjectively better. No having to leave the window open to vent the carbon dioxide (meaning more gas needs to be burnt to compensate). No ash coating surfaces around the fireplace, no smell of smoke in the house. No having to constantly replenish stocks of wood or haul around gas canisters.
Also, being able to flick the bar heater on and off as needed is great when compared to starting and maintaining a fire in a wood-burning stove. I only spend 45 minutes having coffee before heading to gym in the morning and really couldn't be bothered to make a fire. I'm also a fan of consistent heat instead of the fluctuations of burning hydrocarbons. But that's personal preference and relegated to indoors. I love a good campfire and the ambiance of fire in general.
There are many other heater designs, but when narrowed down to wattage and mechanism, it helps me reason about it better. I guess what can be taken away from this writeup is that if you're stuck deciding between heaters, just know that they'll probably all heat up your space at the same rate, but finding a way to use that heat locally first is good practise. Also, save your money. Expensive heaters are not better by default.
2025-04-14 19:49:11
Every now and then a reader of my blog finds themselves in Cape Town and reaches out to me to ask for recommendations, or grab a coffee, or just say hi. And I love it. It's opened up a new avenue for meeting interesting people and potential friends. I'm quite far away from my reader-base, which tends to be predominately in the US, Western Europe, and South East Asia. So this happens very infrequently, but when it does, you can be sure that I'm keen.
There's also the secondary benefit of meeting people who use Bear Blog: It gives me an opportunity to solicit feedback, get a general vibe of what works and what doesn't, and to keep a finger on the pulse of the project. It allows me to talk shop with someone who understands what it is I do. One of the downsides of being working solo is that it can get occupationally lonely. My friends know what Bear is, but very few people actively blog.
So with all that being said, this post is an open-invitation. If you're in Cape Town, either living here or passing through: Yes. I will have coffee with you.
2025-03-26 17:02:00
LLMs feed on data. Vast quantities of text are needed to train these models, which are in turn receiving valuations in the billions. This data is scraped from the broader internet, from blogs, websites, and forums, without the author's permission and all content being opt-in by default.
Needless to say, this is unethical. But as Meta has proven, it's much easier to ask for forgiveness than permission. It is unlikely they will be ordered to "un-train" their next generation models due to some copyright complaints.
I wish the problem ended with the violation of consent for how our writing is used. But there's another, more immediate problem: The actual scraping.
These companies are racing to create the next big LLM, and in order to do that they need more and more novel data with which to train these models. This incentivises these companies to ruthlessly scrape every corner of the internet for any bit of new data to feed the machine. Unfortunately these scrapers are terrible netizens and have been taking down site-after-site in an unintentional wide-spread DDoS attack.
Over the past 6 months Bear, and every other content host on the internet, has been affected. Both Sourcehut and LWN have written about their difficulties in holding back the scourge of AI scrapers. This seems to be happening to big and small players alike. Self-hosted bloggers have had to figure out rate-limiting and CDNs too, which is pretty unfair for someone who just wants to write on the internet.
Bear is hit daily by bot networks requesting tens of thousands of pages in short time periods, and while I now have systems in place to prevent it actually taking down the server, when it started happening a few months ago it certainly had an impact on performance.
This is a difficult problem to solve, due to the way that these scrapers are designed. The first is that only a small portion of these scrapers identify themselves as such. These are all blocked at the WAF (Web Application Firewall) level and never reach any Bear blogs (about 500,000 requests have been blocked in the last 24 hours). However the vast majority of scrapers identify themselves as regular web-browsers, and use multiple servers and IP addresses, making all of the usual tools like rate-limiting and user-agent parsing obsolete. Not to mention that they all completely ignore robots.txt and other self-regulation rules.
One of the mitigation options is to add a challenge to every single page (like Cloudflare's managed challenge), but this is an unpleasant user-experience and blocks bots that are actually welcome, such as search engine crawlers. So while it is possible to mitigate all bot traffic, that would effectively make all blogs non-searchable on all the major search engines. Some of the LLM scrapers cheekily identify themselves as Googlebot or Yandexbot as well. This option would also affect anyone who runs scripts on their own site for backups or custom automations. Not ideal.
I've had to remove RSS subscriber analytics since I can't mitigate bots very well on RSS feeds which are explicitly designed for bots. This influx has caused the RSS analytics to be completely wrong, and it felt better to remove it than to display incorrect information.
As of right now I have several strategies in place to combat this deluge that are working well. If you're a service provider or sysadmin being negatively impacted by these scrapers, contact me and I'd be happy to show you what's worked for me.
Right now everything is under control on Bear. Over the past month bots have only managed to impact performance on Bear once, and that endpoint has since been protected. I've added significantly more active monitoring, and any time I see a spike of requests I find a common pattern, block it, and monitor whether it has affected any real users.
Thankfully, none of these scrapers render CSS, and therefore don't get logged as visitors on Bear's analytics.
The best case scenario is that the AI companies find another way to train their models without ruthlessly slashing and burning the internet. However, I doubt this will happen. Instead I see it getting worse before it gets better. More tools are being released to combat this, one interesting tool from Cloudflare is the AI Labyrinth which traps AI scrapers that ignore robots.txt in a never-ending maze of no-follow links. This is how the arms race begins.
And I'm ready for it. Let's fight this exploitation of the commons.
2025-02-11 15:52:00
During the first week or two of January the Bear servers were experiencing some instability. The resource usage would go through the roof causing a short period of cascading timeouts and leaving me scrambling and stressed. This was a fairly complex problem to solve1, and one that I wracked my brain over for a good few days. However, the root of, and solutions to the problems, didn't come during the time spent sitting in-front of my computer, but instead during a 3 hour drive down the East Coast. No music, no podcast. Just me with my thoughts.
I've come to appreciate time spent with nothing but my thoughts. It's something I'd escaped for years. In the modern age it's so easy to always have some kind of entertainment streaming. I'd drive with a podcast playing, or do house chores with a YouTube video in the background. But something is lost in doing this. There's a reason that "the best thoughts come to you in the shower". And that's because we haven't figured out how to inject consumption into our showers gracefully (yet).
It turns out that complex problems, self-actualisation, and meaningful thoughts require time spent with oneself. This could be through journaling, meditation, or prayer. But I've found that so many other activities offer space for this. For over a year now I've exercised without headphones on. I've found that not only am I more focussed on my workouts (the actual movements, the mind-muscle connection, and pushing closer to my limits), but between sets my mind gets to wander. It allows me to plan my day, to consider problems I'm working on, and generally leads to a calmer, more collected me.
And so, one of my intentions for the year is to spend more quiet time with myself. This means not always listening to a podcast while driving. Or doing laundry and chores without any entertainment in the background. It means leaving my phone at home when I go to the beach or take a walk. And when I'm working on my crafts, not having anything playing that draws me out of the experience.
I like being in my head. And I feel the more time I spend with myself, the more I love me.
It turns out the issue was a combination of a massive bot network disrespecting robots.txt and trying to scrape every Bear blog, slow horizontal scaling (30 seconds), and some inefficient endpoints. This has been solved through more granular WAF rules, rate-limiting, better horizontal scaling tools, and more granular logging. As well as some efficiency cleanups on some endpoints.↩
2025-01-27 15:06:00
Given recent events in the blogging space (hello to all Cohost and Wordpress refugees), I wanted to take a moment to share my vision and commitments for Bear.
First things first: Bear isn't going anywhere. No sudden shutdowns, no surprise acquisitions, no pivot to becoming an AI-powered metaverse blockchain solution. Just simple, clean blogging—now and in the future.
Bear won't shut down. Period. I've seen too many great platforms disappear overnight, leaving their communities scrambling. This is made worse when the platform is your personal garden and online neighbourhood. That won't happen here. Bear is built to last.
Bear won't sell. I'm not building this to flip it to the highest bidder. No VC funding, no external pressures, no "exit strategy." Bear is independent and will stay that way.
Bear won't show ads. Your blog is your space. No flashy banners will suddenly appear one day, and no sponsored content. Just your words, your way.
Bear isn't just a weekend project—it's built with longevity in mind. The codebase is intentionally simple and maintainable. The infrastructure is robust and redundant. Everything is backed up religiously (and then backed up again, just to be sure).
I'm not just thinking about next week or next month. I'm thinking about Bear being around in 10, 20, 50 years. That means making smart technical choices now that won't paint Bear into a corner later.
In this way, Bear doesn't have explicit integrations with other tools and infrastructure. It is self-reliant with the ability for users to customise their blogs and build out those integrations as they see fit. So while it is possible to integrate blogs with newsletter tools, Mastodon, Bluesky, and The Fediverse at large, it's not the default.
This is a morbid topic for me to write about: what happens to Bear if something happens to me? I've got that covered too. There's a detailed succession plan in place, including:
So if I were to be incapacitated in any way, the platform will live on.
I've recently chatted to a few bloggers and legal professionals on what a good structure looks like for a project like this. And the common theme was that the legal structure didn't matter nearly as much as the intentions of the people running things. We've seen our fair share of open-source projects become sour (see the recent Wordpress drama) or abandoned entirely. We've seen OpenAI become ClosedAI. There's a common thread here. Trust isn't just a legal structure, but a social contract.
With this is mind, Bear will continue to run as a PTY LTD where the company exchanges some extra add-ons for money, and uses that money to maintain and improve the infrastructure (and allows me to focus on Bear full time). Perhaps a more fitting legal structure will present itself in the future. If you have any ideas please pop me an email.
I've also been thinking about what kinds of organisations last the longest, and there are a few that come to mind:
I'm not sure how this information is best applied, but it's telling that 'growth at all costs' inevitably leads to the dissolution of the company.
Bear is doing great. Not in terms of market share or valuations, but in staying true to what matters: giving people a reliable, simple, and independent place to share their thoughts online.
If you're tired of platforms that treat you like a product, welcome home. Bear is here to stay.
Keep blogging,
Herman Martinus
Creator of Bear