Monday, February 26, 2018

Addiction - It's an unfair advantage

"You will never know love like an addict and their vice " -- Anonymous 

I wish I had an elevator pitch that was this concise. Anyone who has spent a small amount of time around me will know I suffer from an addictive personality; hear me out, this is a force of good. 

An "addictive personality" is a colloquial or informal term based on the belief that certain people have a particular set of personality traits that predisposes them to addiction and other problematic behaviors, such as drug abuse or gambling . Although it is a fairly common concept, there is no medical or scientific definition of an "addictive personality" or "addictive personality disorder."
The article goes further to define personality traits that can lead to addiction:

Impulsivity, Sensation-seeking behavior, Negative affect, Negative urgency, Neuroticism, Disagreeableness, Narcissism, Aggression. 

  • Impulsive - Check - although I have learned to keep this in check by slow thinking exercises.
  • Sensation-seeking - Check
  • Narcissism - Depends on which of my ex's you talk to
  • Aggression - I am the most loyal friend a person can have, but god help you if we are enemies. 

Since there is no full DSM / Medical definition for this complex it is left to individuals and their practitioners to decide.

Over the years I have suffered from minor addictions, I am biologically wired for novelty and when I find something I love, nothing stops me from becoming the master of my domain. Sprinkle in a constant struggle with Nicotine addiction and I think I fit the bill moderately well.

So why is this a good thing?

Luckily I know where to draw my lines when it comes to vices and substance and have strict boundaries - if it is unhealthy/damaging and I suspect I will like it, I never try it. Sorry meth, maybe in another life.

Some of my friends who have been on this wild ride with me (life) for a few years will know, I swing in body weight by about 30lbs pretty consistently. Why?  Because of addiction. Whenever I find myself getting back into exercise, I don't just dip a toe in and establish a healthy life style, I go whole-hog. 7 days a week, multiple times a day. It's an unfair advantage, I become addicted. Unfortunately for my waist line, I never end up loving it enough to end up with a new long term addiction.

Oh well that is just the eb and flow of life.

Now lets look at how this affects my professional life?

I love what I do for a living, I don't have children, so for me, work is life. Dare I say it sets me, no no no, we won't say that.

It is just an unfair advantage. You can't be my competitor.

You don't get it, do you? 80 hour work weeks? Unacceptable, the addict in me craves 130 hours. I am never off. You are eating dinner with your family, me? I am snorting lines of Soylent Green while developing a new business plan/piece of technology/method of crushing you.

3AM Saturday - Wake up in middle of night to use the bathroom...
- First thought, lets find that bathroom
- Second thought, did I sleep enough so I can return to my work?

6AM Sunday - Is it to early to start sending emails to employees?

11:45PM Tuesday - Why don't these customers work harder and reply at all hours of the day?

12:15PM Thursday - I can't believe people take lunch so regularly, how can they eat with all this anxiety around returning to their computers.

8:00AM Friday - Oh no, must hurry, half of my contacts vanish in a few hours for something they call the weekend, I just don't get it.

How can you compete against someone who get's a dopamine rush from working every waking hour of the day?

I just don't know how to play and relax. Because playing and relaxing is stressful, I can feel the cortisol levels backing up. This isn't good, it makes me angry, I have to return to my work. Just a small hit, I swear I won't abuse it, just one more bump of this drug called power point, maybe a few quick lines of code. I swear I won't use it all up - OK, maybe my inner narcissist it lying... gimme all those PDFs, and give them to me now.

While you are busy burning out, I am getting high on my own supply. Biggie Smalls got it all wrong.

Saturday, February 3, 2018

iPhone X - Comparison of A1865 vs A1901/A1902

There is a lot of debate over the Qualcomm vs Intel modem versions of the iPhone X (and iPhone 8 AFAIK).

The A1865 contains a Qualcomm CDMA compatible modem, and is typically sold in the USA for Sprint and Verizon customers. You can purchase an unlocked A1865 for Verizon at the Apple store for full price.

The A1901/A1902 contains an Intel modem and supports all networks, sans CDMA providers.

Both the A1865 and A1901/A1902 support all global GSM standards.

So why get the A1865 if you don't need CDMA? Well from my speed tests the Qualcomm performed significantly faster in almost all conditions than the Intel modem. My methods of testing were not super scientific. I purchased both phones, plugged in the same T-Mobile SIM card and tested them each one after the other in locations I commonly sit with no WiFi coverage. All tests were inside of buildings around the Bay Area.

