Carl J Koepke

あげる,くれる,もらう What Gives?

5 minute read Published:

Japanese contains many situations where who you’re speaking to and who you’re speaking about affects word choice. Perhaps the most basic example of this is the simple act of giving. In Japanese, the choice of word you use depends on the following criteria: What is your social relationship to the recipient Who is performing the act of giving Who is the recipient of the gift Who you are speaking with regarding the act of giving If you examine these criteria while discussing giving and receiving you should have little trouble properly structuring your sentences.

Creating Sumo Card

3 minute read Published:

Sumo Card Development Blog 1
(It should be noted that development of Sumo Card began on October 18, 2016. Development took a break from November to Febraury and resumed around the beginning of March 2017. These articles are a reflection on the development to date.) Introduction After trying several Japanese vocabulary learning programs, I found many of them useful enough but none of them had exactly what I was looking for. After using several products over the course of a few years, I decided that I wanted to develop one that would be a little more like a game.

Thinking Backwards

2 minute read Published:

Sometimes backwards is best. This is just a quick post on something I ran across for work and I though was interesting. I study Japanese and there is some research pointing to the fact that language can affect the way you think. I recently ran across a situation and wanted to discuss it briefly. I was tasked with something quite simple. The problem was this: Take a list of strings and create an output that displays the list using natural english.

Furigana using ruby tags in HTML

1 minute read Published:

Ruby tag example It can be difficult when first learning Kanji to memorize all the readings, and the kanji itself can be challenging. The HTML5 Ruby Tag allows you to place helper furigana or rubi on top of your Kanji to assist readers. I’m of the opinion that each unique reading should only appear with furigana once per page or article to avoid dependence on them. Below is an example of how to create furigana using the HTML5 ruby tag.

Thread safe data structures using channels in Go.

6 minute read Published:

Introduction Go has a number of great features that make programming fun again. The inclusion of channels as first class values is among my particular favorites. This combined with go also having support for first class functions really provides a great foundation for being able to do some really neat things very easily. Building a “thread safe” stack. I’m sure we all remember from a ‘classic data structures’ class how to build a stack.