Is Programming a Dead End Job?
Embedded Geek asks: "There's an interesting opinion piece at Embedded Systems Magazine about [embedded] programming being a dead end job. The author cites burnout ('Pushing ones and zeroes around doesn't sound like a lot of work, but getting each and every one of a hundred million perfect is tremendously difficult.'), prestige, and skill obsolescence as big reasons for programmers to quit or to go 'over to the dark side' and join management or marketing positions. While the piece primarily addresses embedded programmers, the issue is rising for IT workers and other tech workers. When the age issue is combined with the export of jobs offshore, it makes me nervous just to be pushing 35..." Even though the market is going thru a rough patch, and the number of detrimental aspects to programming are increasing (ageism and so forth), I still do not feel that programming is a dead end job. Computers are going nowhere folks, and as long as they are around, programmers will be necessary. People who are in this career for the money or the prestige may not like it after a while, but the people who are in this for something else will tolerate quite a bit before deciding to opt out. The simple measure here: "as long as you love doing it, you'll keep doing it." Isn't this true for any career?
Because no manager will ever allow a programmer to be paid as much as himself. therefore a programmer will always get less pay until you join them.
simple economics... You will NEVER see a CTO or CEO that is a programmer.... it isnt allowed.
(Note: Bill Gates is NOT a programmer. He might have been one in the past but that was not what he was good at. he is good at marketing and Business)
Do not look at laser with remaining good eye.
I don't think of it as "dead-end", but maybe as a "losing game". I don't think we (programmers) can ever know as much as we want or need to know, but we get by somehow. We are constantly fighting against these issues, and are holding our ground, only because they (business) needs us. That is life, many jobs are like this. (maybe the medical profession, how many doctors know everything we would like them to know?)
Also, my approach to programming for a job is this: do what you love to do and money will follow. Maybe not all the money that you dream of, but if you love it enough and work enough, you can make a living. But you probably won't be a rock star.
room101 -- how much can you stand before they break you?
(they always break you eventually)
They'll have to pry my keyboard from my cold dead fingers.
The Blaster Master Fighting for Truth, Justice, and Evil Pie since 1979
I know, first person observation isn't an accurate reflection of a marketplace, but still...
yes i run a goth/punk/emo porn site.
And is exactly why Loki lasted as long as it did..
"I can't give you a brain, so I'll give you a diploma" - The Great Oz (blatently stolen sig)
I think that programming is by NO means a dead end. Sure there is a bit of a tough time right now with the economy in its current state. But, we are just now seeing an emergence of whole new computational fields. These mainly being in the life sciences arena. Genomic sequencng projects are quickly overloading scientists with raw data that someone needs to turn into usefull information. The area of developing these tools is vast. Possibly more important will be people who come up with better algorythms for predicting protein structre and interactions based on sequences. This is an amazing field that has the promise of keeping computre scientists, biologists, and bioinformatics people busy for decades to come. I think the field is ready to make leaps and bounds.... and most definitly not a dead end.
I highly recommend the book "The Art of Innovation" which offers great ideas for kkeping workers engaged.
"I don't think it's selfish, to eat defenseless shellfish." -NOFX
Programming is a job. Ideally, you entered into it because you kinda like doing it. You often start out with maintaining or adding to other people's code or doing highly specified stuff. As you progress, you get more input into the design aspects, and perhaps even the direction. What could be better?
It's work, folks. It's not always going to be writing slashcode while sipping vodka in the Bahamas, but as jobs go it has a hell of a lot more growth and creativity than coal mining or clerking. I'm happy to be in the programming field. It beats gutting fish (an earlier job of mine).
A.
This is such a commonplace in IT and it really chaps my ham. If you can't keep up with the field, get out, but some of us don't have any problem keeping our skills up to date. No amount of whitepapering will eliminate the real value of experienced programming talent. Back off your HR dogs!
illegitimii non ingravare
You get into you because you like it, the pay is better than McDonalds, and your social skills are such that you can't interact with customers.
The things that make a person a good programmer are the same ones that stop you from being a good manager. So you can't move up and you're too valuable to the company to move down.
D
The first, last, and only tech news site on the net
... even if that means getting less paid.
Two reasons:
1. I enjoy programming, and I have (some) skill for that.
2. I dislike managing, economics and the like and I have zero skill for those.
If it were for the money I would have been something else. But as long as I have enough for a living, I don't care.
--- Sueños del Sur - a webcomic about four young siblings
Personally, flipping burgers is a dead end position as I understand it. Doing the "same thing" in it of it self is not a dead end career track. As long as you like what you're doing, then that's all that matters, and making lots of money helps too.
Computers are going nowhere folks...
Guess I better just give up the idea of a job I love doing and learn to hate insurance or something.
Gonzo Granzeau
"Nothing the god of biomechanics wouldn't let you into heaven for.." -Roy Batty
You have to keep learning and changing, othewise you burn out, get stuck in a rut and turn over to the dark side
I originally got into programming because I really love to do it. I can sit in front of a computer and hack away for hours (days) on end and never tire of it. However, at work, I often start to feel what the "burn out" effect that the poster was talking about. I've come to realize that programming is just half of the equasion. It matters what you are programming as well.
On my own personal projects, I get to choose something I'm interested in. At work, I don't. It amazed me when I realized that when I was feeling most "burnt out" was when I was concentrating more on my work projects and less on my personal projects.
So, now my #1 concern when looking for a new job is, "am I interested in what I will be programming?" If the answer is no, then no amount of "cool technology" or "cool workplace environment" can make it worthwhile.
"Don't blame me, I voted for Kodos!"
I think part of this depends on how broad your skills are. Changing careers is very common these days, sticking with one career until the end of time is not. If you've actually spent the time to expand your education (and yourself) to something aside from a few specific thats will get you a good job out of college, then you will have the ability to migrate horizontally and vertically in life. I think it is fairly safe to say that you are less inclined to "burn out" if you are a jack of many trades, as opposed to a master of one.
"Things are more moderner than before- bigger, and yet smaller- it's computers-- San Dimas High School football RULES!"
My name is Earl and my name is stitched on my jumpers. Except it's not Earl and I don't wear jumpers. My name is Phyllis and I have a plastic card key-name badge. I am a code crunching monkey who slings all day at the bottom of the food chain for asshole users and clueless fucking managers. You will never let me do it right so I will do it over. Forever. That's why I'm indispensible. Now let me get back to my soul sucking veal pen cubicle so I can shit out some more gorp you don't give two shits about whether I'm proud of it or not.
At least it's not the fucking helpdesk. Then I would drink bathroom cleaner.
Software engineering, compared to most other fields, is still VERY young and immature. Despite the fact that "pretty good" software is being produced today, as the field matures there will be vast improvements in the quality of software applications. For many many years, there will be a need for talented programmers to produce the latest and greatest advancements in software.
:)
Don't panic
Lately, he's been working as an independent contractor for programming Windows. He's been offered a position doing architecture design. He loves coding, and will probably do much, though not getting paid for it.
He feels that this is a very good step up, and no longer a "code monkey". He doesn't want to be in management (feels it would be the touch of death for him), and feels the same with any other position.
Long story short, he loves programming, but after 20+ years, he's going into archetecture of software. Programming definately helped him get to this level in his career.
Karma? Karma? I don't need no stinkin' karma.
My dead end is Mai Tais on the beach and more programming! I'm loving it.
I started coding for pure fun. Turned that fun into profit. Layed myself off. Now I just have fun, no profit.
Truly, a 'real programmer' doesn't give one hoot about a successful career and impressing the Joneses. He is like a crack addict who will live in a shambling garbage heap just to get his coding fix. If selling his wares gives him a mansion and a fast car, then so be it, but given a choice, he's always choose the addiction.
As long as you slave away for someone else, that qualifies as "dead end" in my book...unless you are slaving away with a plan. Either a plan for a new job (going from programmer to managment) to slave away in, or a plan for financial freedom.
When you stop having ambition is when you start having a dead end job.
A modern day witchhunt.
Everyone, and I mean absolutely every person I talked to told me to go into programming. I think people who don't understand the market to well see people like Bill Gates and think that there must be tons of money for geeks to fork in. The problem is that adults indiscriminately influence students to become 'computer professionals'. The reason I decided to take a different route is that I'm afraid that as more and more of these programmers flood the market place salaries are going to go way down as job opportunities become less prevalent. Besides that, computers are my hobby and I would like to keep it that way. If had to look at a computer screen all day I would hate the thing. It took me a long time to send this post between other tasks I hope its not become redundant already, but I will sent my apologies now just in case
Business News and Resources: www.usasource.net
Whether is embedded or systems programming, and I've done both, it seems that all the fun has been taken away. When I started working at Bell Labs 15 years ago there was a lot of excitement around software. Software engineers were the cognizenti of the tech industry.
This no longer seems to be the case. Perhaps its dot com fallout but I have been less than enamored of this industry for the last few years. I feel like we have become the tech industries factory workers.
And I am not talking about prestige, either. You know what? I LIKE being able to wear jeans and Tshirts every day. I like having flex time. I like working with technology. I like talking to the IT guys about PCs and stuff, and having them give me old equipment that they are going to throw out. I like that stuff. And I am not a programmer, I am in QA. But the atmosphere is the same for the programmers. It seems like those who aspire to be managers either are told, or feel the need, to "clean up their act" and hang out with other managers, dress up a bit, and shmooze. I am glad I don't have to do that. We have a pretty sweet work environment, which means a lot. Not everyone can say that. And in reality, pretty much EVERY job is a dead-end job. Where do you want to go, anyway?
My beliefs do not require that you agree with them.
If that's the accepted definition of a dead-end job, then I sure hope it's true. Those of us who have coding in our blood don't want to do anything else. I've been coding since I was 8 years old and it's still the only thing I really love to do.
Die-hard coders live for the crunch of a deadline; it's when we're at our best. If it means we have to go without sleep or food or hygiene then so be it, we couldn't be more happy.
When we have spare time, we code. Utilities, games, time-wasters, whatever strikes our fancy at the time. How many people go to work doing something all day and then come home and do the exact same thing for fun, and still enjoy it?
Speaking for myself, I can live comfortably off of a senior programmer's salary all my life. The extra figures don't mean enough to me. I love every aspect of coding and have no interest in a management position. Having just completed a software engineering course that felt more like a management course, I now know more than ever that this is true.
Some of us are just born to code. Those that aren't can probably tolerate it for a while, but then they'll want to move on. I think that's largely true of any profession, not just coding.
As for me, I hope I can code until I die.
The actual act of getting paid to program is a dead-end job. The act of getting paid to produce any kind of product for someone else is a dead-end job.
The reason is there's always going to be a finite amount of money you can earn. There's only so many hours in the day, and only so much people are going to be willing to pay for the hourly output of a single worker. Unless you produce intellectual property, and are one of the very, very few who can produce IP that everyone wants and will pay for, you're never going to escape the fact that your earnings will butt heads with an asymptote at some point.
Real money always has been, and probably always will be, in starting a business and skimming off the top of other workers. Once you can pay other people less than you can get for their work, you have escaped the limit, and your "job" is no longer a dead-end.
This tagline is umop apisdn.
Let's look at how things are. Development has got a bad reputation. Why? Well either stuff takes too long, stuff delivered is not what's required, stuff is unreliable and stuff is surrounded by a huge layer of bureaucracy.
Programming should not be a dead-end job if you can communicate properly with your users and deliver wha they want in a reasonable time. Traditional programming - meaning locking yourself away to play with the most effecient search algorithm rather than creating anything useful - is a dead end profession.
If you can solve real problems for real people, then you are useful and ought to be regarded as such.
This sig made only from recycled ASCII
While a machine may compile/test code for errors, it cannot replace the thought processes/creativity of the human brain. Without this, you have nothing - it has been stated here on several posts already that it may not be a glamour position, or the highest-paid in the company, but it will always be there. Where is all the code going to come from if there are not programmers actually programming. This article seems to paint a dark picture, but it really sounds more like an embedded programmer is burnt and thinking about a career change and decided to share it with us...
...we are from the government - we are here to help...
"Computers are going nowhere" should probably be synonymous with "computers aren't going anywhere" (which I believe is what Cliff intended), but they have very different connotations.
Karma: Good (despite my invention of the Karma: sig)
I've been programming for pay about 12 years now, and some of what Mr. Ganssle says is true: the pay doesn't increase as fast as a management or sales job does, and many managers will opt for hiring the young programmer, fresh with knowledge about the new technologies, as opposed to the old guy with his experience in COBOL and Assembly.
However, on the second point there is a solution for us aging programmers: stay knowledgeable on the new technologies! If you are a programmer who keeps up with the trends in technology, you are a much more valuable resource than the newbie fresh out of college! As the industry (and workers) get older, there will be companies that need programmers who know their way around the old systems AND who can program with the young guys too! If you keep your skills up-to-date, you should have no problems finding a great paying job!
Dead end job?? I think not.
Attention all planets of the Solar Federation! We have assumed control! - Neil Peart
This doesn't solve the problem, of course, because there are few fellowship positions available and there are few who can really fill this niche role, but it's a start I think.
CrazyLegs
"Pork!!" said the Fish, and we all laughed.
Maybe programmers program because they like making good products as many have said. Myself, I like making lots of money, and I think I have IMTS (I Made This Syndrome). Ever since I was 12 years old (programming QuickBasic! woot) I have gotton a kick from showing people what I made. Be it friends, family, or coworkers. When I recently wrote 3000 lines in 5 hours for a quake 2 model loader/display engine from scratch I got that kick (read: ego boost). That is why I program. I program because it is one of the VERY few things that *I* can do and no one else can. People all around the world can run faster than me, jump higher than me, and sing better than me, but damn it, there aren't too many people that can code better than me. (obviously there are (tens of?)thousands of better coders than me, but considering there are billions of people on this rock I feel pretty special.) In a world where people are amazed you know how to reinstall a printer driver, writing neet programs makes the sheep see you as a guru. That is why I program.
-EvilMonkeyNinja
Mild Mannered Host by Day
Wild Hammered Programmer by Night
Please, please, please get out of the software field. It's a dead end. No one wants you here, you will be better off in marketing, or washing dishes, or detailing cars or food service. And besides all of that less compitition will drive up my rate. :)
Programming is a job. Plain and simple. And subject to the laws of supply and demand.
So if you've got guru-level skills at a programming specialty that is very much in demand and difficult to master, you will make outrageous dollars. If you are a hack VB programmer who can manage to not screw up an Access custom report too badly, you may find work, but you won't be making the big bucks and you may be the first one over the side when the waves come. Everyone else is in between. That's all there is to it.
Maybe I phrased it a little bit wrong up top. Programming is best described as a skilled trade. However, there are different specialties and skill levels within the trade. Think of auto mechanics. For every person who can diagnose a problem with your foreign exotic sportscar just by listening to the engine, there's a dozen who will never do more than oil changes - and they leave greasy palmprints on your dash.
For some people programming is a job. For the really good ones, it's a career.
As for me, I sucked at programming, so I became a net admin.
-- Josh Turiel
"2. Do not eat iPod Shuffle."
Rough Patch?
Come on.. We have been hiring for a long time now. There are plenty of jobs out there.
I am so sick and tired of people claiming there is no jobs out there. We try to find real programmers, you know the ones that can program in C on a UNIX environment. The problems we find in hiring people is that they want to be "Network Admins" or "Web Programmers". Give me a break, go to a 2 year college for that, dont get a CS degree for a Network Admin job.
Also, ever hear of jobs being out there but people are not willingn to take the "cut" in pay? Making 70k is NOT a bad thing, its a JOB and a good thing in most areas. Ever notice how people with less experience are turning down jobs that pay more than your job? They are thrill seekers if you ask me. There are so many jobs in traditional Military application areas and systems areas it is not funny.
Anyone want to please send me your resume.
winston@mageslair.net
and I will talk to you. YES I will try and see if you want the job, and talk to you about it. Considering I can make a good buck on good people, I am willing to talk to people who are smart, good, fun, and willing to take good money, excellent benefits, great job over "perfect money" and a "network admin" job.
Sorry for the rant, but when many companies like where I work are hurting for C/C++ programmers and all I hear is "We cant find jobs" the answer is GROW UP, there are plenty of jobs around.
I can program myself out of a Hello World Contest!!
The notion of "promotion" is seriously overrated anyway. Do you really want to spend your days talking to whiny investment bankers, composing meaningless vision statements, having half your company snicker about you behind your back, having all stress and no free time, and managing people problems? If you do, go right ahead and aspire to that management position. But there is a reason those positions are paid highly: it's hazard pay for dirty work most people don't want to do.
Seriously, people do what they like, what they get paid for, and what they are good at. Many people who aren't qualified as programmers would love to have a $80k/year "dead-end job" with full benefits.
As for the supposed age limit, jobs going off-shore, and all that, in my opinion, Matloff is a loony. His claims are poorly supported by data and contradict what people who actually try to hire programmers experience. Sure, occasionally, you'll see age discrimination, and occasionally you'll see companies taking advantage of immigration issues. But the former is already covered by non-discrimination statutes, and the latter has been addressed with H1B portability and faster green-card approvals. Jobs will probably continue to go off-shore, but the best way of stemming that is to bring the qualified programmers from those other countries to the US; if you force them to go back to their countries of origin, they won't become farmers, they'll create a thriving and competitive software industry there.
IT programming jobs are fairly horrible - you know, database work.
i did a database job for 3 years, and drove me absolutely bonkers - a decently smart CompSci guy should pick up everything you need to know about databases in about 6 months.
everything. and then for the next N years of your life, you spew reports that you could care less about.
now... true "systems engineering" type jobs... or lower level, more technical stuff - there is definite value in having more experienced people, and the burnout isnt a bad.
IT programmers have a useful life of 12 years. thats it. you will drive yourslef insane shortly after that.
... hi bingo
who get promoted to mgmt. Their work sucks, but they need a job, and so do a song and dance about how they're better with people than code anyway, play the office suckup politics game and next thing you know they're telling you what to do. Likewise, no company would take someone just making good product and promote them to mgmt, they need them to keep pounding away at the forge.
try { do() || do_not(); } catch (JediException err) { yoda(err); }
In my situation, while the jobs have been sparse, and while I remain underemployed, I've been gearing the extra time I have toward learning new technologies as well as starting development on a system for expanded civic participation (that I call Democracy 2.0). And I've discovered something: Passion about one's projects is really as much of a discipline-enhancer and energy-driver as cold hard cash. When the economy picks up, this ideal will definitely be a factor in how I decide on future jobs. I hope that employers will work harder to create positions that programmers will actually want to take because they result in good karma (if you will) for the world; otherwise, I'll have to consider my career essentially over in the corporate sense.
Steve Magruder, Metro Foodist
You work for middle managers who are even more stressed out than you are because they're held responsable for everything that goes wrong when the higher-ups keep pulling resources.
Meanwhile you keep getting it in the shorts because "nothing is impossible to the guy who doesn't have to do it."
And when things finally cave, YOUR ass is grass.
MSBPodcast.com The opinions expressed here are my own. If you don't like 'em... Think up your own stuff.
In my opinion (which is not so humble today) - the MORE ex-programmers move into marketing and managerial positions, the better place the world will be.
We've seen what happens when you put MBA's into marketing and managerial positions in tech companies. Hell on Earth.
The world needs MORE engineering-driven tech companies, and less lawyer-driven tech companies.
These are my friends, See how they glisten. See this one shine, how he smiles in the light.
If you look at the number of CS graduates at any level: bachelors, masters, Ph.D you will find that since the early 80s the numbers all go down.
Meanwhile every company that wishes to not go out of business uses computers more and more. The number of jobs naturally goes up.
Now supply and demand says that there are not enough qualified people to fill the jobs. Managers will hire people who are highly underqualified because they are desperate.
Why we think this is a dead end job is because companies try to get their few competant employees to get all the work done, an impossible task. The result is lots of overtime which salaried workers don't see any extra money for. There is also a lot of pressure and stress.
What employees don't realize is that it doesn't have to be this way. We have what they need. Say "if I have to work overtime on a regular basis I will find another job" and you'd be suprised how scared they are of losing you.
I work 40 hours a week most weeks. I don't think I've ever put in more than 50, ever. I am paid better than my manager. My company needs me. Your company needs you as well.
Anyone who cannot cope with mathematics is not fully human.
You simply cannot get a job, even with current skills and a solid history. There is an inherent bias against over 40 coders, we are expected to have moved into management. After the dot com collapse and then the telecom collapse, there are a lot of over 40 coders out there from the mass layoffs.
I am one of them, 44 to be precise. I originally used to put my employemnt history back into the 1980's, and put the years my degrees were granted. And for some reason I never got a call back. So I took all the stuff prior to 1992 out, removed the dates from the degrees, and put the resume back out there.
Within a week, I got 4 job calls where my qualifications and resume were deemed "excellent" on by reviewers on phone interviews, and I aced the tech interviews over the phone as well (I used to be the guy in my group that did the C++ and Java tech screening!). Plus my references were checked, and I have excellent references. I generally interview quite well in person or over the phone, having been a member of Toastmasters due to needing speaking/presentation skills at my old company. Listening is as important as talking.
But when I show up at the "final" interview, in a nice tailored conservative business suit, with my short but gray hair, all of a sudden they seemed to get cold feet. And within a week of each interview every single one of them sent me a "Regretfully you do not meet the qualifications, your resume will be on file for one year" letter.
As long as this continues, then programming *is* a dead end job. You can get snarky if you like, but you'll be here in my shoes one day if you live that long, and you will be wondering why you cant get hired even though you can code circles around half their staff.
FYI, I did get a contract job 2 weeks later where all the business was conducted over the phone. I have had my contract renewed with a raise due to performance, twice, and thats despite the company going through 3 layoffs.
But I learned my lesson, Im getting my MBA and moving into management, even though I make a hell of a lot better systems-architect or software-engineer or developer/coder than I do a manager. I will miss coding for a living, but I'll not play martyr at the expense of my wife and children.
If the most important thing in your life is making your bosses happy, then yes, programming can be dead-end since they'll never be happy.
If your goal is to just make lots of money, then ask yourself what you're going to do with your money? If it doesn't amount to building a supercomputer in your basement and creating a turing machine, then maybe programming isn't for you. Whatever you want to do with the money you expect to make in programming is what you should be doing to make money in the first place.
I got a degree in Computer Science from Waterloo University. I am beginning to think I wasted 5 years of my life. U of W is one of Canada's best for CS... they came in 3rd in the last ACM contest behind MIT and Shanghi.
The degree was a lot of work. Many of my friends failed out. There was only 13% girls in my classes and most guys did not have or a girlfriend or have time for one during those five years. I had co-op work experience and had no problem finding a job at Cisco when I graduated. A year and a half later they shut down our division. Now it has almost been a year now and I still can't find work. I have skills such as Java and C++ and excellent references... but no one is hiring.
I remember a long time ago someone from Microsoft made some comment about Open Source hurting the industry. At the time I thought it was an absurd comment. But lately I've been thinking it may be true. a few years ago if I wanted a library API for some network protocol my company would have had to purchase something. However, now there is almost always a free alternative that is of great quality... so there is less and less companies paying people to program things because there are free ones out there. I dunno.. just a thought.
But still... if I had gotten something like a music degree.... I'd probably be equally unemployed right now.... but I'd probably be married too and maybe a little happier.
Dude, programming is not a profession. Indeed, Computer Science is real science. Why else do you think you wear a lab coat and goggles?
Karma: Good (despite my invention of the Karma: sig)
1. If you're in this for the money, get another job. I'm in this for the intellectual stimulation. The fact is, I live in a country in which the standard of living is enormously high compared to the rest of the world. I make enough to live in a nice house, send my kids to college and buy fun toys. I'm doing just fine. Going into management to make a few more bucks is not going to make me any happier. You need to realize when enough is enough, moneywise.
1. I have yet to find an employer who is suffering from a glut of programming talent. If you're good, there will always be work. You just have to stay sharp and keep your skills up. It also helps to not work in an area which is fueled by young, underpaid programmers (such as the game
industry).
1. A great way to keep your skills up is to teach, using your gray hairs to other's advantage. I personally set aside one day a week for teaching. It's a money loss, but still rewarding professionally and pschologically.
0. Sometimes it sucks being managed by folks who are significantly younger than you. This is a psychological issue that many of us will all have to deal with as we get older, regardless of the profession.
1. On the plus side, one of the advantages of getting older is finding the rare job which has good management and sticking with it, instead of constantly searching for greater prestige and a fatter paycheck. I've been burnt multiple times by accepting more money to work for folks I don't respect. No more of that, hopefully!
Well,
:) ). These all make me very happy. EVERYONE hates thier job. Go out there and find something that makes you happy.
I began college with Mechanical Engineering in mind but then I took a required comp-sci course and it really appealed to me. At the time, I was an ex-geek who had given up the Doritos and Mountain Dew all-nighter lifestyle for something that was more suitable for a teenaged kid in suburbia high school (notably, girls and friends that I will have forever).
In any event, college rolled around and my geekness was awakened by this comp-sci class. I did not have a choice so I changed my major and became a reborn geek.
Fast forward to present day. I'm very good at what I do but I don't just see much *tangible* accomplishment. Sure - there is all this stuff that I have poured my heart and soul into but I didn't do it for me. Some will be quick to point out open source as a means of self expression or whatever but a PC is the last thing that I'd like to look at after a stressful day.
So what then? I've already identified that "geek" is the Hotel California of personality types - at least for me it is. All those 1s and 0s make a lot of sense to me. These types of jobs are the most profitable for me. The invisible hand put me here. I could have started my own business but I tried that. I am not cut out for that so I am happy to work for someone who pays me well for what I do best. As long as I can separate life from work and find something to make me happy.
In the end, I learned how to work for myself outside of work. I bought a house that needs fixing up. I'm currently installing an energy efficient hydronic radiant floor heating system (yes - there is tech available outside IT). This is required to satisfy my low noise floor requirement of the home theater that I installed a while ago. When I'm not watching/listening, I'm on my way out the door to go camping/canoeing (I actually just returned from getting my fishing license
This seems to be a reocurring theme on slasdot, eh?
Life is the leading cause of death in America.
I guess another way to look at it is: Are you in it for the money, or for the glory?
:)
Those who only took up programming because they saw dollar-signs, and have no further interest in the art would, in my opinion, be the most likely to get bored/burntout/tired and jump ship to management.
I don't necessarily see this as a problem. I have had lots of problems in the past dealing with those types of programmers. Great people, but just have too much of a lack of interest in what they are doing, and therefore to a worse job than those who enjoy it. I say good riddance to them, and wish them well in management.
This frees up jobs for those of us who find this line of work interesting and actually, God forbid, enjoy our jobs. This increases our average salaries and decreases the amount of incompetence we have to deal with everyday (although some could argue that more management = more incompetence
Anyway... my point is: This realization, coupled with the dot-com bust is ultimately making things better for the average programmer (and by programmer I mean one who is in it for the programming, not necessarily the $$$).
And you don't need access to a machine. Have you never written an emulator for a machine didnt exist? How do you think they design machines?
If only the real machines worked as well as the emulators!
-
How many of you know anyone who actually stays in one career for life? Maybe if you consider your grandparents but let's talk about the world today. Even most of your parents have probably made a half-dozen or so career moves. Regardless of whether you become obsolete, there is a natural progression a person will take during their lifetime. As a person grows and matures, so do their career aspirations. People always want something more than they have, that is what keeps us moving. If you stopped wanting something better, then you become that 50 year-old who only learned COBOL. If your career aspiration is to program until you retire, then that motivation will keep you on the cutting edge. I have been to plenty of conferences with 50 year-old developers and in my opinion, those are sometimes the most intelligent people in the room. Sure, many programmers tire of learning new technologies and eventually move on to management, consulting, or something else completely-- doesn't that happen with any career? If you ask me, the piece is rediculous.
How many of you work with completely incompetant developers? I mean the people who just skated through school or didn't go at all but somehow kissed enough ass to earn the title? As long as those people exist, and they always will, your job will be secure.
http://www.askthevoid.com
Most programming skills do not become obsolete. New "technologies" come along all the time, but they rarely ever replace an old skill.
Take XML. Hardly a new idea. It's a markup meta-language used to structure data into a tree. Tree databases have been around for years; that's all XML is, just a markup language for 40-year old "technology."
Incidently: tree-structured databases were replaced by the superior set-theory based relational databases. There were reasons for this. What is old is new again; and what was once thrown out as inferior gets a fresh coat of paint and resold as new.
Obsolete my ass.
Microsoft is to software what Budweiser is to beer.
if by dead end you mean limited earning potential.
You cannot have limitless income potential
without reaching the position of benefitting from
the work of others. That means "business" -
finance, real-estate, or maybe law, and likely
not having a "job."
I don't think there are many people that have
the range to choose between that and being a
technical person though. The quarterback is
never captain of the chess club.
I think you are right. A person with a degree in a particular field (such as medicine, geology) and knows how to code will do better in the long run than a person who just studied coding. You will then get to work on the interesting intellectual challenges in your field.
Progamming in the modern world of computing is a one-time job. Software is written once, and used many, many times. Yes, there is software revision, upgrades, etc., but the bulk of work being done is being done by the /few/, for the /many/.
Therefore, there are only going to be a small amount of meaningful programming jobs relative to the computing industry as a whole, unless the general attitude towards software changes dramatically.
Now, administration is a whole different story. because software tends to be written by the few for the many, there are bound to be issues that those few never thought of. Administration is an ongoing job that everyone needs.
Personally, I think this is a big, secondary reason that so many geeks are perpetually hyped about open source software. It seems to promise that software development will cease to be a few-to-many service, and become a many-to-many service. I think there are a lot of geeks out there working in administration, frustrated with their jobs, wishing to become guru kernal hackers. They feel that if the IT world at large would simply embrace open source, tons of programming jobs would open up for companies wanting to customize and enhance software to fit their needs.
Unfortunately, the reality is not that development is a few-to-many business because of the closed-source model. Rather, development is done the way it is because proramming is *hard*. Nitty-gritty, systems development (as opposed to Web developemnt, or writing DB front ends, or using some SDK with the hard stuff taken care of already) takes real talent, and very few have the talent necessary. Furthermore, it is many, many times more cost-effective to buy software off the shelf (be it open- or closed-source) and pay for high administrative costs than it is to custom-design software to fit an organization's exact needs.
My advice to CS majors is to get used to the idea that you probably won't be coding linked lists and creating filesystems for a living. Learn to be a good Unix admin, how to be a DBA, how to troubleshoot buggy applications and OSes. Learn how to assist and teach non-clued end-users. 1% of CS grads are going to be programmers and software engineers. Guess what the other 99% get to do?
dinner: it's what's for beer
The fact that a phrase like "the dark side" is used, however tongue in cheek, indicates just how little some geeks get it.
In the commercial world, software isn't developed in a vacuum. In order to build a successful business you need to understand: who are your customers? what problems do they have? what software should you build to solve those problems?
People pay money for your software because it has value for them: it solves their problems. If enough people pay you enough money you will build a business.
Management and marketing aren't impediments to the "good guys" doing their jobs. They are essential parts of the overall job of building a successful business. The world doesn't owe you a living, no matter how skilled you are. It pays you for doing something that is valuable.
If your company is well run and you disagree with your management its because you aren't seeing the bigger picture. It may be cool to build technology X, but if no-one wants that and everyone wants technology Y, then you are wasting your time and skills working on X.
Of course there are bad companies with bozo managers. But that is a function of particular people, not of the role of the manager or leader.
Sailing over the event horizon
I worked for a manager who had been a developer. After about a year, he decided that he hated managing. So, he went out and recruited a replacement for himself, and went back into development. I'm almost certain his salary remained the same.
I see these trends:(1) more offshore work, (2)much more packaged software instead of homegrown application development by businesses,(3)more use of Excel and similar instead of homegrown application development by businesses, (4) perpetual stream of new buzzwords from vendors looking for sales angles in a saturated market (entry into the software market is pretty cheap).
The buzzwords give you a choice -- either (a) invest 25% of your time forever trying to stay up-to-date, or (b) make some decent money applying what you already know and plan to find another profession in a few years. I went option (b), and I'm in a predicament for sure.
The buzzwords are death to me. Much of software is pretty easy, point and click. That's what all the products are, point and click with integrated help. The learning curve can't possibly be more than a week for someone with a grasp of the underlying concepts. (I'm talking development, not system administration or database administration and tuning here, I know those do have a learning curve) If you can manage a project with one project management tool, you can probably do it with most of the others. If you can design a database with one data modeling program, or even with a pencil and paper, you can probably do it with most of the data modeling programs.
But look at the job postings; most of them want 2, 3, or five years experience with 6-20 specific tools (and often specific versions of those tools). That's why 80% lie on their resumes, I suppose -- very few will have the exact combination any of these jobs requires. I guess they figure that the young guys can learn and they will make exceptions for someone young and eager, but old and eager is not a combination that anyone can even imagine to exist. I've had two interviews recently in which I was told that the company was expecting to hire someone younger and I was asked why they should hire an old guy instead of a young guy. This is illegal, but they do it.
Keep your buzzwords up to date and be a manager before you are 30.
you mean you can get paid to do program?
holy smokes!
He looked at me and said, "Kid, we don't like your kind, and we're gonna send your fingerprints off to Washington."
I have to applaud you on this, not many people realize that you can enjoy being a programmer and it does not require working 60-80 hours a week.
After a while your body will go to shit from sitting in a chair all day and you'll be resentful of your employer because you are busting your ass so that they can make more money. Screw that bullshit, I enjoy my free time (spent biking and OUTSIDE). Do not take your work home, don't become a salary slave just because the economy isn't the best, after all, who fucked up the economy and caused the tech crash? The same idiots who run around screaming for you to stay late and meet deadlines while they dip out at 4PM to go home early.
Hammer of Truth
My boss (our VP and I think CTO) is the developer of utmost Deep Magic. But of course, we're a relatively small company.
But to take the other side of the coin up, I know of developers who made more than their managers (as one of my classmates ascended to management, I know several of the lead developers were making significantly more than he was).
There are two or three GOOD reasons why managers make the big bucks. In theory, they are the RESPONSIBLE ones. The buck stops there. Programmers can often excuse problems as being the result of other people's work, their deadlines, etc. But a manager has no such refuge. That responsibility should be commensurately rewarded.[1]
Also note that some highly paid programmers who make more than their management treat their management like inferiors. I've seen this. At the end of the day, some of the geek community only respect salary or other raw displays of power and authority. Sad but true.
Lastly, good managers are worth their weight in gold and do significantly benefit a project. They coordinate people, resources, and customers. They manage customer expectations, attend to the wellbeing of their managed, and ensure that all required resources are forseen and in place when required.[1].
So even though the comment about programmers not getting paid more than managers has exceptions, there are some good reasons for things to be as they are.
[1] - I know very damn well that the theory often doesn't match practice. For some reason, many companies keep inept management in place, I suspect because the next management level up is equally inept. I've had precisely three fair to okay managers, 1 really great manager, and several of the nightmarishly inept variety. But why companies keep incompetent managers in positions of power despite all the damage this causes is an utterly separate issue from the reasons why managers are paid more than programmers. Valid, but different.
-- Mal: "Well they tell you: never hit a man with a closed fist. But it is, on occasion, hilarious."
PHP programmers around you may have enough work to keep them employed, but skilled C programmers in their 40s or skilled COBOL programmers in their 60s may find such jobs pretty uninspiring.
If your career is expected to top out before you get your first gray hair, that's a dead end career, whether you can stay employed forever or not.
On the other hand, that pretty much describes the situation for star professional athletes, too, so perhaps "dead end career" is a bit too harsh. It's more like a "time-limited career", that implies the need for more than one career over the course of a lifetime. And that's not so bad....
"Those who have never entered upon scientific pursuits know not a tithe of the poetry by which they are surrounded."
All jobs are dead-end jobs because no matter what you to today, if you keep doing that way, it will be dead sooner than your retirement age.
Change or die.
I think the biggest problem here is that people are dedicating the early part of their lives to computers, and that is causing the "burn out." If you spend your youth sitting in a dark office drinking Mt. Dew and playing Quake without enjoying other things in life, you will see the "computer" as a reason that you are burnt out. I'm a developer. I graduated CS. I enjoy it. I like the coding. I like the projects. I even like the managers. BUT, I keep a very distinct line between my "life" and my "job." I'm married, I enjoy the outdoors, and when I leave work for the day (which is sometimes 6 hrs, sometimes 12 hrs) I leave work there. Sure I mess with the computer at home, but I also seperate my "hobby" (which I would be doing regardless what my job is) and my job.
Basically it is a matter of work-life balance (to use the buzzword.) If you allow yourself to be 1 dimensional, then you will get sick of it.
It should be noted that Embedded programmer, just like Electrical Engineers, get the shaft big time. Experienced web programmers (non-Microsoft), and many IT positions (like Oracle DBA's) can grab six figure salaries. It's a shame really because I have a great deal of respect for the low level guys, who really have to have a much bigger grasp of logic than those of us working on the higher levels. There are of course exceptions, senior engineers, and managing engineers, but most shops that deal with embedded and EEs have one or two top dogs to a dozen or so poorly (relatively speaking) peons.
I don't find out of country work a problem though. They just don't perform as well as the lazy American counter parts. The money you save in labor costs disappears as when you have a much longer bug/enhancement cycle. Most of which is caused by a culture/language gap.
Outsource to India can work well if you have a product that you have specific bug fixes that need to be done. But new products that require a really good analyst to have face side with the business and really hammer out details. Business like working face to face with someone who knows the lingo and can instill confidence. And they are willing to pay two to three times as much for that fuzzy feeling.
, who really have to have a much bigger grasp of logic than those of us working on the higher levels
I have to disagree with you there: I've been on both sides, and the logic is even more complex at higher levels. Sure, it's easy for a low-level guy/gal to focus on a specific part of a project, grasp it completely and make it work, but the higher up you go, the more uncertainty you have to deal with. I would say the uncertainty increases 2x every level you go. Managing that ambiguity at the project level is ferociously complicated. Why do you think project managers never smile and carry rolls of Tums (TM) with their laptops and planners?
I wouldn't say the 'low-level' workers have a monopoly on logic or a much 'bigger grasp'. if anything, they have a very big grasp on a smaller part of the picture. which is NOT an insult to their competence.
https://www.accountkiller.com/removal-requested
Hell yes....but it doesn't suck. The pay is pretty good and you always have something to do. Nobody really forces a dress code on you and you can set your own hours...within reason.
As long as you're doing your job well nobody screws with you and you get a certain amount of respect. The company will always need leadership, so as long as you don't screw anything up you will have a job.
And the same things go for programming. This was a silly question.
I agree about the environment. I'm recovering from surgery, and nobody knows I'm not in my cubicle. I'm hardly able to move, but I'm back to working full time from a bed. Of course that would be a bad thing if I didn't love my job, but I do. I love having a job where I can leave my sick bed and rejoin the world of the living -- without ever leaving my sick bed.
Even so, what you're saying about atmosphere reflects attitudes that tend to change (don't always, but tend to) as you get older and have a family. You get less interested in yourself (ideally) and more interested in the hopes and dreams of your family members. Your wife gets discouraged about where you're living, for example, and suddenly your jeans and T-shirts don't mean that much to you.
"Those who have never entered upon scientific pursuits know not a tithe of the poetry by which they are surrounded."
B-school types asked Conrail: "What do you do?"
Conrail answered: "We run a train system."
The "correct" answer really was "We provide a service to move goods from one location to another." They doomed themselves by competing with train systems when they were competing with trucks and air freight as well.
What business are you in? Is it "programming", is it "collecting and codifying business rules", I don't know what the answer is but I'm pretty sure the bulk of the business of "conversion of business ideas into source code" is going overseas.
It's one of those "seeing the forest for the trees" problems. My point is that next year you'll have a job, the year after that you will, probably for the next 10 years you will.
But the Indians and Chinese are getting better and better at outsourced work. There's a huge information/cultural/communication gap now but don't think that will stand in the way 20 years from now.
"Programming" as a job is as dead as being a cobbler (that's a shoemaker for the verbally challenged).
On the other hand, there are a lot of idiots in business-land with a lack of analytic skills. Transitivity is where Dracula comes from to most pointy-heads. There are jobs utilizing the same analytic and logical skills -- your business is not "programming", it's "analysis" or "rule-based business structuring."
Change now or become a cobbler.
Links, please! This sounds like fun.
Radiant Panel Association FAQ
I don't have any pics of my current install, but previously, I was using a forced-air natural gas furnace that was both loud and space consuming. I decided to go with a tankless water heater to supply both domestic hot water as well as radiant heating water. Since the new tankless heater is tiny compared to the old furnace AND the old water heater, I have gained a bunch of space. The tankless was not cheap (about $1100 USD) but building costs in my area are not cheap either - about $90/sq ft. So if you look at it in terms of square feet gained, I actually made money. On that note, I even installed a second bathroom where the old furnace was located. So I've upgraded the house from an undesireable single bath. This should pay off when it comes time to sell (or preferebly rent) the house.
Here is the information on the water heater (TK2) that I am getting. As far as other materials, you'll need a bunch of PEX Tubing to provide the actual radiator. The stuff is expected to last 200 years. I buy from Radiant Max as they have the best prices by far.
The bottom line is that I'll have a radiant floor heating system for about half of the price that the contractor wanted to fix my forced air furnace ($2k vs. $4k). Since the hydronic radiant doesn't require any special tools or skills, I can do it myself (unlike the furnace repair, notably the duct work). Not only am I adding space to the house by eliminating the furnace and the water heater, but I am also lowering my energy requirements during the cold season by an estimated 50 percent (I have an unusually high loss through the current forced air duct work but average gains are 30 percent).
As a side note, I'm currently looking into purchasing the empty lot next door for the purpose of building my own house (and renting the one that I live in now). A friend of mine just did this and total cost worked out to about $5 per square foot since he did ALL of the labor himself (with help from myself and other friends/family on the bulky stuff). Of course, the lot cost him an arm/leg but he has about $180k wrapped up in a house that just appraised for $400k. Not bad... There really isn't much to building a house once you tackle the plumbing, electrical and heating/cooling systems. Labor represents the single biggest cost of building a house.
As another side note, if I find that I do posess the skills required to build a house from start to finish, then I think that it would be nice to drop everything and build ONE modest house per year. Profits would be in the $100k range and if you live in the house for two years, then you don't haveto pay taxes on the profits.
Nice!
More VERY useful radiant information here! A good book required for the necessary engineering background is here. Good luck!
Life is the leading cause of death in America.
Hell, I love to hack...when I get home. My job has become more a place where they issue paychecks rather than the place where I code. Why?
Because of everything else unrelated to coding that I have to fend off: meetings, fickle graphic designers, shrinkwrap software that doesn't work and I end up "supporting," a boss that buys servers by the bushel because we have to use or lose our budget.
In short, I already am a manager.
Besides, at age 29, I cannot see myself with a family (I want one) if I'm spending 8-12 hours in front of a computer by day and a couple more by night to hone my skills. I don't instant message, own or carry a cell phone or pager, or pick up a phone without screening it via answering machine, and I still don't have a life to speak of. I've forgotten what a tit feels like!
Actually, I take that back. I'm growing my own.
I love programming. But it is a solitary discipline in its purest form. Unfortunately, there's too many people throwing their hats into the design process. And then you start coding from specs, and the specs change.
So lately, I'm neither programmer or social butterfly. I could code righteously, but only if there's nothing to code. It's a Catch-22. Yossarian lives!
Then apparently it's not dead end enough because it seems clear that plenty enough programmers are plenty happy with re-inventing the same stuff over and over.....so much so that the applied technology has no motive to advance far enought to cause auto-coding to come about at a level that the general computer user can do it.
In other words, so long as there is motive not to advance, the field of programming won't.
So being dead end can be determined by how much re-invention continues.
Wrong. It is _very_ difficult to find a job doing anything related to computers even now.
Not for lack of jobs, but rather for other silly reasons:
* the language you use in job postings (after applying for several hundred positions using the same language as yours, I assume you won't be interested in obvious qualifications due to an overabundance of applicants)
* the requirement to go through HR hiring-droids who can't even understand the dumbed-down version of what I do, and the associated reliance on resume scanners which eliminate human contact
* impossible prerequisites (10 years of Windows XP experience), and inflexibility in matching skills (I've used many free and commercial database systems, relational and non-relational, SQL and non-SQL, with various APIs, but I don't have experience with the exact version of Oracle you run to pull a few reports out of so no hire)
* and a general lack of _postings_ at all (most jobs are unadvertised but how can we get to know everyone who's hiring when simple information cold-calls get hung up on by rude HR people or receptionists)
I understand that there are lots of folks like you out there looking for employees, assuming your post isn't just another Slashdot troll, but when you hear "We can't find jobs" people are telling the truth. There are so many layers of outright deceptive communication between jobs _available_ and jobs _one can find out about_, it's ridiculous.
You can not claim to be a representative example if you're actually willing to solicit information one-on-one from potential candidates, and to discuss the job with them.
I've been looking for anything from behind-the-counter burger flipper to systems administrator for 15 months now, with a 10+-year background including UNIX systems administration, network design and administration, software prototyping, databases, and several kinds of programming, with great references, and even take interviewing classes to make sure I present myself well. Nobody is interested; anything short of senior admin positions, people consider me _over_qualified, but for senior admin positions people consider me _less qualified than the 50 other people in the queue_.
Even now, with recovery from a nonexistent constructed recession in progress, one needs experience to do even entry-level jobs.
Even in this crappy economy, I just landed a job. Why? No one had the experience needed for what I had to do.
Also, if you're "just a coder" you are screwed. Why? Because code-pounding doesn't cut it anymore. I sell myself on a variety of extra skills - knowledge of statistics, research, and communications. I do architecture and databases. In short, I'm broadened.
Computers are here to stay. You may not make a quarter of a million a year. You WILL be employed. Just keep up your skills and expand your scope, and be ready to do some lead or project management work.
Also, take a look at degrees. I'm seeing more and more call for them.
"The Sage treasures Unity and measures all things by it" - Lao Tzu
1. It depends on the product. Some days, I feel like a code monkey. Or a test monkey. And one of the things that gets me through that "dead-end" feeling is that I feel connected to the program I work for. I work for a defense contractor, and knowing that my code helps, in one way or another, to keep people safe. I don't think I could put up with being a coder if my product was just a bunch of reorganized ones and zeros.
:-)
2. It depends on the company. Some companies actually have technical advancement tracks. When I interviewed for my current job, and when I interviewed at SGI, both companies made a big deal about how they had a technical advancement track. Some people want to stay technical, but they don't want to be junior code monkeys when they're 35. My boss still writes code, but he does a lot of other stuff, a lot more design. In that sense, being a coder isn't a dead end as long as you have the opportunity to advance *and* stay technical.
3. About ageism - I don't know about the rest of the world, but in the defense industry, there's a very real sense that I should put up with 80 hour weeks and low pay because everyone else did it when they were young. In the early 90s, they all had to work *way* to much overtime just to keep their jobs. If you were 35 and had 4 kids and a wife and wanted to be a junior coder, there's no way they'd keep you cause they can't abuse you. So, again, if you work for a company where you can stay technical and move out of the junior coder positions, you don't have to worry. Not that this a good system, but its the way it is and no one consulted me before making the rules
So, I guess that was a really rambling way of saying that it depends on who you work for, and what you're working on. It seems like you have to be on your toes to make sure that you end up somewhere where being technical isn't a dead end.
Outside of a dog, a book is a man's best friend. Inside a dog, its too dark to read.
OK First dirty secret (more to come).....
;) )
....but I really would like the 'Vette back :( .
:(
I'm over 40 (but not by much!)
I've been coding professionally since '86 (non professionally since I was 13 - can you say "hacker" on a PDP-8S
I've coded via contracts for Wells Fargo, Boeing and Intel. I've worked for Borland and Nantucket (remember them ). A year and a half ago my going rate was $65-$70 and hour and I've been pulling in 10K-12K a month for the last two years I've been contracting.
Now here's my second dirty secret:
For the last nine months I haven't been able to get a programming job to save my life! I'm actually on unemployment now - the first time since '92 (!!) and I've now been unemployed for the longest period in my entire life
The contracts I priced out on at $70 an hour are now paying $30-$35 for a senior developer position! and I can't even get those because of the influx of overseas programmers and younger ones who would be willing to do it for $20-25 an hour!
I had a Corvette last year and had to sell it to pay the rent (Yeah I know don't cry for me Argentina ). I had to move out of my nice 2 bedroom apartment in L.A. and into a weekly hotel (Ibid). Well I've been poor before so it's cool
Now here's my third dirty little secret....
I've just said f*ck it last month and decided to get out of the profession. I used to be a paramedic way back when so I signed up at the local community college and in two semesters I'll
be a nursing assistant and EMT and in three years I'll be an RN - I'd like to do Emergency Room work. Maybe I'll go on to get a P.A after that I suppose.
But the point is that it's friggin hard for a 40+ year old coder to get a job in todays market. WHen I heard the same story from people back around 5 or 6 years ago I though "What a bunch of whining lusers!"
Now I are one
The freaking establishment has suceeded via blatent lies about a shortage of programmers and an overabundence of programming work visas to drive the salary levels down to ONE HALF of what they were 18 months ago. It is NO coincidence that the job market crash happenned within ONE YEAR of the new programming visa "reforms".
So I go back to college for a new carreer...it's all good...
One last dirty secret though....
While I'm waiting for the summer semester to begin I've stocked up on Jolt Cola and O'Reilly Books. I'm learning Internet protocols and some linux. Now that I'm not burning up my brain writing useless software for fatcat corps I have a few ideas of my own about some communications software that maybe I can market.
I want my Corvette back Damn it !!
----- In Your Cubicle No One Can Hear You Scream...
I do not think so. Quite a few people in my family are RNs (Nurses). Quite a few of them are former RNs (Ex-Nurses). All of them joined because they enjoyed the field and liked helping people. They enjoyed for years the many fields and benefits of being a nurse. However, they are slowly starting to burn out. Wether it is my mother who has a broken back thanks to hospital mis-management, or my aunt who is now working a nursing home (again due to hospital mis-management) -- the family trade is hitting burn out FAST. They still love nursing - however the conditions are not right for them to be working on the floor. In my mother's case, she is now physically un-able to do her job or any other job due to her job. (PS - since she is the grin and bare it type, the hospital refuses to pay her anything, even though the XRays are conclusive).
I enjoy the computer work I do. I don't do it for the money (or I would sure as hell not waste my time on the interneche). I enjoy the money, but I do it because its like second nature to me and I love to help others out -- I just can not stand the smell of hospitals... I guess I got the down side of the schwartz. I do see burn out in my future if I continue doing the comp work I do today for my life -- that is why I am picking up a language degree, so my choices will be open. I will probably be doing computer work until the grave unless I get forced to do it 7-6 M-S. If that happens, fuck technology!
The ultimate network admin tool needs HELP!
What's a bit peculiar about this piece is that it's written by Jack Gannsle, who has worked as an embedded programmer since the 4004 first hit the open market, 30 or 31 years. He must be about 50, but I haven't seen anything in his columns that indicate he himself is quitting, and he's certainly not burning out. Or for another example, I'm 48, and I'm going to keep right on working as an engineer until they carry me out of here.
However, Gannsle does mix coding with managing a consulting business, teaching, and writing that column. Working for yourself avoids the problem of salary ceilings (not many managers are smart enough to pay their best workers more than their own salaries), and of nitwits that won't hire anyone over 40. Of course, self-employment is only for those that can handle a little sales and management also. For myself, I tried management when I was a sergeant, and you can't pay me enough to try it again -- and I'm too honest for sales, unless business schools wise up and start teaching the future managers to identify and avoid bullshitters...
The other thing is to vary the job a little. If you basically write the same program over and over, you should get very good at it, but either you'll go nuts from boredom, or your brain will ossify and you won't be able to handle it when the job changes. There are lots of ways to do this -- just make sure to pick at least one and follow through with it.
Perhaps it's the EE's I've run into. They seem like a pretty bright lot that have to take just as much school, but start out in the high 20's to low 30's instead of the 40's that many CS people snagged. In fact one company I worked on the college recruiting team (technical interviews), we paid 52K right out of school.
Well, to be honest, I've only met a couple project managers out there who could actually manage a project. Those are the types who document, centralize, and instead of getting in the way of the programmer, act as a shield from various business interests.
My problem is the vast number of PMs I've run into who are BA MIS people who dropped out of BS CS program in college because they couldn't cut it. The idea that the people who couldn't cut it in school doing what I do are now telling me how to do my job, and how long my job should take. Anyone else see the irony?
Ok, first of all, I am over forty.
Secondly, I worked a LOT of different types of jobs before breaking into the computer industry. Mostly these were factory/unskilled worker type jobs. I also spent 10 years a a machinist (not much different than the factory work, except I was then considered "skilled"). All I have to say is, if you think your job is a dead end job, you should do some of those types of jobs for a while. You won't make half as much money, much of the time you will be risking serious injury all day long, working conditions are generally filthy...
Being burned out in that cubicle working on the same code over and over for what you consider to be not enough money will seem like a dream job in no time!
1. Learn to program. And I am not just talking about learning a programing language. I mean learn computer science. As each new "hot tech of the week comes along" you'll be able to absorb it cause there all built on the same principals.
2. Learn a vertical. Don't just be an expert Java/C++/whatever coder. Be the guy who knows more about the industry you want to work in than anybody else. Whether it's medical, financial, entertainment, education. Know more that those you code for and you'll set your own salary.
>>It seems like those who aspire to be managers either are told, or feel the need, to "clean up their act" and hang out with other managers, dress up a bit, and shmooze.
I work for a VERY cool Technology company and I can tell you that I want to be team lead, that I want to go towards managment.
Why? Because I like the responsiblity, it just freaks me out when I have to do something that absolutly makes no sense. I did team lead before and I enjoy working with people.
No, it's not about wearing a suit (heck, as far as I can see no one here is wearing a suite).
M.
If you want to e-mail me, use my PGP Key.
Does it get the job done? Does it not crash?
Sounds like good code to me.
Code is a set of instructions you want a machine to execute. Your goal is to get the output you want from the machine. 90% of what a lot of people would think is 'elegant' or 'highly optimized' code is, in my opinion and in a business sense, crap for its actual intended purpose because it's harder for someone else to decipher and maintain or modify. If I can write a function clearly, or write it in this really clever way where it calls itself recursively and is hard to read - what should I do? Maybe if i'm programming for myself or on an open source project doing it 'elegantly' would be an option. But if I'm writing code that belongs to my company? I should write it so that it's easily maintainable by others who have never seen it before. I have had to slog thru some of the most PAIN IN THE ASS 'highly optimized' and completely undocumented code in my time. And every time I figure out what the code is doing it just pisses me off that the person who wrote it couldn't have just done it the simple way that would maybe take 8 more lines of code. So it's not elegant? Who cares? It's not going to materially slow down the machine, whereas I end up wasting a TON of time re-doing it later.
Go back and live with mom and dad for a few years while you work. If the job won't let you stay in town, find a distant relative, or a friend of a friend to take you in for cheap.
Seriously.
If you need one, buy a car with 2-3 years of use on it, pay your taxes and loans, and then put the rest of your first year's pay in a trust fund where no one can touch it. (Talk to a lawyer about this. You can make the money all but bullet-proof, guaranteed to pay your retirement.)
Take the money you earn over the next four years, invest until you have a hefty down-payment on a house. Be sure to do the math on the interest your investments earn minus the interest on your debts, and give yourself a safety margin.
You'll be 27, own your home and your car and have your retirement assured.
After that, no job is a dead end job, because no employer will have anything to hold over your head. They won't pay you what you want? You can leave. They want you to work too many hours? You can leave. Personal conflicts? You can leave.
People in this position do what they want to, and they do it well. They do not have to deal with "burnout" or "overwork".
You've just worked your ass off for four years. Another five aren't going to kill you.
But how much money do you get paid to write your turd reports? ;)
Yes, and dentist's have the ADA, accountants have the AICPA, and lawyer's have the ABA. What professional association of the magnitude of the ABA or AMA represents modern IT engineers? The answer is, there is no professional association with any weight behind it that represents engineers.
We do have a well-financed association or lobbying group financed by the employers of the IT profession (Microsoft, IBM etc.) called the ITAA, which has been making war on our profession for years. Their sole purpose is to flood the IT labor market in order to drive up IT unemployment and drive down wages. They also despise worker independence which is why they love H1-B restrictions (forcing H1-Bs to stick with rotten companies during green card applications) and support section 1706 in the tax code (which forces independent consultants into body shops).
The first high-rated post said "we can all become managers!" Um, no, we can not all become managers, most of the IT departments I've worked at have had anywhere from 10-30 people under a manager, so when one of them goes on to be a manager, what becomes of everyone else. Also, good programmers don't necessarily mean good managers, and mediocre programmers can be good managers. I could go on, but the article is true that 24/7 oncall for years on end, constantly working weekends and 60 hour weeks can lead to burnout, and that many companies don't like hiring people over a certain age.
From a personal standpoint, I believe the failure of engineers to form an association that can counter the ITAA's war on our profession in Washington, as well as the failure to form consulting companies which are geared more towards worker-ownership and worker-control (although there are some, like RMPCP) is due to the fact that many of the people in this profession are the stereotypical socially retarted dorks, who are unable to socialize normally with other human beings, and who place their entire self-worth in the idea that they are the smartest programming super-genius whose skills are better than everyone else, who works harder than anyone else and so forth, so why would he have to have an association like the ABA or AMA with other engineers like every other god-damn profession does? Believe me, doctors are not stupid, cutting someone open and operating on their beating heart is a lot more complicated than opening up a computer and adding more RAM to it. They're not stupid, many of them are very smart actually, and we should follow their example and form a professional association.
For my preference, I like the Programmer's Guild, if you don't like them you can form your own or join a different one, although I'd hope if there were several associations they'd work together in fighting the ITAA's attempts to steal our intellectual property and drive us out of work in Washington. There are engineers working on this and have been for years, but our numbers are small and we need more engineers to just cursorily educate themselves about these things, and then spread the word and educate others about these things, just a few more people on board and it will reach critical mass and we can get the word out more. To me, it's not just about fighting for my profession, it's a principle thing, I'm sick of being kicked around by Microsoft (and IBM, Oracle etc.) via their ITAA yap dog, and I'm glad that I'm actually doing something about it.
My web page that deals with all of this is the Oncall Guild web page. We're not a group that seeks paying membership, anyone can be a member, just educate yourself about this, spread the word and join organizations like the Programmer's Guild or similar good organizations to do something about it. Some of the older engineering organizations are discussed on the web page, both the problems (corporate-financed to the point that they have killed campaigns that oppose the ITAA with threats, too academically focused, created decades ago and not focused on the modern IT profession and so forth) and good things (surveys about salary and other matters, allowing engineers to network with each other).
So a true plumber only likes to work with pipes, and a true carpenter only like sto work with wood?
A true garbageman only likes to work with garbage?
Don't mix obsession up with skill. They are not at all related.
I agree that IEEE has some good points, especially in terms of discussion of technical issues. It also has some very glaring bad points with regards to professional issues other than increasing technical knowledge. Although a reform effort in IEEE and IEEE-USA would be helpful, reforming this century-old association is an enormous task, and associations like the Programmer's Guild can do a lot more in the meantime while that reform effort is underway.
h _s Ec2.5.1
Norm Matloff pinpoints the problem with IEEE so well in his excellent research paper "Debunking the Myth of a Software Labor Shortage" that I'll just excerpt from that:
http://heather.cs.ucdavis.edu/itaa.real.html#tt
In 1998, the engineering professional organization IEEE-USA (Institute of Electrical and Electronic Engineers-USA) had lobbied Congress strongly against the H-1B quota increase which was proposed that year. (It had been a major critic of the H-1B program in the past as well.) As an organization of over 200,000 members nationwide, it was a force to be reckoned with.
However, as a result, IEEE-USA then came under enormous pressure from corporate and academic interests in the parent organization IEEE to moderate its position. IEEE-USA then hired Paul Donnelly as a consultant, whose job was ``to help wean the organization from its outright opposition to immigration.'' (The New Republic, June 19, 2000.) Donnelly is the former staffer with the Congressional Commission on Immigration Reform described in Section 2.3.4.
Around the same time, IEEE-USA greatly toned down its Web site. It removed its ``Misfortune 500'' file, a compendium of 500 engineers, mainly older, who were having trouble finding engineering work in spite of the alleged high-tech boom. It also removed from the site its report on a 1998 Harris Poll which had shown that 82% of Americans opposed the H-1B increase.
Donnelly convinced IEEE-USA to support his proposal - similar to one formulated by Congressional Commission on Immigration Reform as mentioned above - under which industry could bring in foreign engineers and programmers on an expedited basis, giving them ``instant green cards'' and bypassing the H-1B stage. This new stance on IEEE-USA's part was counter to its previous view that industry should hire/retrain American programmers and engineers, but apparently the organization felt that its new position would relieve the pressure brought to bear on it by the parent organization.
However, Donnelly was up against his rival, Rick Swartz (again, see Section 2.3.4), and up against Swartz's allies representing the computer industry, who apparently wanted to retain the ``indentured servant'' nature of the H-1B workers. Those lobbyists dismissed Donnelly as ``anti-immigrant,'' in spite of his work as a consultant to immigrants and as a longtime advocate for relieving the greencard backlog for the spouses and children of immigrants. (Wired News, May 15, 2000.)
Meanwhile, Swartz had acquired a new client, the Immigrant Support Network, an organization of H-1Bs who were hoping to get Congress to alleviate the ``indentured servitude'' problem. (See Section 2.4.)
Donnelly still tried to get Microsoft to support the ``instant greencard'' proposal. However, Microsoft's counsel and lobbyist, Ira Rubinstein, simply stalled, saying that he may support the proposal in the future but now wished to concentrate on H-1Bs. Later Rubinstein tried other stall tactics as well. (Personal communication with Paul Donnelly, June 17, 2000.)
Personally I do not support the Donnelly proposal, because although it would fix the problem of H-1B ``indentured servitude,'' a worthy goal, it would not address the problems of age discrimination and so on which are being fueled by the influx of foreign programmers. Nevertheless, the industry's continuing rejection of the Donnelly proposal, which would bring in the workers they say are needed and would reduce paperwork and trouble for the employers, shows that they do indeed wish to retain the indentured-servant nature of the H-1B program. And the personal attacks on Donnelly are uncalled for.
This is very true. I'm graduating in a few months from a major university, I'm doing just this. I'm going to have my bachelor's in Molecular Biology, with an emphasis in computing. I've been programming since the beginning of high school, so the degree didn't actually get me much in the way of new skills, but the point is that I can apply it to whatever else I want to do.
Right now I'm the only person in my lab with any extensive computer knowledge. My boss is an incredibly bright, MD/PHD, who knows virology backwards and forwards, but in terms of computer work, her knowledge doesn't go much beyond Word and PowerPoint. I wanted my student research project to make use of my computer skills, so I've been working on setting up a bunch of ruby scripts and MySQL databases using the Human Genome data.
No one else in my lab, or possibly even in my building, has any idea as to how to do this.
Having programming skills provides me with a unique tool to do the most modern kind of research in biology. The crowning scientific achievment of the millenium was the completion of the Human Genome project, and in order to effectively use it one needs extensive computer skills. Very few biologists have these skills, and in order to be an effective researcher it's going to be crucial. The project I've designed for myself is really exciting, because no one in my particular field is doing it at all, simply because so few molecular biologists are also programmers.
As a side note to this, I'm also finishing a minor in English, which provides me with the writing and analytical skills that very few scientists posess. I'm always the one my boss comes to when a grant or manuscript needs proofreading.
Basically, whatever you study, don't limit yourself to one area. If all you are is a programmer, then it's much harder to expand. Learn various skill sets and ways of thinking and you'll be able to move in directions that few other people can. You might not have an obvious niche, like "Systems Programming" or "Cell Culture Expert", but you can build yourself a niche that no one else may have thought of.
"I may not have morals, but I have standards."
In most states, to call yourself an "engineer," or to advertise your services as "engineering," you must be registered as a Professional Engineer (PE). That usually requires passing a couple exams, along with several years of work under the supervision of a PE.
This is rather difficult in electrical engineering, because there are relatively few PEs working in the field, and the exams are biased toward structural, civil, and other "public works" type engineering.
Some effort is being made to recognize the difference between traditional PE disciplines and electronics, to create a PE process more suited to those disciplines, but in most cases, it is still difficult to get PE certification working as an electrical (non)engineer.
As a software person, forget it.
Just because someone calls it "software engineering" doesn't make you an engineer.
(Of course, you can have whatever job title you want. "Sanitation Engineer," etc. But you still shouldn't advertise yourself as an engineer. Try "Software Designer," "Programmer," etc.)
Every job has a burnout rate. I would wager that 80% of the people in North America do their job because they can stand it and they need the money. 15% do it because they love it, and 5% don't need to because they're financially independant. 80% of the population looks forwards to Friday. That's 80% of about 280 million people (I'm discounting teenagers and youngins). Programming doesn't burn you out, your job does.
"It's here, but no one wants it." - The Sugar Speaker
In the 60s, it was polymer chemistry. Then consumer electronics in the 70s followed by computer and telecom hardware in the 80s. During the 90s, software became the hot field. I started in electronics and changed careers after the work dried up. What I have consistently found is that I'm by far the oldest programmer everywhere I go. The kids don't view me as a geezer yet because I'm a karate instructor and I lift weights like a convict. I'm still wilder than most of them are. But the writing is on the wall. I will have to change sooner or later, whether I want to or not.
Wansu, th' chinese sailor
It was for informational purposes only.
"I don't think it's selfish, to eat defenseless shellfish." -NOFX
(* It can be difficult to keep up with quickly changing technology, but it can also be exciting. *)
I like learning new things when I see *value* in them. However, it seems like that I.T. is becoming more like the clothing fashion industry: it makes more money when styles change because people don't buy new clothes as often if styles don't change. Thus, there is a built-in incentive to hype "new things" just for the sake of change.
Such change is often not evolution upward, but sideways change just because it is different.
Java sucks eggs and XML is warmed-over static LISP. The "newer" guys suck up all the BS about these because they don't know better. Those of us who have seen the same things get repackaged and re-combined under a different name are a bit frustrated with pointless change.
True "eureka!" technologies only come about once a decade. The rest is just trade-rag play and marketing gimmicks. PHB's are almost as gullible as the newbies.
However, those of us who express such skepticism are often looked down upon as "out of touch". Thus, the oldbees are forced to go with the flow and *pretend*. If I was one who liked pretending, then I would be a manager instead of programmer.
More about the self-fulfilling fad-tred-mill at:
http://geocities.com/tablizer/itpot.htm
Table-ized A.I.
(* Rather, development is done the way it is because proramming is *hard*. Nitty-gritty, systems development (as opposed to Web developemnt, or writing DB front ends, or using some SDK with the hard stuff taken care of already) takes real talent, *)
I don't like this characterization. Custom business development is generally hard because it is full of nitty-gritty and capricous business rules. You are essentially trying to model the managers/decision-maker's heads.
Further, they wan't impossible things web pages to act like GUI's/VB, which HTML+DOM+JavaScript does very poorly and buggily and version-sensative. (It is time for a new biz-oriented HTTP GUI standard to catch on. HTML+DOM+JavaScript really stink.)
If a task grows repetitious enough to get "boring", then automate it! Automate the automation, in essence. The more drudgery you automate, the more you can spend on non-drudgery. (Of course, you can risk automating yourself out of a job under some circumstances.)
I view "systems development" as repeatedly reinventing the database using hand-built linked-lists, etc because you are not allowed to use a "real" collection engine due to performance reasons.
(* or using some SDK with the hard stuff taken care of already *)
This is bad? You would rather reinvent the wheel? What joy is that? I prefer to be the conductor and composer instead of a violin player.
(* Furthermore, it is many, many times more cost-effective to buy software off the shelf.... and pay for high administrative costs than it is to custom-design software to fit an organization's exact needs. *)
That is bull-sh*t! The easy-to-automate stuff has already been done. "Generic" applications tend to be pains in the butt because a typical company uses only about 20 percent of the features because the authors try to cover as many situations as possible, the other 80 percent get in the way, and it *still* lacks many needed/wanted features.
Generally the more specialized the business, the harder it is to find good pre-built solutions.
Things like HR and helpdesk are common enuf that there are decent off-the-shelf solutions out there. However, with line-of-business operations (the primary product/service), getting a pre-built solution is risky, and has mixed results.
Often the managers realize that the sales people exaggerated the benefits and bamboozled them, but don't readily admit it. The next generation of managers who are less politically tied to the decision are the ones who openly recognize and talk about the problems and often want to replace it with custom-built stuff.
If have seen plenty of problematic pre-built solutions. They are *not* a panacea. Decent surveys do not show a significant difference in approval of pre-built solutions for complex business operations over custom-built ones.
Table-ized A.I.
(* Isn't it odd? Programmers believe only they think about what's good for the company and that managers are idiots. Managers think only they care about what's good for the company and that programmers are bozos who only play Quake and goof off working on their open source project on the company's dime. *)
Managers tend to be better at *people* than programmers. However, the flipside is that programmers are usually better at technical stuff. Thus, IMO programmers are on average more *rational* with non-people things than managers.
Business is about duping customers (humans) into paying for your lame product/service. Thus, BS experts tend to rise to the top because they know how to BS customers, suppliers, etc into paying more than they should. And guess who BS experts are more likely to hire? Rational people? or people who know how to play people games? (It is well known that people tend to hire those who think/be like themselves.)
BTW, *everybody* "wastes time" at work because human beings are *not* cut out to do the same thing for 8+ hours. We need to divide our time up a bit into different kinds of things. That is why programmers goof around on the net or games for a little while, and why managers shoot the breeze for a while. IOW, boths "sides" goof off on company time, but just do it differently. Are you gonna tell me that managers don't waste time gabbering about movies, sports, food, etc?
Table-ized A.I.
Of course Object Pascal offers the efficiency of C/C++ and the readability of BASIC without the ridiculous inefficiency and kludged constructs of Visual Basic.
I pursued my degree in computer science because I wanted to learn. If you went into this field for other reasons... well, maybe you shouldn't have.
Clue for y'all. Engineering has, and will always have, as one of it's design techniques the elimination of as much manual labor as possible in a process to meet cost requirements.
Civil Engineers ran off the longshoremen with shipping containers
Mechanical Engineers ran off the millwrights through greater automation
Computer Engineers ran off the draftmen through improvements in CAD/CAM/CAE
and Software Engineers will run off the coders through automated software development tools.
It'll take a while. Decades. But it'll come. Software is cost effective when economy of scale is on your side. Mission critical in-house stuff - way too expensive.
So programming - largely dead end. Computer Science - go talk to physics. Very important, but not a large field. Software Engineering - that's the top of the food chain.
Ok, it's quite clear that you are not an engineer, or were done a great disservice from your university.
7 05 . tml
Just like the professions you list, Engineers have these organizations. There are many of them just as there are many Engineering fields. ASME, ASCE, IEEE, ACM, AICHE, and so on. 'Professional Engineer' is a formal title granted by most states, Canada, UK, not unlike Attorney at Law, Physician, Registered Nurse, Certified Public Accountant.
States are now beginning to recognize 'Professional Software Engineer' as a formal title. Texas was the first. New Jersey is considering doing the same.
http://www.chipcenter.com/columns/COL_SLO_20000
The problem is that you have the issue totally wrong. None of these organizations or structures are created to protect jobs. Nobody gives a shit whether you keep your job or not. These groups exist (as do the AMA, ABA, etc.) to protect the integrity of the profession. If you feel these H1B workers are undermining the integrity of this profession, or are causing a risk to the public at large, that's a excellent reason to protect the profession - to ensure that those who practice are of high caliber and bear the responsibility that comes with the job. And who oversees the licensing of engineers, works with the state labor boards, designs the exams? ASME, ASCE, IEEE, ACM, AICHE, and so on.
Don't be too eager for this to happen. All Professional Engineers (PEs) need to graduate from an accredited program (most CS programs are not accredited) pass an exam called the Fundamentals of Engineering, work for a minimum of 4 years under a Professional Engineer and earn 5 letters of recommendation to the state labor board from Professional Engineers, and take another exam called the Principles and Practices of Engineering.
As a Professional Engineer, you will be solely qualified to perform specific job tasks - such as seal design plans, testify as an expert witness, and so on. Nobody can encroach on your job. You can also be sued for malpractice and be held criminally liable for work that fails to adhere to federal, state, and local standards. And you get to do this for every state that you practice in.
The problem that programmers are facing stems from the fact that as a group, they are unwilling to establish standards for practice. There are no standards as to what constitutes good software or bad software. There are no standards for testing. No standards for interface or for communication. No standards for what constitutes a proper education to practice.
Engineers as a group have done this. Without it, there is no case to be made that some 14 year old from Thailand isn't as fully qualified to as a 50 year old Ph.D. with 25 years of experience at writing software.
Just to be clear - I'm not an engineer. I'm a mathematician and physicist. I can't be an engineer. I can't pretend to be an engineer. But I've been a programmer and as far as anyone is concerned, I'm every bit as qualified as you to be one. After all, I don't have to take responsibility for my work either.
On Error Goto Hell
However, there are other languages with sane syntax, and not all of them are such a f**ing bullshit as Basic is. Try Python, Ruby, or Ocaml - the latter even comes with two syntaxes to chose, and you can easily modify it as you see fit.
Programming can be fun again. Film at 11.
(* that is what i keep hearing about college. you sound like you went through the same 4-5 years of hell I and countless others have gone through in CS. antisocial? lack people skills? Hey, the CS deptartment made us this way. *)
The colleges have got it all backward. Make the geeks take socializing courses/events, and make the overly-talkative students take geeky courses.
The geeks will figure out the tech stuff on their own anyhow. Besides, universities are usually about 8 years behind current technologies.
Table-ized A.I.
I'm in a better position than most programmers my age. Despite the fact I'm in the center of the baby boomer peak population, there aren't that many programmers my age because most had to work with relatively inaccessible mainframes in college. However, I can, along with guys like Larry Wall, attest to the fact that I don't program like the demon I used to. There are those who would say I am a damn good designer/architect, etc. but really -- there are lots of guys who would be just as good as I am for the vast majority of projects. When it comes right down to it, there isn't a need for many people in those positions and having an oversupply of "designers" looking for justification for their position is one of the worst things you can do to a project.
Bottom line, I can't in good conscience recommend that young men go into programming. I've been invited to teach university classes on programming and declined in part due to that fact.
Lest this sound bitter or something, it really isn't. Like I said, I'm in a lot better position than most programmers my age and although that's not saying much anymore, it is saying something.
If I had it to do over again, would I choose programming as a profession? No. I don't think I would. Right now, I wish I'd spent more of my youthful energy learning how to survive without civilization because it just doesn't seem to be all it was cracked up to be in the stories told to men of the GI generation who gave up their independence of family farm lifestyle for dependence on grocery stores, mortgage interest deductions and increasingly intrusive government "protection".
Seastead this.
I'm confused, could you elucidate there?
I thought LISP was a programming language and XML was a data format?
My Journal
I have a reply prior to this with regards to the problems I see with the IEEE. As far as the ACM, they fall into one of the categories I mentioned in my first post with the old associations - they are born of academia and too close to academia, and their association covers little to do with the modern IT professional. For example, from what I can see, their Washington lobby is mainly concerned with interests serving people working in academia, such as more government financing for scientific research in academia. There is some crossover, but they are not concerned with the interests of the modern IT professional in general who is either a programmer or administrator (systems, database, or network).
You mention two things in your post - H1-Bs and professional standards. I do think the H1-B cap issue should be dealt with, and associations like the Programmer's Guild do deal with. H1-Bs already in this country get mad with me when I tell them I want the cap lower. I have no idea what attachment they have to the cap since they already made it in. So I ask them, why do you want 195,000 *more* people coming in this year competing with you for a green card? Usually they wind up agreeing with me, a high H1-B cap is bad for me and them. H1-Bs are unhappy with the restriction that keeps them from changing jobs while applying for a green card, and I support them, I'd like to see that restriction removed as well. This is another example of something in my and their interest. I have nothing against H1-Bs, all I want to see is a lower cap. Which as I explained before, is a positive thing for the H1-Bs in this country since it increases their odds of getting a green card.
As far as professional standards and certification - I believe engineers in these associations should discuss this in these associations and decide what's best for them. The Programmers Guild discusses it's ideas regarding certification on it's web page - it says it feels certifications are currently run as money makers (something I agree with) and that it thinks money-making test preparation books and multiple choice quizzes are dumb. That is an interesting idea and I agree with it somewhat. Really, part of the best possible certification would be several technical interviews by guild/association members based on the certifee's resume. That's *real* certification.
This is the thing - current certification scams are so bad that the words certification and professional standards make most people cringe, including me. Certification has gotten such a bad rap (deservedly, as it is currently) that I wouldn't even say we would do certification, I would say "we will do certification unlike any certification you have ever heard of or done". I think putting it this way would make people cringe less upon hearing the word certification. Professional standards are important to the Programmer's Guild as well, and just like the new "non-scam" certification, our discussions of professional standards will revolve around, what will be good for us, and our profession, what standards can we have that will do more to help us than to get in the way?
I think the Programmers Guild is probably the best association with regards to these things that exists currently, and I list my thoughts on other various associations on my web page which the URL of is in my original post. And as I said in my first post, I think joining or organizing groups like the Programmer's Guild is important, but just educating yourself about the issues that the Programmers Guild and the group I am in, the Oncall Guild, and then educating other programmers/administrators about it are a good thing. We can form coalitions to help block or push through laws in Washington, we can do surveys about salary and other things, we can do *real* certifications, that really nail down skill levels, we can help facilitate the creation of consulting companies owned by the programmers who worked at them and so forth.
"I can't get a job because I am an arrogant linux zealot" will work nicely.
I have a job. I save my company thousands of dollars a year designing Linux and open source solutions.
You argument is silly. Of course any large software project has some bugs. MS products have a disproportinate number of bugs, many of which MS won't even acknowledge as bugs. I used to program in VP and ASP and all that, about 3 years ago. Then I discovered Linux and open source. I will never ever go back.
I've had enough abrasive sigs. Kittens are cute and fuzzy.
If the Glorious Day comes when Richard Stallman gets his way, Programming will cease to be a job, dead end or otherwise and become a hobby.
"Information wants to be paid"
After fifteen years, I'm sick of getting laid off. I'm going back to school to get some retraining to be a programmer, and if I can accumulate at least a couple years' total experience in the workplace pushing bytes around, then I'll look into the design aspect of IT -- after all, I already know I can talk to project managers, coders, and end users. I just have to get past the "Rodney Dangerfield syndrome" of being "just" a technical writer.
"How many light bulbs does it take to change a person?" --BMcC-->
Wish I had some mod points to give you. That's right on. Promotion to just beyond your level of competence. But then, people often want to be promoted for more money, prestige, etc. or as a defence against having a dunderhead promoted ahead of them who will then screw things up. I don't actually know that anything can be done about this....
-- Mal: "Well they tell you: never hit a man with a closed fist. But it is, on occasion, hilarious."
I agree that what you say does happen. But, where then are the upper level managers? Are they not calling these "rotating bosses" to accountability? At some level, someone gets called to account by shareholders or owners and they OFTEN find their heads rolling if they don't have a productive, profitable, growing firm. So why are they not bringing the subordinate level of managers to heel? This is a corporate culture problem. Well run firms DO demand accountablility from the top to the bottom. And not just of management.
One of the biggest management failings, at the same time, is expecting accountability from people without any sort of buy-in or involvement. I can't very well (or shouldn't) be kicking a programmers butt for not getting something done if he didn't have a clearly defined task, good resource support, and a chance to get his input into the timeline. IT projects overrun all the time (God knows I've been on some doozies) but sometimes (like the best project I was ever on) the coders/architects get some say in the timeline and thus the timelines are realistic. I don't mean "easy" or "lax" just reflective of reality. And they aren't developed until AFTER the specifications are fully understood/agreed upon. And feature creep isn't allowed or is allowed only with commensurate injections of time during the development process. In these cases, things come in on time, on budget, and with quality.
It's just too damn sad that people never spend time to reflect on old projects and learn why they worked or failed and how to repeat success and not repeat failure.
-- Mal: "Well they tell you: never hit a man with a closed fist. But it is, on occasion, hilarious."