Ask Slashdot: CS Degree Without Gen-Ed Requirements?
davidjbeveridge writes "I'm interested in getting a CS degree. I've been programming since I was 13, and like many of us, taught myself. I am familiar with a number of languages, understand procedural, functional, and object-oriented paradigms; I'm familiar with common design patterns and am a decent engineer. I learn quickly. I work 2 jobs and I have a life. I want to get a CS degree from an accredited school (a BS, that is), but I have no interest in wasting any of my precious time taking classes in English, Philosophy, History, Art and the like. While these fields are useful and perhaps enriching, they will not contribute to making me better at my job. Moreover, I attended an excellent high school that covered these fields of study in great detail, and I feel no need or desire to spend more time studying these things. I want a BS in Computer Science with no general education requirements. Any suggestions?"
I guess this is a US-only problem. When I started my computer science degree at the University of Antwerp, it was pretty much only computer science. We had a few credits in economics, but that was really just general economics and that's it.
However, what are you expecting from studying CS? It's most likely not what you think it is. It's basically math, automata, algorithms, computability theory and stuff like that. If you plan to be a computer programmer and only that, you already have the skills required (even though, you probably make certain avoidable mistakes by if you don't know about computing theory).
If it is to have better chances to get a job interview, I can understand...
I don't regret having a computer science degree, it was very interesting, but it's not a course "how to become a better programmer".
Anyone considering computer science, should ponder the words of one of the greatest computer scientists of all times: "Computer science is no more about computers than astronomy is about telescopes", Edsger Dijkstra.
Ahhh...the great dumpster continuum. Many a free computer will be found there. -- sowth (748135)
A BS covers general education and major course work.
Your best bet is an AS degree. Then, come back later and get your BS.
Go take your gen eds like the rest of us. Do you think we enjoyed them? No.
Good luck with that. It has been my experience that higher educational institutions just want your money. I'm sure if you donated enough of it to them, they would give you a piece of paper just for that merit alone. Once you understand that motivation, you will know why they want to purchase as much of their product as possible.
I think you underestimate the value of those things. Most of these classes aren't strictly about history, english, and the like, but enhance your overall mental ability - such as the ability to write, comprehend, and reason, which frankly, is generally missing from those in our field.
If you don't have those things, that's fine, but that's not a BS or a BA, thats a trade school education.
How is enriching your life wasting your time? Why is education a bad thing?
The best programmer I know never took ANY CS classes - he just devours new knowledge and apply.
As for the general requirements, there's a reason for them. The theory is that learning about stuff outside of your field might make you more educated.
Why do you need the degree?
I finished off my degree while working full-time as a kernel engineer. By the last year, the Gen Ed classes were the ones I looked forward to the most.
Is your goal to have a degree because it would be useful to list on a résumé, or do you want the degree because you think the content of the BS in CS would be useful? If it's the latter, then independent study or auditing college courses might be the answer for you. If it's the former, though, you more or less have to accept that the BS is not just a vocational degree--it is a degree from a university that attests to you not only knowing the content of the major but also the gen-ed requirements.
You say straight out that you have no desire for the sort of education associated with a University degree and then ask if you can get one without all the nasty bits that separate it from a Trade School.
Short answer - no.
PS - The fact that you don't believe that those other bits could possibly make you any better at your job... tells us a great deal about how you'd do your job.
If you do not think that English is necessary for a CS degree, I'd hate to see your documentation on your coding.
.....reading Slashdot and having a life is generally mutually exclusive! That said, studying "other things" is a good idea to provide context and balance to your life (i.e. have a life ). To paraphrase, all programming and no other interests makes Jack a dull boy. At the very least, the "other things" can be inspirational and help look at your programming problems in other ways. Consider taking some management, marketing or communications courses so you can understand the business life going on around you at whatever company you join.
What you just want the piece of paper?
I spent a good deal in college CS classes, learning stuff that I already had a good idea what to do.
When it came to the real world I was quite prepared for anything computer related. It was every other subject that killed me. It was my lack of art classes that kept me from good design. My lack of English classes that kept me from good copyright. My lack of Business classes lead me to make wrong decisions.
Now I'm considering going back to school. But I'll stay as far away from CS as possible.
I once read somewhere that the things you don't know become your Achilles heal. Very true.
Go to school for an education. Not a piece of paper.
Go to DeVry - they specialize in BS degrees. Not "Bachelor of Science", but "BULL SHIT", mind you...
Also, I hear you'll have no problem picking up some electives in cooking meth...
The real world is often about communicating. You'll need to discuss requirements, communicate with others, and document your work. You'll also need to be able think independently.
If you get scared off by challenges like simple introductory courses, will you be able to take on real world challenges?
1) If you don't have a degree, there's no way you are an engineer in any sense of the word. Engineer actually means something. Don't drag us down to your level.
2) If you don't think further education in English, etc... would be useful to an engineer in his job you have absolutely no idea what an engineer does.
I understand your feeling and I am on the same path myself. However I have also felt that there is something to be learned from the "Gen Ed" classes many of them will give you better insight into society which could assist you in your career, and some may even help you personally. Find classes that relate to your interests outside of computer programming and I think you will enjoy them more than you think,,,
...how to put it politely? Nope, can't think of a gentle way to say it, so quite bluntly, you are an idiot.
You may be the best programmer in the world, but without studying the things you now consider to be a waste of your time, you do not know how to think or communicate.
Being better at what you consider your job is not everything. You need general education to be able to handle all of the other work-place and meat-space things that are not programming related.
When It Counts.
Skills besides programming are very important unless you want to be an underpaid code monkey. You say you have already taken or otherwise have the needed "Life Skills". Well find a good University you want to go to then figure out how much of their Gen-Ed you can skip through by transferring your credits in or getting life skills credit. Other than that if you are looking for programming only, it is called a trade school here, and is worth little more than previous experience in the field.
You've discovered the fundamental flaw in higher education: it's full of academics, and fundamentally exists to produce more academics, not people who actually get things done. There's more and more thought that the degree is simply not worth the paper it's printed on, much less the crushing debt of student loans.
Give it long, hard, careful thought - and then ask yourself if you need the degree at all. I'm not going to kid you: there will opportunities forever closed to you because the hiring authorities can't see past the piece of paper - but you'll have a fine career nonetheless, especially if you build a demonstrated history of learning things quickly and hitting the ground running.
I don't have a degree. Looking back, I think I made the right choice not to put up with the railcar loads of bullshit that go with academia.
Disinfect the GNU General Public Virus!
If you were really interested in getting a college degree, you wouldn't view all non-major related courses as a waste of time. For example, while your major courses obviously will have a great impact on your career, the skills you'll pick up in other courses may give you an edge. In CS, you're not going to learn how to effectively write which might be required for a job in the future. Also, CS relies a lot on logic and you're going to get that in the so-called worthless philosophy courses.
The point of college is to come out well rounded, but seems like you want to be a code-monkey and not a real computer scientist. If that's the case, enroll in the University of Phoenix and be done with it.
A college degree is more than just job training. "Wasting precious time" studying other subjects has other benefits such as hopefully make you a more well-rounded person. If money is also a concern you could take prereqs at a community college where tuition is much cheaper then transfer to a university after.
Intelligent managers (managers that understand the position they are hiring for, as opposed to PHBs that are looking to fill an empty seat) will understand that experience can be more valuable than education. Four years in an active CS position will teach you more than you're likely to learn in the same amount of time in college.
This does limit your options though - there are going to be PHBs in hiring positions for jobs you may be interested in and very well-suited to, and a lot of them refuse to consider you unless you have that fancy piece of paper to show them that you blew a lot of money on your job hunt. You just need to take this into account when looking for work. Also, just because the opening states it requires that gilded paper doesn't guarantee it's required - if you're really interested, ask them if they'd consider experience and accomplishments on your resume' to be equivalents. A few will.
I know most of my time in college was totally wasted, and I don't mean on beer and parties. It played basically no role whatsoever in my current job. The person that hired me was interested not in my current knowledge, but in my talents and in my ability to learn and adapt/grow. You can't learn that in college, and the smart managers know that.
I work for the Department of Redundancy Department.
Also, since the tone of your post suggests you are male, can I observe that exposure to the humanities tends also to enable you to meet (and discuss interesting subjects with) women? I'm not talking about sex, but improving your familiarity with the people you will meet as soon as you step outside the IT department, some of whom will influence your career.
From scarped cliff or quarried stone she cries "A thousand types are gone, I care for nothing, no not one."
You will not be able to get a good degree without the general education courses. However, you can always pick up a few CS books and do your own research. It's a lot cheaper than paying tuition.
You want a trade school, not a university. There's a lot more to a university education than your major classes. It's called being a well-rounded educated individual.
To take the subjects you mentioned, here's how I've seen them impact my life as a programmer (disclaimer, I'm also a university prof---in mathematics)
English: I can't tell you how many docs are poorly written (not just grammar, but everything about the docs and style), not to mention just about everything else in your life.
History: those that don't know it are doomed to repeat it. It's true, to a large extent. Don't be so ignorant.
Art: wow, have you ever seen a UI design by someone that has little concept of spatial representation?
If you really learn nothing in these classes beyond your high school classes, maybe you need to go to a better university, or challenge yourself with harder classes.
"Moreover, I attended an excellent high school that covered these fields of study in great detail, and I feel no need or desire to spend more time studying these things." If this is the case, then take the AP Placement Tests and you can skip those courses.
This is neither meant to be derogatory nor tongue in cheek
Since you don't seem to want a real BS degree but just want a piece of paper (is this needed by your employer or hindering your career growth?) why not just buy a piece of paper for $100 or so?
For some value of "accredited", these diploma mills are "accredited"
They teach you how to learn things. Very useful if you are going to ever design anything new. If you're just going to code out of the Gamma book, you're missing quite a lot. Patterns don't work well outside their design regime (and Gamma even says so in his book), and it takes some real creativity sometimes to adapt them correctly or design new ones.
If you think learning to communicate better won't help your job, you won't be a very good engineer. It is absolutely critical. As is learning how to persuade, learning a foreign culture and/or language (not even necessarily one you will encounter regularly with your job, but it helps if it is).
And a narrow perspective will put you at very substantial risk of burnout. 5 years into your career, you will get truly sick of writing your 50th test procedure document, and you'll be stuck because that will be your only skill.
You apparently just graduated high school, and think you know it all. Take it from someone with experience, you don't. Not even close. Your first year of college will teach you just how little you really know. It will be a shock.
In short, BAD idea for the long (and even medium) term.
If you think the point of education is to get a spiffy piece of paper no one will EVER look at, you have missed the point.
For similar reasons, I'd suggest steering away from a dedicated CS degree. Maybe as a minor. I can't emphasize enough how useful my physics and math degrees have been.
They will help with your life. When your boss asks you to do something unethical, what do you do? When you vote in an election, who do you vote for? When you realize that zeros and ones are not all there is to life, what do you fall back on? I am happy if you went to a good high school that gave you the basics. That will prepare you for a good college that will challenge you further, to think and learn in ways that you do not expect.
Your approach is shortsighted as higher education has many purposes (primarily becoming a well-rounded person and citizen and NOT being formed into a strictly utilitarian bullet [following a criticism that Admiral Rickover made of the triumph of utilitarianism in education in the 70's]). However it's your life. Following that your best bet is simply to skip the BS and pursue an MS directly. There may be some places that will let you do this although most will insist on a combined BS/MS program instead. This course might work but is likely to cause you grief if you decide to pursue a PhD because you may not have a sufficiently broad set of educational experiences to draw upon. OTOH this sort of thing was not that uncommon with some scientists in the early part of the 20th century.
University is not trade school. You go there to get educated. If all you know is one narrow field, then you can hardly call yourself educated.
You can do what I did and take the general ed classes at the local community college, then just transfer the credits in. A lot cheaper that way.
And out of all the general ed classes you need to take, I'd have to say the English 101 class is the most important. It's just down right embarrassing to claim that you are educated, but can't even write a coherent paper. And yes, you do that a lot in the professional world. Or in more general, you need to be able to communicate effectively. I know this one senior developer who said one of the best developers he's ever had was a guy whose degree wasn't in CS or related field but in English. And it was simply because he was knew how to communicate his thoughts in a clear and effective manner. His code might not have been as tight and efficient as a CS guy, but in the grand scheme of things that doesn't matter as much as being able to write clear and maintainable code.
Who knows, you might actually enjoy some of those non-CS classes. I know I liked the critical thinking class I took to fulfill a humanities credit. That surprised me because I'm pretty sure I wouldn't have signed up for a class like that if I wasn't forced to pick something.
Consider going outside the US. A lot of the gen ed reqs in the US are there to make up for a failing secondary education system. A lot of places in GB and Europe offer fairly narrow programs. They might not take you though.
This is a terrible idea. I think you'd be better off not bothering with the degree. The degree, even without the gen ed reqs, will also "not make you better at your job." A real tertiary education with some breadth might make you better at your career. If you're too cool for a "career," and only interested in being good at your "job," start getting your friends who are getting a liberal education to thanks you now. In 20 years they'll make lots of money running the companies you work for at basically the same salary. But at least you won't waste your time.
Yes. I'm a university professor of engineering. I'm the Man. I'll keep you down. You can't play by my rules, man. I just don't get it.
Beware: If all you can do is code there's a great chance your job will end up in India. You have to have broader skills now to be competitive. Instead of taking classes in an area you obviously know well (i.e. coding), why not take more general business classes or in the sciences so you can use your coding skills as a tool to solve critical problems rather than being a coder waiting for a problem to get assigned to you? 99% of the people you will need to work with aren't coders and if you don't have any general skills you won't be able to work with them as effectively.
Good luck,
-c
I hear ya but there's a lot to be said for being well rounded. You sound very driven and focused on having a successful career but after you get to where you want to be, you might come to realize that there's more to life than your career. A college education is meant to learn to live a life, not to learn to make a living. It sounds like the only place you'd find what you're looking for is a trade school for IT. If you went to one of those trade schools that teach you only CS stuff, (the kind of places that run TV ads to get students), I think this will be worth less to a potential employer than a degree from a University. A BS would from a University would allow you to continue on to a Masters or PhD easier than a trade school degree, if you wanted to go that route some day. My 2 cents.
Sounds like you are interested in a vocational program. A bachelor's degree is about knowledge general knowledge. Basic knowledge is literature, philosophy, economics, history, etc. are all paramount to a good education. Vocational programs, on the other hand, dive deep into a specific subject providing practical hands-on experience to solve real-world problems in industry. Programming and plumbing: vocational. Computer science and computer engineering, on the other hand, are not vocational. Computer science has a significant abstract and non-practical part and in order to tie it to the rest of the world in a good way, the well rounded experience that comes form a good Bachelor's program is a good start.
Many argue that you don't *need* a bachelor's to get that knowledge: absolutely true. However, if you are one of those people that has that knowledge or can get it elsewhere -- then the general education requirements in pursuit of a BS should come easy (to the point of attending no classes and just knocking out homework and taking finals).
Education: it's worth it.
go to nerd school xD
Um Gen-Ed classes WILL make you a better programmer.
So many people say they don't want to take those classes, but after 4 years of real liberal arts study (+ your required field of course) changes you and very few people regret it (except the cost).
Simply put, if that's how you view things, you have no place getting a real college degree, you should go to trade school.
I personally suggest you get over yourself. From your post I get this feeling you skipped collage and are coming back and now feel your to busy to get a degree someone is pressing you to get. If its not the case and you are only 18-22 I suggest you work out away to go to school part time and drop one of your jobs. Some of the best students I find at Universities are Adults who come back. The fact they have families, jobs, and other issues makes them far more dedicated and less likely to waste time. They typically go year round to get the electives out of the way and I don't see why you can't find away to work it out as well. A Bachelors is a specific field type of education which is aimed at a generally rounded higher education with a small focus on some field of study. While the next level of degree a Masters is a specialized degree with pure focus on a single discipline and generally research experience. If that is not what you want to do or you find the process with out merit I suggest you pursue a different piece of paper to prove your worth. Depending on your true work experience and you coding portfolio you can likely just start paying money to take certification exams to sprinkle all over the resume. Get a few certifications in programming languages and then move on to OS admin and maintenance maybe to impress the bosses you could then move on to networking, databases, and IDEs.
I read a few months back that the expectation is that work experience will start to trump education this decade and that the larger business are starting to reverse trends which focus so much on college education. So, it is a direction to take if you feel that college just isn't for you, but it likely won't be any cheaper as the average test cost about the same as a 3 hour course and you will still need books and courses to prep you for the exams that are actually difficult.
Finally,
You will not find a Bachelors at an decent university that doesn't require you to take Math, Physics, History, English, Physiology, Economics, and many more. Hell of a 120 hours to 160 hours of course work 54 might be in your field with 18-30 going to a minor and the rest to general studies.
Momento Mori
Like many people, I had life happen and dropped out of Uni a year in. Trying to fit in the classes now, some 20 years later, to finish a CS degree it is very hard to find the CS courses during non-work hours. Any hints on schools that offer transferable credits to get these CS classes done? The gened classes are easy to find from my local university in an online my own hours schedule.
Try Neumont University, they'll get you a BS in an accelerated 2.5 years with (I think) very minimal Gen-Ed requirements. I had some friends who went there and they all enjoyed it.
I know it seems like a big waste and such, but seriously... do the general ed. classes. The last thing you need to do is to end up so single-minded that you can't even see a wider world out there.
You know the big stereotype about how geeks can't function socially? Remaining willfully ignorant of everything outside your chosen craft is a big symptom of that.
You may *think* that your high school covered all of that, but honestly, they likely did not. Even if it seems like total crap, you'll likely learn things about art, philosophy, English, history and the like that a high school class could never cover.
I remember thinking the same thing you did a long time ago, while chasing an EE. Then I took the required history class, and gained such a passion for looking into the past, that I minored in it. All it took was a prof that really loved what he taught, and expressed it in a way that touched off an intense curiosity to learn more. The more I learned on my own and beyond, the more I fell in love with where we've been as a whole, and in exploring the past.
Hell, it even helped out in my eng. classes. Proof? Researching why RMS Titanic's electrical systems held out for so long in spite of all that seawater coming in made for one of the most kick-ass papers I'd ever written, and it gave me an incredible respect for electrical technology back then. I wouldn't have given a shit if I wasn't interested in history, and my classmates were too busy analyzing and making shallow papers on the tech-du-jour (mostly centering on what they thought about the upcoming 1993 NEC).
But - you know the biggest reason why you should diversify? My degree is in Electrical Engineering. I took a couple light classes in programming (C++, FORTRAN, PASCAL...), and thought it was a waste at the time, but I had to fill electives. I'm a Sysadmin, have been so for 15 years, and have done programming professionally on occasion. I haven't done jack in the EE field since 1996, and my last license renewal expired a little over a decade ago.
Your career will likely diverge too, and having more than a single-minded subject under your belt will help you greatly, as well as give you alternatives and avenues that you may have never thought of.
Quo usque tandem abutere, Nimbus, patientia nostra?
If you don't want to take general education credits, then you don't want a full degree.
Here are the facts of life:
1. You don't need a formal education to write software on your own.
2. You don't need to be a well rounded person to do your job.
3. No one write software as well as they think they do.
4. The point of getting a college education is more than making you better at performing a technical skill.
Fraud is really your only choice. Seriously. No accredited program awarding a BS is going to let you skip out on General Education requirements; your two demands are mutually exclusive. That's intentional. BS programs are not technical college programs (which have their place), and they are not skills certificate programs (which also have their place).
If you don't want GenEd, you have two choices: an AAS degree, or a non-accredited BS/BA program. Few if any of those credits will transfer to an accredited program in the future, however. Accreditation provides a minimal guarantee of "quality", which is why colleges go through the (significant) effort required to obtain and maintain the credential. Caveat Emptor.
A final comment: a few additional things the General Education requirements are likely to teach you are 1) that you don't know as much as you think you do, and 2) a little humility.
Waaah. I don't want to be a well-rounded person able to hold an intelligent conversation with the people around me. I just want to single-minded-ly pursue learning only the few things I want to learn, and not be bothered with knowing anything else. If somebody makes a reference to Big Brother or Jesus or Ahab, I can just look it up on Wikipedia later.
One of the things that happens in college is Growing Up. I highly recommend it.
No accredited colleges is going to award a degree without core classes. Since the high school you went to was good, I assume you have a full load of AP classes and are able to get some, at least freshman credit. If not these core requirements can be taken a community college and transferred. You might also look at online schools that test to fudge these requirements. These degrees may or may not be accepted by the employer. I wonder if you have thought about contributing to open source projects to get some experience and see how code it written on large projects, and integrated, then opening up a consulting type situation. People do make good money doing this, and the hours can be flexible.
Just as an aside, two of my friends in college were in a similair situation. They were late 20's, had decent jobs, and made decent money, though often had to work overtime to get it. They had lives, did not live at thier parents house, had cars, had lovers, and both gave up the life to go to school. I don't know if life after school was better for them, but I do think that going through the full process of college, including the evil core classes, made them people who were not laborers but problem solvers. This in terms gave them opportunities they did not have before. I never understood how they did school, I would not have been able to do it at 30 with a job and a life. But they did.
"She's a scientist and a lesbian. She's not going to let it slide." Orphan Black
Do a three-year computer science degree in the UK. You will only see computer science.
I really would hate to work with someone like you.
First, participating in general education classes is in no way a waste of time. Practicing and learning skills and knowledge in an array of topics is always beneficial and has a greater impact on an individuals effectiveness and ability to interact and collaborate within a society, within groups, and with other individuals. And whether or not your high school education covered the same topics it is unlikely the teachers and material will be identical and unlike many technical courses the general education classes can often provide new perspective and insight simply because you are learning from a different teacher and different book.
Second, if you truly do want a CS degree then stop wasting time trying to figure out how to work your way around the general education requirements and just take the damn classes. The time you spend taking these classes is a drop in the bucket compared to the probable amount of time you have to live and work in a career and hopefully even go back later and take more classes to expand your knowledge, experience, and perspective. It always astounds me when I see intelligent people who have the opportunity but waste precious years not getting an advanced education and usually it is due to the most minuscule barriers such as "I don't want to take the general ed classes, they are a waste of my time".
Just do it.
Because that is what getting a "real" BS entails, getting a "well-rounded" education.
Instead, it sounds like you are wanting a vocational/technical school degree, which is subpar, compared to getting a BS.
Do note that many colleges allow you to CLEP your way out of certain core requirements courses, which means you take a comprehensive test for that course and, if you pass, you get credit for it with whatever grade you get. The tests still cost money, but not usually as much as the full course. Of course, if you fail the test, you'll be out more money, since you'll have to take the course to get the credit. So, if you feel your high school education was superlative enough to let you test your way out of the "time-wasting" core curriculum, then by all means do so. It will save you time and money. Just don't be too surprised when you reach the limits of your knowledge in them at some point and have to take the courses anyway.
-SS "Teach the ignorant, care for the dumb, and punish the stupid."
Come to Germany! You can get a BS in 3 years with almost 0 gen-ed courses (depending on the University). Some CS programs are taught in English. You'll just have to live wiz ze German accent. ;)
Like many of the comments have mentioned, fulfilling the general education requirements of a BS degree /will/ make you better at your job. Learning how to think critically about ambiguous problems and how to apply knowledge from a variety of disciplines will make you better at solving the specific problems you face as a programmer. Those creative skills will also help you later in your career by which time you will likely have grown into broader roles that include project and people management.
It's also worth mentioning that the quality and depth of critical analysis possible in college literature and history classes will surpass that of even very good high school programs.
You apparently want job training...not a college degree. A bachelor's degree is not training for a job. It's to teach you how to think and solve problems for yourself. How to absorb knowledge, interpret information and apply it to a variety of situations. Part of that involves studying the subjects you seem to want to avoid. Find a trade school. A college degree is apparently not for you if all you want is job training.
You should be applauded for wanting to get a CS degree. This will certainly affect the ways you look at computer programs in the future, and especially the programming part of it.
However, my opinion is that you should question the reasons as to why you doubt learning about, for example, English - since that might be exactly that thing that is most beneficial to you.
Allow me to explain by telling you my viewpoint of the story. I started a CS education 15 years ago, with the intention of only learning the computer-related courses in it. There were some courses in "communication" (in Swedish, since that's where I live), that I for the most part didn't like at the time. My view was that learning to write properly and to talk in front of people was a waste of time, since my focus was on creating the most brilliant programs ever created. The math and algorithm courses were more interesting at the time than the courses that got you well-informed of other areas.
However, once I got into my last year and started writing the thesis (for a company), I started seeing other priorities other than the programming itself. I saw people being percieved as bad programmers because they could not relay the intention of what their programs were doing, and I was seeing people being percieved as great programmers because they could get the whole team to start working in the same direction towards the same goal. My view is that being a great programmer is not only being able to write excellent programs, you also have to write the program the fulfills the correct purpose (and not just YOUR purpose).
I would argue that the ability to correctly convey your reasoning behind a design decision is equally as important as the ability to execute on that decision.
Getting back to your case, it seems that you have a proficiency at understanding programming, and learning new programming languages. That is absolutely a must in order to be a good developer/engineer, and you will have that advantage over other people probably for your whole life. The ability to quickly learn new areas is something you should treasure. However, I would encourage you to also learn communication skills, as that (in my experience) will help you equally as much.
Maybe that's just how it works where I live, but I guess it is applicable to other places as well.
You should question the reasons why you don't want to learn something about an area that is not as intuitive as computer programming to you.
That being said, I wish you all the luck in getting a CS degree, you have whole generations of programmers behind you that want you to succeed!
While you may not understand the necessity of a general education, most jobs seekers worth hiring understand that generally, one doesn't make a public post on the internet declaring that they don't understand the necessity of a full education.
When an HR monkey or potential hiring manager receives your resume and does a simple google search on David J Beveridge, what makes you think this slashdot submission is going to result in a job interview?
Maybe there's something college could teach you afterall, eh?
CSE programs are meant for people just like you who have a great interest in computer science. 9 times out of 10 someone enrolled in a CS program has 'programmed since 13' and is familiar with 'object-oriented paradigms', this does not make you any different. Suck it up and take the gen-eds just like everybody else has to, it is ignorant to think you are an exception.
That's where you're wrong. Speaking as a developer with a BA in English, I can tell you that your English, History, and Art classes will make you better at your job. They will make you better able to relate to people outside IT fields, better able to reason and argue logically, and give you a broader perspective of your (and your code's) context.
I can't tell you how many CS graduates I've seen at my workplace, lamenting how worthless their CS classes were because the tools we work with, and the problems we're trying to solve, bear no resemblance to their coursework. I've never heard the same from a liberal arts graduate, because everybody knows the point of a liberal education is to make you able to think critically, and give you the foundation you need to learn anything you need to learn later in life.
You can take whatever classes you want for the education. The degree programs generally require gen ed, and there is a reason that you aren't seeing.
Even with the general education, we have plenty of degree holders who don't understand people, culture, and context. You get that from your general education.
Technology classes alone will not be enough for you unless you want to be part of a blue-collar programmer socioeconomic class. As we commoditize the skills you think are your strong points, moving from coding to the application of patterns, black-box solutions to business-aligned ones, the non-contributing coursework will become important to keeping the work meaningful and in focus.
"...English, Philosophy, History, Art and the like. While these fields are useful and perhaps enriching, they will not contribute to making me better at my job."
English - How it can best be said... The weaving of language to make an emotional, intellectual, or aesthetically profound impact.. Not important?
Philosophy - Epistemology: How do you know what you know. Metaphysics: What is real, what makes it so? Ethics: What makes a right act right? Logic: How can you use symbols to enhance reasoning? Not important? Especially logic?
History - What happened and why? Seriously not important?
Art - The expression of meaning in form. The articulation of the most compelling human thought in novel mediums. The study of beauty. Not important?
All those classes are there because somebody new better. As someone who is obviously smart enough to self-teach programming, you're probably a good learner. I suspect later in life you'll wish you had the time to take more of those classes. Instead, you'll be refactoring someone else's bad code, shipping the work you love to do to less expensive off-shore help, and wondering why all that self study you did didn't give you the tools to find meaning in the changes in your work and your life.
Take the classes and enjoy them.
a BS from an accredited school
I can confirm this. I go to a school where the least technical major is civil engineering. First day of English class, the teacher told us bluntly "I know none of you want to be here, but the organization which accredits us requires English classes."
There's (almost) no `general education bullshit here.
Most schools will let you test out of courses - you just take a test at the beginning of the semester to demonstrate that you already know what they were planning on teaching you, and they give you the credit. Saves a lot of time. The second time I went to college, I tested out of basically everything but "computer lab," did all my lab work for the trimester the first week (I had been working as a programmer for 2 years and could type 90wpm), and then spent the next few months hanging out in third-year networking classes learning about SNA and the OSI model and all that.
Of course, I could argue that SNA and the OSI model turned out to be a bigger waste of my time than Gen-Ed classes ever could... ;)
Village idiot in some extremely smart villages.
I was in a similar situation, here is what I suggest:
1) Take the Comp Sci AP test to get you out of the introductory CS courses and get you some credits from the start. The gen-ed courses weren't that bad to take: It may be the CS 101 classes that drive you nuts. "This is a for loop... this is a while loop..." and looking around at all the Art majors who think they can go into Comp Sci for the money and don't understand the concept of a variable.
2) Take any other AP test you think you can. Worst-case you lose money, best case you skip some courses. There is nothing wrong with getting a poor score on an AP test other than the loss of money. But talk to someone who has taken and/or teaches AP courses to get an idea of what you need to know. If you are still in high-school then taking the AP courses is the best approach.
3) Use community college to breeze through gen-eds. I decided on my final college and picked a community college to take my Gen-Ed classes. (I did it for financial reasons though). Pick the schools and classes so you guarantee a transfer. Then take nothing but gen-ed courses in the community college because they will be really easy. If you are as smart as you think, you might be able to do 2 years of gen-ed classes in 1 year. Most of those community college classes will be designed for slackers.
4) Grow up. Those gen-ed courses are actually some of the best parts of college. I am a geek to the core, but I loved discussing Descartes' meditations, studying economics, learning how the eye communicates images to the brain, and debugging why various wars started. If you think you can survive in the world knowing only what is in the computer you will be unable to accurately measure the world around you and efficiently apply what you have learned to your field. You won't be young forever so at some point you will wake-up and realize you aren't the best of the best of the best anymore, and you will want your niche in the real world. Computers are a tool - a means. True success requires more than just the means (your C.S.) to fulfill.
I have 2 programmers working for me, both incredibly smart people. One of them has a comp sci/math degree who does great work and the other an African studies major who will kick the ass of most FOSS developers out there. What I appreciate about is this person's ability to see big picture, plan well, communicate to end users well, and several other attributes not related to her technical experience.
Dude, you are clueless if you really want a BA or BS with no general ed. Go to tech school, focus on the CS skills and then don't complain when you don't have the ability to go beyond your dead end job and always being told what to do.
I also agree with the poster who said not to call yourself an engineer...it is insulting to real engineers.
I work 2 jobs and I have a life.
- bzzzzzzzt. What gives you the right to think you can do that and be a computer nerd exactly? Also, how does one have 2 jobs and a life in the same time span?
You can't handle the truth.
I started when I was 11 and thankfully was a bit more open minded regarding courses but also lived in an education climate where we had mandatory curriculum.
My advice is that you need to learn humility and that is best done through the humanities because lets face it the computer is just a hyper mirror of your own super ego.
So how about jumping on something that is really a challenge like "Child rearing 101." Good luck and have fun you might actually learn something substantial.
Is that where Achilles gets stronger after being hit?
Sorry, you're thinking of a tradeschool, not a university degree. A university degree produces a well rounded, also called "educated" person. If all you're interested in is the computer stuff, then by all means, learn it. You don't need professors for that.
Imagine if you weren't allowed to use roads because a bus company complained about your driving 3 times. --skunkpussy
Those classes are a waste of time. Maybe he already spends his time studying other subjects. I have no degree yet I am a programmer. There was one econ class that I took that was useful and the rest was an absolute waste of time. And to this day I still spend a lot of time reading history, econ, philosophy ON MY OWN TIME. I don't need some overpaid leech on society to force me to learn.
I think it's funny that everyone is saying he needs those other classes to learn how to problem solve and think. He's a programmer! Most of the job is planning, solving problems, and thinking. Maybe he's lucky enough to have social skills unlike most of you nerds. Sounds like a lot of whining from people that want to force everyone else to waste a ton of money and get a mortgage with no house of loans just because they did.
He may be smarter and have better social skills than you. Quit hating.
the GE subjects? They can be interesting and learning more makes you a better person, programmer, spouse, parent, neighbor, voter, etc. Learning and school, in general, really don't have to be bad things which you try to escape.
I have no interest in wasting any of my precious time taking classes in English, Philosophy, History, Art and the like. While these fields are useful and perhaps enriching, they will not contribute to making me better at my job. Moreover, I attended an excellent high school that covered these fields of study in great detail, and I feel no need or desire to spend more time studying these things.
I graduated college from a nationally prominent liberal arts college in 1984 with a BS in mathematics. Based on placement tests administered in orientation, I was exempted from english, foreign language and most of the other "gen ed" requirements you speak of, like you, based on a strong HS curriculum. I then spent the next FIVE years fighting a system that had exempted me from the requirements, but gave me no credits for them.
In other words, the "gen eds" I avoided ended up biting me in the ass HARD as I found my schedule "filled" with "the only courses available" to fulfill my credit requirements to graduate.
The good news is I ended up with almost enuf philosophy credits for a minor, and that my sound HS grounding in the basics have served me well in the past 30 years.
My advice: be careful what you ask for.
Place out of what you can, but realize you still have to have the credits to graduate. Take the gen eds, but get yourself exempted from the baseline requirements if you can, take the higher levels, and choose them carefully. Being literate in another (human) language is a good thing. I have been very grateful for the religion courses in Islam and Buddhism. Formal logic out of the philosophy department has helped me write airtight code over the years. All of this will not only make you better at your job, but stand out from the other illiterate ramen-slurping geeks who will likely be your peers in the first few years of your career.
Red
I think you miss the point of a college education - the purpose of college is to ground you in many topics, so that you'll me well educated, and to prepare you for a lifetime of learning. You seem to be viewing college as a requirement to getting a higher-paying job.
I can't tell you how many 'computer people' I know that while very talented in their area (networking, administering, programming, etc.) wind-up stuck at some level of their career be ause they are not prepared to take on greater challenges. Learning how to write, how to think, analyze, and understand the world around you are the traits a college degree is supposed to give you.
There's absolutely nothing wrong with attending a trade school, but it will likely open fewer doors than a college degree with all that 'general education' material.
What do you want a degree for? Seriously, is it to check a box on an employment form, or do you want to learn something? You will learn from doing, be it in college or working somewhere. Have you considered not studying computers at college? At least not as your major - say you studied chemistry, biology, or mathematics, if you did that, you could build yourself an impressive career as a programmer in your chosen field. Your programming skills would augment your degree (or vice-versatile) and make you a very attractive candidate in your chosen field.
Ken
Go to a trade school. You don't want a BS.
Or better yet, just study independently.
Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
Here's a suggestion....read "The Closing the American Mind" by Allan Bloom
I got a double-degree in Computer Science and Linguistics.
The great thing about doubling in Linguistics is that it is so interdisciplinary that you can use Linguistics courses for most of your general education requirements:
Behavioral Science = Psycholinguistics.
Social Science = Sociolinguistics.
History = Historical Linguistics.
Composition II = Syntax
Philosophy = Semantics
Elective Supporting Coursework for CS = Computational Linguistics, Cognitive Science Seminar, etc.
etc...
Then by the time you've finished your Gen Ed for CS, you've practically got your Linguistics degree.
And everything you learn in Linguistics is essentially about data structures and algorithms and rules and parsing and formal systems and symbol manipulation. The more advanced stuff gets into AI and natural language processing. It'll help your CS brain a lot if you learn Linguistics.
A bachelor's degree is more than a technical degree. It's a statement that you have some broad post-high-school general education.
For a BS/CS, a major nearby engineering college at a major university requires 30 credit hours - just under 1/4 of your degree - to be non-technical courses.
* 9 hours of English or Literature
* 3 hours of communications
* 3 hours in fine arts
* 12 hours of history and political science
* 3 hours in social or cultural studies
These reflect university core-curriculum requirements.
This university's core curriculum is designed so that all university graduates:
* can read and write English [this includes International students who may have deficiencies when the enroll]
* have some college level understanding of literature and its forms
* have critical thinking skills including adult-level understandings of argument form and math including logic
* understand the scientific method and its major implications
* understand history and the value and relevance of history and historical research
* have an understanding of politics and how it works
* have an understanding of art and aesthetics and their principles
* have an understanding of major past and present cultures.
Implicit is that this understanding will be an an adult level, not a high school or junior high level. This means the university graduate will be able to think critically about these topics.
These are some of the things that a bachelor's degree from a respected university implies.
Go for your bachelors and do the humanities work required. OR, if you pursue a purely technical education, take the time on your own to do the equivalent work. It will make you a more well-rounded individual and it will make you more valuable to others including your future employers.
It is an education in critical thinking. And not only about critically thinking about CS in your case, but about the world in general.
You will be, with a degree in hand, among the top 5% or so of the world's population. If all you know is CS and what you got in
high school you will be sorely lacking the skills to cope with the complex world we live in, especially considering that 95% of the
world will have less education (and lower coping skills, presumably) than one with a degree.
I worked as an engineer in a weapons manufacturer/defense contractor for the US Army. They hired lots of guys who had great
engineering backgrounds but little in the way of coursework that would help them deal with being humans. Those guys were great
if you wanted to put them in a room and have them develop stuff, but don't show them to people, don't let them interact with
people, particularly if you want money from they people they must interact with and God forbid, don't let them make decisions
that would affect other people. They just didn't have the skills to be anything more than geeks.
You could certainly find a school which has a limited amount of Gen-Ed. For instance, the RPI ITWS degree seems to fit:
http://www.rpi.edu/dept/IT/undergraduate/curriculum/degree_reqs_2010.html
You need some broader courses, but they are pretty much all electives and I imagine that you could pick some of specific interest.
Their CS degree also requires few "core" classes and mostly electives, for which there seem many that may be of interest (ie, they appear to have an HCI class in the humanities division).
http://www.cs.rpi.edu/academics/undergrad/09.html
And RPI is definitely an excellent school.
, but I have no interest in wasting any of my precious time taking classes in English, Philosophy, History, Art and the like.
A shame because until I took a course on boolean logic, de Morgan's algebra, etc. in the Philosophy department a lot of computer science and mathematics didn't really click and up to that point I was just regurgitating formulas without having any understanding on the foundation on which my knowledge sat.
I've been programming for over 25 years without a degree. I've thought about going back for a degree so I could learn English, Philosophy, History, Art and the like. If your any kind of a developer at all you won't learn much about co-sci in college. You should go get your degree just for the sake of learning English, Philosophy, History, Art and the like. They will make you a better programmer even if you can't see that now. Having a well rounded education makes you a more valuable employee. This is why some employers do not hire candidates without a BS degree, not to mention paying higher salaries. It may seem like these subjects are unrelated, but that couldn't be farther from the truth.
While these fields are useful and perhaps enriching, they will not contribute to making me better at my job
You're saying that you know in advance that these classes will not help you. Do you see anything wrong with this?
Nevermind the classes, this is the reason I would rather high school students be held in college for 4 years before release into the wild. At least some of them will, in this time, begin to realize that they don't know everything yet. A team in which every person understands this will work together well and be extremely productive. In less fortunate teams, this is how egowar begins.
I was this way in college, I think it's a perfectly natural thing for humans, but you will be so much better as a co-worker (and, imo, better as a human) when you get past it.
Maybe a little harsh, but meant with good intentions.
> While these fields are useful and perhaps enriching,
> they will not contribute to making me better at my job.
You are assuming the job you have now is going to be the job you have 10 years from now.
Let me give you a hint about this. You don't want your job today to be the same one you have 10 years from now. You want to move up the food chain. As you move up you will find that your job will become one of getting things done by working through other people. The fields that you seem to think are unimportant now will become very important to you in the future. So take those psychology, economics and similar humanities courses.
I got my BA degree in mathematics in 1964, before computer science was a generally recognized subject for degrees. I loaded up on numerical analysis classes since they presented the kinds of mathematics applicable to computers. I also took two years of symbolic logic (part of the philosophy curriculum) because I thought it might have some application to programming and a year of accounting (business curriculum) because I knew much of future use of computers would be in business applications. I did not know it at the time, but my English and public speaking classes meant that I was prepared to write literate, readable test procedures and user manuals and to make presentations in front of customers. By taking literature, history, art appreciation, and music appreciation classes, I ensured I would not be merely a geek or nerd (terms not yet in use at the time).
In the end, I got an excellent job as a computer test engineer. It was not long before I was supervising 5-10 other testers. When I hired a new tester, however, I tried to avoid hiring anyone with a computer science degree. I found that those with CS degrees were more interested in computers as the central object of their studies than as a tool to accomplish a task.
I am now very comfortably retired after a computer career of 40+ years. I retired before I was old enough for Social Security, retiring when I wanted to retire (not when my employer wanted to retire me). Part of the reason I am not bored with retirement was that my university education gave me a broad enough view of life and the world to have interests beyond my career. Part of the reason I was able to afford retirement was that my university education gave me the ability to understand financial statements and investment strategies.
A university education implies an education that is universal and not narrowly focused. Not everyone benefits from a university education. Those who could benefit but do not partake might find themselves as drudges, earning a living without having a life.
Perhaps try the Open University: http://www3.open.ac.uk/study/undergraduate/computing-and-ict/index.htm
It's UK based but is open to students from anywhere, and is both distance learning and part time so as to fit in with the two existing jobs.
Growing up happens when someone gets a job.
Useless intellectual wankery is useless - how many people have you met who went "oh, i was trying to code up this database and i couldn't figure out how to implement the storage, but then i remembered reading Hemingway and it was *obvious* what to do!"
I know in the US, having your certifications (A+, Cisco, MCSD, etc) means more to an employer than a college degree in CS. The reason being is that although a college degree sounds good, it becomes outdated. Just think of all the people that got a CS degree 30-40 years ago; Do you think the information they learned back then will help them out with today's technology? Whereas the certifications must be renewed every few years - so you have to go through training and you'll be caught up to date with the current technology.
Don't get me wrong - a college degree has it's benefits too. It shows an employer that you can commit to something. Some major companies might require a college degree just because the employer may not know what to look for in a programmer. The best situation is to have both a CS degree AND all the certifications - then you can score yourself a good, high-paying job.
I want to succeed in life, but I don't want to put in the requisite hard work that others puts in. Thanks
Just take the CLEP tests if those Gen-Ed classes really have no value for you. You can complete almost your entire first two years of schooling with those tests. I just finished up going back to school (harder to move up now without a BS degree), and I saved a boat load of time and money taking CLEP tests for Gen-Ed classes that I didn't finish in community college a decade ago.
For truly well rounded self educated people, they should be a breeze. If it is hard to pass them, then you really do need those Gen-Ed classes (those areas of knowledge really do have value). But plenty of people who actually like to read (non-fiction) have no need to waste their time in 100-level Humanities classes.
-- All that is necessary for the triumph of evil is that good men do nothing. -- Edmund Burke
"While these fields are useful and perhaps enriching, they will not contribute to making me better at my job"
You have no clue how it works. My Day-to-Day is probably 2 hours of actual coding in an 8 hour day. The other 6 is working with clients, meetings with co-workers and reading/writing documentation.
You actually don't realize how much being able to communicate verbally and being a social individual plays into this industry. Clients need software and clients generally have no idea what they really need and that's exactly why you have a job in the first place. These courses will help you with your commutations and writing skills. You need those skills.
No company is going to hire a guy who can't hold a conversation and communicate his ideas. If he can't it doesn't matter if he Einstein he's brain power is useless if he can't explain what he is doing.
If you can't be convinced that way, the only other way is I can just tell you to "Suck it up" and get them done. Because most companies won't waste their time with resumes that don't have CS/Engineering background, there not going to dump $xxxx.xx dollars on a chance you might know something.
Instead, it sounds like you are wanting a vocational/technical school degree, which is subpar, compared to getting a BS.
I wouldn't say sub-par; it's just for someone who wants something different in life. If all you want is a job, go to vocational school. You can earn a great living. It's apparent the submitter does not want to learn for learning's sake, so a vocational school is probably the right direction.
That's the real value of the degree - not to prove you can do the job, but to get past the layers of clueless administrators who's only job is to find reasons to reject candidates.
politicians are like babies' nappies: they should both be changed regularly and for the same reasons
Take the AP tests in the various subject areas. You need not have taken AP courses in HS, just sign up for the test- it's the test results that matter when colleges decide to give credit.
If you do well enough to get credit for these courses, then you are correct, and your school covered these areas enough for the entry-level college equivalents. If you don't do well enough, then you are wrong, and need to learn these areas. Other comments have covered their value, so I won't reiterate them, except to advise you to look at the curriculum requirements of a BS at MIT: perhaps the best tech college in the world, but they still require some coverage of these areas for a degree. Sure, they could be wrong, but it bears thinking about.
Generally speaking, you can't get a B.S. on the US without the GenEds in some form or fashion. It wouldn't be a BS if you could. If you want to minimize them, try the AP credits, along with attending a technical college-- most states have at least one as part of their public system. Their GenEds are often slightly lighter on the non-tech side.
Gen-ED is about WHY you're programming something in the first place. CS courses are about HOW to program. The HOW always follows from the WHY.
You can't be a good programmer without understanding what a program (or any other machine) is for. ALL Technology (including software) ONLY exists to serve humans in all their varied social, economic, political, philosophical and psychological contexts. It is a tool. Nothing more. To be a good toolmaker, you need to understand that a financial planner has very different needs, desires and skills compared to a building engineer, or a consumer sentiment analyst or a teacher, or a writer. They all eat too, but what, why and how they eat, and for what purposes other than nutrition vary wildly. It's the same with software.
Please do not read this sig. Thank you.
Although I sympathize with the desire to get going on a career, I'd advise that you not underestimate the value of general education in cultivating the sorts of skills, knoweldge, and aptitude that will enable you to have a full career rather than just get the first few jobs. In many careers as you progress, you take on greater "managerial" responsibilities that require higher level aptitudes and capacities. Most general education courses aim not only as "content mastery" (western literature, etc), but critical thinking, awareness of different intellectual approaches to problem solving (scientific, interpretive, creative, critical), and sometimes collaborative skills and both oral and written skills. These are the kinds of things you want to start cultivating early and they will pay off 20 years later after everything else you learn in CS is obsolete and there is a 20 year old programmer with hotter skills who will work for 2/3rds of your salary.
Of course, you may be lucky and never need to rely on other skills, but it is easier to invest in your abilitities at 20 than trying to retool at 50.
... which means it needs to be applied to some other area, typically. The broader your general knowledge, the more places you'll be able to use your CS skills.
Comment removed based on user account deletion
First: CLEP or test out of as many of the general-education classes as you can, if for no other reason than it is ridiculous to spend tuition cash on knowledge that will be discarded in a semester. The tests aren't that difficult, but then again neither is the material they cover.
The "well-rounded individual" is a line of hokum. I'm nearing the end of my own degree, the field-specific material is marginally useful, and the general-ed requirements were an expensive waste of time and money. The usefulness of a BS degree is that it demonstrates your trainability in difficult or technical fields. The first two and half years of material aren't useable - you'll spend your time studying "ideal" situations and tasks that are simplified enough for an untrained mind to handle. With the amount of programming you've already done, you'll probably be bored to tears for most of your undergraduate career.
The things that have made me a decent candidate for entry level positions are the research and projects that have been conducted outside of the classes. Sounds like you're already doing a good deal of that.
Get your degree, but understand what it is. It is a "certificate of potential ability to understand." Not a "certificate of capability."
An internal system operation returned the error "The operation completed successfully.".
You should go to a trade school. You should not be able to get a University degree without general background,
it is an important part of your college education. Since you've already decided that anything but computer science
is a waste of your time, it's clear that you would benefit from a well-rounded program that includes a lot more than
your pet subject, which I doubt you understand nearly as well as you think you do. You'll need to deal with a lot
more than a few computers to make it through life.
You may be able to study with the open university, which is a British correspondence university. It would be significantly cheaper than going to an American university, and you get to do it in your own time. I'm halfway through an BEng with them and don't hesitate to recommend them to anyone who asks.
Why would you want to skip out on all the potential tail you can interact with in non-CS classes?
lost. away. phased out. non-existing.
You are basically saying that you want certifications. The key difference between certifications and a degree is Gen Ed. Its an annoyance, but Gen Ed is basically teaching you how to navigate bureaucracy. For a programmer that may not seem as much, but it'll be required when/if you decide to move into management.
The key sentence is, "I want to get a CS degree from an accredited school (a BS, that is), but I have no interest in wasting any of my precious time taking classes in English, Philosophy, History, Art and the like." This sentence indicates that you do not know what you want. If you are in fact a "good engineer" and you can multiple languages, etc., then you should have many concrete examples of your experience and skill. You should also have ample sources of recommendations for potential employers to reference.
You must understand that a "BS" is not only a "Bachelors of Science" but that it is also "Bull Shit." You read it right -- it's a bona fide certification that you can withstand four semester-years of bullshit. This may seem funny to you now, but you'll be surprised at how much learning to handle this degree of bullshit can help you in the corporate world. You will not only be able to take the bullshit, but you will be able to give the bullshit. People will be see you in a new light as you crank out the bullshit. At this point, you'll be more dangerous than most bullshitters because of your ample real-world experience and technical know how. You'll be a bullshitter with balls. While this characteristic will eventually introduce you to the Glass Wall and prevent you from rising in the organization to become a C-level executive (I'll leave it as an exercise to the reader to find what the "C" in "C-level" executive stands for), you will be a force to be reckoned with.
If you went to a good high school and then a so-so college, you will probably cover the same material in those core classes, and they will do nothing for you intellectually. However, the core classes are what, in practice, separates the BS from a vocational degree from the trade school near the interstate. That is why many people cling to those classes as crucially important to lead a "decent" life, even though as a practical matter they contain little useful information or knowledge that does anything for them intellectually. Because without those classes, the college degree is indistinguishable from the vocational degree, and the college degree is deemed "better" in our society.
The reason other commenters' arguments don't actually make sense when you look at the actual material that you learn in those core classes is because it's an emotional argument, not an intellectual one. Cut those people some slack, but don't take what they say at face value. Recognize the degree for what it is: an arbitrary barrier for entry into many jobs and, more importantly, "decent" society.
In other words, a degree "blessed" with a tiny handful of GenEd courses is a much higher status thing to obtain -- like driving a Lexus or Audi instead of a Toyota or Volkswagen -- which makes it perceived as much more valuable to the rest of society, and infers a kind of "decency" on you that you would not have otherwise.
It's stupid, but that's the world you live in. If you suck it up and take those classes now, it will pay off later in life because people will perceive you as somehow "better" for having taken them. And that is likely all they will do for you, ever.
Luckily, they are very easy courses.
There are ways to make this more palatable. If you go to a school that puts economics and statistics in the humanities departments, you can fill many of those electives with stats and econ classes, which can actually be intellectually stimulating. You can take a foreign language, which really can be useful to you. Or if you're a musician (or want to be), you might be able to replace one class per semester with music lessons.
While I agree that classes in English, history and the like could be valuable, the 'fluff' factor in such classes make them untenable. Today's universities and colleges are interested in money and these classes are now used as a 'cash cow' to extend the length of a student's college career. Rather than rigorous course work, these classes are filled with fluff so that students do not drop out too quickly. Keeping the students in those chairs is the main goal.
Coursework that expands your mind? Not likely. Coursework that gives an easy "A" and allows the University to check off the "Is Politically Correct" check-box is more like it. And with the advent of Internet classes, a lot of coursework has devolved into unseemly web-based discussion threads where a daily quota is more important than a quality discussion. Make no mistake. These classes are not designed to enlighten anyone. They are designed to fatten the University wallet while putting young kids into lifelong dept.
Should you be a well-rounded person? Yes you should. But is it worth the debt many university students incur to get it? I'm beginning to doubt it.
I have an email signature that I like from Edsger Dijksta. He is the Dutch computer scientist best known for his concept of structured programming. "Besides a mathematical inclination, an exceptionally good mastery of one's native tongue is the most vital asset of a competent programmer."
"There are no gods, no devils, no angels, no heaven or hell. There is only our natural world. Religion is but myth and
People from outside America probably can't comprehend the psychological differences between America and basically the rest of the world when it comes to education.
Americans are groomed from a young age to not give a damn about anything outside of America. At an individual level, this in turn encourages them not to give a damn about anything outside of their immediate lives.
Education is affected by this attitude. An individual will have a core interest, but anything outside of this narrow viewpoint will be considered a "waste of time". In many cases, the individual won't even like their core stream of study, but will just be doing it to get a degree to supposedly "get a good job and to get the money" later on (even if it puts them hundreds of thousands of dollars in debt with no chance of earning that much back).
It's not limited to any field. Those who focus on English literature, for instance, will often go out of their way to avoid even the most basic math courses. This is unfortunate, as they'll need these basic math skills when making change at their future careers as baristas and cashiers.
The same goes for those who focus on Comp. Sci. They often avoid the most basic courses that involve the English language, thus never acquiring necessary skills like the ability to use capitalization and punctuation when writing.
Programmers (and any professionals) should learn humanities so that they can easier communicate with others. "Darmok" is a good example: artsy folk love allusion, and it would be good to stretch your mind beyond loops and branches.
Gen eds is where you meet girls! Now get to it...
We barely pay any attention to a person's education when we hire. We look at their experience. If you have been programing for 8 years and can prove that you understand it, go take night courses to get the education you want. Go to school part time and start looking for a job. Our job interview consists of asking real world questions about real world programming, which filters out most of those just out of college anyway. By the time your fellow high school students are out of college, you could already have 4 years of experience.
Those trying to tell you that you have to get a degree to get a job are only trying to justify their own waste of time and money.
If you have been programing for that long, you probably already know a lot of people. Contacts get you jobs because they get you past the HR department. Get your resume to them. Find a company that understands a BA, BS, masters, and PhD really don't account for much, anyone with enough money and time can get one. Find a company that understands that smart people make the best employees, and smart people don't need degrees. Do you really want to work for a company that is so myopic that all they care about is if you have a degree, and won't listen to an employee about a talented person they know???
College degrees are for average people who need a piece of paper to prove they know something. Smart people can learn things on their own, and are smart enough to know when a single college course is needed for something they DO need to go to school for. These people telling you that a CS degree is necessary to design and code simply didn't have an aptitude. Designing and coding are common sense for the most part, and smart people can pick up on the principles very quickly. You don't need a three month course to learn a computer language. You just need to sit down and start writing with many of the excellent books out there as a guide.
As far as enriching your life, if you find an elective that speaks to you, take it. If you don't write well, take some English courses. If you want to know more about history, take some history courses. If you have trouble with finances, take an accounting course. But most of the people that take these courses simply because they have to forget most of what they have learned by the time they are 30. I couldn't tell you what a past perfect predicate is anymore, and I have never needed to.
Except in English class.
I rarely read replies, it's my opinion and if you thought about your opinion a little more, I'm OK with that.
Then go to a trade school. GEC's (General Education Courses) are an inherent part of a B.S. And really, they are quite interesting. Yea, there are a few that I didn't like (like British Literature) but you have choices and I found I enjoy Economics so I took my writing class as an Economics writing class where we studied the 2008 crash. If you find you are interested in something different then you can take GEC's in that.
My school offeres a Computer Science Engineering degree. That replaces some of the more fluffy requirements with Electrical Engineering and even a few Mechanical Engineering classes. You may be interested in something like that if you are more into math-type classes.
Oh, and this deserves to be repeated. Don't expect Computer Science classes to be programming classes. They are NOT. Yes a few of them are Software Engineering classes where programming is a big aspect. But there are also a good number of algorithms classes which feel like math classes, that kind of thing.
It's where you meet women and other interesting people outside your field of study. I liked my CS and math classes, but loved (and hated) some of my general education classes. And who knows, maybe you'll discover another passion and decide to leave CS altogether.
Reviewing just the first hour of video games.
Programming is a means to solve a problem. With no skills or knowledge on how to solve these problems, why would a company want to hire you when they could easily hire someone from India or China to do your job for much much less.
Get a degree in Engineering, Business, or Statistics and use your programming skills to solve problems in these fields.
Why exactly do you want the BS? This will help determine your best course of action.
If it's not a requirement for a job, and you don't have some other compelling reason to get your degree, then I would skip it. The cost-benefit analysis just doesn't add up. Instead, start doing odd programming work and earning certifications. It's a pain in the ass but doing a lot of this will help build valuable experience that will eventually lead to a full-time programming job.
If it's a requirement for a job, then your best bet is to bite the bullet and deal with the requirements you think are lame. Get into the best public university for computer science in your state, even if only part time. Actually go and move there. Milk each project for what it's worth and try, as an end goal, not for a grade, but for a piece of work that you can show to prospective employers, and say, "I did this." Nonetheless, get the best GPA you possibly can; employers will drool over anyone with a 3.5 or better GPA. As for the not-so-technical requirements of a degree, use this as an opportunity to study, for example, the history of technology, or western philosophy up to and including Heidegger (specifically because Heidegger has a word or two to say about some of the assumptions we make as computer scientists). A language will be required; study a language that you think will benefit your career. Russian and Chinese aren't easy but they will be in demand. Pay for school by working part time for the computer lab. Avoid the party scene; it's an enormous distraction and you don't need it. The whole process may take five years, or longer if you are doing it part time, but it will be worth it for the better job offer you get when you graduate.
Do not buy a degree from a mill. Do not lie on your resume. Fraud will end your career.
Good luck!
Finding God in a Dog
I wouldn't hire you because you want to remain ignorant. I would think you were afraid to be challenged, and content to live with your prejudices.
Here's the view of the Harvard faculty ( http://harvardmagazine.com/breaking-news/general-education-gains )
"The essential purpose of a liberal education, as we understand it, is not to instill competency and confidence, or to flatter the presumption that the world students are familiar with is the only one that matters. It is, on the contrary, to unsettle presumptions, to defamiliarize the familiar, to reveal what is going on beneath and behind appearances, and to disorient young people and help them to find ways to re-orient themselves. Liberal educators aim to accomplish this by challenging assumptions, by inducing self-reflection, by teaching students how to think critically and analytically, by exposing them to the sense of alienation produced by encounters with radically different historical moments and cultural formations and with phenomena that exceed their, and even our own, capacity fully to understand. These are things that professional schools do not do, employers do not do, even academic graduate programs do not do. Those institutions deliberalize students, train them to think as professionals. The historical, theoretical, and relational perspectives that liberal education provides can be a source of enlightenment and empowerment that will serve our graduates well for the rest of their lives. We expect that every course offered in general education will be taught in this spirit.
Don't mess with The Phone Company. Piss them off and you'll be using two tin cans and a piece of string.
Got a Comp. Eng. BS at U. Michigan in 1978.
Out of 128 credits:
English (Sci Fi class)
English (God class)
Humanties (Logic)
Humanties (Logic and Automata)
Humanties (Advanced Logic)
I took the Logic classes in the philosophy dept. They were cross listed in philosophy, math and CS depts.
So, really, all of it was "In My Field".
In spite of what certain yahoos, who might even pay you not to go to college, there is a world beyond computers. You may need math, physics, psychology, and politics. You still have to deal with people to get and keep a job. Knowing something about what the software is used for will help
- I've got bad karma because I won't parrot everyone else's opinion
Why would you want to skip the gen ed stuff? By the last year they were the only classes I went into because I really wanted to (the engineering/cs classes I could do out of the book if needed).
Expand your horizons. If you want to do something that is just CS, that's called a graduate degree in CS and that's just fine. But for an undergraduate degree, do the gen ed.
If you have a portfolio and know someone at the place you are applying (and actually know how to hack out code) you should be able to get interviews even with larger firms. If they think you know your stuff, they will consider you. If you also have experience (portfolio) then you are a completely viable candidate. Otherwise, the degree could help you get an entry level position. And help you rachet up debt.
how are you going to meet any girls?
As a college graduate with a BS in CS I can tell you straight out that college education is very much overestimated. If I hadn't wasted those years in college, I wouldn't have been any worse off.
If you want to learn something, don't go to college; go to a college library and just read about whatever it is you want to know. All the humanity courses in particular are a giant waste of time. It isn't that the subjects are necessarily worthless; it is the professors and their ultra-left-wing mindset that you are forced to adopt (at least for a while) in order to pass their courses. Thankfully, most of them can be avoided.
If employers didn't require a college degree, people wouldn't have been going to college quite so much and the world would be better off. As things are now, you don't go to college to learn - you go there to get a degree. You don't get a degree to become proficient at something - you merely need the degree to be employed doing the things you already know how to do. All these ramblings from other posters are totally off-topic; I don't want a liberal education, so stop preaching already how "valuable" it is.
Don't be such a nerd. General Ed classes enable Freshmen to party and still coast through the first year with good grades. Besides, you need some English Lit and critical thinking skills so you can communicate with your wife down the road. Enjoy these years a little, there will be plenty of time for ambition later...
You've probably already found that management with degrees, particularly advanced ones, wont hire people who didnt also commit to the same course they did. You'll soon discover that there isnt much actual learning in a 4 year degree program that someone with hands on experience and a few years in a job working for a good company doesnt already know. The alleged 'rounding' experience is just to get you to pay extra for the piece of paper that'll serve as the entry ticket to certain jobs at certain companies. My son is 7 now, and I figure in ten years I'd be better off spending $250k buying him a business he can run, be successful at, and make money. Otherwise its a tremendous waste of cash even if he does decide to follow a career in whatever his degree was focused on. Or if he finds a small business he wants to work for but they're sketchy about hiring him, I can just invest $100k into their business and make him a part owner/partner. Or just pay someone $20k to apprentice him for a year or two. I started coding when I was a young teenager just like you, never went to college (hell, I barely crawled out of high school), and got a job working for a big computer company when I was 18. Over the next 6-7 years I had a few doors closed on me due to the lack of a degree. Sadly for those folks, I went on to become enormously successful, making hundreds of millions of dollars for the companies I worked for. After that initial 6-7 years, most people stopped caring about the degree, mostly just asking "Oh, where did you go to school?" at the end of the interview after realizing there wasnt anything about it on the resume. At that point, most didnt care. I looked a couple of times at company sponsored higher education opportunities. They'd have pretty much eaten my spare time at a time in my life when I was enjoying it. I had a nice 25 year career, retired early with plenty of money, and am thoroughly enjoying my life. All it took was hard work, doing a good job, having the right attitude, never giving up, and making the most of every opportunity I had. I also made a habit of taking on jobs or owning technology areas that were old-school, werent sexy, or stuff other people didnt want to do, being successful with those, advertising my own accomplishments (jeez, dont rely on you manager for that), being very focused on doing my own job well, and only working on stuff that I could put a benefit or value on. Heck, at the end of the day, being able to work office politics is far more valuable than a technical degree. Learning how to play golf might be more useful than a 4 year degree...
... or maybe an "industry certification".
You will not receive a Bachelor's degree in the United States from an accredited university without somehow completing or receiving credit for general education requirements. You can argue the merits of this until you're blue in the face, but a bachelor's degree is generally _defined_ to be a well-rounded educational experience that consists of approximately four credit-years of instruction.
Even if the GE requirements were waived, you'd have a hell of a time coming up with 4 credit-years worth of instruction in your chosen field only - and "I don't want to" isn't going to fly as a valid reason for not meeting the minimum credit requirements to graduate.
Welcome to the real world.
You want a certificate of competency in a skill. That's not what a college degree is. I thought some of the classes I took for my B.S. were a waste of time, but a degree demonstrates (or, considering some of the people I studied around, is *supposed* to demonstrate) proficiency in more than one area of thinking. Some will apply directly to your job, some will apply indirectly. But all can be useful somehow in one of the innumerable thought processes involved in day-to-day work. Abstracting problems, dealing with and understanding people, politics, etc., etc., etc.
Probably the non-directly-vocational things you'll learn are more valuable the farther up the ladder you get. So if you want to remain a replaceable cog in a machine, keep thinking exactly the way you are.
All of this blather and banter aside, you have only two options open to you that result in a practical solution.
1: Get a degree at a trade or technical school. These bypass GE requirements for the most part, but are expensive and also are considered third-rate by most employers. But if all you need is a certificate to legally work in the state that you are in, this might be the quickest method to get employed. This does work best, though, when you need the skills or certification to work for yourself or start a business.
2: Get an AA degree first. If you get one in math or possibly physics, 80% of your coursework will be prerequisites for your main degree. There will be a few filler classes, but these can largely be filled with things like geology, astronomy, chemistry, and so on, which are always good to have alongside any technical degree. Also, an AA degree has to be accepted at any college as a waiver for G.E. If you switch schools or majors at some colleges, you can lose some of your G.E. courses or have to take extra ones. 90% of the time, it's those humanities courses that really ARE mostly junk that they force you to take over if this happens (as an example, even transferring between many state colleges will trigger this nonsense). The AA degree is cheap as dirt to get (my local JC charges $21 a unit) and essentially puts a "lock" on your transcript. Once it is out of the way, you can shop around for a four year college to finish up at or most around to and you'll only have to do the core classes in the major. If you want a second BS or BA degree later on, it allows you to repeat the process. Even if your classes were a decade ago or more. (otherwise most schools will cherry-pick courses they feel are acceptable if this happens). Lastly, it also means that you're protected if you change your major to something else part-way through. Some schools have different requirements for G.E. for BA vs BS degrees.
***
Now, a CS degree also is part of the problem. Simply put, a CS degree *is* full of filler and useless stuff. Yet it also will require that you take quite a bit of math and science in most cases. You are far better off getting your AA degree in math or physics because anything like Electrical Engineering (emphasis could be on computers, of course, if you wish) or similar is a lot more useful employment-wise. The standard prerequisites for any BS degree are pretty much the same now, as well: Calculus 2 or 3 and Physics 2 or 3. Since you are going to need it anyways, you should get it out of the way first. Taking a couple of extra math and physics classes won't hurt you, either, as it will mean that you are good to go for ANY BS degree. Math and Applied Physics are the Swiss Army knifes of degrees and are always useful for anything that you want to do at the Masters level. In fact, many employers would rather hire someone with one of those two degrees who knows some SQL (or whatever language/system they need at the time) than a CIS major.
Simply put, there are no idiots out there with Masters in physics or math. Since you don't know if the job situation in the U.S. will get better any time soon, this is a better option as it covers more bases. And employers simply want you for one of two things. A: SQL. B:C++ or a similar language. They couldn't give a rat's ass if you know your way around the inside of a computer or took a class in some nearly dead language like PERL. SQL is where the high paying jobs are right now. And those are specific things that you could learn on your own or add as electives into your main degree. Think of it as math plus specific programming and database courses. But this job might not last forever. In five years, you will likely be looking for work again, and might be interested in something else. CIS is awfully saturated and narrow at this point. At least, IMO.
Also, your money needs to be saved. with colleges gouging thousands per semester, and most serious jobs now requiring a Masters degree, your money shoul
Yeah, really, why should engineers, who tend toward the autistic end of the scale to begin with, have any exposure or awareness of anything else in life, such as humans, the animal and plant kingdoms, the ability to conceptualize, communication or the nature of BEING and MEANING. An additional plus is that they would then be so much easier to pimp by industries such as War, Oil, Mineral Resources, GMO Conglomerates. The Koch Bros are already spending hundreds of millions to destroy what tattered remains that are left of a liberal arts education in this country. Even better, assess fetuses for 'engineering skills' and just jack 'em straight into the Matrix at birth. Oh, that's already been thought up. I forget, which color pill did I take?
Does anyplace actually still offer a pre-law major? Law schools haven'twanted such thing for generations; it leaves students with to muchthattheythink they know to un-teach.
The best prep for law school is. Math/physics/engineering, much to the surprise of English majors who arrive expecting their "superiorwritingskills" to carry threat (aside do generally not being true anyway, this is trounced by the analytics)
hawk, j.d, ph.d.
People who focus on technology above all else sometimes end up thinking that technology is everything.
It is not.
If I may risk a gross simplification, this parallels RIM and Apple as follows. RIM is primarily a technology company trying to appeal to consumers, but it doesn't speak the consumer language or creative lingo. This is because RIM is primarily made up of engineers that did not have a liberal arts education (I know this because I graduated from a Canadian university too); what's worse, it's made up of engineers who don't think this is a shortcoming and hence have no incentive to take corrective action (like hiring design people who do speak the creative language). Yes, you can get pretty far on technology alone, but sooner or later, you're going to hit on some blind spots, and won't even know it because you didn't have broad-based education that folks with a liberal arts + engineering education had.
Apple has maintained that its work lies in the intersection of the liberal arts+humanities+sciences. This, IMHO, is the right focus for any technology company. Even if you end up working for a company that designs PLCs -- you cannot avoid the fact that somewhere along the line, a human is going to be using your product.
What if this guy said he had to get a degree to increase his income to support his family, or to support a sick family member? Would your advice be any different in this case?
"wasting any of my precious time taking classes in English, Philosophy, History, Art and the like" -- You are assigning value to thngs you are unfamilair with. It's like a blind man saying that he doesn't like colors. Interesting.
If you already feel like you're a really good programmer, then the odds are that you will feel like even the CS classes are a waste of your time. You might consider assuming a different outlook on your education.
U can pretty much design your own major, or just take the courses you want as long as it fills the requirements of a major. I did 2 pretty separate BS's with no overlapping classes and I think I only took 1 or 2 classes outside these majors for fun. The majors were disparate enough that I got a good mix of libel arts and science (CS and Film Theory).
Though that being said, Brown is very expensive and selective and obviously not a general answer to this question.
I see some comments here encouraging you to take the classes from the other requirements, insisting that they are good for you and your career long-term. I agree with them, and my message is essentially the same, but I'm going to take a different approach to my response in case they can't impress upon you the importance of those other subjects.
A bachelor's degree by definition requires education on a variety of enriching subjects other than your major. It signifies that you have received an education on those subjects. You are requesting a means to obtain something without earning it.
If you want a computer science education without the other requirements, there are a lot of options out there, including free ones (see MIT's OpenCourseWare). If you want some kind of proof that you have obtained a computer science education without the other requirements, there are trade schools. If you want a bachelor's degree, then you need to put in the work to get one, and that includes courses on subjects outside of CS.
The sooner you accept college for what it is (an extension of high school where you *typically* do not live with your parents), then the sooner you will stop wasting effort tryinig to shove that proverbial square peg in a round hole. If you are really interested in specialization, continue your education and get a Master's degree or a PhD with a continued focus in CS. No matter how smart you *think* you are, there are some very important topics you will not be able ot self-teach - if for no other reason than because you simply just do not know that they exist. Besides, being a great programmer alone won't help you realize the full humor of this song: http://www.monzy.com/intro/drama_lyrics.html.
You have no ambition. Liberal arts degrees exist for a reason. It's called "well roundedness". Be the kid running around fixing printers and changing passwords. Being a computer scientist (as I am) has a lot more meaning than just programming or writing code. Solving large problems that have a long lifetime require more than just "writing code". When you start growing up and see real stuff instead of your quick script, you'll realize this. As already stated. I would never hire someone like you, and I have the history as well.
Universities grant degrees for people who fulfill the requirements described for the granting of the degree. If you're not willing to do what's required, you have no right to one. If all you want to do is sling code, go to a freaking tech school. If that's not respected as much as an BSCS? There's probably a reason for that.
I'm a guy with a job, a wife, and two kids who went back to get an MSCS at age 50. I wanted one, I did what was required (including a thesis), and got one. My undergrad degree was thirty+ years ago (in Computer Engineering) - again, I wanted it, I did what was required, and... hey! I got the degree! How about that!? Such a deal... The bottom line is that a University is not a Tech School. If you want the respect/prestige/whatever of a University degree, do what's required to get one. If you don't want to, then live with the tech school degree you're entitled to.
That is all.
How many women are you going to meet in your computer science courses? And competition for those five will be fierce. You'll never find as large a pool of single women your own age as when you go to University.
The semester before you sign up for any classes you may want to drop in on the classic female dominated subject areas: linguistics, biology, environmental studies, and psychology.
If you are reasonably fit, for a long term match I'd suggest taking a course in kinesiology. The women there will have a much better understanding and interest in in preserving their athletic bods in the long term.
But CS engineering has no licensing requirements in the US, so no, it doesn't actually mean something.
Be careful. At least in the state of Florida, a person may not:
use the name or title "professional engineer" or any other title, designation, words, letters, abbreviations, or device tending to indicate that such person holds an active license as an engineer when the person is not licensed under this chapter, including, but not limited to, the following titles: [long list omitted], "software engineer," "computer hardware engineer," or "systems engineer." Florida Statute 471.031(1)(b)1.
There are some significant exceptions, such as working in the aerospace or defense industries, but if one is an independent consultant in the State of Florida with the word "engineer" on his business card, software or otherwise, he should read Florida Statue 471 carefully, and perhaps consult an attorney. The state frequently views using the word "engineer" in one's title as implying that one is a licensed, Registered Professional Engineer and, if one is not, one is considered to have committed a misdemeanor of the first degree (FS 471.031(2)).
I think the rules in many other states are similar.
This general ed / "distribution" thing sounds ghastly. Being permitted to take courses outside your subject? Fine. Being forced to? Bleah.
There are various European countries where distribtion / gen ed doesn't exist,
though of course I don't know how realistic an option that might be for the original poster.
-- You've got to get a hat if you want to get ahead.
If you don't take courses in economics and history, you could end up wasting your time on an "alternative currency" programming project that's just a big scam without realizing it.
See,
College is unlike lower education, in that you aren't there to merely learn - you're there to contribute to the greater body of human knowledge.
Gen Ed courses will likely lack an engineering approach to their problems. You have expertise that you can offer to enhance the content of those courses. Maybe an anthropology teacher has too much data and not enough time. Maybe a business professor knows the equations that need to run, but sticks to the old habit of writing them out by hand. Change these things!
You'll learn along the way, sure. But the POINT is to contribute. And that's where a diverse education is fundamental to our society.
The first 6 days are for preparation.
The seventh day, you break into the house of someone with the degree you want and steal it.
Your precious time will be safe this way. Unless you get caught. But that would mean that you didn't prepare well.
From when I was looking for schools, I would suggest you look for schools with things like "institute of technology" in the name. I suspect that you won't find any major universities without gen-ends, but if you're OK with somewhere like Rochester Institute of Technology, I seem to recall that they didn't have much required in that area.
The best CS info I ever got was in Intro to Philosophy - the discussion of Plato and Platonic Ideals maps directly onto Object-Oriented Programming.
I've been saying for a long time now that one of the requirements during a tech interview should be to have people write an essay. Readability of code will determine 70% of a programmer's usefulness. And those who can't structure text with future readers in mind very likely (albeit not with 100% correlation) cannot structure code with future readers in mind.
Any guest worker system is indistinguishable from indentured servitude.
Carnegie Mellon may be for you. When I was there exact gen-ed requirements (100 level english, history, etc) were minimal. People who did well on the high school AP tests were able to avoid them entirely.
There were a number of non-major elective slots and rules for how to fill them, but with a university like CMU it was easy to populate my schedule with wonderfully interesting and/or useful classes. Many people chose electives that stacked with a few additional courses to give them a minor.
One of the few good things I can say about CMU is that very little of my time was wasted. I contrast this with the education many of my friends received at the local "state schools" where more than 50% their education had little bearing on their major. At a nearby state school it was possible to declare a major some time during the junior year and still graduate on time. I don't know how you can learn enough of a field to receive a bachelor's degree after only one year of coursework.
"Liechtenstein is the world's largest producer of sausage casings, potassium storage units, and false teeth."
You have to ask yourself why you want a BS in CS ?
Because if it is in order to find a job as an engineer is IT or software you better make sure your post cannot be traced back to you lol.
The first quality of an engineer is to be curious and open.
If you're cool with being a code grunt (that is focusing on the coding 100%) than you don't need a BS. You don't need anything. Your experience is enough.
Now if you want to actually invest money and time to learn how to DESIGN software you're going to have to accept that there is more to that than just knowing languages and understanding coding paradigms.
Software are here to fill a need, and as a engineer you need to comprehend that need and formalize it to be able to fulfill it.
You disdain education yet you desire a degree from an accredited school. There is a significant cognitive disconnect somewhere there. If you are as good as you say at what you are doing and a quick learner, you need a degree only to pass yourself as a college educated person. In other words, you are asking us to help you cheat.
the net. .. ,just not irrelevant baggage that comes alongside a degree in the US. Wasting the time of people who could actually be doing useful work isn't in any way laudable
Furthermore, all a google search might reveal is someone with a name similar to his posting this up. Considering it isn't an unusual one
Also, genius, the guy is mainly looking for an useful way to improve his CV, instead of doing the same wasting time and money learning about total BS. In pretty much all of europe (where i am from) you don't have to sit through useless classes at college learning instead stuff that's related to your profession.
It might be because people here view higher education as something to give you competence in your field of work , not as some bourgeois status symbol.
And a small bonus - he is interested in learning
I did it for several courses. Usually costs like $20 a credit and way easier than doing an entire course where you already know the material.
They have since changed the Gen-ED reguirements in NYS (I only know because as I was transitioning from an ASS to a BS, because I had an ASS I was able to skip the "new" Gen-ED requirements, this was in like 2002 or something). But back when I went I had to take 1 english (a second one at my last school because they make all new students take one), 1 philosophy, 1 economics, 1 history, 1 diversity. That was it. Waste of my time.
English (and when I went to my BS school all had to take another English/Writing course cause it was more correspondence then classroom), skipped many of these classes. Read the book in 2-hrs (Skimmed it), wrote my paper in couple hours. In fact I took this one course in diversity. A 20 page paper was due that counted for basically our whole grade. Had 8 weeks to write it, wrote it the last weekend before deadline, while watching the NFL draft. Got A's on all those papers. That said most of those people in those English classes needed it.
My other Gen-ED were basically the same. A's/B's, spent no time on them. But again many people either have difficulty with tests/School or w/e and did need those courses to become more well rounded. I had a History buff grandfather/uncle who taught me so much, I had a father with no degree, who understood electrical systems, math and architecture, who passed on most of this knowledge to me (dude's brain is just amazing to me), my mom was a preschool teacher so helped me understand kids/mentality of kids, and an Aunt/Uncle who taught me about Economics and healthy debate (they were liberals my parents not so much).
Because of all this family, I was already well rounded. All these classes gave me were school debt. I truly believe they were a waste of my time.
However, when I did go to RIT, many of the other CS students were not. They definitely needed these classes.
I ended up going back for my BS in Accounting, I have a ASS in CIS, and 8 credits short of a BS in CS (When the bubble crashed, I decided to drop out of RIT, the cost was killing me, as is I still owe 70k). I got a job as an Auditor, but within a year had moved to a Computer Forensic Unit, where I use my Computer skills (not so much programming, but have written a couple custom pieces of software for the Unit), English/Writing Skills for reports, Accounting skills (many of the cases I have are Tax in nature) to help determine what data I'm sending the Investigator. So these Gen-ED classes can help you, as you get into the "real world" you'll more then likely find your career/life diverging into something else then you imagined.
However, because of my personal experience, I agree they are a waste of time/money. I wish there had been a way to test out of these courses. I wish I had taken more then the Math AP course. Take as many AP courses as you can so you can skip as many basic classes as you can. Better money spent for time.
CLEP (college level examination program) is what you are looking for. I CLEP'd my way out of nearly every general ed requirement at my alma mater (BS in CS from the University of Arizona, 1998.) Like you, I had an excellent high school preparatory experience that let me pass every English, math, social studies, chemistry, and physics CLEP test. The only thing I couldn't CLEP was a gender studies requirement, but that was only because there was no CLEP to cover it. The tests aren't cheap, but for less than the cost of resident tuition for one semester at the UofA, I CLEP'd out of three semester's worth of general education requirements, leaving me free to finish my 4 year degree in 5 semesters.
To operate in a particular state, each college needs to have a minimum level of accreditation. For example, in the state of Virginia, the college needs to be SCHEV accredited. State accreditation requires curriculum that includes general education classes.
Better engineering colleges also get ABET accreditation (abet.org), which means their technical classes meet a certain quality level.
Some companies will not consider you application without a college degree as an Human Resources requirement. After your resume passes through the HR hoops and gets to the hiring manager, he may not choose to interview you unless your degree is from an ABET accredited college. ECPI and ITT are not ABET accredited the last time I checked, and I know hiring managers who aren't PHBs that would not interview someone with a degree from those schools. I have no experience with ECPI/ITT like programs or candidates from those schools so I can't say how good their programs are. And my experience is like many of you in that I have worked with competent people that don't need paper and useless people with paper, and so in the end a lot depends on the person. And a lot depends on what the hiring company is looking at. But your options are broadest with a degree from an ABET accredited school. Even though that requires suffering through seemingly pointless general education classes. Generally I didn't mind the non-technical classes because I felt they broadened my mind
The ones that advertise, like ITT and ECPI, only have that level of accrediation. The accrediation requirements include general education classes. Frankly, I have no problem
You don't want to work in fiance where the highest paying programming jobs are, so you don't need economics courses.
You don't want to write games, so you don't need physics, English (story telling), art, or movie courses.
You don't want to work in the "green" industry, so you don't need biology, chemistry or physics.
You don't want to work for a business (or own your own), so you don't need business courses or accounting courses,
You won't ever write proposals, specifications, reports or presentations, so you don't need English courses.
So where are you going to work?
Students get the responsibility for making sure they learn and all that, but not the freedom to choose their specialisation without tons of tack-on garbage unrelated to their field they'll never use.
I, like you, programmed since I was young (10). I was already working developing applications when I went to school. But, I quickly learned you build apps for various non-computer fields, such as business, medicine, mechanics or science in general. Considering that the schools tended to be behind the times in programming, I figured the gain in programming skill would be minimal, though concept courses probably helped. Because apps I created tended to be business apps, I chose to get a business degree, with a major in Information Systems. This is basically half computer science and half business.
The core requirements like English helped to build skills needed in the business world. I became a better writer. The contrast before and after was pretty big, but this also included 10 years of business experience while going to night school.
In short, the value I obtained from my BBA, besides the doors it opened, was from the non-computer classes, which, unlike technology, endure the test of time. I have no regrets about not taking advanced Cobol. I build business apps today, ranging from WebSphere Commerce to SalesForce.com.
You're making a common mistake. You're not understanding why you are going to college. You don't go to college to learn a trade. You'll learn far more about your trade from the day to day hands on training that you've already had by yourself as well as on the job experience. What you are going to college for is to learn how to think. All of these unrelated classes that you take are designed to expand your mind and expand your horizons beyond the narrow focus of computers. Taking these classes was one of the most rewarding experiences I've ever had. I know about jazz. I know how to write and communicate in ways I never would have thought of. I understand psychology (which is an incredibly useful skill). And I know all of this because I took all of these unrelated courses.
Brown University has no general ed requirements and a good CS department. When I got my degree there the department required one (1) writing-intensive class from the English department and the rest of the required classes were math/science/CS.
p.s. Brown is not a trade school ;-)
I sympathize with your desire to avoid wasting time and money. I think you can probably see reading these comments why you need a general 4 year degree--because the people who would hire you think you do. I think to some extent such people grossly overvalue higher education. I think your post demonstrates certain qualities that should be sought after--motivation and self-reliance--you taught _yourself_ how to program. I went to a pretty good liberal arts school, and almost every history or English class I took was incredibly boring and mostly a waste of time. In the time we spent "discussing" in class, I could have read twice as many books, skipped my classmates and teachers' mostly contrived or text book opinions and saved a lot of money. Class was a delight when a professor (or another student) showed genuine interest and excitement, but this was rare, even at a top 20 liberal arts school. I was pretty undisciplined at school, and am much happier in a work environment where I have a sense of importance. A good teacher will give you this feeling, but most fail miserably as they assign hundreds of "busy work" problems. Do it if you can get through it. It will make the rest of your life easier. Otherwise, go to the most technical school you can, or try to a find a break out job. I love programming because there is little limit to what you can do on your own. If you can research and learn effectively, you can succeed on whatever path you follow. Don't listen to the judgmental "I would never hire this guy" posters, because while you will encounter these people, frankly anyone who thinks like this is as limited in world vision as they claim you to be. Sounding bright in writing and on the phone, etc is a huge asset. Just don't tell employers you don't give a shit about something, even if it is the case.
http://clep.collegeboard.org/
It you don't plan on seeing beautiful people while at school, then you're on the right track. All my engineering classes were filled with dorky guys like myself. I found that all the hot women were in the gen ed courses you desperately want to avoid.
Like many of the other comments here, I would encourage you to consider the big picture here. People who can program are a dime a dozen. If that is your only real skill you are easy to get rid of and will constantly be in danger of either outsourcing or being replaced by the younger graduates who are more up-to-date on the latest technology.
I am currently pursuing a Ph.D. in CS and the #1 complaint by employers is that too many CS graduates can do nothing but program. To get and keep a good job you will need to be able to deal with customers, end users, to take their problems and deliver solutions. A general education will prepare you for that much better than a vocational education. Overall, my recommendation is that if you have CS nailed, double major in business or something like that. It will help your career and give you an edge when it comes to promotions and more selective jobs.
General education requirements can be met by a number of courses. It doesn't require you to take literature or ancient Chinese history. Most schools have a wide variety of courses and the requirements can be met that way.
Example:
I have a BS in Mechanical Engineering. The majority of my classes in college were degree related because in high school I took Advanced Placement (AP) tests allowing me to test out of Biology, Government, Economics, History. Instead of shelling out university fees for the public speaking and lower division English I took those at a community college during the summer.
As a result a lot of my GE requirements were already completed and I only needed an advanced English course, and a couple of social science course which I took a business class and a psychology. The advanced English class was a technical writing class. I don't know if they teach technical writing in the high school equivalent in Europe but in the US they don't. Psychology and business were easy courses for me, but I took away some nuggets of information that will stay with me.
Without any AP tests I think my degree required 6 GE courses which amounted to about 1.5 quarters of instructions (assuming 4 classes is a normal load) out of 12 quarters being the expected number to graduate (though I hear a lot of engineers are taking 5 years instead of 4 now). For those that don't know the quarter system has periods of instruction that are 10 weeks long and there are normally 3 quarters in a year (the 4th is a summer quarter that a lot of people don't take).
What I would like to see in colleges is a couple of trade school like classes that deal with specific topics (technical electives don't always fit the bill). I have friends that are electrical engineers and have gotten a job working for the Navy working on radar systems and there aren't classes dealing with radars in school. You have to pick it up on the job. Likewise for me I had heat transfer but a lot of subject matter uses simplified models and teaches you the theory. But I have not come across a problem where I need to find the temperature across solid plate with a perfect source and sink. Instead I get problems where I have heat generated the processor of a circuit board and power supply in an enclosed 3D space and I need to make sure the temperature won't rise above X degrees. It's excellent that we have software to assist with this, but it would have been nice to come into the work place already have learned that software as well. Maybe some of the colleges like MIT or Caltech have that, but UC Davis didn't (sorry for the rant there).
note: I haven't read anyone else's comments, so Im sorry if this sounds like a repeat. When I was CS, they asked us a question. (ask yourself). In this business, what is the most important language for you know? The answer is English. You need to know how to talk to people to make it in this business; ESPECIALLY if you plan on becoming a start-up. That is where the other non-cs courses come in handy. They make you a more-rounded individual. As your going through your years at school, chances are your chosen goal may change. You may finish your CS degree still, but you may choose to go on and get a masters... in business for example. Taking only cs classes gives you a narrow focus and you kinda restrict yourself in what you can do later on. Take a wide birth of classes also give you another opportunity - the option to do multiple degrees at the same time. At my institution, most of the classes (eng, phil, art hist, etc). are required by most entry-level degrees. Only the 3rd/4th year core classes were degree specific. And while you may not THINK you want to take them, I for one can say, I ended up taking Photography as my art elective and LOVED it. I ended up taking 2 more classes in it - and it was a great way to relieve my brain of CS-related stress (and there will be lots of CS-related stress, trust me). Long story short, If you know 100% that you want to go program computers for the rest of your life, then great. I know I don't.
Drop out of school, stop wasting your time and money on a useless degree.
You get jobs with experience and personality. Experience is gained through doing even if it's designing architectures for cloud based solutions in your basement or writing a facebook web scraper to make fun of all your friends.
These days, no amount of degrees will overcome those critical traits.
The constant of formal higher education, at least in terms of technology degrees, is over. Sorry med students, you're still screwed.
Many general education courses are offered online, or in shorter form during the summer and winter sessions. You can pack them all in during those times to get them done quickly.
In addition you can do the same for MUCH CHEAPER by taking them at community college, and all you'll have to take at a university is upper level G.E.
Prepare for disappointment; I go to the best university "In Silicon Valley" and their CS, CE, and EE departments are all jokes, churning out clueless grads who don't know anything. This is because the professors haven't had industry experience in decades and are there to collect their paycheck.
Also don't think you can get your degree quickly, nowadays it's a 5-6 year process. Or longer.
Degrees must be respected to be of value. Beware of programs offered that use unusual accreditation orgs. Also make certain that not only the school is fully accredited but that the departments of your trade are also fully accredited. You may have to pry and do research to get the real answers but even major universities tend to have some departments that are not accredited. Private schools tend to have their own nonsense accreditation services which they control. You can learn without degrees but you better be able to point to some wonderful, past results or your salary will suffer. Going to a lot of the nonsense schools that are now common will make you look like a village idiot to potential employers.
I want my cake, and I want to eat it too. I want to go to a good school, but I don't want to meet all their requirements because it's a "waste" of my precious time.
You know what, princess? It's ok that your parents spoiled you - but unless you're the next billionaire (and you're not, or you'd be well on your way by now) the world simply isn't going to change for you. Posting that question here only shows that you are interested in "the easy way out", the "low hanging fruit", the "path of least resistance". Life ain't like that kid. Now GTFO and stop wasting MY precious time.
Seven puppies were harmed during the making of this post.
do n't really worry about the "wasted" time in gen ed courses use them to network and get contacts.
Also you may want to get with your advisor and see what are the best courses to take to serve those requirements without getting one of the more "loony" teachers that will hit you with those insane "i think everybody should go through what i did to get my degree" assignments like a weekly 9 page report on %random% subject that must be in %style of the week%.
Any person using FTFY or editing my postings agrees to a US$50.00 charge
Once you get a more general and rounded education, you might find you like something else better, or combined with CS. It happens to a lot of people. Honestly, I would not hire someone that only knew CS. They are boring people. Expanded yourself and use your education to do it.
I thought the same when I was doing my CS studies. However, then you suddenly stop being a code monkey after a few years and move to a position where you have to interface with "normal" people, not CS grads. Which means communication in English, it means being sensitive to potential cultural/historical issues, etc. That is where all the humanities come in. If you ever do anything that has a user interface, a bit of background in arts will help you tremendously with design. These classes also help you see problems from a different angle than an engineer would look at them - again very useful when dealing with "mere mortals". Unfortunately for me, I have discovered this only after 10 years of working in CS.
So do take these "useless" classes - if they are any good and you take them with open mind, they will give you wider background to build on.
It baffles me that people make these kinds of life choices, and then wonder why the US makes shit policy and political decisions at every turn. It's a direct correlation, people.
At the time I attended (disclosure 40 years ago) the non-technical requirements were minimal. But you did have to take chemistry and physics. I majored in applied mathematics and stayed on to get a masters in information and computer sciences, I am a software engineer Lester
The problem with the US general education requirements is that it forces you to do something that can only work out well for you if you do it from your own motivation. Some people respond well to having their choices made for them, but many don't, so forced classes are the best way of creating resentment and killing any interest they might have had in those topics. The obedient can benefit, but the independent are put at a disadvantage on their own dime. The independent will approach a subject at their own choice when they are ready to, and forcing something on them disrupts their learning. That's unfortunate especially because part of the point of education is to become independent.
Countries with state-paid higher education don't have these requirements. The real reason they are mandatory in the US is that they are much cheaper to offer yet they can be sold at a high price. The universities usually already have departments in the social sciences so if students weren't forced to go there to take classes then the university wouldn't get a teaching-related return on hiring the people in those departments. There is no expensive lab work for the introductory social science courses. There are also very few jobs for people in the social sciences, so they are cheap to hire due to no competition. It's about buying the teaching for cheap and selling the classes for a high price. Anything else they say about the subject is advertising of the kind any sales department will try to come up with.
I see an attitude problem that would make you a very risky hire. I also see a person who doesn't know enough about any application area to be able to understand customer requirements. I also see a boring jerk that is no fun to go to lunch with, because he can't discuss music, history, physics, economics, or politics. In the general flood of resumes, yours is one of the easier ones to dump in the circular file.
Bachelors degrees aren't supposed to be about learning to do a job. That's what vocational schools are for, and they generally do a much better job - except with HR.
There's a reason for that: having a degree demonstrates that you can stick to a process for four years, including all the classes you don't like. That is particularly important to the military, which requires all officers to have a college degree (though it can be in English literature or ancient Greek.) It also helps if everybody gets the same jokes, etc - a lot of bad puns come from Shakespeare, and that's the sort of thing you learn in a 4 year college.
Another consideration: a degree is a valuable thing, both for employment and bragging rights, even if you don't really care about learning. Colleges don't require a certain number of credits to be sure you're smart, they require a certain amount of money, but it sounds a lot nicer if they don't say it that way. There is absolutely no motivation for a school to devalue its degree by giving you what you want.
Incidentally, an MS is pretty much what you describe: about the same as taking all your major classes over again (at a higher level, of course) with little or no extraneous extras. Now do you understand why they're so sticky about having a BS first?
You get very little feedback other than a handful of grades.
While there are a few teachers who are absolutely terrible -- worse, a few of those have tenure -- I've found far more teachers who actually are passionate about their field, whether or not they can communicate that in class. Talk to them. Go to office hours. If you don't have another class immediately afterwards, follow them out of class!
If you're willing to accept only a handful of grades, that's what you'll get. The few students who care enough to demand more will likely get more.
Even in that case, there are opportunities to make it technical as well. In my first English course, I wrote a script to generate precisely the right amount of random characters to look like "code", then applied that as a background to a brochure on cryptography. The rest of the brochure was designed using Scribus, which was worth learning as a skill, especially since later programming courses will require groups to create posters for their projects.
In my second English course, I was required to give an oral presentation in a PowerPoint presentation. I wasn't going to trust OpenOffice to do this right, as even PowerPoint made it difficult -- you'd have to have it reference audio files physically close to it on disk, zip them all up, and send them to the instructor. I refused to buy and install PowerPoint, or bring a microphone to a computer lab. Instead, I did it all in HTML5, mostly by hand (with jQuery), which also let me build exactly the animations I wanted and sync them to the audio. While the resulting code isn't pretty, it is something I may return to at some point, because the resulting presentation was awesome and I want to be able to do more like that.
Disclaimer: Again, talk to your teacher, especially before you try something like the above. As it turns out, PDF was perfectly acceptable for the brochure (though print was also required), and my teacher didn't really care what format the presentation was in so long as she could view it (and she had a decent browser). But you don't want to try to ask forgiveness instead of permission on something like this.
At a whole lot of schools, these classes have become little more than perfunctory checks on writing and attendance.
So, this is again sounding like English, which did indeed require attendance. It wan't an arbitrary requirement, though -- there would often be class discussions, and the assignments were such that you'd often want to be there to make sure you understood them.
It also attempted to teach rhetorical skills and critical thinking, both of which are incredibly lacking in our field, and both of which are improved both by practice and by being restricted to arbitrary subject matter and forms of presentation.
And that's just the gen-ed English that absolutely everyone needs. There's also a technical writing course required for fields like CS.
Don't thank God, thank a doctor!
If you have any interest in games then I would suggest Full Sail University in Orlando, FL. If you can afford it without working a job at the same time. The reason is, it is a 40Hr per week school. The Bachelor degree takes 21 months and it is almost exclusively CS. There are a couple of English type classes but they relate directly back to game design and development. And, because it is an accelerated program they are only one month long. So, in my opinion, this is the fastest way to a CS degree. http://www.fullsail.edu/degrees/game-development-bachelors Here is a link to the program.
"I want to get a CS degree from an accredited school (a BS, that is), but I have no interest in wasting any of my precious time taking classes in English, Philosophy, History, Art and the like. While these fields are useful and perhaps enriching, they will not contribute to making me better at my job."
I bet to differ, especially with English. Just look through Slashdot threads and see all the misspellings (which should not even be there with modern inline spell-checkers), poor grammar, paragraphs without logical structure and so forth. Most IT people have a deficit in English and should have studied it more. Trying to wiggle out of even the very minimum they're required to know does not seem the correct course.
I have been working in IT for 15 years. 99% of the technical stuff I do at work is brain dead simple no matter how much I'm paid. The bigger the company, the simpler my technical work usually is. I don't really see how replacing a course which teaches you how to write clearly with an advanced theory of computation course is going to help you. In fact, part of my theory of computation course's final exam was writing an essay.
People who think all they need to get ahead is good technical skills always perplex me. I guess that's why Steve Wozniak is richer than Steve Jobs, right? Universities, and the place who hire university graduates, have been around for a long, long time, and I'll go with their judgement about what is important in the work world over someone who wants to skip out of his English classes for yet another CS class.
If you want CS but not the general requirements needed for a Bachelor of Science, then look at a tech school or a 2 year associates degree. However, you should be aware that you will probably spend most of your "career" as a programmer. Your co-workers that do have a B.S. will be offered promotions ahead of you.
Many seem to think that things like english, philosophy, science, etc. are a waste of time, but those are the subjects that let you communicate with those outside your specific field. They are what make you a well rounded adult instead of just a guy who can program. Don't get me wrong, there is nothing wrong an associates degree or a tech school, however, in the long run, you will go further in life with a B.S. as it will open many more doors for you.
Your premise that "they will not contribute to making me better at my job" is just flat wrong, for at least three reasons (and likely many more)
1) Unless you spend your entire career as some entry-level hack, you will have to develop domain knowledge as an integral part of every project you work on. And the ability to develop new knowledge depends largely on your existing knowledge. The more you know, the better you'll be.
2) Subject matter is largely irrelevant. One of the 5 best coders I've ever seen had a degree in Music. Another had a degree in History. It's not about the course content, it's about intellectual discipline.
3) The various fields of study in the gen-ed curriculum represent different ways of thinking about/analyzing/understanding real-world problems. The appropriate attitude is something like, "Wow, a chance to develop/hone multiple problem-solving strategies! What an amazing opportunity!!"
If you try to avoid these courses, or go into them with a "ticket-punching" mentality, then you aren't 1/10th as smart as you think you are.
Course materials and lectures for much of MIT's undergraduate curriculum, including CS courses, are available on the web. Educate yourself.
That doesn't meet your requirements of an accredited institution? Then take individual courses at your local college (many colleges and universities allow members of the community to purchase courses one by one).
That doesn't meet your requirements of an actual degree? Then take courses at a night school. Most of those are geared toward Associate's Degrees, which is really what you are looking for.
That doesn't meet your desire for a Bachelor's Degree? Sorry, you need to actually take the rest of those non-CS requirements you are eschewing to get a Bachelor's.
Put my fist through my alarm clock with its ding-dong death inside my ear. - The Blackjacks.
This just sounds to me like a big QQ about the college graduates you work with getting seemingly preferential treatment over you.
I can't disagree with your viewpoint more. I have been programming since a young age as well and when I graduated high school I decided I wanted to get a well rounded view of the world... which is why I majored in business even though I had every intention of becoming a computer programmer. Not only did I take business courses, but also lots of philosophy, physics, astronomy, foreign language, behavioral sciences, etc. Those classes completely changed the way I view the world and have helped me with my career in so many different ways.
If all you want is a piece of paper so that people will respect you, you're heavily misguided. If I were you, I'd focus on fixing my attitude first.
How can you consider yourself educated if the only thing you've learned is comp. sci?
Computer science is not a career. It is an academic field of study. It sounds like you want a degree or certificate in Software Engineering, not computer science.
A college degree implies that the degree holder is educated broadly. It sounds like you want something more narrow, such as a certificate from a trade school.
The "life" that you claim to have rests on the existence of the free and relatively safe society in which we live. As you get older (you are obviously very young), I expect that you will come to realize that if we are to expect that we will continue to live in a free society, that we all need to contribute to the national dialog, and we cannot do that unless we are educated. We all should try to understand the big issues of the day, and that requires a-lot of knowledge about things other than computers. If you ever plan to vote, I hope that you will realize that a broad education is crucial.
Oh well, I will probably take a karma hit on this one. (Got it to burn though) Anyway I pretty much agree with you that gen-ed requirements are at best a complete waste of time. (I say at best since I blame the foreign language requirement, IE the undergrad torture requirement, for driving me crazy. Yes, by that I blame them for making me literally mentally ill.) The problem is that I can't think of any place that doesn't have a bug up their ass for those requirements. Well ok, maybe Brown. I've heard that they don't have any requirements but you have to put together academic study plan or something with an advisor which would probably amount to the same thing so I'm not hopeful there either. So your best bet is to find the school with the least onerous requirements. (Avoid a foreign language requirement like the plague that it is. Remember the excuses you will be given for that requirement, like cake, is a lie.) Oh and before anybody says anything to the effect of "Well they'll be useful to you in your life" I graduated almost 20 years ago. If they were ever going to be useful to me it would have happened by now. It hasn't so they were a waste. (The saddest thing is not only did they drive me crazy but they actually kept me from taking stuff I was actually interested in outside of Computer Science like bio and chem. I simply didn't have any spots in my schedule after you put all the CS courses plus the gen-ed requirements I got stuck with.) I suppose there's always Software Engineering but I think that's got gen-ed requirements as well.
Did you know 80 to 90% of the moderators on slashdot wouldn't recognize a troll even if one dragged them under a bridge.
Here's UAntwerp's subjects for year ("deel") 1-3:
http://www.ua.ac.be/main.aspx?c=.OOD2011&n=94160
In Dutch, but 95% readable to English speakers. ("gegevens"=data, "uitbating"=operating, "inleiding"=introduction)
I'm studying law in Belgium and there's lots of general education subjects, but that makes sense for law.
Expert in software patents or patent law? Contribute to the ESP wiki!
You don't want to work in fiance where the highest paying programming jobs are, so you don't need economics courses.
You don't want to write games, so you don't need physics, English (story telling), art, or movie courses.
You don't want to work in the "green" industry, so you don't need biology, chemistry or physics.
You don't want to work for a business (or own your own), so you don't need business courses or accounting courses,
You won't ever write proposals, specifications, reports or presentations, so you don't need English courses.
So where are you going to work?
Sounds like the typical obnoxious loser that believes they're the greatest thing ever, which you find working as a drone in best buy or an apple store.
>So where are you going to work?
McDonald's, like all the other Web programmers
You work two jobs and have zero interest in English, Philosophy, History, Art? You don't have much of a life.
you had me at #!
| I have no interest in wasting any of my precious time
| taking classes in English, Philosophy, History, Art
| and the like. While these fields are useful and
| perhaps enriching, they will not contribute
| to making me better at my job
this is a narrow view, an perhaps runs counter to the
well-rounded nature of what a *bachelor of science* may imply.
also, some people might differ with you though in regards to
the 'not contributing to making you better at your job'.
this whole address is really worth a read:
http://news.stanford.edu/news/2005/june15/jobs-061505.html
>
> Because I had dropped out and didn't have to take the normal classes, I
> decided to take a calligraphy class to learn how to do this. I learned
> about serif and san serif typefaces, about varying the amount of space
> between different letter combinations, about what makes great typography
> great. It was beautiful, historical, artistically subtle in a way that
> science can't capture, and I found it fascinating.
>
> None of this had even a hope of any practical application in my life.
> But ten years later, when we were designing the first Macintosh
> computer, it all came back to me. And we designed it all into the Mac.
> It was the first computer with beautiful typography. If I had never
> dropped in on that single course in college, the Mac would have never
> had multiple typefaces or proportionally spaced fonts. And since Windows
> just copied the Mac, it's likely that no personal computer would have
> them. If I had never dropped out, I would have never dropped in on this
> calligraphy class, and personal computers might not have the wonderful
> typography that they do. Of course it was impossible to connect the dots
> looking forward when I was in college. But it was very, very clear
> looking backwards ten years later.
>
> (Steve Jobs, Stanford Commencement address, 2005)
--
When I was your age (assuming you're a lot younger than I am), I felt the same way. Getting old sucks, but inevitable - therefore you should prepare for it well in advance. You should strive to be the best "coder", but not for life. There are plenty of coders we call "mushrooms" - kept in an isolated environment and fed manure (figuratively speaking, of course - treated with respect, but, generally kept away from core business competencies knowing their business/people-skill limitations). Soon enough you will need to have a diverse background in writing, history, music, poetry, etc (accounting, business law, management). so that you can "graduate" from being a coder to a well-polished leader/businessman. If coding is in your DNA, then it's just like playing golf - you won't be teeing off 300 yards, but will continue to play until six feet under - always out with a par! Coding seems to be, and will probably remain your passion. However, not elevating yourself beyond being a simple mushroom would be doing a disservice - not only to yourself, but to others (your code innovations, and how you'd impart your knowledge to the people/community around you without the ability to properly communicate or being a true leader).
Question: Why do you want a degree?
As someone not educated in the US I too find it a bit funny how much general Ed students have to take in college or university, apparetly high school does not deliver enough. However, if you are interested in more than a piece of paper, meaning in an education, then it does not matter that much. Because especially in Computer Science you have to re-learn things in rapid cycles anyway. So it is not what you learn, but that you are required to learn things with a certain systematic and to a level of abstraction, that teaches you how to learn. With that you will be able to learn things in the future.
Also, most jobs in the IT or CS field require you to understand someone else's subject in order to write programs or design systems that solve the customers problem. The more you have learned outside of raw CS the more you are able to communicate with customers in their field.
So if you want more than a piece of paper, don't skip what is asked of you. If you are as smart as you claim to be, make it a special challenge to make the best of your general Ed. Take English and use it to write an excellent blog or try to write freelance articles (CS topics are OK), take biology or some genetics courses to understand that important field, take business classes and learn how to calculate the business value of your creations and how to negotiate good contracts, etc.
Americans are groomed from a young age to not give a damn about anything outside of America.
While a fun myth to spread, the reality is far different.
I have a number of friends with kids of all ages. All of them learn quite a bit about other countries, other places across the globe.
In fact the opposite is true, that so much attention is being focused on learning about things all over than kids are not being bought the history of where they are. Learning more about all aspects of American history is pretty important to understand the context of modern choices and existing social structure.
Now it might be true that in college where kids have more self determination, they are not really thinking much about things outside the U.S. But that's when they are basically an adult and it is their choice if they wish.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
If you took enough AP classes, you shouldn't need to take many general ed classes.
You fail to see the reason for gen ed courses. It all makes you a better human im general. You get to and are forced to explore other subjects in life. I picked great courses to fi those gen ed slots. What is more great about gen ed courses is that you get to meet wonferful women that are just as smart in other subjectmatter. Not everyone can speak geek. This helps you yo learn other topics, and explore them by yourself or through conversation with other people.
It should be obvious to you, by the plethora of advice from people that have already walked the path that you are just starting, that you would be doing yourself a great disservice by narrowing your education to CS classes. General Ed. classes are there to help you grow as a person, to make you realize that the world is much larger than your present view, to give you the opportunity to find new fields of interest. Even from the strictly professional point of view, ideally you would not just take a passing interest in general education classes but would minor (or double major) in something tangential to your field. An engineer with a background in business will always have, not an edge, but a large advantage over both the engineer and an plain MBA.. his view is wider. So will the lawyer with a background in math, or the physicist with a background in philosophy or the biologist with a background in art. MIT encourages the engineer/MBA combination, USC has the Renaissance Scholar program.. just a couple of examples. What interest would you think that a person interested in CS that is just starting the path, like you, should have in, say, calligraphy or dance?
Steve Jobs told of three stories in his 1995 Stanford commencement speech, the first one is about connecting the dots of events that come into your life and apparently have no bearing on your main interest: "I decided to take a calligraphy class. I learned about serif and san serif typefaces, about varying the amount of space between different letter combinations, about what makes great typography great. It was beautiful, historical, artistically subtle in a way that science can't capture, and I found it fascinating. None of this had even a hope of any practical application in my life. But ten years later, when we were designing the first Macintosh computer, it all came back to me. And we designed it all into the Mac. It was the first computer with beautiful typography." From the Reed college Admissions page: "Reed alumnus Steve Jobs credits his early success as a programmer to the sense of spatial relationships and movement he developed while taking a Reed dance class. Who knew?"
CS does not have the monopoly on interesting things in life, not by a long shot. Even if you are just technically inclined, you would be amazed by the elegance of some mathematical proofs, the perplexity of the dual-slit experiment, the elegance of the double-helix, the awesome gravitational force of Jupiter capable of turning Io, one of his moons, into a perpetual volcano hell, the absolute control displayed in a Bach's fugue.. and on, and on, and on.. Take the advice.. broaden your horizons and do it with joy, curiosity and fascination.. you will not regret it. Good luck to you in your studies.
In most of the world, what you call "Gen Ed" is what we are taught in secondary school.
So know we know why so many people flock to college from outside the U.S. - because you place no value on continuing those studies at a more advanced level.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
The original poster, and you, who call it tack-on garbage, are the very reason that general education requirements are tacked on.
Clearly both of you can't even conceive why studying, for example, literature and philosophy might be useful to the practice of top-level computer science or software engineering. Therefore you clearly need to come out of your tunnel and be exposed to the world.
When I was studying artificial intelligence and computational vision for my post-grad degree, the stuff I learned most from was the shelf full of twentieth century philosophy books on logics, epistemology, and metaphysics (and Zen). binary-encoded symbols in computers representing things and processes out there in the world is a wondrous thing, and also a thing whose complexities are not easily mastered without a good grounding in philosophy. How can you know about the limitations of your representations - they ways they are sure to fail or become too complex or be challenged as limited or invalid - if you don't understand philosophy?
And I've come to understand how much of peoples' understanding of the world and themselves is in narrative form, and what the significance is of what is left in, and what is left out of a "good" narrative, and how narrative is fundamentally about the guiding of attention and the selection of the sub-situations salient to humans' concerns and needs. Some of that knowledge has come through a lot of careful consideration of great stories in several forms of art and literature.
All of it is central to a conception of how to do good user interface in computing.
Where are we going and why are we in a handbasket?
If you are trying to become a programmer, or any sort of engineer, and you think you can ignore general education, I sure as hell hope you know how to write already.
There is nothing more irritating than a programmer that can't express themselves in English (or whatever your language happens to be). You write great code, but your documentation looks like it was written by a ten year old with ADD. You don't understand the concept of proofreading. You don't understand the concept of organization or readability. Even your emails are useless rambling drivel.
Someone with a college degree should know how to write. Fine, don't write literature papers or take art history if you feel it is pointless, but for the sake of all that is good and holy, learn how to fucking write and take any courses you need so that you at least write documentation.
I will say this. I agree that some of the stuff they force you to do in college for "the experience" is not going to serve you as a grunt programmer. However, if you ever hope to aspire to be more than a grunt, most people need some other education. You need to understand things other than computing so you can understand requirements. It would be nice if you knew more than a little history so that you understand mistakes people make and avoid them. And when I say history, I don't mean pop culture.
And yes, I speak from the personal and daily pain of working with programmers who can't express themselves in writing to save their lives. That's only marginally acceptable if you are an outsource-able drone. Even then, it's difficult and undesirable. So unless you are very, very capable of self-education take the damn courses.
Also, be aware that the elusive female of the species is generally in the *other* courses. Having taken both the CS and the humanities courses, I know this to be true. Art History is generally best for that, in my experience. Only Education tends to have more, but that's not usually a humanities elective. That and Women's Studies, but I don't need to explain to you why that is not exactly the Happy Hunting Grounds.
I can't believe nobody else mentioned the single best reason to branch out to non-CS classes. That's where the girls are!
Interestingly, I hear what you're saying quite commonly in computer engineering/sciences, as I'm in that faculty. My friends always complain about it, but take the first year classes, as they are required. In the whole scheme of things, one year of general classes in the sciences, arts and humanities(is that under arts?) isn't that long. At 18 years old we always feel as though we have a good understanding of the world, which is somewhat true, but as we grow older and more experienced, we come to realize the arrogance of such an assumption. We will never come to understand the world in which we live fully.
Computer Engineering is distinct from Computer Science. Computer Engineering is really a mixture of electrical engineering and computer science. You take 8 Math classes instead of 4 and you come to understand and make digital/analog circuits. After this year(I'm finishing this year and have also complete a M.A.), I'll only be about 1 year away from either degree(Electrical Engineering or Computer Science). The interesting thing about being able to understand both Computer Science and Electrical Engineering are all of the amazing hardware/software devices you could create. In Computer Science you are generally restricted to writing software for existing hardware platforms, but imagine being able to do both? Imagine the neat things you could create!
A lot of people here seem to make comments that you can just "read" about computer sciences and understand it. Would you trust a doctor to operate on you who learnt from "Surgery for dummies"? Would you trust someone to make the software that runs for car controls and on planes to have gone that route? You create projects, do tests, etc., which are then graded by professors. When you graduate, it is because you were viewed academically as able to practice engineering, not because you felt as though you were. That is why in Canada, engineers are certified as professional engineers and cannot receive that designation unless they get the degree and work for 2 years under the supervision of another P.Eng. No one else can legally call themselves engineers or use the word engineering in their business name, this includes Computer Science graduates.
Being able to write is always an asset.
I wound up the last sev the most modern web eral years of my career managing people from all over the world working on complex scientific data to display environmental information on the fly on the web. We used the most modern web technologies.
I funded all this by writing grant proposals, following strict guidelines on how to prepare the project proposals; any missing or incorrectly addressed point meant instant rejection to reduce the load on the reviewers. Later I became manager of interstate projects in the same arena.
Psychology and study of other cultures was very useful. Economics and accounting courses helped me understand how to track and report on grant expenditures. Oh, yes, I budgeted annual expenditures for a software development team of 20 developers. I joined teams designing software interfaces. Some field staff were able to use custom spreadsheets to update a central database by emailing in the spreadsheets, which contained internal cross-edits. The database updates detected errors between spreadsheet data and database data and emailed the spreadsheets back for correction. These guys had designed their own spreadsheets, so we enhanced them to automate editing and entry.
My point here is that everything taught in so-called general courses (aka core courses, more accurately, because they form the core of a really educated person's abilities and knowledge) is important in being able to develop a career path in any IT field. Discrete structures is pure math, but necessary to understand DB internals and complex matrix manipulation by programs. The examples are endless, so I will stop. But don't be stupid, learn all you can with every opportunity.
There is a reason American higher education is sought out by people from all over the world.
Itch scratched, get on with your life, where experience and contact make paper qualifications into worthless trinkets. Job done.
If you were blocking sigs, you wouldn't have to read this.
If you're a great programmer already, why even bother with the CS degree? Why not take a completely different degree?
Some of the best programmers I know have degrees in things OTHER than CS. The best physics programmers aren't guys that understand CS the best, they're the guys that understand physics and math the best.
A CS degree will teach you how to be a programmer that's good at programming things to do with computing science. To a certain extent, unless you're actually interested in computing science itself, as a field, it's not worth your time. Do you want to understand computational complexity of search algorithms so you can develop your own? Get a CS degree. Do you want to come up with new algorithms for network communication? Get a CS degree. Do you want to be a programmer that understands how to program? You're done.
I would actually recommend doing a degree that gives you ONLY the extra stuff. Do an Arts degree of some kind. Find an interest. Expand your mind. You've already got the other stuff done; the piece of paper isn't going to make you any better at it. And if you want a degree because it affects your hireability, almost any degree will help you get your foot in the door.
I wanted to specialise in CS when I was in University, but I was a slacker student that's bad at writing exams. I did a lot of CS classes—all the classes that are required for a CS degree, in fact—but because I was forced to do a general science degree, I ended up with a minor in 'Earth and Atmospheric Sciences'. I've taken classes in Geology, Astronomy, Invertebrate Palaeontology, general Meteorology, Atmospheric fluid and thermodynamics, and Mass Extinction. I'm more of a scientist now than I ever could have been otherwise. It seemed like a bummer and a semi-failure back then, but now I appreciate it in so many different ways. I work in games, but I feel like I have options and avenues that wouldn't be open to other programmers. If nothing else, I understand that those options and avenues MUST EXIST.
You're already a programmer. You can keep doing that, and nobody will think any less of you, I assure you. If it were me, I'd take the opportunity and go be a scholar and a scientist, though.
I'm in the exact same position here.
I'm utterly amazed at the completely ignorant answers this guy is getting. "Oh, well we had to, so you have to, that's life.", "These classes will help you develop more than if you take just the CS classes.", or "You don't sound like someone I would hire because I only see a pointless value in a piece of paper." I've taken these gen ed classes (I still have a few, and quite frankly they killed off all of my patience with college) and they ARE utterly worthless. Want to study economics? There's a website for that. Need to study English more in depth? There's a website for that. Math? I'm sure I could find several websites. History and Philosophy alone can be greatly searched through Wikipedia, otherwise you will learn very little more in the class. It's more about how much you can parrot what the teachers want to hear than about forming your own opinions on what happened at this key event in history, or what your particular views on a branch of philosophy. None of these generals help you unless you already know you need more development in that area.
Until people wake up and realize how worthless these generals really are, if you really haven't learned this stuff by the time you left high school you probably never will. Our higher education system will be both a large waste of time and a huge waste of money, as they spend too much time teaching you pointless things that you don't have enough time to truly study what you're there for. So you end up with a class of elitist and still horrendously ignorant people that think they're educated because they spent four years parroting materials back to their teachers, and not someone who can dutifully work outside of school. Since most opt into gaining large amounts of debt instead of learning to do an honest days work, while going through school come out unable to give a reliable job performance, and generally think any job outside of their given field is hardly worth their time, even if they work one, they usually do a half-assed job. Lastly they hardly ever have anything to talk about as they spent so long studying these generals they become out of touch with the world around them, as they spent too much time studying proper MLA form (which ironically changes so often it isn't worth keep up to date). I can speak for a fact that the best discussions I've had are with my friends that don't have a degree.
This system is decrepit and falling apart around us, yet no one is willing to admit it is, in fact, higher education that is the problem to begin with. It's become so bad many jobs require a degree regardless if the job NEEDS a degree to begin with, and in many cases would get a better employee if they expected to train them from the beginning instead of assuming that a BS is going take care of that for them.
In the end you may brush this off as 'another ignorant person with an attitude problem' but how many of us will it take before you start seeing that most people see things just like, or similar to, this? Sure it may have worked for you, but in this ever changing world we need a system of education that can change with the times, and this is one of those areas that need to be much more flexible.
PS you can reply to this, but I guarantee I won't be looking back at this so don't expect to get a reply back from me.
http://www.collegeboard.com/student/testing/clep/about.html
"The College-Level Examination Program® (CLEP) gives you the opportunity to receive college credit for what you already know by earning qualifying scores on any of 33 examinations. Earn credit for knowledge you've acquired through independent study, prior course work, on-the-job training, professional development, cultural pursuits, or internships."
Go to The Evergreen State College (www.evergreen.edu)
It's an alternative college with no gen-ed requirements, you can pick your program, only go to one class (which is worth 16 credits) a quarter, and you will end up with a fully-accredited BS. Plus, the school's CS program has a good reputation in the job market.
You don't want to learn anything. You just want something to add to your resume. Focus on certifications. If your good enough to pass classes you can pass tests. Afterwards you will find out what everyone else does, including those that went to college. Bosses want workers that have something visible that can be used to keep wages down. IOW, your not going to get paid more.
Having to work for a living is the root of all evil.
Can I just say how heartening it is to see the vast majority of comments schooling this twerp for his arrogance?
Just get through it and watch your staring salary rise comparatively. I do agree that much of that type of 'enrichment' can be a waste of time. The general studies is now being used as a sway tool for the political left to condition young minds the way they want them. Sad...
Having had to work with many people who either came from a school with very limited genEd requirements, or where some students found some loopholes to get out of them, etc., I can now appreciate those 'pain in the ass worthless' classes. I've strongly suggested to some of them that they go back just to take a few of those classes so that they (maybe) can see that it doesn't matter how fast their code runs if they can't work well and communicate with others (coders, engineers, HR, administration, customers, end users, etc) and technical writing actually has to be read and understood by those same others in many cases. But that's only one of many reasons that it makes sense to take them and actually expend effort on learning in those classes.
That said, I have to provide a couple of caveats. First, even taking those classes there are no guarantees that you will be a well rounded, socially apt individual capable of communicating with everyone with backgrounds from PHD's to GED's. Some will take the courses and either be incapable of assimilating the material or just refuse to. To some extent, that's where the socialization outside of class can help. In some cases, people are just narrow minded jerks and are basically content staying that way.
Second, we could have many pages of discussion on the general state of education in the US today and how many of those classes are in fact fairly worthless on many campuses. The bar has been lowered at the elementary school level which in turn forces the bar to be lowered in each tier up through high school, which in turn means that teachers of genEd classes at universities have to either lower the bar or fail massive numbers of students. At places where non-tenured teachers have their salary and/or jobs somewhat dependent on pass rates and student evaluations, the obvious pressure to drop the standards means that those students that are 'above average' will find the courses pretty lame.
My advice would be to take the genEd classes. Maybe reach out to some successful people in the industry and ask their opinion on which types might be most beneficial, ask recruiters or hiring managers what they look for as well. There are plenty of people in the various sectors of industry that would be happy to give their opinion.
It sounds like you want a Master's degree. It would be irresponsible of an undergraduate institution to grant a degree to someone who had not demonstrated some amount of well-roundedness.
Many graduate CS programs admissions requirements specify an undergraduate degree in computer science "or equivalent experience". I was able to go straight to a graduate program, just having to take and do well in a couple of theory classes my 1st semester (the admissions committee rightly assumed that self-taught programmers might be weak on theory).
So that's the question you asked. PS, grad school is way less fun than undergraduate. A lot of the fun is being exposed to different kinds of people and new ideas and ways of thinking. Don't do an undergrad degree and shortchange yourself on those things.
> You don't want to write games, so you don't need physics, English (story telling), art, or movie courses.
Most of what you just spouted off about is not relevant to a game programmer.
The "art end of things" in game development is carried out by people who specialize in that sort of thing.
In any company bigger than what would fit in a garage, you will quickly see a very high degree of specialization.
A Pirate and a Puritan look the same on a balance sheet.
This is very hard to believe. Are you suggesting that even once two people are in the door at a company (i.e. already employed), the employer will later take their degrees into account for later promotion decisions? I mean, the company has seen close up what type of person they are, what they can do, but nevertheless which employee holds a certificate-of-middle-class-upbringing (sorry, I mean a BS or BA) still factors into the decision-making? Indeed I struggle to see that this make too much sense even for specialized qualifications unless there are regulatory factors at work. I guess I can see that this in the public sector where rule-based rather than merit-based promotion policies still have some hold, but in a competitive part of the private sector - ??? If you have an experience of this happening, could you perhaps say a bit about what sort of workplace it was?
As to the general thread, patriotism is nice and all but do Americans really believe _everyone_ else in the world is: ... boring ... lazy ... not well rounded ... unable to communicate well .. lacks reasoning abilities ... incapable of understanding customer requirements ... knows nothing of life-long learning ... and so on and so forth. Because that's in effect what 75% of this thread is seems to imply. (Or maybe not, maybe people are just so convinced that USA High Schools, each and every one of them, is incompetent: how else to explain so many posters saying that this person _will_ (not just possibly might, but without a doublt WILL) need GE at college to avoid being a defective human being.)
As many others have said, move to a country that does its general education in high school. For extra bonus points, move to a country with free university-level education.
At most US colleges is seems possible to "major" in a subject while spending only 30% of 4 years studying in that area.
I.e., a graduate in (say) CS may have spent only 1.2 school years years studying CS.
Compare to a European degree with 67% of 3 years spent on the major - 2.0 years.
The gen-ed stuff seems to make little or no impact on American undergrads: most of them just seem to
choose the easiest options to meet the school's requirements.
As an employer, the only US grads I found useful were either (a) those who'd taken vocational courses somewhere like Bentley - signalling that they were happy for a life in the back-office/accounting, or (b) MIT grads who were passionate about some field of Science/Engineering and could apply their in-depth knowledge of that area to other problem spaces.
4 years spent avoiding complexity is just a waste of time and tuition.
You get a degree because of the type of person it makes you.
If all you want are current technical skills then just go to a trade skill.
She was like chocolate when she drank... semi-sweet at first and then increasingly bitter.
If you think that studying "English, Philosophy, History, Art and the like" is "wasting your precious time", then apparently you have no interest in being an educated human being. You want a trade school, not a college or university.
If that's all you want, fine; but if I were seeking to hire someone, for anything but scutwork I'd take the educated human being with a breadth of intellectual knowledge but perhaps lacking a fine point or two of skill, over a trade school graduate with specialized but limited skills.
You might want to think more about this and come back to the question after you grow up a little.
Tom Swiss | the infamous tms | my blog
You cannot wash away blood with blood
Do you want an education or a certificate of completion? College is for learning to think; vocational/trade school of is for honing a trade. It sounds like you are looking for the latter.
... You will come back here crying that you are stuck in a developer's role and some snot-nosed newbie with an MBA is telling you what to do.
Programmers are a dime a dozen - *if* you can find a job in the USA, you will be competing directly with offshore resources that cost the company 1/3rd what you do.
You have 2 choices: 1) Make your own fortune by creating the Next Big Thing, or 2) Grow the fuck up and start thinking about what you are going to do when you are 40 years old, not what you want to do today.
The original poster tells us what they want. Why is everyone answering a different question - what they think he should want.
In the UK, I got an M.Eng. in computer science in 4 years. There was absolutely nothing except CS and a bit of related math. I haven't missed any of the gen ed crap USA universities force on you. I got exactly what I and my employers wanted and needed out of my education; I'm a great SW engineer.
If your job focused only just skip the degree. Plenty of people have and do quite well. Just be prepared to put your money where your mouth is and be able to produce and be willing to do hard work. Four Years of practical on the job experience are much more valuable and competitive than a 4year degree anyway.
Most of the companies that would disqualify you right away for not having a BS degree are not worth working for anyway.
If you don't want to waste your time learning these general areas of study, why are you wasting your time getting a degree? I have had a successful career in software development and consulting for 14 years, I don't have any degrees.
For the amount of money you'd spend on college, I'd strongly recommend that you instead 1) purchase a laptop, 2) take a visit to your local Amazon.com web site and purchase three interesting computer-related books on entirely different computer-related topics, 3) read these books while performing any tutorials listed, taking note of any interesting side-topic you discovered while reading that you feel is interesting to you, 4) repeat #2 and #3 as often as you want, 5) identify one pet project you would like to take on that will utilize the skills you desire to nurture, and 6) accomplish that pet project. Meanwhile, always be trying to find a well-paying job in your *desired* field; even if you hear "no" a lot, once you're in, you're in, you've got your foot in the door, and it's downhill from there because experience doing what you want to do is better than education, even if for no other reason than you're doing what you want to do!
My degree is in informationt technology rather than computer science. I am half way through my last semester so most of this is still fresh in my head. There have been several programming, system administration, and other courses related to computing. I have also taken calculus, linear algebra, technical writing courses, ethics, micro and macroeconomics, american government, histories, writing, and god knows what else over the years. I have not enjoyed a single damn one of them aside from linear algebra.
You may want to sit behind a desk all day and code, but it helps if you can write in a way that properly conveys your message to your coworkers. Moreover it is also a wonderful thing to understand how and why your government operates in the way it does. As I said I took an American Government course a couple semesters ago. Just yesterday I was listening to a story about redistricting in Florida and they brought up gerrymandering (see http://en.wikipedia.org/wiki/Gerrymandering), something prior to that class I had no understanding or concept of. Maybe that is shameful to be an adult in the US and not understand something so basic about how our system works, but it is just one example of where my education has been paying off.
Another example was listening to a story on the radio (I have a very long commute, I listen to a lot of radio) and a financial story and an economist started referring to M1, M2, M3 (see http://en.wikipedia.org/wiki/Money_supply#United_States)etc. without going into detail what the differences were. Had I not recently taken those courses I would have had no idea what he was talking about; I may not be an expert now, but I could at least understand this story on the radio. Simple things like these crop up every day.
So college hasn't always taught me to be a better systems administrator or programmer, but it has made me a better member of society, able to think critically, rather than flapping on about things I have no frikkan' clue about like ultra {liberal,conservative} morons ever present in todays media. I wish to ****ing god you and everyone else would take those courses more seriously, attempt to do well in them, and come out of the experience better for it. We need more people who do in this country. [/rant]
because of drones who just look for a college degree when hiring.
Ah well, best to go get valuable , enriching education in basket weaving.
When I went to college 40 years ago I went took the opposite path of that proposed by the poster. I got an electrical engineering degree and a bachelor of arts in humanities as well in 5 years study. My career was in engineering but I firmly believe that it was the broader view of the world I had that set me apart and allowed me to excel. I worked primarily as an individual contributor but achieved a salary more commonly reserved for middle management. I am now retired from engineering and pursuing the other half of my education working in photography, video and web design. I have never regretted the extra work to get the arts degree.
As someone who started out my career with a totally 'practical' view of education, rather than a 'person-shaping' view, I have since discovered the benefits of the latter. Sure, you learn some of the necessary skills (tools) to do the job, but you don't round out all the attributes of becoming a good person or good employee. As anyone knows who has ever hired anyone to do a job, the person's character, critical thinking skills, problem solving skills, ability to work in a team, ability to learn, etc. are FAR more important than their ability to use a particular tool or that they possess some particular set of knowledge to the highest degree.
People don't go to college to get made a type of person, they go there to learn job-related skills and improve their chance to get one.
hey
you sound really skilled, yet your posting demonstrates your weakness
you cannot afford learning art, music, english, philosophy,,,Guess what the world is full of robots like you.
i wonder why do you even want a degree, if so skilled? are you not making bank already?
fluck off snivelling brat --spelling errors,
cheers,
david
I want a BS in Computer Science with no general education requirements.
At least in the US, BS means some general education. Any degree you get won't be a BS without a general education requirement.
A BS without general education would be an AS. Just taking classes individually without getting a degree is another option. Why do you want a BS? I can think of a few possibilities:
1) You think the CS education is better at places that offer a BS.
2) You think a BS will help you get jobs that an AS or no degree would not.
For #1, take classes at a good school. The price of skipping gen ed classes is not having a degree. If all you care about is what you know, this doesn't matter.
For #2, suck it up and take the classes. You might argue that employers are irrational to think degrees matter. Too bad you can't change that fact.
This doesn't change the requirements for a BS degree, but it might be just what you need. If you really have a good background in the non-computer subjects you would have to take for a BS degree, take a course (as one of your electives) on how to document experiential learning. You'll get credits for taking the course and credits for your first experiential learning document that could, if you match your experiences and knowledge with a syllabus from your required courses list, get you credit for that class and a course waiver. The course on how to document experiential learning is a good idea if you want to do this, but you might be able to figure out what you need to do in order to earn credits this way without taking the course. I feel I would not have been able to do this if I hadn't taken that course, but you may be different. You may be able to get a copy of another student's document from your student adviser and see how it all fits together. I aimed to document about 75% of the topics covered in any particular syllabus (which must be from an accredited institution, by the way). Two of my documents were requested as "models" for other students to be able to view, so your college should have samples of these available. I got out of 27 credits worth of a bachelor's degree that way. (A friend of mine got out of 45 credits that way!) Some of my documentation was used to avoid taking courses I didn't particularly want to take, and others to just fill elective credits needed towards the degree. The dollar cost for those experiential learning credits? My college didn't charge anything for the first 30 credits' worth of experiential learning, and only $10 per credit after that. This was 9 years ago, but even if it doubled in cost, it would still be a bargain in my book. The real cost is your time. after doing a couple of these, I was able to knock out one of these in 2-3 evenings or part of one weekend. You can also test out of certain classes. CLEP tests give you credit for courses and (I believe) a course waiver. You can also take simple course waiver tests from your college if you really know the subject well. I think you have to score 70% to get the course waiver. But that, unlike a CLEP test, probably doesn't give you credits toward your requirement for graduation, only a course waiver so that you don't have to take that course. You would have to make up those credits some other way. I took one course waiver test to get out of a prerequisite course for an MBA degree. It was for calculus. I never had calculus, so I asked for an outline of what I would be tested on and bought the Idiot's Guide to Calculus, and studied through chapter 6, I think. I passed the test using a calculator that did most of the work for me, but it was allowed, and you have to know what you're doing with any calculator or you will get the wrong answer. (It just made it easier for me.) I never took a CLEP test. I probably should have. There is a fee for taking a CLEP test. I'm sure, whatever that fee is, that it's worth it, assuming that you can pass the test. If you are interested in this at all, I suggest asking your student adviser for more information. If you with to ask me more about this, email me at my username here at a very warm, "high temperature" place for email (a popular web mail place). I don't check that account every day, but I do occasionally check it, hopefully before the spam folder is purged by Microsoft.
Because globalization is making brains a cheap commodity. You need to be well-rounded to survive these days. What happens if you get burned out in programming in 10 years? You need to prepare for a career, perhaps multiple, not just a job.
Table-ized A.I.
It issues degrees based on granting credits for life experience, CLEP testing, and self-study course. They have no classrooms and are fully accredited and are a NJ state school, not a private Phoenix-like school. There are a few other schools like it around if you look. One of them is likely to offer a degree you want. http://www.tesc.edu/
I truly do not understand why a person would willingly pigeon hold themselves in this manner. Sure, you save a couple bucks on the front end but you lose valuable experience and exposure on the back end. Your education is an investment in you, why invest in only one part of you?
And if you want to move past a BS at some point, you're putting yourself behind the 8-ball. Your application will read like a 2-d caricature...
It all matters. Math, science, art, philosophy, engineering...they all tie together and knowledge acquired in one realm is transferable to other realms. It provides a foundation for creative thought.... but maybe you just want to debug code for the rest of your life.
I graduated from the University of Rochester (NY), and you needed to have a "cluster" of 12 credits (usually 3 classes, as most are 4 credits) in the two general areas that are not your major. So a CS degree would be a math/science major, so you'd need a Humanities cluster and a Social Science cluster, plus the freshman writing course, which is the only single required class. You can make your clusters pretty much whatever you want, and they don't have to be contained to any one department. For instance, my math/science cluster was two semesters of calc and one of stats. Philosophy (at least analytical philosophy) might not be as useless to a CS degree as you think (--there are symbolic logic courses in the Philosophy dept), so that might be your humanities cluster. Throw in an Econ cluster and you're set. 24 credits of clusters plus 4 of freshman English writing and you can spend the rest of your time taking every CS course you can schedule. I didn't have to take a single laboratory science class, nor any English lit, nor phys ed,...
Whoever in the world would teach History, Philosophy or Arts in a Computer Science course?
Does this really happen in your country? (US or whatever it is)
You and the two replies beneath you are probably missing good candidates that way. Always talk to the candidate in these cases.
He may not be interested in learning at school, but would prefer to read and explore on his own. Someone looking for shortcuts may be exactly the kind of person who can find more efficient ways to do things. If he picks up quickly, he'd be the perfect candidate for a position with advancement opportunities.
You've all three changed "I want to focus on what I like" into "I refuse to spend time on anything else."
The best approach with someone like this is to focus on things like these in the interview:
We have mandatory hours of training every year, and there's only so much in your field available. What else might you turn to in order to fill out those required hours?
All employees are required to take certain company-wide training, like ethics, harrassment in the workplace, and maybe safety. Can you explain to me how knowing these things, which aren't in your field, contributes to both your own success and the company's?
Also maybe start a discussion on applied mathematics, which is basically what most programming is, at its core, once you get past the interface. Things like the Antikythera mechanism (the oldest calculator, and history), Ptolemaic model (geometry, and astronomy), Golden Ratio (architecture and aesthetics mostly, applicable to design work and financial modeling). And it never hurts to bring up Plato's Republic, in which people do the work they are best suited for (the CEO being the Philoshoper-King), with application to career advancement.
If the person you are interviewing shows no interest or cannot intelligently discuss, and doesn't even ask questions, they may be a genuine one-trick pony that you don't want working for you. But they may learn about these things along the way, and you have a genuine jewel-in-the-rough on your hands.
My question to you is, how much effort do you put in to get the best candidates? It sounds like I would not want to work for any of you, because you filter out some of the best and brightest based on assumptions, or as a shortcut to finding someone acceptable.
Yeah, what a strange question OP has asked... :/ . What really marvels me is that Americans have 4 years to learn a lot of stuff, yet from what I read here most of CS degrees are wasting valuable time in History, English or Art! Like OP, I don't say they aren't valuable, just that they aren't that important to the degree's field.
This is what someone like him would do in Argentina (I'll just write from now as if I was talking to him):
You would want to go for a degree in Information System Engineering: it would be 5 years long, and you would have to take a few Gen-Eds with knowledge relevant to the field (IIRC Chemistry, Physics, Maths, Economy, and Law). Half or so of the courses have on-the-field assignments (go to a real company and set a network and server for them, do quality management, use BI to answer questions, develop an AI-program to solve a certain problem, etc.). On the last year we had more managerial courses available (akin to an MBA), and they are practical from the start.
You seem more like an engineer than a compsci. I urge you to avoid Computer Science and look for an Engineering degree: the emphasis in practical knowledge will suit your taste better, and even if the courses/teachers suck, the students there will probably be like you. Although I described my education there, friends in Germany and France told me they had similar approaches.
tl;dr: Get an System Engineering degree abroad, education in America doesn't have your mentality.
I rarely respond to comments. Also, don't ask for clarifications: a brain and Google are faster, believe me!
Education is good. But is college the best place to get the general education? The college will give you a piece of paper saying you have been given the opportunity to consider different subjects. But there is a substantial fee for that piece of paper and that paper doesn't not tell a potential employer if anything was learned or gained. Perhaps there is a better way to measure his desire to learn and his exposure to things outside of his computing field other than a piece of paper that may or may not tell me something of value.
BTW, I went to college. I took some graduate classes. But I would still hire the guy even with out the BS degree if my interview with him showed he was creative and able to solve problems.
The simple fact is that if you only take CS and engineering classes, you're going to miss out on all of the cute girls. College and life afterward would be painfully lonely if I had not been in general education courses that allowed me to develop my ability to talk to women.
You're probably going to miss out on developing those crucial social skills as well. You need to interact and make friends with people from different disciplines so that you learn to communicate efficiently with people outside of your normal social/work circles.
You don't mention how old you are or how long you have been working. If you have sufficient experience (professional and life), it is likely that a university will be willing to take that into account and admit you to a Masters program. If you are as good as you say, this is what you want anyway. You will be able to take more advanced coursework and focus just on the courses that appeal to you (there are usually no outside course requirements in a Masters program).
CLEP is always an option, as you can take tests on what you already know and you don't have to go through the classes. This includes your tech and your GE stuff.
Another option is to do what I did. I approached the CS teachers at my little college after the first day of classes ( after they distributed the syllabus ) and told them I wanted to take the final exam the next week for my semester grade. I studied for the rest of the week based on the syllabus, borrowed a friend's textbook ( I didn't have to buy them :) ), took my tests and went on my way, earning my A's without having to attend classes for the rest of the semester. I even went to far as to schedule these classes at the earliest available slots in the day, so I could sleep in more during the morning. Since I had most of the knowledge already and only needed to append the textbook-related info, it was a breeze. They asked me to teach before I got done with my AS degree program. If your GenEd skills are high enough, you might be able to do this in those areas as well. CLEP would be cheaper, as you would still have to pay for the class the way I did it, but my scholarships took care of the costs, leading me to go the route I did.
Yeah, but would HR let him in the door or even put his resume on your desk?
-Mike
I'm sorry; I don't know what I was thinking!
Yes - *if* their budget for the position was so low that they had no chance of getting someone with a degree.
I fully expect this to get lost in the noise here, but there is such a program (nearly). UCSB has a tiny college called the College of Creative Studies, which bills itself as a graduate school for undergraduates. While they do require general ed classes (8 quarter-long classes in total), that's as specific as the requirement is. You can fulfill it with any classes unrelated to your major - I do hope you have some interests outside of CS. Also, you can skip the prerequisites for classes, even those outside your major. The CS program is considerably more compact than most undergraduate degrees, because it is assumed you will come in already experienced in computer science and be able to start on the upper-division material during your first year. http://www.ccs.ucsb.edu/welcome/ Look into it.
A fair point. But then, if they're that cheap/strapped for cash, they'd probably be outsourcing everything to India or China anyway (more likely the latter, these days).
I'm sorry; I don't know what I was thinking!
I have to second this comment. Brown is a great school that will allow you to take whatever courses you want (outside those required for your major). No general education requirements.
I think Oberlin might also allow complete freedom of course choices outside your major.
One choice is to knock out the gen-ed requirements as quick and cheap as you can, then focus on comp-sci for the degree.
Or...
Start investing in your people skills big, and begin to market yourself.
Both of these are perfectly OK. Interestingly, you still need to do the marketing, whether or not you've got the degree, meaning there is a strong case for just investing a ton of resources in that, using the school to plug gaps.
If it were me, and I chose not to do gen-ed, I would do the following:
1. Get your online portfolio looking sharp. Knock out some projects, document anything else you've done, and put it all up on your domain, detailing where the value is, and what it all means to you personally and professionally. Keep that updated.
2. Do a few projects to highlight areas of passion, interest and skill. Again, document, etc... Also take some time to express who you are as a person, hobbies, kids, life interests, adventures, etc...
3. If you can't make those two look good, make some small investment in somebody who can.
4. Begin to network. Use all the online tools, and be sure and not forget meat-space. Professional lives often revolve around lunch. A few times a month, take interesting people, influential people to lunch, connect, ask for introductions, and follow up on them. Return all networking favors you are granted, and do not stop this process. It should become a way of life, and a part of your overall culture.
This is important because those people who lack the piece of paper are going to get hired by those other people who know their value, rendering the lack of paper largely moot. That is exactly why you need to put your package together and network consistently. The good jobs are often obtained by knowing the right people. The more people you know, the better you've expressed your value to them, the more opportunities you will encounter, and that means more and better jobs throughout your career. This also opens the door for consulting, or running your own show. Both work well, depending on how you plan to carry risk.
I know lots of people with degrees and without, and the most potent ones are those that invest in themselves, and the presentation of themselves. Do it, and it absolutely will pay off, paper or not. There is some discrimination present for those without the paper, but it's not too bad, if you've done the work to deal with it. The beauty of it, like I said, is that you really need to do the work anyway, so just do the work! Net gain all around, regardless of how you choose to deal with education.
Finally, if you have gaps in general presentation, fill them. Your writing skills need to be solid, as do your basic graphic skills. Competency in this has a lot of general value, the most significant one being the clarity only enhances your value proposition, and that is what will score you the better work. The secondary one is communication with the customers, and team project members. You will gravitate toward leadership positions because of that, and as you age, those positions will matter.
Blogging because I can...
I seem to remember that the early spreadsheets specifically did NOT automatically recalculate all the cells, because with a lot of data, that could take a lot of time and cause the application to become unresponsive. There was a function key the operator pressed to have it recalculate.
You just said you taught yourself all this CS stuff and it was easy right? So why take classes in something some guy with nothing but a high school diploma can learn? Are you scared of liberal arts? I find a lot of liberal arts hating science majors are actually horrible writers and couldn't write a simple ten page paper without getting a cold sweat. Also, there's no such thing as an "excellent high school", saying that makes you sound very, well, uneducated and you are.
I agree here. I see someone who learns on their own a hard worker. It means that they are driven to learn. And besides, the trend these days is a person trying so hard to succeed, they resort to cheating. And I have, on more than one occasion, met people who should be teaching at MIT, but can't afford to go to a community college. As for the original poster, I would suggest going and getting the specific certifications for the levels of tech they know. Or start your own contract programming firm with some friends.
Nobody is preventing you from studying computer science, so quit your whining!
If you want to study computer science, and only computer science, then just do that. There are plenty of colleges and universities offering associate degree programs and trade schools that teach programming and only programming. There are plenty of articles, books, and online resources that demonstrate and illustrate programming techniques and details.
Don't expect someone to just hand you a bachelors in science without completing the entire curriculum. If you are too lazy to complete the minimum requirements of a BS degree you shouldn't expect to be conferred one. Besides, plenty of talented programmers don't have a BS in CS and many poor programmers do.
I did my 4+ yrs getting a CS diploma, and GED: what did those non-CS courses teach me wrt to my current job:
English: I can write SW spec documents and comment big blocks of my code with sufficient grasp of grammar that doesn't make me seem like a idiot (and even gives me extra points in credibility)
History: The ability to look back at past events helps you formulate a coding strategy for the future, and avoid mistakes
Art: CS derives from Math, and Math has been considered an art-form for thousands of years (hmmm, there's that History again)
Philosophy: You sometimes code in teams, and understanding that these other team-members are human beings, and understanding your team strengths/weaknesses/quirks, makes you work smarter, not harder.
So sure, you can skip all that, and hyper-specialize in CS, but that won't buy you as much as you think in the long-run.
I urge you to reconsider, impatient youth! ;-)
I attended Worcester Polytechnic Institute in Massachusetts. There is so much flexibility in course selection that I chose classes that were interesting to me. For a random science credit requirement; I took technology of alpine skiing and went skiing for a grade! (I learned something, too!) For humanities, I took a lot of electronic music classes and learned about MIDI programming and graphical dataflow languages. (wpi.edu) In general, if you choose your school wisely; you'll be able to select classes that are useful and/or interesting to you.
No, I will not work for your startup
In my 15 years in the field, I'm very amused by the "I have a degree, so I'm god's gift to coding" mentality. Many -- I might even say *most* -- college CS grads that I've met couldn't code their way out of a wet paper bag. They're chock full of theoretical knowledge that they will never -- and I repeat, NEVER -- use, woefully short on the kind of real-world experience that is far more valuable than most CS types understand, and usually full of ego because they earned some fancy letters in their title (by spending 4-6 years smoking pot and getting laid on mommy and daddy's dime while the rest of us were, you know, *working*).
Ironically, the pattern I see is that these BS and MA types (not usually the PhD folks; that is actually the only degree I've seen earned that has much meaning anymore) tend to get the first crack at the big, exciting, high-paying jobs. Then they muck it up utterly because they're hung up on whether some routine is using an O(n log n) vs O(n^2) algorithm and completely ignoring the fact that that routine is maybe called once or twice in an average app's lifespan (Knuth, you wily bastard), and some grizzled older coder like myself has to come in and fix it up (while being paid about half as much).
So I completely empathize with the OP; why not get the letters after your name if you already have the skills to pay the bills, and all you really need are the fancy letters to get your resume moved up the stack? And why spend a lot of time studying things you're not interested in and which will have very little relation to your daily work (hey, I LOVE Greek literature, but it really doesn't help me much day-to-day when writing code). And as to basic reasoning and reading skills -- high school should teach those, and if you don't have them, you won't get ANY degree, BS or otherwise (if you can't write a basic term paper, you ain't getting the degree).
This is about the only thing that a U.S. college degree below the doctoral level is good for anymore (I said a *college degree*; that's separate from *learning*... I know plenty of degreed idiots, and plenty of uneducated geniuses) -- getting a better shot at getting hired. Well, that and bragging rights.
Your not an engineer until you have a diploma from an accredited institution say you are. Until you have taken part in that curriculum, you have no idea what it means to be an engineer.
I'm getting real tired of people in IT and telecom/cable calling themselves engineers when the have not earned that right.
If you win one case in traffic court would you go around calling yourself a lawyer?
Suck it up, go to school, and learn what you don't know.
Those general ed courses that you seem to think are not necessary are really necessary! On any job, you will be dealing with people and situations not covered by those core CS courses. Those general ed courses are there to help you learn to deal with those people and situations.
I haven't heard of a K-12 school teaching logic or philosophy. So yes, reasoning and comprehension does need to be taught at the higher level.
If that is really so, it would explain a lot about US politics, and the nonsense some politicians can get away with, and still be elected.
(I guess K-12 means students around 18 years old, in their last year of school before university? If not, please correct me.)
What you are describing is vocational training. And others have said this, but you are completely missing the point of a University education. The process of going through "other classes" is what enables you to BE a better programmer. Higher education, all of it, transforms the way you think and interact with people and society. What do you think "social networking" is about? The new (smart) hiring trends seek those who are just plain good at programming, but much better at people skills. I know highly successful consultancies hiring History, Economics and Music majors to do 80% your job. They dominate the development process, even though they don't code. They save the real time because they produce the really usable products. Get your head on straight, you are missing the boat, utterly.
For CS it self at some schools it is to broad or to theory based and at some place it to focused.
The filler like art history or general history should not be part of a CS Degree and the math can be cut down a bit as well.
There should be more of a hands on / apprenticeship part to a IT / CS Degree even to point of having a mixed apprenticeship / school setup and don't force people ti write 10 page papers on book reports.
Also there should be some tracks like maybe 1 over all for programing that can be split to more sub's and 1 for the IT / support side of things. There are people out there who are good at fixing stuff / setting it up but are poor at programing and people who are good at programing but are bad at doing other IT stuff.
People are saying either 1) these things ARE valuable to computer science - ability to write for example. Others are saying: 2) they make YOU more valuable, despite the fact that they might not make you more "productive" it's a good investment. A few people are saying 3) You might find that you like it.
What people here miss is that you might not like it at all, that it might simply be a chore of a thing for you to study, that it will not make you more productive, and that it is not relevant to computer science.
So why learn this stuff?
Because everything you wrote applies to literacy in the case of farmers. A farmer's son or daughter has to learn how to read, not because it makes them a more valuable farmer, or because it makes them a more productive farmer, or because they might like a life of literature more than farming, or because they might like it. They should learn to read, so that they're not fucking rubes.
And that's why we have gen ed requirements in college.
What you want is a CERTIFICATE, not a degree. Undergraduate degrees from reputable (accredited) institutions, by their very nature, involve not just some level of mastery of a field, but also a broad education to make one a better member of society, not just a whiz at one skill.
Moreover, if you think that "these fields ... will not contribute to making me better at my job", then (a) you are dead wrong, and (b) you probably need more exposure to "those fields" more than the average college student, so for you to skip them would be an ESPECIALLY bad idea.
So: either go get some comp certificate from a community/technical college, then maybe supplement it with a few more core CS classes from a university (and try to compete in the world without a bachelors degree), or else just buckle down and fulfill whatever requirements the school asks you to do.
I also wouldn't get too caught up in BA vs BS. You'll do fine either way. If you really want to go in-depth in your education, continue on for a MS. Otherwise, realize that you'll probably learn a lot more by actually working in your field than you do in school anyway (given a suitable foundation).
Dear Timothy:
Your eagerness to get a CS degree is admirable. Your willingness to learn how to become an adult is despicable.
I've been in the computer industry since 1957; back then there WERE NO SCHOOLS for CS. So, I didn't go to college. I didn't do too badly (three successful starts-up), but I am certain that I have missed many wonderful opportunities because my "heads down" approach to computers prohibited me from enjoying much of my early adult life: No appreciation of history, music, art, economics, etc.
Fortunately, I was mentored by founders of the industry. One of my earliest bosses had a Bachelor's Degree in Statistics, and a Masters Degree in Conducting. He set a new standard for me, and from that year, I read lots of fiction, history, learned about chamber and other classic music, and I learned to grow up. I spent years recovering, reading Kant, Hegel, Aristotle (sigh, unfortunately, in English), the Austrian economists, and mountains of fiction. It took me 'til I was over 40 to catch back up to my peers.
As someone wiser than me wrote above, maybe you need to go to a technical school, get a job, and then grow up some. Then you'll understand why a college education is so valuable.
I am on the verge of compiling and submitting seven years of general studies as a BFA fine-arts in Digital Studies. Y'all are as good as first round critique as they get, and 400 pages of coments have to count for something! Plus I have evaluated web hosts and after I get bck on track overseen a web site's digital archives. I keep debating whether to go for a Masters in Digital Privacy or stay general with a BFA Culture Studies. The latter would allow the looser approach I employ, though I have put modest work into the privacy field.
My first Journal Entry ever, in 8 years! http://slashdot.org/journal/365947/aphelion-scifi-fantasy-horror-poetry-webzine
I didn't "learn how to think" in college. And I did go in thinking I would. I know plenty of people who have degrees and don't really seem to know much about anything, and don't know how to reason. College teaches you nothing that you can't learn through independent learning and being a student of life. I find a person's knowledge level and reasoning ability are correlated to their desire to develop those abilities. If you learn anything useful in college it's how to brown-nose professors and tell them what they want to hear, and I'll grant you that that is an important skill.
Democracy Now! - your daily, uncensored, corporate-free
You are mistaken in thinking what you want is a college or university. What you want is vocational school or technical school.
DeVry used to be an excellent one, though they have decided to become a university and that may mean you can't go there and get a technical education to turn you into a good worker.
You may have to roll your own. Go to community colleges, which are much cheaper, or pay lots of money to take the same classes at a reputable school and ignore the ignore non-technical requirements. You won't get a degree, but then, you don't want one. A College or University degree is a mark that says to are a smart, well-rounded person, which is something you don't want to be. Socrates said "Know thyself", and you've got it down. Good for you.
One of the problems with American higher education is that people like you don't have a place in colleges and Universities, and vocational schools are either going away or in hiding. This means people like you have no place to go. Instead, people like you try to turn real college and universities into vocational schools. That's bad for people who want an education, and bad for people like you, who wind up paying a bundle for something they don't want: an education.
You can definitely find vocational schools in India. Classes there are taught in English, and it will be far cheaper than an American education, and probably better than the one you'd get in a community college, unless it's one which is far better than the norm. Go live in India for two years.
you have no life, it's the 'other stuff' that helps get you one.
There was an unknown error in the submission.
1. If you really don't want to take the GenEd stuff, go overseas. When you get back, look us up after a year or so of job-hunting, tell us how it's going. Note this is not meant to be snarky; I am truly interested in how such a pursuit would work out.
2. If you don't want to spend any more time with the GenEd in a US program than possible, take the CLEP/DANTES tests, make sure your school awards appropriate credit for them. This is a seriously good way to meet the requirement, IMHO.
3. If you go into GenEd courses with an open mind, you should come out of your degree with a far greater perspective of your chosen profession in context with the rest of the world than if you hadn't sat through them. YMMV, really; if you take such courses without the motivation to get something out of them, they truly will be wasted time.
4. Speaking of mileage, take note of this: In three degrees (BS CIS, MS CS, DCS), the most perennially useful course I've ever taken was Business Law, of all things. Turns out, every job in my career has been on one side or another of a contract, and having that short introduction to contracting law and the UCC has helped me understand why some things are the way they are, more than any other experience.
For what it's worth, I was a college prof a few years ago, spent a year doing academic advising. After all that, I really have come to believe there is a larger place in our commerce for careers based on targeted training, because the college path does not fit all propensities (maybe the OP is an example), and programming should be a discipline targeted such. But, if you have aspirations larger than just chunking out code, a well-rounded US university program is a good place to hone them.
"Maths" vs. "Math" is one place the Brits make more sense than Americans. However it certainly is odd when I hear "the M1 Motorway" which presumably is short for "the Motorway 1 motorway." Worryingly, the Los Angeles habit of saying "The I-10" -- presumably short for "The Interstate Highway 10 'freeway'" where "freeway" is just a Californianism for "limited access highway," and thus "The Interstate Highway 10 limited access highway" -- seems to be spreading like a cancer throughout the American west. Do these people get their kicks on "the" Route 66? (sigh)
As to the original question -- If you want a technical degree, go to a technical school. College really should teach you more about The World and not so much about technical subjects.
If you really feel that way and can not be dissuaded, I would suggest looking at a BSEET degree instead of a BSc. Still a four year degree, still accredited, but it leaves behind most of the humanities. The ones it retains are primarily communication oriented such as English I and II, Technical Writing and Public Speaking. Just the minimum to be accredited.Those particular humanities are far more important to you than they may seem, right now, because for career advancement, communication skills are paramount.
However, the less critical humanities (history and other social sciences, etc.) are also more important than you may think. Again, for career advancement you need to interact with people. Who exactly do you think those people are? Is it possible they may have interests beyond the work at hand, that you may need to form relationships to gain what you want out of your career? Do you think they might work in other disciplines (accounting, management, sales?) Maybe you will even need to interact with customers. Being a bit worldly goes a long way towards interacting with people you hardly know, at first. If all you are fit to discuss is your work, you will be boring company, indeed, and a poor communicator.
Finally, breadth of education lends a certain variation and inspiration to your thinking. If you think Art History is all about looking at pretty pictures and memorizing names and dates, you miss the point of the class. Each of those artists had problems to solve related to the technology of the day. Many of those artists became of historical interest because they saw the world in a unique way. Many of them changed the way we see the world. As a brief example, compare the human figures present in the art of the ancient world to that of the 15th century. In that time span, humans had to learn how to change the way they thought about what they saw so that images of humans went from being symbolic to being realistic. It wasn't about pretty pictures, it was about advancing the state of thinking.
I work in a technical field. I hire technical people. I vastly prefer to hire Bachelors fresh-outs than PhD.s even though PhD.s have a far higher concentration of relevant education. The reason why is simple, outstanding Bachelor's fresh-outs have shown the ability to adapt their thinking and learn a breadth of topics. Outstanding PhD.s have shown the ability to excel in a very narrow category and please their professors specific interests. It turns out that when I hire them, within a year each is as productive as the other, but I have to pay the PhD. 2 grades higher salary. I WILL test your knowledge about many things when I interview you and at least one of the scales I will grade you on will be your out-of-the box thinking, something you will learn nothing about pursuing an on-topic only degree.
Finally, for better or worse, until you have a reputation behind you (roughly 10 years of continuous employment, with references) your resume is what will get you called in for the interview. If your resume does not let me know that you are a well-rounded individual, you will be unlikely to make it in for the first interview. For every self-taught genius that I miss out on, there are 100's of self-aggrandizing morons. I will not take your word for it that you have what it takes, I need other people to stand up and say that you've proven yourself. A BSc on your resume, at least, begins to tell me that.
There are only 6,863,795,529 types of people in the world.
If all you learn is computer programming, that's all you can do. And you can learn computer science and programming on the net at least as effectively and swiftly on the net. So don't waste your time and precious tuition on that. Join an open-source project and prove you have skills and experience instead of book learning.
Learn a subject matter: biology/pharmacology, and you'll be of interest to the pharmaceutical industry; physics and you'll be useful for games; business and project management and you're useful to everybody; some other form of engineering so you can make the engineers more effective.
If all you know is computer science, you're only useful as a grunt that I'm going to work hard, and never will advance to analysis, subject matter expertise, etc.
Design for Use, not Construction!
Don't forget those too. Depending on where you went to school and are currently enrolling, and how recently you finished your last courses, sometimes you can knock out a lot of (useless) classes by getting transfer credits. If you're fresh out of high school or another college, you'll likely have better luck with this than somebody that is trying to get transfer credits for stuff they've taken more than five years ago.
Other than being able to do better at Trivial Pursuit or Jeopardy, or being pedantic on the internet, the only thing gen-ed classes seem to be good for is driving down the GPA. (If the classes are boring, or not of interest enough to dedicate the time to them like your main subjects. Some of them require a lot of writing when effort is better spent elsewhere. However in some of those subjects the profs don't care much if you spam out a lot of B.S. without too much thought behind it. Other than spelling or grammar, the quality isn't really necessary like it is for math and science classes.)
But yeah, if you can get them out of the way ahead of time, that's the way to do it!
A B.S. means you have a well-rounded undergraduate education with focus in a particular major. That's not what you are asking for. You're asking for specific technical training in a single field. That's called a technical school diploma.
I know exactly how the guy feels. I went to an accredited trade school to learn computer hardware and networking. When I graduated I didn't get a degree, but they did offer further courses to obtain the degree. The length was ok, it was just another six months of classes but it was all Gen-Ed. Literature.. Art.. Biology. Courses that I already took in high school. Now granted they aren't "college" level classes in high school but still, I had to pay more money to take classes I did not want, that would not help the subject my career was going to be in? No. I just said no. I barely afforded tuition for what I had already passed, not only could I no longer afford further classes (nor get more loans) but how was dissecting a frog or learning more in depth insight of Plato's works was going to help me fix a networking issue for a computer? It wasn't. So to this day I still do not have a degree, even I could afford the classes by saving up some now I still don't want nor see why they are necessary. Are they going to compensate me for the waste of time? I may not be able to get the best of jobs without a degree but which seems better, wasting all that time and paying to do it or continuing to work making money and not wasting time? (yes, spare me the "well if you do it now in the future you'll make more money so its not a waste" arguments).
...
Degrees are nothing but a racket created by what passes for an educational system in America. Life isn't about what you know or how good you do something but how many fancy pieces of paper with your name on them you grinded out. It's like an MMORPG.. but with paper. Spend X years getting Degree Y, earn awesome Reward Z
Aw Frell this
Just take some CS classes and leave university without taking a degree. Oh, you think you should be able to get a B.S. degree without doing any non-C.S. coursework? Sorry, that's not what a bachelor's degree signifies.
My CS degree was pretty good in this regard. The school was then "Malaspina University-College" but has since changed its name to "Vancouver Island University".
There were two required English courses, and both were relevant. Composition I is required for pretty much any degree and mostly explains formal academic writing. Business and Technical Writing obviously is relevant to getting a job in a technical field.
Other than that, it was Math, Stats, CS, and electives which could be more of the same if you wanted. There are a lot of courses outside of those three that are potentially quite relevant though. There are some interesting Philosophy courses on formal logic and AI, and courses in a field you might be working as a programmer like Geography, Finance, Economics, or Physics are potentially useful. An introduction to a second language is also quite useful and provides a nice break from math heavy technical courses.
Of course the program has probably changed a bit since I was there. It's a small school with small classes and it's not too expensive.
I worked for HP's test and measurement business for almost thirty-four years.. My assignments ranged from direct sales to sales management, quality management, and application engineering and test system project management. I also worked in engineering for NCR when first out of school. I worked with many large customers: Motorola, Northrop, John Deere, Caterpillar, etc. etc. etc. What I found is that any job worth having requires two things: analysis/code creation, and communication. In the 80's, we had data on what programs were used on engineering workstations how much of the time. The result was 5% coding or design - that's right, 5% - and 95% communication. I now tell my students that they need to learn how to analyze as well as communicate. I fyou don't analyze or code, you have nothing to bring to the party. And if you don't communicate, your analysis is irrelevant. One famous quote whose source I can't recall wsa "A good idea isn't a good idea until and unless you can communicate it to someone else." My own not-very-humble, bigoted, and strongly felt opinion.
Please remember the way hiring is conducted today. A program will scan your resume to see if it has certain key works, and then you will be interviewed by telephone before you make the next cut. If you cannot present yourself articulately and clearly, you'll never get to show off your hard-won technical skills.
emperor's new clothes.
And, the idea is not to get it for the money , but to get it for hireability - sadly it seems companies these days require people to have college degrees even for jobs where it is irrelevant.
Actually those are not a waste. Without English you might as well be another 'offshore programmer". English and communication classes actually differentiate good programmers from bad. It helps you understand the business and communicate with the business to help design the right solution. The idea that you can code and throw it over the wall and say I'm done no longer flies in the US like it used to. Well except for SOME startups and SOME small companies. You also need to be able to communicate with your peers. Art and History, and the like are not a waste because they actually help make you a well rounded person.
I think what you want is a certificate in computers not a CS degree or maybe you want a CS degree but don't want to do the work that goes with it.
I've meet many computer programmers that do not have college degrees and while often they are good programmers, they are often not so good at communicating and in the end, many employers don't want to hire them or after they hire them they do not like them. Even as a programmer / systems analyst sometimes need to communicate with their peers or even your manager. Often the people that are the angriest at their manager are the ones that do not understand business and economics and because they lack the communication skills are often the ones that have issues talking to their manager.
Only 'flamers' flame!
General Ed is not a waste - it is invaluable, because it makes you a better thinker. It contributes to you being able to do your job better, even the parts that are seemingly unrelated. If I had a choice between hiring people with 4yr bachelors with gen-ed and 3yr without, I'd hire the 4yr candidates. Over the long term, they'd tend to be better at communicating, at working in teams, at thinking creatively, at solving problems that are outside their original expertise. There would be the occasional one-off exception, of course, but as a group, over time, they'd outperform the 3yrs in subtle but important ways.
Cheers, Tim -- Tim Janke Part mad scientist, part lion tamer: sr. software engineer, global team leader, project mana
I go to evergreen state college and there are no required courses to graduate Now I don't think there are enough cs courses for 4 years you could stay in community college for a year, studying related subjects like electrical engineering, it, or just taking stuff like VB which won't be covered. Then go to evergreen for 3 years and you'll have a 100% completely CS degree.
Everything is set up with the intention of students doing the opposite and exposing themselves to as much as they can. But dude like those gen-ed requirements give you a break, this shit starts to get pretty hard, plus college is way fun so enjoy it.
I wish I'd understood, before going to university, that it is not immediately much (at all?) more difficult than high school. Hell, I'd say my senior year of high school with calculus, chem II, physics, plus the usual other classes like English and history, was significantly harder and required a much larger total time commitment than any of my years in college, even after the classes started to get more serious.
As it is, I only got over the shock of how easy it was after I'd completed a year of bullshit classes that didn't go beyond material covered by my sophomore year of high school (some, like psychology, spent significant portions of time covering things I'd learned in junior fucking high!)
In retrospect, I see that I could have easily tested out of a year's worth of classes using CLEP and asking the right people about non-CLEP testing to get credit for classes (taking the final and getting a B minimum, or something). Probably closer to two years.
If I had one piece of advice I could give to high school seniors regarding college, it would be: start taking tests to get out of classes as soon as you can. Summer before school, ideally. Remember that the final might be easier than the CLEP, so keep that in mind if you fail the CLEP and ask counselors or similar about other methods of avoiding classes. Consider knocking out in-major courses this way, too, especially if you have a lot of experience with them. Watch out for limits on how many credits earned this way the college will accept, and choose the courses you target for elimination accordingly
If you can test out odds are you weren't going to get much out of it, so it's not worth your time or money. If you feel cheated out of knowledge, spend an hour reading wikipedia pages on the subject--ta da, you just learned at least as much as you would have in the class.
You can't get exactly what you want, but you can compress a 4-year regular bachelor program into approximately what you want. We will assume you have the actual gen-ed SKILLS to survive in the workplace. If you do not, please stop reading now, and start studying those subjects. An engineer without, say, English skills is severely disadvantaged. No, you won't be reciting Shakespeare at a CS job, but the skills you pick up from practicing a few hundred thousand words of reading and writing make a big difference - when I pick up your API spec and try to write code that bangs it - between "Ah, this is how it works" and "WTF was this moron smoking when he wrote this document?" FWIW, I am in exactly this position - finishing a bachelors' degree in electrical and computer engineering after having worked as an engineer for 16 years, and having written three books published in my field. Step 0: Decide if it's really worth pursuing this career path in your country of residence. Seriously. Think about it. Step 1: Enroll at a college in their standard program, part-time. Being a part-time student will allow you some flexibility in how you sequence your classes, and overall there will be less scrutiny of which particular courses you pick. Step 2: Build up a minimum of 12 credits, better 20-odd credits, of straight As in courses that you think are "important" for you. Due to prereqs, you might need to do a couple of lower-level math courses to achieve this (my sequence went something like Precalc, Calc I, Calc II, Calc III, Linear Algebra, Discrete Math, Control Systems, Random Variables and Statistics, and Communication Theory, with Physics I, II and III alongside those). Getting As is critical to the next step because it establishes your bona fides as a "why the hell are you wasting my time with this baby stuff?" student. If you can't get top grades, then consider the humbling possibility that maybe you aren't quite as special as you think. Step 3: Go to faculty with your academic record and resume and ask nicely for special treatment. This request will fan out to the other faculties and if you convinced them fully, you'll get life experience credit (free credits! no coursework) for some material, and the option to take CLEP exams to skip other courses. I was given a few courses "free", and about another 4 courses (12 credits-ish) as CLEPs. Step 3a: ABET-accredited degree programs have strict limits on how much life experience free ride any student can receive. Deal with it and suck it up, big guy. I don't think ABET certifies pure CS degree programs (yet), though I may be wrong. But a combo EE/CS degree - forsure you need ABET. ABET is your route to PE status, should you desire it. Step 4: There will likely be some dross left over at this point - ethics, psychology or philosophy, for instance. See if your school offers these as online courses. This way, I did Chemistry [the special-ed version for electrical majors], philosophy and a couple of other courses so unmemorable that I've even forgotten their names. It's low stress and easy to get very good grades because you set your own study schedule. Step 5: Hopefully, profit.
"I've been a nerd since I was 13 and I want a uni degree but I won't want to have to learn about stuff that doesn't relate to my narrow field of interest"
University isn't about giving you skills to be a better computer programmer. The gen-ed courses are the most important - they force you to learn about how the rest of the world works, and how nobody in the real world gives a rats arse about the differences between .NET and perl.
If you want to be a computer programmer for the rest of your life, why are you going to uni in the first place? Just go and hit the job market until you find someone who will employ you on your programming skills.
Look on the bright side - Those annoying gen-ed classes (especially the ones in the art faculty) are likely to have some girls in `em. And as any uni-grad will tell you - THAT is what university is really about.
If distance learning is OK with you, I think the Open University could get on your list.
Marlboro College: no general education requirements, and only take what you love, but you will be required to learn to write very well. http://www.marlboro.edu/academics/
I work hard, am a fast learner and I know it all from working in my parents basement...
A trade school would be the way to go. As much as the humanities are important for an all rounded individual, if all you want to do is get out in the world and start working you need something to prove your claims and trade school would be the fastest cheapest way to go about it.
If you are interested in the bigger picture though, and also want to mange (design and managing outsourcers may end up being the only jobs some day), you may want the CS degree.
That said, I work in IT (infrastructure) as a manager for an IT services company, we have two degree qualified people out of 25 staff (I'm not one of the qualified ones) and one of those is poor at writing and communication. Everyone else is industry certified. If you show aptitude enough you may just end up being promoted to your level of incompetence.
There is no such thing in the US as a Bachelor's degree without a general education. That is intentional and good. There are lesser degrees which focus on specific technology, these are mostly vocational certificates and associate's degrees (e.g., A.S.).
If you want the claim the title of "Engineer" you need to be able to solve an N-dimensional partial differential equation and be able to effectively write, know proper grammar, history, world literature, psychology, astronomy, physics, statics, dynamics, strength of materials, fluids, elementary power and electronics, before you begin specializing in a field of engineering.
Sorry kid, you don't have it and without the patience to get the necessary background, you'll never be an "Engineer."
BTW, being a "Professional Engineer" is a title like Doctor. It requires formal testing, being an engineer apprentice and it is legally required for lots of engineering work you see every day and to testify in court.
And start a biz, college is a waste of time
Good luck getting a job anywhere now you retard. Have fun working in a gas station.
You will have a ridiculous amount of fun in college. Leaving early is a serious waste of boozing and womanizing opportunity.
And of course there's those..what did you call them? Education benefits too.
American K-12 education is a fashionable whipping boy--but I call bullshit on your claim that US engineers who attended good US engineering schools are inferior to their European counterparts.
I'll give you the benefit of the doubt and say that your sample size is small or your company has trouble attracting decent US talent. Or maybe European schools emphasize different things and you are judging the Americans by European standards.
Whatever, but look around dude. Seriously, look at the computer you are typing on. American engineers know how to build stuff. There's some great talent outside the US but there is no denying the overwhelming amount of engineering talent and skill within the US.
Both with similar technical backgrounds, but one of them also has a well-rounded general education from a good 4 year school, which one do you pick?
Now suppose you have a hundred resumes, 99 of them have well-rounded general educations and 1 of them doesn't. Get the idea?
Other countries have their own systems and maybe do a better job on the general education stuff in their primary schools. Whatever, we do it different, it works for us.
BTW: "Scoreboard" is a sports reference, it means check the score before you talk shit. If you're down 20 points then keep your mouth shut.
Sadly philosophy was largely absent from my education, I have been (very slowly) rectifying my ignorance for the past decade and have found the Stanford Encyclopaedia of Philosophy to be a very useful resource.
And did you exchange a walk on part in the war for a lead role in a cage? - Pink Floyd.
When they run a background check and Ipso Facto U. doesn't compute, they'll drop your resume like so much fetid entrails.
I disagree with the premise above that things are improving because they are better than in the 1950s. There are some schools in the USA that don't teach any calculus to any of their students. There has been a major decline in education standards since 1980 which is in proportion to the decline in education funding.
The US now is famed for having a very high level of graduate education but very low standards of undergraduate education. Just ask any of those graduate students that come from elsewhere about the students they are tutoring if you want to get some anecdotes about how the high school system has failed a lot of those students.
http://www.wgu.edu/online_it_degrees/information_technology_degree_software
So you're too lazy or disinterested to bother to learn those skills that will make you tolerable as an adult. The ability to work your way through something you have to do yet are not interested in is the critical sign of maturity that you will be lacking when you are facing a job task you have little to no interest in. It is my fervent hope that you don't lose interest in wiping your butt, bathing and other things that distract you from your single-minded existence.
Good luck with that.
People are right that liberal arts can give you a broader perspective, and that if you're doing useful programming, you are most likely interfacing with people in finance, economics, science, etc., so it is good to know something about these subjects.
However, a broad university education is not the right fit for a lot of people, and you shouldn't be ashamed if it's not for you, despite what the other posts say. Consider more technical institutes like Caltech, Rose-Hulman, Carnegie Mellon, Harvey Mudd...while humanities classes are still required, these places de-emphasize them.
We write computer programs to solve real world problems.
If you cannot write, cannot relate to your user, cannot understand basic math, and cannot deal with other stuff you will write some convoluted code that cannot be maintained, and does not solve the problem.
Now, our basic gen-ed stuff may help much... cause US sucks...
High school couldn't possibly give you what a good college can. In all likelihood you were cocooned among people of similar backgrounds. Conditioned to think one way - usually to pass on state mandated exam after another. A college degree implies that you can actually learn more than just programming. Good college actually teaches versatile individual that is capable of drawing on experience from many disciplines. University is not under pressure to produce state sanctioned monkeys - it's free to shape critical thinking and provoke responses. Technical only BS? That would be truly a bs (but in small caps) - what would you learn about world in compiler design class? Personally I grew more on gen-ed courses than technical ones. Open your mind - if you are truly that good in programming take 2 majors: do computer science and psychology - challenge yourself.
Employers want well-rounded individuals, not button-pushing, narrowly-focused sheep. Your resume will sink like a stone on any competent HR manager's desk.
You want a BS degree, but without taking liberal education courses that you think are below you? So do a lot of other people. A lot of online schools claim they will grant you exactly that; why don't you go find one and try their curriculum. Go through their paces, get their degree - you can probably even do it mostly online without ever going to a campus.
Then take that online degree, put it on your resume and go look for a job.
Later on, you'll be back at a brick-and-mortar accredited school taking lib ed courses, only you'll be older and financially worse off than you would have been otherwise.
In other words go through the standard process like the rest of us. You can bitch about it later, and the a few years after that you'll see kids joining your workplace complaining about the same thing and you can tell them to get off your lawn.
Damn_registrars has no butt-hole. Damn_registrars has no use for a butt-hole.
I CLEP"d English and took History of Science and History of Technology.
I really enjoyed those courses.
Or just learn them via life's experiences.
Most of what you learn in comp sci classes is relatively outdated a few years before you started the classes, unless you're attending a top end technical school, and even then they may not be at the very cutting edge, unless they're the ones doing the research at that cutting edge.
You'll find that you learn the things that the gen ed classes teach just in day to day interactions with different people and working groups.
A lot of those job requirements read "BS or MS required, or equivalent experience levels". There's also quite a few people with those BS's that are clueless about the fields that they got them in. They memorized facts without understanding their meanings, they recite mantra and dogma with none of the underlying reasoning that lead to their becoming what they are today, or when they don't apply. Worst of all, they actually believed when they were told certain things just couldn't be done. That's the worst thing about formal education, believing that what the instructors knew about things is the end-all, be-all of the field.
There is a reason for those requirements that people who are probably much wiser then you have instituted. It's because they don't want shallow people representing their school and diluting the value of it. Nearly everybody will need to write reports or proposals at some point.
In the event that you are actually smarter then all the people who think that things other then straight CS are important - go without like Bill G or Steve J. If you really are that smart you can find everything you need to know on the internet.
Brown University has an excellent program with no gen-ed requirements - however they usually don't let in people who would choose to be so shallow.
Colleges with a large "core" curriculum serve two ends--they serve the philosophy of a well-rounded or well-educated curriculum, and they are much cheaper for schools because they can have large "gut" courses with a higher student/teacher ratio.
Don't pass up the non-CS stuff. Enrichment can be awesome--at least a little bit. Find out who the good professors are and take a course or two from them. You can always pick up new material--you cannot always learn from great professors.
-- IANAL, this isn't legal advice, and definitely isn't legal advice for you. Also, Squee!
I have been working for a major corporation for the last several years as a programmer, but I can tell you, the skills I needed to succeed, or even to survive, weren't skills I learned in CS classes. People skills and communication skills are probably at the top of the list for starters. No matter how much of a l33t hax0r you are, if people don't like you, you aren't going to last. Lastly, those gen ed classes are key to learning how the world works, and I don't just mean economics. Political science will teach you your responsibility to your country as a citizen, politics are important when you get into dealing with money. History can teach you when to run and when to fight back. There are so many others, like speech, etc. The list goes on. Don't limit your potential, and thus your knowledge, by only learning CS.
Has anyone actually answered this persons question? Olin College in Wellesley Massachusetts comes to mind. I beleive that most of the professors used to teach at MIT. It's a tech school with only 100 or so students. There is no tuition (it's free) but I think it's a world class college. My understanding is you can create your own major so you could create a BS in CS that required no humanities. Other colleges let you design your major. Hampshire College comes to mind but I don't know if you can find the same amazing technology geniuses teaching at Hampshire that you can find at Olin.
I used CLEPs for 30 credits of a double B.S. including almost all of my general education requirements. The key with getting most universities to accept CLEPs -- which are mostly targeted at people coming out of highschool with some college level experience -- is to make sure that you haven't taken an official college level course in the department that you plan to CLEP in. I CLEP'd out of literature, american history, sociology, american government, composition, economics ... Basically everything I could. Take AP exams for everything you can as well. I still wound up having to take a couple of classes outside of math and computer science in order to fulfill art and cross-cultural coursework requirements -- the one that stuck out most was african american theatre -- but overall I can't say I'm any worse off for having given the other departments their pound of flesh.
I did have to study for the CLEPs I took to ensure I passed them all, but I was much happier studying sociology for a weekend than for a semester.
Sanity is a sandbox. I prefer the swings.
LOL, you want to skip the stuff I actually got my degree in. I have an undergrad dual in Philosophy/English but have had a fun and profitable career in IT for 15 years. I was self learning on the computer stuff, when I started working and the Internet was just starting to have critical mass, nobody had a degree that really qualified you to do the work, so it was really whoever had the ability to learn.
I would suggest that you might find out there's a whole bunch of stuff you are really interested in. I understand, when I was in high school I hated learning because HS was clearly a weird sort of day care more than anything else. But I found college was cool, had an awesome time. So give it a roll. If you are so certain you don't need any of those classes, why bother with school at all? If I was running a startup I'd have no problem hiring an excellent self taught 20 year old. If you are certain that you are that good and don't need to hedge your bet a bit by rounding out your learning, just go do it. If you screw up you can return to school after a few years and probably be more ready for it anyway.
http://www.tesc.edu/
Just checking their web site it says that undergrads are responsible for designing individualized programs of study. So theoretically you could avoid any gen ed requirements you weren't interested in.
I went to University (in Australia) and have a Computer Science degree on my wall and other than one required maths unit (aimed at giving you the maths you need for computer science stuff) and a couple of electives I took because I was interested in it (like the introductory Economics unit), everything else I studied was computer science related.
The #1 problem these days in IT is that degrees dont matter anywhere near as much as they used to. These days its all about "commercial experience" (and finding people to hire you so you can GET that experience is hard)
So for example the school I went to expected you'd take 32 courses over 4 years. 6 of these would be the first set of "gen-ed". Then there was the dreaded foreign language requirement which was another 4 courses. (And yes, you had to take them in the same language.) Then there was the 2 course english requirement and the math requirement which pretty much was 1 course. Of course you could test out of some of this or end up doing them anyway as part of your major but you were looking at at least 10 courses outside of your major.(but probably more) Given that your major was about 15 courses that meant you'd probably get around 3 courses in your entire "career" of stuff you might have an interest in that was outside of you major.
Did you know 80 to 90% of the moderators on slashdot wouldn't recognize a troll even if one dragged them under a bridge.
Take your classes and stop complaining. You may feel like things are a waste but everything in life is an experience. Just because you are an uber nerd and love programming doesn't mean you can live in a hole and be happy. Enjoy life, go outside, sit in the sun(without spf50), and be successful. Don't be a douche.
fully online and you can choose the units from a dozen universities.
You should check out Brown Universtiy CS (degree is a BS). Brown does not have Gen Ed requirements. cs.brown.edu
....the quick and easy path..... ...this is the path to the dark side.
You could always CLEP out of some of the electives... http://www.collegeboard.com/student/testing/clep/about.html Enroll in your local community college and take your CLEP exams there. The requirements for a "pass" on a CLEP exam are usually lower at a community college than a four-year school. Once you've taken (and passed) all the CLEP tests you can, finish out a "Liberal Arts" Associates degree at the community college. Trust me on this. A liberal arts associates degree is the easiest to transfer without losing credits. Then transfer to an in-state four-year college and take all the CS classes and whatever remaining classes you need to get your Bachelor's degree.
Go to a vocational school, or suck it up and do them. BS stands for more than just Bachelors of Science... It means you had do deal with some BS too.
To David: How do you expect to find your spouse if you don't take the artsy courses??
Engineering schools are the way to go, though you might find yourself having to learn things like math, physics, and electronics.
Alternately Brown and other schools with flexible course requirements might allow you to tailor a program to fit your narrow interests.
Then again, you can probably teach yourself most of undergrad CS, and you'll probably do it anyway for fun - why not cross-train your brain by studying something you're not already good at?
As someone who's been working in the software industry for 30 years, and having a BSCS and a Masters in Software Engineering, here's my take on this question. I wish I had taken more general ED and more classes in other subjects. I had a great education in BSCS (Cal Poly SLO) as well as a great Masters in Software Engineering (OMSE at PSU Portland, OR), but what I miss today is the more well rounded experience and exposure to what I call 'non core' classes. Open your eyes and heart and challenge yourself to learn somethign that actually could be useful at a cocktail party other than the latest anti-pattern of the latest language fad. Languages and design patterns come and go with generations, but the concepts of philosophy and proper english writing never go out of style.
I like the AP strategy (maybe could have done more with that), and had thought of #3, but I particularly like #4.
Though I like my field (not a computer technology one), I most enjoyed the assorted one-of electives outside of my major.
I listen to both RIAA and non-RIAA stuff if I like the music, tangential business/politics nonwithstanding.
Computer Science without a bit of an education on history and economics gives us BitCoin.
I wish I could write clever and witty sigs.
"(...) I work 2 jobs and I have a life. (...)" You lie.
Recipes for USA bankrupt - http://tinypaste.com/0d66f dd = dollar deluge (printed in the infinity)
Do a Computer Science Degree in England, you won't have to take all those other courses there.
Robin.
Liberal Arts education is meant to make you into a more well rounded person, either on your job or elsewhere. If you don't want to go through liberal arts education curriculum, then BA/BS is not for you. BA or BS means a lot more than a certain number of hours of coursework in the subject of your degree. If all you want is to have some piece of paper to show to your prospective employee at the interviews, then get a certificate in .. whatever is relevant. If you want to obtain more than that, get a normal BA or BS degree at a traditional (rear, not online crap) institution.
The level of "English, Philosophy, History, Art and the like" reached in an Australian school is not high, as evidenced by the low standards of discussion in some General Studies classes in UNSW. I don't know of the standards in US schools. Are you sure you need to know nothing else besides computer science?
This isn't a problem is Europe, because there is a proper high school education system, so students are not expected to need remedial eduction in these areas.
I'd suggest, that if you must do an American degree, make sure that do a masters. I work for a large European multinational, and we only hire US educated employees with at least a masters, because we consider that US bachelors courses are just not comprehensive enough, in part, due to the time wasted on teaching things like remedial mathematical skills.
I have no interest in wasting any of my precious time taking classes in English, Philosophy, History, Art and the like.
In other word, you are/want to become a pidgeon-holed, ignorant moron? You're a shame for all of humanity.
Being an Engineer is more a method of approaching problems and a personality disposition than some piece of paper. While yes I value the engineering education I got, at the same time I have met many good engineers with a degree in another field. I have also met those with engineering degrees that I do NOT consider engineers.
If you are going to follow your line of thought, you might as well do something silly like have a national exam that all engineers have to pass with some equivalent of a Hippocratic oath and a secret handshake.
(1) get over yourself and apply some of your "precious time" to something outside your comfort zone
(2) go get a certificate from ITT or one of its brothers.
The whole point of a degree program --for any major-- is not vocational training. It's about learning across a broad range of things. Even things that might waste your precious time.
I wouldnt recommend a CS degree.
This is nowadays just a 'i read a java book, pay me minimum wage' card.
Do you have ambitions?
If you want to get into programming and also make money, go for either
pure mathematics (hard, very hard but pays exceptionally well)
or physics (theoretical, pays well too) or just science, biology/chemistry/physics/...
Most of the people you will work with in later life will be pretty uneducated and unintelligent.
Most people are.
If you have a proper education in abstract thinking, like in math or in the real sciences,
you will be able to perform real well as a programmer and real quickly advance to a point where
you do the only the interesting parts (architecture and algorithms) and the minons below you do the
brainless tasks of implementing it in java or whatever the "cheap programming staff that produces somewhat working code" is called today.
Go for the most theoretical and hard course you can complete, copmplete it and leave the
data-entry part of programming to the java-boys.
Math or theoretical physics. Like Turing, Lovelace, Babbage, Knuth, Djikstrah or Wirth.
Yeah. English is my third language so please go ahead complain about my spelling/grammar.
regards :-)
the guy that tells you java-boys what to do and why you suck
People that value degrees value the entire package. The full well rounded education.
People that have suffered through those long programs spend their lives looking for ways to use that info, and thus will often come up with stories about how some essay they wrote helped them through a problem.
Everyone pulls on challenges they have overcome to help solve new problems. For many people, university is where they were challenged the most often, and for some the only time they were. So it's logical to pull from those experiences and see them as valuable.
If you went off an joined the peace core and did that for four years, overcoming many obstacles you were go on in life pulling from those experiences and telling young people how everyone should join the peace core.
Personally I loved much of the gen education stuff. Law, History etc. Found the English classes rather tiresome to be honest.
However, it's VERY hard to learn if you either don't see value, or resent being forced to learn it. Based on your post I would say you don't need college right now. Keep working, focus, learn, and enjoy it. Learn as fast as you can. In 10 or so years, when you want to learn something new go then you can go to university and learn something like art history or physics. Go when you actually want to, and you will get something out of it, much out of it.
However asking such a question here is rather silly. Those of us who have degrees with talk of all the value of our tribulations and explain that you should just "grow up" and do it. Those of us that don't have degrees will tell you how wonderful our choices were as well I’m sure.
Follow your gut, you know what you need to do, and what you want to do. Will you get something out of all those GE classes? Sure, some are awesome and will force your mind into new areas. Are you a bad or incomplete soul if you get that in other ways? Of course not.
But remember, most people out there have degrees. And those of us who have suffered through our degrees will often resent and look down on those who try to do go without. Many don't want you to succeed and will try to prevent you from doing so. Keep in mind, If you do, it means we may have wasted our time. So without a degree, you will always face challenges, and downward eyes, and disrespect. Often not warranted or justified, but such is life.
So either join the club, or don't. You can't have a foot in both camps. And either camp will attack you for trying ;-)
Studies are a waste of time.
That time is better spent getting work experience.
Now, for most jobs, degrees are pretty much a requirement. But in computer software, you could maybe show off some software you've made to compensate.
If you really want to do, you can probably work and get a degree at the same time (just go to the exams without attending any of the classes). I got my Master's degree this way, so it's doable.
What are my most useful courses to date? Which has had the most significant impact on my life? I'd have to say English I (5 paragraph composition, which my wife taught me in 10 minutes and then I mastered over a semester) and Advanced Composition (the basic logic and style of writing arguments).
Course I have enjoyed? Introductory drawing (the only early morning class my mind could handle since it was mostly studio work), neurobiology: mechanisms and disorders of sleep, environmental dispute resolution (actually just dispute resolution/art of negotiation with exercises themed in environmental issues), cultural anthropology and human diversity (because of the professor - any professor that throws candy at you during a review session as long as you are asking a question to 'simulate the pressure of an exam' is awesome), global environmental issues and solutions (again, mainly for the professor, but also some of the most difficult writing I ever did - sum up that weeks reading, typically 200-400 pages, in one paragraph - use specifics to demonstrate you read the material and synthesize the material into a novel analysis), and current directions in contemporary art (my TA commented that the readings were at the graduate level, and the essay exams were synthesis and novel analysis - NOT regurgitation).
Courses I think all students should leave with? Basic understanding of the sciences - chemistry, biology, and physics - along with a second language. I use to think that language requirements were pointless, but I now understand that once you learn to think in another language, you learn to think in another manner.
I understand this is a lot of work, but don't view gen ed requirements as a restriction - view it as an opportunity to explore. It gives you a broader framework to draw upon, makes you more rich and diverse, increases your flexibility of though, and gives you unique insights that you could not achieve normally. Which course do you think you'll enjoy the most - the discrete mathematics, theory of computer science, and machine language courses you will take for your major or the exploratory liberal arts courses that challenge you in new and unique ways (like Scandinavian literature, Kendo, astronomy, bacteriology, 3D design, or writing in the wild - a creative writing course that takes you out into the wilderness)!
Heck, I have been struggling in my undergraduate work. I'm officially declared in biology with a neurobiology emphasis, with the intent of going into computer science. Since my start I have found I am more and more drawn to art and environmental issues (including issues of social justice). Where is this all leading? Last semester I took a course in Human Computer Interface (HCI) design - a field that draws on computer science, psychology, social science, and art. I will most likely follow suit of another student and design an HCI major for myself rather than complete my biology, computer science, or art degree,
As for what to do? Since you feel - and may well be - adequately skilled, perhaps you can come up with a few products to develop and become an entrepreneur. Employers often look for the diverse background that show you are a well-rounded person with interests that lie outside your field of expertise, and without a degree you job prospects are equally limited. However, with the right idea, you can be the boss - perhaps you should try that route.
It may be true that what you term 'Gen Ed' classes may not advance your career, but there's more to life than a career. I'm a computer programmer, and I love the job, but some days I'd go crazy if I were staring at a computer screen... luckly, there's a very bright gentleman (let's call him Tom) who works down the hall from me who I can talk to... and the conversation is a lot more interesting because he knows more than computer science. I can make an oblique reference to Shakespeare, and he'll catch it. I can talk about quantum physics or electronics or biology, and he'll be right there with me.
... 20 minutes before it fills up, of course. Extrapolate that to the use of environmental resources in this country, and the fact that we only solve political problems in this country when we see them... gee wouldn't it be nice to have some smart people around who actually understand exponential growth, and could actually warn people that this is a really bad way to go, before we're one doubling away from really bad things happening? ... And wouldn't it be nice to be able to convince the nice conservative southern half of the country (who aren't big on science, because science tells them that the earth is more than 4000 years old) that just maybe the scientists have it right this time, and we actually have to make major economic changes, or we're fooked...
Now let's say that you were working in the office next to mine. The two of us have roughly the same programming experience. Tom has moved to a different job. The company that you and I are working for goes tits up, and we're both looking for a new job. Tom's company is hiring, and Tom is likely to have some say in the hiring process... who is Tom likely to hire, me, or you?
Ouch. Some 'Gen Ed' classes would have been nice.
Here's another thing to consider... you live in a country that has some really substantial problems that it needs to address... our economy isn't looking too good, our political system is having serious problems because people are pigeonholing themselves into groups who agree with their own narrow political beliefs, we have serious environmental issues that need to be addressed... say... If you have a petri dish, where bacteria are doubling every 20 minutes. You know the size of the bacteria, and that about 2 million of the little critters will live in the dish. You do some math, and figure out that it will take about 7 hours to fill the petri dish. When will the petri dish be half full? At 6:40
How's your computer science education going to help you there? You need political science and math and economics to even get a handle on the problem.
See what I did there? Analogy. You learn it in English class. You'll need some really good symbolism to bring the religious right on to the table on environmental issues, because right now, the business critters have their ear, and the business critters are all focused on next quarter's profits... say... did the guys setting up the bonus structure for CEOs take that 'exponential use of environmental resources' thing into account? Maybe they could have used a broader education...
Let's flip the question and see how it sounds:
"I'm interested in getting an English Lit degree. I've been reading since I was 5, and like many of us, taught myself. I am familiar with a number of languages, understand paradigms, themes and subtexts; I'm familiar with common plot arcs and am a decent writer. I learn quickly. I work 2 jobs and I have a life. I want to get an English Lit degree from an accredited school (a BA, that is), but I have no interest in wasting any of my precious time taking classes in Math, Science, Biology, Chemistry and the like. While these fields are useful, they will not contribute to making me better at writing. Moreover, I attended an excellent high school that covered these fields of study in great detail, and I feel no need or desire to spend more time studying these things. I want a BA in English Lit with no science requirements. Any suggestions?"
Would the OP agree that high school presents enough of a background in the sciences to let me slide through without setting foot in any of the gen-ed science courses?
You'll have something like one Humanities (Hum) requirement per semester, and it will be tailored to people putting all their effort into tech courses.
At least that was my experience going to Stevens Institute of Technology circa 1986 - 91
It sounds like you would prefer undergraduate education abroad. I did my undergrad in England and it was straight CS without gen-ed. In Europe, the view is that you do what is considered liberal arts as part of your secondary education and at the undergraduate level you specialize in your chosen field. Of course this flies in the face of the US perspective towards a well rounded liberal arts education; I think this debate can go either way and it comes down to personal preference. I would recommend to you if you strongly want to go this route, then seek education in the UK or Europe.
Read this about programming language features:
http://en.wikipedia.org/wiki/Paul_Graham_(computer_programmer)#Blub
Now apply it to your education.
"Specialization is for insects." -- Robert Heinlein
The question rubs me the wrong way. I understand the desire to stay focused. But you want to be well-rounded. You should want to be able to write well, to have a broad grasp of the way the universe works and how you fit into it. You should want to make your body stronger and more graceful than it is today. You should want to learn to sing, or play a musical instrument.
And this might be your last chance to do any of that in a supportive setting like college. Once you get into the rat race, it's hard to jump back out and go exploring. Really hard.
We have a saying in the software engineering world: Avoid premature optimization. You don't go crazy optimizing your program before you really understand what you want it to be. You don't optimize before you know what sections of the program will be the real bottlenecks. You don't optimize at the expense of the flexibility and readability of the code. What you're demanding to do to yourself right now strikes me as a form of premature optimization.
You want the truthiness? You can't handle the truthiness!
"Having a life" conflicts with "making me better at my job". Job & life are intertwined, so you never know where a piece of knowledge from one will help the other.
... and your life.
On the surface studying history, for example wouldn't seem to help divining more about OOP. But you might be reading a bio of some historical figure, come across something he or she came up with, and solve that bottleneck that's troubled you all day (or week).
Don't try to choose *all* your classes based solely on what they'll do for your 9 to 5. Pick some stuff that interests you outside your chosen field. The more you know in general, the better you'll be at your job
If all you want to do is learn to code and be a code monkey, then go to a trade school.
Getting a university degree is not supposed to be simply about getting a job. It is supposed to create a more well rounded individual. You can normally tell just through 5-10 minutes of conversation with someone at a dinner party who has gone to university and who has not.
If you don't care about that, and simply want to get a job and make money, then don't go to university, and build your resume with provable performance.
Western Governor's University might be an option for you but like has been said, a college education means you have to take gen-ed credits because they are important. Anyway, learning multiple foreign languages in particular has been very helpful for me as a computer programmer because you're always having to learn new languages and new ways of doing things in CS. WGU lets you take courses at your own pace so if you learn quickly or already know something, you don't have to spend much time on it and for CS they use many industry standard certifications as their tests, so when you graduate, you have those in addition to your degree.
College offers a life skills break from one's world view dominated by high school. If you don't want to learn something interesting or stretch for a skill and understanding in another discipline, don't go. I have noticed that not going through the challenge, leaves us largely as taller and older high school kids. I think that everyone should go. It should be free for all. It could be our kibbutz. That every child is not prepared to enter college is a societal failure, just my humble opinion. Perhaps readying and analyzing a complex novel's structure, will stimulate thoughts about how to re-examine an approach to a software system. I know that everyone doesn't enjoy or perhaps even want having a larger world view, but a mind is a terrible thing to waste ... //so it goes (obtw a reference form one of my favorite books written by an extremely talented literary talent.)
_
Really. You aren't that special. Suck it up. Blow through the gen ed courses and get on with life.
If you were in India, you'd have to handle another sort of extra baggage, in the first year of Engineering you'd have to take engineering drawing, and have to do a mechanical workshop we're you'd have to do stuff like fitting, woodwork, forging, foundry and sheet metal work.I don't see the point why CS majors need to take take things, but there is no option everyone has to take it.
A degree does not make you any smarter. You should be able to manage. An engineering degree does not make you an inventor. Neither Bell, Edison had a degree. Tesla had one but he was the most prolific and greatest inventor the USA ever had. Edison is the most famous for his electric light invention, which patent he bought for only $5000 from a British medical Student who invented it in Toronto. You always could try a course from a mail order group.
Go to the UK. Universities here focus only on your major. No gen-ed classes. And unless you go to Scotland, the degree is 3 years instead of 4. So it comes out cheaper and quicker then the US version but you get the same CS knowledge. Some schools here (like the department at Edinburgh university or Manchester) are considered to be on par with the top CS schools in the US.
I believe that it is very likely that if he is talented and has potential to learn more, then in a way, it is purely age and inexperience which is causing him to ask for ways around the general education requirements. Let me be blunt. While I hold the GE courses in hire regard even though I spend more time working with fourier transforms than people, with the exception of good writing skills, I don't believe I took anything directly "useful" away from the BS curriculum GE requirements.
Instead of saying you should or shouldn't hire this guy, I'd really hope that you wouldn't hire or recommend him as given that he's probably 17 years old, a job is exactly what he doesn't need. What he needs is time to grow and mature.
I'd say, I'm quite glad that you're not a manager... also I'm concerned that you are a "senior programmer" as you've made it obvious from this post that you can't seem to identify the real problems to address when they're right in front of you.
Wow, the author of this story displays a startling lack of maturity and context. I have been in IT and Software Engineering for 13 years, and my degree is in Philosophy. Every skill I have in this field is based on the fundamentals I learned there, not in any CS class.
Take the GenEds and skip CS classes. Learn to think critically, and learn the history of Software Engineering.
"...they will not contribute to making me better at my job..." Perhaps, perhaps not; but they will help in making you less of a furry-toothed geek in general and an insufferable clot in the job interview. Being knowledgeable in history or literature will be important at some point in your life.
If your high school really was that good at GenEd, other folks have said to go through community college, etc. You may also be able to test out of many college GenEd courses through CLEP and similar programs. I was able to test out of a required general health science class that way, which saved me a good bit of cash and time.
One of the most important things that happens in college is not cramming information into your skull or proffering that coveted B.S. degree upon you; it is that you learn how to take knowledge from many aspects of life, combine and bake in your brain, and perhaps come up with an interesting solution to someone's long-standing business intelligence problem. Or perhaps you'll read a blow-by-blow account of the Battle of Agincourt, and come up with a really great level for Half Life 3. That's the sort of thing that even the best of high schools can't really do.
As a hiring manager, I don't see a college degree in computer science as a paper saying "is good at programming". I see it as a paper saying that someone has a college education and has experienced the college experience. Which includes having taken the gen ed science courses.. maybe human evolution and logic or ethics.. has been exposed to inspiring teachers and has shown that they are dedicated to their career path. I have seen the MAJOR difference between people who have a 2 year programming degree and people who have a b.s. or better in computer science. You can tell that they were trying to rush everything and missed things along the way.
I personally feel that the fact that you think that these courses are a waste of your time, means that you hate learning new things, or bettering yourself in any way that isn't directly related to your career. I find that kind of sad.
College, pal.
Unfortunately, most of today's universities in North America are still focused on incorporating aspects of a liberal arts education. That is, a classical understanding of the classics.
That having been said, a many schools are approaching the idea of "testing out" of many subjects, particularly first year courses, many of which these electives you speak of would be. Since each school will have a slightly different approach, your best bet is to ask these questions of the registrar's office directly. I highly recommend going in person - the staff are typically overworked, underpaid, and will not hesitate to give you a quick one word answer over the phone to get you on your way. This leaves little room for follow-up questions.
On a slightly different topic, have you considered just why you want a CS degree? Sounds like you are educated in the topics just fine... so that degree is just something to put on your resume. If that's the case, then doing a full 4 year degree will add a lot of value to your career, particularly if you grab a minor or a 2nd degree in a complimentary field (economics, biology, engineering, political science) where a lot of theory meets practice in the later year courses (financial analysis, folding, electronic design, computer law) respectively.
I hope some of this helps.
Cheers!
Various schools have various rules around electives. I can't remember all that well, (I drank a lot in college) but I believe electives were exactly that, you *could* go outside your discipline, I'm not sure there was anything preventing you from taking more CS courses. I'm probably wrong. I know I enjoyed taking Classical History and a few others that were a break from most of my CS course....
However, you should be thinking less about "having" to take electives, and trying to get into a good CS school. Not all CS programs are the same, and if you have to take a few more electives at a better CS school, then so be it. I think you have your priorities mixed. Pick the best CS school you are able, and go for it. That would be my advice. You might even enjoy taking astronomy 100 or something like that which is hardly a course, enjoyable, and will raise your average. Win-Win-WIn!
Australian universities do not go the general education thing, which I agree is an expensive waste of time. You should have had that in secondary school and if you didn't you have no business going to university.
See subject.
As a software engineer my greatest concern is having a job in 10-20 years. Companies do not want to spend 2-3 times as much of a US employee when an Indian will do it for far less. Do yourself a favor, go to school concentrate on business and try to start your own company making the software which interest you. If we continue to outsource US engineering jobs, for you to get a job you will have to move to India....
As a hiring manager for the last 25 years, I've found that people with overly technical degrees (JuCo grads, Russians, Indians, & Chinese -- I'm looking at you) are some of the worst developers in that they have to have everything spelled out for them. I've had to invest heavily in business analysts (all of whom have a much broader background) to make up for these developers' inability or unwillingness to understand the business domain.
Wake up folks! Coders are a dime a dozen. Developers know how to work with business stakeholders and collaboratively develop solutions that delight customers. Want to earn the big bucks of a product development guru? Then learn how to learn. The developers on my team that earn the most happen to understand our customers as well and in some cases better than the product managers. Those that earn the least are the ones at highest risk of losing their jobs to offshore teams -- i.e. the ones who can't or won't work with the business.
The best Ruby developer I've ever met hold a BA in Philosphy. Maybe you should follow in his footsteps. Get a liberal arts degree and do development on the side.
Oh and to state what should be blindlingly obvious, the software languages you'll learn today in school will NOT be the ones you'll use on the job 10 years from now. So stop thinking of University as a trade school. University is where you learn to learn.
A CS degree without gen-ed is called a certification. Just go get a MSCD (or likely the Java / other anti-microsoft language of choice since you're posting here on slashdot).
A university can't be accredited if it gives degress without gen-ed. They just can't.
I got my BS and MS in Mathematical and Computer Sciences at the Colorado school of Mines on 2007. I had to take exactly 6 courses (18 hours) of non-engineering courses to graduate with both degrees. Sure there was physics and chemistry and metallurgy, but very little liberal arts fluff. I learned C, assembly, and Perl in high school but after the first programming course (CS161) it was all new or more applied material than the practical programming had taught me.
-- Adam McCormick
...and it is clear that you have never been to Silicon Valley or met any of the people who created the computer revolution. Also, where do you think those "talented people from all over the world" go to college?
Comment removed based on user account deletion
If you only want to take courses related to your field, then a trade school such as ITT Tech is probably what you're after. They typically offer associates (2yr) degrees, because aside from the fact that most people wouldn't be able to afford the time and money it would require, it would be difficult to provide a 4 year curriculum that is 100% focused on CS.
A bachelor's degree means you've taken art, literature, english and math. Subtract that and you've got an associates degree. So I'm not sure why the OP feels like he should be able to get a bachelor's degree while only doing the work required for an associates degree.
Businesses look at a bachelor's degree and realize that a certain part of earning that degree is having the fortitude to stick it out and go through all the crap courses like financial accounting and biology that are most likely unrelated to your chosen career path.
If you want to work somewhere where your entire job will be 100% technical, then I don't think you should have a problem getting an interview with an associates degree in a proper field from a reputable school. On the other hand, if you want to work at a "normal" business, which is not in the technical sector, then they want to see a bachelors degree because they want to know that their employees are well rounded.
In short, I don't think the question is valid because it seems the OP is essentially asking for a bachelors degree without having to do all of the extra work. What he wants education wise is an associates degree, but if he wants to work somewhere that requires a bachelors degree, then he just has to tough it out like everyone else.
First of all, to answer OP's question, you can't get a Bachelor's degree in the United States without General Ed. It's part of the state requirements. The only way you'll get out of it is if you either earn AP credit or CLEP credit, which your college may or may not allow you to use.
As for the value of humanities, I feel that it's one thing to extol its virtues from an armchair standpoint but another to deal with the realities of taking courses outside of your intended field. Certainly it would be great if everybody was able to expand their horizons and explore the range of academic disciplines available, but the reality is that doing this would require a commitment of time, interest, and money that I don't think is fair to expect of college students when their academic and financial priorities rightfully belong elsewhere. Many of my friends have had their GPAs torpedoed by Philosophy classes that they were made to take. Now, you might say it's their own fault, but how can you blame them for either 1) simply not having the aptitude for and interest in Philosophy (and never claiming to) or 2) having priorities like their major coursework that demanded more of their time and attention. If it were up to me, I would pass on cultivating the Aristotelian virtues of CS majors and cramming their heads full of Heidegger if it meant imposing an unnecessary and potentially damaging burden on them. If anything, the curriculum of Computer Science degree programs should be made to better reflect the kinds of skills and workplace demands that people in this thread have mentioned; from all these comments, it sounds like there's a gap there that needs to be closed.
All over the world, although it is true that many of them have worked in US universities as postgraduates. Cheering for the flag is very fashionable I know but cutting spending on education was a real kick in the teeth for the USA and really has hurt - that's what I'm talking about.
My point above is that silicon valley was a bigger success than merely Californian or US talent alone could produce and thus exceeded what Japan, Germany or more recently China could do in the same fields. Look at the history of Intel as an example, or dozens of others.
Also forget the patriotic kneejerk response because it's not a criticism of the country but instead the current education system. The same comparison could be made between students now from a poorly funded education system and students in the past. Also when the average dropped the expensive private schools didn't have to work as hard to produce above average students, and when the profit motive kicked in the quality of their education declined as well.
If I won the lottery or had a windfall one day I'd quit my job to free up my time and go to school just for the fun of it, especially for the General Education and other courses so that I could expand my view of the world and the knowledge acquired in all the time we've been here. Learning is fun especially if you pursue what you like and sometimes stumble into the unknown but interesting things. Don't skip the general studies if you can, enjoy them and broaden your horizons.
I have a semi-successful career in server administration in finance sector and now a different industry and am able to live very comfortable in minor luxury right now without a high school diploma. If you are truly a good programmer then you will be able to make a name for yourself and have a successful career in development and technology, if not then a degree won't help you.
I have seen my friends go off to college and return no different than they were before and no smarter or more enlightened. I have always eyed universities with watchful disdain because of what I saw happening there through my experiences with my friends at their schools. I am weary of them now and question their value for the general populous. Many young people are forced into studies there where they could save time and money and get vocational school training instead. Many of my co-workers throughout the years in the top financial institutions working on the technology side had degrees but not quite enough experience and technological geekness to progress them past the mid level admins and operator type work.
Now that I am a bit older with 10+ years in the industry with a lot of time at different top level firms I can say that at this point in time where my career and life are pretty stable I would understand and enjoy university studies more then when I was younger. I feel that I am now past the time wasting aspects of my life, girls, games, parties, that I now appreciate the greater things in a geek's life like deeper understanding and further search for knowledge. I have this feeling that I will try and enroll in some classes just to see what I can learn.
Unknown Unknowns
I read most of the score 2 and above threads and the one that really stands out is the one below and cetialphav is absolutely correct about the unknown unknowns being the greatest level of ignorance that a person can experience.
by cetialphav (246516) on 2011-06-25 12:48 (#36569282)
In almost every project that people do in life, the biggest risk of failure comes from the unknown unknowns. These are the things that you didn't know, but that you didn't even realize that you didn't know. The known unknowns are straightforward to deal with. If I decide to start a business, I know that I know nothing about business tax issues, but since I am aware of that I can consult experts and educate myself. One of the benefits of general education is that you make your set of unknown unknowns smaller and the space of known unknowns bigger.
It would be more accurate to write "statistics are the plural of an observation" but I was certain you would understand my reply as a reply and not standing on it's own - and it was YOU that introduced "anecdote" in the conversation in an attempt to belittle an observed trend. Adding in your own description and then belittling your own description is disgusting but I'll assume that it was not deliberate but merely forgetful.
What the graduate students observed turned out to be the same as comparing the results of similar tests between countries and the comparisons matched the observations. In the past the USA did not slip so far behind. It doesn't appear to be a case of increasing standards elsewhere either because there has been seen to be a need to provide an increasing number of remedial courses to make up for an observed decline. I don't know if you are cheering and waving the flag for a country that must never be seen to do wrong, are young and take it personally or actually think that what is being observed by others is not happening. All I know is that I've read a variety of opinions from people in education that are very worried about declining standards and are trying to work out how best to deal with that - I assume that they do know what they are writing about even if they would never use a phrase such as "wicked smart". I'll assume you know about your area of expertise as well and are just using phrases like that to be trendy and to fit in with all the others with a reduced vocabulary.