4 ms·
>More often than not, insights originate from relevant background. Not trying to prove you wrong or anything, but can you quote one or two specific examples of
by Detrus 15y ago
>More often than not, insights originate from relevant background.
Not trying to prove you wrong or anything, but can you quote one or two specific examples of these insights which you think people coming from technical background don't seem to have.
https://github.com/jashkenas/ https://github.com/jashkenas/ was an English major I think, his JavaScript projects are one home run after another- Docco, Underscore, Backbone, CoffeeScript.
http://www.flight404.com http://www.flight404.com still wouldn't call himself a proper programmer, since he writes crappy code, but through his mix of art and programming he popularized a new computer graphics trend. Processing, OpenFrameworks probably wouldn't be where they are today without him.
Steve Jobs' famous example is when he took a typography course, learned the importance of proper text design. In a speech he said if he didn't include those insights in the Mac, PCs would not have them for decades, since they copied the Mac. He's probably right, programmers left to their own devices would have stuck with typography from terminals.
The Flash movement was driven by programmers interested in art.
Software engineering on its own is a pretty narrow interest. A surefire way for technological/human progress to get stuck is to focus on a single discipline. Chasing salaries in the hip disciplines makes sense for individuals but sucks for economies, imagine if we had more patent troll lawyers.
- irahul 15y agoJeremy Ashkenas writes good code, and that doesn't have anything to do with his English Major. The discussion was about being from non-cs gives you some insights which cs doesn't, which is simple, plain wrong. A person from non-cs background can have insights about cs only when he have picked up the relevant background, at which point he isn't non-cs anymore. Look, I am not saying people who haven't majored in CS can't write good code. I am taking exception to the remark that you can do your undergrad in English, join a CS grad program and have insights about CS owing to your English program. That simply can't happen. Mark Zuckerberg, Steve Jobs, Bill Gates et al. didn't finish college. That doesn't imply not finishing college gives you insight college doesn't.
- Detrus 15y agoHow do you come to the conclusion that a coder's projects have nothing to do with previous experience? Docco comes straight from literate programming and the English major is a major influence at least in project choice. It's not about CS insights, it's the non-CS insights at work here. Underscore is nothing new in CS, it's just well crafted, has a good API. How come similar projects by CS majors went nowhere? I think the ugly syntax did them in. Code quality probably isn't influenced by unrelated experience, but the decision making, what projects to choose, how extensive they should be, what's important, is heavily influenced by outside experience. Look at the example of startups. Often engineers who start them focus on cool technology, lose sight of the business, customer needs, can't come up with reasonable product ideas etc. They need guidance from people who ran a software business, made these mistakes and understood what's important. It's the same with any other additional discipline, if you major in English prior to programming you're better positioned to make a word processor or document startup. I think you'd also be better at designing clear APIs and readable code, documentation for others. So many CS-only majors are horrible there. If you majored in design, better at making design tools. Sure you can pick up skills after getting a CS a degree and the startup approach could give you that. But is that a better approach than majoring in art then picking up CS? When you have too many college grads coming into a field, taught similar curriculum and Java, you have narrow group think. A person that comes at CS from a different angle will make a bigger difference in CS than those grads. It's an outside perspective, helps in any field. Another example who isn't a CS major is Ryan Dahl, maker of Node.js. Lots of CS graybeards laugh at his naive efforts and spaghetti, but for some reason his project is popular. Perhaps those who weren't brainwashed by college CS tend to stand out? Let's do a study on that.
- irahul 15y ago> How do you come to the conclusion that a coder's projects have nothing to do with previous experience? Docco comes straight from literate programming and the English major is a major influence at least in project choice. I didn't say previous experience doesn't play a part - I said his English major doesn't play a part in his writing good code. I might be wrong - only Jeremy can answer this. And how do you come to the conclusion English major is a major influence in Docco? Knuth is credited as conceiver of literate programming and for all we know, Jeremy just liked it and ported it. > It's not about CS insights, it's the non-CS insights at work here. Underscore is nothing new in CS, it's just well crafted, has a good API. From Jeremy's attributions, underscore.js is largely a port of Ruby's Enumberable and Python's itertools. The api, more or less, is loyal to the source. > Look at the example of startups. Often engineers who start them focus on cool technology, lose sight of the business, customer needs, can't come up with reasonable product ideas etc. They need guidance from people who ran a software business, made these mistakes and understood what's important. Yes, need guidance from people who have experience in running software business and undestand what is importance. They don't need guidance from people with irrelevant background. > It's the same with any other additional discipline, if you major in English prior to programming you're better positioned to make a word processor or document startup. There are products which were designed to serve the creator and were a big success. There are products which the creators didn't design for themselves which still managed to succeed. All we have here is anecdotes. I don't agree with your definitive assertion that English majors are better positioned to make a word processor. > I think you'd also be better at designing clear APIs and readable code, documentation for others. So many CS-only majors are horrible there. Pretty much everyone is horrible at designing good apis. Again, I don't follow how and why English majors would be better at designing apis. > If you majored in design, better at making design tools. I am not contesting relevant experience helping you being good in a particular domain. > But is that a better approach than majoring in art the picking up CS? To each its own; for me, majoring in CS and picking other things later is better. > When you have too many college grads coming into a field, taught similar curriculum and Java, you have narrow group think. A person that comes at CS from a different angle will make a bigger difference in CS than those grads. It's an outside perspective, helps in any field. May be it does. But you are generalizing a lot here. CS programs aren't a narrow group think you make them out to be. To make a bigger difference, it doesn't just take someone with outside perspective - it takes someone who knows all the rule better than anyone by heart and then breaks the rules he doesn't find proper. You need to understand the inside perspective and why things are the way they are before injecting outside perspective. > Another example who isn't a CS major is Ryan Dahl, maker of Node.js. Lots of CS graybeards laugh at his naive efforts and spaghetti, but for some reason his project is popular. Ryan Dahl isn't a CS major but he clearly understands CS. I am not saying someone who doesn't have a degree in CS can't do anything proper with CS; that was never the point. From his reddit AMA, he has put a lot of work towards his CS education. He just didn't write Node.js because his non cs background gave him some unique insights. And the CS greabeards have done a lot as well. Just that they don't agree with Ryan Dahl doesn't mean anything - both groups have done good work. > Perhaps those who weren't brainwashed by college CS tend to stand out? Let's do a study on that. Again, how does CS brainwash? And how do you propose we do the study? I don't think Jeremy Ashkenas would like to come over and participate in a polarized discussion.