A Little Ludwig Goes a Long Way

A smattering of opinions on technology, books, business, and culture. Now in its 4th technology iteration.

Surround.io is now part of Xevo

15 December 2016

Been working on this for quite a while, our team is now part of Xevo (xevo.com). Very excited to join Xevo, the founder of Xevo is Satoshi Nakajima, former colleague at Ignition and at Microsoft, someone who I have long enjoyed working with. And the rest of the team at Xevo is just great, and they have a great existing position in the automotive market. We’ll be focusing our technology on solutions in this space which is exciting – real problems, the ability to deploy to tens of millions of customers, with very demanding technology at the forefront of the industry – machine learning, cloud, iot. Really looking forward to expanding our team, building the business, and making a difference.

I’m a little busy this week with work and personal stuff but ping me if you want to catch up…

AMZN should make their own home automation gear

27 November 2016

I purchased a TP-Link Smart Plug, a top seller in home improvement, to control turning on and off our Christmas tree lights from our Amazon Echo. The final working solution is pretty slick, it works reliably, and it is pretty tolerant of slight differences in phrasing.

打印But setup was a long path of horrible. Create a tp-link online account. Download their Kasa iOS app (Really love the profusion of brand names – control our TP-Link™ Smart Plug with the kasa™ iOS app using the Alexa™ integration with our Amazon Echo™). Plug in the TP-Link device and then join it to the kasa app, doing the “private wifi hotspot” dance common to so many iot devices, where you have to leave the app and join a goofy wifi hotspot temporarily. Wait while the pairing happens. Then set a friendly name for the device in the kasa app. Go to the url in the paper instructions to set up Alexa integration. This points you back to a menu in the kasa app. This sends you back to a web page with Alexa integration instructions. Go two menus down in the Amazon Alexa phone app (why isn’t this the Amazon Echo phone app? I bought an Echo. I never bought anything called Alexa) to install a new smart home skill, the TP-Link Kasa skill. Search in the Alexa app for connected devices and pick the tp-link device. Provide the Alexa app with tp-link login credentials. Now I guess it is all set up but I have no idea what phrase to say. Take a guess that the friendly name I gave the tp-link device 8 steps ago is the thing to say, and yay it is.

I bet when I install a 2nd one I get to do much of this again. Kind of dreading that.

How will regular humans do all this? Return rates and support calls must be high. The tp-link should have been pre-provisioned with the necessary wifi connectivity, and the Alexa skill should have been pre-installed, and the phrase should have been pre-configured to a default. And I should have just plugged it in, and it should have worked in seconds.

If AMZN wants this to be a mainstream use, they need to preconfigure the devices, like they preconfigure Kindles or other AMZN hardware. Which probably entails AMZN building their own devices, or running a very strong branding/qualification program. Otherwise this is going to be a very niche experience. Or someone else (GOOG or APPL) will figure this out and displace the Echo.

Let's stay positive and focus on Seattle and the West Coast

16 November 2016

I find myself a little befuddled these days about our country. Some days I find myself feeling a lot of anger. The decision by a significant minority of our electorate to hand the reins of government to an unfit man, for the sake of unspecified change, is difficult to understand. But I can’t control what happens in distant places, I can’t control how people feel.

15032247_10103910583670978_4320759830836294903_nWhat I can control is my own effort and time. And the real opportunity in front of me is to commit myself to making our local community and state an even better place to live. To be more tolerant, more welcoming, give more people a hand up, help create more economic activity, help more people who need help, etc. Seattle is a vibrant place, the state of Washington is an amazing place to live, the West Coast is a great region, but we are not perfect and we have more to do.

As a first tiny positive step, we’ll be attending the rally at Green Lake this weekend to stand up against fear and hate, and to show our support for the most vulnerable parts of the community. And we also want to demonstrate to local politicians that the community is committed to tolerance and civil rights, and that we will stand with local leaders to fight racism, sexism, xenophobia, etc.

I am confident that we can continue to make Seattle and the West a vibrant and attractive place to live, with great broad-based economies and great tolerance. We have much to do, but we have a great set of people here to do it with.

Recent Books -- Queenpin, Emerald Lie

22 October 2016

  • Queenpin by Megan Abbott. 52408-_uy475_ss475_Wow this was a fun noir tale of a young woman working her way up the seamy underside of the city. Really enjoyed it.
  • The Emerald Lie by Ken Bruen. A detective tale of a sort, tho the detective basically is a drunk who stomps around like a bull in a china shop, not really solving crimes but creating havoc. Nice atmosphere.
  • The Sympathizer by Viet Thanh Nguyen. This was a bit of a chore, and at the end was very painful to read due to the intense subject matter, but a very good read about the complexity and senselessness of war. Certainly can understand why this novel got so many accolades, the writer has a very distinctive voice.
  • The Big Sheep by Robert Kroese. I guess this is was an attempt to do a Sherlock Holmes style story in a near future America, but eh, just read a Sherlock Holmes story.

Recent Book -- Hitler's Thirty Days to Power

25 September 2016

