4 ms·
Honestly, as a CS major, I really believe that just looking at the rest of the people in my class. College only teaches you theory, for the most part. Some wil
by kloncks 16y ago
Honestly, as a CS major, I really believe that just looking at the rest of the people in my class.
College only teaches you theory, for the most part. Some will not teach you any programming besides some generic C++. You have to learn that on your own; I'll believe that the vast majority don't have the drive to learn that on their own for years to perfect their skills.
I really agree with your points on the problem being with the interview process though.
- iamjustlooking 16y agoAgreed, It's funny how if I take a look at facebook and view classmates profiles I appear to be the only one who still programs despite us all taking software engineering in College. Maybe that's the effect of the current economic climate but at the time everyone else seemed to just view it as a high paying career path and couldn't tell you the difference between a variable and a constant.
- ToastOpt 16y agoIt's still high paying, and still has a lot of job openings, for the A, B, and C level programmers (as it were, keep the "F-level" out). I see two likely posibilities here. One, you classmates were all terrible -- i doubt that is true, but maybe one or two never 'got it' in industry. Two, most of them discovered that they didn't love programming, and if you don't love this line of work, it's really easy to hate it. Maybe they just found their passion elsewhere?
- fiveo 16y agoThis might not be a valid excuse but look around at our industry: overtime everywhere. If you've been working 10-12 hours a day, you don't necessary have the power to learn on your own at the end of the day. That's why sometime I'm not surprised to see any type of programmers wanting to move to management unless he/she is really uber geek; you know, the type who have social issues and only focus on one thing. Let's face it: our industry is as bad as the quality it produced.
- techiferous 16y ago"College only teaches you theory...You have to learn...on your own." Agreed. My experience was that I got into programming as a kid. By the time I enrolled in college, I had written hundreds of thousands of lines of BASIC code and had written a ton of Pascal programs. College enhanced my programming abilities with concepts like big O notation but for the most part did not give me any hard technical skills that were hirable. My first job out of college was programming in Java which I picked up on my own and via an internship.
- bad_user 16y agoDid you know that "I" is the most used English word?
- robryan 16y agoI agree, but I think that at times there is some more talent about in peers, just need to give them the benefit of the doubt and see how they go. I was thinking about it recently, if I had spent my 4 years of uni (just finish up now) focusing solely on the course content and not spending time reading things like books and hacker news and hacking my own projects/ freelancing/ startup, where would I be as a programmer? I think I would be so far behind where I am now, especially on the business side of things but also the programming. I know for a fact the thesis I'm finishing up would be nowhere near the level I have go it to. It's interesting that in uni in terms of ability I would be close to the top, but when I've seen some of the amazing talent in Melbourne through coworking I'm just average.
- ashitvora 16y agoI've seen people say this alot these days, "Degree is not that important". But I kinda disagree with it. I would rather say, "Grades" are not that important. You don't go to Engineering school just to learn programming. Programming is something you learn to apply what you are learning at school.
- gaius 16y agoYou need it all. A degree can get you over the "you don't know what you don't know" hump that many self-taught programmers never get past. My lightbulb moment was linear programming. Up 'til then I was a competent programmer, mind, but suddenly a whole new world opened up, I had no idea you could do this stuff by any means other than brute force...
- gaius 16y agoAs a professional I can believe it too. Most of my colleagues are fine if they have some existing code and need to modify it, or add a feature following the pattern of the existing code, and that is 90% of what a developer does in the real world. A completely blank screen tho' and even I hesitate. Almost every new project I start actually starts as a skeleton from another, here's my Makefile, here's my usual basic imports, command-line parsing block, etc etc. Once I get some momentum going it's fine... The fact is that computer science is not software development, any more than you could take an astronomer, drop him on a ship and say "navigate!".
- btilly 16y agoThere is a simple solution to this. Start with a working program that doesn't do what you want, and incrementally make it into the one you want. It doesn't matter what the original program does. I cannot count how many times I started with a program that printed Hello, world and wound up with with something useful and unrelated.
- gaius 16y agoThat is how most programs are written, but it really helps to have some existing structure, such as an app framework. Also I suspect there has only ever been one Makefile, that has been copied and tweaked millions of times by millions of people over the years...
- DisposaBoy 16y agoWhy do you think that? Personally I write all my makefiles from scratch. I'm always baffled by other makefiles though. They always look so huge and for some unknown reason just overly complex.
- gaius 16y agoReally? I've been using the same one for the last 15 years, and before me it was owned by an old geezer. Some people say I should try some newfangled nonsense like Ant, but make has never let me down.
- _delirium 16y agoI don't think it's quite the theory/practice split here. A large percentage of CS majors would probably fail the theory version of fizzbuzz too; say, ask them to analyze a simple sort algorithm for asymptotic complexity on the whiteboard.
- city41 16y agoI've had the opportunity to interview/hire a lot of people over my career. The candidates who completely learned how to program from their college courses and never pushed themselves to learn, try or do more are really easy to spot. They always get a firm "no" from me. I'm looking for the candidate who programs because they truly enjoy it, almost regardless of having a degree or not. If your resume doesn't have at least a few side projects you've done I'm almost guaranteed to not even bother interviewing you.
- Daishiman 16y agoI don't know how good or bad my courses are, but really, just how shitty are most CS degrees? In the 4 years (and counting) that I've spent studying CS, my assignments have included writing: - a kernel driver in Linux - Writing and analyzing graph metaheuristic algorithms (and the test case generators in Python) - nontrivial data structures in C, C++, and assembly - Writing graphics and matrix math functions in Assembly - Simple OS schedulers in Java - Recursive functions in Haskell - software contracts in academic verification languages - 95% of all reports in LaTex And this is basically for the equivalent of an undergraduate's degree. I'm not saying all degrees should have this level of variety, but are people really coming out of Uni without at least having written a linked list in a low-level language?
- Dylanlacey 16y agoMy degree was pretty hardcore as well. Did it prepare me for work? Yes, but only in the abstract, and that's because I was lucky enough to have a natural talent that uni enhanced through practice (That of rapidly picking new stuff up). Not once did I use an MVC beyond a crappy Java implementation. We didn't do maintenance practice, or log file spelunking, or customer interaction. I learned how to create multi-user, networked, stateless applications editing one source. I created a compiler and language, learned assembly, studied algorythms and z-schemas. I switched between languages every day and solved some annoyingly abstract and difficult problems. Number of bugs I solved in other people's code outside of an exam? 0. Number of incredibly obscure projects I took from start to finish? 0. CS Degrees only teach people to be potentially good programmers IF those people are able to learn how to fix shit by themselves. Otherwise you're teaching greek to a deaf person. Sure, they know what they're asked, but they can't talk back.
- scott_s 16y agoIt depends on the department. Some have a heavy focus on implementation projects in courses.