Satoshi
'Moris'
Tagomori


@tagomoris
Github
Blog

Organization: LINE Corporation
Location: Tokyo, Japan
Projects: Fluentd, Norikra
Languages: Ruby, Perl, Node.js
2013-08-19

Could you give us a brief introduction of yourself, what you do for a living, and what kind of problems you work on?

My full name is Satoshi Tagomori, but people usually recognize me by my online ID: tagomoris. Recently my coworkers and fellow community members have been calling me 'Moris', taking the latter half of my ID. This is probably easier to pronounce for English speakers, so please call me Moris if I meet you somewhere. :)

I currently work at LINE Corporation, a company providing mobile communication and related services (ex: blog, SNS, etc.). I build the infrastructure to collect and analyze metrics from the services. My day to day responsibilities include the collection and efficient processing of logs from each server, storage and management of large amounts of data, log aggregation / analysis and reporting of the results, etc. I build lots of small tools for various tasks using software like Hadoop, Fluentd, and others.

Do you have any personal pet projects (OSS, side businesses, community stuff, etc.) you can tell us about?

Most recently, I've been making contributions to Fluentd that aren't directly related to my work. I've been hosting/organizing unofficial Fluentd related meetups as well.

What tools (hardware and software) can you not live without?

I used to be particular about a bunch of things (my keyboard in particular) up until a few years ago. But the last few years I've been doing everything (including programming) with just my MacBook Air. The flip side is that I'm helpless without my MacBook Air!

I use emacs for my editor, but I haven't customized it much. When thinking about how to design software, Boogie Board has been fantastic.

Oh, can't forget the Nespresso coffee maker!

What languages and frameworks are you using these days?

I tend to use Ruby, Perl, and Node.js depending on the situation. Since I work close to the system level, I don't use frameworks very often. That being said, I often write code following the architecture and needs of Hadoop and Fluentd.

If I need to make a web UI, I tend to choose a 'thin' framework such as Sinatra.

Could you tell us how you first got into programming, and how you decided to make this your career? Was there a particular moment when you realized that this was what you wanted to do?

We always had a NEC PC at our house (my dad's) as long as I can remember. Fiddling around with BASIC and MS-DOS was what introduced me to programming. Since you can't do anything in BASIC unless you write something, I was able to do "combine FOR and CIRCLE to draw flowers" level programming even in those early years. :)

I honestly can't remember how I decided to make this a career. I guess the decision to enroll in a computer related department in college is a prime suspect, but I can no longer remember how exactly I made that decision. I think we can say that it must have just been natural for me to do so :)

What is your most memorable (triumph, catastrophe, etc) hacking/programming experience?

I unfortunately don't remember too much about the stuff that happened a long time ago... but as for recent episodes, one in particular comes to mind.

I had been struggling with memory fragmentation issues in Ruby (Matz Ruby, YARV) when I updated Perl to 5.16.0 (which had just been released), saying to myself, "Perl is so wonderful since it's so stable!" And what do you know, of course I hit a corner case and get a memory leak bug!! 6 hours later things completely fall apart and I go "NOOOOOOOoooooooooo!!!!" Gotta say I learned my lesson not to take things for granted and let my guard down.

By the way this bug was fixed in version 5.18.0 that was recently released.

How would you describe Japan's Hacker Community?

Rather than focusing on "a place" where we get together, I think we've developed a focus on the relationships between the individuals. We all tend to know many fellow hackers on a personal basis.

There's actually not that many groups or events where we get together on a regular basis. Instead, we tend to be constantly connected via places like Twitter once we learn about what each of us is working on, and if there's some interesting topic that pops up in a conversation, we'll immediately get together and have a study group meetup.

What are some of the things you feel are unique and wonderful about Japan's Hacker Community?

Since (for better or for worse) a huge number of us are packed into a relatively small place like Tokyo, we take advantage of the fact that we can get together any time with ease. The drawback is that we've slacked off on building and growing "physical locations" where we can come to congregate.

We read each other's blog posts a lot, and are really open about sharing the various technical challenges we're facing. We're really proactive about helping each other solve such problems as well. I've made it a point to blog about the various problems and obstacles I encounter -- the Perl memory leak I mentioned earlier is one, and there have been a few Hadoop related issues as well -- and I've been helped tremendously by other hackers via Twitter and other channels.

How do you feel about the current level of camraderie and communication between the global Hacker Community and the Japanese Hacker Community?

I think it can't be helped that the quality and frequency of communication suffers when our primary languages are different. I feel that blog posts and "live" conversations via Twitter are really vital, but I think many of us find it difficult to transcribe these to English on a consistent basis. While there are hackers who make a concerted effort to write their blog posts in English, they are far from the norm. I've tried in the past and found it difficult as well.

However, I make sure to write all the Github notes and documentation of my software in English.

What can we work on to close this divide?

If we're able to create software (which by nature can be used anywhere in the world), then it would be great to have opportunities to speak at conferences about it. Conferences these days are very conscious about speaker diversity, so if there is a shortage of speakers from Japan, then I would suspect that the "problem" is on our side. Travel costs can make this difficult to do on a frequent basis, but it's something that I will be trying to improve upon in the future.

Do you have any interests outside of programming?

Cycling and driving. For both, I love ditching the PC for a day and riding/driving around in the mountains all day. While I'm riding/driving, at times I'll think about how to design the software I'm working on, and at other times I'll think about completely different subjects.

Is there anything you'd like to say to us Hackers overseas?

When you guys research a particular technical topic (via Google, for instance), you might run across a discussion/debate that was done / is being done in Japanese. If this happens to you, instead of giving up and walking away, I'd like to urge you to give us a comment saying, "Hey there, that looks like an interesting/important discussion you're having. Would you mind having it in English so that I can learn and contribute?"

We, like you, want to share our thoughts and findings regarding important technical problems with others who are keen on learning and finding out more. Knowing that there are fellow hackers out there who want to learn from and with us may be that push we need in order to shoulder the mental "cost" of having the discussion in English.

Who would you like us to interview next?

I think either @gfx (Goro Fuji - Perl Hacker) or @hsbt (Hiroshi Shibata - Ruby committer) would be great! They have both been doing excellent work in their respective fields, and each has a unique perspective having worked with the international community through their efforts.

Anything we haven't covered?

I recently had the opportunity to talk with a few programmers from the US and... I'd really appreciate it if you could speak a little slower. :)

Of course, I recognize that everyone always waits patiently for me to rephrase things when they couldn't understand what I was trying to say, and I'm really grateful for that. Thank you so much! It'd be wonderful to be able to share this with fellow hackers working in Japan.

Thanks Moris!