After Thirteen Years

If you eat halal and have been to the charming Jeju island in South Korea, you must’ve known about Bagdad Cafe. That small Indian restaurant, located right at the heart of Jeju city, is pretty much the only place that provides halal-licensed food on the entire island.

I had some pictures posted on Instagram about the times I was there with co-workers from Automattic, and yesterday I got some likes on them from Bagdad Cafe’s Instagram account. I didn’t know that they have a presence in Instagram, so I went and checked their pictures. And that’s when I found this fascinating announcement:

(Update: the Instagram post seems to have been archived or deleted, but I still have the written version below)

The notification says:

Thank you for all the love and support you give us. And we deeply regret to inform you that we will be closing Today (Sep. 4th, 2017) for the first time in 14-year history of BAGDAD only to come back with better service and food as an answer to your love. We sincerely apologize once again, and thank you very much for your unchanging supports.

-BAGDAD

How amazing it is that they took their first ever break after being open non-stop for thirteen years. I can’t imagine working on something continuously, every single day, throughout the seasons, for 4,748 days.

It’s quite heartwarming how they said they will come back better “as an answer to your love“. That made me feel bad that they had to apologize so much about it. It seems to me that if you’ve been available for 13 full years, you deserve all the break you want. Take all the time in the world! You’ve more than earned it already.

If I close my eyes and imagine what it’s like to be there, I’d describe it as a well-worn but clean, quiet, rustic place. I remember the small but surprisingly heavy front door that can be tricky to open (do I push, or pull?). I remember the mismatching tables they have, and the colorful ceramic tiles on them that’s cracked on the edges. I remember that they use regular stand fans instead of the more common ceiling AC for the tables at the end of the room. I remember the pictures of various international frisbee competition teams (of all sports) on the wall. I remember the ceramic elephant statue. I remember the dimly lit room, perfect for a conversation over dinner with the rest of my team.

In other words, it’s exactly how it would look like if it has been used for thirteen full years with a lot of love and care. I hope they enjoyed their break.

 

 

Dogs in Ancient Islamic Culture

From Alan Mikhail, author of The Animal in Ottoman Egypt:

It’s no surprise that the first Muslims had so many dogs. Most of them kept large flocks of sheep and goats, and dogs helped to manage and protect these other animals, preventing them from running away and scaring off would-be thieves and predators. Sheep and goats were these early Muslims’ food and capital, and dogs helped to protect these investments.

[…]

As Islam spread throughout the Middle East and the world, it moved from being a religion of nomadic peoples to one centered in cities. Many of the world’s largest cities in the millennium between 700 and 1700 were Muslim cities. As they did in the countryside, in cities too dogs played vital roles. They of course continued to protect property and shoo away intruders, but in cities dogs served an even more important function—they ate garbage. From Damascus and Baghdad to Cairo and Istanbul, urban authorities supported dog populations as consumers of waste to keep city streets clean. Muslim leaders built watering troughs for dogs, many mosques threw out food for them, and butchers used them to keep away rats and other vermin. Humans who committed violence against urban canines were often punished. Muslim cities were much cleaner and more pleasant places with dogs than without them.

All of this meant that Muslims throughout the world were in regular daily contact with the many dogs in their midst. They recognized how useful canines were as guards and cleaning agents and, we can only presume, developed quite intimate relationships with them built around regular contact and the kind of affection bred from codependence.

Modern Web Dev Overview Presentation

My knowledge on web development practices is several years old, and I find this presentation by Mark Erikson to be a great overview. The number of tools and doodads being in use right now can be overwhelming, and the presentation helped fill in the knowledge gaps in my mind about which one goes where, and why. Highly recommended.

The presentation also linked to this eye-opening (to me anyway) comment on Hacker News:

By the same note, you likely won’t be writing a complex desktop application without some tooling installed, with similar pre-requisites. I don’t know why people get so irritated at “JS tooling is hard”. Try writing an (INSERT FRAMEWORK HERE) app outside the browser.

