Numi, is calling itself a Beautiful calculator app for Mac, and it caught my attention the other day so I thought I'd share it with you guys. I tried playing around with the app, and while it makes for extremely simple and impressive demo on it's website, I quickly ran up against limitations.
Natural language is a really hard thing to parse, it often requires wither complex algorithms and machine learning like what you find in Siri or Google Assistant for example (both services not always known for nailing exactly what you mean), or solutions require a seemingly endless database of brute-force rules to parse, making things pretty slow, and easy to break.
My Numi experience started very well. I downloaded the app from it's website, with no ask for any information from me, and within seconds it was in my downloads folder. Then upon first boot, the app offered to move itself for me. I really can't say enough how pleased I was with this operation, too often a clunk part of app installs on Mac involve putting something that was in my downloads folder and remembering to move it into my applications folder.
It was only two lines into writing my own math that I started to hit the limitations of the app. Numi either didn't under what "Square root of 900" was, or I wasn't saying it in a way it expected. In another statement, Numi was also confounded by the question "What's a 16% tip on $400?" but felt confident enough to answer "$464" to the words "16% tip on $400". The worst failure of the calculator was when it failed to put anything on screen for the phrase "eight plus one".
I'm not saying Numi is bad. I don't think it is, in fact I think there's a lot to like about it. Dmitry Nikolaev has a lot of good thinking that went into this product, and when it does work, it's really an excellent way of working with a calculator. It felt better to me, a light math user, than using even the default calculator on macOS or iOS. It also calls into the question the singular states of default calculators by showing multiple problems and solutions on a single page — one of the apps beast features.
What I am saying is that it's an application that highlights just how hard it is to make computers understand what people are trying to say is an easy to implement feature for devs, and how failure to parse any single piece of information with an invisible interface usually winds up with the user just giving up on it's reliability all together. I can't help but wonder how this thing would work if it was powered by one of the large AI assistants out there. It's simply to easy to make this thing fail, so I won't be adding it into my workflows unless it becomes more robust. Or at least, show error states and give me tools to correct my own syntax.