17/06/2026
Ahoy Townspeople #010
Strap in, this is gonna be a long one. As you can see, this is the first update in a whole year! So we have a lot of catching up to do.
PS: This article sat in the drafts for so long that almost every TikTok and YouTube video is gone. I decided to hoard and back up everything before even adding it to the blog. >:(
Updates
Recently published VatanUgruna.com. It’s a memorial map for fallen Turkish soldiers and veterans. The idea was to take the historical records and actually map them out, so it plots their birthplaces and traces the exact path to where they fell or were wounded. I’m actively trying to find some historical records, so if you know any, please let me know.
Built a mostly 3D printed pen plotter. I was really frustrated with the bill of materials for the open-source ones. Apart from the step motors and drivers, the only non 3D printable part is 4.5mm bearing balls (if you want a wobbly output, you can get by with 3D printed bearings, your mileage may vary).
The current state of the CAD and Python code is not ready for the general public though. It was very fun to design, iterate and work with CAD design and Gcode generation and interpolation. I have a newfound respect for the 3D printers and the slicing software maintainers. :^)
Surprisingly, the most infuriating part was the un-rasterization of the input. How can you translate a rasterized image into a vectorized one… I’ve used two methods, one is to dither the image into a black and white image and then connect the black pixels into a path. We don’t want to lift the pen off the paper if the next pixel is also black. The other method is to outline the image. There’s an example in the left top corner of the GIF below. Basically, use OpenCV’s
findContoursfunction to find the contours of the image and then use theapproxPolyDPfunction to approximate the contours which works great!
![]() |
- 3D printed a fabric weaver. Made my girlfriend a scarf. As you can see, it’s not fully loaded. As in the fabric could be as two times thicker but because the strands were too fluffy, they blocked each other when changing direction, so…
![]() |
![]() |
I also 3D printed some flowers and hooked up to a ESP8266 WiFi board to control them with a web interface. I used WLED for this. I routed each individual strand to its own dedicated LED on a WS2812B strip. The idea came from the Roll’s Royce’s Starlight Headliner.
I also experimented with glow in the dark pigments, so even if the lamp is off, the flowers will glow in the dark. :^)
![]() |
![]() |
Currently tinkering with data analysis on seat availability data for Turkish Railways. Gathering data for now. :^)
I’ve worked on a meeting transcriber which can take a single audio file and diarize it into separate speakers. There are some open source solutions out there and definitely some paid solutions too. I wasn’t really satisfied with the results of the open source solutions and couldn’t bring myself to pay for the paid solution. In the end I ended up using speaker embeddings, UMAP with HDBSCAN (my fav combo :^)) and Whisper.
I’m writing a post about it. If it’s out, it’ll be here.
I’ve always wanted to build a Turkiye specific GroundNews clone. I work on it in my free time. The main challenge is not to find, but to match the exact same news articles from different sources. Built a proof of concept using sentence embeddings, not entirely confident about the results though, for now.
Tinkered with a lot of open source projects. Thinking about creating a curated list of projects I’ve used as a standalone page but until then, here’s a few of them:
- ntfy.sh - Send push notifications to your desktop and phone (and by extension, a smart watch) with a HTTP API.
- Plausible Analytics - Self-hosted, lightweight web traffic analytics.
- EvolutionApi - Control your WhatsApp profile with an HTTP API and webhooks. Can be used in n8n too!
- n8n - Workflow automation tool but has so many out of the box integrations. Works great when you don’t need anything super custom. Beware, here be dragons. :^)
- WLED - Control your LED strips. Comes with an API and a lot of presets. I’ve primarily used it to simulate sunrise so I can wake up at a reasonable hour during the winter.
- Evidence.dev - BI alternative that compiles static SQL queries into a single page. I was looking for a Metabase alternative that didn’t hog all the RAM.
Not every personal project leads to a success. Here’s a few of the ones that didn’t make it:
- Signed up for a 5K run with my girlfriend but didn’t make it. It was a beautiful route through the Büyükada, we went to the race track, couldn’t even finish walking, lol. I’ve got a herniated disc in my lower back. More on that later. :^)
- Electric motor project is also a bust - or at the very best, on hold. I’ve got a lot of parts and a lot of knowledge but I’m not sure if I want to continue with it.
- Automated educational YouTube video generation project. Spent so much time, effort and money but got banned from YouTube. The worst part is that all of my connected accounts were banned too so I don’t even have a YouTube homepage now. >:(
- SLA 3D printer. Using it is a nightmare, the fumes, cleaning, washing, the whole shebang. The results are mindblowing but I don’t need that kind of precision 99.999% of the time.
Weight Loss
Realized this section will be too long for a single update entry. There are more tech stuff after this section. :^)
I’ve gotten a herniated disc in my lower back. I bought an ergonomic chair and a quality desk, thinking that my posture will improve and I’ll have less problems with aging. Welp, I assembled the new desk and the chair without a problem. A week later, I was disassembling the old desk and heard a popping sound, as if it traveled through my entire spine. If this isn’t ironic, I don’t know what is.
After the injury, I couldn’t run or even walk without pain for at least 2 months. Did some physical therapy and excersises, got a lot better but still not 100% there. It also comes back from time to time which is frustrating. I had also been gaining weight slowly before the injury - nothing too drastic, but the inactivity and lack of exercise made it way worse. I’m 194 cm tall so being 95 kilograms wasn’t that much of a problem. I started noticing high blood pressure, increased heart rate from simple activities so I decided to make a change.
I lost 18 kilograms in the last year. I was about 108 kilograms roughly last summer (when the last Ahoy Townspeople update was published) and now I’m hovering around 90. Got myself into the realm of spreadsheets, calorie calculators and all that jazz. Here’s a peek of my calorie spreadsheet:
| Food | Base Amount | Fat | Carbs | Protein | Calories | Price / 100g | Prepared Weight | Fiber (g) | Price / Protein | Protein Density | Calories per Protein |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Cabbage | 100 | 1 | 6 | 1 | 25 | 3.4 | 100 | 2 | 3.40 | 0.02 | 25.0 |
| Milk | 100 | 3 | 5 | 3.2 | 61 | 4.6 | 100 | 0 | 1.44 | 0.03 | 19.1 |
| Light Milk | 100 | 1 | 4.9 | 3.4 | 35 | 6 | 100 | 0 | 1.76 | 0.03 | 10.3 |
| Chickpeas | 100 | 6 | 63 | 20 | 378 | 6 | 250 | 12 | 0.30 | 0.33 | 18.9 |
| Egg | 1 | 5 | 1 | 6 | 73.0 | 6 | 100 | 0 | 1.00 | 0.10 | 12.2 |
| Potatoes | 100 | 0 | 15.6 | 1.9 | 73 | 6.9 | 100 | 2 | 3.63 | 0.02 | 38.4 |
| Buckwheat | 100 | 3.4 | 71.5 | 13.25 | 343 | 7.4 | 300 | 10 | 0.56 | 0.13 | 25.9 |
| Bread | 100 | 1 | 52 | 8 | 256.0 | 8 | 100 | 2.7 | 0.94 | 0.08 | 32.0 |
| Cream | 100 | 18 | 3 | 2 | 164.0 | 8 | 100 | 0 | 3.75 | 0.02 | 82.0 |
| Raw Lentils | 100 | 1 | 63 | 25 | 352 | 8 | 250 | 11 | 0.32 | 0.42 | 14.1 |
| Red Pepper | 100 | 1 | 5 | 1 | 31.0 | 8 | 100 | 2.1 | 8.00 | 0.01 | 31.0 |
| Raw Pasta | 100 | 1 | 25 | 12 | 159.7 | 8 | 100 | 1.8 | 0.67 | 0.12 | 13.3 |
As I said, this is just an excerpt of the spreadsheet. There’s also a version that includes minerals and vitamins but that was a bit overkill for me. As of today, there’s more than 100 ingredients in it. The second tab is for the recipes. There’s a formula that can lookup the name of the ingredient and fill the rest of the columns. So an example breakfast looks like this:
| Food | Amount (gram) | Fat | Carbs | Protein | Calories | Fiber | Price |
|---|---|---|---|---|---|---|---|
| Oatmeal | 40.0 | 2.8 | 26.5 | 6.8 | 155.6 | 4.0 | 8.0 |
| Light Milk | 300.0 | 3.0 | 14.7 | 10.2 | 105.0 | 0.0 | 18.0 |
| Peanut Butter | 30.0 | 16.5 | 1.8 | 8.1 | 191.7 | 1.8 | 9.0 |
| Protein Powder | 30.0 | 1.9 | 1.4 | 24.0 | 118.5 | 0.0 | 60.0 |
| Chia Seeds | 15.0 | 4.6 | 6.3 | 2.5 | 72.9 | 5.2 | 9.0 |
| Total | 375.0 | 26.0 | 24.2 | 44.8 | 488.1 | 7.0 | 96.0 |
Once this system was done, I started working on the meal-prepping side of things. I think I bought 60 or 70, 250 milliliter containers and was surprised that my freezer can hold that many. Also bought a big stewpot (10 liters, more of a witch cauldron). This bad boy can cook 40 containers of chicken breast at once.
I like to prepare the breakfast each day because it’s impossible to reheat a smoothie and I might want to eat pancakes from time to time. Each meal consists of two containers; one for the veggies and the other for the protein. I’ll cook pasta, rice or whatever carb source I want or need for that day but if I’m trying to cut calories, I’ll stick to the veggies and protein.
Generated a week worth of meals for my family, girlfriend and some friends. I think the biggest hurdle in weight loss is deciding what to eat each day. Personally, I can’t trust my own judgement on what to eat if I’m hungry. Also, weighing food is generally a pain in the ass and if not batch cooked, leads to a lot of wasted food. I’m in a hurry! Me, food, mouth, now!
Findings
Latent Space’s 2025 Papers are a great resource for AI research, especially if you’re just getting started.
There are a lot of image manipulation tools out there but my current favorite is Tooooools. The exports work great with Blender and 3D printing software.
I fell in to the rabbit hole of silicone molds and 3D printing. Didn’t make anything useful, yet! Check some example here.
In 1848, Edgar Allan Poe published “Eureka: A Prose Poem”. It touches on the Big Bang Theory, Olber’s Paradox, black holes and the Big Crunch. In 1848, yeah. :^)
Want to tile your kitchen but don’t want it to look generic? Check out PatternCollider. Infinite tiling patterns, some of my favorites are this, this. Just a matter of finding the right tiles. :^)
Saw a resurgence of metal plating of 3D printed parts. Looks great!
Have you ever wondered if there’s a curated list of failed startups? Yup, check out Loot Drop.
Stumbled upon the best - and maybe the only - statistics newsletter for Turkiye, check out Susam Bulten! One of their classic updates is about the Lahmacun index which tracks individual ingredients in this Turkish dish. They write every week but evaluate the index monthly, so I built a real-time tracker for it, day-trading style. Was hella fun! I’ll share the link here when it’s out.
Visualising complex AI architectures is hard. Check out HFViewer for Google’s DiffusionGemma 26B model. Don’t forget to play with the Granularity slider.
Want to explore Paris, Amsterdam, NYC… as a pigeon, whose whole purpose is to find its mate? Check out Pigeon: a Love Story. Hilarious concept. Supports two players too!
P.S: Since most of my projects are Turkish or Turkiye related, I’m thinking of adding a TR/EN toggle to the blog but I’m too lazy to translate everything, so maybe a local LLM will do the trick, in the future. :^)




