Numi is a little calculator with a twist. Unlike most calculators, it understands English and other languages. I've used many different types of calculators: from the Texas Instruments TI-89 graphing calculator to a HP 12C with its Polish notation, to software calculators Excel and R. All of them employ similar user interfaces. There's a syntax to translate the user's desires into something the calculator can understand.
Numi takes that one step further. Numi still requires a learning a syntax, but Numi's language is far closer to the words and the way I articulate the math problem in my head than anything else. The image above shows how I use Numi.
The first four lines tabulate a hypothetical Series A investment. The date math example determines the due date for an internal project. The third converts a British startup's revenue into dollars. The fourth calculates the post money of $7M investment for 25% ownership using divide by rather than a slash or an obelus. The fifth converts Pacific Time to East Coast time to help with scheduling.
Within every great product, there's a bit of magic. Numi is magical because it anticipates the goals of the user. The app recognizes what I mean when I say divide by or million. Numi fetches the today's GBP/USD exchange rate by API and completes the foreign exchange.
This magic isn't enabled by some new open source natural language processing library or by advances in deep learning buried in research paper, but product design. When I use Numi I feel like the app understands me, because it knows what I mean by million or New York or divide. I can phrase math problems to Numi similarly to how I would communicate them a person.
Advances in machine learning and natural language processing will be key ingredients in the software applications of the future. For example, Numi could use these technologies to begin to learn venture capital jargon and math like calculating the dilution for an employee stock option plan increase.
However, these technologies are necessary but insufficient to create magical applications. Empathetic product design sparks magic. That's the characteristic all great products share - that moment when a user remarks “The app understands me!” and the comprehension barrier between humans’ goals and computers’ actions diminishes just a bit more.