3 ms·
When I'm coding something challenging, I have trouble keeping it clear in my head. I have to break things down into sections and try to extract the core problem
by 10ren 18y ago
When I'm coding something challenging, I have trouble keeping it clear in my head. I have to break things down into sections and try to extract the core problem from the noise - but that's not enough. I then have to build it in stages, adding a layer at a time of complexity. Sometimes I had the wrong model, and have to go back. I do discover things, and see more as I go. So now I can solve problems that I'm not smart enough to solve: a self-transcendence.
I sometimes think someone smarter than me could just see* this. It's a frustrating and discouraging thought. Like you, my only answer is: but they're not*.
- windsurfer 18y agoI took that IQ test in grade 3 and 6 (I live in Canada) and I scored in the 99th percentile. That means I have a "genius" level IQ. I'm not a great coder, but I can tell you that I also have trouble keeping things clear in my head, and I do exactly as you describe. Perhaps that skill of breaking down problems is what IQ is measuring?
- 10ren 18y agoThanks, I feel much better! I ranked highish on an IQ test book, 130-150 (however reliable that is). I love your hypothesis of what IQ measures, though unfortunately I don't think it's true. But do I think the "skill of breaking down problems" is one thing that actual accomplishment measures. It also seems to me that even a 230 IQ person is limited to what they can grasp instantly, if they lack this skill. Perhaps if their high IQ removes their motivation for acquiring this skill, it might explain why the accomplishments of some high IQ folk aren't commensurate with their IQ. 230 IQ sounds awesome, but just what can such a person grasp at once? Is it like someone with very long legs, so a step for them is a giant leap for anyone else...? If so, it isn't much good if they can't string steps together. If they can't combine their steps, a crawling baby will effortlessly outdistance them.
- nostrademons 18y agoEven people who do "just see" things eventually have to learn to break things down into pieces and solve them bit by bit. As you get older and acquire more expertise, the complexity of problems you solve gets higher, until it reaches a point where nobody can hold it in their head. When I was a kid, I used to piss off my teachers by just writing down the answers on all my tests & homework. They'd always say "Show your work!" and I'd say "What work? I just know what the answer is", and most of the time it'd be right. When I wrote computer programs, I'd pace around for a bit until I'd figured out everything, then sit down at the computer and type it in. When I solved physics problem, I'd memorize the problem statement, go take a shower, mull it over, and write down the solution when I came out. This worked until my freshman year of college. And then it started to not work - half the time, it'd work great and I'd be done with my homework in no time, but half the time I just wouldn't be able to solve the problem at all. And then it started to not work at all, and I basically failed at solving anything. So I had to learn the same skills of breaking things down and solving them piece by piece that everyone else already knew. Laboriously. At the age of 20, when most people had figured it out by 12. I'm certainly more effective now for having learned them though, as I tend to get stuck much less often. It's still frustrating though, because I can't shake the feeling that I'm dumber now than I was at 13. I don't even know if I can still solve things just by looking at them anymore - so much of my work requires small, incremental changelists and clawing my way up the technology ladder. For someone who'd built so much of my identity on always knowing the answer (terrible idea BTW, never build your kid's ego up on their intelligence), this was a really bitter pill to swallow.
- dkarl 18y agoCharles Simonyi: I have to really concentrate, and I might even get a headache just trying to imagine something clearly and distinctly with twenty or thirty components. When I was young, I could easily imagine a castle with twenty rooms with each room having ten different objects in it. I can't do that anymore. I think he went on to say that his declining abilities forced him to become a better programmer, but unfortunately I can't check the original source. I found the part I quoted here: http://www.deadprogrammer.com/category/facility/famous-clam-bar http://www.deadprogrammer.com/category/facility/famous-clam-...
- 10ren 18y agosome similar experiences here http://stackoverflow.com/questions/572620/is-a-great-memory-a-requirement-for-great-programming http://stackoverflow.com/questions/572620/is-a-great-memory-...
- 10ren 18y agoI have to clarify. :-) I am also one of those people who "just see" things. I meant that for a problem just at the edge of my abilities, someone who was just a little smarter (or who had the right representation/point of view - worth 80 IQ points) would be able to "just see" the answer to that one. I think one can solve more complex problems "just by looking at them " - if one can find a representation that makes them simple. For example, switching from Roman numerals to Arabic numerals makes multiplication so simple a child can do it. (last paragraph http://ecotopia.com/webpress/futures.htm http://ecotopia.com/webpress/futures.htm) In a way, our brilliance as children is a gift from the ancients. I think it's deeply meaningful to create new representations to pass on in turn.