Manage Your Context Switches to be More Productive

You’re in the middle of patching a bug, and a colleague taps you on the shoulder asking for your opinion on something. We’ve all been in this position. Whether or not you’re a programmer, this situation happens all the time — a phone call interrupts our planning session, a push notification distracts you from finishing your report — and it’s highly destructive to your throughput as a worker.

I decided to share some techniques I’ve started to employ that have really worked for me. I’ll start with ways to avoid distractions in the first place, and then go over what to do in the event that a context switch is inevitable.

1. Turn off all non-essential push notifications
What is an essential push notification? It depends on your engagement level with the rest of the world, but for me it’s limited to just SMS messages. Instagram, GMail, Snapchat, FB messenger (which I don’t use)… shut ’em all off.

2. Batch tasks (like email) into pre-defined chunks

For mindless tasks like email, I typically tend to reserve a part of my least productive hour: 4-5pm.  I only check and respond to email during this allotment. Only coding gets my precious morning hours, when I’m most alert.    Make sure your pre-defined time allotment has a end time. Set a countdown timer. You can even use Siri:

  “Hey Siri, set a countdown timer for 30 minutes.”
  “Okay, 30 minutes and counting!”

Great – now you have a defined end to a task that used to interweave itself into your whole day.

2. Work in DND (Do not Disturb) for at least 4 hours each day
Both your Mac and iPhone can be configured to run in DND mode. It doesn’t necessarily have to be 4 hours, but try experimenting for what works best for you.  For me, I set a goal of a number of tickets I want to accomplish before allowing myself to be “disturbed.”

3. Be choosy about the music you listen to while working
Everybody is different, but we share about 99.9% of the same DNA. And study after study has shown that music with lyrics is distracting for human beings who are doing cognitively intensive tasks such as coding.  For me, headphones are often necessary to escape the sounds of workplace like the clacking of keyboards and sniffling, but instead of listening to music, often I choose the ambient sound of a coffee shop.  To the Spotify/Pandora streamers out there: Pay for the darn subscription plan so you aren’t subject to distracting ads.

4. Buy a pen & paper notepad
They can be purchased at any office store for $0.99. Use this as your scratch buffer for things that need to be done throughout the day. Never do something as soon as it comes up.  Here’s an example: let’s say I think of a new feature that needs to be implemented…. rather than signing into Jira and filing the tickets right away, I just put a 5-word reminder on my scratchpad which I can then reference when I go to do Jira tickets in batch at the end of the day.  Same thing with email — don’t send that email right away… put a note on the scratchpad and wait until your dedicated email batch time allotment to write the full draft.

5. Don’t get dragged into non-problems
Engineers in particular love to solve everybody else’s problems but their own.  I’m no exception.  I hear about some intern using a c4.8xlarge to run a webserver, and I immediately stop what I’m doing to optimize our EC2 allocations. That tangent then turns into a sweeping overhaul of the company’s AWS spot-pricing and IAM strategy.

In part 2/2 I’ll go over how to save your state in the event that you have to switch contexts.


Turn off iMessage link previews in iOS 10+

There is currently no way to turn off link previews in iOS 10.  This “feature” is a half-baked attempt to add slack-like features, where GIFs, YouTube links, pictures, etc show up in-line in your iMessage conversation thread. I really wish Apple would have added a way to turn this off because it slows down the interface on my older iPhone 6, and also presents a security/privacy risk. If I don’t accept the privacy policy of a website, I used to have the choice to not click on the link go to that website.  Further, by going to that site, I reveal all sorts of information including my IP (and possibly even my location). With iOS 10, the messages app does this automatically, whether you wanted to load an image (on cell data) or not.

There is a way that you can turn off this “feature” when you’re sending links to people: Don’t put the link as the first thing in the message… I use the “.” character to disable this on links that I send.   You can (and should) also send a feedback report to Apple asking them to add in a user setting to disable the “feature.”

I did:



Cloudification of Things

Cloudbursting, the ability to rent additional servers in the cloud on demand, has been an extremely successful concept in enterprise computing recently. When a researcher has the need to perform complex computations, rather than investing in a supercomputer, she can rent a cluster of Amazon’s idle servers for just the duration of the calculations. She pays for the power when he needs it, and when she doesn’t she avoids having an expensive asset sitting idle and depreciating.

Expansion into the cloud has been made possible in part by improved networking. Analogous to decreased shipping costs, more bandwidth reduces the friction in moving large sets of data from the firm to the cloud. What will enable the Cloudification of Things is the decreased friction in loan logistics.

Take Zipcar, for example. Some people do not need a car 7 days a week. Rather than having a depreciating asset sitting in a car park, Zipcar users can rent a vehicle for only the time which they need. The proliferation of GPS tracking devices has reduced the friction in trusting customers to return a vehicle, allowing this business to be viable.

Another example is fashion site Rent the Runway. Rather than paying for an outfit which is to be worn but a few times, customers can rent these items for a special occasion. Courtesy of improved shipping routes and delivery algorithms, shipping costs have actually decreased while fuel costs increase. Decreased transitional costs combined with large inventory availability has removed the friction that prevented previous clothing rental companies from being successful.

From records, to 8 tracks, to CDs, to iTunes, the music industry has never been complacent with any particular medium. Shifting from iTunes, users begun favoring “rented” music with services like Spotify, Pandora, and iTunes Match.

There are many other examples of users transitioning from ownership to renting, most of which have been enabled by reduced friction in transactional logistics. Going forward, there are many other businesses that have the ability to “cloudify” their business model.

Further, the nature of this model need not be B2C. Consumer-to-consumer rentals can also lead to a more efficient utilization of underutilized assets. Photography equipment, vacation homes, office space, restaurants, energy production equipment, and farming equipment are just a few possibilities.

It’s been estimated that Manhattan was sold by Native Americans to explorers for only $24. The reasoning for the low price was that the Native Americans believe that it was impossible to “own” land. How humanity defines ownership has never been consistent across time and cultures.

“Imagine no possessions,
I wonder if you can.
No need for greed or hunger,
A brotherhood of man.
Imagine all the people, sharing all the world”

– John Lennon, 1971

Interview with hackers, R00TTH3B0X

I’m surprised to be writing this, but I think the hacking incident this week with the homepage is terrifically ironic.  Before chatting with the two hackers, who go by the handles “x86” and “n3tcat,”  I thought that the episode could be an important milestone for computer science, and IT in general at the University. I think there are a few takeaways: First, the exploit serves as a reminder that we must never rest assured systems are, and will always be, secure.  Second, improperly managed software can cause problems beyond their foreseeable scope. And finally, a quick response does not always equate to the best response.

I chatted with x86 and n3tcat using an encrypted application called cryptocat, which prevented me from determining their IP addresses, and consequentially, protecting their anonymity.   My purpose for chatting with them was to find out their motives, and to see if they shared the same view on always pushing technology to it’s edge for the purposes of furthering our general security as I did.  I ask them why, if they had access to everything (as they claimed), would they only take down the site’s homepage, leaving everything else in tact.

Continue reading Interview with hackers, R00TTH3B0X