Weekly update: 18 April 2016

I missed last week’s update so this will be a double entry. Banking Project I made good progress on some of the technical issues on the banking project. This was mainly in the following: Shared database connection throughout the app Using decimals instead of float64 Writing benchmarks Hooking into Travis for continuous integration You can read more in this post. Additionally, I rewrote the entire mobile application using React Native. »

Bank: Progress update - DB, decimals and benchmarks

Over the past week I’ve done backend work on the bank. These aren’t sexy changes, but definitely much needed. DB Connections When I first wrote the database connections, I wasn’t sure how they worked exactly. I assumed that the database connections were closed on function exit, and that only queries needed to be explicitly closed. I was half right. Go uses a DB connection pool which is meant to be long lived and shared between functions in the application. »

Bank: React Native

As part of the process of building out full infrastructure, I had already started work on an iOS app. The app had been built and was working and at the time used the TCP CLI client. I started moving this over to HTTP, but almost immediately ran into issues around async calls and more. These issues required too much deep diving so I decided to try the app using something I was more familiar with and that also provided cross-platform development. »

Weekly update: 4 April 2016

The last week was largely spent travelling and adjusting to another time zone. Some good work has been done on the banking project and a path laid. Banking Project I’ve decided to take a small step back and draw up an ideal architecture for the bank. Over the weekend I drew up exactly what I would like the bank to do in the first two years. This functionality included: »

Tier 1 Exceptional Talent visa, Tech City UK

I’ve always wanted to expand my horizons. I have a deep interest in finance and technology, and my projects stand testament to that. As far as fintech goes, London (and the greater UK) are leading the charge. As a result, I’ve been looking at ways to make a move there and make something great. I’m incredibly excited to announce that I have been awarded an endorsement for the coveted Tier 1 Exceptional Talent visa. »

Weekly update: 28 March 2016

This past week has been more eventful than others. A lot of amazing opportunity has been opened up, and big progress made towards some overarching goals. South Africa I am coming back to South Africa this week. It’s been three or so months since I’ve been home, and I’m looking forward to seeing friends and family. The work this side has been amazing, so I am looking forward to keeping on the same track while I am down there. »

Weekly update - 20 March 2016

The past two and a half or so weeks have been really productive, especially with the banking project. Bank Errors and tests The bank project underwent a fairly substantial rewrite to add proper error handling throughout, as well as write tests for all the relevant packages. It was a fantastic learning experience and the project is in a much better state for it. You can read more about the rewrite here. »


The past few days have been busy. After the big rewrite I had enough done to start the HTTP REST API. I tried to keep the implementation as simple as possible, staying away from big frameworks etc, so I landed on just using net/http and gorilla/mux. The Gorilla Mux is small enough to add minimal overhead abd be close enough to the metal. Implementation With this simplicity in mind, the implementation is easy. »

Bank update: Errors, tests and responses

This is more of an incremental update from the last post. I’ve spent loads of hours carrying the changes for testing and error handling across the entire project while making sure there is not a break in functionality. In addition to doing this, I have also started to seriously investigate some prepaid solutions, which I will go through at the end of this post. Errors and tests I finished a big implementation of testing and error handling - 1400 lines added, 400 lines removed. »

Bank of America: Card transaction authorization

On my recent trip to the UK I had some trouble making payments using cards. This is nothing new as banks routinely block transactions they deem suspicious, and as a result ask you to notify them of any planned travel. If they know you will be in the UK over a period, and a transaction gets processed in the UK, it isn’t suspicious. If you are in the US and a UK transaction comes through, it is. »