Hitler’s Thirty Days to Power by Henry 30daysAshby Turner Jr. I read this years ago, and was reminded of it recently. A very very good book and perhaps relevant read, the detailed story of Hitler’s precipitous rise to power, and how he was enabled by inaction or self-serving actions of the politicians around him. The idea that he would be held in check by more conventional politicians around him was a historically tragic error.

Worth reading. One of my all-time favorite history books. Worth reflecting on.

Weekend Software Project -- Audio classification

19 September 2016

This weekend I experimented with some audio classification tools. It was an up and down experience.

I’m interested in a couple features – hotword detection ala “Hey Siri”, “Alexa”; sound event detection (i.e. identify a glass break or gunshot); and acoustic scene classification. I didn’t dig into general speech reco, I’ve dabbled with that in the past.

I experimented with two projects this weekend – the Kitt.AI Snowboy hotword detection tool and the DCASE 2016 baseline system. I spun up a single docker container that hosted both projects. This was a bit of a PITA, mostly due to getting sound devices to show up in a container. I should post something separate just on that adventure.

Ultimately I got them both working. The Snowboy detector works reasonably well with their universal model; the personal models you can create work also, tho they are not speaker independent. The DCASE code also spins up and training can be done on a standalone machine in a modest amount of time. Unfortunately, both these projects have very restrictive licenses, which makes them kind of useless for anything besides a weekend project.

At the root of almost all these systems is a common feature extraction algorithm, MFCC extraction. MFCCs are explained reasonably well here and the author provides a python reference implementation with an MIT license. I’m inclined to dig more into this path going forward.

Re GMO or vaccines, I don't think most people are anti-science.

13 September 2016

What they are is anti-science establishment; they have lost trust in a science establishment that has allowed itself to be swayed by moneyed interests.

Consider today’s news on the sugar industry:

sugar_2xmacro…five decades of research into the role of nutrition and heart disease, including many of today’s dietary recommendations, may have been largely shaped by the sugar industry.

“They were able to derail the discussion about sugar for decades,” said Stanton Glantz, a professor of medicine at U.C.S.F. and an author of the JAMA paper.

There is just as much money swirling around pharma and around agriculture, you can bet that the science storyline has been distorted by this money. And that is what people are really saying when it comes to GMO or vaccines – they want to believe the science, but they can no longer trust the science establishment to tell an unbiased story. And science with a pre-determined agenda is no longer science.

We need a re-opening of science. We need far more transparency about funding. We need more funding independent of commercial interests. We need more open results – this EU proposal seems like a good thing. Above all, we need the science community to recognize the problem it has created, the loss of faith it has created through its own actions, and to take charge of healing itself.

Politics are no uglier or dirtier today than in the past -- Same as it ever was

12 September 2016

I see so many people bemoaning the terrible state of politics in this country. Some perspective:

In short, don’t despair about the horrible state of the politics. As Churchill said (tho he lifted the quote from someone else): Democracy is the worst form of government, except for all the others.

Weekend product trial -- the Nucleus "anywhere intercom"

11 September 2016

Another one of my rash kickstarter/indiegogo acquisitions, the Nucleus. I purchased the two pack so I could use them to connect to each other.nucleus-1

The units feel like cheap clunky ipads, which they kind of are, much cheaper than ipads. They only do a couple things tho – place a video/audio call to another unit or a phone running the app, receive a call, or act as an alexa device.

I played around with the unit standalone, as a paired set, and with the remote phone client. Some thoughts:

  • Way easier to set up than most iot products thanks to the screen, easy to set up the network.
  • As an alexa front end, it is adequate. It works just like an Amazon unit, seems to support all the same commands. The speakers are worse than the Amazon Echo or whatever you might attach to an Echo Dot. I wouldn’t use this as a music player, but it is fine for responding to voice queries. Now we already have an alexa in our kitchen and having two alexa devices in the same room is not a good idea.
  • As a receiver of calls from the mobile client, I kind of like having a dedicated always-on handsfree device. You can take a call in the kitchen without interrupting what you are doing. And having a dedicated device for the 75% most common call (ie spouse to home) is sensible. I can see some form of this scenario being useful.
  • As an initiator of calls to a mobile client, it is useless. I need to have the mobile app open and running or I can’t receive calls.
  • As a two-unit video intercom, I am not convinced. We do not have a small house, but I couldn’t figure out why I would put two of these around the house or where I would put them. We don’t have kids in the house, maybe I would like it more then. We do have a vacation place and so I placed one there so our two homes could be connected. However, internet connectivity at the vacation place is squirrelly and after a day, I could no longer connect to the unit at the vacation place. So that scenario isn’t working.

I haven’t thrown it all in a drawer yet like so many others I have trialled but it is not a part of our daily life yet either.

Recent Books -- Corsair, Morte d'Urban, Fluent Python

11 September 2016

  • Morte d’Urban by J. F. Powers. fp This is a slog. I am 50% of the way thru and promised comic masterpiece has yet to really appear.
  • Fluent Python by Luciano Ramalho. Bob recommended this book, and it is good, explains not just how to write good python code, but much insight into the internals of python which helps explain why you should do certain things in certain ways. I wish every programming language had a text this good.
  • Corsair by James L. Cambias. The story and characters are so-so, but the exploration of some of the societal, industrial, and defense implications of lunar mining was interesting, with the growth of private space exploitation companies we are likely to need to deal with some of these issues.

Re the last book, I’ve been reflecting on science fiction as a genre. In recent weeks I’ve been feeling bad about the genre as writer after writer dismisses it in the NY Times – Daniel Silva, Terry McMillan, Jeffrey Toobin. One can argue that I shouldn’t care about these opinions, but still. One aspect I think these writers miss is the ability of speculative fiction to explore the societal impacts of technology, as I note in the book above, and I find this to be valuable and interesting.

I was also feeling a little annoyed at these writers for their blanket dismissal of a genre, that didn’t seem very clever to me. I was happy to read Alan Moore this week, who just nails the key point that genre doesn’t have to be limiting at all:

I’m happiest when I’m outside it altogether, or perhaps more accurately, when I can conjure multiple genres all at once, in accordance with my theory (now available, I believe, as a greeting card and fridge magnet) that human life as we experience it is a simultaneous multiplicity of genres. I put it much more elegantly on the magnet. With that said, of course, there are considerable pleasures to be found in genre, foremost among which is that of either violating or transcending it, assuming there’s a difference, and using it to talk about something else entirely. Some subversions, paradoxically, can even seem to reinvigorate the stale conventions that they’d set out to subvert or satirize.

Every genre has bad writing, and bad genre writing is bad. I am going to dedicate myself to reading good genre reading, and especially writing that pushes the boundaries of the genre.

I still hate Michigan but it is nice to see the Big 10 return to form

11 September 2016

osu-mich_helmets1The Big 10 is healthier when the OSU/UM rivalry is healthy. Two games in, Ohio State and Michigan are collectively outscoring opponents 239-30. They have the two leading scoring offenses in the league, the two leading scoring defenses in the league. Let’s hope this continues until November.

Recent Books -- Multiple Choice, Station Eleven, Small Angry Planet, Playing Dead, Time Salvager, Truth, I Let You Go

03 September 2016

  • Multiple Choice by Alejandro Zambra. From the text – “You read books that are much stranger than the books you would write if you wrote.” – and that about sums it up. This is not for everyone, but I happen to like books that play with the structure of books. But don’t blame me if you buy it and say “WTF is this? Why would anyone read such a thing or write such a thing?”
  • Station Eleven by Emily St. John Mandel. truth-and-other-liesSolid post-apocalyptic novel with better characters than typical for the genre.
  • The Long Way to a Small Angry Planet by Becky Chambers. A motley crew of space travelers slowly come to realize what family really means. Pleasant.
  • Playing Dead: A Journal Through the World of Death Fraud by Elizabeth Greenwood. Don’t do it, the insurers will get you every time.
  • Time Salvager by Wesley Chu. Eh, pretty forgettable space opera.
  • The Truth and Other Lies by Sascha Arango. Nice little tale of psychopaths, murder, plots.
  • I Let You Go by Clare Mackintosh. Twisty in a way I did not expect at all. Nice read.

Weekend software experiment -- Facebook's Deepmask

29 August 2016

Facebook open-sourced its Deepmask and Sharpmask codebases last week for object segmentation in a scene. In the past I’ve tried traditional CV methods to do object masking, and it is kind of a disaster, you end up with a very finicky codebase full of heuristics and hacks, which fails as soon as it sees a new kind of image. Seems like an archetypical use case for neural nets. So seemed worth giving it a try.

Deepmask and Sharpmask come with pretrained models based on the COCO dataset, it looks laborious to label a new dataset without benefit of some mechanical turk-like process, so I decided to stick with the pretrained models.

To avoid polluting my system, and to share with the rest of the team, I decided to bring this all up in a docker container. Because our build environment has some unique characteristics, I needed to author my own container, but these were excellent dockerfile guides: Torch with CUDA and it’s dependencies. Also Torch install is a good reference.

29-Aug-2016-04-13-54

First results in the picture. Did a nice job on this image for the large objects. The biggest problem I had was running out of GPU memory. The machine I was using only had 4G of video ram and this constrains how large an image you can feed in. We had a bunch of 4K x 3K street images, I found that scaling them down to 756x567 allowed me to get them thru the classifier. My modified classifier that implements a size limit is here

The classifier is slow, seconds to tag an image. It would be interesting to keep it resident as a demon, and to just emit the metadata instead of a modified image, and see if I could get a higher framerate. Also I want to play around with both a faster video card, as well as maybe an opencl implementation to get to non-cuda platforms. This is also my first lua code ever, I have no idea which part of this code is fast or slow.

This was a fun little project. It points out that, if software is eating the world, then ML is eating software. For a certain class of problems, a fairly generic neural net plus a dataset is going to be competitive with the best laboriously hand-coded algorithm.