Here are my notes on diagnosing a bug in Hugo. Hugo is the static site generator I use for this website.
Some differences in how bash and fish expand variables
This is about having a non-Japanese name living as an immigrant in Japan and trying to get a SIM card with UQ Mobile.
Here’s a quick write up on how I was able to use my RTL-SDR V3 receiver to see aircraft flying above me using the dump1090 application, which FlightAware is maintaining in its current version. The RTL-SDR is a very cheap way to get started with software defined radios. Photo of RTL-SDR receiver which I have purchased Open in new tab (full image size 662 KiB) I have bought the RTL-SDR receiver in 2017 from a reseller on eBay.
Today, I have finished reading Marx: A Very Short Introduction and have thoroughly enjoyed it. I purchased the 2018 edition, which even mentions hot topics such as the gig economy and its relation to Marx’s critique of capitalism. On the other hand, the book falls short of defining capitalism itself as a contrast to communism. The author Peter Singer thoroughly describes Marx’s philosophical background in Hegel and Ludwig Feuerbach. Then, he examines the emergence of historical materialism in Marx’s work.
In which I describe how I got an Intel wireless network controller running on Debian
macOS Catalina introduced zsh as the default interactive shell. zsh is compatible with Bourne shell (sh) to a large degree and introduces many valuable extensions that make everyday productivity more pleasant. In this post, I list some shortcuts for the zsh line editor (also known as the command prompt) in its default configuration.
Some rather intense keyboard clacking over the past years has resulted in me having to give my hands some time off work.
If you’re like me, you love
npm ci. A lot. Until that one fateful day.
Learning a language is different when learned as a native language or as a foreign language. We will illustrate this by taking a look at how Japanese as a foreign language (JFL) learners and Japanese as a native language (JNL) speakers learn about Japanese grammar.
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 one would usually spend quite some time on, especially with multidimensional arrays, quite pleasant to work on.
I’ve taken some time to enhance my blog with two useful features:
I will cover how the two have been implemented.
If you are like me, you are more busy switching between static site generators than actually writing posts for your blog.
On April 15 2018, I moved to Tokyo, Japan. I suppose that changed a few things in my life.
I like hackathons. Hackathons are competitions that run over multiple days — typically a whole weekend — and in which the participants — programmers and designers — solve a challenge in order to win a prize. Typically, there are a few challenges that are all based around some theme — blockchains, sustainability, democracy, and so on.
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 will change when new labor laws are introduced. Similarly, there are many circumstances under which smart contracts change as well, such as
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 will explain three different types of smart contract ownership and discuss their advantages and disadvantages.
Have you ever wondered how your users can spend
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 ERC20
transferFrom() to allow your users to do much more than just keep tokens in a
Over the years I have found out how important it is to constantly challenge yourself. Coding is craftsmanship. A good craftsman will always try to improve the toolbox they use every day. Code patterns belong in any good toolbox.