• The Week #30


    • Despite people are moving around more than the state of emergency last year, it appears to be working. Covid numbers continue to drop in Japan. It seems like they're going to extend it until March 7th. They can always decide to end it early, but I hope they don't.

    • Tanzawa has been online for almost a month. And looking back at that month it's really improved. Automatic efficient image loading, RSS, and webmentions... and my computer was even out for repair for one of those weeks. There's still a lot yet on the road map, so I need to just take it a day at a time.

    • Leo's taken to my old dslr and we went out of shot photos of the Odakyu line for a bit over the weekend. I always forget how much fun it is to shoot with my dslr. The images are so crisp and the depth of field. Portrait mode on my phone is good - but the real deal is soo much better and soo much more satisfying.

    • We started a new experiment at work. One day a month we stop client work and fully focus on things that are "important but not an emergency" – as those things tend to never become priority and hence never get done. We're split into different teams. Some are re-working our company Slackbot, others are getting better with frontend tech and so forth. I picked team UX, where we're trying to figure out how, as a company, we can also "do UX". This is perfect for me. I've been wanting to spread the passion for well designed software and forms within the company for years now, but I've never had the time to dedicate to it. This collaboration day finally gives me the opportunity.

  • The Week #29


    • President Biden was finally sworn in to office, allowing me to breath a huge sigh of relief. His first actions have been exactly what I'd hoped he'd do (rejoining the Paris climate accords and the WHO, canceling Keystone XL pipeline etc...) and reversing some of the heinous things I'd forgotten about in the avalanche of bs that came out of the prior administration. I feel like I can watch the West Wing again and have it not feel like a cynical joke.

    • Speaking of the West-Wing, I watched the the first press briefing from Jen Psaki and immediately was reminded ow C.J. Cregg from the show. Apparently I wasn't the only one and someone even wrote a column in the LA Times to please stop comparing the two (one being real, one being a fictional character).

    • Covid numbers are finally going in the right direction. Yesterday was in the 600s in Tokyo down from 2000+ a couple of a weeks ago. There is a false sense of security in these numbers though as monday is always the lull of the week and due to the surge, they've stopped doing much (all?) contact tracing.

    • I got my computer back from repair on Saturday. They replaced the battery, top case, and keyboard. It feels like a brand new machine with the new keyboard. The battery itself was manufactured in May of last year, so there shouldn't be much / any aging from it sitting in a warehouse. The only "issue", and I'm not certain it wasn't like this before, is the rubber seal around the edge of the display appears to have been damaged right where you'd usually unlatch the computer. I don't remember it feeling rough and worn down, but it's entirely likely I just didn't notice.

    • I shipped RSS feeds and web mention support in Tanzawa. This now means that Tanzawa can participate in a distributed social web - rss feeds to sending data places and webmentions for receiving comments, likes, and so forth. Tanzawa still has a long ways to go before it's ready for general consumption, but I'm making slow and steady progress.

  • The Week #28


    • I made good progress on Tanzawa this week. Last week I got image uploads working. This week I got the base of what is required for image uploads to preserve privacy and reduce energy consumption.

    To preserve privacy, Tanzawa is automatically stripping all exif data. But rather than just throwing it away, I’m archiving it in json in database. Why?

    Two reasons: 1) I can’t quite articulate the sales pitch well yet, but I want Tanzawa to become your home on the internet, exif data is your data, and Tanzawa should facilitate you accessing / using your data as much as possible. 2) You could totally build a photoblog or Flickr-like gallery very easily with Tanzawa if only you could access exif data...and you can.

    The other goal is to be as “low-energy” as possible. Do as little computation as possible and send as little data across the wire as possible. To that end images are now automatically converted to webp the first time a user visits the page with a browser that supports it. Subsequent visits will get the pre-converted image. No need to introduce background tasks (two extra processes, redis and celery) to reformat pictures that may never be used. 🙌🏻

    Once Pillow supports avif (seems soon), it will offer that as well, for even more savings.

  • With all that focus on Tanzawa, I didn’t run once in the mornings. Running in winter is hard.

  • My mid-2014 MacBook Pro’s battery finally bit the dust becoming quite unreliable. I took it in to the local authorized repair shop to get it replaced and since it’s “vintage” they have to order parts from Apple, and thankfully they still have some in their warehouse.

    Upon the initial inspection the battery had started to bulge as well, but I hadn’t noticed. They’re replacing the battery and the top case for about ¥30,000 (300 usd). Much cheaper than a new machine, especially as it meets my needs perfectly.

    No computer for a week means no code progress on Tanzawa, but it does give me time to plan and run again.


  • One of my goals as if late is to reduce meat consumption and increase veggie intake. We’ve been doing well, in most dishes using half the meat we’d normally use and adding veg in its place. As we can’t really go out and eat, ^1 I bought a book that had vegan recipes from around the world. A lot of the recipes are curries and sorts from India, Vietnam, Thailand or already vegetarian dishes from the Middle East and such — foods with flavors we would normally only get by eating out. I’m excited to try it out.

  • I found and binge watched Pretend it’s a City, a documentary about Fran Lebowitz. She’s hilarious and there’s a lot of lovely shots of New York.


  • ^1 despite a state of emergency, nothing technically stopping us from eating out, except for a fear of getting a virus and death.

  • The Week #27


    • This week marked my 10 year wedding anniversary. We got married in typical Japanese fashion, a trip to city hall to fill out the paperwork. For some reason we didn’t think to take a photo when we got married, which I regret. I think it was a combination of everyone looking far too busy to ask and that, at least at that time, you don’t really take photos inside city hall.

    I remember the couple after us was what appeared to be a a Russian? woman and this old guy with one of those furry hats with the flaps on all sides. It may or may not have been a marriage for love, but I hope they’re doing well.

  • Sophie went to the vet and got her numbers done again. They’re now perfectly in the normal range! The doctor is decreasing her medication and we’ll check again in a couple of months to see how she responds if we can keep the lowered amount. My wallet hopes we can.

  • The battery officially died on my laptop this week, which has slowed progress on Tanzawa. It’s a mid-2014 MacBook Pro, so almost 7(!) years old. Usually I’d think about replacing it and recycling this one by now, but it works fine. And when I consider the ecological cost of manufacturing a new laptop, I want to use my current machine for as long as possible. A new battery should extend the life so I can use it for a full decade.


  • Speaking of Tanzawa, despite battery woes, I still made a bunch of progress. I got image support working, so you can add / remove images from posts.

    I’ve started working on image processing and optimization. I strip all gps exif data from photos when they’re uploaded, but before I do, I’m storing the gps coordinates in the database. Why? By default I want to preserve privacy, you don’t necessarily want to share your exact location when you’re sharing a photo of the garden.

    But I have this idea of letting you group entries (checkin, status, photos, blog posts) together as a trip and display it on a map. And in those cases we may want to use the coordinates, so having them available but not public by default is a good compromise.

    Another goal is Tanzawa is to use as little energy as possible, which means images must be small so we transmit as little data as possible. I figured out how I can do that, without generating a zillion thumbnails and sized photos (though resizing is part of the solution).


  • The Week #26


    • Happy New Year! I spent New Years Eve like I usually do, going to bed early and waking up before the sun, as per usual. It was great. We went to the local shrine around 10am on new year's day. We were planning to skip the visit or wait until after the holidays, but while walking past the shrine Leo wanted to see the koi and since there was hardly anybody there then we decided to just do it. I'm glad we did because there was a long line an hour later. One thing of note is that because of covid19 they took down the rope with the noise maker at the top that you shake when pray.

    • Leo started riding his bicycle (the type without pedals/cranks, so he can practice balancing) a lot this week. He rode it to the grocery store and riding the bicycle was easier than walking, which surprised me. Without the bicycle he likes to run the entire way, but since he doesn't look for cars (despite warning him to stop etc..), I end up having to run/walk with him. With the bicycle his pace is consistent and he is more cautious, but he doesn't want to stop riding so we end up making 3 trips to-and-back from the store.

    • Last week I talked about a blogging system. This week I managed to get a base version of it built: 🏔Tanzawa.

    My goal with Tanzawa is to make it easy to have an energy efficient home on the internet. It will be the place to store your statuses, your blogs posts, your runs, your checkins, your links, whatever you want. And since it's your home you should have easy access to your data that's stored in a clear and logical manner. It won't be for everyone, but I hope that people will find it useful.

    Right now it only supports posting of text statuses. Next up is adding support for images. Once that's finished I plan to start on syndication to Twitter and webmentions before finally moving on to posts, checkins, and other types.


  • The Week #25


    • The slugs for "The Week" posts are in the format "YYYY-WEEK_NUMBER". The idea being I'll be able to go back and see exactly what week #36 of each year was like. Nice and simple. I always thought there were 52 weeks and for the past few weeks I've been noticing that I was going to get 52 before January 1st. And indeed this post's slug is 2020-53. Surely I must have fudged the numbers. Double checking with Python's datetime seems to indicate that 53 is indeed, correct.

    Python 3.8.2 (default, Aug 25 2020, 09:23:57) 
    [Clang 12.0.0 (clang-1200.0.32.2)] on darwin
    Type "help", "copyright", "credits" or "license" for more information.
    >>> from datetime import datetime
    >>> datetime.now().isocalendar()
    (2020, 53, 1)

    The isocalendar documentation says that 53 is a valid value. I thought that maybe it was because this year was a leap year? Or had my teachers lied to me about the whole "always 52 weeks in a year" thing? They already lied to me about "i before e except after c" as a gospel of spelling which, turns out, is wrong just as much as it's right. Even something like "52 weeks except when January 1st falls on Wednesday" or something equally half-correct half-the-time would have been nice. But I digress. According to the docs:


    The first week of an ISO year is the first (Gregorian) calendar week of a year containing a Thursday. This is called week number 1, and the ISO year of that Thursday is the same as its Gregorian year.

    TIL

  • I tried to visit my favorite Starbucks next-door in Fujisawa. When we pulled up, the parking lot was much emptier than usual and the drive-thru was closed. We've been pretty good about cafes (at least by my own judgement) – eating outdoors the vast majority of the time and not visiting places that are crowded. Turns out one of the staff came down with covid-19. Not worth the risk. The new strain seems to be spreading quite well in Japan at perhaps the worst possible time New Years, which spiritually like Thanksgiving is for Americans.


  • Christmas marked the last day of work for the year and until the 5th of January. Very grateful to have a week off. Leo got the Anpanman Language Field Guide Super Deluxe from Santa. It's an illustrated book with a pen - and when you touch the pen on the pages Anpanman says what what's called in English or Japanese. Each page has a different scene too e.g. in the city, around town, in the forest, the kitchen, or even body parts and the like.

    Leo had originally borrowed this toy from a friend a few months back and he played with it almost non-stop. Keeping Leo busy is nice, but more importantly it help increase his English vocabulary as well. Since borrowing it he would mention the toy at least once a week. Go Santa!


  • With a week off I've been thinking to blogging, privacy, data-ownership, and the indie web. I think I've come up with something that could be very cool. I'm a little afraid I'm going to end up building "the best custom setup for blogging" instead of "blogging" and just using Wordpress, but it will scratch some itches. I don't want to go into detail until I've built a bit more of it and proven the concept to myself and or have something to show.

  • The Week #24


    • It's not everyday a man goes to war, but this week started my war with the crows. I usually try to keep on good terms with them because crows are smart, their beaks are ginormous and I stand out - they know where I live. They started razing the trash.

    Like most trash areas in our neighborhood, ours is a collapsable green box made of green netting with an aluminum frame. Before we moved here a truck backend in to ours and broke / deformed our top. More over, most trash spots are on flat ground, our's is on a small decline. With the decline unless the sides are square crows and pick at the trash from the gap between the ground and the frame. Since the truck hit our trash, when the box is square there's a crow-size hole to let them come and go freely from the top.

    The provisions that the neighborhood associated put on helped – the panels tied to the netting kept the crows at bay. But they were just thin styrofoam and degraded after a couple of months. Rather than get more thing styrofoam that looks temporary, I took matters into my own hands. I found some nice hard plastic (like you'd make a lawn sign out of, but thicker) and tie-wrapped it to the netting so that it extends a bit beyond the frame closing most of the gaps. I'm happy to report we won the first battle. Let's see how it continues to hold up.


  • I found Website Carbon Calculator and added their small bit of JS that calculates the carbon cost of each page load and displays it in a widget. It's down at the very bottom with my recent checkins / categories and such. Check it out.

  • It's almost Christmas. I've finished my shopping and everything that hasn't already arrived should arrive in the next day or two. As has become tradition, I send my dad a BBQ'd brisket from Salt Lick. Expressing the cold pack of meat to Washington costs almost as much as the meat itself. I wish they shipped to Japan.

  • The last time I went to the Salt Lick was with my dad. We got the all you can eat, which doesn't have any to gos. But somehow my dad managed to get a container of bbq to go, took it back with us to the hotel, put it in the freezer, and took it carry-on with him 5-hours back to Washington. Maybe this is where I get my sense of optimism, that anything's possible if you just give a go.

  • We went to the beach for the first time in what feels like forever. Didn't go in to the water, but just to enjoy the views. Winter Shonan is the best. The crowds from Tokyo are gone and it's just locals and surfers – it's great. We usually go with the entire family around the New Year. I think it's because when we used to live in the US, we'd visit for the new year, and the one place we always missed was Shonan and Enoshima, so we'd always visit.

  • I'm thinking of moving Past Projects to the wiki. Moving into the wiki would keep in line with my digital garden concept. All listy type stuff goes into the wiki. On the other hand, this could become a blog + profile style site in the future (really just moving the blog off the front page), and in such a case keeping past projects with a similar style as the rest of the site is desirable.

  • The Week #23


    • In addition to reading and writing notes about Atomic Habits, I've also started to re-read some books that inspired me in the past and write notes so I can reference them later. This week is the fantastic book Web Form Design ( my notes ). Do you really need a book about such a mundane topic? When you consider that forms are the bottleneck for all online interactions, yes.

    • I managed to run 5km 3 times last week using Habit Stacking. The habit is basically as follows "After a cup of coffee at 5:30am I will run for 30 minutes". Since I'm not fast enough for a 30 minute 5km yet, it usually works out to 30 ~ 35 minutes.

    • Stacking my running habit around coffee is what seems to work for me. When I first started running (and managed to sustain the habit for 5 or 6 months) in 2018, it was also similar. Except Leo was an infant and I couldn't make coffee at 4:30am without fear of waking him. Since it was summer and the sun rises around then in Japan, I'd go for a run with my endpoint being one of the local 7-11's, where I could get an ice coffee and walk home.

    • I tried the Plant Balls on a trip to ikea, and they're proper tasty. Technically I got the meatballs and my wife got the plant balls and we shared one, but I think they're my new default.

    • I bought my first proper bookshelf and it's in the minimal style of bookshelf I've always wanted (photo in my tweet). I wish I had the space so I could chain multiple shelves together for a wall of books. Like most of the rest of the furniture in my house, it's from Muji. And it's properly screwed into the walls because this is Japan.

  • The Week #22


    • Japan OKed free Covid-19 vaccinations for residents. The goal is June 2021 for everyone to get vaccinated - just in time for the Olympics :) Unfortunately in the mean time, numbers continue to rise, though it appears that they're starting to level off a bit.

    • As I'm the head of the block this year in my neighborhood, I have some extra duties, like attending a monthly neighborhood association meeting and disseminating information to my block. Each month a portion of the heads have a neighborhood patrol duty. We walk our block with official day-glow green neighborhood watch vests, a lantern, a mini-light saber (used by all the traffic guys), and two long pieces of wood.

    The guy in front slaps to wood together twice and we repeat an announcement in unison. This time it was "空きすの用心、火の用心", or "Take precautions against burglars. Take precautions against fire". It seems appropriate for this time of year. The patrol took about 20 minutes, helped me close my rings for the day, and I got to see parts of the neighborhood I'd never been.


  • I finished reading The Little Prince. It's one of those books that's a classic and everyone says you should read. I quite enjoyed it. It's the first book I finished reading cover-to-cover in ages (I tend get what I need from books about mid-way through and move on). Perhaps that it was less than 100 pages made it easier to finish.

  • I started reading Atomic Habits by James Clear. I'm compiling my notes on my wiki. The first few chapters remind me a lot of The Power of Habit (and he says as much in footnotes) - but it has some ideas that I really like. So far my favorite is " Each action is a vote for the type of person you want to become".

  • The Week #21


    • After 17 years Growl, the open source precursor to notification center on OS X, is going into retirement. I'm a bit sad as Growl was one of the first open source projects I ever contributed to. Chris (the project lead) and I used to meet up at the local diedrech's coffee and talk shop.

    I did the initial implementation of the automatic album art downloader in GrowlTunes, where GrowlTunes would pull album art from Amazon if you didn't have album art set in iTunes. I also came up with the (I think still current?) settings interface and did a horrible Japanese translation of the app (that native speakers quickly noticed and fixed 🙏🏻).


  • I reached my running goal of 40km this month despite not starting back up until about a week into the month. Assuming I keep pace, next month I should be able to run about 50km.

  • I've started playing with ripgrep / sed a bit more at work for a large(ish) refactor and inspired me to start keeping track of the handy commands I use at work with examples so I don't have to experiment / fiddle the next time a similar task comes along.

Previous 3 of 5 Next