The difference between software development and computer science is the difference between being able to assemble a car from spare parts, and being able to design the pieces like a new engine or gear box. The two skill sets don't overlap entirely. However having the latter generally makes mastering the former somewhat easier.
Code != computer science
141–148 of 148 posts
Re: Code != computer science
#142I think Dr. Nassim Taleb, author of Fooled By Randomness put it the best. Real knowledge is gained from tinkering, trial and error. A degree from a recognized academic institution is largely a social credit that is earned through memorization and the ability to recall and recite those references. I studied Economics, so I had to figure out how to code (still at it) by relying on the internet and experimenting. Doing…
"Real knowledge is gained from tinkering, trial and error. A degree from a recognized academic institution is largely a social credit that is earned through memorization and the ability to recall and recite those references." I find that quite insulting. This may be true if you go to some shoddy university that teaches things by rote and memorisation. I did an engineering degree where we had practical laboratory sess…
The real world does not work like this, and often I find that academia prepares you for a world that doesn't behave or exist like the ones described through courses and lectures which are only aimed at grading and evaluating on some set of criteria. It's not necessarily an accurate meter of how you will adapt your knowledge and skills in the real world, I belive Nassim Taleb mentions the concept of 'empty suits', or so called experts who focus entirely on a constructed model of the world they are absolutely convinced will not change with lack of accounting for black swan events (an event that is unexpected and debunks a widely accepted belief, for example swans were thought to be white until the discover of black swans in Oceania) and basically the society attributes an irrational amount of trust and credit in those that have gone to the best of the schools in the best of what they do, not necessarily based on the inevitable nature of change (earth was flat, now it's round) upon random discovery that challenges what we've accepted as "facts".
It's a question of realizing you are being taught how to think and what to think by the institution that measures efficiency on a normal curve, instead of discovering the process and the target yourself.
Now of course, university life is much bigger than just lectures and learning, you meet so many interesting people, you learn that there are more questions than answers, and I think that is the best part. Maybe if you've gone to an Ivy League, you will find yourself surrounded with individuals of influential and powerful families which you can expand your social circle for future business and collaboration and that is all the more reason to go to one, but then I question the ability of someone with middle or lower class status to be genuinely accepted amongst those that have it all already.
Re: Code != computer science
#143Earlier quoted context omitted.
Wait, did you just bring up UML as an example for backing up the claim that CS is science?!
I know UML is not very popular, but as you can see, I thought it was interesting.
Whilst UML is an abstraction language, I would hesitate to compare it to a mathematical calculus. Regardless, we do not subsequently carry out empirical experimentation in the same way as science does. There is no "ground truth" that UML is modelling when developing software (ignoring edge cases) - it's a design tool.
Re: Code != computer science
#144Earlier quoted context omitted.
"Real knowledge is gained from tinkering, trial and error. A degree from a recognized academic institution is largely a social credit that is earned through memorization and the ability to recall and recite those references." I find that quite insulting. This may be true if you go to some shoddy university that teaches things by rote and memorisation. I did an engineering degree where we had practical laboratory sess…
I understand that you might feel insulted at the thought that you're degree might have been all in vain, your experience at your school might have been special but as you've said it yourself, experience simply cannot be taught. School may hold lab sessions where you complete assignments "applying" which in some shape or form require you to recall facts transferred to you either through your faculty staff or books, an…
What's with putting scare quotes on my use of the word applying ? I think you've got some issues here because you've deliberately written your reply to twist what I've said to fit your viewpoint. I feel sorry for you that you cannot see the difference to studying at university to learn and being brainwashed. Maybe that's what you did when you studied and now regret you didn't see the big picture ?
I'm not saying Nassim Taleb is wrong or that I am correct but you really should think for yourself a bit more and read around the subject rather than taking one particular view or the popular view as being the only view.
Come on, I mean in the real world who gives a damn about whether you went to an Ivy League or not if you really know your stuff.
Re: Code != computer science
#145Earlier quoted context omitted.
I know UML is not very popular, but as you can see, I thought it was interesting.
In science, understanding is developed through abstract mathematics and empirical experimentation. Whilst UML is an abstraction language, I would hesitate to compare it to a mathematical calculus. Regardless, we do not subsequently carry out empirical experimentation in the same way as science does. There is no "ground truth" that UML is modelling when developing software (ignoring edge cases) - it's a design tool.
Re: Code != computer science
#146Earlier quoted context omitted.
I know UML is not very popular, but as you can see, I thought it was interesting.
In science, understanding is developed through abstract mathematics and empirical experimentation. Whilst UML is an abstraction language, I would hesitate to compare it to a mathematical calculus. Regardless, we do not subsequently carry out empirical experimentation in the same way as science does. There is no "ground truth" that UML is modelling when developing software (ignoring edge cases) - it's a design tool.
The result was that a finite and compact set of concepts could be used to account completely for almost any design architecture, past or future. To me, this is pretty scientific.
Re: Code != computer science
#147Does a CS degree make you a better programmer? Most certainly it will! It will give you an optimal background on which you can build solid knowledge. But you can't be 100% sure about that either.
Can you learn everything and more than a CS laureate by yourself? Of course you can, especially today that information (mostly about technology) flows free online. You can order books from amazon (Knuth anyone?), etc.
As my genius Math professor once said: "When you come to the oral exam session, I will ask you a question. In 99% of cases, the answer is: it depends..."
Re: Code != computer science
#148"So, please, go do that hour of code if you haven’t already. Who knows? Maybe you’ll want to become a software developer, but even if you don’t, it’s worth the effort, and might even be fun!" I need someone to please explain this last bit to me. He seems to suggest that it's pretty easy to become a software developer. This idea seems to be pretty common across hacker news. That all it takes is a little bit of researc…
I've spent some time teaching people web development (Ruby, Rails, Javascript) both as a professional trainer and as a volunteer through RailsBridge. I've seen a few motivated individuals go from non-coder to software developer in less than 1 year. Certainly you can get paid jobs writing code sooner, but these folks were doing real development in 6-9 months. With an engineering background you already have a good foun…
Anyways, I'm already pretty well versed on that basics of programming. I think the key, as you pointed out, is to get involved in an open source project to build up my portfolio. Python is the language I prefer, but I use vb.net to build the tools I use at work since the .net framework provides a great interface with the microsoft products corporate office workers are slaves to. I'll start searching for local open-source contributors.