This week I took a step back and asked myself, “What are we actually making? What are we trying to solve?”
Hopefully this wasn’t the first time you asked yourself those questions...
Ha. As we learn more about our customers, and get deeper into the problem, ideas start to change and the product starts to shift. I wanted to put down in writing where my head was at at this stage of development to see how things had changed, and would change as we move forward.
I like the idea of having a written record of how wrong we (inevitably) are.
The current state of customer feedback seems broken to me, yet accepted by everyone. I tried condensing my thoughts into a few simple hypotheses that would be tested over the next few months.
Seriously, I can’t think of a story that is more important to the success of Pushrate than that. Most of the stuff is only mentioned in retrospect, I’m glad to show dead-ends and wild guesses.
I’m curious to find out if anyone else has the same viewpoint as myself, and I hope as we launch our first round of beta devices we’ll be able to solve some of these problems.
This week I wanted to use the opportunity to vent. You remember that stack trace I showed you?
Yes, I’m used to calls being two or three deep. That trace was crazy. I'm glad I spend most of my time with microcontrollers.
To explain why it was crazy to the audience, the framework was throwing out an exception on IE and I was trying to figure out why. Since I knew it worked before, I knew the problem had to be in my code, but you’d never have guessed that from the traceback. The call depth was unbelievable - the debugger showed a call depth of 50+ calls (up to its display limit), and more distressingly not one of them was in my code.
It wasn’t anything recursive blowing the stack either. There is so much going on, I don’t know how anybody can reason about it.
The way that the industry is going we’ll be writing code that is deeply embedded into some massive stack that you won’t really be aware of how everything hooks together let alone what is happening on a second-to-second basis. The BSD guys have it right when they focus on simplicity. I wrote up my thoughts on the topic for posterity too, so people can look back and see how very wrong I was too.