People assume that writing an APPLICATION for a browser is easy, which is why people get stuck maintaining monstrosities that are disorganized, not composed and tens of thousands of lines of spaghetti. Writing an application in the browser deserves just as much respect as one would give towards setting up the database & schema or creating a service layer.

That lack of respect for front end code is a big reason as to why front end projects have crappy code. React is a real break from this on so many levels… Yes, you’ll need (webpack|jspm|browserify) with (babel|typescript), and likely (postcss|less|scss) in place closer to the start than the end. Much like if you’re writing code for a desktop application you’ll likely need at least an IDE installed, and potentially several libraries close to the start.

My current tooling of choice is webpack + babel, depending on the project I may bring in scss or less, and react tooling as needed. Using CSJ or ES6 style module syntax means cleaner code that’s easier to restructure. Using webpack means being able to bundle resources in a logical flow. Working on a project without webpack + babel is just painful by comparison… I’m working on an ng1 app at work that’s less than 6 months old, and feels like it was written in 2011… having to add .js files to some common point, and not being able to easily refactor services/controllers/directives/components into discrete modules is pretty painful in general.

What does it take to get a Java application going? Maven, some build system, some other tooling, and understanding the component/class hierarchies? It’s not any easier than working with any new tooling.

Surabaya Trip Photos

Here are some photos from a trip to Surabaya last week. Coincidentally there was a night market event near our hotel celebrating the city’s 724th anniversary.

All of these are taken with a Sony NEX-6 bought secondhand from Japan (where it is not possible to change its language, but that’s for another story) using the neat Sigma 30mm f/1.4 DC DN Contemporary Lens.

They were all edited and posted to Instagram first, and I merely uploaded the Instagram-generated files from my phone. Mostly out of laziness, but also to see how the images would work on a bigger, non-smartphone screen. The file turns out to be 1616 x 1080 for the landscape ones (example), which seems quite decent for web uses.

Wrist Rest and Keyboard Ergonomics

I am currently in the middle of finding a new keyboard to use. Typing is something I do a lot in my work, and a keyboard is the main interface with which I produce, so finding the best possible tool for it seems like the logical thing to do.

My current main keyboard, the Microsoft Sculpt Ergonomic keyboard, is a good one. It’s a bit on the large side, though, and it’s not something I can travel with comfortably. It’s also starting to slightly fall apart after about two years of daily use. I am also curious about using a mechanical keyboard, and want to see if it helps improve comfort or speed or the feel of typing (or hopefully a combination of those).

I found the keyboard that matches my criteria the most, but this post is not about it.

Before deciding to get that keyboard, one thing that bothered me the most is the lack of wrist rest. The Microsoft Sculpt has a large wrist rest, and I always put my wrists on it whenever I’m typing. So I was worried that the lack of wrist rest will cause ergonomics issue. After reading a little bit more about wrist rests, though, it turns out I’ve been using it wrong the whole time.

Here’s a picture:

keyboard_posture
(Source)

It turns out the right way to type is to sort of hover your wrist above the keyboard. A wrist rest is to be used to rest the wrist on when you’re taking a break from typing. The Occupational Safety and Health Administration from the United States Department of Labor says:

  • comp_keyboard_bent_wrist
    Figure 1. Bending the wrist upward.

    Performing keying tasks without a wrist rest may increase the angle to which users’ wrists are bent (Figure 1). Increasing the angle of bend increases the contact stress and irritation on tendons and tendon sheathes. This is especially true with high repetition or prolonged keying tasks. Keying without a wrist rest can also increase contact stress between the users wrist and hard or sharp workstation components.

  • Resting the wrist/palm on a support while typing may inhibit motion of the wrist and could increase awkward wrist postures.

So it turns out I have been using an ergonomic keyboard the wrong way. No wonder my palm/wrist area is usually sore after a long session of typing, the pressure they get every time I’m typing must have been the cause.

Right now, while waiting for the new keyboard to arrive, I’m trying to fix my typing posture again. It’s hard to remove an old habit, but it’s probably going to be easier for things that are done regularly like typing.