Here are the results:

So there you have it, an in the field comparison of the iPhone X Qualcomm modem vs. the iPhone X Intel modem.

Non-measurable performance differences:
- The iPhone X with Qualcomm seemed to perform drastically better in areas with low reception (1 bar).
- The iPhone X with Intel seems to have a slight advantage on battery. When carrying both of them for a few weeks I found the Qualcomm always ended up slightly lower on battery. Many other reviews online claim the Qualcomm is more energy efficient, esp in bad reception. This does not seem to be the case.
- The iPhone X with Qualcomm modem has a much more stable bluetooth connection. The Intel modem version (like my prior iPhone with Intel modem) has issues with BT audio crackling with my Apple Airpods when in a call (happens randomly for a few seconds per call and then clears up).

Favorite Products

Electronics / Accessories

Best travel computer:

iPad Pro 10.5 256GB + LTE with keyboard cover and Apple Pencil:

Bonus: Add a T-Mobile international sim card for $10 a month - 5GB roll over data a month with free international roaming. Never be without a working computer, no need to chase down wifi. Combined with killer battery life, ability to sign/send documents, hand written notes, and side by side multi tasking. There are few tasks that leave me wishing I had a normal computer/laptop when traveling. Factor in it's size, weight, small cable / charger (same as for phone) and it becomes a no brainier. For those who need to present the Lightening/HDMI cable works brilliantly. 

Bonus: Combine this with a short 1ft Anker Powerline Micro USB cable and Anker High Power Auto Charger for a winning combination

Best iPhone X Case:

PITAKA Carbon Fiber (with rubberized coating) case. Includes embedded magnetic plate for above mount. 

Best Battery Pack:

Aukey 20,000mAh Pack with 3 outputs (USB A) and 3 inputs (Micro, Lightning, USB-C)

Best Chargers:
I usually take one of each - The mini charger will do 2.4 amps (I have tested) of total power, this is actually more than the 10w iPad charger. These are almost as small as the included Apple iPhone charger. With international travel it isn't uncommon to only have one good outlet to use to setup a charging station, so I keep the big charger (iPad, iPhone, Battery pack, iWatch) but usually try to weasel one of these guys in near the bed with a long (7ft) iPhone cable. 

My current electronic travel kit:

Inside of a BAGSMART Travel Universal Cable Organizer Electronics Accessories
1 x Anker PowerLine Micro USB 3ft
1 x Anker PowerLine Lightning Cable - MFi Certified 1ft (usually used on plane or in backpack with battery pack)
1 x 1 M iWatch Cable
2 x British Style Plug Adapters (in universal international sockets, these usually stay plugged in best)
3 x random others - usually used as risers out of deep surge bar sockets. 

Friday, January 5, 2018

A simplified explanation of "Spectre" and "Meltdown" security exploits

Lets talk about what programming is at a high level, it is a specific set of instructions a computer must follow in order to complete a task. For my example I will use baking a cake:
  1. Check recipe for ingredients
  2. Inventory kitchen for ingredients
  3. If you do not have all ingredients go to the store
    1. Get in car
    2. Arrive at store
    3. Buy missing ingredients
    4. Travel home
  4. If you have ingredients begin preparation
    1. Combine dry matter and eggs
    2. Stir ingredients
    3. If the oven is off
      1. Turn on oven to desired temperature
      2. Wait for 15 minutes
    4. Place ingredients in pan
    5. Place pan in oven
    6. Bake for 30 minutes. 
  5. Remove cake
  6. Enjoy cake

Normal execution mode

Modern processors have many cores (cooks), think of these cores as miniature processors that can each do their own task or in our example they would represent second cook in the kitchen. 

In order to speed up the execution of requested tasks modern processors begin the execution of multiple steps of work at a time, often the work they begin processing is part of a logical conditional statement (IF this THEN do something). They sometimes get the prediction of the logic statement correct (speculatively) and this will speed up the overall execution time of the task.

In our example it would be similar to having two cooks in the kitchen. At the beginning of the task, we would proactively dispatch one of the cooks to the store, in a prediction that we will need ingredients to bake our cake. This would happen in parallel to the first cook beginning to check the recipe. The assumption (speculation) is if we arrive at the conclusion we are missing eggs, we have already began work on fetching the eggs, so we can get to the step of combining ingredients faster. If our cook who job it is to check inventory arrives to the conclusion we have all of the required ingredients, we tell the second cook who is headed to the store to undo his effort of acquiring supplies (return items to shelf, get back in car, drive back to home). This is called a roll back. 

Speculative execution mode

Modern processors are designed to  pre-process various steps of conditional statements in effort to improve the overall performance of a computer. In order to more accurately predict which decision path they will need to start working on, modern processors utilize various types of local memory about prior decisions to make this prediction via their local cache and BHB (Branch History Buffer). If the last time you baked a cake and you were missing ingredients, they will predict that this time you will also be missing ingredients and take the necessary steps to remedy this ahead of time.

Like all fortune tellers, they don't always get this prediction correct and will need to roll back / or undo their proactive work. In our example they would recall the cook who was dispatched to the store, but they do not purge the prior list of ingredients from their memory. from the last time you tried to bake a cake. Removal of this prior memory would negatively impact the performance of the system, and as such the prior decision/memory persists in the system.

The current security vulnerability takes advantage of the CPU's prior memory state, it allows an attacker to read this data, if the prior state was something like a log in session, it could allow an attacker to obtain privileged information such as a security token or password by accessing this memory that is tracking the current inventory of the kitchen. There is a second level to this attack where the attacker can prime the conditional statement with nefarious code and force the CPU to execute this code out of order in order to take over the system, but this concept is beyond the scope for a high level summary - just know this is where things get dark and dirty quick.

Many people have asked if we (security community) believes this exploit as been known by groups such as the NSA/CIA/FBI, to our knowledge it was not, as this exploit is rooted in the base hardware of the processor and negatively impacts their systems as well. Due to it being a hardware bug, it is exceptionally difficult to patch and control. We strongly feel it would have been reported to Intel if discovered. 

I hope this explanation helps a few of my non-technical friends to understand the reasons why this bug is so serious, as the only true fix is a redesigned/replacement of your computer's CPU (brain chip). In the meantime major operating system vendors (Apple, Linux Community, and Microsoft) are working on software patches that will limit the scope of this bug/vulnerability, but unfortunately the fix will have to disable a key feature that was designed to boost the performance of modern processors, as such it will have a negative impact to all systems that are vulnerable to this attack. Early estimates indicate that the patch for this vulnerability could slow down all computers vulnerable to this attack by 30%. Imagine if your processing task (computer vision/perception/AI) utilized 95% of your systems performance... yup oooops. 

A big hats off to the team at Google's Project Zero for discovery of this critical bug. 

Sunday, June 18, 2017

I hate magic

What is magic? 

mag·ic (noun) - the power of apparently influencing the course of events by using mysterious or supernatural forces.

Why do I hate magic?
It spoils the ordinary, it raises the expectations of daily interactions, it provides excitement to usually unexciting experiences. It is a word I loathe almost as much as "rockstar" or "ninja", hell it might as well be in the recruiter cold-calling playbook as far as I am concerned. Unfortunately, it is an adjective I now must use.

I have hated the Apple earbuds that have accompanied every iPhone and iPod I have ever purchased. The earbuds sound horrible, the cord knots up, they are constantly falling out, and if they are seated tightly enough to not fall out they end up causing discomfort quicker than spoiled sushi. So what did Apple do? They introduced a new version that is uglier than sin, requires charging to use and cost $169!!! It's official, Apple has gone full potato on us.

Enter the spoiler: Apple Airpods

Apple Airpods entered the market to address the annoying removal of the 3.5mm headphone jack from the latest generation iPhone. When I first saw the Airpods on stage I thought "Wow, if Steve was still alive there would be a hanging for this". The first time I saw them in use I couldn't help but be shocked and appalled at the same time. They were the ugliest thing I had ever seen from a company whose soul-image is around creating beauty. I guess the designer of the neon coloured iMacs back in 2002 was allowed to have a second go at a product launch.

At home, I have a set of high-end Fostex over the ear headphones driven by a lovely little Schiits tube amp. If I am at work or travelling I have a set of Bose over the ear headphones with me (lets not even talk about how shitty these actually are - but fill an unfilled void). For everywhere in between, I have a set of Jaybird wireless in-ears. I have this audio problem licked.



On the go:

The Jaybirds have the same problem for me as all other in-ear headphones, they don't F'ing stay in. Regardless how many aftermarket memory foam inserts I try, they slowly wiggle out. However the Jaybirds have a second party trick, they are never charged when I need them. They take a microUSB charger and often live on my desk or in my backpack until I need them, at which time they quickly find their way to some dark corner of my house where I keep the one microUSB charging cable. They live on that cable for a few days until I realise I needed them and don't have them. Then they quickly go back in the backpack, and the cycle repeats. It is a vicious cycle but occasionally when the Moon is in alignment with Jupiter they are actually there when I need them.

Long Live Jaybirds, RIP Jaybirds!
Well after a few years of the vicious cycle described above the Jaybirds have died. I needed a replacement, and a set of these ugly as sin Airpods landed in my lap. I figured I will try them for a day, affirm everything I know and hate about them and proceed to scalp them on eBay for more than I paid for them (as of writing there is a 8+ week lead time on them from Apple).

So how bad are they?

I am not going to write an in-depth review on them, other far better writers have done this already. What I will say is they are truly magical. It turns out everything I felt was wrong with in-ear headphones wasn't the headphones themselves, it was the cord. Remove the cord and all the problems fade away. Combined with a very well thought out carrying case that doubles as a charger and all other wireless headphone problems vanish as well.

Sound quality - 6/10 (for what they are, remember BT is not for high-quality audio)
Visual design - 3/10
Visual design when worn - -50/10
Quality of build/materials - 10/10
Ease of setup/use - 10/10
Trojaning into your life - 10/10
Sets I now own - 2 - I hate me too

If you own an iPhone and walk/run/commute on public transit or use a Bluetooth headset, you need to own a pair. They are one of the few pieces of technology I would ever call magical.

An End to Tea Reviews

No, I have not stopped the consumption of tea. However, like all hobbies, the 80/20 rule applies here. When I set out to on my tea drinking adventure there was not much I knew other than it could provide a stable source of caffeine. For those not in the know, caffeine is an essential chemical in the design and manufacturing of quality software. Unlike other essential chemicals, caffeine does not react with the atmosphere and therefore does not require an inert gas such as argon to be using during the production of software.


I learned a lot:
- Loose leaf
- Different regions
- Different elevations
- Different fermenting and handling
- Different variations of herbals
- Brew volume, time, temperature and expansion

I really enjoy sharing my knowledge and experience with people, but unfortunately, I cannot continue with tea.

Months, Pounds and Hundreds of dollars later I have found my favourite teas are high mountain oolongs. High elevation grown oolongs have a robust but delicate classic "tea" taste, a forward note of sweetness, mild hints of floral aromas and finish with a touch of discerning moisture. mmmmm Unfortunately for you, my friends and readers most of these teas I am enjoying today are sourced directly from China via a local shop and their packaging is well, either non-existant or 100% labelled in characters I do not have time to figure out. If you are interested in sourcing some of these teas I have become a regular at Mountain View Tea Village on Castro St in downtown Mountain View. Of the few that have English names I highly recommend the Drunken Princess Oolong, but most of the others I haven't the slightest clue on their names. Sorry. Visit your local tea shop and work with the staff to appropriate a collection that best matches you taste buds. For most of the Oolongs, I find the first cup is usually good, but the second and third brews of the leaves are where the flavour comes alive. They probably would perform much better with the Gongfu method of brewing, however, that method does not fit into my life.

Friday, April 7, 2017

Death, taxes and note taking

Few things in life are certain, taxes and death arrive without any help on your side, but being successful in business requires active attention. The most important asset I have in business is data organization.

Over the years I have developed a system for note taking, it involves a stack of moleskine notebooks, a few pens and routine evening and weekend organizational habits. I tend to fill one notebook every 2-3 weeks while often needing to recall 6-8 months of data, meaning I have a dozen notebooks on my desk at any given point in time.

How I take notes. 

Like most professionals I have a system and I stick to it like a religious ceremony.
- The first two pages are kept blank for use as an index.
- Every page I number the top corner, date, and title the page.
- First line is people who attended/involved
- Action items I need to act on get a square - I cross it out one I have completed or I have moved it into a task tracking tool.
- Action items from others get a triangle - I cross it out when they have completed it or I have opened an email item with a timer to remind/bump the requirement.
- Critical thoughts I want to table or narrow in on (either in meeting when I have a chance or after the fact) get marked with a +

