Getting Closer to a Star Trek Computer?

Reading this recent Tech Crunch article made me think that we may be a step closer to  the day that we can talk to our computers and get information that we want as if we are conversing with the computer.  That is, Google’s goal (and arguably the goal of many other companies) of the Star Trek Computer.  Siri or Google Now isn’t even close to this yet.  Why?  Because the problem is hard.   The article linked to above reminds me of a keynote at KDD 2012 by Robin Li, Founder and Chairman of Baidu, China’s largest search engine.    His talk was less about established problems in Machine Learning and more about the problems that the company faces.  One example is  the ability to do voice recognition across the various dialects of Chinese and in the presence of background noise.

In any case, I think the voice-interacting Star Trek computer is one of the largest unsolved problems in Tech.    I look forward to the day that I can be driving in my car or walking the dog and say, “Computer, inform me about the history of public education in the United States …”.   In a future post, I may compile a list of specific technical issues that have prevented us from this goal along with areas of research containing valiant attempts to solve parts of this problem.  I welcome emails and comments from AI/Machine Learning buffs with pointers :).


Open Doors with Google Hangouts

Open Doors LogoIn an earlier post, I mentioned that active forms of communication like video chatting and telephone conversations can be pretty unnatural when you consider family and friends just ‘hanging out’ at home together, for instance.   I also mentioned that maybe video chat can be treated in a more passive manner to encourage a more passive, natural chatting style.

Typically, video chat invitations need to be handled immediately: you either have to accept or reject the invitation to chat right away.   One of my previous roommates and I had a neat system: the degree to which our doors were open indicated our openness to a ‘spur of the moment’ of chat.

Ideally, a similar approach could work for a video chat where the request to chat doesn’t require an immediate response.  You ‘open your door’ to other people and they will be informed.  They can drop by so long as your door is open.

A nice Google Calendar feature allows you to create an event (you could even call it ‘Door’s open’) and everyone who is listed on the event can follow a hyperlink to a Google+ Hangouts video chat.   It’s a subtle difference from the traditional video chat invite: instead of querying a friend and waiting for a response, you just send a  link to them (e.g. via an email or text message).  They can join if they want. Or not. No big deal.  I think this is a more concrete suggestion for how to use tech to improve our communication with close family and friends than the high level thoughts I posted before.   I’ll be trying it out and posting my ‘results’.   Could be nice to streamline the process with an app, but this ‘hack’ allows me to try it out first!

Automating Organization and ‘Sticky Items’

StickyPlayI had a nice  in-person discussion after the last post.  The basic idea is that there is an  overwhelming amount of manual effort that goes into organizing a hierarchy.    I think this is a really good point, and I really like the idea of ‘automating’ the organization process or algorithms providing suggested or ‘default’ organizations.  This being said, I also like the idea of user input in the process.  Even if you have a nice automated way to organize your data, what if you really want to keep something organized the way it is?   This approach would allow you to access your data in a way that you specify.   For example, in a snapshot of my Google Play music library above, what if I wanted the three items in blue ‘stuck’ or ‘pinned’ at those locations?  That would be preferable to typing in a search bar or scrolling through a list of albums automatically sorted by some criteria.   This hybrid approach  allows user interfaces to provide automated suggestions for organization while at the same time letting the user keep certain things where they want them.   Another example is phone apps.  Right now we manually organize our apps on our home screen(s), but what if apps are organized, at least in part, by how often they are used while certain commonly used apps are ‘sticky’ because you like them there?

The Return of the Great Filesystem Hierarchy

The problem: I have data of the same general ‘type’ spread across many web services and my personal files stored on my computer.  For example, I have PDFs of books in a ‘Books’ directory in my file system and books from Amazon in my kindle.  Or I have movies/videos on my computer, on the Play store, on Amazon, etc.    There is no one place where I can see/browse my entire movie, music, or book collection across these services.  I want a way to still be able to use certain  apps and services while still maintaining a high-level view of where all my stuff is.  For example, when I have a Kindle book, I want to still use the Amazon reader and all of its features, but for a PDF I may prefer to use OS X’s Preview or some other reader.   I want a way to reconcile the fact that, for example, a ‘book’ is the type of thing I really care about organizing with the fact that applications like Amazon’s cloud reader want your ‘thing’ to be your entire  library of books.

The file system is a solution:  Remember the days when all of your stuff was on a single file system organized hierarchically?   It’s not so convenient anymore to store all of your data in one place, and super awesome and useful cloud apps have contributed significantly to this.   However, by using your file system as your primary view, I’d argue that most of your ‘things’ across can be organized again.  One solution is to use file types that represent links.   For example, in OS X these are ‘.webloc‘ files (just drag a link from your browser to the Desktop and you will see how this looks).   You can double click on one of these and it will open up the link in a browser.   Between apps on my computer and cloud apps, using these links covers most of my cases (e.g. you can link to a specific book on Amazon or to an album on Google Play Music).  There’s even an app in Google Drive (by default using .glink extension) that properly handles .webloc files.

A natural extension to this approach is the ability to associate each thing with metadata (e.g. like a row in a database) allowing you to view  your data in multiple ways.

In any case, using files and links to web apps seems to be a good interim solution to this problem (which first appeared as a G+ post).

State of My Gadget Union: HP Chromebook 11

HP Chromebook 11

I have made two new Googly purchases recently.  The HP Chromebook 11 and the Nexus 5.

