4 ms·
When I started programming at about the same age, living in Tennessee in the Pleistocene era, it took the concerted effort of several adults to even get me acce
by wrs 15y ago
When I started programming at about the same age, living in Tennessee in the Pleistocene era, it took the concerted effort of several adults to even get me access to a computer (actually to a punched card reader that connected to a computer 100 miles away).
Now we take for granted that a smart kid in Alabama has his own personal computer and can participate in a conversation with an expert community anytime he wants. But it's amazing. And more importantly, the experts are so incredibly supportive!
I guess this tradition goes back quite a ways, though...think of Ramanujan and Hardy's mathematical relationship. Perhaps the key is a field that doesn't require expensive equipment and the gatekeepers that go with that. Or does this sort of thing happen nowadays in fields other than CS and math? Do 16-year-olds show up in economics or physics IRC channels and meet supportive communities?
- shantanubala 15y agoI think part of the reason why programming (and open source especially) allows for very young people to participate easily is simple: bugs always exist. Open source projects need a lot people -- not just A-grade programmers or developers or computer scientists who've had decades of experience. They need documentation, bug reports, patches, active forum/mailing list members, and community organisers to be really successful. It's easy to get started just by hanging out on forums, eventually noticing a bug, reporting the bug, learning more about how the software works by understanding the bug, possibly trying to fix the bug, etc. Over time, it isn't too hard to start making very significant code or documentation contributions to a project. In contrast, bug-testing Newton's Laws is a waste of time, and bug-testing General Relativity requires a very large budget. Attempting to make a meaningful contribution to physics is very difficult. The same can be said for any pure science. By definition, any pure science (natural or social) doesn't evolve quickly enough to allow for quick-but-meaningful contributions because pure science is about establishing a base of knowledge that builds directly on previous knowledge. Without an understanding of the "previous knowledge," any newcomer would be lost and wondering what's happening. In contrast, applied science is often an orchestrated effort that involves experts in different fields and contributions from different fields (e.g. your software is as valuable as its support, and your interface ideas are as good as the person implementing them). Prior knowledge isn't necessarily as valuable as the ability to integrate ideas from different places or collaborate with others. Would you agree? I ask because part of me feels like I might be missing something.
- ihodes 15y agoI don't think you are correct, though you may be partially correct. Perhaps many people get into programming by fixing bugs, but that never appealed to me, and didn't really appeal to many people I know. It's good advice for newbies trying to get better, I suppose, but it's not very satisfying work (for many). I got into programming by exploring my computer, websites, and slowly piecing together an understanding of the machine. Eventually, I learned a programming language to (mostly) proficiency. And then another. And then another. I still don't feel like a pro, but I'm getting there. And I still hate fixing other peoples' bugs, or my own.
- philwelch 15y agoFixing bugs is something that only becomes enjoyable as you become a little more mature and experienced as a programmer. Bug fixes can be pretty satisfying; it can be a nice change of pace to solve small, well-defined problems.
- p4bl0 15y agoFixing bugs can be very enjoyable. I like watching House MD for the same reasons. I feel like House's quest for a diagnosis given a subset of the symptoms and his way of trying to provoke new symptoms to appear in order to narrow the set of possible diagnosis, is just like trying to find the cause of a bug. I don't know if other programmers watch House with this analogy in mind, but I wouldn't be surprise if it's the case, the analogy is really strong.
- weavejester 15y agoInvestigating bugs seems to me like the only part of computing that could actually be considered a true science. You come up with theories about why a system is going wrong, and then setup experiments based on those theories.
- gtrak 15y agoI enjoy fixing bugs when the bugs themselves are rare and satisfying to discover. However, I can imagine a scenario where you have a ball-of-mud for a code-base and it stops being fun.