Posts

Here be blog posts

Software Development Ergonomics and RSI

Some rather intense keyboard clacking over the past years has resulted in me having to give my hands some time off work.

Read More

Installing the Netlify CLI on macOS Ventura with npm

If you're like me, you love npm ci. A lot. Until that one fateful day.

Read More

Japanese conjugation, from two perspectives

Learning a language is different when learned as a native language or as a foreign language. We take a look at how Japanese as a Foreign Language (JFL) learners and Japanese as a Native Language (JNL) speakers learn about Japanese grammar.

Read More

Errors in J

For the past month I've been using the J programming language to solve Project Euler puzzles. The language makes many of the tasks that otherwise take too long, especially with multidimensional arrays, pleasant to work on.

Read More

Updates to my blog

I've taken some time to enhance my blog with two useful features:

  • SVG images generates are now embedded into HTML
  • Automatic PDF conversion for posts

This post shows how I've implemented these two features.

Read More

Hakyll on Netlify

If you are like me, you are more busy switching between static site generators than actually writing posts for your blog.

Read More

Happy New Year, from Tokyo

On April 15 2018, I moved to Tokyo, Japan. I suppose that changed a few things in my life.

Read More

What Hackathons Teach About Making Products

I like hackathons. Hackathons are competitions that typically run over two or three days and in which the participants—programmers and designers—solve a challenge to win a prize. Typically, there are a few challenges that are all based around some theme—blockchains, sustainability, and democracy.

Read More

Updating Smart Contracts

Update from 2025: the cryptocurrency boom of 2017 and 2017 and ICOs were an interesting time, huh? It's not my cup of tea anymore. At the same time, I'd like for this post to stand here as a historical artifact, and encourage you to spend your time on more worthwhile things instead.

Thank you for reading my disclaimer. Please enjoy the following post:

As time goes on, smart contract requirements change. Often, a feature is added or a bug is found. But, once a smart contract has been deployed on the blockchain, it can't be upgraded. The entire value proposition of a blockchain is immutability. Yet, in the real world, contracts change all the time. For example, a labor contract changes when new labor laws are introduced. Similarly, there are many circumstances under which smart contracts change as well, such as

Read More

Smart Contract Ownership

Update from 2025: the cryptocurrency boom of 2017 and 2017 and ICOs were an interesting time, huh? It's not my cup of tea anymore. At the same time, I'd like for this post to stand here as a historical artifact, and encourage you to spend your time on more worthwhile things instead.

Thank you for reading my disclaimer. Please enjoy the following post:

When building your smart contract platform—whether on Ethereum or any other blockchain—at some you'll be faced with the question of ownership. In this article, I explain three different types of smart contract ownership and discuss their advantages and disadvantages.

Read More

ERC20 Token Allowances

Update from 2025: the cryptocurrency boom of 2017 and 2017 and ICOs were an interesting time, huh? It's not my cup of tea anymore. At the same time, I'd like for this post to stand here as a historical artifact, and encourage you to spend your time on more worthwhile things instead.

Thank you for reading my disclaimer. Please enjoy the following post:

Have you ever wondered how your users can spend ERC20 platform tokens to buy assets and other tokens from you? Or—in more technical terms—how to make sure a smart contract executes a particular function as soon as it receives tokens? This post is all about using the ERC20 functions approve() and transferFrom() to let your users do much more than keeping tokens in a wallet.

Read More

3 Useful Python Code Patterns

Over the years I have found out how important it's to constantly challenge yourself. Coding is craftsmanship. A good craftsman always tries to improve the toolbox they use every day. Code patterns belong in any good toolbox.

Read More

Anatomy of a Token Platform

Update from 2025: the cryptocurrency boom of 2017 and 2017 and ICOs were an interesting time, huh? It's not my cup of tea anymore. At the same time, I'd like for this post to stand here as a historical artifact, and encourage you to spend your time on more worthwhile things instead.

Thank you for reading my disclaimer. Please enjoy the following post:

I had the tremendous privilege of speaking about creating sustainable token platforms at TokenSky 2018 in Seoul, Korea. I had a great time presenting some ideas that I've come across during my talk. I also encountered a lot of stimulating questions from individuals and companies all interested in enhancing their platform using some kind of blockchain token.

Read More

Designing a Better Web Analytics Platform

Few things a business owner has to go through are as scrutinous and unpleasant as a data privacy audit.

In Germany, this might include a state commissioner for data protection putting your company's data processing and storage practices under the microscope. Luckily, as it turns out, most of the time you'll already be doing the right thing. Salting user passwords, allowing customers to delete their account, and allowing users to request all personal data that's being stored about them should be business as usual for most of us.

Read More

The Four Phases of a Data Science Project

Imagine this: you're pitching an idea for an interesting data science problem that you can solve for your client. The client is sold on the idea and wants to immediately know how fast you can get it done, and more importantly, what the project milestones are.

Read More

Memory Usage of Pandas Categoricals

A great method to improve memory usage of Pandas DataFrames is by converting columns with categorical variables to use the data type categorical.

Read More

Effective Data Science Notebooks

I believe that being a data scientist is about communication first, and data science second.

Read More

transform()ing Like a Pro in Pandas

The Pandas API surprises me with a new feature or method almost every day, and I've again discovered an interesting feature.

Read More

Aggregating in Pandas

1. Introduction

The other day I caught myself writing one too many df.groupby() in Pandas, and thought to myself: isn't there a way I can simplify and reduce the amount of df.groupby() calls?

Read More

Scaling from Pandas to Dask

1. Introduction

Scaling Pandas DataFrame aggregations can be tricky. I learned that while solving a specific problem involving aggregates on group by expressions.

Read More

Go to: