Brains!
I've been working on a project to do EEG visualisation lately. It's a bit of fun, but I'm way further down the rabbit hole than I ever expected to be re: signal processing. I think FFTs are dark voodoo, so having to become familiar with Welch's method for Power Spectral Density estimation is a bit of a shock to the system.
Two things have been a big surprise and enormously helpful so far. Firstly, the sheer ridiculous comprehensiveness of Python's scientific and maths libraries. You've heard you need a window function but you're not sure what that is? Don't worry, scipy has 18 to choose from.
The second is 0mq. I wanted to run something over websockets but Python's threading/event model stuff was giving me the crankies. I whipped up a Node thing in 5 minutes and hooked up 0mq in even less time. Since then I've basically pulled everything out into smaller processes loosely coupled with pub/sub. It feels good.
I'm still a little daunted by the crazy pile of brain stuff there is to figure out, but at least I know that all my problems can still be solved with service-oriented architecture. And Welch's method for Power Spectral Density estimation.