Blog

Lance mention in the Böblinger newspaper

This year, rather than playing the usual Spanish Christmas tournament in Lorca, we decided to let Lance travel to Germany, to play the 2015 Internationales Böblinger Open. With a strong field—Lance started in 64th position—we thought it’d be a good opportunity to play against opponents with whom we’re unfamiliar.

He’s been doing really well, having lost only one game over the course of the first eight of nine rounds, and we were happy to see a mention of him this morning in the local newspaper:

Sifting through the noise on Upwork

There are certain kinds of tasks for which Upwork is the perfect place to find help. And from personal experience, you can find some absolute gems! For example, there’s a girl in Dublin, Ireland that I discovered on Upwork, with whom I’ve been working for all kinds of administrative assistance for over five years!

But to find those gems, you have to be willing to sift through a lot of noise. Here’s a conversation I had yesterday with a guy about conducting some pre-release testing of ChessDrop:

Me: Hello Dimitry, can you please confirm that you have access to the following four devices for testing: iOS iPhone, iOS iPad, Android Smartphone and Android Tablet?

Dimitry: Yes, I confirm access to iPhone and iPad.

Me: Can you also confirm access to the other two devices I listed?

Dimitry: I confirm access to all required environments.

(At this point, I’m thinking a trial task would be prudent, before jumping into anything semi-permanent.)

Me: Dimitry, rather than jumping into the testing right away, I was thinking it’d be a good idea to organize a quick “get to know each other” task. If you look at this page, you’ll see that I’ve started to document the ChessDrop functionality. This list of functionality, when complete, would later be used as a reference for identifying test cases. How about, as a first task, you explore the product and try to complete that functionality list, for a fixed price?

Dimitry: Good idea, but it’s hard to estimate.

Me: I agree. How about this—Your hourly rate is $6. Why don’t we set a fixed budget of one full day of work, for $48, and see how far you’re able to get in terms of identifying the product’s functionality?

Dimitry: I confirm agreement to work for $48 per day.

Me: Ok, I wasn’t really asking for you to confirm that 6 times 8 is 48, but rather asking if you agree it’d be a good first task, for you to work one day on identifying the product’s functionality—i.e. working towards completing the list I started—so that I can get a feel for how you work, before moving further?

Dimitry: I agree.

Me: Ok, great. Just to make sure we’re on the same page, can you please repeat to me your understanding of the task?

Dimitry: I must test product in all environment.

Me: So, Dimitry, I’m still interviewing other candidates, so I’ll come back to you if I’d like to proceed. Thanks!

Structure and planning vs The Flow

I know that, for me at least, a key to long-term success is planning. I carefully track my tasks. Each day I make a list of what I want to accomplish, and plan the day hour-by-hour. I know this is important. At the same time, I’m most productive when I get in “the flow”—that state of intense focus where one loses track of space and time, and is absorbed in the activity at hand. When in the flow, I don’t want any interruptions—not moving to the next task, not having dinner, nothing.

I struggle to reconcile the tension between these conflicting ideas.

2015 World Youth Chess Championship in Greece

The 2015 World Youth Chess Championship (WYCC) took place between October 25 and November 5, in the Halkidiki region of Greece, at the beautiful Porto Carras resort. For our kids, Lance and Andrea, this would be the second world chess championship in which they would participate as representatives of Spain, with the first being in 2013 in the United Arab Emirates.

Continue reading 2015 World Youth Chess Championship in Greece

Sharing in iOS 9

While viewing an album in iOS Photos, I selected about 50 photos and used the share-sheet service to send them to a new album in Flickr. After confirming the share, I was returned to Photos, and as far as I can tell, there’s no way for me to determine the progress of that share, other than visiting Flickr, and reloading the album page until it reports containing 50 photos.

Furthermore, if I leave the iPad unattended, it appears the share progress will get terminated when the auto-lock timeout triggers, requiring me to start the share again after figuring out which photos made it the first time, and which didn’t. (And that, in itself, is quite a challenge as the upload order is seemingly random!)

Until this is improved, it seems that when initiating such a share, I’d need to sit and continually tap the screen (keeping the device awake) until the share concludes.

Alexander Aghassipour interview in Offscreen Magazine

I really enjoyed the interview with Alexander Aghassipour, Danish founder of Zendesk, in Issue 12 of Offscreen magazine. It’s always fun to read about the experiences of Europeans living in America, and vice versa.

A Dane will happily start a job interview buy telling you what they are -not- good at, something that would never happen in the US.

We Danes also tend to swear a lot and be less politically correct than Americans. We used to test new hires by throwing in a swear word here and there, and making them taste Danish liquorice. But we stopped doing that when we learned more about American “HR violations” as a legal concept.

People here are also obsessed with Ivy League schools. It’s the first thing a recruiter will mention to you. Although, after years of hiring many people, I still find no correlation beween top tier schools, and the value they provide to the company.

I’m just getting into it, but Issue 12 looks to be full of interesting content.

How to create a kill-switched VPN on Mac OS X with Little Snitch

