My name is
Jurgens du Toit.
Technology and Solving Problems are my passion. I'm a South African that loves my wife, life, and coding.
I'm writing a book!
One of the most telling compliments I ever received was from a good friend: “You’re the most organized, disorganized person I know!”. It’s quite telling once you wrap your head around it. It stuck by me, and it’s helping me shape my career.
I’ve always been absent minded. Classic “if you’re head wasn’t tied to your body, you’ll loose it!” stuff. I’d put something down, and then search for it for half an hour, only to discover it’s been in my pocket the whole time. One time I was talking to my mom on the phone, realised that I didn’t know where my phone was, and proceed to tell my mom about it… At the end of the day, details just didn’t stick in my head.
Now I’m in an industry where detail is everything. Businesses lose thousands because of a missing negative sign. One line of code out of place crashes an application and loses a company users, money and its reputation. I always tell people that creating systems is like eating an elephant: bit by bit. what they don’t realise is that if you get one byte wrong, everything comes crashing down.
So how wise is it for a guy who can’t keep track of both his sandles to be in the details business? Either very foolish, or a stroke of genius. Genius? Let’s look that compliment again: The most organized disorganized person. To cope with all these details, I started to rely on systems. I organized my life in such a way that I didn’t need to worry about the details.
Using systems ensures that even the most unorganized person won’t miss any of the details. I used calandering to keep track of appointments. A todo list for tasks. Evernote for easy to forget yet important info. When I go out the door I chant “Phone, keys, wallet” to ensure that I have the essentials. Every day I’m hacking my brain.
The take away is that while people make mistakes, systems rarely do. Don’t rely on people to take care of the details, rather put systems in place to take care it. If it’s tricky or complicated to deploy an app, script it. If a process is long and protracted, automate it. Create unit and behaviour tests for your code. Add state checks to the application. Run regular audits on the numbers and make sure they balance.
In the age of rapid development and continuous deployment, just writing your app isn’t enough anymore. You need to write systems around your app to ensure that it is coded correctly, deployed correctly, working correctly.