5 ms·
Here's where I disagree with other people - software development is special in that it requires focus, relentlessness, intelligence, creativity and I also find
by bad_user 12y ago
Here's where I disagree with other people - software development is special in that it requires focus, relentlessness, intelligence, creativity and I also find it interesting that many software developers tend to suffer conditions from the autistic spectrum. To me that's a clear sign that software development requires the mind to be hardwired in a certain way.
And the thing is - I never needed handholding, which is why I have mixed feelings about such educational efforts. For me that desert of despair was fun and nothing could have stopped me. For me entering a couple of lines of code that made the computer do something was like a game and felt like magic, with each piece of knowledge learned increasing my skill, in a sort of real-life RPG game. This started before high-school, I remember begging my parents for a PC and I started reading books on hardware and one on BASIC before having that PC, so that's how desperate I was.
And my story is very similar to others. It's undeniable that some people have an inclination towards software development, like a deep internal urge that must be satisfied, much like a drug addiction. This is why you'll find many developers saying that even if they wouldn't need to work, they'd do it for free.
To me educational efforts for adults are misplaced. If you want more people to become software developers, you need to show them the magic while they are young. As for most adults, I believe that the ship has sailed already.
- pm90 12y agoI don't really agree with the notion that software development is something that others cannot learn if they try to do it; that seems like a very harsh perspective which, from my anecdotal experience, is far from the truth. Any skill can be learned if you have the discipline to put in regular effort: that's just the way the human mind works. I do agree that for a lot of people, Software Engineering is easier because they have a certain kind of brain, just like Mathematics or Physics or Music is easier or "makes sense" for some people more than others. If anything, we need to promote education among adults, give them the choice to possibly check out any vocation that they would want to try. Liberate them from the notion that they are "stuck" doing what they chose to do earlier in their life. I'm not saying that its easy; you have to start small and take baby steps. And its not something that can be done in a day or a week or a month. But if modern society has provided us one great benefit, it is of making knowledge accessible very inexpensively.
- mb_72 12y agoSure, most people can 'learn' most things - but how well can they apply them? How good a developer / musician / etc will they be? I feel that this 'anyone can code' movement is good up to a point, and dangerous beyond that. In the same way that we don't need more half-arse and incompetent engineers, lawyers, doctors, pilots, we don't need similarly incapable developers. The field of software engineering is still in it's infancy, and the last thing that is needed are barely-capable developers who needed hand-holding every step of the way to be lowering the bar.
- vehementi 12y agoI'd wager that the incapable developers aren't the ones that "just learned too late, welp", but rather lazy ones or ones without discipline, etc.
- pm90 12y agoYep. Discipline is the principle at work in making any craftsman better...whether it be a carpenter or a programmer. The nice thing about programming though is that there is so much technology and knowledge easily accessible for programmers to become better at their profession; I'm not so sure about other professions.
- jqm 12y agoIf there isn't difference in ability (which I think there probably is), there is certainly difference in inclination. I work with a couple of guys that want to learn to program. They try. Sort of. They took the same online classes I did. But the content never transformed from theory into "hey, look what I could do with that!" They also just don't have whatever it is (fanaticism? lunacy? lack of better things to do?) that made me sit in front of a terminal for days and nights running together on end, barely eating, hardly sleeping, dreaming about it, trying again, beating on until it worked. There is something different about productive programmers, and no, I don't think everyone has it or has the capacity to become that. I'm not going to claim it's a virtue... it really is almost more like a vice. An addiction. An ability to tune out the rest of the world (which sometimes is more important in reality) and focus intently on organizing abstraction. I'll also say... long periods of this are not so great for your relationships and personal life. At least in my experience. So maybe they are better off truth be told.
- dlwj 12y agoI don't really agree on the hard-wiring. I do think programming is more of a mind based pursuit rather than a socially based pursuit though. "Autistic" tendencies are for the most part due to lack of experience or disinterest in social aspects rather than from actual neurological hardwiring preventing you from picking up and acting on social cues. Other pursuits that are so interesting that the social factor isn't required include physics, mathematics, etc... These people aren't necessarily programmers.
- bad_user 12y agoGiven that autism is a mental condition characterized by difficulty in communicating and forming relationships with others, involving an atypical brain development for some reason or another, I believe that this is evidence enough that social skills or lack thereof are influenced very much by the brain. We really shouldn't place so much faith in free will :-) On mathematics and physics - if you'll notice, they share common traits that go beyond the lack of social interaction. Creativity is also required (well, not if you think about math or physics as learned in school), focus and juggling with abstractions as well. In fact mathematics is even more extreme, because with software development one usually gets much faster feedback from normal people. And it's not like you see mathematicians and physicists everywhere.
- serve_yay 12y ago> Here's where I disagree with other people - software development is special in that it requires focus, relentlessness, intelligence, creativity and I also find it interesting that many software developers tend to suffer conditions from the autistic spectrum. To me that's a clear sign that software development requires the mind to be hardwired in a certain way. I agree, and I don't think it's a good thing. As Crockford once said, we chose software because there's something wrong with us.
- bad_user 12y agoI don't think it's a good thing either. I also find the spread of autism terrifying. My wife works at a kindergarten and she has had to deal with children that have problems from the autistic spectrum, healthy enough to be allowed to integrate in a normal collectivity, problematic enough that adjustment is very hard - they simply stand out from everybody else. And she noticed an interesting pattern, those children usually come from families of engineers, mathematicians or software developers. And maybe the sample is not representative of the general population, but it scares the bejesus out of me, especially since we have a son that is happy, loving, socially apt, smart and healthy, but that was a late talker and at 4 years old he still does mispronunciation for many words - this is another recent trend. I have read a book at some point, can't remember the title, but especially in boys you have brain parts specialized for certain tasks and this happens when you've got certain parts of the brain underdeveloped, with maybe other parts overdeveloped. It usually goes away, once the child grows. Maybe this is just an evolutionary step, or maybe we are broken, I don't know.
- FD3SA 12y ago> And she noticed an interesting pattern, those children usually come from families of engineers, mathematicians or software developers. This is a serious issue, there was an article on HN a few years back on how the concentration of children born with Autism in SV is something like 10x higher than elsewhere across the nation. They concluded that its most likely due to a severe case of assortive mating between mathematically gifted couples. People wanted to know why evolution didn't continue to make us smarter? There's your answer...there's an upper ceiling imposed by biology. The way our neural architecture develops puts a damper on how much abstract reasoning we can do before we sacrifice our basic survival mechanisms (i.e. social interaction). Autism is one of the most fascinating conditions from a medical perspective, but its absolutely terrifying when the majority of HN (myself included) is at greater risk of producing autistic children. Guess there was a reason why people married their secretaries...
- tokenrove 12y agoI disagree, and I disagree because I used to think this way (having lived and breathed programming since age five), until I started to meet people who had started to program in university (which I considered _way_ too late) and who had become excellent programmers. Not adequate-for-a-job programmers, but best-of-breed programmers. In fact, often better programmers than "naturals" because along the way they had learned a lot of discipline that isn't necessary when programming is fun -- but as every "born programmer" turned professional finds out, programming isn't always fun.
- paulannesley 12y agoIn the “born programmer” theory, surely the trait begins latent and could manifest at any age depending on exposure / triggers / mentors etc? And university seems a likely time for that to happen; not everybody had access or was given that first nudge into computers earlier in life.
- pdonis 12y ago> It's undeniable that some people have an inclination towards software development, like a deep internal urge that must be satisfied, much like a drug addiction. This describes me quite well. However, I'm not sure that this addiction is required in order to do software development at all. There is evidence that with certain concepts in software development--pointers and recursion are two that come to mind--people either grok them or they don't, and if they don't, no amount of education or training seems to help. But I'm not sure the ability to grok these concepts is always correlated with the addiction.
- deepGem 12y agoI have a contrarian view. This is purely based on my experience. When I was first 'taught' BASIC in high school I detested it. I didn't want to stay anywhere near computers because it was no fun compared to let's say jumping off a roof. Fast forward to Uni, I still detested computer science - mostly because I never realized what one can achieve by using computers. That context was simply not there. This was 1995 in India. My mind was simply elsewhere - mostly I was disinterested in anything related to making a career. I did find a job and turned out to be an average programmer and I worked mostly for the heck of it. The turning point in my life came when I ventured into management. I realized how fucked up that industry was, as compared to even the most inane programming task I had ever done. So that's when my love for programming started to grow and it hasn't stopped ever since. More and more I see other industries I realize how shoddily disorganized they are. I mean - consider the process of getting an approval. It takes days where as it's just a push of a button on an app. So it's not true that as an adult - you can't realize the magic of programming. You just need the right context and some affordabiity for the right tools.
- collyw 12y agoNot sure I agree with you. I always avoided maths at school, despite being reasonably good at it, because I didn't find it interesting. Studied biology and ended up in software engineering. Now after many years in the "real world" I can see the practical application for many forms of mathematics (particularly statistics), and kind of wish I had studied it more. If I had the chance to go back to university and study it, I am sure I would find it a lot more interesting, as now I can see where all the techniques could be put to use, rather than seeing some abstract set of symbols on a blackboard.
- arnaldo 12y agoI feel the same on the Maths part, and have recently found an excellent essay that depicts how this is the case and why we shouldn't be put off by the terrible "mathematics" we were taught at school: A Mathematician's Lament http://www.maa.org/sites/default/files/pdf/devlin/LockhartsLament.pdf http://www.maa.org/sites/default/files/pdf/devlin/LockhartsL...
- bshanks 12y ago> For me that desert of despair was fun and nothing could have stopped me. > To me educational efforts for adults are misplaced. My theory is that the difference is just that (some) young people have more spare time. If you have lots of time, then the inherent fun of learning stuff makes it fun to wander around learning stuff. But if you don't have much time, then you prioritize the things that relate to your goals, and then unexpected things in between you and the goal are stressful obstacles. If you have tons of time, then your default state (alternative activity) is boredom, and learning anything interesting saves you from that, so you're glad you did it. But if you don't have much time, then learning something only to find that it wasn't as useful as you thought it would be (which often happens when you don't know what you don't know, but are trying to learn) is disappointing, because you know you sacrificed other important things (in retrospect, things that were more important) to spend time learning that.