SurveyMonkey API + Repustate text analytics = insightful open ended responses We recently worked with a new entrant into the healthy snack foods business who wanted to understand the market they were getting into. Specifically, they wanted to know the following: Which foods do people currently eat as their “healthy snack” Which brands do consumers think of when they hear the word “snack” Was there anything about the current selection of snack foods that consumers didn’t like?
How a last minute, indifferent decision lead to our most popular API call. Repustate’s mission statement is to become the world’s largest collection of natural language processing tools. To meet this challenge, we started out with a small set of API calls and are constantly adding and improving with each passing week.
At Repustate, much of our data models we use in our Text analytics can be represented as simple key-value pairs, or dictionaries in Python lingo. In our particular case, our dictionaries are massive, a few hundred MB each, and they need to be accessed constantly. In fact for a given HTTP request, 4 or 5 models might be accessed, each doing 20-30 lookups.
This is a (long) blog post about our experience at Repustate in migrating a big chunk of code from Python/Cython to Go. If you want to read the whole story, background and all, read on. If you’re interested in just what Python developers need to know before taking the plunge, click the link below.
New API calls, new pricing, and beautiful reporting in one click. tl;dr: Repustate has a new text analytics API (V2), new UI for our non-developer users, and more goodies coming. Existing customers have had their accounts converted to new “Starter” plans. Paying customers will be have their previous billing agreements honoured.
There’s an old blog post floating around on the Go Blog with instructions on how to profile your code using pprof - except it’s out of date and might confuse some people. Here’s an up-to-date (as of Go 1.1) way to profile your code. import runtime/pprof Where you want the CPU profiling to start, you write: pprof.
The tl;dr Summary If you want to know the whole story, read on. But for the impatient out there, here’s the executive summary: We migrated our entire API stack from Python (First Django then Falcon) to Go, reducing the mean response time of an API call from 100ms to 10ms We reduced the number of EC2 instances required by 85% Because Go compiles to a single static binary and because Go 1.