What Do You Do When CS Isn't Fun Any More?
wonderless asks: "Long ago and far away, I thought that I was going to be a Great Geek, and that I was going to provoke a revolution in the computer industry--and indeed, the world--with my mastery of technology. I could hardly wait to throw myself into an intense, highly technical curriculum and shine. But as I said, that was long ago and far away. Now I'm one semester away from graduation, with a 3.5 average overall and a lackluster 3.0 in CS, and I'm liking it less and less every day. I used to be able to say that at least it pays well, but now I can't even take solace in that. I drag myself to classes and through projects, and it all seems really pointless--I'm just implementing what's written in the book, and eradicating the countless off-by-one bugs is nothing short of mind-numbing. I'd like nothing better than to recapture the feeling of joy I used to get out of doing this, and to once again be able to say I'm doing what I love. What do you do when it isn't fun any more, but you'd like it to be?"
...or better yet, who you wanted to be.
see how long it takes you to appreciate love and adore the wonderfull joys of CS. I am guessing one day tops!
I have two degrees, one in CS and one in Archaeology. CS isn't what I want my career to be in, but I can take my computer skills and development knowledge and apply it to archaeology problems.
I like computers and archaeology a lot, though like I said, I don't want to be stuck in the computer industry for the rest of my life (can you say: Middle management, and other un-fun things when you get old?). But I like it enough that I can take it and mix it with something else I like and come up with a winning combination.
Talk to your advisors, too. That's what they get paid for. Mostly, though, you just have to go out there and do what you want to do, money be damned.
Good luck!
Sam Jooky
Hit the networks. See what Oprah recommends. Maybe Maury can help you out. Find someone to scream at(maybe a professor - pick a feisty one) and duke it out on Springer.
"On the Internet, nobody knows you're a dog!" - a dog
Welcome to the real world my friend.
Unless you go to work for a company doing research in CompSci you are going to be doing pretty much the same thing say-in and day-out when you get a job.
All I can say is don't lose your appreciation of computers but realize that not all computer related activity is going to be cutting edge and challenging. Keep working and eventually you will get the chance to do what you want.
...you find something else to do. Life is way too short to waste it doing stuff you don't enjoy. Go seek out something new and exciting. Stay alive!
--
Don't like it? Respond with words, not karma.
If you can't even get through school, then IT isn't for you. Work makes school seem very, very fun in comparison. Once you're doing at work for a few years, you'll realize that it's not nearly as fun or interesting as you thought it was going to be. It's deadlines, crappy legacy code, stuipd managers, bad decisions that you have to live with, etc. It's a royal grind. If you're already burned out, you may want to save yourself the headache and consider a new line of work.
- A burned out 28-year old developer.
Which is remarkably similar to the French Foreign Legion.
find something that you would like to see made or that you are interested in... then start coding. it will be much more fun if you are doing something for yourself rather than yet another linked list to solve the sums of 5 numbers ;)
Study geology or astronomy or (insert interest here) and apply your CS knowledge to something that would be rewarding to you.
CS is an enabler for most of us not an end.
You do not even really need to go back to school for this.
Hans
Two long, one short. I am lost.
I found that when I got into the industry and started doing different projects than you do in class (ie writing functional web applications vs writing bubble sorts) that I started having a *lot* more fun than I did in college.
Plus it is a completely different environment - you get paid - you get to work on something all day vs having to juggle a ton of classwork.
First of all, if you're one semester from graduation - finish your year. The piece of paper will still be worth something, especially when the economy rebounds.
:). Good luck.
As for finding the fun again... Take a break. Explore hobbies other than coding. Let your coding skills sit quietly in the back of your mind, and some time later, you'll feel the itch again - the need to code a little widget that's Really Cool. It mainly sounds like you're getting burned out to me.
OTOH, coding may or may not be what you really want to do. If your primary goal was to awe the world with your m4d sk1llz, you may simply not have noticed that you weren't having fun doing it. That will reveal itself during your sabbatical. If coding ever was fun for you, the desire to code will come back.
YMMV
That's what helped me. Seeing my work help others gave me a sense of accomplishment that I just didn't have in college. Coding is still somewhat fun, but the goal is more real in business. You don't just get a grade, someone tells you that your product has helped them.
10 minutes working on a sig. What a waste.
Sounds like you need to clear off for a few weeks, take in some sun, drink some wine, eat some good food and don't go anywhere near a keyboard.
It works for me as an mainframe contractor - take some time out, recharge your batteries keep doing it until you're bored. Then come back to the keyboard...
This isn't something that's exclusive to CS but rather all fields, burnout. Take some time off, go outside, take a trip. After a couple of weeks or months you may find yourself itching for the keyboard. If not, do whatever makes you happy. If you don't know what that is, find it and do it.
Dude, like you gotta go into Management or something. Quick, look in the mirror and see if your hair is starting to get pointy.
Jack
- -
Are you an SF Fan? Are you a Tru-Fan?
You're right... your job will more than likely be doing what everyone else is doing - implementing the well-known. Whee-hah. Sounds like that is exactly what you want to avoid.
I'm not usually one to advocate this, but go to grad school. You'll hook up with the people who are developing what will be the standard years from now, and are researching the bleeding edge. A Master's degree will be a good start.. if you want to really push the envelope, you gotta go all the way to Ph.D.
Grad school will break you out of the its-been-done rut you seem to be in. The only problem might be the cost (it's never cheap), and your grades. Check with some of your professors, see what it takes to get in. You may need to take another year and polish yourself up.
Failing that, start a pr0n website. Pr0n always seems to be on the cutting edge...
Mr. Ska
I guess you didn't get the errata sheet for the secret geek manual:
On page 844, in the paragraph that ends
"...being a geek is the worst thing ever, a meaningless existence full of drudgery and pain."
substitute "isn't" for "is", "meaningful" for "meaningless" and "with no" for "full of"
Also, at the bottom of page 1299 (this is a Peachpit Press book after all), replace the sentence "Never ever have a good time -- just keep staring at the monitor no matter what" with "Be sure to get out more -- staring at a monitor all the time is bad for your eyes."
;)
I watched C-beams glitter in the dark near the Tannhauser gate.
Get as far away from CS, once you graduate, as possible. Move somewhere where there is no computer industry and get it out of your head. If it no longer seems like you want to pursue a career in CS, then maybe you are better off not trying to, but you will only know how much you would miss it by getting some distance for a while.
Unlike most people who get involved in "higher learning," I go to school to learn, and not to just "find a job." I got fet up with CS a few years ago and opted to get involved in electronics engineering after a short break. I have loved it ever since and still learn new things all the time. I suggest that you look into it if CS isn't really for you. Maybe you can still recolutionize the technical world.
The last thing in the world you want to is stick with tech even though you dislike it, or it bores you.
Keeping current on your technology skills requires constant maintenance and efforyt. If you dont have the desire, your skills are going to suffer. It will only get worse with time.
My suggestion would be to experiment and explore other areas of interest that you enjoy.
Tech is used in just about every field of study nowadays, and perhaps applying technology to a different domain, like sociology, archeology, etc, would be a usefull application of your skills, as well as something that you look forward to.
Don't sell yourself short. 'Settling' on a tech career because of the money won't bring any satisfaction, and probably won't bring the money you thought it would either.
IMO, CS should probably only be studied by those who want to create new /SCIENCE/ in the field. Too many people want to use computers to do their jobs, or program for a living, and think CS is the way to go. Nah.
:)). Learn your computer skills while working on another degree, and that will create some serious demand for your abilities...... in the field you majored in!
Far better idea: Get a degree (or 3) in something you're truly interested in. Like History, or Geography (or GIS, like me
You major in what you love to do, and use computers to make what you love that much better.
Like.... be a programmer who happens to be a genius in Physics! You think that wouldn't be in demand?
Realize that having a CS degree will at least get you in the door at places for more than just programming. I burnt out while I was in school, too, and dropped out in my last year, because I was tired of all the FSCKING programming. I mean, if I wanted to be a programmer, that's all fine and good, but I wanted to be, at the time, a systems analyst, and later changed my mind, and now I'm a systems admin.
Finish it out. I wish I had - but I got into the job market before the dot-com bubble started or burst, so I was lucky enough to not have to depend on my degree to get me just in the door. Now I'm going the night school here at an in-town unoiversity.
You're going to need the degree, coming in with minimal experience. I know, it sucks, but finish it out, then get out of the programming. I still go back to it for fun when I wanna do something, but hell, it's surely not what I want to do for the rest of my life.
This space for rent. Call 1-800-STEAK4U
I get tired of CS too. I'm about 2 semesters away. Some classes have great professors where you enjoy the classes and the projects because they are challenging. Other times (Tue-Thur @5:30) I'll have a professor that just reads power point slides and has midterms that are closer to DB vocabulary tests than DB process and design. In any event, I started learning stuff I wanted to learn on my own. Messing with sockets and gtk+ and other stuff. The reason CS gets boring is that a lot of the problems you solve in classes are miles from fun. Take the Travelling Salesmen problem. I'm sure almost everyone in CS has to do it at sometime or another. It's an interesting problem, but coding it isn't. So, long story short: my advice is to look into areas of programming you havn't tried and give them a shot. It could just be that the stuff you're doing isn't for you.
Chaos, Mayhem, and Destruction: Not
In my experience, most people hate their first job after graduation. Accept it - go for the 'best' job you can even if you know you may not enjoy it. Try to stick with it for two years and get as much experience and training as you can. Then make a career change to what you really want to do.
Just because you studied CS, doesn't mean that you have to base your career around it. However, you should use it as leverage to get a good first job, because without work experience it's difficult to change tack. Once you've got a bit of experience, then you'll have a lot more freedom to change and move to what you really want to do.
The real sad cases are those people who get a 'good' job which they really hate, but then don't have the courage to change to something different.
Simple answer: Find something non computer science related to do.
What aspect of CS do you dislike? Programming? There are tons of non-programming jobs out there. As a sysadmin, other than the occasional Perl script, I don't write any code.
Really, just because you graduate with a CS degree does NOT mean that you need to go out and become a programmer, or even need to find a CS-related job. Ironically, I know a few English majors who are now brilliant sysadmins.
I don't mean to sound like a Troll, but if you're that close to graduation, then finish college and look for something which you like. A college degree is just proof that you can learn.
Maybe this is your way back to happiness.
"...at least it pays well..."
:)
That's not a good reason for going into C.S. It reminds me of a trend in medicine, where folks want to become doctors because of the money. Only, somewhere along the line they figure out that they really don't like medicine; this is often after a substantial investment in medschool, which can leave crushing, mortgage-sized debts. Careers should be selected for love of the art, not love of money.
All that said, you're making a decision too early. You're in SCHOOL; the challenges you're facing there are nothing like what you'll be facing on the job. You'll learn more in your first year on the job than you did during the entire time you were in school. You'll face programming efforts with 50,000 lines of code or more in some cases. College C.S. is a good theoretical basis, but it really doesn't show you what you're going to face at work.
You don't have enough experience yet to be jaded, so stop puttin' on those jaded airs.
C//
About 2 years into my CS education, I realized that I had an active dislike for mathmatics, and only limited patience for the rigors involved in logic design and the debugging headaches that go along with any programming project.
The thing that saved me, however, was the fact that the field of computer science is so varied and vast that I didn't really have to specialize in programming to do what I really wanted to.
Look at all aspects of CS, and not just coding. That means networking, graphics, engineering, etc...
When I realized that I really wasn't cut out to be a coder, I started taking art classes and registerd a minor specilization in computer generated art. Now I'm a webmaster/graphics guru for a mid-sized financial company in texas. Part of my duties include administering servers and writing the occasional script, but most of what I get to do is purely creative. I take photos, paint, draw, and even write occasionally, being paid like a server administrator the entire time.
I know guys who hate coding, but love to build hardware. I know of guys who have gone into the electronics aspect of CS, actually engineering and building computer components.
It may be difficult to find a CS field you like, but there is almost certainly one out there for you.
The next Slashdot story will be ready soon, but subscribers can beat the rush and slashdot the links early!
A CS degree is not just a way into *yawn* programming for some company or sysadmining looking after morons and their computers. It is knowlege that can be applied across the board to a myriad of fields of research, either academic or commercial.
The same applies to non CS degrees in the CS field - my (postgrad) degree is in Medieval French, but I'm working with computers in order to create electronic editions of medieval manuscripts; using XML with a search engine to enable people to search texts, descriptions of archives, descriptions of museum items, libraries etc. Find something else that interests you and you can say that you love, and apply your IT knowledge and skills to it.
-- Azaroth
Once you get out in the real working world, you'll come to appreciate your degree more. I started working on the Sysadmin/DBA side and have made the transition to a software/network engineer and am starting to appreciate the time I spent in school.
So don't do anything stupid until you are out of school and employed (ie. don't drop out) Just get a job and see what happens. If you hate your job, look for another one.
If you are reasonably intelligent and interested in doing stuff, you won't have too much trouble getting a job. One of the positive things about a recession is that it will shake the idiots and dotcom losers out of the industry.
Conformity is the jailer of freedom and enemy of growth. -JFK
Seriously, I got way more out of the practical Computer Programming Specialist courses at Keesler AFB than I did from Washington University's engineering curriculum. Once I was trained, they shipped me off to an honest-to-god Air Force squadron where I wrote code for embedded systems, designed databases, repaired hardware, and got to run around with a gun.
The money was terrible. The hours were tough. It was the best work experience of my life. And, as an experience I can put on my resume, it was spectacularly effective at keeping me employed after I was discharged.
What are your other interests? Do you like statistics? Do well in Biology? Try Bioinformatics.
Care about networks, planning infrastructures and solving related problems? Look into being a SysAdmin.
Like beer? Get drunk.
- Dan I.
You have to ask yourself: Is it software development that you're tired of, or is it academia?
You might want to try working outside college, either at a part-time job, or on an open-source project.
I know it sucks right now, but you've invested plenty of time in it, and its a bad idea to quit. Its only a semester, a fantastically short period of time in the grand scheme of things.
:)
Then go and do something completely unrelated for as long as you want to, and gain a bit of perspective. You may find that, with the daily grind removed, you remember what you liked about CS, or you may never touch a keyboard again. Either way, you'll be a college graduate, which does help in getting jobs, whatever your major is.
Besides sticking at something you hate for a short while is character building
Athletic Scholarships to universities make as much sense as academic scholarships to sports teams.
It'd be a shame to call it quits before you've really begun the game. The complexities you'll encounter once you really start working will make whatever you've done in school look like a two line gw-basic program written on an ibm pc-at. The joy of working in cs projects transitions from the drugery of fixing minutae to solving larger, systemic problems. I urge you to take your good gpa, get a job, and really give it a chance.
Listen, everything you do will eventually become boring. If you switch to another field you think will be more interesting, that will become boring too. The smart thing to do is to go into a career where you can become independently wealthy when you're young, after that you can do whatever you want, when you want. The only career like that is business, particularly finance. If I had to do it all over again, I would go to Wall Street for sure, and I'd be retired by now.
- Have a picture
Honestly, I was starting to feel the same way in the work world. I've been a software engineer professionally for about 10 years. Extreme Programming (XP) is the twitch in your fingers when the meetings get long, it is the surge of pride when software works first time round. Check it out: http://www.extremeprogramming.org or for a business-level summary: executive summary of XP. Good luck! Don't give up just yet. School can be stultifying, and so can work. But if you are talented, there will always be good opportunities. Also consider starting your own business. There are lots of programs for supporting small business in most countries - it is very exciting and great experience. Or work for a startup doing cool stuff (not many of those around anymore, but still).
Helping with organizational effectiveness is our job.
If you haven't tried finding an internship in CS/CE, I suggest trying to find one.
Real-world CS is a lot different than academia. I'm a junior (CE @ UM Ann Arbor) in college, and while I've liked some of my classes, most of them are merely there to teach the rigor of heavy computer science, so that we have the faculties to tackle the really cool problems in computing. Some people actually like the academia-side more... but those people are crazy (j/k).
The real place where I have fun is my job - not as theoretical as class, and you see real results. The most fun is when you get to actually *use* the stuff that they teach you in class.
Give it a while - and if you can't find an internship in your area, often CS departments have programming clubs, in which the members work on a large computer project together. Personally, I'm not involved with one of these, but it seems everyone involved has a lot of fun.
Good Luck, and remember - when all else fails, stay for a master's degree.
-Mike
You're not too specific about:
- Which part of this large and growing field used to thrill you
- Which part of this large and growing field has burnt you out
Which would probably help you get better advice from everyone.
But it may just be a case of getting bored with the tiny, unrealistic projects that are typically used to teach computer science. Maybe it's not CS that has you down, maybe it's just college burnout. Applications in the real world tend to be more interesting in the sense that they're much, much larger, but less interesting algorithmically (is that a word?) speaking. You may find the real world to be a breath of fresh air, or you may find it even more oppressive.
In either case, finish your degree. You're too close to the end to give up on it. If you try some real-world CS and still hate it, you can try something else.
"eradicating the countless off-by-one bugs is nothing short of mind-numbing. I'd like nothing better than to recapture the feeling of joy I used to get out of doing this, and to once again be able to say I'm doing what I love. What do you do when it isn't fun any more, but you'd like it to be?" "
It sounds like you enjoyed it more as a hobby than as a serious career. If so, keep it that way and a find an alternative career that you can enjoy and use to pay for that hobby.
Things like the off-by-one bugs decrease significantly with experience. But, you also have to be disciplined and serious about your programming. I'm happy with this as I get great satisfaction out of having things just fall together and work well the first time. The initial effort might seem dry, tedious and unnecessary (design!), but I find it pays off in the long-run.
There's nothing more frustrating than having to deal with somebody else's sloppy code and basic bugs. Ultimately, I've found working with a team of senior and/or good software engineers results in better code to work with, so there are fewer of those off-by-one and bad pointer bugs to deal with in the first place. Unfortunately, you might have to "do your time" to get there.
If you can't do what you love, then you might as well work doing something you're good at. If you're still a good programmer you might as well keep at it, really you're not going to find too much better in the way of a job. Programming is still one of the better paid professions out there.
What you may have to do is give up on the idea that what you want to do, what you have to do, and what you are good at are all the same thing. The vast majority of people don't have the luxury of doing what they love and getting paid for it; they grow up, get a job, and learn to deal. After all, the purpose of a job is to provide you with a means to do what you want, not and end in itself.
Coursework got you down? Do a random coding project. The best way to keep interested in CS is be active in doing stuff that you find fun. Coursework definitely brodens your horizons, but if you want to do something interesting many times you have to take the initive. Here are some random projects that my roomate and/or I did to keep ourselves interested while at college.
-Teach yourself some Computer graphics and build a paralell ray-tracer.
-Get a book on Lex/Yacc and write your own programming language.
-Mess around with X-screensaver code and write a new screensaver.
-Teach yourself some about evolutionary computation and teach your computer to play blackjack.
-Learn about image filters and write yourself an image filter library.
-Pick up a book on neural nets and write one that does vowel recognition.
-Teach your self about kernel hacking and implement a new feature like process statistics.
bash-2.04$
bash-2.04$yes "Don't you hate dialup connections?"| write USERNAME
Maybe CS just isn't for you. Not to be rude, but you get all psycked up about something and your enthusiasm dies after a short period, then maybe it just isn't for you. I've been doing CS stuff for 10 years and it's just as exciting or more so now than it was when I started. Maybe I'm just weak minded and easily amused, or maybe it's just what I was Meant To Do(tm). Some projects are more exciting than others, and some projects I get really excited about early on, but after a few weeks/months of it, I get bored and move on. The key for me seems to be change, I can't do the same thing for too long (more than 2 or 3 months straight).
If you're already bored after a few years, then maybe you should look at something else, because if it's what you were really meant to do, then it would be exciting forever.
Things you think are in the Constitution, but are not.
First off, school's a bitch, to put it bluntly. Day in, day out in this small splace with generally small-minded proffessors. I know, I've been through the meat grinder as well.
There are a few things you could do. If you can get certifications, get them and start working as a roving prostitute.. err... consultant. Good money, hotel rooms, and you can screw with peoples' networks at will. Tee hee hee.
You're too far along in school to check out other options, realistically.. but maybe see what other things you have interest in and try to cross-pollinate those interests.
Maybe try becoming a kernel hacker. Either it'll cook you or you'll be helping out Everyone And Their System.
The last option I can think of is PROZAC. You may be sufferring from depression (can't blame you.. like I said, it's a bitch!), so maybe a visit to the shrink would help.
I used to be someone else. Now I'm someone better.
Real life is underrated.
I'm probably going to get an offtopic for this, but...
Is it just CS and programming that you're finding yourself disillusioned with, or is it kind of everything in life right now? I ask this because it sounds to me like you may be depressed, and attributing the symptoms of that depression to loss of interest in what is currently one of the biggest parts of your life (getting through your CS degree).
If you feel like everything else in your life is just great, then feel free to ignore this post.
On the other hand, if you've been feeling a general sense of purposelessness, lack of motivation about other areas of life, experiencing sleep disturbance (either trouble sleeping or sleeping all the time), or been down about life in general, you might want to consider getting some professional counseling. If you are depressed, it's likely that when you get some help for the depression, you will rediscover your passion for technology.
BTW, IANAP (I am not a Psychiatrist/Psychologist) so standard disclaimers apply.
(Them's goooood drugs.)
destroying everything you love about a subject.
Finish your degree, you'll get a lot farther with a four-year degree in underwater basket-weaving than with 3.5 years of theoretical physics.
Then, go do something you like. Be a DJ, paint pictures, write stories, go hiking, and find a way to make money at it. The challenge of keeping yourself fed while doing something you care about will be a lot more rewarding.
Definitely finish the degree though, it shows potential employers that you're not a quitter.
"Nothing was broken, and it's been fixed." -- Jon Carroll
All of this commentary about more education and other BS. Go out and teach. There are hundreds of school districts across the country that want math teachers (and probably some who want computer teachers). Take the opportunity to travel some.
The pay is not great, and if you decide to stick it out, you'll have to take a fair amount of courses. But if you are only into it for a couple of years, it will be a good break, and possibly very rewarding.
(I almost went this route after deciding that chemistry sucks. Got my MBA instead. While the toys are nice, I would have preferred teaching. But I wasn't going to take the teaching courses.)
Jesus was all right but his disciples were thick and ordinary. -John Lennon
In either case the answer is the same: do something else. The only way to be happy in the IT field is to LOVE what you do. All of those people who started CS degree programs in school 3 years ago just for the money are pissed now that they can't come out of school with a 2 or 4 year degree and move immediately to a six-figure salary. Any job in IT means long hours, often tedious work, and dealing with people who generally resent you for your intellect. If you're not in it because you love technology you won't last long, IMO.
On the plus side, a job in IT can be VERY rewarding if you love technology. It's *always* challenging, you get to be around the latest technology (usually), and there's always something new to learn. Also, if you start in the programming (software) side of it and burn out, you can always move to the hardware/networking side, or vice-versa. Or do like a lot of people (myself included) and do a little of both. The people who thrive in the IT field are people who get bored easily and are always up for a new challenge. Sounds like this guy is either lazy, or his school isn't challenging him enough.
Shayne
Today I didn't even have to use my AK; I got to say it was a good day -- Icecube
Maybe it's ignorance is bliss, back when you didn't really know squat it all seemed like it had limitless potential. Once confronted by the realities, and a declining Tech boom (don't expect this to last forever, particularly for those who really do have CS degrees, as opposed for those who got their foot into the field out of an employers desperation) the occupation can seem dreary. I know, I've passed through phases where it was just 'work' and nothing fun or exciting about it. Some might suggest 'growing up' as in, jobs are supposed to suck. Well, jobs have sucked at times and held great enjoyment at times. You're probably just in a down cycle. So give it time, find something else you like to do and do that until that project or opportunity finds you (you never find them, they find you, it's a fact) and you discover where your strengths are and what you prefer doing. Best of luck.
A feeling of having made the same mistake before: Deja Foobar
Starting a career was interesting after getting my electrical engineering degree. I got my BS during the peak of the recession in '92. School was mostly fun due to the labs and being able to pick my senior project.
Unfortunately, I had to graduate and get a job unlike some of the other career students. It started out with a short lived technician's job with oil wells in Texas. That job stunk more ways than one. It came to an end very quick and I was surprised to see my buddies in the graduate placement office too.
I took to the newspaper and took the first thing I could find. Repairing televisions and VCR's was fun. It paid like crap, but we could do things after hours, like make robots out of old VCR parts or design radar guns and other michievious fun. Within a few months, the business did so good I was managing my own store. Due to the rapid expansion and mismanagement that followed, the business rapidly collapsed and I went back into school. Had to do something.
My second round of school turned out to be full time employment in the Dean's office. After a few years of gaining skills with all the opportunities presented to me, I used the reference to get a maintenance job running a manufacturing plant. I started at the bottom and got promoted to senior electronic technician in six months. Its not the glamorous job title of engineer or anything, but I do get to play with 3 megawatts and lots of large assemblies of DC motors, servos, encoders, and high voltage test equipment.
I have found most industry is pretty much the same and the skills are transferable. Its nice staying in an industry where job security is always available.
I think the problem isn't that you're losing interest in CS, but that it has taken over your life. If you spend almost all of your time doing a single thing, you *will* get bored and frustrated with it, and eventually lose all motivation. You need to "diversify your portfolio" a bit. There's a bunch of things you can do to do this:
Academics: Take an extra year and do a minor. Chances are you've already got most of the prerequisites for something way off your field, like biology or english. You'll learn something new and interesting, and possibly even pick up a new skillset. Besides, it sounds cool to say that you've mastered two completely unrelated fields.
Time Off: Take a weekend, week, month or year off; whatever you can afford to get away for. In that time *DON'T TOUCH A COMPUTER*. Don't even bother with email. It also helps to get away from where you're doing most of your work. This could be a trip to another continent, or just to the next town over.
Hobbies: Non-geeky hobbies are great for "fixing your head", I've found, especially if they're somewhat physical. Get a bike-- mountain biking is a brilliant quick fix if there are trails near where you live, or since winter is coming, go skiing. Hell, even a quick run (as much as I hate running) will put things into perspective sometimes, especially if done on a cool, crisp fall evening.
Of course there's always the weeklong bender of booze and drugs, but that's just not that healthy...
Now go! Turn of the computer and get away from Slashdot! There's hope for ya yet!
It's only software!
Well to begin with you may not want in this field at all. In that case go to grad school or get a job you like right off the bat. Your first job will have a direct influence on where you go once out of school. Also, with your CS skills you may consider getting an MBA and go the management route. It's always nice to have a technically proficient PHB :)
:)
However, if you do want to stay in the field there are many other avenues which I'm sure you haven't explored. For example, a few years back I used to really love website design. I loved designing the dBs, the HTML, the scripts, and integrating it all together. Then I got tired of it. Now I like doing embedded programming on bare metal. To me it's fun to poke around with the bits and bytes and talking to the chip directly.
I guess the point of my story is that there are many, many different avenues you can take with a CS degree. You may have an unexplored passion for programming in an area you haven't thought of. Perhaps you like numerical analysis, compiler design, unix programming, scripting, embeddded programming, etc... There are so many different areas of programming. Maybe you like cars. You could do programming for the on board computer. Of course, you would need a background in thermo, etc.. but hey its definitely an applied programming art. The most important thing is to think outside the box, or in this case PC
JOhn
Campaign for Liberty
CS and EE are very immature fields. They've been around for far shorter periods of time than other scientific diciplines. When was the last time that you actually looked at the research going on? Orthogonal persistance instead of a filesytem is cool, for one thing. Who needs a filesytem anyway? But that's just what I'm interested in. Have a look around or come up with something yourself. There are plenty of areas that have yet to be explored. Wouldn't it be cool if there were tons of little software components floating around on the network that could talk to one another and combine on the fly to accomplish what you need to do? Call it "Networked Program Creation and Mutation." Write it yourself or better yet get involved with (or start) a cool open source project. Whatever you do, as long as you're interested in it, it'll be fun.
I don't think that this is really a computer science related question.
I mean that almost everyone reaches a point in their lives (usually somewhere in their twenties) when they come to the realization that they are not destined for true greatness. That they'll probably just lead ordinary lives, one in billions.
Don't get me wrong here, there is still plenty of oppourtunity for joy and even, dare I say it, job satisfaction. But we can't all change the world.
And I think that the poster was expressing this, more than a dis-satifaction with computer science.
Or, hopefully, I'm wrong. About everything.
Jeez, how negative can you get?
:P
I got my CS degree in may, although I've been working "in the real world" through a co-op since january. And compared to school, I -love- it. Yes, of course the projects aren't going to be as interesting as you want, and there's the beaurocrats, and all the other stuff you mentioned.
But compared to boring classes where a good percentage of the professors are even dumber than PHB's, or at the least, even MORE close-minded, working for a real company, with real goals, and real projects, is amazing.
And no, I don't work for some new-wave dotcom...I work for IBM, one of the oldest dinosaurs out there. So if I can deal with it, and still love it, even after struggling to stay awake through college (and only come out with a 2.7GPA), then others can too.
It ain't easy to kill a geek
It could just be a simple case of burnout. Its totally understandable. Remember, you've been doing this now for four straight years. It's bound to take its toll. The same thing happened to me after 6 years of undergraduate and graduate Mathematics. I didn't want to prove one more god damn theorm after that!
The good news though is that you'll probably get over it. Once you've graduated and wound down a bit you may find that the love of all things programming may come back. My advice: take some time off after graduation to just unwind. Don't worry about computers and such and go do some of the other things you love. You'll probably find that you'll rediscover the excitment you had before you went to college.
I'll point this out right now -- I didn't major in CS, I majored in CIS. Please don't laugh, it was a while ago, and the price was right.
I wanted to take CS for the longest time, but when it came time to actually go off to college and university, things changed, shit happened, and I ended up with an I between the C and the S.
Anyways, from what I understood at the time, wasn't CS supposed to be about lofty, theoretical-type stuff like crazy algorithms, AI and the minute details of how a computer actually works in the first place.
I was talking to someone the other night who was in CS at a university in, shall we say, south-west-Ontario. What are they taking in their first semester?
Visual Basic 6.0.
Now, since I didn't actually take CS per se, maybe I shouldn't say anything, but wtf? VB? Is that really the language anybody would want to start off with, let alone CS majors?!
VB is simple and powerful and all and makes for decent RAD, but sweet baby jesus, should universities start off with it for CS?
Going from a more "traditional" learning language like C or Pascal to VB is dumbing down to me. I can see Java these days what with the OO and all, but VB just baffles me.
J
Before you toss all that learning out the window, at least give the real world a try first. Asuming you only look at the CS field (though you aren't limited to this) there are many aspects to tis field. Hardware support, software support, software maintenance and developnment. Each field is different and in many instances a psition will encompass parts of each area.
As far as your GPA. Ignore it. I graduated with a 3.95 (in Business?) and have yet to have anyone ask. Real life isn't a stupid boring class exercise.
Last, realize this: just having a degree qualifies you for many jobs. Additionally, prospective employers will view your computer expertise as an asset in almost any job.
"God fights on the side with the best artillery." - Napoleon, Marshal of France - speaking truth to power
My advice. Sit back and ask yourself what's really important to you and what you enjoy. In my case, I liked teaching and programming, but not the rest of the baggage that came with being a faculty member. I got into instructional technology, and it's been a much better fit. I'm not rich, but I don't wake up in the morning dreading work.
Do you like to write? Check out technical journalism or documentation. Would you rather just nail boards together? No shame in being a carpenter.
Perhaps no job sounds like fun. In that case, go get an MBA and head for the money. You can enjoy yourself in your time off.
The decision can be wrenching-after all that work, why would you just throw it away? I get asked that all the time. The short answer is that I'm happy now.
Eric
"Seven Deadly Sins? I thought it was a to-do list!"
I take a break. Try something different. Let the world sink in and come back with a new prospective. I have done lost of fun stuff on my breaks from the computer. I am in break mode now. I work with computers and have computers as a hobby. So my current break has me building a boat. It is relaxing to not have to think about computers in the evening.
If you would like to look you can see the pics at my boat page Some of my other projects are on my home page at This Location
I wish you well and hope you can find a relase to help take your mind off of computers for a short time. I have found that when I go back to comptuers it is fresh and new and the joy is back!
I can sympathize with the sentiment of the original poster, though not his particular situation. What you do in school is often much more fun that what you'll do on the job later. In school you can be introduced to some new idea, then get all enamored with it and have fun just learning for the sake of learning. On the job you mostly deal with a small set of known technologies and there's not much variety.
That aside, I've gotten disenchanted with computers after getting a B.S. and working professionally as a programmer for over a decade. The problem is that programming has been replaced by drowning in a sea of APIs and help files and systems that are loosely defined yet still require 1,000 pages of documentation. A certain GUI call doesn't do what you expect it to do, so you look through knowledge bases and do google searches and sift through example code. Then you find out that no one really knows the answer, so you twiddle around until it works, but then you're never sure why the fix works at all.
For example, try to understand the format of a Windows executable to the point where you could create your own (let's say you're writing a small compiler). Searching for an hour on the web turns up lots of specs, but they're all thin and full of holes and they don't agree with each other. Just *exactly* what does field X do? When do you need to set it? Why do some executables set it to $FF when the legal values are in the range of 0..3, and yet those executables still work? These kinds of issues are pervasive in any modern system, be it Windows, MacOS, or Linux+X+KDE. And they erode your soul.
I'd definitely stick it out and finish the degree because comp sci skills still allow you to earn a living. However, you should spend some time exploring things that might be fun. I've started doing that recently with over ten years in the field and am stumbling towards a career in writing. It's a nice dream, but I ain't gonna give my day job anytime soon because it does put a roof over my head. The trick there is to find an institution you enjoy working at. I'm real lucky there. Even so I am getting burned out and I do feel a need to go and do something else. Several years ago I did a public school outreach program where they sent majors in various fields to be a stand in lecturer for a day at Detroit public schools. I had an absolute blast doing that. I was a physics major and I brought all sorts of electromagnetic toys I made out of junk for the kids to check out. I was absolutely drained after a day of excited middle schoolers, but I wanted to do it again. Lately I've been revisting those memories and thinking it might be fun to teach. So that's another field worth exploring because you get to deal with people seeing the subject for the first time and their freshness can make it all fun again. Of course, teaching public schools is quite another thing, and I know enough about the classroom situation, the pay and poltics to balk a little about jumping off CS and getting my teaching certificate, but I'm still looking.
This is one of those questions where 200 different people have 200 different opinions on the matter. My take on the subject is this:
First, get the degree. That piece of paper can open a lot of doors for you.
Second, talk to your advisors and campus job-placement center. That's what they are there for.
Third, take advantage of other opportunities that present themselves and that sound interesting. What you study in college may very well have nothing to do with your career in the long run.
Do you have any hobbies or clubs you belong to that are not CS-related? Have you done or experienced anything that you think you'd enjoy delving into even more? If all else fails, there's always grad school, too.
----------
Something cleverI think a lot of non-adrenaline-based non-social fun has this in common: a challenge, that is not too hard to meet, but that gives a sense of accomplishment afterwards. Ideally it should be silly and/or have no useful impact on the world (like a cross-stitch project or a hike - not like cleaning the basement or a class assignment). Once you remember what fun is like, then you can get back to considering making an impact, because any piece of code that makes an impact requires support and maintenance and stability and responsibility, which, if you're already in a black mood and drowning in tedium, will probably not help matters.
[This advice is unspecific because I discovered that my friend and I do not do any of the same things for fun (I like write-only perl, he likes contemplating algorithms and theory?), so I do not think a list of "stuff I hacked up on a lark" will help jog anyone's memory of what part of CS they used to like.]
"The Crystal Wind is the Storm, and the Storm is Data, and the Data is Life"
Your university is not there to help you have fun and turn you into a Ubergeek, it's there for the exact opposite : chiefly, it teaches you methodologies (because your future boss is very unlikely to appreciate your geek powers, but he *will* appreciate your methods) and it is boring because IMHO schooling is as much about testing is students are patient and brave enough to finish their classes as it is about teaching them something (What I mean is, if you finish a tough school, you'll be proud of it and your future boss will be impressed. If your school was fun and easy, the diploma wouldn't be worth much).
The other thing is, the reason why you enjoy working on your own projects after hours in your dorm room so much is precisely because the rest of your day was boring : imagine if you had fun at school, would you be that compelled to do something new and exciting on your own time ?
Enjoy your school years : they sure don't seem interesting to you right now, but (unfortunately) you'll probably look back fondly at them later when you realize your work doesn't leave you any time for anything fun anymore (don't get me wrong, many people manage to do projects beside their work, but a lot more people get devoured by their work or simply just loose the flame).
Good luck with your studies !
"A door is what a dog is perpetually on the wrong side of" - Ogden Nash
Your in the exact same postion I was in when I was finishing up my CS degree. It got really boring, I had a crappy GPA because I was bored, I really hate being told what to do, I was poor, and I hated where I lived.
What seperates school from being out in the work force is the money! In school your more or less told what to work on, at work, it's pretty much the same way. But when I was in school I went home to a ran down house, ate really bad food, drank cheap booze on the weekend, and still had homework to do. Oh ya, I paid the school for the pleasure of doing this!
Now I work on stuff that is needed by the company, but when I go home, I go home to a nice apartment, eat good food, drink nice booze on the weekends, and I can do what I want with *my* free time!
So if you think your going to make money that you live on doing some enjoyable profession, forget it! The only people who get to do what they want their whole life are children of rich parents. However, for the rest of us, there is work. Just try to enjoy what you can at work and use your free time to do the stuff you want.
Linux O Muerte!
It's not really computer science you're tired of. What school do you go to? It doesn't really matter, actually, most of them are the same: they teach you how to do specific tasks, not how to really innovate or even develop real-world applications.
It's like this. A carpenter enjoys working with wood and making creative designs, right? What if to learn carpentry, they tough you how to make every specific shape they can think of -- as apposed to how to craft things in general.
Realize now that you're in school for the peice of paper you get, at least with computer science. Thousands of students feel, and should feel, the way you do: let down by the education system. If you want that peice of paper to help you get a career, go for it. But sadly, at least in this field, most schools aren't really teaching you much.
That's my two cents anyway. I'm sure the regents of your university disagree.
-- Ken Kinder ken@_nospam_kenkinder.com http://kenkinder.com/
I notice a lot of the replies in this thread are about becoming an IT person or writing Web apps or whatever. I would have left this field long ago if I was stuck doing admin or web development or creating client-server apps.
I was lucky enough to get a co-op job at a printer company my Junior year, where I got to do actual real-world programming "close to the hardware". This was a lot more fun than any project I ever had in any course, and pretty much put me on the track I'm still on today - embedded and realtime development on Unix-based platforms.
I've always enjoyed my career precisely because the stuff I've worked on is actually useful - and because the projects I've worked on are most successful when the users don't even know there's a computer involved. This is definitely not the same old boring programming garbage; you have a huge problem to solve and not a lot of money or time to solve it in. There is no boilerplate code to do these kinds of jobs.
Doing the same old repetitious programming assignments is not the greatest teaching tool and is certainly not the way to develop enthusiasm for your profession. But if you think outside the box just a bit and find a job that lets you use your CS skills in real-world applications, you may well find it very rewarding.
I'm young, too. I'm burnt out on living the "American Dream". I have been working for 5 years. I have a nice income. I live in a big house in the 'burbs.
It sucks. I'm in a rut. I am looking at bailing and moving back to my homestate, buying some land, and developing a sustainable dwelling while doing something that I'm passionate about. It is going to take time.
Complication: I am supporting a wife and two children. Recently, my wife has come round to support my view of what is important in life. IT IS NOT MONEY.
So, my advice is: finish the degree, find a job, and explore your passion. You have time. You don't have to have everything now. Exercise patience.
"Don't put a question mark where god puts a period."
Soldier: Sir! Sir! I've done it!
Captain: Done what, Corporal?
Soldier: I've finally forgotten why I joined the French Foreign Legion!
Captain: [clicks a couple of keys on his computer] According to our records, you joined because you were bored with Computer Science, and because of a girl named Samantha.
Soldier: Sigh. I'll go patrol the hills again, shall I?
You want the truthiness? You can't handle the truthiness!
From the: It's-in-there-somewhere dept.
Find your soul. A metaphysical question? Somewhat.
I studied both CS and philosophy in college. I have a BA in CS, and almost a BA in Phil. CS is what I do, but philosophy is what I am. Philosophy is what makes me get up in the morning, drag my ass to work, program mindless code (somedays) and still stay sane and happy. I know I always have that other subject to turn to once CS has done all it can to fulfill me.
Philosophy may not be your answer. It may be music, or art, or sports, or (perhaps) pr0n. Whatever it is, find it, and study it as well. Be as diligent about maintaining your connection with that "other side" of you as you are in striving to become a Code God(TM).
After being in the work force for a year and a half after graduation, I know now that when I go back to do grad school, I'll be doing it in philosophy, not CS. Mind you, it'll most likely be on philosophy of mind and artificial intelligence, but it will be philosophy. Computers are great, and I love them to pieces, but they don't make me want to live. Find your life force and go with it. Happiness and excitement derive from being more than one-dimensional.
Blog,Twitter
The big thing that is missing in school is users. It's like saying that being a pilot isn't fun anymore because you have gotten sick of flight simulators. In the real world it isn't clean "just implementing things out of the book" anymore. You have real people counting on you (and often, other real people counting on you to fail). The stakes (and the pressure, and the thrill) go up accordingly.
Yes, batting practice gets dull. So does field stripping a gun. But we do these things, not as an end in themselves, but so we'll be ready when it's for real. That's when the fun starts.
-- MarkusQ
Anyway, here's my last ditch effort to make this on topic. I left the military after 14 years because it simply wasn't what I wanted to do anymore. The path I was taking was crystal clear and I wanted nothing to do with it, so I left and I am doing well in my new compu-centric career. It's never too late to change your mind. If you don't like it, leave and find something you do.
...and become an economist. Well, I'm almost done. I dropped CS after a year, though, so I had the advantage of not spending all of my time going for a CS degree I didn't want.
I like to think that if I ever wanted to learn CS, I could pick up a few textbooks on a subject (say, assembler) and read up. But I'm able to read a book and learn the material...
College isn't about what degree you get anyways. You should know that by now if you're just about to graduate.
And there's always the military... I hear they're hiring.
I spent three years in the Army and I love my nice indoor programming job. Even if I am having to spend time this week debugging three year old uncommented VBA programs when I don't know VB Script.
Best Slashdot Co
A kid can leave HighSchool and get a Programming job. The study of computer Science although my teach some programing is more of a study in problem solving and learing skills in making jobs run faster, simpler, and more efficient. I use Computer Science Skills in more then just programing. I use it from technical skills in System Administration and Computer Support. And I also use them with other people from showing a better way to orginize the Forks Spoons and Knives in the Univeristy Commons. Or organizing large numbers of people to do complicated things with simple instructions they can follow. Its Computer Science Not Computer Programing. It also sound like you have Bad Profs too. I had some classes with Bad profs that made the Topic seem useless because I did everything out of the Book while I had srom Really good Profs who were more challanging and forced me to think of new Ideas.
If something is so important that you feel the need to post it on the internet... It probably isn't that important.
"What do you do when it isn't fun any more, but you'd like it to be?"
It sounds to me like you need something more exciting and challenging.
Do you remember the Slashdot poll a few weeks back, the one asking "What's your favorite chemical?" I suggest that you start dropping acid or taking a few tabs of E before going to class. When you start developing projects that include subroutines to clear out your reality buffer, you know you're going somewhere.
After a few quarters of that, you will find the essence of CS, or you will drop out of college and go wander around India for a years. Come to think of it, India has a burgeoning tech sector, so you can't lose.
In the immortal words of Chef: "Remember, children, that there is a time and a place for everything. And that place is college."
Dude, I think you have a case of what we call "Senioritis". I caught this when I was in my final semester as well. I think the desease caused me to get a 1.5 that semester (although that's all sorta fuzzy). The only known cure I know of is to go out every night and get totally tanked off your ass.
For real tho, enjoy college while you can man, the real world blows.
Here are two of the possible things at play here:
1 - You are getting Senioritis. This is a common occurance when you are nearing the end of your college career. You begin to feel very apathetic about your classes. You start to miss class. Your grades become unimportant other than the bare minimum to pass. Etc, etc, etc.
2 - You are beginning to realize that programming is no longer magical, it takes a lot of work to get something working to spec, and clients (teachers) are demanding more of you than you feel is necessary.
As others have said: Welcome to the "real" world. However, I am not going to continue on the thread that others have started. There is HOPE! While certainly there will be times in your life where you will be asked to do things that seem to be drudgery, there will also be times that you will sit back and watch a program that you wrote do something apparently simple, and you will be awed by what you have done. You will know the ins and outs of the code so intimately that it will feel like you are personally executing the code. These are the times to live for and cherish.
As for school, I am in my last semester (Yahooo!) and the only way that I am surviving is that I am taking classes that _I_ wanted to take, not any that the college or university forces me to take for prerequisites or core competencies. Hopefully your university allows some "electives" in your major to finish off the degree. Find something that you are interested in, the more difficult the better, and challenge yourself to get a 4.0 your last semester. You may or may not get it, but you will have a goal. That can make all the difference in the world.
Also, attend any job fairs that the school sponsors. While some say that there are no high-tech jobs available, many larger companies are recruiting newly graduated engineering/science majors right and left. By receiving offers from the various compainies you will gain a little bit of confidence in the market. Remember, the most pessimistic of the pundits say that the market will be turning up in the middle of next year!
Finally, find something to do that you find enjoyable that doesn't have to do with computers, or at least coding. I find that I need a break every once in a while to break up the nearly constant stream of code that I am asked to create. Go to a move, go on a date, read a fictional book, go minature golfing, build a model, etc. I understand that as a CS major you have virtually no free time, but if you don't want to go crazy you need an outlet. That is something that we need to do our whole lives.
Well, you know what? College is exciting compared to most I/T jobs....I say *most* because of the old saying:
For your job, you are allowed to pick two of the following:
1) High Paying
2) Fun
3) Legal
Truthfully, I'm at the same crossroads, after 5 years at my job. The job is great when it comes to job security and location, but as far a challenging goes, heh! most of the stuff I do is pulling data from databases and displaying it in a GUI that the business folks can't decide on. That being said, I realize most of my complaints are sourcing out of the fact that my job is cushy, so its easy to complain. In other words, go work in a nursing home for a week or two and then maybe C.S. will become interesting.
Keep in mind that any C.S. career is going to require that you love to learn new stuff endlessly...you will get to the point where you won't want to hear about that new programming language or new standard. You might even get to the point where you care more about your life outside of work and don't mind doing the routine things to get your project done....
Yeah, its a little hard to take pleasure in routine work well done since we don't live in a egragrian society anymore....(i.e. The Village Blacksmith ) but in a world where you are only adding value to someones bottom line...and you might not even see the results of your work being used around you or helping your neighborhood, however your work ethic should be the same. Otherwise, I recommend transfering to a tech school and learning how to run electric or something.
I need a TiVo for my car. Pause live traffic now.
Just get a girlfriend, marry her, knock her up and wait 9 months. CS will look pretty darn good then.
BASIC (standing for Beginner's All Purpose Symbolic Instruction Code) is a system developed at Dartmouth College in 1964 under the directory of J. Kemeny and T. Kurtz. It was implemented for the G.E.225. It was meant to be a very simple language to learn and also one that would be easy to translate. Furthermore, the designers wished it to be a stepping-stone for students to learn on of the more powerful languages such as FORTRAN or ALGOL.
"God fights on the side with the best artillery." - Napoleon, Marshal of France - speaking truth to power
I currently work in the MIS department for a large communications company. The department has 3 coders, including myself. Everything we write ends up internal to the company. We write web baed applications for tracking orders, constomer information, accounting, inventory tracking, and so on. Because everything we do is internal to the company I get to see the results of white I write right away. This is my first programming job, and It's an amazing feeling to actually be writing programs that people will be using every day. Once you get away from the types of things you do in class, like writing a nice sorting routine, and start on things like, "Develop a program to takes scanned PO's, store them in a database for later review, and add a nice interface for it all", things start getting more interesting. I would reccomend you stick with it and at least give a job a try. You are close enough to finishing your education that a little more time won't hurt, you can always use the experience elsewhere.
For me, the joy in software development comes from solving new or interesting problems or problems in a new domain, working on a team w/ other talented, insightful people. It's about having my mind engaged in a way -- or in a variety of ways -- that few other of the professions I'd explored provided.
Now, of course not all jobs in the software industry will always have the right combination of interesting problem, quality people and good management, but the longer you work in the industry (and the more practical problem-solving experience you aquire) the more you'll be able to be picky and choose jobs that have at least some of these things -- and it's often possible to be the spark that brings some of the other qualities oneself (for instance, not many Project Managers *want* to fail; if you find yourself working on an interesting problem in an environment that's poorly managed, suggest ways that you think the process could be made more conducive to producing quality work. You'd be surprised how often people pay attention to good ideas).
There are also no end of open source or Free Software projects to get involved w/, many of which are interesting, fun and useful all at the same time.
In any event, don't assume that your experience now necessarily represents what the experience of actually doing software development as a profession will be like. If it turns out after a couple years of working in the software industry isn't all you hoped, then you will have aquired a useful skill and still be in a position as multiple other posters have mentioned to pursue something else.
Try it. Games programming will challenge you like you wouldn't believe. You'll sink or you'll swim, but if you last six months then you'll never fear another computer problem, ever.
As an aside, I went to one lecture in the second half of my senior CompSci year; it turned out to be a pre-exam revision lecture for a course I hadn't done. It was OK though, because I fell asleep, having been up all night hacking Netrek.
So, I got a sucky degree (British 2.2) but I learned to work with a real world project, made up of various standards of contributions, I learned a little graphics, a little input, a little maths, and a lot of network. I learned that an RSA authentication scheme is practically unbreakable, but easily duped. It got me a handle that I'm still using ten years later. It got me my first job, as a games programmer, where again I had to learn a little of everything. That got me the experience that I needed to make up for my degree.
So, sure, give it a try. If nothing else, it'll fast track your decision about whether computers are for you.
If you were blocking sigs, you wouldn't have to read this.
I felt the same way recently (I graduated in May). The job market is absolutely awful: it's nearly impossible to get an entry-level job at any good technology companies.
However, what gave me some fun was to hack again. I used to do it when I was a teenager. I bought a Dell laptop in my junior year of college, and recently took it apart from top to bottom. There was something like 100 screws in the end (20 of which didn't go back into the machine -- oops), but I was able to rebuild it "from scratch".
That gave me joy. It's an ability that very few people have, and I share with only those people. Friends were like "what are you doing?" when they saw the $3000 laptop in a million pieces, but I was able to get it back together in one night, in the process beefing up the speakers and rerouting some wires to decrease EMI (so I wouldn't hear the touchpad buzzing everytime I touched it).
When you actually enjoy what you're doing, everything else becomes secondary.
Here I was thinking of different first person shooters this person could try, or even a different genre like the new Civ.
Man, if you only meant video games I could help.
I felt the same way in college, that the projects I were doing were pretty boring. So, I coded other things. I got books in DirectX and started writing games, and I learned that I actually did use stuff I learned in these classes in my own programs. It made going to class easier, because I knew that even if I didn't see it right now, someday down the line I will use that knowledge in the most unexpected place.
And sometimes, being able to say "Instead of going to the bars at night, I sat in my dorm room coding" in an interview helps you out to get a good job. Most jobs aren't cutting edge, but you might get lucky. Never lose hope.
However, if you really get burned out on it, you might want to look into getting a second major in the science field. I was working towards getting a Music Composition Minor (never finished it) when I was in college, which probably helped on the burnout factor. I enjoyed going to the CS lab after having to sit through tonal recgonition.
The same thing happened to me when I was going through my Electrical Engineering degree. I really like EE (and CS) topics from the high-level, but when it came down to the mundane details of integration it was just too much. I finished my EE degree (and I suggest you get your degree too, it's important), but after I graduated I went right into technical marketing and I love it. I still get to work on some great technical projects, and I still get to work with the engineers about 30% of the time, but I deal with the product on an industry-wide scale as opposed to hacking up 1/100th of another DLL file.
:).
The world is in need of more good technical marketing people. Everytime you hear stories about "stupid marketroids," it's another reminder of why more technical people need to staff a good marketing department. I'm no marketing expert, and I don't have an MBA (yet), but people like me on the marketing team are necessary to keep the business majors from making some basic technical mistakes. Give it some thought!
(also, as another poster mentioned, go on a trip! Head out to Europe or SE Asia or something. A trip like this should be a requirement for every University and College grad
- j
My CS degree is almost 25 years old now and guess what, things have changed. The PC I'm typing this on has more computing power memory and disk than the mainframe that was here when I arrived.
In that time I set up the first pc's (ibm 3270 pc), lan (token ring using IBM mau's and novell 3), webserver (ncsa with cello browser), firewalls and Internet connection. A lot of stuff that has didn't exist, arrived on the scene, and has evolved.
So, quit looking around you and start looking ahead. Does working with voice command technology sound cool to you? Then go learn about it! Find some stuff to play with and get ahead of the curve! Is programming getting you down? Then bone up on encryption and networking, the essentials of computer security!
Quit fretting about "Oh sh*t, I have to get a job in the real world and my GPA isn't 4.0 like all the business majors," IMHO if it is a true CS degree it shouldn't be 4.0. The best minds out there are those that don't confom to the preconceived notions of how things should be. We don't get anything new or useful out of that type of thinking.
Get your degree and find yourself a cool job. It probably won't make you rich, but I can guarantee that you won't be bored.
-Xanthos
Average Intelligence is a Scary Thing
From your post it seems that you've hit the point where technology for technology sake has become boring. Good. Only now can you become a master software developer. This is not the end of your career... but the beginning of it. Mastery of technology comes with service. Certainly you will always be rewarded with a new technology insight; however, the bulk of your rewards will come from serving other people, as they serve you. Your reward will come when you put a smile on a person's face after saving them that horribly irritating 2 hour process they must do every Monday morning.
The programmer transfers tedious processes from humans to machines. We automate. We make hard or impossible processes feisable. Farmers sell food. Doctors sell health. Lawyers sell order. We sell a very precious gift... time.
So. My advice to you. Now that you are proficient software person, you must move on to a problem domain. You must pick a group of people you will serve. Learn business. Learn how social structures work. Learn about specific problem domains that interest you. Do a few internships. When you go into a job make sure that they know what you are there for -- to help them automate tedious processes. Once you grok your role and help other people to understand your role, you will find that software is indeed a most wonderful occupation.
I've always loved computers and hacking out new programs. I started writing programs in the early 80's, wrote some cool programs in high school (a cache for proDos; an NLQ printer driver for the Imagewriter when NLQ printers were new), and then went to college as an EE.
During college, I still kept writing programs. I wanted to take the graphics course, but found that I had taught myself and implemented most of the stuff. I co-oped during the breaks, and got to write some cool software for a company (I designed a way to extend the capabilities of a piece of hardware way beyond it's original intent), and worked for this company upon graduation.
I got some neat projects; I loved designing the hardware and software. Eventually, though, the good engineers left and I was working overtime to needlessly cover other peoples butts. The only thing that kept me going was my fun side projects... reverse-engineering the garmin gps protocol, more computer graphics.
I started work at a new company, and it was great for a while. I learned a lot, but then got somewhat stuck in a rut. The work turned into just programming dma engines and writing drivers. My side projects kept me going... programming the sega vmu, and I began another (still-secret) really ambitious project (RAP).
I had saved up enough money for a really nice car or a downpayment on a house. But, neither appealed to me anymore. I wanted more...
I had always heard the advice "don't make your hobby your job", but never took it. I had been beginning to worry that maybe I had made a mistake. But, after slaving away at the job, I found it was always fun to work on my side projects, even if it was essentially the same kind of work. What I'm learning is that, for me, the freedom to design is really motivating.
So I took a leave of absence (a sabbatical) and am now squandering my life savings chasing that really ambitious project full-time. I'm having a blast. I moved out of the city, live in a college town, have time to do fun stuff, and still working like heck on my project. I code till late into the night, just like I used to in high school.
For the last two days, I've been trying to figure out how to determine a certain condition. I've been racking my brains, but it's been fun because I know that there is a creative answer and I'll find it. I know it's just me and geometry, and there isn't some half-documented chip or lame buggy software in the way. The challenge is real, and for once, not just fixing or working around other peoples' mistakes.
So, my advice, find out what you love, and do it. If this means some time off, then it's worth it. My college-educated sister cleaned toilets in alaska before deciding on a career. I know when I'm ready for another job, I'll know what I want from it and I'll be a lot pickier.
ps. and don't mistake your job for your love. I've done that too. doh!
Rating: +1, Selfish.
HIV Crosses Species Barrier... into Muppets
You're only one semester from being done, but my best advice is:
Get an internship 3 semesters ago.
I think it's very important to get an idea of what you'll be doing when you get out of school. The type of programming you're doing now isn't necessarily representative of the type of projects and problems you'll find in the real world. Projects especially may be more rewarding when you're not working in groups that only have people at or below your own skill level. I found that the type of work I was doing and the people I was working with during my internships and the amount that I was able to learn "on the job" made me feel like college might just have been a waste of time.
Now I know better. The CS degree gave me the foundation that I use to solve problems and learn new technologies and I've found that people who didn't get a CS degree (or didn't put in several years of work towards one) just weren't able to think about problems on quite the same level.
So my advice to you requires a time machine, but maybe some other folks in their sophomore-junior year can take it and get summer internships or co-ops in the field. It pays better than McDonald's (I know, I did that too) and it's going to be more useful later in your career (unless you're desperately in need of "character building")
- StaticLimit
... and you'll never work a day in your life.
Yes, it's becoming a tiresome old cliche that doesn't take into account the complexity of the modern world. For instance, I still love programming and systems analysis/design, but as other writers have astutely summarized here, working in that facility in a corporate environment tends to stifle the enthusiasm and excitement of your career passion. Still, my point is if you're second guessing your choice as you are completing your academic walk, it may be a strategic time to switch to another vocation (or educational pursuit).
If you decide that you are still locked onto a CS life path, then parlay that time you spend on an alternative to transform your CS training into a more fruitful passion. After a sabbatical, you may discover it was just a temporary valley and all that you needed was a short hiatus to regain focus. It happens to all of us.
AZspot
There's no dishonor in disliking CS. I went from an A to a C in one semester, and concluded that CS is riddled with boring subtopics, and boring teachers :-). I eventually went back to A's again when I did theory, but by then I had settled on a Math major.
CS, unfortunately, seems to content itself with torturing students with ever-more-boring programming tasks, while neglecting the higher-level issues that make the field interesting. Most of us would agree that we can get that kind of training on the job, while being paid to do so, instead of paying other people to make us do busywork.
Much of CS is about where auto mechanics was 100 years ago, when cars were "high tech". I suspect that many engineering students at that time ended up with a high-priced education in how to change a tire.
---- "If we have to go on with these damned quantum jumps, then I'm sorry that I ever got involved" - Erwin Schrodinger
Heh. Before that hit alt.sysadmin.recovery. It should scare you away; wish I'd seen it.
"Remember, any tool can be the right tool." -- Red Green
Wait until you start working. Then the real sucking begins.
This
I always thought it would be really cool to do something like that. Especially if you could get a computer science class going, or an after school club. There are lots of free tools that you can use to create really great lab projects. (Even Microsoft has free development packages - check out the development environment they provide for FREE for WindowsCE. It even comes with neat emulators.)
So, you could get a chance to be THE COOL TEACHER and you could really paint a vision for kids of their own futures that they might not otherwise get. And, you would get some time to wind down and think about what you really want to do for your life.
"but after you've done it for a few years, it's all the same"?
The computer industry makes huge leaps in no time. New tools and new technologies develop constantly. Do you hear that ringing beside you? It's a cell phone with an integrated PDA. See that black rectangle on the desktop? It's a laptop computer with a wireless network connection. These aren't just hardware... they've got software inside and somebody wrote it.
Not impressed by the newest gadgets? Ok, how about instant messaging? Internet telephony? StarCraft and Monsters Inc. for God's sake! Do you think Monsters Inc. could have been made 10 years ago?
And you think it's all the same? Open your eyes, look at all the new stuff you can do, and try to keep up.
SQUEAK, the Death of Rats explained.
I think most people who went into CS did so b/c of Games. However, it's a very hard industry to break into. It's even harder if you try to do it as a hobby along with your regualr programming job. I have tried to no avail.
Of course you're bored, you're doing boring stuff. Pick a project you find interesting, or start one of your own, and start hacking. Whenever I get tired of the same old stuff, I write an NPC generator for whatever table-top RPG I'm into at the moment. Soon enough I'll have to find something else to fill that need, but hopefully by then I'll be a good enough programmer to actually contribute something to the community.
Of course, when I first read the title I thought you were talking about Counter-Strike, and my answer was going to be Diablo2...
Under capitalism man exploits man. Under communism it's the other way around.
I burned out in my junior year of college (Penn State -- Computer Science major). I toughed it out, swearing that I'd never get a programming job once I graduated.
Well, almost three years later, I'm a developer, and I love it. I've loved it ever since I stopped writing linked lists and solving the 8 queens problem in Prolog.
Computer science in college sucked. Programming for real is cool. I get to work with new technologies all the time and work on new projects every few months. Sure, there're things that suck, like maintainence work and jerk managers, but you have that anywhere. And I've found that the good parts of the jobs usually far outweigh the bad parts.
As for pay, I started out very low on the salary scale (at the time, my high-school teacher girlfriend, also fresh out of college, was making the same as me), but things are much better now. I think I'm making about 2.5 times what I started at, so your career will go places quickly. Yeah, things are looking a little down these days, but it can't last forever.
I know a lot of people are weighing in on this one, but I was in exactly the same situation as you, and now I'm doing very well in a job that I like a lot. Hopefully things work out just as well for you!
John Hofmann
A friend signed up with the Air Force and spent 2 years in Alice Springs, Australia, monitoring seismic data -- That and tearing around the bush on dirt bikes and generally having a pretty cool time. He spent the rest of his tour between Colorado Springs and whatever the AF base is near Kennedy Space Center in Florida. For the privilege of his time he got more money for school and some VA benefits. Pretty nice how that can work out.
A feeling of having made the same mistake before: Deja Foobar
Rolling in the leaves and sin and ecstasy will take your mind off all your other problems, and the resulting emotional cross-currents will create new ones that will absorb much of your attention. Yessirree, a mad, passionate affair right about now is guaranteed to give you a new lease on life, take up all your spare time, fill your head with new ideas and add new complications to your existence. You'll still be dragging yourself to class all right, but only because you'll be so worn out from rockin' the night before. You'e a senior now, for crying out loud, you should be at the top of the social pecking order. Try to hook up with senior girls; the same ones who wouldn't spit on you when you were both freshmen may be a lot friendlier now that they've been upstaged by new waves of younger, cuter freshmen.
Stick your head outside the computer lab. English lit. and anthropology majors are a good bet. They spend their whole academic careers focusing on stuff like "Psychosexual imagery in the religious poems of Robert Herrick" and "mating rituals in Samoa." This may be your last sojourn among thousands of unattached young ladies in a carefree, party-centric college environment. Gather ye rosebuds while ye may. (And if you knock one of them up, boy, will you ever have a motivation to get a job and start making money.)
Do what I did. Take your four years of IT experience (as a computer tech workstudy in college) and become a contractor. Use your CS courses to code projects in your spare time, as a hobby, and get paid for helping corporate users fix their computers. When the job markets picks up again, you can use your degree and 'hobby projects' to help you get a job... if you haven't found something else you'd rather do.
Very good advice, but I'd like to add that one shouldn't just look for any coop or internship. Find something interesting.
I did a coop for a Department of Defense contracter. Writing code for sonar/radar targetting systems is a lot more satisfying then writing yet another web backend (e.g.: contrast "Congratulations - you've just completeled your first succesful web transaction" with "Congratulations - you've just detected, identified, and tracked your very first Russian Tango.")
All editorial writers ever do is come down from the hill after the battle is over and shoot the wounded.
When I was getting my CS degree, I was quite bored in almost every class too. But it was because of the classes, not because I had lost interest in programming. And over the years if I've felt that I was losing interest or getting bored, it meant that I needed to change my focus, reorient what I was doing at my job; I've only had to actually change jobs once for that reason, but if that's what it takes...
Or I'll find a small project to work on outside my job, just for myself, which will engage my curiosity again by learning something new.
What I do agree with from other comments is that having other interests is really important. Naturally, if your life is solely devoted to coding, then you'd damn well better love it. And even then you'll be lucky not to burn out.
Yes, there is the possibility that CS has turned out to be something you should consider a secondary skill, instead of your focus. Just don't give it up without really examining what's causing your current lack of interest.
I know the feeling. I enjoyed programming and figuring out technical problems, but once I got out in the "real world" (whatever that means), it's not as much fun when you have to think about budgets and standards and coworkers and politics and regulations and the law and ridiculous customers. But most of all, it's just the sheer enormity of a project.
My first job involved tweaking the GUI for performance on an embedded application on the network management module in a huge SONET network. That means I got a teeny-tiny piece of something huge that I knew next to nothing about. Sure I knew how to figure out the coordinates of the icons for network nodes, but how the communication took place and how the network worked was something I knew nothing about.
So why code? You get to know one small piece of the project very well, but that is ridiculous.
Try Product Management: the design of a project requires more technical skills than the implementation and especially the testing. I talk to cusomters, draft requirements, then assist the project leads in the high-level design. Then the developers go off and design the nitty-gritty details and code and test.
Try Sales Engineering: you get to work with customers and figure out how your companies products can help them out. Assisting on things before and after the sale still helps you keep your technical edge, and many times the customers are just as smart as you are.
Hell, try Product Support: help desk in a developer house (like Metrowerks) or a traveling Support Engineer in a telecom company (like Cisco) will keep you away from silly "Where is the Enter Key" questions. You work with other developers and engineers who are just as sharp as you are, only you have more focused knowledge on the tools they are working with.
So don't code! With a CS degree, there are plenty of other options. Look for those and you won't be turned away for not having the right skills.
I didn't have too many problems getting through school, but I will encourage you to stick it out and try working for a while afterward. School and work are completely different environments. Here's some points to consider:
Not all jobs are mindless, boring, and riddled with bad middle management. CS people in the real world aren't doing the same things as CS people in academia. They apply what they know to widely varying domains of problems. Look for a job in an intersting domain, and check it out.
If you have a liking for aerospace, look at defense contracting companies, or satellite imaging companies. Lots of potential for interesting work there! Some people have a knack for telecom and working with low level hardware. If you've got a background in other sciences, there's a wealth of possibilities there... biotech, computational chemistry, genome work, all of these are highly dependant on specialized software.
Avoid things like "Enterprise Application Integration" unless you really are in to middleware and writing glue code. Some people like this, but I find it gets very repetitious and boring quickly.
If you don't know what you want to work with, a consulting company can get you exposure to a lot of domains and technologies. But they can also wear you down with mind numbing projects that you don't care about.
I guess my big point is that academic projects bear little relation to projects in the real world. It's completely different. Beyond your basic skills, and knowledge of design/development process, everything you learn at a job will be new. And very little of it falls into that "grading bucket" where someone looks at it once and puts it in a filing cabinet.
Right now, you should just look at school as a stepping stone... something to be passed through on the way to a more interesting application of what you've learned.
Not at all!
The French Foreign Legion is where you go when you want to forget.
The French Fore-gin Legion is where you go when you want to forget, fast.
I am for the complete Trantorization of Earth.
Work can get boring. That's why over the summer I work on a personal project. Sometimes a new technology that looks interesting just for kicks, sometimes even an idea from work that was shot down by management.
I both work and go to grad school. I find this keeps them both interesting too. It's exciting when you can apply grad tech to a project in development.
In case you're interested, I fell in love with OS X and Java. OS X has a wonderful programming environment called Cocoa, and my personal project is to better learn the Java API through writing apps. Find a cool technology and fall in love with programming again!
Lies about crimes
If you're burned out in your mid to late 20s, I think you people need to find new jobs.
It doesn't matter whether it's with a different comany doing something similar, or whether you're doing something different altogether.
While, yes, work sucks sometimes -- it shouldn't suck all the time. It's just not healthy, especially at such a young age. How do you think you'll feel when you're 40? Then you'll hate your job, think you've wasted your life, that you're immobilized because you have to care for the wife/husband and kids, and resent THEM for YOUR lack of sac. I've seen it -- and it's not pretty.
We certainly weren't given these lives and bodies to make our souls miserable!
Pax, Ardax
What a great time!
Now, I'll admit, I didn't get a CS degree. No, Anthropolgy major with CS minor for me, thank you. Of course, I had figured out in my sophmore year that Physics just wasn't going to pan out for me. Maybe all students should change majors after the first year or two. I dunno
This sounds a lot like what we called Finalist or Final Year Blues.
The pressure of the final year is on, you seem to just be doing more of the same, but under more pressure, the pressure not to 'waste 3 years'. You're working harder, playing softer.
Different people react differently to the pressure of their final year, some get the blues, some get bored, some buckle, however most people don't. Most make it, you can, you might want to consider talking to a college councillor.
The key is to recognize that this is pressure, dealing with real world pressure is probably one of the key lessons of your final year. Take a little time for your self, to make fun again.
Take excercise, Take the piss, Design stupid t-shirts, scream and shout, screw, don't bottle it, don't quit.
DO find something that works for YOU to ease the pressure.
Classes can get you down because the end result is usually lame. The way to get around boredom if you like programming is to find an interesting project. I've worked in the Air traffic control industry and I'm writing games in my spare time to keep my hand in something that I enjoy writing. My daily job is boring as hell, but I still love programming because I keep myself doing interesting things with it. CS isn't boring, just some of the projects are ...
Actually, most non-programmers DON'T think it's hot stuff; and most good programmers DO.
You, too, should probably be looking for a new occupation...
___
The way to see by faith is to shut the eye of reason. --Ben Franklin
First of all I think youre smart enough to finish up your degree. After my last full semester I worked at a networking company with good pay but boring drab days. Knowing the economy was the way it was I kept applying for other IT related jobs anyway. I got some offers and took a leap of faith. It became the best decision I ever made. I am now working at a great company doing something that I truly believe in. I can directly see my efforts effects and have a great time all day. A dream? No. You MUST be willing to take chances and risks. Everyone thought I was crazy for switching jobs with a great salary during these times. But stick to your guns. The key is to believe in what youre doing. Only then will what you consider mundane now be exciting later. Good luck!
Eddy.WriteLinux.Com
If you're always doing what other people want, you'll lose interest and the whole experience becomes a mix of drudgery and frustration. You need to take some time following a few rabbit trails of your own interests:
Just keep in mind that it's not the "CS" trade that has you bummed... it's the fact that you haven't had time to do it just for the fun of it lately.
A carpenter can put up framing for houses for a living but he doesn't loathe his tools when he gets home. He might even pick them up to make some patio furniture, a bookcase or something for himself now and then, and his professional skill will show in the quality of his casual project. And the unrelated projects may lead him to find or invent techniques that will enhance his work performance as well.
Same with us, only more. Because CS deals so much with information we can find correlations between the skills we know and nearly everything! Lots of people have what seem to be ultra-low-tech hobbies and then they end up writing software to help out. (I haven't seen any flint-knappers' applications yet though.)
Don't let either a self-destructively cynical worldview or a fear of success/failure let you drop what you've done so far.
FINISH. No if's / and's / nand's / xor's or 'well...I don't know man...the world is going to shit anyways so I might as well just blah blah blah...'s about it. Tell yourself whatever lies it takes to finish up your degree. Just do it. Trust us on this one!
You never have to touch another computer again for the rest of your life if you don't want to, but a degree - in ANYTHING - shows that, to some substantial degree, you can get your work done and see a difficult job through to the end. THIS is what employers of all kinds really like, and will also give you the self-assurance you will need if you choose to go it on your own and start a business or something.
Bottom line:
Shut the fsck up and do your damn homework.
; )
**>>BELCH
you forget the CS degree, which is largely useless unless you want to do research. you work for several years doing systems programming and admin, switching jobs every year or so to work on new problems, gradually working on more and more complex systems. then you join a startup, make enough money to retire at 30, and switch to writing GPL'ed software at home, on your own time, working in any area that seems like fun to you. no management, no BS, no timetables, just problems you want to work on, on a schedule that you want to work to. i leave dealing with the decline of your net worth following your retirement as an exercise for the reader.
Finish your degree. You are so close. Whether you enjoy it or not, you want that piece of paper for down the road, trust me.
Now.. as for jobs. There certainly are jobs out there for CS grads. They just might not pay someone with a degree and no experience $100,000 a year like they would have a couple years ago.. that's the difference. Things are more realistic now.
You can expect to find a job somewhere, programming, or whatever, and gain some experience. If you are good, in a few years, you will have that big salary.
It's a mistake to think that the university degree is what gives you your big salary... University is just one way to open the door to a particular field for you. (In some fields, it's practically the only way). Your experience and abilities are what really count.
No degree is going to automatically finish your career for you. A degree is a beginning, not an end.
I did this.
:)
I left midway through my Junior year of Computer Engineering because I got sick of classes and mindless busywork. I also had the job experience to know that it wouldn't be much better (for me) outside academia.
I spoke with advisors, friends, parents, and anyone else I could think of and they all recommended I stay in school and at least get that damn piece of paper.
I left anyway.
I found out shortly thereafter what each of those individuals personal agendas were and why they wanted me to stay, and that they recommended a course of action for me that satisfied their own objectives. I learned lots from this, and have remembered since that other people (even those who care) don't always have your best interests at heart--and frequently they're not aware that they don't.
After I left, I accepted an offer of a job/partnership as a professional ballroom dancer/teacher. My first serious pro performance was on Broadway, and my partner and I run a studio in Massachusetts. We're entering pro competition next season (re-entering for her; she's a Nationals Champion), and I've never been happier. We stumbled upon a fantastic investment and purchased our own building about 6 months ago, and I used my computer skills and network of friends/associates to get a second fulltime job created for me (from which I'm posting this now) as padding for the mortgage until our business recovers from the move. Now I don't have much free time, but I keep up with tech news and Slashdot, and even get to play with tech (as a tax writeoff!) when I get a chance. I get to maintain our website (see URL above) when I get a chance (currently out of date, but I'm booking myself time to update this weekend)--and what used to be mindless tedium has become an enjoyable tease of the tech I used to live.
In short, find that one thing that lights you up, and do it. It doesn't matter what it is (for me, teaching is much more rewarding --and challenging-- than profiteering ever could be), just do it, and when you look back you'll discover that not only do you not regret, but you'll find enjoyment in teases of the life you used to live. (like my current project of a TB+ fileserver to store our CD collection losslessly
Good luck!
Dan
Hacking is the fun stuff, everything else is the boring stuff. Find some fun stuff to do and it will come back. Keep doing everything else and you will forget that it was ever fun. I've always got half a dozen projects on the go. Most will never go anywhere but are for my own enlightenment and enjoyment.
OTOH, not everyone is hacker/geek material. You just might not have the chops to do it. Nothing wrong with that, and better to find out now then to realized that you've wasted umpteen years doing something you don't like.
I drag myself to classes and through projects, and it all seems really pointless--I'm just implementing what's written in the book, and eradicating the countless off-by-one bugs is nothing short of mind-numbing
Try getting involved in some research projects. It probably should not be in the CS department, but rather one of the other departments. Lend you CS expertise to a different kind of undertaking. You will also get a chance to learn about something outside of CS as well as picking up some usefull experience.
If you can't find a school project to work on, make one of your own. Again try to go outside of a pure CS project and delve into something new. Think about ways your CS experience could improve something else and then do it.
For example, when I was in school, I worked on projects for the physics department and the business department. The former needed some automated data collection and the latter needed some statistical modelling. Both provided me a well needed break from the ordinary as well as intoducing me to some real world problems.
Although I have been in the field for about 6 years now (working for a major telecom mfgr), and I still take on "outside" projects from time to time. Be it setting up a webserver for a local charity or building a remote control boat from scratch, both provide me the relief from the monotony of always working on someone else's dream. It is refreshing and rewarding and helps you out back in "the world".
In summary - diversify your skills.
Remember, You are unique...just like everyone else.
There are two problems here:
1 your course
2 you
Your course has lost your attention because it's not difficult enough. If you're just implementing something from a book, you're wasting everybodies time. It's fine for beginners, but if you're finding it boring then it's probably not challenging you enough. The alternative is that you can't be bothered to concentrate on tricky technical stuff and it's too much like hard work, in which case you need to find a career which is better suited to someone who doesn't want to think. Practically anything will do. So, if it's the latter, try and choose which does something useful like becoming a teacher or a drug dealer, as opposed to parasitical careers like law, banking, or marketing.
On the other hand, if it's a question of not being stretched enough, you have no excuse. You're at university - you have access to equipment, information and vaguely competent colleagues, so find yourself something interesting to do. Preferably something which seems feasible, but hasn't been done before. If you can't think of anything, maybe you don't have a brain, in which case see careers advice above.
The kind of project I mean is: writing some software that expresses migratory patterns of birds as music, try modelling and simulating the way flocks of birds form patterns, or creating some music visualization software that works well with classical music, or writing some software that measures the effects of mozart on brain wave patterns. If that kind of thing is too difficult write some software that respins CNN articles so that the propoganda effect is reversed, start simple with keyword substitution (terrorist -> freedom fighter, our brave soldiers -> our insitutionalized murderers, etc). Write some software that analyzes english text and determines a coefficient for it's manipulative content, then try it on everything from Rush Limbar to Richard Feynman, do something interesting for fucks sake.
http://rareformnewmedia.com/
You have a number of options. First off, plan on completing your degree. Having a degree in SOMETHING is almost always better than NOTHING. You can find jobs that are not very related to CS, but will still respect your CS degree in its requirements.
Consider graduate school. With the economy somewhat depressed, now might be a good time to continue your eduction. If you're getting bored because you aren't adequately challenged or because you aren't getting enough "meat", you may find some relief in graduate programs. They tend to be more highly specialized, and you can really learn and do some cool stuff. You are also led by the hand much less in a graduate program. Instead, you are presenting with theories and concepts, and it's your responsibility to translate those into reality.
Consider adding another Bachelor's degree. I believe somebody mentioned this earlier, but you probably aren't far off from other degrees. If you think your interests now lie in another area, you may be able to pick up a degree in that area with only an extra year of school.
Consider jobs that allow you to use your CS degree to an extent, but that you don't find mind-numbing or boring.
Most importantly, don't forget that no job is all play. Every single job you can take will involve aspects that you find personally distasteful. I'm really good at debugging, but I hate doing it. I prefer to come up with a concept and let other hammer out the details. But unfortunately, part of my job is delivering fully functional software. Like most analysts, I abhor writing documentation. But somebody has to do it, and a technical writer isn't always readily available. I can usually do a pretty good job, but it takes me a lot more time than it would for somebody who writes for a living.
Perhaps even more important, don't feel like something is "wrong" with you because your interests have changed. This happens to people several times during their life, and it looks as though you got your change at an inconvenient time. I had a similar thing happen. After three years as an Electrical Engineering student, I decided that wasn't what I wanted to do for a living, no matter how well it paid. Instead of completing my EE degree, I switched to CS with a hardware design emphasis, and I've been much happier with that. But you can bet that when I started in EE, that's exactly what I wanted to do. After getting thoroughly involved in it though, my desires and thoughts changed. You're probably experiencing something similar.
GreyPoopon
--
Why is it I can write insightful comments but can't come up with a clever signature?
If you find a job you love you'll never work another day in your life!
Bollocks! I loved my job 3 years ago, then about a year ago it started to get me down, it was mundane. It was all the things you express here.
So I quit, and did something else. I started a company with what little money I had so that I could do smaller jobs, for varied clients, keeping the interest alive. I could just have easily taken a different job, or gone back to school - the point is I CHANGED.
It worked, its fun again, now that the worst of the financial worries are (touch wood) over. I'm back to having a job I love.
The truth is that you need to find a job you love every couple of years - or just accept that your days will be spent grunting along with the rest of them, while at night! at night you turn into the mega world changing shag fest that you always wanted to be.
So stop NOW, dont even finish the year - pick something else and do THAT. NOW. TODAY, well - take the weekend to think it over then do it on Monday!
Every week you stay where you are increases your stress levels - and puts you nearer your grave!
Well I'd say since you have a semester left, suffer through it, and get the CS degree. Unfortunatley for myself I gave up on CS far sooner. It also didn't help that I had to stop going fulltime and work fulltime to pay for school. I wound up switching my major into interdisciplinary stuides. I found philosophy and msth courses more fun and stimulating, and a nice diversion from my day job as a sysadmin.
Eventually I'll get a grad degree in CS or Astronomy. I'd imagine the CS one will come first. But overall I enjoy what I do for a living, and it makes it easier to work. If you hate what you do, then doing that every day gets old quick. Since I left my old job, I have found myself with free time. And I've found myself playing with my computers at home again. And I've also found myself learning much more than I was 7 months ago.
Basically I just got fed up with the cirriculm at the university, went my own route. But wound up in the field that I wanted to be in. (My other career option was Astronomy, although I'm not as qualified for it).
"If you insist on using Windoze you're on your own."
I'm not trying to flamebait when I say wake up and smell the coffee. Welcome to the work world, even when you're doing something that you love, almost no job will ever be your dream one. There are the fortunate few, but I freaking love to program, and I'm a programmer. I love the challenge of it, I love solving something that I never thought of before, I love telling people "Yes, I can do that" when I have no idea how I'm going to do it, and then going ahead and doing it.
Do I like my job? No. You know why? Because it's not my agenda which I need to satisfy at work. It's the agenda of my boss, of my production manager, of our clients. I program PHP, ASP, JSP, pages attaching to a variety of data sources. In my professional opinion, no webpage should ever have background music, it really really bothers me when I come across them on the web. The project I'm working on today, they want the bass line of Mission Impossible droning on endlessly in the background. Yes, the same 4 bars, nonstop. I'm forced to produce content that I professionally disagree with, because the client thinks it's "cool." Doing a lot of off-by-one debugging is also part of the job. Doing programming that you find trivial and mundane is part of the job. Let me tell you how many online quizzes I've done. Oh wait, my 0 key broke off last time I typed that number. Do you know why we do it though? Because once in a while you get something you can really sink your teeth in to. That makes the job worthwhile.
Some days I come home and plop down on the couch, having completely exhausted myself in something I hate. Other days, I come home and plop down on the couch, exhausted, but internally invigorated with the awesome code I wrote today. CS classes suck. They've sucked for years. I just graduated last year, and I hated my courses. For the most part they didn't teach me anything I couldn't have learned in half or a quarter of the time on my own, if they even managed to teach me anything. I'm telling you, a real job is more exciting, because you're often blazing new paths.
Don't forget that if after a year or two of programming, you find that programming as a professional really takes the joy out of all computing for you, you can still go back to school and finish another degree. You'll also appreciate that degree more having come from the real work world.
Slay a dragon... over lunch!
I was working at Price Club/PriceCostco/Costco beamoaning my fate because when I broke it all down I realized that my job was to stack boxes neatly. (Sadly, my actual job was to make sure other stacked boxes neaty.)
I thought, "Gasp! this is my life? It's boring!"
Now I am a SysAdmin. While I read a lot more than I did when I was stacking boxes neatly (Do Not Use Cutter To Open pretty much covered my on the job reading) I am basically stacking boxes neatly. They're directories, and files, but ultimately they're just boxes.
How do I keep it interesting? I automate everything I can with Perl (man I could use an Answer::PhoneCalls module.) I learn other languages. I learn other OSes. I learn.
If you copy things out of books you will get bored. If you use books to do do things you will not. Don't be afraid to reinvent the wheel either. Just because someone has made something that sets your clock to some Atomic Clock and checks your mail doesn't mean you can do the same thing.
Remember You're bored, CS is not boring
This
It took me a long time to learn a simple fact: you can find a subject really interesting and enjoyable but not want to do it as a career. If your decisions are rooted in what is most marketable and some now years-old idea of yor adult identity as an uber-geek, then you better kiss happiness in your working life goodbye because you can't start with pragmatism and try to force your happiness into what's left. You have to start with your happiness and then find a way to make it pragmatic.
No matter what you do there will be drudge work - if you're doing what you really love it won't bother you as much as the drudge of computer science obviously does. When you're excited enough about the outcome, the necessary toil becomes a mere obstacle, something to be overcome.
You are so close to graduating it probably makes little sense to try to change your major, unless you're close to a second in something you really like (you must be getting 4:0s in something to bring that GPA up). Have you considered graduate school? If you find something that suits you better (hint: you enjoy doing it), it doesn't really matter that much what your undergrad degree was. You might even be able to design something that combines the aspects of CS you love with a topic that will sustain you through the unavoidable drudgery component. If you have the time and opportunity, one possibility is to try to design a directed study as an experiment to finish out your CS degree. Combine a programming project with some sort of back-up area of study that you might consider as a career alternative. Maybe being in the drivers seat, coding for something you really have an interest in will reawaken your interest in CS - or else it might provide a bridge to a new focus of study. But take it from someone who's been there - don't ignore your dissatisfaction, because it won't go away and you won't get used to it. These people that say "welcome to the real world" have just settled. That's a choice we all have to make. It's never too late to change, but the sooner you decide to stick to your guns and choose to follow your heart, the sooner you will start working towards being happy instead of being miserable but addicted to an illusion of security.
It Is the Nature of Information to Transgress Artificial Boundaries
And start making open source porno. Just have a bunch of people take clips and append them to the original. Eventually you'll have a full length feature film. Well maybe not "full length," I mean you are a CS major after all...
(humor)
~ now you know
Well.. yeah.. but games still pays substantially less than commercial.
My first couple of real development jobs were in games but the pay was abysmal and the industry dominated by chancers and cowboys so I moved over to commercial. 4 years later I'm getting a little bored with all this stuff and decided to have another look at the games industry. I actually find that the pay scale tops off at what I'm earning now with very few salaries coming anything near what I'd exepct to earn for a good, if dull, days work. I thought it might just be a British thing but when I checked the salary survey over on Gamasutra I find a similar situation stateside..
Plus at least in commercial I don't have to deal with the superior attitude of a bunch of mostly actually quite poor coders who think they're it 'cause they do games.. and earn about half what I do...
So.. my advice... commercial is crying out for good coders.. games is vastly oversubscribed.. go do a 9 to 5 for some dull company and spend the extra money and time you'll have on developing a raging coke habit...
t o b e
1. school does not equal work... my gosh does it not equal work! work can be orders of magnitude worse for you, or orders of magnitude better... how? because...
2. there are so many different kinds of jobs under the umbrella of computer-related work out there. not every job is about grinding through code and killings endless mind-numbing bugs. oh god no. your word for the day: transition. in other words, you can get your foot in the door with the kind of degree you have to a kind of job which relies upon skillsets that have nothing to do with the sisyphean tasks you are used to at school.
what the heck am i talking about? check out Rogerborg's post Re: Gaming... notice the various skillsets he alluded to, that have nothing to do with the mind-numbness you allude to. for other examples, use your imagination. it's all about transition dude... there's no need to find terrible regret and decide to become a lawyer or something... you can easily transition into a kind of job under the umbrella of computer-related work that relies upon skillsets that come alot closer to what you thought you were getting into.
intellectual property law is philosophically incoherent. it is your moral duty to ignore it or sabotage it
Been reading the comments here, and it's almost a psychological cross-section of Slashdot Readers. The people who're disappointed but sticking it out are telling you to tough it out and just try and make the best of it. The people who like their jobs or who handled their issues to their own satisfaction are telling you to experiment, take time off, or whatever.
One thing's the same though. Whatever you do, finish college. Going back is the hardest thing you can do; I've tried it twice - about to go for a third. One way or another, it will help show that you've got the ability to finish what you started.
Now, as for how to make it fun again? That's tricky. If you haven't done any independent coding, that's one way to make it fun. Another is to take a break from it - say, don't touch a computer over winter break or some such - and come back to it when you itch for it.
Overall though, I've only seen one comment that suggests something that's frequently overlooked: Talk to the Career Counselors. They work for a college, and they deal with the kinds of people who change tracks constantly. They're probably going to give you an idea or three about how to handle this crisis. (It is a crisis, too; burnout is never a pleasant thing.)
Furthermore, there's something else you can do. Stop worrying about what to do once you're done with college. Let the school's placement department work on that for you. As always, mixing your degree with another hobby is a good idea if possible. The market's oh-so-slowly starting to rebound, and programmers are always needed in some way, shape or form.
If you've still got time to change your course structure around, I suggest taking some serious fluff courses, on something totally unrelated to coding, or even CS in general. Basket Weaving 101 is the perfect type; you want something that keeps your hands busy and your mind free to wander. The more free time you can make for your mind, the better off you are.
Good luck to you.
You thought that this sig was what you think that I thought you wanted me to think. I think.
School sucks. Starting out in the work place sucks. But its all good in the end. Here's my short story to illustrate why.
I hated school. I got sick of studying things just for the gee-wiz value. If I had to study another abstract algorithm or data structure without really seeing the benefits, I think I would have quit and become a farmer. I was spinning my wheels; learning a lot (even that was arguable), but it didn't get me any where.
At first, I hated work. I couldn't see the benefit of what I was doing, mostly because it had no benefit. I was just another clog in the corporate wheel. I did what people told me using the tools I acquired in college. I was a factory worker, nothing more. Again, I didn't feel like I was getting any where, but for the opposite reason. My tires were firmly planted, but not spinning since I wasn't learning anything.
Somehow, I found it within to at least do it well and suggest improvements. Over time people realized I had a brain. It did take a few job changes though and a couple years.
Now, I'm happy as a clam. I'm designing and implementing software. I'm given a problem, I have to design the solution, then implement it. I'm learning, then applying it. Now, I was getting somewhere.
The point is, I don't feel alive unless I'm getting somewhere. Neither in school, nor in my first job did I have that feeling. But looking back, they were necessary steps in the road to where I am now, so I guess they did get me somewhere after all.
Not all people are alike, some may like IT jobs, some won't. I can only hope that those not really interested (but only in the money) drop out soon in these times.
As for myself, I studied physics and gradually moved into IT. I am a fanatic and never get enough of it. I consider myself lucky that I can have work that I really like, and I intend to stay into technically challenging jobs, i.e. not go into management, until I'm 60 (hope to retire then, I'm 35 now).
I keep being fascinated by all new developments and things that come along, in a faster pace than in most other professions; I guess that in the end there is a boring element in all jobs, but those that really love their profession will always see interesting things and be able to cope with the negative things that occur everywhere.
The problem is: there are lots of people into IT that don't have that drive/fascination for technology, but mainly for the money that is/was in it. They are bored by the job since they don't have the capacity or will to research things for themselves, which means that those shall get more routine jobs where less initiative is asked or desired.
If I had to choose between money and what I like, it would definately not be money. You can't be good at a job that you do mainly for money, and if you're not good in your job, your job won't be fun.
Many people are saying get away from a computer and try something "real". My advice would be to look for some cool new language or technique to play with. I develop web apps at work, and it can sometimes get broing, but when I go home, I can create whatever I want. It can be totally useless and fun, it can be a totally functioning site. Learn PHP, Java (is that still new), XML, etc. There are tons of technologies and weird projects that can be done with web development. I'm partial to it since most of my career has been on the web, but I get real enjoyment out of doing other things on the computer besides what I'm supposed to be doing. When you're only creating for yourself, you don't have to be so concerned about making it useful.
If computers are what you like, keep playing with them, just do it on your own terms.
THIS SPACE FOR RENT
I got into CS thinking I'll spend my days programming games, fun stuff and building robots (well I wasn't really THAT naive but i really thought it was going to be fun and I had started programming when I was 8, so it was an easy choice for me). And then after spending evenings and week-ends trying to get a game project going besides my day-job I realized how difficult it was. That and the corrupting power of money that made me spend too much time watching movies, anime tapes and DVDs as well as playing video games instead of working on my games project.
:(
I made some achievements, I'm not bad at all at programming a 3D engine, I'm quite able to optimize incredibly fast assembly routines and I can code really cool effects. But that's not enough to make a real game and by the time I finish my new engine some new comercial game has already done much better.
And what is it all good for in my daily life: NOTHING! I'm just another programmer doing the crap stuff again and again. My colleagues come to me when they need a problem solved as they know it's easy for me. I'm doing tech support for my fellow coders as well
Now after 6 years working in the field, I'm left with hatred for my job and I'm quite hopeless that my professional life will ever be satisfying.
And if you wanna now the funny part of the story, I've just started working on another game idea while knowing perfectly well that I won't have the time and energy to do it besides my day job.
When one is tired of Counter-Strike, one is tired of life.
My Journal
Count has a point. Before I started getting into programming, I was a musician. Guess what? That meant years of dead-end jobs waiting tables, delivering pizzas, you name it, just about every shit job in the book...all for the opportunity to get screwed at every turn by unscrupulous club owners, baited-and-switched by "record companies", and just generally living hand-to-mouth.
I finally got sick of it, so I went back to school and learned a real skill that pays real money.
Sure, CS/IT/Whatever might not be the most glamorous career out there, but guess what? You get to make *way* above average money to sit on your ass most of the day, and you don't have to depend on the whims of drunken moronic assholes for your livelihood. Well, you shouldn't, anyway. If you do, get another job NOW.
The bottom line is - quit your bitching and be thankful that you are able to do this kind of work.
In Soviet Russia, Chuck Norris will still kick your ass.
Actually find a new field so that there will again be a shortage to programmers and our salaries can go even higher.
I have been in your shoes, and that is how I ended up in programming and systems administration. I started out to be a teacher and after trying it, discovered it wasn't all that I thought. I worked at jobs that I didn't enjoy for 7 years to earn enough $$$s to get a degree in computers (I was introduced to computers and programming while teaching). I should have done it right the first time. While you are young and still in school you can change much easier than going back at nearly 30 and doing it again.
I have no sig, does anyone have one to spare?
I bet your life revolves around computers right now, doesn't it? You go to school and are saturated by computers and CS work. You go home and you're once again saturated with computers and CS homework. Hey, everyone burns out sooner or later. The key to keeping your interest in CS is to find a hobby that has nothing to do with your love for computers. Seriously.
Monotony can be mind-numbing, and can add on more than a few pounds to your already growing arse -- we call that "programmer's arse" (remember, a can of pop has 170 useless calories that go straight to your rear).
So, go out and do something. Take a break for cryin' out loud! Winter is coming shortly up here in the midwest, and I'm biting at the reigns to go cross-country skiing. In the mean time, it's rollerblades, walks, or learning how to play guitar.
I may be a geek, but I'm not a 24/7/365 keyboard-slave!
assert(expired(knowledge));
From what I've seen, the degree is the middle.
You can get your foot in the door without a degree, if you have experience. You can be the head honcho without a degree, just start your own company. Having a degree will let you rise from peon to management within an existing structure, but it will never let you become the CEO as long as you're working for someone else.
My opinion, like it matters: I think this guy has some good old fashioned burnout going on. He should probably take a semester off, and maybe do an internship at a company that will let him use what he's learned. That's the only way he'll ever know if he'll enjoy it for life. Personally, I hated school, and didn't finish, but with my goals in life, I don't HAVE to unless I end up not achieving them.
...and I've had quite a few over the last 20 years. Some have been really cool, like when I developed an Arabic word-processor and got to attend a computer show in Dubai. Others, like porting old (really OLD) Unix tools to MSDOS and spending half the day in meetings arguing about trivial bits of code, weren't so good.
One of the nice things about high-tech is that nobody cares if you change jobs every couple of years. That said, maybe I should take my own advice...
Most of the replies I read here all have quite a bit of truth to them. You should immediately find something else that you enjoy doing better. But good luck. It is very rare that anybody can say "I want to do this now; and I'm going to enjoy it for the rest of my life". This is rare because You can never know all the caveats of your decision until its too late. And when you are first looking for something you encounter mostly the good and desirable aspects of that environment. The tedium and abrasive qualities either become known later or they slowly become unbearable with time. Its clear that you have come to a point in your life where you realize that most of what you thought you knew was either false or miniscule compared to what is to be known. Well, I've got another jolt for you. You still don't know anything. (Neither do I; though probably more than you ;-) I would agree with those that suggested graduate school. It makes a huge difference in both knowledge and abilities. Unlike the original posters of this topic I'm living proof that you can get a doctorate from a near-ivy league school for free. If you want to then check into reasearch assitantships and teaching assistant ships. At most high level schools these positions will pay a pitiful stipend but will also a) pay for your tuition, and b) provide you with the necessary exposure to find your thesis topic and introduce you to the real players in the field. Picking your research department and advisor well is a key element.
But even that will only get you so far. Myself... Doctorate in Computer Science. Unfortunately what I've come to realize lately that, like you, it is a thankless career where people use you as a tool and there is very little satisfaction to be had from enployment in this field. So what do a lot of us do? We apply our abilities, training and talent outside of our employment and work on projects that others find useful and appreciative of. I believe this is at the heart of why OpenSource is so successful with minimum funding and minimum corporate planning or management. [Though we do tons of planning and management ourselves to accomplish the task.] The bottom line is we don't get paid in monetary compensation; we get paid in terms of accomplishment and appreciation. Linus didn't make zillions of dollars on what started out as a small project. But he will never have to go hungry and he will never have to eat alone. Anywhere in the world I'm sure a line would form to spend lunch with him; I certainly would! Most of us aren't that noticable but the point is that I think many of us take what we have and apply it to interests outside of our jobs and we harvest satisfaction in our lives from that instead of trying to extract it from our employment.
One of my difficulties is that what was often incorrect for ourselves earlier in life become correct or desirable later (and vice-versa).
I had no interest in biology when I was in high school. I loathed the thought of having to dissect animals in biology class and I avoided it all entirely. Almost twenty years later I find that I'm totally fascinated by it now. In fact one of the most interesting things to me now is surgery. So I'm going through life as a CS nerd. I make some money and I pay the bills. But I'm always on the look out for opportunities to pursue my other interests. So if UCLA medical school ever needs to hire a network engineer I'll be in line. ;-)
Boil this all down and I think it comes out to: You won't entirely like anything that you do. Accept the positive aspects of what you already have. Bear and ignore the negative aspects when possible. Take advantage of new opportunities in order to fill any needs not already met. But most importantly I think you need to keep a clear perspective on what you like, don't like, want, need and don't need. Otherwise it is very, very difficult to spot the new opportunities. I've been very disconnected from this and it has trapped me into enduring the same situations for the past two decades. Hopefully, this might help you out early enough to make a real difference.
I will never live for sake of another man, nor ask another man to live for mine.
Is burnout a work related injury? Can you get reimbursed if you can prove you have it?
M@
Krispy Cream is people
is what Univarsity and College are all about. And one of the things you learn, is what you like and don't like.
-... ---
Let's see... Instead of CS, I'll call it programming. Yeah yeah, there's all kinds of extra BS involved in programming, but ignore that for a moment. Programming sucks for me because of the direction in which the software world is moving: towards bloated, bulky, inefficient crap. True, there is some good programming out there. But most is crap.
The following might look like a flame, but it's not intended that way. This is just my thoughts, off the top of my head.
This starts with avoiding perfectly acceptable programming techniques just because you don't understand them. Give me one good reason that I should write some inefficient garbage instead of using a single, elegant goto. I'm not talking about jumping into the middle of loops either. Why shouldn't I mix enums and ints, in cases where it makes sense and when they are the same size? (What? Because I might assign a `nonexistant' value to an enum? Nonsense: haven't you ever heard of `default:' cases? To the computer, it's just an `int' anyway. If you know what you're doing, you CAN safely mix--if your compiler still lets you.)
The problem continues in the languages we use. That's why many skilled programmers and myself prefer C over C++. (I don't claim to be skilled--my programs speak for themselves.) For example, give me a good reason that in a C++ program, I should use slowcomotion `exception handling' code instead of just checking for NULL after performing a `new'. (This is now part of the standard, so you're left with no choice unless your compiler gives you one.) Why shouldn't I make up my own error handling algorithm? What if the program I'm writing won't work well with the ugly solution of try...throw...catch? C++ results in such ridiculous programs that are hard to write, hard to fix and hard to improve. How come there's no `resize' operator in C++ to counterpart `realloc()'? Why shouldn't you, in a copy constructor, `memcpy(this, a, sizeof(*this)) when `this' and `a' point to objects of the same class? Why is it, instead, considered good practice to manually assign each member of `a' to each member of `this'? All arguments about inheritance and polymorphism are irrelevant. The time you would have spent coding an elegant solution in C was instead spent writing 80 billion lines of class declarations in C++. Inappropriate use of C++ results in very mysterious bugs. There is no appropriate way to apply C++.
Forgive me if I sound pissed. It's because I am. Successful and effective programming is a skill, difficult to obtain. Nowadays, though, that skill is being replaced by crap. Maybe I just woke up depressed this morning (like wonderless probably did). Or maybe I'm getting increasingly upset from everything I'm constantly seeing around me. Who knows. The fact is, many of today's programming techniques are sadly in need of help.
Oh well.
Is that a game about dead potatoes?
You can do something completely different and drop CS altogether, or you can try to find something else that you can fuse into your CS major and make it interesting again... for my part, I learned Chinese and Computer Science... so my PhD work will be on fusing the two into two subject that I love.
Humorless sig goes here.
Welcome to the real world. Some of us got into CS because we love it, and there was no guarantee of a job, let alone a high paying job after school. And I graduated college in '93. Maybe I am a little bitter because there was such an explosion in the CS market after I graduated, and I had to work my way up to my current salary. But you know what? I have never had to take a pay cut, because I have *experience* now. Maybe in the future I will, who knows.
My guess is that you don't really love CS, or you wouldn't be questioning yourself. Were you just doing it for the money? The status? Because computers are now "cool"? I remember when being a geek was a BAD thing. The real people who love CS will be doing it when the market is low, like now, and won't be in it just for the money.
My beliefs do not require that you agree with them.
I don't want to be stuck in the computer industry for the rest of my life (can you say: Middle management, and other un-fun things when you get old?).
What about University politics and fighting for grants when you are an old archeologist? Or am I wrong about old archeologists?
__
Men with no respect for life must never be allowed to control the ultimate instruments of death.
GW Bu
I was programming for a long time before I went to university, mostly writing games.
:-)
I did very... average at university, mostly because I found the classes uninteresting (missing two midterms in the same term because I was hacking at home didn't help either...) I spent a lot of my time working on my own games at home instead of going to class. Maybe that's why I never got too discouraged.
As for finding silly bugs.... it gets better. The more experience you get, the fewer of those bugs you create, and when you do get them, you'll have seen them before and know what to look for first. It gets better - sometimes it just takes a while to realize you're not quite as hot as you think you are.
I'm in the games industry now, and I'm enjoying it, and doing some really cool stuff. Going to university helped, more for the aspects of project management and software engineering than hacking. It added a level of maturity to my programming skills that was absent before, which helped prevent most of the things discouraging you.
Having the piece of paper saying I know something about computers doesn't hurt either.
So, take a week off... then just program something YOU'RE interested in for a week. Then do it again. If programming is in your blood, you won't be able to stay away for long, but as others have said, you're sounding pretty burned out. Take a break.
sig fault
doctor: Is it because you were going to be a great geek that you came to me?
you I could hardly wait to throw myself into an intense, highly technical curriculum and shine.
doctor: Why do you say you could hardly wait?
you: I drag myself to classes and through projects, and it all seems really pointless--I'm just implementing what's written in the book, and eradicating the countless off-by-one bugs is nothing short of mind-numbing.
doctor: Earlier you said you were going to be a great geek?
you: What do you do when it isn't fun any more, but you'd like it to be?
doctor: Maybe your plans have something to do with this.
you: Goodbye.
doctor: My secretary will send you a bill.
end of line
A lot of people have recommended taking a break for a few weeks somewhere nice and sunny. I agree. You're too burnt out now.
But part of living a happy live is maintaining your sanity. To do that, a hobby is good, but I think you should probably take up a sport as well.
A hobby is nice, quiet, and takes your mind off of things. I build models.
However, I'm also an avid cyclist and martial artist. If I get mad at code, I hop on the bike and ride off the frustration. Maybe I'll take it out on a punching bag. I wouldn't be able to concentrate on a model if I were frustrated.
Any sport is okay, even if it's something that you do once a week. Build up your frustrations, and take it out on somebody else in a friendly football league.
Exercise is good for the body AND the mind. One is useless without the other, so take care of both, and you'll be much happier.
The best advice that I ever got was to make a list of my 3 favorite things to do and choose the third thing on the list as my career. That way, I would have the other 2 as hobbies.
It sounds to me like when computers is no longer a hobby for you, it becomes tedious. I woulud make that list, find something non-IT (or at least non-programming) related and spend the rest of your time hacking.
As someone who's worked in IT for 15+ years I can only give you this one piece of advice: It's not your life, it's just a career. Don't let your identity get wrapped up in what you do. Your job is the place where you trade the moments of your life for money. Don't sell yourself cheap. Millions of people work in virtual slavery - don't be one of them. The ratio of income potiential to education for IT work is as high or higher than any other career. Get your degree. Spend a few years making moderate income to get the experience needed to be truly valuable in your field. It probably won't be fun, but view it as an investment in your future. Take that experience and make the most money you can without selling out your morals. Use that money to live your real life, do something meaningful, help people, whatever.
That said, exercise extreme self control in your lifestyle - do NOT allow your lifestyle to rise to your income. Keep that 'starving student' mindset. Treat each job as a 'means to an end'. Always living at the limits of your income makes you a slave - don't fall into the consumerism trap. Start planning now to be the master of your money and not it's servant.
Uni is mundane and boring most of the time. Work on the other hand.. I get to play with things and solve problems that NEED solving. There aren't 100 other students working on the same problem either. And the stuff I get to do is just plain cool.
I think uni will get a lot better next year though; since I'll get to do a third year project.
Anyways, my advice: get the piece of paper, then enjoy doing stuff in the real world. You won't appreciate how much funner it can be than it is at uni.
(as for burnout.. i was a little burnt out earlier this year. there's only one solution: time away from what's burning you out. whether that takes the form of an hour less each day, or a week off every couple of months, depends upon the person...)
They are called girls. Thats what Lisa from The Simpsons is. A girl. They are soft, sometimes nice, and have boobies. Boobies are good. Once you've discovered girls (one may even be your Pascal teacher!), you should persue them. For years you won't even be able to build up the courage to do anything other than puke on them, or maybe drool and stutter uncontrollably, but eventually you may get the courage to ask one out. After another few years of that, assuming you haven't slit your wrists from the pain of rejection, one may even say yes! Even though it'll most likely be out of pity, you too may get a shot at boobi... i mean girls. Yes girls, recompiling your kernel for the 8millionth time may be fun, but nothing beats girls! Or trolling on /. ... but the hour is late, and that is a different tale ...
Nobody'll probably read the 700th post but...
I got burned out and took up weight lifting for a couple years. Aside from casual internet surfing I didn't do anything with computers, or at least anything that required creative thought to instruct the computer to do what I wanted it to.
After a couple years I got back into programming and have been happily doing it for the last 5 years. The trick is not to isolate yourself or force yourself to code and be creative unless it's absolutely necessary for a project at your job. Prior to my "break" I was forcing myself to spend about 8 hours a day in front of the computer while I was still in high school. My classes usually consisted of my ignoring the teacher and hand-writing code in a notebook (the paper kind). I was obsessed. Like any obsession, it'll drive you mad.
Is there a medical term for somebody that spends an unhealthy amount of time in front of a computer?
It isn't the school you went to, it isn't your gpa, and it isn't who you know that will make you happy in life.
It is only what you choose to do with yourself in life. Forget about money, forget about what everyone else is telling you should do. Take 2 weeks off, buy a mountain bike, head to Durango colorado (bring snow ski's this time of year as well) and free your mind from everything. You will be refreshed and ready to take on anything.
Most of all, READ. Stimulation is the only way to not burn out. You can't rely on work, friends or family to keep you stimulated, and frankly the people who can satisfy there own minds and growth are the most successfull people in the world.
I don't have a lick of college and work on financial applications and database systems. I love my line of work, but i find varying what i want to know and seeking the answer to everything i can has kept me sharp, on edge, and intriguing.
An employeer who sees this in you will snag you up no matter what.
He who dies with the most toys,
Still dies.
He who dies with the most success, dies a successfull and remembered person.
Success is not money.
DON'T DO GAMES! I think there's some terrible statistic that only 5% of game companies make money! I did the game industry for 4 years because I wanted to create works of art. I found the industry filled with the mentally ill, social retards, insane work schedules (worked 6 weeks straight without a day off once), insane hours (I hope you like 16 hour work days), insufficient pay (hovered around 35K in SoCal, totally unlivable), and broken promise after broken promise.
My idealism finally completely shattered, I left that dismal shitty life in the past, and now I work as an enterprise Java developer. I am respected in my new role and make more money than I ever thought I could. The work is fulfilling, the code is a lot easier to write than game code, and I learn new and useful stuff every day that applies to real software engineering.
Don't make the same mistake I did, especially now because the games industry is kindof melting down right now.
I finished my software eng. course last May. As the course went on I would hate it more and more just like you described. But you've got to realise that it's not the real world. Doing a course in CS is nothing like really doing CS.
I'm now enjoying working on my own small projects again, and I've a promising job possibly coming up. I'd suggest hanging on until the end of the course, and getting at least one job in the field before giving up on it completely.
/* This sig is disabled. Press CTRL-W to enable. Thankyou */
Historical quotes, references to sex AND some of the soundest advice [...] a female of the species
Maybe it's consequence and cause?
__
Men with no respect for life must never be allowed to control the ultimate instruments of death.
GW Bu
I think you're getting hammered by your choice of major to the point where it ceases to be fun. That's a real pity.
Your predicament vis-a-vis IT is different from my situation. I got started in engineering, but used computers a lot and found them to be fascinating. They were supposed to be ancillary tools and devices for helping an engineer to do a job, but, gosh darn, they're just so interesting in their own right!
It's funny. Some of the reasons I did not pick CS as a major early in my career were as a result of influence from my father.
My father was a EE and he, not wanting to unduly influence me, assured me repeatedly that I did not need to pick the same career as he. (I date myself - in those days CS and EE were closer than now.)
Second, my father told me scary stories about people he had met up with (during the 1960's) who seemed to be consumed by the computer, who were addicted to the computer, who forgot to eat, to sleep, to have any personal relationships because of the computer. From that point of view, choosing a career in CS was like choosing to be an alcoholic. So that indulging in CS and IT are morally equivalent to scoring a hit of $INTOXICANT.
So now I'm doing programming most of the time. It was not my major or what I got my degree doing. But graduate school and my job has allowed me to drift towards doing what I love. You can do that too.
If you're close to getting a degree, then go ahead and get the sheepskin. It's a useful lever just like finishing high school, knowing how to type, etc. But don't feel compelled to choose a comfortable high-paying job in your degreed subject. Rather, look for a job (or graduate school, as you see fit) in an area closer to where your love lies (archaelogy, astronomy, aerospace, charitable organization, university computer center, high performance automobiles, etc.). Then, just continue to make choices and drift towards doing the things you love to do. It's the only way.
"Provided by the management for your protection."
Posts have suggested many alternatives. I believe that you will need to do all of them.
- Take some time away from CS
- broaden your horizons academically and otherwise.
- Then look at what you enjoy
- Do what you enjoy, money will come.
- Give yourself time to do all this and remember not to blindly copy others' decisions.
I have been through something similar recently and have stumbled through the above stages, albeit unplanned. The hardest part has been figuring out what I enjoy and that's where exploring all the options helped a lot. Now things are getting clearer and I think I know what I want to do.
You could also take some vocational/personality tests to help you figure out what you may enjoy. Your career office should be able to help you. They get paid to do this kind of stuff. Make sure you get a one to one consultation. Another resource (expensive!) is Johnson O'Connor Foundation. I didn't do this test myself but my wife and some other people I know found it quite useful.
Most of all give yourself time. I extended my Ph.D. by more than a year to just try out different things and resolve these issues before going on. I should have done that before the PhD. but better late than never! So be warned that blindly going to grad school is not going to solve your problems.
Hope that helps.
p.s. I am very glad that this topic was brought up on slashdot. I find some of the posts very helpful for my own situation too.
It's true, being a computer geek has lost all of it's appeal. Even when 'geek' was a bad thing, at least you could take solace that you were smarter than the people picking on you. But now, anyone who knows how to double click can be a sysadmin.
Most stuff has already been written so programmers are basically just gluing together peices of pre-written code. Computers are fast enough that theres no sense of accomplishment by getting a routine to run faster. Face it, computer professionals are just glorified paper pushers... and the 'glorified' part is getting less true every day.
Do what I do, just use it to subsidize whatever you -really- enjoy doing.
D
The first, last, and only tech news site on the net
Maybe you don't "get very many" interesting projects, but with a bit of creativity one can make a boring job fun.
:)
About half a year ago I got reassigned to my company's testing division (it wasn't entirely involuntary). When my friends found out, they bemoaned my placement in a boring idiot job.
If I'd just done the idiot job I was placed in, then it would have been boring indeed. Instead, I spent my time writing software to automate the process of testing graphical applications on a wide array of different hardware. The project was interesting and fun, and has plenty of future extensions ahead -- all with their own challenges. In short, I love it.
If you wait for an interesting job to come to you, of course you'll find what you do boring, and see the money as your sole motivation. If you make what you do interesting, you'll be able to make money and have fun at the same time. WooHOO!
Finish the semester and take a break.
Finish the degree and take a break.
Decide what you would like to do that would be enjoyable, make money, and use your skills at the same time. Do open source programming on the side just for the hell of it.
Formulate a long-term plan for getting there. You are not going to start off in a perfect position, but once you set you goals, you should be able to better see how to get there.
I know the feeling.. 'everything's been done before..', 'this is worthless drivel', 'there's no freedom and creativity..' I can't say I've found the answer myself, but one thing that has somewhat re-excited me about computers is the prospect of having my own business and doing whatever the heck I please--and thereby actually having a chance to go out there and change the world. It could even be something simple to begin with, like a Linux based consultant. Or you could come up with a low-tech 'cash cow' that pays your bills while you sit back and relax, let your creativity roam free, play with geek toys, hack hardware and software, write Open Source software, and perhaps prepare for a more intellectually stimulating entrepreneurial pursuit. Hey, you might even come up with a great idea that makes you rich enough to retire early.
Entrepreneurship doesn't sound very good in today's economy, but keep in mind that this is a temporary condition. When the economy does recover, it's going to be a different economy than what existed before the downturn. It's going to be fertile soil for new ideas and fresh thinking. If you really want to get inspired about the future and what kinds of innovations lie ahead that will change the world, I highly suggest you read the book, Natural Capitalism. I don't agree with all of the authors' ideas, but it will certainly set your mind in creative mode. As a brief summary, it proposes that the next economic revolution will be cleaning up / making sustainable / making efficient the technologies and lifestyle created by the industrial revolution. Interesting stuff..
You couldn't figure out what you wanted to do in college... what makes you think that things change once you graduate? The sooner you figure out that you can't plan life the better! You'll finish school and get a CS job somewhere... maybe you'll like it, maybe you won't. The experience will give you some ideas of what you want to do for the next job. Don't worry about being stuck in CS just because that's what your degree is in. Your interests WILL change and you'll have plenty of opportunities to explore those options. Nobody is going to care if you have a CS degree or a Pottery degree or if you got a 2.0 or 4.0 in 5 years, but they will care what you have been doing since then. Figure out what you want out of life (AKA a ton of money and a personal harem! LOL), set some goals, and you'll slowly figure out how to get there. Just don't get tied down in responsibility until you are ready for it or you won't have that flexibility. Think of all those middle aged, mid management people out there, stuck doing basically the same thing for 30 years so they can support the wife and kids, hoping to last until retirement before getting the over 50 axe. That also includes getting yourself into serious debt like everyone else. Bank some money and you'll have more options later. (Note: all this is coming from a 25 year old who's been out in the "real world" for three years. It could be total BS! Seems be working for me though and all the successfully people I know have done the same.)
I went to school for 4 years studying architecture. I only realized in the last year that it wasn't for me. That though I often liked doing it, I simply was NOT talented at it. It was humbling to realize that many people that were less intelligent than me in a general sense were much more talented at architecture. And truthfully the idea of a lifetime spent in charette (an extended period of time spent in the studio cramming in all the final presentation work) filled me with dread.
I got so depressed I almost dropped out of school. Came pretty close, but it was my last year so I finished up. Spent two years after that partying, relaxing, getting fed up with pizza delivery and waiting tables, and trying to figure out how I would be happy spending the rest of my life. C'mon, you don't know yourself when you're 17 or 18 and go to college. You don't know what you'll like. Don't think you have to justify the money spent on school by throwing the whole rest of your life away on something you don't like.
You don't have to lose your love of the subject. I'm still transfixed by beautiful buildings and spaces. But you may not be cut out for a life working in what you love. Sucks.... but it's very possible. I decided on programming (always been interested in computers but never really followed up on it) went to CLC for a bit and discovered that I had a strong natural talent for coding. My mind's just good at it. I don't love it per se, but I like being good at what I do.
So..... take some of those silly aptitude tests. Be open to other possibilities. A CS background is very helpful in a ton of areas.
Let me first say, stick it out if you want to work in computers. The bachelors degree does mean something. Recently I starting working in an AIX unix devision. I'm a Systems Programmer 1 instead of a Senior System's Programmer because of my lack o' sheepskin. I don't mind... the sheep skin is not far off now. But in the first weeks of my job I found a love of coding that I didn't have in the class room. I was solving problems, writing custom solutions, and doing good work. It felt good to do something real. So, stick it out... you're more than half way there.
As to what to do to keep your self sane through the next few years, look at Student Government and Clubs. Most universities support rich environments for co-cirricular and extra-cirricualr activities. My college is sporting a robust Linux User Group and an Anime club I've been proud to help found and lead. The experience of being a student leader (while scoffed by many) is invaluable, and challanging. It's also rewarding to look at your institution, see problems, and be in a position to fix them!
Good luck, and may the Source be with you!
If I can't see it in Lynx I'm not interested.
Listen to this guy; he's smart.
I have been involved in recruitment for companies in the past, and I have seen the total disregard for being reasonable often exhibited by managers (even good ones, if they are just being hassled about interviews when they have better things to do -- like their job). Amongst other things, I have spoken to a number of people who had dropped out part-way through a CS degree that was "boring them" or "not teaching them anything". There were some prima donnas who had a rude awakening coming to them, but several of them were obviously quite bright and just genuinely not finding much to keep them interested. None of them ever got an interview, even with my recommendation, because the view of others higher up the tree was that if they were really that bright, they'd have stayed on and finished the course.
As for taking a break, I agree it can be useful, but be careful not to stray too far from the CS path. If you do, it's going to be hard to get back in if you ever want to; knowledge dates faster in our industry than just about everywhere else. Time out of the loop could seriously count against you when you come to applying for jobs.
I know how depressing academic courses can be; I used to love maths, but by the end of three years studying nothing else, I was getting seriously depressed. Now that I've finished my formal studies, and a CS diploma afterwards that gave me much the same feeling at the end, I actually find myself interested in the subjects again. Without the pressure -- "you must do everything on this syllabus, and you haven't got time to do much else" -- it's a different world. I've actually found myself going back to read notes on some of the more interesting courses I did -- things I barely looked at way back then, and never did exams on -- and I do it purely out of interest. Now I'm not studying it just to answer the next problem sheet, it's a totally different feeling. Keep the faith.
If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.
CS itself doesn't have to be mind-numbing either: it can be about working with people, about writing, about graphic design, and lots of other things.
Am I the only one who thought he was talking about playing Counter Strike, not Computer Science?
I must play too many games. Wait, I don't play enough.
OtakuBooty.com: Smart, funny, sexy nerds.
That statement my not be true for every one, but it does have some aspect of truth to it. There are things about curriculums that always makes some things less likable. And, probably more often than not, it's because the educators don't exactly know how to welcome students to the business world, so they just teach stuff from the book. I would suggest that, in most cases, students learn to hate what they used to love because instructors fail to show them something new with it. Instead of showing interesting and valuable applications of the knowledge they teach, they simply teach it and expect the students to see through to the other side.
You and I both know that it doesn't quite work that way (well, maybe for a few of us). Another thing everyone's momma probably said at one time or another is, "You'll appreciate it more if you work for it". Taking the easy path can be gratifying, but that still doesn't take away from the wonderful feeling of knowing that you've earned your keep. That said, it's important to know your work ethic and what you work well with. If you like something but don't work well at it, don't let it escalate above hobby-status.
Then again, this is just my advice to keep myself straight. I don't know if it will help you any, but it's here for you in case it might. :)
Seriously, the world needs fewer people doing jobs they don't enjoy.
.com days. Work can be fun, but not necessarily every day.
I've been in CS for a long time. Most of the people I've known burn out and never come back.
There's nothing wrong with realizing you want to do something else. I've had jobs that paid well and I hated, and jobs that paid ok and I liked. You should always do the job you like - it is very important.
On the other hand, expecting your job or career to provide the meaning of your life means you need other interests. The whole concept that work = fun is a hanger on from the
You might want to consider a hybrid career - maybe something like law and CS or business and CS or something like that. There's a lot of demand out there for such things. Just because you find it's not the most exciting doesn't mean you can't use it.
--- Will in Seattle - What are you doing to fight the War?
...just a year ago. My solution: I went to law school. Law is pretty easy for anyone w/a hard science/engineering background, and the law schools love having such students - makes them more "diverse." Add to that the starting salary of an IP lawyer is HUGE, and you can still put that technical education to work for you. :)
...telling a prospective CS grad to go for his Ph.D in CS or telling him to start a porn site.
From what I get, the exact reason why he loves Computer Science so much was the freedom to code for himself (intrinsic motivation, as a psych major would say). There's something fulfilling about taking your own time to code your own tool. It may be something as silly as watching a ball bounce around the screen to something as complex as writing an OS in x86 assembly, but it motivates people. Suddenly you stick them in a college environment where the emphasis is not on, "What you want, when you want it," but instead, "Here's the schedule we have to maintain and it's your job to keep up with it." You can't choose your pace, and what's worse, you're following someone elses priorities.
So for Pete's sake, don't tell him to go and get a Ph.D in something he's lost interest him. You're only scraping away whatever interest he has left in CS.
Here's what you do: go back to your schedule of learning. Don't let others dictate your methods of learning. The fact of the matter is that you DO have that sheet of paper in your hand that says you're a CS major. Leave it at that, and try to rekindle (if a spark still remains) you're enjoyment for CS by doing it as a hobby rather than a priority.
Honestly, this is normal. Most of my friends in college in the CS field who went into it because they loved it as a hobby ended up despising it in the end. Those I know who started fresh in the program because it intreagued them (who didn't fail their first 100 level class) enjoyed it to the end. Again, I think it just has to deal with how you learned CS in the first place...if you spent years of studying it on your own time at your own pace, it gets annoying to have someone else tell you that you now have to face priorities.
No this is not a coy answer. CS is just as fun as it ever was, so something about you has changed. Maybe your interests are changing, and if so, that's good. Find out what you want to do and do it.
On the other hand, losing interest in the things you used to love to do can sometimes mean that you're depressed.
I don't know you. I don't know your situation. But you should seriously evaluate the possiblity that you might just be depressed, and with the right help all the old things will start looking new again.
If tits were wings it'd be flying around.
"I never let my schooling get in the way of my education." - Mark Twain
That is a quote that I have taken to heart. I am in the same predicament as many of you out there. Before coming to college, I expected to shine in the spotlight. However, now as a Junior at a prestigious university, I'm pulling a 3.0 GPA and ~3.2 CS GPA. After the first year, I was totally disenchanted by the whole idea.
One major issue that I have found is that universities focus quite highly on theory, rather than implementation. In the long run, this is a better method of teaching, but for the short term, it is quite boring at times. Unlike other people in the CS department, I have a slight advantage in that I have learned the implementation before learning the theory from the years of part time jobs and side projects.
One thing that you must remember is that CS stands for Computer Science, that is IT IS A SCIENCE. Much of what computer science is is to guide you towards a research position.
Again, that quote by Mark Twain has helped me get through this. To me, school is just a process that I have to get through. However, it only fulfills part of my "entire" education. The rest of my education, I get on the internet, through reading technews, white papers, and slashdot (sorry..had to say it). I also focus a lot of my energy on my own projects and enhancing my knowledge in the latest technology and/or programming language. My own personal website (www.johnia.com, shameless promotion) is my own testbed to test out new technology and to demonstrate my CS knowledge. [In fact, I have been given job offers just by showing interviewers this website].
So what I would recommend is that, school is important, but not as important as your own education. Use your time wisely to set you apart from the rest of the CS dept. Also use your time wisely to enjoy what you like to do. Remember back to the days of when you created your first program and try to revive that again.
But I hope this helps. And don't worry, you're not the only one to feel this way.
_______________________________
"I'm not Conceited...I'm just a realist..."
It's better to begin the right thing than finish the wrong thing, so if this is really the wrong thing for you, then by all means, start planning you change of direction NOW, and act on it daily. But there are some caveats to that principle.
.... if you can finish out what you're currently doing and do a good job of it, then finish.
:)
Most of them have to do with the fact that it's often hard to find out what you really want to do -- as you now know. And your desires and ambitions change as you grow as a person. Your information is imperfect and subject to change. In other words, you can't plan your own satisfaction perfectly.
Also, most of us have trouble beginning the right thing until we've finished the wrong and can lay it to rest. Leaving a degree unfinished is like trying to clean your house by simply leaving.
But here's a couple of principles that I think are good:
1) Do whatever you're currently doing well. Finish it if you can. This wins you respect and credibility, which are as helpful for moving laterally from career to career as anything else. If you find that you get to a point where you can't do what you're doing well, then it's time to move -- or at least take a vacation -- very soon. BUT
2) Allow yourself periods of lateral drift in your life. They may be weeks, months, or years. They may involve travel, moving to another place, trying a series of entry-level jobs, reading widely, giving time to good causes.
3) Develop a spirituality. Everyone has their own idea about what that constitutes, and so do I: a community which follows practices, the study of religious texts, and prayer/pondering/meditation. Find something which makes you more alive AND a more humane, charitable, compasionate person.... and which gives you an inner voice that can guide you better than slashdot can.
4) Don't try to plan out your whole life. Just continually be learning new skills and filling your toolbox with things that can help you do things later. Make changes when you need to make changes.
Libertarianism is rich wolves and poor sheep playing gambler's ruin for dinner.
So, my plan is to apply to law school. I'm still very interested in tech related constitutional issues. This may be something to think about for you as well....IP, contract law, first amendment stuff with filter, there is really a lot going on an a lawyer that understands this stuff should be kind of useful.
So, just an idea....maybe go into a field that doesn't pay very well. You live like a dirt poor college student now, just keep doing it for a while and save aggressively so you can switch to something else later with no regrets.
I had the same problem in school -- I even flunked out, not because I couldn't handle the cirriculum (in fact, it was trivially easy), but because I just didn't care. I didn't see the point of most of it. Once in the real world, I excelled because I did care, because I knew that the businesses I worked in had goals and reasons and I understood them and agreed with them and I could innovate and create and see my work rewarded with more than a letter grade.
Work is much more fun than school. School is like work with training wheels. As for the things that burn people out (bad managers, shitty legacy code, etc), well, find something else do to where you don't deal with those. There are amazing examples of good coders who tackled niche markets with products they made solo and have a living off selling and maintaining a single piece of software, alone. Some people thrive on revamping old code, or fixing architectures, some people enjoy solutions in niche markets. Etc.
And maybe do something else. Change majors.
Travel. Try work.
In a few years, the actual major doesn't matter
as much as your experience.
However, not having a degree can really limit the
range of jobs.
Anyone else find it weird that this Senior is generating "countless off-by-one bugs?"
.) you 1. don't really have your head in the language and 2. aren't really learning from your mistakes.
I mean, it happens to everyone, but if you are generating "countless" ones (that's acutally a pretty good pun if you think about it . .
On a sort-of related note, I am THRILLED about the current state of the technology industry. I'm SO tired of people who are "in the industry" because it was "the thing" or because "I don't really like computers, but the money is good." Arrgh.
The next guy that tells me that he like MS because they provide job security (because they suck) is gonna be picking up his teeth.
Okay, not really, but I feel better.
-Peter
There is a difference. I doubt (I may be wrong) that you're really sick of CS - just of the CS education. By the time you're a semester away from graduating, you probably feel you could do well enough in the real world, and don't need the mind-numbing projects and textbook solutions any more. You might be right - but unfortunately, graduating is a certificate of authenticity.
A person I know has three masters degrees, in three totally different fields, for the three times he changed careers in his life. Engineering, Chemistry, and Law. He said what he was doing before just got boring, so he switched. *shrug* Finish out what you've got going now and give it a try, and if you hate it that much, go learn something else. Paying for it may be a problem, but in theory it is doable.
$0.02
I don't want to come on sounding like I think I know everything and I am telling you what to do. So, if I slip and sound that way, please forgive me.
/. feels this way. The logic is this: "if I don't enjoy what I do (my job) then every day would be just another in a career long prison sentence." However, what you are talking about may not have anything to do with this. I think it may have more to do with determination and dedication. These things can only be demonstrated in the presence of frustrating circumstances.
I have always been one to say that it is important to do what you enjoy. I think most everyone who participates on
I really hate to draw an analogy with love and marriage as people seem to have such negative views of these things these days; however I am finding it hard to avoid. Imagine a couple who start seeing each other, fall in love, marry, and divorce at the first sign of trouble. Most people would say that what they showed was not love. People, even those who are in love, can really feel very negative things for each other at times. They are certainly not feeling that gushy feeling that they had when the first stated out. In these times it is their determination and dedication that gets them through.
So, it has not been an entirely smooth road to this career I love. I am flawed. I simply can not do something forever with machine like determination without loosing a little of the emotional oomph that motivated me in the beginning. All kinds of things get in the way. Life happens. The world happens. All these things impact on my motivation and attitude. But, for the career I love, I can not give up. And, in the end, I hope the good, satisfying times outweigh the trying ones.
You have to decide if you really did enjoy what you were doing and are suffering from burn-out. In which case, some perseverance is in order. Many people have posted suggestions about other fresh ways to approach your career. (game programming, for example) If you really think it is a bad match, that you should really have never approached it seriously as a career, you really should consider other career options.
But you are the only one that can make this evaluation. You can ask opinions of people and get their input. But, in the end, you have to do what you think is appropriate.
And don't believe for a minute that there is a right/wrong answer. There are many careers that can potentially make you happy. There is no reason to believe that you were built for only one. You are who you are. You might be programmer Cliff, or Dr. Cliff or whatever you decide to dedicate yourself to doing. But, in the end, you are not your job. You are you. Your job is just something you do.
But... if you ever want to be great at what you do... I mean really great... it takes really hard work. Work that will probably stress you terribly no matter how much you love it. So don't throw in the towel just because you are tired. Love is an active thing. It doesn't just happen. You have to make it happen.
Elucid
hawk
Sure, I agree completely (even about the temptation to go back in, despite the fact that it sucks). I'd only suggest it as a first job for the young and fired up, because it puts everything else you'll do in perspective, both for better and worse.
If you were blocking sigs, you wouldn't have to read this.
Hang on, let the guy make his own mistakes. I agree with everything you say, but I still think games programming, as a first job, before you have a mortgage and kids, is an astonishing accelerated learning experience. It's not all good, but that's rather my point. ;-)
If you were blocking sigs, you wouldn't have to read this.
I prefer The Matrix... "You're going to have to make a choice Mr Anderson", or any of the other good hacker flicks, or read Weaving The Web by Tim Berners Lee, read about Linus, or Alan Turing, or any of the other thousands of people who have got us where we are today. Or maybe you could just join in hacking some open source, maybe help Mozilla get to that golden 1.0 we are all waiting for, or maybe Open Office is more your thing, or Gnutella, or even sendmail. At the end of it all it's your choice, if you want to be part of the tech community we'd like to have you, if you want to go and paint sunflowers, thats really upto you. All I can say from my expereince is life is in some ways like hacking code, the hardest part is figuring out what you want to do, once you know, you can start looking for ways to accomplish it, then you can go and do it.
Any sufficiently advanced man is indistinguishable from God
As the subject says, try working on hardware.. It's a much more rewarding field -- ASIC design companies have to come up with new top-of-the-line designs every 6-12 months. You spend a lot more time coming up with new and improved ways of doing things, you do more rigourous testing and verification to make sure the chip works (you can't send a patch later, after all!), and when you finally finish off a design, you can hold it in your hand and say -- "I made this".
I always thought I was going to be a programmer... One day I got sick of it, siwtched to ASIC design, and I'm loving it.
Never underestimate the bandwidth of a 747 filled with CD-ROMs.
You should know that most jobs that ask for a CS degree have little to do with computer science anyway. Just start browsing through your local IT job listings and start picking. A lot of the jobs are looking for photoshop and graphics arts capabilities for websites, or other business jobs rather than CS jobs.
why don't you take a sememster off, and spend that time doing unpaid work experience in a few different companies, in a few different roles to see what you like. try out a few tech companies, but also try media companies with small IT departments, banks, educational organisations.
get a mentor to help you work on what you really enjoy.
if all else fails, consider a related field that can still use your computer experience. what about librarianship. don't laugh - a lot of people are finding that the kind of knowledge you require to be a librarian is closely related to computing.
there are lots of positions out there as systems librarians, implementing and developing computer systems that directly help people that you can see instead of working in a computer company where you may never see the people that your product is designed to help.
www.blisspix.net
Simple. Switch majors.
About 3 years into my computer science major at Cal Poly, San Luis Obispo, I realized I just wasn't having any fun any more. The coding was allright, but the ridiculous and unnecessary support courses like chemistry and advanced calculus were killing me. What's more, having spent several summers in IT work, I knew that the job awaiting my graduation wasn't likely to be much better.
So, I talked to some professors and my CSC advisor. They asked what else I enjoyed doing, and after a bit of thought, I related that I'd always really enjoyed reading. "Why not try for an English major?"
A short struggle with the administration later (side note: Cal Poly's policy of "you damn well better know what you want to do with the rest of your life WHEN YOU ARRIVE!" sucks major ass), I was an English major. I show up to my first class, and our first assignment is to read Beroul's version of the Tristan and Isolde legend.
I couldn't believe it. No advanced calculations, no hyper-complex snippets of useless code, no lengthy excersizes to learn environment-specific skills that I'd likely never use. Just curl up with a good book, and enjoy. I was in heaven; it took all of one week to figure if I'd made the wrong choice. Smooth sailing from there.
Now, I know this isn't the choice for everyone. But even those with computers on the brain headed for a career in Silicon Valley might consider my path. Having spoken with many people, both at the college and in the industry, an English major is actually a plus with technical jobs. Anyone with a reasonable level of intelligence can learn how to use a program or language on their own in a matter of weeks, really. But the ability to communicate intelligently on paper is a truly unique skill among engineers, and one that will make your application stand out.
Anyway, I'll stop this post here, as I'm about to sit back and relax with several choice selections from Chaucer's earlier works in Middle English. Good luck with your dilemna, and remember: your major doesn't always have to coincide directly with your career to be useful.
I didn't see anyone mention writing your own projects. The thing that always bored me with CS in school was that the projects sucked. I spent half the time working on my own thing and half the time studying. I walked with under a 3.0 but I learned a helluva lot more than most of the 4.0'ers. Rediscover the joy of coding by coding for yourself, not your prof.
If CS was ever fun to you, there's something. Why don't you find an open source project that interests you, and join in or at least become part of the community? Scheme and Smalltalk have revitalized my interest in computing; this is largely due to me downloading and playing with Guile and Squeak, respectively. And they weren't even covered in class yet.
If computing is something you really enjoy, you should start learning and discovering on your own. Then the boring classes won't be so bad (and might turn into easy A's).
N4st0r, trixx0r h0bb1tz0rz! Th3y st0l3 0ur pr3c10uzz!
I couldn't do it. I earned a whole lot more respect for people in school after I made it about 90 hours towards a Comp Sci. degree at University of Missouri@St. Louis and started bombing. I went back a couple years later and got some A's and B's and then the next semester I bombed again and said screw it (plus I was broke!). I want to know how to learn to program better not how to do differential equations. (I started in MIS because I didn't want to do math, but I hated accounting/economics even more than the math!)
So just keep in mind that if nothing else, you have earned that dang degree and not everyone has the oppourtunity or willpower to make it through school.
Honestly though, think of computer science as your backup. Go find something that interests you and make a contribution to that area with your computer knowledge.
The man who trades freedom for security does not deserve nor will he ever receive either. - Benjamin Franklin
-Don
Take a look and feel free: http://www.PieMenu.com
When you do, you'll see how much fun it can really be. You get an opportunity to strut your stuff in a social setting. For sure, the social aspect is the fun part, it drives you on to bigger and better things. It's a virtuous circle, because as your skills improve because of the social support, your positive social feedback increases and you try that much harder at the hacking.
Not to mention the satisfaction of building something that will last, and being part of something that matters.
Life's a bitch but somebody's gotta do it.
Throw your mama off the train.
I started my degree in '95 when I hoped to be making maybe $20,000 when I graduated. Part way through the course people discovered Y2K and within a year of graduating I was up over $50K and starting to look at $100K positions. While I chose CS because I loved it, it got to the point where it felt like we were owed the $100K paychecks and to take anything less was an insult to our skills.
A transcontinental move later and I moved right in to the Californian IT recession. At first I wasn't prepared to lower my sights because... well, how was I ever going to make it back. Quite a few months of unemployment later, I'd got over myself. I'd forgotten about the ridiculous money (after all, they pay us for doing our hobby) and simply wanted a chance to do what I loved again. Once that started coming across in interviews I landed literally my dream job (and for pretty much the salary I wanted in the first place).
The moral of the story is that CS is a geek hobby that got too much money thrown at it. A million idiots who should never have been involved gold-rushed in and those of us who were geeks chased the money not the love of it. Spend some time being unemployed and the money stops being the issue anymore - and the love of CS for the sake of CS comes back.
Not the most fun sounding option in the world but, honestly, I've never been happier.
I too am slated to get my degree in May. The comp sci curriculum in school is ok and all, but just too damn boring really. The real world isn't like that. I had a job when things went down, and I've found two other places to work since then, and in the one that shutdown, and the one now (but not the crap in between) there is a lot of 'real' computer work to do. School is, for the most part, rehashing problems and techniques solved long ago with tons of documented, step-by-step solutions, which just take the time of following through those instructions, but very little in the way of actual original thought. At work, it is a matter of, we are at point A, we need to be at point B, we have no idea how to get there, and no one else knows, else we woudln't be bothering. You actually get to apply your skills rather than simply prove you can follow instructions. School doesn't present problems without a known solution, because that would be unfair, especially if it is not possible. Companies, on the other hand, are all about the unknown and potentially unfeasible problems. Much more rewarding than schoolwork.
XML is like violence. If it doesn't solve the problem, use more.
What do you do when it isn't fun any more, but you'd like it to be?
I usually find someone new. After a while she becomes old and boring as well though, and I try to go back to my wife, but she's pissed off about the cheating and has filed for divorce by then. Fortunately careers don't take things personally. You can fool around on them and they let you come back every time.
ok then your [sic] infringing on my copyright! Could you as [sic] me next time before STEALING my comments for your own?
For every story like the above one, there's at least 10 more that tell a miserable tale of being fucked with constantly, being close to death, being bored out of your fricking mind, and constantly being in attendance to shit no one cares about.
"Sarge, why am I doing this?"
"Because you were ordered to. Now shut the fuck up."
It's about that glamorous most of the time.
And yes, it makes one appreciate civilian life and IT jobs in particular.
Quitchyerbitchin.
Or don't. But at least do the rest of us the service of being miserable in the military for a while. *Then* you'll quit bitching.
Please mod this post only if you think others should/n't read this. I have enough ego^H^H^Hkarma. Thanks!
1. My school experience has been a rich one. I did 1-1/2 years in California, decided I didn't like the culture there, and returned to the Northwest where I've been completing my studies. I've met a lot of different sorts of people over the last 4 years. Interacting with them and learning from them has been one of the more valuable facets of my education.
2. Everyone wants to do the Big Thing. Sometimes when people fail, they become depressed as they realize that they aren't "as smart as I thought I was." This is entirely self defeating and needless. I used to get depressed when I heard about 16 year old kids porting XFree86 to Macintosh. Or think of the girl in elementary school who knew multivariate calculus and couldn't stop asking questions to which the teacher always replied, "I just don't know." Now, I realize that these people, no matter how intelligent, are completely lacking in social skills and are, generally, quite maladapted to reality. That isn't the sort of thing I'm aiming for. I want my life to be balanced and comfortable, and I'll do what's necessary to make it that way, whether that involves CS or not.
3. I found that pursuing an alternate field of study is helpful. I decided last year to minor in physics, and since I only have three terms left, I am really cramming it in. I feel more like a physics major than a CS major! It's really fantastically distracting, and it seems to help my performance in the one CS course I'm now taking (AI/Combinatorics). Now, I'm excited about combining AI, CS, and physics, and doing my own research in directions people haven't explored before. It's fantastic.
If all else fails, turn to spirituality. No, I don't mean organized religion; I mean sitting down on a log in the middle of nowhere and listening to the Earth. Don't ponder. Don't meditate. Don't strain. Just listen. Relax and let life flow through you, and see where you go. You're on an incredible tour of Planet Earth and you shouldn't miss out just because of some pesky computers.
In high school, I used to compete in math (I was taking Calc 2 and DifEq in my senior year (hs)) and I had also done a bunch of programming on the side.
;) )
First year of college I was so sick of math, I decided to not take any math courses, and didn't really feel like taking humanities, so I just took a bunch of programming courses for the hell of it.
Second year of college, I was refreshed and got into the groove again, and I took a completely full load of math, science, humanites, english (etc, all the required) courses. This is my third year, and now I'm dualling in both Math and CS, and each semester I'm switching the load (ie: this semester i took mostly CS courses, next semester I'm taking mostly math courses; with something like Psychology added for flavor
Anyways, this way I don't get bored with one thing too much, and when I'm away from it for a few months, I begin to want to go back to it; because of my hiatus from programming all last year, this year I've started again with a completely renewed enthusiasm....
You just need to add variety to stay interested...
but anyways, i think that's enough for now
Ah yes, girls. Those mysterious creatures who hold the other half of human existance. While you're on your reverie about how beautiful love is, you failed to mention the dispair of rejection. It is impossible for a girl, who keeps her body in shape, to experience the type of rejection that all male geeks know and have come to accept as a way of life .
you think girls don't get rejected? everyone gets rejected at some point in their life. it's just that most people don't wallow in self pity when it happens. they pick themselves up, dust themselves off and explore other avenues. you can't force someone to find you attractive, or to like you. if you feel there's something about yourself that repels others (or yourself), do something about it, don't just sit there and feel sorry for yourself. guaranteed, self pity isn't sexy.
All that a female has to do to get some is look pretty and let the highest bidder into her pants. What of the lower bidders? What about the geeks who can only bring kindness and attentiveness to the table, chips whose value pales in comparison with what the jocks have: violence. Therefore, a male geek is always destined to look longingly at the jocks who have such incredible sexual value that they can often sleep with a different girl who is more beautiful and sensual than the last every week.
Maybe those jocks don't only value them for their looks. Not once in this post did you mention anything other than the superficial qualities of women. the closest you got was "more beautiful and sensual than the last", but even then it was attached to beautiful. if your kindness and attentiveness is only something you do to get "into her pants", and only if she's beautiful, it's not going to get you very far.
To the young ladies of college, I say fuck you. Fuck you feminists who blame the actions of your abusive boyfriends on the kind geeks. Fuck you optimists who have never had to hit on a person in your life. Fuck all of you. All we want is the joy and happiness of a relationship that can instantly render meaningless the cobwebs of antisocial lonliness.
Okay, the logic part of my brain is in pain here... you want the joy and happiness of a relationship that can instantly render meaningless the cobwebs of antisocial lonliness?
you can't render your past meaningless. you need to accept it and move on. your past doesn't equal your future, but if you deny your past, you won't get to the future because you won't learn from your past.
saying "fuck you" isn't a solution to antisocial behaviour or loneliness. antisocial behaviour from yourself will make you lonely, as you're isolating yourself from society... good ways to do this are to be a) defensive, b) blaming, c) bitter, d) abrasive (just for clarification, I would class "fuck you" as abrasive). if you want to be a part of society, you may want to avoid being the above.
you can't rely on someone else to clean your life up for you, it's your life, look after it yourself. take responsibility for your actions and if you want something changed, change it!
and a relationship? up until this point I thought you were looking to get laid... are you sure you're looking for a relationship? because that's not the signal you're giving off.
We will never get it, because it is up to the girl to choose who she lets into her pants,
of course it's up to the girl who she lets in her pants. otherwise, it would be rape.
and she will never choose a geek.
many girls have geek as their preferred flavour of male, for many more girls it's an undiscovered but intriguing flavour. don't associate being alone with your geekiness, it's far more likely to be something else.
Now I could post this Anonymously and avoid lonely geeks modding me to hell, but frankly, this is more important than slashdot karma. this is not meant as a personal attack, or an impersonal one for that matter, it's an opinion, to be read and considered. what you do after that is up to you.
don't waste your life feeling sorry for yourself, one day you'll stop, and wonder where the years went.
everyone has something that somebody else is envious of, everyone has something special about them and no one appreciates what they have the way they should.
I have seen far too many lovely geeks waste themselves in self pity and loneliness to not say something in response, and put my name to it.
given some of the responses to this post, there just aren't enough mad passionate affairs in some slashdot lives.
it's just an affair fellas, it doesn't have to be the end of the world, the end of your life or even your whole life
but given that sex is a natural stress reliever, you may find yourself more stressed without it.
if this affair stuff all sounds too hard, get a pet... a dog or a cat or a fish or something... and fall in love with that instead.
if you think this affair stuff sounds really fun, play it safe if you don't want your sex life ruined by disease, and take precautions if you don't want to start a family
Stick your head outside the computer lab. English lit. and anthropology majors are a good bet.
take this woman's advice!
Seriously,
IANAP But, you sound like you are suffering from depression. You MUST talk to someone about that. You also have to ask your self WHY you
rate yourself so much on grades? A 3.0 (out of 4.0) undergraduate GPA in CS is pretty damn good. Also, grades in CS don't have anything to do with how good a developer you can be. (Oh, yeah, all those off by one errors? You have those because as a senior in CS you are a stone cold newby at programming. You'll get past those pretty soon.)
On the other hand, I understand what you are saying. I started college as a history major (planning to be a Lawyer) that got boring, so I changed to English (creative writing), and then to CS.... Well written code is a lot like well written poetry. Doing what you like is the most important thing.
On the third hand, you might just not be cut out
for a life as a developer. A LOT of talented people went into CS in the late '60s, the early '80s, and the late '90s because that was where
they could make the most money. Then they found
out that developing code was like doing home work
all day long and they hated it. Most of those people stay in the field for less than 5 years
and nobody misses them. And, they are a lot happier doing whatever it is they wind up doing.
So, First, talk to a shrink. Get some perspective.
Then think about where you are headed.
Stonewolf
P.S.
My salary history looks like a saw tooth wave. It goes up for about 10 years, then goes backwards in a short sharp hop, and repeat. Right now my income has dropped to zero. Looks like I have a good chance of geting up to 50% of what I was making last month.
I'm majoring in CS at Georgia Tech, and believe me, the tedium has driven me to the edge. Came a point where I avoided all coding jobs in favor of design work.
Then I picked up 3D Studio's MAXScript, and overnight I got back in the habit; I got really carried away with small scripts that turned into major plugins.
Then my interest in video games started bleeding over to the coding arena. Wasn't long before I had the urge to write all kinds of video game code.
So it happens to the best of us. I suppose my advice would be: step back from your college classwork, and try to identify something you really enjoy that's codeable, be it short graphic demos, OS utilities, whatever floats your boat. The problem I had with classwork, which I imagine you're having too, is that it's just -boring-, and not very gratifying at all. Find some kind of code that you find gratifying and your spark might be rekindled.
Also, do consider your being depressed, and take it seriously. I made myself go see a counselor here at Tech, and it's the best decision I ever made. Made me feel better about where I'd been and where I was going; I'd recommend it to anyone, depressed or not! If nothing else, it gives you someone to talk to when friends are in short supply, due to time shortages or what have you.
Try to identify why you wanted to become a coder in the first place and go back to it. Rekindle a hobby-level interest in it again, refresh your memory, and work your way up.
i'm graduating in May, too, with my EET degree. also not real happy with school anymore and really scared of the future. wanna start our own company? :)
spacefem.com
If you were evre realy excited about CCS, the excitement will come back. Your just burned out on school. Get the heck out and find an inetresting project to join.
Thats is, unless your whole motivation really was "at least it pays well"{ in which cvase your finding out to olate that you went into the wrong field. Don't do things 'for the monmey', you will be bad at them. Do them for love and money will find you because you will be great at them.
If THIS is the case, I'd suggest you fiure out what you REALLY like to do and get a masters that wil let you do that for a living.
As last suggestion, you will hit the doldrums at variosu times in your career for various rasons. Whats always pulled me through are side projects of my own that keep my excited and learnign new things.
Take a cue from Feynman...remember to play around with things. You got into CS in the first place because you like something about it. Maybe the problem-solving, maybe logic, whatever. Create fun projects for yourself doing whatever you like, even if it's pointless, even if it's been done before. In Feynman's case it led to some great research.
That said, I'll echo some of the other posts in suggesting you explore some other areas. I had a similar crisis my senior year and took Intellectual History, Abnormal Psych, design, and some other stuff. I ended up back on the same path, but with a far better idea of why I was there and where I wanted to go with it.
And then go read Barstard Operator From Hell, take some tips and join the Dark Side of the Network. Rule over the Lusers with an Iron Fist of Fear!
Personally, I cant think of a better job than Sys Admin, especially if your a BOFH.
"Old Rallydrivers never die - they just fail to book in on time"
Yes, 'tis me! I went to using Rogerborg because Roger was already taken on some servers, plus if you're borging, it's only fair to be open about it. ;-)
I haven't Netrek'd in years unfortunately, as my cable modem doesn't play well with the RSA check. Although, thinking about it, if it's a getpeername/gethostname mismatch, I had to hack that to get around the RSA check in the first place. Hmmm... nostalgia ahoy!
If you were blocking sigs, you wouldn't have to read this.
I wasn't referring to a personal friend. The people in question were prospective employees -- students and recent grads/early finishers -- I had met while attending a recruitment event on behalf of my employer. One was so obviously talented that I personally recommended that he be interviewed, in spite of not finishing his course. He wasn't.
Management ruled him out immediately on the basis of the lack of degree. There were plenty of other candidates who had them, and they weren't about to stretch scarce interview resources to check out someone who didn't. There was no "not putting themselves on the line" about it; the lack of degree stopped them getting further in the recruitment process, end of story.
Some employers will see past the lack of paperwork, sure. You were lucky enough to find one. My original point was simply that for many employers, even otherwise good ones, you will be File 13'd before they even read the rest of your CV if you don't have a university degree.
In that light, it would be foolish for most people to give up a course partway through the final year. You'd have to really be suffering, and it sounds as though the original poster was just feeling a bit tired out, which happens to many good people as they go through uni studying the same subject for several years. But for many people, this feeling passes, often as soon as you've finished your course and the pressure lifts.
If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.
Part of getting an academic degree is proving to potential employers that you can do the grunge work. You won't bail out if you have to do some stupid stuff along the way.
.... . Fill in something that is better at your old job. "closer to my home", "nice trees around the office building" anything. That indicates that you need a good compensation for them to "buy you out" of your old job.
So: Go ahead and graduate. Find yourself a job.
You might end up at someplace where you end up writing stupid HTML for the rest of your time there. That's fun for a while. Learn HTML & JavaScript, and look for a new job.
You might end up in a challenging job. Enjoy, make the most of it, stay put.
Actually, if you end up with a poor job first, that's GOOD for you: You always have a MUCH better chance of getting a good salary if you've been through the negotiations once before, and if you're applying while you already have another job.
You're eager to start to work for them, the job looks fine, but
Roger.
The PC support market is saturated by people who bought a crappy PC an loaded on a pirate copy of Office. [...] I'm seriously looking at museum studies of some sort.
Actually the computer museum market is saturated by people who bought a crappy PC and loaded on a pirate copy of Wordstar.
__
Men with no respect for life must never be allowed to control the ultimate instruments of death.
GW Bu
After you become a professor you have to go on all kinds of adventures recovering lost artifacts from all the corners of the earth. Haven't you ever seen Indiana Jones or Relic Hunter?
Yes, bu in-between you have to go back to your University and teach students while you are eager to show Marcus that Cross of Coronado in your pocket. That's the boring part of the job.
__
Men with no respect for life must never be allowed to control the ultimate instruments of death.
GW Bu
Many advanced CS courses are trying to teach you a concept, and most profs give you leeway in how to implement that concept. Just because everybody else is writing the code in C does not mean you have to use C -- pick a different language, maybe one you've never used before. The assignment may be mind numbingly boring in a language that you already know, but it becomes an interesting challenge in a new language -- and you personally get something out of the class that nobody else did.
I used this approach and it definitely changed the way I felt about school.
If you can't make school fun, build something fun on your own.
- Is there something cool that you have heard about but never tried?
- Is there some library/function/module that you have used, that is just a "black box" (give it input, magic happens, and something different comes out) Have you ever wondered how the magic happens? Try implementing it yourself!
- Do you have your own website? If not, build one, if you dohave one, make it better! (it helps if you are passionate about whatever the subject is). HTML is boring -- Learn how to make things interactive with CGI or Flash
- Have you set up a Linux server or an Apache server or an Oracle server? Try it!
If you pick the topic, you are your own boss -- you can go as deeply into one topic as you want, or quickly move on to something else. This gives you a chance to try different things to help you narrow down your career choices. But try to pick topics that will help you in the "real world" -- You can spend days generating an alien landscape with a ray-tracing program, but will that help you get a job that you will like?(witty sig needed)
Drink heavily. Often.
Funny, everything I've read about network administration says you'll feel right at home. The hard part will be going back to network administration after being an MP. You'll miss the rifle.
I had a somewhat similar experince as this guy. When my senior year came around in my Mirobiology undergrad program, I finially had the opportunity to do "real" experiments, instead of follow-the-book ones.
I hated it.
So I finished up the bio degree 'cause I was already so close and looked for other things to do. I ended up writing code.
But here's the cool part: It's not that I love debugging programs, or that I like hacking together some project for a clueless PHB. In fact there is nothing in CS itself that really gets me going. I like it, but I don't love it.
The trick is to find something that lets you take your wide variety of knowledge and do what you love.
So now I work in Bioinformatics, and I really like what I do. It has the parts of microbiology that interested me enough to get the degree, without the stuff I hated. And I enjoy writing the code because of the subject matter. I'd be bored out of my skull if I had to do the stupid programs the CS majors in school did, or something like an insurance program. But because I am interested in the problems I'm solving with my code I like doing it.
on what you do and where you want to go.
I never said a degree was needed to work.. only that it's often the beginning, not the end.
You are doing great. Fantastic. If you feel you can continue to do so for the rest of your life, and not having that degree won't hold you back, then there's not much reason to get it, is there.