4 ms·
I want to call out: But sometimes the opposite happened. Glancing through the results of an algorithmic run showed a pattern I wasn't aware of. Taking that back
by scott_s 13y ago
I want to call out: But sometimes the opposite happened. Glancing through the results of an algorithmic run showed a pattern I wasn't aware of. Taking that back to paper allowed me to make further theoretical breakthroughs that sped up runtime by additional orders of magnitude.
I worked with some mathematicians on an online load balancing problem, and we were trying to model the behavior of our connections. I did not have the mathematical chops to come up with the ideas for the models. But I was running the experiments and diving into the data and figuring out where and why our models broke, so I could reason about the behavior we were trying to model in the same way that I can walk around my apartment with my eyes closed.
Having this level of intuition of the behavior we were trying to model was invaluable during discussions. I may not have been able to come up with the mathematical models, or even understand them completely from first principles, but once they were explained to me, I could give instant feedback on how well it might work based on my understanding of the data.
Short version: know your data.
- sophacles 13y agoI've written about this before, but my experience as a programmer attached to researchers at a university has a lot of this sort of thing. At first I was intimidated being the "dumb guy" in a room of "smart folks". But I've come to realize there is a huge benefit to this role. I get to ask the questions like "I'm not following how X->Y->Z works, explain?". Since everyone else is making assumptions or following the intuition leaps from lots of Ph.D. work - and I don't have that - I frequently find bad assumptions just by trying to follow what people are saying. Similarly, I get to point out where too much yak shaving is going on, by saying "look we don't have to worry about that, I'm just going to use $existing_tool that already does it for us". But the best part of working in an environment where I'm regularly over my head is that in ignorance I'm free (and safe) to say "hey from down here this looks a lot like this other problem in a different space, can we adapt that solution?" Whether or not it's doable, it helps because I either learn something or directly shape the what the "smart folks" are doing. I also find that working at a level that's over my head for the last few years has made me fearless. At the startup I'm associated with, when one of the other programmers says "we don't know how to do that!" I can say "So I haven't known what I'm doing for years, doesn't mean we can't go ahead and just do it and fix it later". And we fix a lot, but with a solid straw-man it's much easier because we can say "this is the actual problem". I think it's not just knowing your data - it's also learning to be comfortable in your own ignorance (not embracing it, just accepting it as a "for now" situation) and OK with uncertainty.
- scott_s 13y agoYes, very much so. Good researchers aren't scared of looking stupid, and will tell their colleagues, "I don't get that. Explain it again, but slower."
- joe_the_user 13y agoIf you read his autobiographical essays, you'll notice Richard Feynman often took the position of 'the "dumb guy" in a room of "smart folks".' and that seemed to help his approach. I would imagine being willing to "be dumb" separates the "really smart" from the "merely smart". The one who come up with the most amazing things tend to question assumption in the fashion of the "dumb" people who haven't been fully initiated into a field.