Tech teams and hiring right

“In the end we couldn’t find a tech team we could trust and that could produce what we asked of them.”

How these words ring so true. This is from a Medium post by John Biggs, now working at The Block.

It is amazing to see what happened, as they hired two tech teams:

“Our first tech team worked mightily on product that worked but was not scalable. Our second tech team was self-interested and the tech did not work.”

They raised $150k, had 10 employees, two development teams, and over 8,000 beta users, but were unable to deliver functioning technology.

I have no idea if these were outsourced teams, or hired teams (I’ll go with outsourced), but this is a real problem facing many companies, not just those involved in the cryptocurrency space. Sometimes it also has to do with the irrational exuberance of the leadership team, directing the tech teams. This is where experience makes sense and pays off…

It makes me think a lot about the offering of the fractional CTO (basically a fractional CxO in general). There is a lot to do. A lot of patterns to recognise. A lot of project management. And a lot of understanding on what can and should be delivered in an appropriate timeframe. Something a really technical co-founder or lead will get right, but something the average founder will miss.

Ciao 2018

Too busy to sum up the year but generally speaking: father much more gravely ill, lost another grandmother exactly 14 months to the date of the previous one, lots of general busyness.

As I write this, I’m in Kuala Lumpur, not elsewhere (second year running), shuttling between home and the hospital. First trip of 2019 has also just been cancelled.

Travel stats: 29 trips, 249 days on the road, 391,119 km travelled, 57 cities, 20 countries. Comparing to 2017, it is 1 trip less, 2 days more, 59,903 km less (!), with 4 cities more and 3 countries less. Nothing particularly memorable stood out (even based on my Swarm statistics).

I’d say I want to blog more, but I know its tough. I am however enjoying long form writing thanks to my Field Notes subscription.

Here’s to 2019. Life can only get better. Right?

Digital media purchasing, still horrible in 2018

Lying in bed with iPad in tow, and not feeling like reading, I fired up Netflix thinking I could watch the new season of House of Cards. Unfortunately, in Germany, November 2 2018 means something completely different (i.e. Season 5 is the latest).

Kevin Spacey, irregardless of what you think of him, was a pretty good actor. I read on Wikipedia that he was in another movie called Billionaire Boys Club and how it grossed terribly. I hopped on over to Amazon and realised I could rent it (it wasn’t on Netflix). Then I remembered I had some Google Play credit, so I tried to rent it there.

I even then downloaded the app from the App Store. In Chrome, it kept on trying to get me to download a SetSID file. Urgh. The purchase basically would not complete.

All in, I spent a good 15–20 minutes before I gave up trying to watch Billionaire Boys Club. And I was willing to pay $3.99-$4.99 (with tax, the SD version is $4.39, $0.40 for taxes), in the hopes of watching it in my German hotel room. I failed.

I bet the (illegal) download from a torrent site would have been quicker.

Screen Time and less usage of social media

I have been trying an experiment — the use of less social media, thanks to Screen Time on iOS 12. The last item I uploaded on Instagram was on September 17 2018. My usual form has been to make a photo at every place I land up at, but since seeing that I spent 30-45 minutes of “dead time” daily on the app, I figured I needed to stop using it so regularly.

My thought there is quite simple: do I make money from Instagram? No. I should generally only be doing productive things with my iPhone, correct?

Consequently I haven’t uploaded photos from my trips to Tokyo, Singapore, London, Edinburgh, and apparently London again, where I’m penning this. OK, it will be November 1 2018 tomorrow, so I should maybe start posting again.

I find that I don’t use Facebook much but have the application for the 2-factor authentication (I will have to find a way to move this to Google Authenticator or 1Password so I could zap it). This leave Twitter, which I do spend a bit of time on (I have to work on reducing this).

WhatsApp, Telegram, etc. may be considered social media but the reality is I need to communicate with folk so I can’t stop using those apps.

Screen Time also helps tell me how much time I actually spend on the iPhone. I feel like it is too much. Here’s to more iPad and more MacBook Pro. And in general, more time around Productivity/Reading & Reference/Creativity/Other/Health & Fitness, going forward. And of course… Entertainment (Netflix has some good shows from time to time).

Anyway, measuring where I spend time clearly matters. I’m surprised we don’t see this on macOS yet (but for that I have RescueTime). I understand that Timings is another popular app to use. From a time management standpoint, I reckon reading: The Average User Checks Email 5.6 Hours Per Day and also The Mona Lisa Doesn’t Tweet. These are timely reminders that we should gain from social media, but not give in much more to it.

GPGTools Support Subscription – in-situ license change

Not brave enough to upgrade to macOS Mojave on my main workhorse yet, I did however click update on GPGTools which only required me restarting Apple Mail. I was very shocked when I saw the following pop-up:

GPGMail Popup

This was an in-situ upgrade from what was free/open source software, to a sudden pop-up nag telling me that I would need to get a license to continue to encrypt/decrypt my mail with ease. I checked out the support plan, which is USD$23.90, and might be something I have to pay for yearly, since a major version coincides with a macOS release according to the FAQ.

Being in the open source industry for 22 years (longer than the term has been around; so let’s call it free software), I’ve seen many license kerfuffles, and I think one of the worst ways to surprise someone is a license change in-situ. In a world where we do git pull’s and just move on, the license is sacrosanct. I’m glad that these developers didn’t focus on mucking with the license and if you choose not to pay USD$23.90 yearly, you can still compile the software yourself.

Am I still allowed to compile my own version of GPG Mail / GPG Suite removing any code regarding the trial or activation?

You absolutely are, the GPL enforces that. You will find the source code on this website and on Github.
We would kindly like to ask you not to use our names or icons if you plan to publish a binary for others to use.

Am I going to compile from source? If this was infrastructure software, definitely, yes. Am I going to pay these developers? I do not know, I still have 30 days to decide.

They clearly learned their lesson, do read the open letter to their users (yes, they’ve had this as a plan for a while, but maybe it wasn’t clear enough). These people aren’t a big evil corp neither did that raise venture capital from what I can tell. They’re independent developers, and if there is something a Mac user tends to do, is that they tend to support indie developers.

If I already pay an Apple tax, the question then becomes: do I pay for yet another app, that seems to basically be a subscription, or do I compile the software? Comes back to the old adage of, spend money to save time, or spend time to save money.

Thumb drive data recovery

I haven’t done any data recovery or data rescue work in sometime (the last time was on Linux, with a combination of dd, ddrescue, and some throwaway code to parse JPGs – it was a Compact Flash card that needed saving). This time, all I had was macOS, a 16GB thumb drive, and the files were someone’s life’s work, which were more than just JPGs but also AI (adobe illustrator), DOC, XLS, PDF, TTF, etc. files.

So via Homebrew, I installed ddrescue again. A command like ddrescue -v -n -c 4096 /dev/disk2 helena.dmg helena.log seemed to work. On macOS, fdisk totally couldn’t get me anything useful and if I ran diskutil list the output would be as follows:

/dev/disk2 (external, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                                                   *15.5 GB    disk2

For good measure I wanted to also make an image via dd, dd if=/dev/disk2 conv=sync,noerror bs=4096 of=helena.img. It was clearly throwing many errors, an example of which:

13399375872 bytes transferred in 1263.864380 secs (10601910 bytes/sec)
dd: /dev/disk2: Input/output error
dd: /dev/disk2: Input/output error

The real problem was mounting either the DMG or the IMG. On Linux you have this option to loopback mount a file; on macOS this isn’t quite there. There is hdiutil but frankly, this doesn’t work if there is no partition record. I tried to mount it using hdiutil attach -noverify -nomount helena.img but that didn’t work to then do a diskutil mountDisk.

Then… I found a tool: PhotoRec. I wouldn’t have to write something to parse the magic numbers and extract files. PhotoRec just works. It parsed the IMG file, and spat out plenty of files to look at. Recovery was generally full.

For reference, on Linux, there are some good resources: Mounting a raw partition file made with dd or dd_rescue in Linux, and Guide to Using DDRescue to Recover Data. From a forensic standpoint, Disk-Arbitrator looks like a good tool as well.


i