Nexus 5 thoughts soon, but after a few weeks with this Chromebook, I have found that this has effectively replaced my tablet and a surprisingly, many things I do on my Macbook Pro Retina 15”.   One of the reasons I wanted to try it out was that I found I often wanted to chat or write a quick email or do some basic keyboard-level content input with the tablet, but didn’t want to pull out a full-fledged computer.  This got me interested in the announcements for the Chromebook and the new Microsoft Surface (or potentially a new Macbook Air 11”?  That would be very tempting).   So for me, while the Chromebook is more of a notebook than it is a tablet, I find that I use it more like a tablet: to quickly look up and input content.

Pros in my experience:

  • Surprisingly, this is currently my most used device.  My Macbook Pro Retina 15” is now used almost solely for larger, visually-intensive projects like creating a presentation or poster.  And my tablets have become fancy remote controls lately.
  • Super inexpensive
  • Incredibly handy: can fit a tiny netbook/tablet bag
  • Great for content input vs. a tablet
  • Micro USB charging very handy: don’t have to carry two chargers
  • Display is really good (this is what got me interested in the first place): very nice contrast and viewing angles (even when compared to the Macbook Air)
  • Font size scaling in Chrome is nice: iPad + keyboard, for example, doesn’t scale fonts well, so it’s hard to use when placed at a distance: i.e. towards your lap or knee vs. held up near your face.  Chrome on a Macbook Air can scale fonts, but that’ll run you about $1,000: and you’ll have a less appealing display at the moment.
  • Very light: can easily hold it in one hand
  • Nice to use for coding via SSH


  • Can be laggy/frame-droppy at times: especially when compared to a Chromebook Pixel,  Mac or Google/Apple tablet experience.   For a similar price, I believe the Asus and Samsung models may be faster, but the displays aren’t as appealing.
  • Native apps like Hangouts or Keep don’t appear to support font size adjustment. I just use the browser instead.
  • If you were to use this for presentations, I’m not sure how you would give one.
  • Low battery life.

For the price, those are the only cons I can think of after weeks of use.    This Chromebook may not have been targeted to a geek like me who already has much more powerful, beautiful machines, but it certainly has won me over.   Things I’d like to see in the next iteration of entry-level Chromebooks by Google:

  • Smoother.  Please make this a smoother, more responsive laptop!  Maybe the Asus or Samsung models are smoother, but I really liked the display on this one.  I think many would pay the premium for this.  One of the things I like about Apple products is that no matter what ‘line’ you get from them, you typically don’t experience any major lag in performance for basic tasks, and I think this is a good standard for Google devices.
  • Ramp up native Chrome apps to be more like a nice tablet experience.  For example, make a native Youtube or Gmail App that immerses you in.
  • Maybe a touchscreen like a lot of Windows models are going with (or the new Acer C720P!)?

Why Isn’t 23andMe’s Disclaimer Good Enough?

23 and Me Spit Kit

[Image from]

The company 23andMe offers a different kind of ‘tech’ than I usually talk about on this blog, but it is meant to be a useful service for you (and for the company to collect information across many individuals).  Give them $100, and they will mail you a ‘spit kit’ with a tube that you literally spit in and send to it to them for analysis. They then use genotyping to determine whether you have certain variations in your DNA that are associated with your ancestry, disease, and other potentially genetically-derived traits.

I personally used their services about a year ago, mostly interested in ancestry.  Honestly, I wasn’t  too interested in their disease associations (though I believe this will become more and more useful as we sequence more individuals and develop better computational/statistical methods to analyze the data).  In the scientific community,  genetic associations with diseases are still, for good reason, met with skepticism (see, for example, this recent article).    This skepticism has worked its way up to politicians, resulting in various efforts to regulate laboratory developed tests.  I believe genetic testing and screening has a lot of potential and am excited that so many efforts exist to provide individuals with these kind of services, but as many scientists would probably agree, we are just beginning to understand how complex traits and diseases are associated with genetic variations across individuals.

23andMe recently received a letter from the FDA to “immediately discontinue marketing the PGS [Personal Genome Service] until such time as it receives FDA marketing authorization for the device”.

What surprised me when reading the letter was this statement:

Some of the uses for which PGS is intended are particularly concerning, such as assessments for BRCA-related genetic risk and drug responses (e.g., warfarin sensitivity, clopidogrel response, and 5-fluorouracil toxicity) because of the potential health consequences that could result from false positive or false negative assessments for high-risk indications such as these. For instance, if the BRCA-related risk assessment for breast or ovarian cancer reports a false positive, it could lead a patient to undergo prophylactic surgery, chemoprevention, intensive screening, or other morbidity-inducing actions, while a false negative could result in a failure to recognize an actual risk that may exist.

Perhaps because I have training in computational biology, I always assumed this information is meant to be more like a ‘hint’ or ‘suggestion’ that you might want to investigate a medical issue further with a physician who can conduct specialized follow-up tests and recommend further courses of action.  For instance, I have a minor version of Beta-thalassemia that apparently doesn’t require medication or affect my daily activities. 23andMe correctly identified that I have this trait.  This disorder can be discovered via blood testing by a physician, so if I didn’t already have these tests, my 23andMe report may have alerted me to investigate this further.   I think this is useful information.

My 23andMe page also displays this disclaimer:

The genotyping services of 23andMe are performed in LabCorp’s CLIA-certified laboratory. The tests have not been cleared or approved by the FDA but have been analytically validated according to CLIA standards. The information on this page is intended for research and educational purposes only, and is not for diagnostic use.

I do think that it could be made more prominent perhaps with a clause that states that some of these associations are in a stage of ‘early research’, but I am writing this post more to pose a general question to anyone that has some insight into the legal aspects of this recently newsworthy topic: why isn’t the disclaimer above (or a better one) good enough for the FDA?   Certainly, I understand that the general public doesn’t have the same knowledge I do about genetic tests, but given a disclaimer like this, why can’t 23andMe sell me their services and let me make follow-up decisions?

Some FDA links that are relevant: