Cortana, I am back!

I had a great time at Facebook. I learned a lot, wrote lots of code, and worked on conversational understanding technologies. I can’t wait to see what the team will do next.

Facebook is a unique organization, with an extraordinary culture. The engineering infrastructure is unbelievable and it enables developers …


ReactGraph Part 5 – A user’s feed via “pull” and “push” graph queries

Investigation into bringing together graph and reactive computing. This fifth post in the series showcases slightly more complex LINQ-to-graph and Rx types queries for both “pull” and “push” type computation.

Application protocol over a WebSocket?

While working on a demonstrator app for the Reactive + Graph system I’ve been building in my spare time, I found myself wanting to implement a RESTful app protocol on top of WebSockets for in-browser app <-> service communication. I actually searched for “HTTP over WebSockets” but couldn’t find anything …


The “A” in AI should stand for “Aspirational”

Over the last few weeks, a lot of enthusiasm about the state of “Artificial Intelligence” (AI) radiated from the popular press as a result of AlphaGo’s win over the current world champion in Go, Lee Sedol. I remember a similar spark in the AI hype gauge when DeepBlue won …


Are you using a digital personal assistant?

One of the design principles we established early with Cortana was the fact that a personal digital assistant is much more than just speech and conversational understanding, more than questions & answers, more than command & control of a device. By creating a deep understanding of the human over a …


Sharing my thanks… PCs for my primary school

Few years ago, the 3rd graders (at the time) from my primary school in Petinos (my village) reached out to me for a conversation/interview over Skype. I started following their progress and even visited them at the school on occassions.

When I was in primary school, we didn’t have any …


Wearable devices and natural user interfaces

As an advertisement, I find the video below really bad. However, the portrayed product features are an example of the transition towards more advanced and standalone wearable technology. Device form factors get smaller and can host software that is capable of addressing many of our communication, entertainment, and information consumption/publishing …


Playing with move semantics in C++ – Part 1

(Kjell Schubert contributed to these posts with ideas, discussion, feedback, and corrections).

I did a lot of C++ programming back in the 90s when the language didn’t have universal references, move semantics, lambdas, shared_ptrs, or any of the cool features that have been introduced since then. I moved to C# …

Leadership insights from a NASA flight director

Earlier today, I attended a talk by Gene Kranz (NASA flight
director during the Gemini
and Apollo programs).
I seriously enjoyed his insights into leadership, teamwork, org structure,
determination, focus, and TRUST amongst teammates. It was interesting to hear about
how information flowed to the mission’s leaders and how decisions …