In this post, I describe why, after years of using the wonderful Mac/iOS VPN product, Cloak, I’m experimenting with an alternative approach, that combines Private Internet Access (PIA) and Little Snitch. (2015-08-28 — As mentioned in an update at the end of the article, I’ve actually now switched back to Cloak, but using Little Snitch as the kill-switch.)

Continue reading How to create a kill-switched VPN on Mac OS X with Little Snitch

Lance is the 2015 Spanish National Chess Champion!

https://flic.kr/p/vT57Wt

After coming so close last week in the Under-12 category—finishing 2nd due to the thinnest of tie-break computations—Lance (pictured above in the middle) decided to stay an additional week, and play in a superior age category.

After 9 rounds of classical chess play against the big boys in Under-14, Lance finished alone in 1st place, with 8 of 9 points and was declared 2015 Spanish National Chess Champion!

The full results are online at Info64.

Lance is the 2015 Spanish National Chess Championship Runner-Up in U12

It’s quite unusual to score 8 of 9 in a national chess championship, and finish second. But that’s what happened in Salobreña last week, at the 2015 Spanish National Chess Championship, Sub-12 age category.

Continue reading Lance is the 2015 Spanish National Chess Championship Runner-Up in U12

Feature request for 1Password — Provide PIN opening on TouchID enabled devices

The passcode to unlock my 1Password keychain is long—very long—and typing that in on an iOS device is time consuming and error-prone.

Fortunately, Agilebits provides two short-cuts:

  1. For iOS devices that support TouchID, you can open 1Password simply through recognition of your fingerprint, in the same way you unlock the device itself.
  2. For iOS devices that do not support TouchID, 1Password allows you to set a four-digit PIN that can be used to unlock 1Password after you’ve initially authenticated once with your passphrase. This option remains secure, in that you only get one chance to enter your PIN; if entered incorrectly, the app again requires full authentication with your passphrase.

Either from having naturally sweaty fingers, or living in a humid, costal environment—or a combination of both—TouchID does not reliability work for me. In fact, it only works about 10% of the time I try to use it. From scan-setup of the same finger multiple times, to complete resets, I’ve tried every recommended approach to improve TouchID—but all to no avail; it simply doesn’t work for me.

As a consequence, while 1Password is usable for me on my iPad mini via the PIN mechanism, it’s awful to use on my TouchID-enabled iPhone 6. Every time I need to open 1Password, I have to type in that very long passphrase.

For that reason, I wish that 1Password would offer the PIN access mechanism on TouchID devices, as an option.

Speaking with the support staff at Agilebits, they’ve communicated that this isn’t possible, because the current implementation is to offer TouchID on supported devices, and fall back to offering PIN access on devices that don’t. But that’s just the way it’s currently implemented; there shouldn’t be any technical reason why 1Password couldn’t offer both options on TouchID devices.

I understand that I’m in the minority, and that for most people, TouchID works just fine. And I know that many product decisions are made considering trade-offs related to the size of affected groups. My hope, however, is that the people at Agilebits can consider that the cost in usability of this particular problem, for those in the minority like myself, is huge, and creates a situation encouraging the use of a shorter, less-safe, passphrase.

And perhaps considered in that light, they’ll add both options to 1Password running on TouchID devices as well.

Should I restart my Mac each day?

I transport my MacBook Air daily between home and the office—closing the lid to put it to sleep, and opening the lid to wake it. Twice per day, every day.

I’ve always hoped that the Mac OS is designed to handle these interrupts gracefully, but I’m beginning to wonder. It seems that each time I restart my Mac, I see evidence that things are getting suspended or stuck—Carbon Copy Cloner alerts me to the fact that my backups haven’t run in a while, HazelHelper starts posting literally thousands of notifications, OmniFocus alerts me to 900 items that need archiving, and even the visual appearance of icons on the desktop change.

So I’m beginning to wonder whether I should get in the habit of just restarting the machine every day.

An eye-opening example of the importance of mathematical literacy

If you’d like to understand the importance of having a good knowledge of probability theory, consider the following eye-opening example (inspired by something I read at David Siegel’s site.)

A rare disease is known to exist in 1% of the population. A test for the disease is known to be 98% accurate, meaning that if you have the disease, the test will return positive 98% of the time.

Now, you’re curious whether you might have the disease and so you go take the test. It comes back positive. What is the probability you actually have the disease? The results might surprise you.

To solve this problem, we use Baysian probability theory, which says:

P(A|B) = P(A)*P(B|A)/P(B)

Where:

  • A = You have the disease
  • B = You test positive

In words, this means that the probability that you have the disease (A) and you test positive (B) is the probability that you have the disease, P(A), times the probability that you test positive given that you have the disease, P(B|A), divided by the probability that you test positive, P(B).

So to make this calculation we need three numbers:

  1. P(A) — We know that P(A) (the probability we have the disease) is 1%.
  2. P(B|A) — We know that P(B|A), the probability that we test positive if we have the disease, is 98%.
  3. P(B) — We don’t know this one, and have to calculate it.

We can compute P(B)—i.e. the probability that a random person taking the test returns positive—using “conditional” probability:

P(B) = P(B|A)P(A) + P(B|!A)P(!A)

This means that the probably of testing positive, is the sum of the conditional probabilities that (a) we test positive given that we have the disease times the probability that we actually have the disease, plus (b) the probability that we test positive given that we don’t have the disease, times the probability that we don’t have the disease.

In the above conditional probability equation, we know all the values except P(B|!A). How to determine this? Well, we know the following must be true:

P(B|A) + P(B|!A) = 100%

Therefore, since we know P(B|A) is 98%, we can conclude that P(B|!A) must be 2%.

P(B|!A) is known as the “false positives”, i.e. those who test positive but don’t have the disease.

Therefore:

P(B) = 0.98*0.01 + 0.02*0.99 = 0.0296

So now we have the all the numbers to calculate P(A|B), i.e. that chances that we actually have the disease given that we tested positive for it:

P(A|B) = 0.01*0.98/0.0296 = 0.33

Surprising no? If we went to the doctor, took this test, and tested positive, there would only be a 33% chance that we actually have the disease.

How can we make sense of this? It’s actually quite logical.

Imagine a random population sample of 1,000,000 people. Of those, 10,000 (1%) will have the disease. Of those 10,000 tested, 9,800 (98%) will diagnose correctly in the test. Of the 990,000 (99%) who don’t have the disease, 19,800 will test positive, i.e. the 2% false-positive percentage.

So of the 1,000,000 people tested, 29,600 will test positive, but very few of those will really have the disease, i.e. 9,800/29,600 or 33%.

UI/UX — MONEY Magazine takes a big step backwards in user-experience on the iPad, and so I’ve unsubscribed.

Previously, MONEY Magazine attempted to deliver a version of their magazine for the iPad that reflected an understanding of how text is best read on such devices, and attempted to take advantage of user interactivity.

For example, It was possible to navigate an edition’s content via pull-up menus on the leader screen of each of the magazine’s four main departments:

And article text was presented in a single, scrollable column:

This all made for an effective and efficient reading experience, in the context of the iPad.

Unfortunately, in the latest issue, MONEY has gone back five years in time, and moved to the unusable approach of presenting the magazine on the iPad as a direct replication of the physical magazine. Articles are presented in magazine-style tiny columns that can hardly be read without pinch-zooming, and—incredibly—there’s not even a way to directly navigate the content.

I can only imagine that this was done in the interest of saving on production costs, but at least in my case, MONEY has shot themselves in the foot — as I just canceled my subscription.

Inconsistencies and irritations in Mac OS X Photos

Just wanted to document a number of additional annoyances I’ve run across in using Photos.app on Mac OS X.

No feedback when violating sharing constraints

I’ve selected all the photos in an album, and would like to upload them to Facebook. Clicking the Share icon, here’s what I see — no Facebook!

I probably spent 20 minutes trying to track down how I’d somehow messed up my Mac’s Facebook account configuration. After finally confirming that Facebook is properly configured on the machine, I then turned my attention back to Photos, and ultimately figured out the problem — Photos limits you to sharing a maximum of 50 photos at a time to Facebook.

Selecting less than 50 photos and clicking the Share icon, Facebook reappears:

Heavy sigh. Whether this limitation comes from Facebook, or somewhere else, it would be useful if the Photos UI would somehow communicate that I’ve violated a Facebook sharing constraint, rather than simply hiding the option.

Inconsistencies in share processing

Here’s what happens when I share photos to Flickr — After configuring and confirming the sharing modal, Photos.app spawns a progress window, and let’s me get back to working in the app.

Now, here’s what happens when I share photos to Facebook — After configuring and confirming the sharing modal, the modal remains active while uploading — blocking continued usage of the app and providing no information at all about the state of progress.

In fact, the first time I experienced this, I just assumed that the app had gotten stuck, force-quit it, only to later discover 20 or so photos had been uploaded to Facebook!

I can’t think of any reason for the difference in share handling between Flickr and Facebook, but the inconsistency is certainly confusing.

The Box

When I was a child, I had a box in my bedroom that was full of all sorts of bits and bobs—ranging from batteries, to rubber bands to screws, string and discarded wood chips from my grandfather’s shop. Many hours were spent pouring over those items, arranging them in various combinations and imaginatively dreaming about what amazing things could be built from them.

Today while reading Ian Bernstein recount a similar story in Offscreen magazine, I wondered to what extent this is a shared experience amoung those of us who grew up to later dedicate our lives to the making of things.

Hike on the Vereda de la Estrella, Granada

This past Saturday we traveled to Granada to let the kids participate in the 22nd annual edition of the Acropolis Chess Tournament, and decided to take the opportunity to stay over until Sunday and do what’s considered the most beautiful hike in the area, the Vereda de la Estrella, in the Güejar Sierra.

Continue reading Hike on the Vereda de la Estrella, Granada