Name is Johann, based in Cape Town. Full Stack Programmer, Founder and all round lover of tech.
The first appointed Google Developer Expert in Africa, co-Founder of Passmarked and numerous other general fun projects to test out ideas.
See my story
When creating a backup in Datastore using the Datastore Admin Tools, the result will be numerous folders containing something like this: output-0 output-1 output-2 output-3 output-4 output-5 output-6 output-7 output-8 AWESOME ! Expect not so AWESOME, this was done in a Protobuf format as binary. Great for saving space, not so
The SSH in Browser from Google Cloud is quite a useful feature allows you to connect to connect to your virtual machines over SSH directly from their online dashboard. Immensely helpfull when dealing with networks that keep dropping packets and blocking any else than HTTP. I'm looking at you coffee
Wanted to access a few files on backup of a Virtual Box vdi harddrive. So after quite a bit of Googling and prowling forums I found the following few commands that helped me mount a VDI file on my physical host: First and foremost you'll need to install QEMU to
My headphones have this "cool feature" where they "press" play every time I put them back on. Which is awesome, till you stop using ITunes for music on your Mac ... I'm an avid Google Play music user and really do not like ITunes starting up every time I put on
Headed into my HomeBrew installation this morning to upgrade a few packages, but noticed that it just did not work on Sierra. After a while of trying to upgrade the install, I ended up just doing the install from http://brew.sh/ again. So this command: /usr/bin/ruby -e
Upgraded to 1.8.4 of Vagrant this week to keep my local version up to date but when I ran rsync-auto as I normally did I came across the following error: rb-fsevent > 0.9.4 no longer supports OS X 10.6 through 10.8. Please add the
Had to export a .key and .crt keyset to .pfx for use in a web server. Real quick and simple: openssl pkcs12 -export -out domain.name.pfx -inkey domain.name.key -in domain.name.crt Succint if I do say so myself ...
Recently wanted to debug the content of a Redis key. After some looking got to the following command which solved my issues: Enjoy !
HTTPv2 is gaining traction fast and SPDY is set to be deprecated in the coming months. So a handy command to have in your toolbelt is how to check what protocols a server has enabled. Be sure to update openssl to gain the -nextprotoneg parameter. openssl s_client -connect www.
Been writing a small service over at prescribe.co.za that crawls and processes data. Tee problem is that the data is generated and my local internet connection can't get close. So I had to somehow import the database from the live datastore into the local instance. These are the
So lately I've been having problems getting App Engine to start locally and actually run my apps. The problem was I was getting the following error: No module named google.appengine.dist27.threading Which can't be good, right ... So had to look around a bit and found a few tricks
I've been working quite a bit with Docker these days and have found a few commands/tricks that I'm always looking up and have saved in my notes that tend to help me. This post details a few situations I've found and how I managed to get through it. I'll
Been doing tons of writing images to USB recently and have found these few commands very useful. To do this we first need a ISO image we want to write to USB. In our case this would be the latest Ubuntu release I grabbed. First we need to convert that
From the recent amount of loadshedding hitting the country there seems to be a flurry of services. And it would make sense, considering how hard the offical schedules are to understand. It's a local problem and we have local programmers solving it, which gets me excited ! The problem we are
Jeffrey Hawkins (in the comments) mentioned that this has been fixed in the latest version of the SDK. Simply add - ^.*node_modules(/.*)? to your skip_files section. Otherwise the patch is still a option if all else fails. Most web development workflows today involves using a task running like
Recently Google Charts had it's image API deprecated. NOOOOOOO! was my first reaction. But after realising I'm going to have to look for alternatives I went to work. Such is life. Found quite a few options but longed for that sweet charts API. Eventually I thought of something. Realised the
Changing the default ACL of Google Cloud Storage can be a bit confusing sometimes. After quite a bit of Googling (I know, I know) I found the solution. Google is moving more and more interactions with their Cloud to the gcloud tool. But part of this is the older gsutil
While creating a client for Google Analytics recently I have been creating quite a collection of functions that pull metrics. So I wanted to spread the joy and add a few examples of how to pull these common metrics from the API. The Google Analytics API allows you to pull
Was recently pulling my hair for a hour to figure out how I can use a existing access token I might have from somewhere else in my application with the Google API Client. And after much searching, happened on AccessTokenCredentials which is explained shortly at https://developers.google.com/api-client-library/
Zulu in itself is a beautiful language and with that gives you amazing domain names to use. Recently I've been building, amongst other things, a photo sharing service. That goes into great lengths to identify who and what context the photo is about. So I went on a name search.
Recently I've been working with Varnish for quite a bit. And the thing that keeps coming back is that I need to clear the cache. And it's actually simple, just run: varnishadm "ban req.http.host ~ {domain-to-clear}" And Varnish will clear itself without restarting. Awesome !
IE8 and under has been a pain in my Back for most of my development life this past year. IE9 is finally at a stage where I don't have to worry about it but IE8 and under never play along. IE8 and its cousins IE7 and IE6 are like the
While creating the new version of Curriculum Vitae I have decided to devide the entire system up into diffrent parts that each have a job. I was aiming for a service orientated architecture. Which sounds very good on paper but it's a bit harder when you add in that your
Was browsing Stackoverflow recently, as I and most programmers I know do. And saw a question come up about how Stackoverflow site knows when a vote is processed, a comment added or a new answer posted. As the OP checked firebug but the site does not post any AJAX requests.
Captains Log - Star Date -309579.20506722486 (That's June 3, 2013, Time: 14:09:48, check it !) http://thetrektrek.files.wordpress.com/2012/06/tttvoyager.jpg Star Trek has always made me think. How do does the crew allow the ship to do dozens of unique actions with only their
Was working with the Tridion System, not that I know much about it, and something my colleague mentioned has been resonating in my head. He called it: Shotgun Programming Quite simply it is the act of sprinkling various outputs such as File Writes, Console Writes and Logging Action in your
Was trying to import a CSV file into Mongo but keep getting the error. exception:Invalid UTF8 character detected After a heart racing 30 minutes I found the solution. First run: iconv -f ISO-8859-1 -t utf-8 a.txt %3E a8.txt This command simply convert the file to UTF-8. You
Quick Intro I work for a small consulting company, Amakozi Technologies, which are doing some really amazing things! Check them out. The Daily E-Mail I've found when dealing with others employees it's best to send out my Daily Report. So every day at the end of business I send a
Creating a GEO application has never been easier. You can have a fully working "What's close to me" in a matter of minutes using some great open-source tools. Postgres has lots of features. With the biggest in my opinion being extensions. Which take this amazing Database platform to the next
I recently launched my site - Curriculum Vitae - which is built , mostly, with PHP and MySQL, the regular LAMP stack. And of course I used the great Twitter Bootstrap and Codeigniter Frameworks. The site is running a on a VPS with Ubuntu 11.10. It all was very easy
Testing and keeping websites safe
Leading the tech/product of new incubating startups
Advocate and educate on the Google Cloud
Easy prescribed book management
Loadshedding being constantly updated and watched
Secret management for PAAS
National microchip database
Youtube channel of edited meetup talks
Gaming Youtube Channel