4 ms·
That's the thing. If they went to school for Computer Science, depending on the program, we aren't necessarily taught how to code. More about how to think and s
by viiralvx 9y ago
That's the thing. If they went to school for Computer Science, depending on the program, we aren't necessarily taught how to code. More about how to think and solve problems. I never had to use a switch statement in my Algorithms or Data Structures course.
I learned how to write tests after pairing with a person from Twitter on some Rails work a few years back. He randomly saw me testing things manually and then he was like, "Let me show you how to write tests for this so you don't have to waste time manually testing." And I've just written tests since then. But my University never taught us how to write tests for our code. Some professors gave us a test suite for our code to run against as a sanity check, but that's about it. I became a better software engineer through great mentorship and building stuff in my free time.
- marak830 9y agoThat's actually really surprising. Thank you for your input. I had assumed it would have been -teach basics of code, explain the thinking behind it and why to use certain things at such time, then slowly expand upon that. Hmm certanly something for me to think about.
- gnaritas 9y agoYou're confusing programming with computer science, they are not remotely the same thing.
- marak830 9y ago(honest question, just Incase it comes off as sarcastic). How would you get a job a job as a junior dev without any form of dev training. Side note: how could you be a Dev without knowing the fundamentals of how to code? I looked up a computer science course (https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-00sc-introduction-to-computer-science-and-programming-spring-2011/syllabus/ https://ocw.mit.edu/courses/electrical-engineering-and-compu...) Which seems to cover some programming. Surely something such as a switch statement would be included? Edit: fixed course link.
- gnaritas 9y ago> How would you get a job a job as a junior dev without any form of dev training. By demonstrating the skill of computer programming, a skill you can teach yourself at home anytime; you do not need on the job experience to gain this skill. When I hire devs, I give them a toy problem to solve at home on their own time, and then I base my decision to hire on the potential I see in their solution. I don't care about experience, I don't read their resumes, I simply judge them based on the solution they provide. Surprisingly, those with little experience and a natural aptitude generally write much better code than those with experience who aren't really cut out for the job but made a career out of it anyway and could solve any problem you give them. It's easier to train the first guy, than to teach the second guy how to be better. > Side note: how could you be a Dev without knowing the fundamentals of how to code? Learning to code requires neither a job, nor a degree; it merely requires the desire to learn and access to the internet. Computer science isn't about programming though you need to learn some programming to do it, it's about computation and what it can do and can't do and what the fundamental limits of computation are and how to understand them and measure them. Computer science is the physics of programming; Computer science is to programming what physics is to engineering. Computer scientists create knowledge about computing, computer programmers use that knowledge to build things.
- gremlinsinc 9y agoThe way I did was by building side projects and showing my code off on github and things... Having a portfolio can help and then you just need to find one job to get a few years experience under your belt.
- ghaff 9y agoIn practice, I think you'd be hard put to find a university CS degree that didn't involve a fair bit of programming. There was often more distinction in the past, especially at schools where CS came out of the Math department for historical reasons. But look at something like the Intro to Algorithms and CS class at MIT--there's a two-part MOOC on edX--and there's definitely programming. (Although it's clearly designed for people who already have some programming background. The assumption at top-tier schools tends to be that incoming students who want to major in CS already know programming to some degree, which has it's own set of problems but that's another topic.)
- marak830 9y agoHmm that an interesting point of view for those schools to take. I'm sure they have a reason for it, I just haven't quite figured it :-) Putting it into something I'm more familiar with(eg formally trained), if I had a chef who had just finished his degree I'd certainly expect them to understand how flavours combine, every single standard cooking technique, basic soups, stocks and sauces, as well as able to prepare all standard western food from purchasing, through preparing from the full carcass (for meats) up to presentation. Which for me I had assumed can degrees would do for programming. Well the more you learn I guess :-)
- ghaff 9y agoTop-tier engineering schools tend to be pretty theory-heavy. To the degree they teach programming, it's mostly a means to an end. It's not MIT's objective that you can code a working website by the time you graduate. You may be able to but it's mostly a byproduct of being exposed to programming as part of various course work. It's also the case that many/most of the students coming into a school like MIT to major in CS have been playing with computers for a long time. Which tends to lead to a course program that assumes more prior knowledge than is the norm with other types of engineering. Unfortunately, this has the effect of making it harder for students who don't have that prior background to get into computers in college. The chef example is pretty different because any cooking school is very hands on and is probably pretty light on the theoretical underpinnings of the "science of food."