Golden Mountain
Today was a tourist day! After enjoying the masked dance in the royal theatre I made my way up the Golden Mountain Wat Saket Ratchawora Mahawihan. It is 344 small steps (probably not DIN 18065) to the top where a golden Pagoda crowns the artificial mountain.
Along the way there are lots of interesting corners and tidbits of information sprinkled throughout. Many many buddha statues but also interesting information about the vultures that lived here in the 19th century during cholera times. The view from the top is worth the 100THB entrance fee alone.
Khim
Coffee at Kinokuniya
Laundry Day
Being on the road this long lends itself to a certain rhythm. Not every hostel or hotel has a laundry service or some of them charge outrageous per-piece prices I am not willing to pay. Usually there is a full service laundry shop nearby wherein the workers will wash, dry and fold all your laundry until the next day for a per kg price.I used many such shops in the Philippines and in Vietnam. Always very happy with the result and the easy access of them.
In rare cases I will do my laundry in a laundromat myself. Here in Silom I don’t really have any good laundry services nearby and even the closest self-service laundry is 10-minute walk. No problem: just jump on a grab bike or walk the short distance up to Decho Road.
In a small side street in the back houses is a glorious laundromat. The machines are quick and easy to operate with signage being clear and in English. You buy your detergent from a vending machine on the wall for a mere 5THB. You then spend 60THB for the washing cycle and 50THB for the drier. I won’t put some shirts in the drier in risk of shrinking them to doll sizes.
The wash takes 25 minutes. Just enough time to go around the corner and enjoy a nice hot bowl of duck noodles and have a short chat with the duck noodle lady who speaks English very well. Then back to the laundry and change my clothes from the washer to the drier. Another 28 minutes to go I check out the assorted goods of the 7-11 around the corner. After cooling down inside and buying water, vitamin-c drink or to be honest any kind of snack I head back to the laundry a last time. I bundle up all my fresh clothes and head back to my accommodation.
I do this about once a week and usually am done in about 1.5 hours. Not as easy as having a washer and drier in the apartment with me, but I find it to be soothing activity that brings back a bit of structure into this current vagabond life of mine.
Sri Maha Mariamman Temple
Hungry I stumble down the Si Lom Road in search for food. I smell the familiar spices of south Indian cookery. I get lucky next to the Sri Maha Mariamman Temple. A huge Masala Dosa being brought to my temple. Filled with lots of potatoes. I revel in memories of my trip down to Bengaluru a couple of years ago. Sweat running down my back. The heat of the chilis combines with the unrelenting humidity of rainy season.
Silom Sathorn
This area is probably my favorite. Vendors sell prepared food in bento boxes or cups. Come noon workers from the nearby business towers swarm the street. Even then, you’ll find plenty of quiet backstreets. The locals seem relaxed and there is plenty to explore.
jo - JSON from key value pairs
Reading discussions
on creating JSON on the command line gave me the idea to create my own small tool called jo
.
You can find it in my belt repository on codeberg .
If you want to install using go:
go install codeberg.org/usysrc/belt/jo@latest
It takes a number of arguments in key=value
format and generates json from it.
jo user=untilde
{
"user": "untilde"
}
It also supports nested keys.
jo "users[untilde][url]=untilde.co"
{
"users": {
"untilde": {
"url": "untilde.co"
}
}
}
If you pipe in some pairs you’ll get a mix of both.
echo "name=untilde" | jo "url=untilde.co" "status=hungry"
{
"name": "untilde",
"status": "hungry",
"url": "untilde.co"
}
On the BTS
I am happy that I am staying close to the BTS. When I fancy to go somewhere I can just jump on the train. They are frequent, cool and cheap.
My Go CLI Tools
Working with the CLI is still one of the main modes of computation for me. My approach to scripts and tools on the command line has changed. Instead of writing complex ‘god’ shell scripts that try to cover all edge cases, I began to write a lot simpler scripts. Yes, they might not work in all situations, but reading and maintaining them is a lot easier for me.
Since working with Go is so comfortable to write, I started to write more and more CLI tools in it. I collect those tools in my belt repository on codeberg .
A couple of tools that are included currently:
├── hasenfetch
├── hex
├── jenv
├── jo
├── nibs
├── obs
├── pal
├── repo
├── serve
├── slow
├── ssl-expiry
├── timezone
├── urlencode
├── uuid
└── xls-format
I appreciate a lot of what Golang is doing, and some CLI tools are just thin CLI’s around a Go function. But Go is great for some more complex tools. Charm makes excellent libraries that I often use. Cobra is very useful when a tool grows to have more rich CLI options.
When writing a Go tool I still practice the approach that less code is better. I start with just a main.go
and as the tool evolves I slowly refactor it into Cobra cmds or different files.
I also make extensive use of code agents to write and rewrite. Nonetheless, I like to think there is still a human touch in these tools. If anything, this is a great way to learn and improve.
I usually try my idea for a new tool and put it in my labs repo on codeberg . It then might graduate to belt if I use it for a while, and I get the impression of it being kind of well-rounded.
I can only recommend anyone to also create their own set of tools like this. It feels great to be able to add features when needed and there is a subjective boost to my capacity not only on the terminal but to my computing in general.