It is a pretty basic system and has served me quite well for the last decade.

Unfortunately unless it is in my current notebook, a challenge has always been recalling data, usually involving digging through my notebooks' indexes late at night.

Most people know I have been a pretty big fan of Evernote over the years, I can business cards into it, I have email forwarders automatically send emails and attachments to it. I have IFTTT wired up to automatically snip things I have saved/liked on social media sites. It has become the dusty filing cabinet for my brain.

I have tried many times to maintain the rigor of scanning all of my notes into evernote for easy search and recall, but it never sticks. Something about the process just feels to after the fact and pointless. I have even resorted to testing out evernote's own custom moleskine notebooks which help with OCR.

I even have dabbled time and time again with using smart pens, stylus and ipads, etc.. nothing ever came close to replacing the pen. The pen is mightier - long live the pen. 


4:15 PM - the sun's assault on this other wise perfect Sand Hill conference room made my hands sweat. My co-founder and I began settled into our chairs for the next hour. A refreshing blast of AC filled the room as the firm's partner entered the room. We began talking about how we were going to change the world, how he was witnessing history in the making, I paused.

He was taking his notes on an iPad Pro with an Apple pencil... and his notes looked phenomenal.

I continued, occasionally glancing over at the over sized iPad as it continued to scroll and fill up with pages of notes as he effortly treated it just like a sheet of paper. Maybe it was just a new toy, maybe he was trying to be cool, keep to the message.

After the end of our presentation when we were casually chatting I looked more carefully at his iPad, it was beat to shit. It was no new toy, it was no desk queen, that iPad had lived a full and hard life, could that mean he actually has found a system that works?

I had to form my own opinion, after our meeting I popped by the Apple shop and played with an iPad Pro and pencil. Wow. It actually works, wait no, it works perfectly.

Without much internal dialog, the "need" to replace my old iPad mini seemed pretty obvious (blah).

New work flows

Historically all roads lead to Evernote, having used the product for nearly a decade I have a few thousand items in it - business cards, notes, receipts, recipes, random PDF files, and the occasional photo. Evernote has built in sketch writing and owns Penultimate - this should be easy to augment my work flow. It wasn't, I suddenly found myself needing a new hammer.

Evernote - Great at storing, searching and tagging data. Internal handwriting smoothing algorithm makes my handwriting worse, a lot worse. Inserting an image to annotate is annoying, insertion is easy, annotating is painfully awkward with a writing tool. All notes are OCR'd and searchable. Final hassle with Evernote is it does not have a auto or manually scrollable internal page system. This means once you get halfway down the page your hand starts to hang off the surface of the iPad.

Penultimate - Good writing interface, infinite scrolling paper, no features for importing an image / PDF and marking it up. It automatically syncs written notes into a special notebook inside of Evernote, but the notes sync in via Read-Only mode, making extra meta work damn near impossible. These notes are OCR'd via the cloud and easily searchable.

Notability - Fantastic writing recognition, easy to import files and annotate. A clean and powerful interface, probably the best writing experience on an iPad pro. No ability to search handwritten notes with OCR is a major problem. Lacks robust integration with other workflow tools. Can export PDF to Evernote however Evernote only OCRs handwriting in the form of an image not PDF, would require all notes go through PDF 2 JPG conversation, no automatic way of achieving this. $9.99

GoodNotes - Very similar to Notability - fantastic writing, great interface, has an internal OCR tool that works very well, lacks integration with other tools I use for enhanced workflow and archive. $6.99 - UPDATE - It appears GoodNotes has an image export function that also supports external app EverNote. We may have ourselves a winner.

OneNote - Microsoft is making it very clear, they want to win the cloud game. OneNote has been around for over a decade, I remember having used it back in 2005 and it was decent back then. Well OneNote is even better now, it is leaner, faster and turns out fantastic to write on. The infinite scrolling makes it a dream to notepad on. OneNote is integrated into Microsoft's cloud very nicely so all your notes are everywhere-all the time. MS has a very low price for cloud access, $99/yr for 5TB of data and access to ALL MS Office suite. Pretty awesome. The bad - OneNote no longer has a way to easily export data, new thinner version lacks the ability to search for todo tags. If you want to exist 100% inside of OneNote and are happy with it's workflow, this can work, unfortunately I am not.


At this time I will continue to experiment with gluing multiple tools together in an effort to get to the final perfect solution.  Suggestions?