Recently, heard the news of the death of one of my most favorite mathematicians, John Conway. I got to know his work (as most of us will), through Conway’s Game of Life.
Similar to the XKCD comic above, I wanted to give a tribute to the man as well by writing a simulator of his most famous work. The following is the result of running the rules on a 10-cell row configuration:
Today at work, I was testing an API for a new payments partner for TransferWise. The API’s authorisation required the keys to be encoded in base64. Something like:
I spent a good hour combing the documentation and understand if I was missing any headers in my API call. The error I was getting was 401, so it had to be related to the authorisation header. After a bit of combing through Google, I found out that the UNIX command echo actually appends a newline to its operand. So “jose:passw0rd” is actually “jose:passw0rd\n” when you do echo "jose:passw0rd" | base64.
Luckily, it’s an easy fix and adding a -n to the command stops echo from adding this sneaky newline, and thus correctly encoding the authorisation string!
I recently started reading Switch: How to Change Things When Change is Hard by Chip Heath and Dan Heath. On the first chapter, the authors described 3 surprises about change. One that stuck to me was:
What looks like a people problem is often a situation problem.
The authors talked about a study where moviegoers were all given a bucket (large or small) of stale popcorn. The study showed that moviegoers with larger buckets tend to eat more popcorn than those that had smaller buckets. If we want people to eat more popcorn, then provide larger buckets! Conversely, smaller buckets made for healthier moviegoers.
It’s super easy to over-complicate the problem and give suggestions to the gluttons on how to curb their appetites, when in fact it could be solved by giving them smaller buckets. Likewise, it’s very easy to point out issues with a person (or group of people) than to point out the environment/context of the issue.
We need to have a closer look at our systems and organisations, and see how we can stimulate change.
Genesis 26 talks about a famine that hit during the time of Isaac, and how he lied to Abimelek (king of the Philistines) about how Rebekah was his sister (actually his wife). The chapter was challenging to read, especially in the lens of the 21st century. One would ask: how could a supposedly man of God deny his wife to save his own butt? Why did God have a need for Isaac to go to Gerar, instead of just stopping the famine?
My takeaway is this: we as Christians can learn a thing or two from non-believers. Because of Isaac’s fears, he was willing to endanger his own wife despite the fact that it was God who sent him there. Abimilek rebuked Isaac – telling him that he has risked both Rebekah and the Philistines because of the lie. Although a pagan king, Abimilek chose to protect Isaac and Rebekah for fear of God’s wrath. Even in the midst of sinful conduct, Isaac was spared.
Ps Joey Bonifacio of Every Nation Singapore talks more about Genesis 26 in this podcast.