Even Programmers Get the Job Search Blues
Andrew Leonard writes "Seems to me that Slashdotters might be interested in Salon's cover story today about the tightening job market for programmers. DISCLAIMER: I edited and assigned this story, so I am not an impartial advocate. But I still think it's pretty good." Andrew's right - it is a good story. Things are changing right now - but I'd still rather be a programmer then most other jobs right now.
I came back to work after New Years' to find that the VP of R&D was fired from his position. It didn't take long after this for the company to reorganize things. Several programmers were let go, including myself.
"Well," I thought, "this should be no biggie...I'm a Java developer, with solid SQL and HTML skills. I should find a job in no time."
It took me two months to find new work.
Why? Because the major employer in my area (Intel) is not hiring, and a whole bunch of start-ups are laying off programmers. As a result, Java people with 5 years of experience are having to settle for jobs that they are vastly overqualified for, or to relocate to the Bay Area. Having had only two years' Java experience, and only academic experience in other languages (C++ and C), I was stuck facing a very difficult market indeed.
What saved me was persistence (I really wanted this job and I kept bugging the HR person until I got an interview), a strong math background, and enthusiasm for the technology that this particular company is working with.
This experience has taught me never to rely on what I learn from my job again. If I'm doing Java development, I should be programming open source software in C++. If I'm doing C++ development, I should be practising my Java skills (and maybe contributing new libraries to the language). If I'm doing web development, I should be doing documentation on the side. Etc. Even if you're good at what you do, be ready to do something else very quickly. Java could be passing fad; Linux someday a bad memory for the Microsofties. Or Windows could go the way of the dodo bird, and many MCSEs will find themselves screwed. You just don't know. There are no sure things in this sector.
ObJectBridge (GPL'd Java ODMG) needs volunteers.
Finding God in a Dog
But unlike them I'm qualified. :)
I agree with others on here...good qualified people are finding work. I did, and am happy. It just took a bit longer than usual this time.
Well, fuck 'em. I'm not interviewing anyone under 25.
My company does not have a foosball table. We do not give everyone a state-of-the-art laptop and a top-of-the-line desktop machine. We don't have frequent scheduled "team building" junkets. And finally, we will not pay you what Viant paid you for six months before they laid you off. I'm not wasting my time interviewing another "bright kid" only to find them shocked and dismayed that we aren't throwing cash and prizes at them.
We do offer the opportunity to work in Perl and Java coding next-generation telecommunications products. We are open-source friendly, if not a bit zealous. We value ingenuity and innovation, not buzzwords and technopolitics. We are only one or two quarters away from being the first company to be profitable in our market space, so our stock options will actually be worth something when they vest. Unfortunately, anyone who wasn't in the job market before 1998 doesn't understand that not all jobs are cool and doesn't believe that stock options will ever make them money.
I'm all about living in castles in the sky; I just know you have to build them first. If you're still looking for VCs to buy one for you, then get the fuck out of my resume inbox.
One engineer I work with was fed up with his law firm not letting him work on technology cases like he wanted, so he became an engineer. With a bit more school, I have no doubt I could do the reverse.
That's exactly what I'm doing; taking my still-damp BS in Comp. Sci, and going to law school. And I get some really funny looks, everytime someone hears about it....
Woah! Perl Entry level? Where in the world did you see that at ANY pay level? I'm serious!
ErikZ
eazolan@davesworld.net
Democrats or Republicans. They are both taking us to the same place and they are not afraid of us anymore.
grep "lotsamoney" jobs
If you read the article the gist of it is you can't know vbscript/javascript and expect to get a good job. It takes skills to pay the bills, The days of everybody and their mom getting a programming job because they could run frontpage and read are over....
http://uptime.netcraft.com/up/graph?mode_u=off&mod e_w=on&site=www.ebay.com&submit=Examine
That link is current as of right now.
No, Thursday's out. How about never - is never good for you?
It's a fact of life that people get pushed into bankrupcy -- they might lose their job, have a kid unexpectedly, have a spouse die, get injured and miss work, or a thousand other possibilities unrelated to just overextending themselves.
The new bill on just passed by the House puts credit card companies at the front of the line -- right after child support (although that's an amendment, originally child support was second) -- in a bankrupcy. People will lose their homes, their primary modes of transportation, health care, and even *go hungry* because the credit companies will, by law, have to come first; before paying the heating bill, before buying groceries.
These huge credit companies do just fine, and they have existing ways to protect themselves -- credit reports and credit ratings, reposessions, and they *do* get some reimbusement in the case of a bankrupcy. They make huge profits now, and this will just make those profits even bigger and do so at the expense of hurting real live people.
I can't decide if you're a troll, an inexperienced kid whose never known someone fallen on hard times, or just some asshole who thinks that MBNA and Citibank need additional protection at the cost of human misery. Whichever you are, you make me sick.
----
Every year during my review, I just pray the words "slashdot.org" aren't mentioned.
I think it was rather nice of Salon to let one of the unemployed Techies they interviewed make use of their office computers so he could print out his resume.
no offense mate, but there are MILLIONS of people who code Java, SQL, and HTML. i'm an engineering director and i immediately 86 any resume that doesn't have anything beyond Java, SQL, or HTML. why? because most Java only programmers don't really understand computers all that well, they don't understand memory management, file management, load issues, etc. note, i didn't say ALL. but most. i hire software engineers not java programmers. i hire folks who can code in any language because they understand what's going on. i hire folks that understand computer science theory and software hackery.
my team currently codes in perl, C, java, SQL, HTML, Javascript, i.e. whatever is needed for the tasks at hand.
--
in this age of communication i'm just not getting through
Math has a lot to do with programming, especially if you analyze algorithms and optimize them. This is how you discover that, for large arrays of values, Quicksort is way faster than insertion sort, which is faster than bubble sort, and why. (Check out this site for a demo.) This is how you find really clever ways to speed up multiplying really huge matrices, and when the payoff is big enough to warrant using the "clever" algorithm.
Granted, you don't need the piece of paper (i.e., the degree) to have the mathematical knowledge. But the degree is a credential that lets other people know that you know what you're talking about, to some extent. It's a yardstick, however flawed it might be. This is why many employers in my area are now eschewing self-taught programmers for those with real Comp Sci (or related) degrees.
On a personal note, I have noticed that many self-taught programmers feel they are somehow superior to those who actually busted their chops learning things like compiler theory. They often sneer at those of us who wasted our time getting that piece of paper. But you know what? Those of us from theory land often have this knack for finding better ways of doing things, and we even (gasp!) have some very nice skills at creating good abstraction frameworks. The down side is, we sometimes don't follow-through issues to their logical conclusion. After all, in academia, as long as something works, you've proven that it's doable in theory. No sense wasting time making it better, when you could be pursuing your next big problem to solve.
To speak to the original point, I think there will always be room in this world for the highly skilled programmer, someone who has both a theoretical foundation and the industry experience to make it practical.
The laws of statics don't change over time; technology does. If gravity's pull doubled every 18 months, you'd have a lot of "legacy" buildings crashing to the ground.
As a college student expecting to graduate with a bachelors in computer science this May, I'm rather worried about the tightening job market. Sure, experienced geeks may be able to ride this out, but I'm finding that companies that would previously hire almost anyone are getting really picky now when they recruit at universities. I've had some real difficulties and I'm worried that I may remain unemployed after I graduate.
Any ideas on scaring up more job opportunities?
Meldroc, Waster of Electrons
FORTH - the Yoda of computer languages
> Um, how could you go bankrupt and expect to keep your home?
There are two kinds of bankrupcy, speaking generally: in one case, you turn over all of your assets to a trustee (sometimes with an exception made for clothing, sentimental goods, & other items of negligble value -- this depends on the state or local jurisdiction), who thens sells everything off, pays the debts, & turns any cash left over back to you; in the other, you find a trustee who legally shelters you from debt collectors, arranges a payment schedule, & you get to keep your home, your car, yor computer & the other stuff you need to live your life.
Credit companies don't like the second arrangement because it means they usually have to forego much of the interest the creditor owes on the principal. Even if the creditor is injured, loses her or his job in a down economy, or otherwise had to declare bankrupcy due to no fault of her/his own -- & is a responsible borrower.
I guess they'd rather fatten their bottom line, & save the responsible corporate citizen image for commercials.
Geoff
I think I see a trend here. Maybe for them it really would be easier to muzzle the entire internet than to produce p
Wow. That's the funniest thing I read today.
I never got to see this product, but I imagine telling one of these things: "I'd like a word-processor. And it's got to handle footnotes. It better be able to import .png's too, or you'll be heading out /dev/null!"
If things are getting easier, then why does it seem that code is getting worse and more bugs are turning up? Things are still hard to do. As we figure out how to do one thing easily, another problem comes along. Saying that computer science is easier due to advancements is like saying any other science is easier. Physics has come a long way in 50 years but is it easier? Some would say it's a lot harder.
Someday, sentient computer intelligences may be able to write their own code. Someday humans may be able to do the same with genetics. Those days are far off, though so until then programming will be tricky, pointers will be a pain, and schools will have far less graduating CS majors than freshmen ones.
-- soldack
...is that, IIRC, it is illegal to call yourself any kind of "engineer" unless that profession has been officially recognized as such, has a test to take, has an across-the-board group of people to decide what the qualifications are, has a code of conduct, etc.
Sort of like the various Professional Engineer exams, the Society's code of ethics with the stainless steel ring, etc, here in America. Except that there, if you don't go through that and call yourself an engineer, you're on the wrong side of the law.
Actually, I think the steel pinky ring thing came from Canada in the first place.
You cannot apply a technological solution to a sociological problem. (Edwards' Law)
not that I do, but it was nice to think that I could;)
-Peace
Dave
Free as in "the Truth shall set you..."
About the only raw HTML I still write is in these Slashdot input boxes.
When a machine learns your job, what are you going to do? - a popular 1970s bus poster.
Someone came out a year or two ago and said "all hail the wonderous Internet." Many companies become overnight succeeses without actually doing much other than contributing to the hype bandwagon. Now everyone has seen these companies for what they are, they are pulling the funding. What was so hot is now back to normal and progressing as it was before it got hyped like mad.
; 2b=b;2=1
I say wait a month or two and let these companies recede from the net. They were never really wanted anyway and they never did much either.
How does this affect employment? Once the companies that were in it for the cash are gone, better jobs will be available as other sectors realize what the Internet can do for them. P2P is opening up new horizons already and there is no telling what will come next. Computers and Networks are still in their infancy. Getting rid of the crap companies is one step closer to maturing the online world.
With better companies doing business online we'll have better job opportinities that are (1) more challenging and (2) more rewarding to the people in the positions. More money? maybe. I think we'll start seeing those level out to average (or moderatly high) income levels - and not the absurd levels they have been in the past.
Or something like that.
---
a=b;a^2=ab;a^2-b^2=ab-b^2;(a-b)(a+b)=b(a-b);a+b=b
Price, Quality, Time. Pick none. What, you thought you had a choice?
Call these guys:
http://www.mybizoffice.com/
Although it doesn't talk about it on their website, they provide sponorships for people who find their own jobs. You will have to work as a contractor where MyBizOffice is your employer of record, but doesn't actually provide you with a job, you still have to find it yourself. But, one of the many benefits that mybizoffice provides is that even when you change who you are actually doing work for, you keep the same visa sponorship as well as benefits like health insurance and retirement.
I use them myself, but not for visa sponorship because I don't need it.
When information is power, privacy is freedom.
If you're good at what you do, then you don't have to worry about getting fired. If you're good at doing what you do, then you don't have to worry about being rehired. I'm good at what I do, so I'm not worried. It's not like I'm living under the sea.
Tight markets come and go. The fellows in charge decide they want it one way, and tomorrow they'll want it some other way. Yesterday, the craze was growing your workforce as fast as possible: just look at Yahoo and Amazon.com. Today, it's downsizing again. Tomorrow, it'll be back to growing the workforce. It's the circle of life.
If you're worried, then put your mind at ease. That is, if you're one of the few qualified employees. You have to be willing to put in long hours for not a lot of glory, and you have to be quick on your toes. If you want, my company is hiring. Be our guest.
And don't overlook training. Skills are important; they're what separates you from the rest of the pool. Learn that extra language. Study up on that extra system. You never know when you'll need it for the next great job. You never know when you'll run into that next great employer tomorrow. It's a small world after all.
...and that's a good thing.
The technology boom created a massive industry filled with people with little or no programming experience being thrown into large-scale projects. The (predictable) results are just now beginning to be discovered -- witness the recent SlashDot article about e-commerce sites that get price info on the client side.
Unfortunately for a lot of people, a maturing industry makes jobs obsolete pretty fast. HTML skills are no longer in as much demand because software is now available that does a pretty fair job of markup. The "soft" technology industry is being rendered obsolete by maturing technology (e.g., XML for markup)
Hopefully, this will act increase the standards of the programming field.
Not that it doesn't seriously suck to be unemployed, but that's capitalism for you. Ya pays yer money, ya takes yer chances.
/spm
I work for a VB house, and now, MAYBE, we can hire some good programmers - maybe.
Yep, I've seen those 1 year of VB guys too, and we wouldn't hire them either.
GOOD work CAN be done in any language, and the basics are the same in all of them. ALL the Sr guys in our group can do C and or C++ and HAVE, we all do at least some SQL work, and some are full fleged DBAs in their own right.
There were too many programmers out there (and I'll admit, way to many of them we "VB Programmers") who thought they could program because they could write "Hello, World", and had taken the shrink wrap off the box.
With 10+ years of various experience (DOS Basic, DOS C, MASM, VB,C++, T-SQL, XML etc) including design from the ground up of some "Non-trivial" systems, I'm not TOO worried. I'm being a bit cautious in buying a new house, but that's about it
-- 73 de KG2V For the Children - RKBA! "You are what you do when it counts" - the Masso
i saw the article yesterday and laughed as i read it.
i mean, the bay area gold rush is over. you're not going to get those $150/hr html consulting gigs anymore. The job market is tight. but not too tight. a quick search on hotjobs.com shows a ton of job openings. and even though craigslist doesn't have hundreds of postings a day in the prgrammer / sysadmin area, they ususally have 4 or 5 new ones every day. i have more friends at companies that are doing well than i have friends who have been layed off, and everyone i know has at least one "backup" job in case their current employer folds. and the people in the article are web designers (of which there are too many period) and asp/vb programmers? give me a break. if you've got a few years of c/c++ experience, you'll land something really quick. the people that are having the worst time are the corporate/middle management folks, who have no tech skills whatsoever, and the "i studied cs in college but i've never done any practical coding before" types.
--BlueLines "The cost of living hasn't affected it's popularity." -anonymous
It's not that bad, actually. If you know C/C++, or have decent Unix admin skills, you can get a job in about 2 days in New England.
It does mean that you can't read "Learn VB in 24 hours" and expect to be making 150k tommorow. I do build and release work, as I love pain a great deal, so I know *I'm* never going to be out of work for too long...
What it boils down to in the end is the same thing it always has; make some contacts in the industry, don't screw up your first job TOO badly, and you're probably ok.
I still laugh at a person who interviewed for a junior programmer slot at one of my old companies (this was during the dot-com frenzy) with about a year of VB and a 6 week C++ class, claiming they needed 100k to even consider the offer. Those kind of people are out of work these days, and thank the gods for that. I just wish the welfare system had a "maximum hubris" limit...
But again, technology isn't going anywhere, so if you actually have "The skills to pay the bills", you don't have anything to worry about.
>If PacMan had affected us as kids we'd be running
> around in dark rooms, munching pills and
> listening to electronic music
You know, that makes my life make a lot more sense.
Comment removed based on user account deletion
Andrew Leonard may be the one needed job hunting advice soon...
DrLunch.com The site that tells you what's for lunch!
Many people who ARE good at what they do could be equally good at other things. One engineer I work with was fed up with his law firm not letting him work on technology cases like he wanted, so he became an engineer. With a bit more school, I have no doubt I could do the reverse. Or move into a different tech niche than I'm in. If you know how to learn, and care enough to do it, you can move where the tides take you.
Actually, I'm a little glad the market is getting less frenzied. I was starting to get a bit annoyed that people who thought GRE used port 47 were making 6 figures.
I agree with your point about languages getting more high level, but I don't think your point about teenagers programming is valid. I believe that this is because computers are cheaper and more available then they were say 25 years ago (when things were programmed in assembler). Back when that was the case, computers were very expensive, and getting time on them required more clearance than carrying the nuclear football.
One more thing: We still need to learn to program as well as we build buildings. Buildings don't crash to the ground a lot. For some reason, programs do, and we don't understand why. Until we reach a level in programming where we truly understand the architecture of systems, we won't have your average joe programming.
Just my two cents.
"This is not a company that appears to be bothered by ethical boundaries."
Attorney General Mike Hatch on Microsoft
...
I think that the increasing franchise of programming, which is at last being grasped by the common man, can only be a good thing.
So what is it? Good or bad?
...
UID over 47? Beware.
Yes, as a matter of fact - my UID is greater by a factor of roughly 300. Sorry if this offends your senior status...
--
Vidi, Vici, Veni
Been unemployed for 3 weeks. Nothing on the horizon. Planning to go back to school for a PhD.
Software is more a matter of getting used to the idea of working only 9 months a year and programming is just too easy for people to do.
But you should think about EE instead of CS just the same. With PC's sitting on shelves gathering dust and mobile appliances flying off the shelves you need to focus on designing hardware.
Well, according to existing law, yes. However, the credit companies have big, big sticks they can hit you with. Bad debt NEVER goes away. It gets bought by the credit reporting agencies, and they dutifully report the debt as delinquent FOREVER. So you can't ever get credit again unless you declare bankruptcy, and if this bill goes through, not even then.
Of course there will be some abuse. But the cost of preventing that abuse is going to be tragic.
IMO the abuse cost us far less.
"...and computer programming has become progressivley easier over the years."
Wrong, totally wrong. I've been programming since 1980 (FORTRAN, punch cards, yeah, I'm an old fart aren't I?)
Programs today are far more complex than they ever have been, and that trend will continue. Anyone who thinks that programmers need fewer skills and less experience than they did is living in la-la land.
Well, you're wrong :). Being a "web programmer" professionally for 4+ years, I can say that yes, it's technically easier than JAVA, and moreso C/C++. But, technical syntax is only 20% of the puzzle. I know a lot of BSCS folks who've built lot's of code (mainly PHP and Perl) and the architecture is horrible, Yet, they've coded some very nice menu systems for Gnome! A good web programmer is more of a web architect. They understand Systems, Networking, RDBMS's, Middle Tier Applications (ASP/PHP/CFML/etc), AND html/JS/WML/etc.
Web development is not software development, and visa versa. They are different, and require different skillsets. The problem is the barrier of entry is lower on the web development front. This accounts for many of the amazingly gross network and web architectures found in companies today, but does not necessarily mean that web development is a "thin" career move. Personally, I'd rather focus on technologies that require less syntactical knowledge, as I learn things on a more creative and cognative level. After all, we are not made for the machine, rather, the machine is made for us.
There is no longer anything that can be done with computers that is nontrivial and clearly legal. -- Paul Phillips
Online investing accounts for a very small amount of total money invested in all stocks. Most money comes from corprate investing houses (Merril Lynch, Payne Webber, etc...).. The only real effect online investers have is attitude of the market. Their descions impact others in feeling only not the direct price of the stock.
--- My Karma is bigger than your...
------ This sentence no verb
The invention of the printing press didn't turn every man into an author, and VB doesn't turn PHBs into engineers.
Thank you! Yes, most anyone can learn HTML, Cold Fusion, or even ASP, but that doesn't make them good web developers!
There is no longer anything that can be done with computers that is nontrivial and clearly legal. -- Paul Phillips
Weren't the "engineers" -- thinking of McDonnell-Douglas here -- largely beaurocrats who grew fat on government military-industrial largesse, then were crestfallen to find that they really *weren't* engineers?
-grendel drago
Laws do not persuade just because they threaten. --Seneca
--
Vidi, Vici, Veni
The end result id natural language programming. You literally tell the computer what you want it to do, and its amazing compiler will produce perfect code.
This is a LOOOOOONG way off, if it ever happens. Natural language isn't good enough to precisely express many problems. (That's why mathematicians and scientists have their own languages!) There are way too many ambiguities.
And even if it does come about, the skills programmers use (primarily thinking logically about a problem) will still be necessary for more advanced uses of computers. Programmers of some sort will always be in demand.
In many ways, I think programming these days is a lot like graphic design in the late '80s, early '90s. Graphic designers were freaked out when commoners got Macs and started putting their LaserWriters to use building fliers, magazines, and so on.
But the designers soon realized that no set of digital tools could replicate the trained eye, the native skill of a good designer. The same is true of programming. Look at the tools out there that supposedly automate web site development. They're a joke - they hamstring you and don't let you do anything out of the box at all.
For the same reason the average Microsoft Publisher-using John Q. Public isn't going to usurp a trained designer who uses Illustrator and knows how to squeeze the most out of it, no connect-the-dots programming tool will force skilled programmers out of their jobs.
No matter how far the technology advances, you have to be able to think a certain way in order to effectively program a computer. Sure, every Tom, Dick and Harry will someday be able to program their home to detect intruders, fire up the oven, and monitor the baby, but by then professional programmers will be busy making software that tells nanites how to scrub out a cancer patient's body.
Read the EFF's Fair Use FAQ
This is /. so some people will probably cringe, but if you're as good as you say you are then try Microsoft. Seriously.
Great place to work and they're always looking for smart, competent people. When you're fresh out of college I don't think they look for skills in specific technologies (beyond stuff like C++). The important things are your problem solving skills and your ability to learn quickly. For example, most interviewers don't care whether you code a solution in C, C++, or Java.
You sound like a good fit as a Software Design Engineer. Sponsorship shouldn't be a problem. You should interview, even if it's just for kicks.
Even if you don't heed my advice, look into some real companies and not some inane IT shops. If the interviewers aren't interested in your checkers and chess programs I'd consider that a bad sign.
It's interesting reading the responses so far - they seem to indicate that only the weak (unskilled) tech folks will be hurt by layoffs and well, since they aren't as smart as we all are, that's fine.
Sometimes it feels like an awfully cold world we live in.
Languages like Visual Basic, decidedly more "high-level," have failed to catch on for serious development. The reason, of course, is that "natural language compilers" will always fail as long as a computer can't intelligently optimize code itself. No computer today can do this, and I think it's a long, long way off.
Software engineering will never be a "blue-collar" environment, and certainly not because of natural language compilers. The invention of the printing press didn't turn every man into an author, and VB doesn't turn PHBs into engineers.
Ian Samuel
Great article -- thanks for the pointer.
In the 1970s, engineers were the same hot property that programmers were last year. During the grinding 1970s recession, times got very tough for them. Many of them lost their homes. Nobody but engineers could afford the payments, and there wasn't much work for engineers. Many of them ended up simply defaulting on their debts, walking away from houses where they owed more (sometimes a lot more) than what they could sell the house for.
It is no coincidence that the big financial companies are pushing through the bankruptcy legislation now. Their stories of abuse are foolish, but people are buying it. ("bankruptcy frauds" now joins "deadbeat dads" and "welfare moms" in the Archive for Scary Stories About Bad People and How We Shouldn't Let Those Bastards Get Away With It.)
They are not pushing through this legislation because of existing abuses. It is because the lenders have been irresponsible and want to make sure that We the People pay for their mistakes. It's a good step along the path back to debtor's prisons. (And if that doesn't scare you, go study your history books. See: "American Revolution, Causes Of.")
If you are a techie, don't set yourself up to rely on the extraordinary incomes of the last few years. Some of us will do fine and will continue to make good money, but many of us will not. Really good performers will always tend to do well -- but there are a lot of marginal people that have been brought into the industry by the 'gold rush' and it's going to take quite awhile to weed them out. Eventually they will go back to jobs which fit their talent levels better, but that's a ways off yet. There will probably be four or five years of tech oversupply.
Could be longer if industry keeps whining about the H1-Bs (aka indentured servants. See: "American Revolution, Causes Of.")
The ring is a great way to spot canuck engineers when they're over the border - most americans don't wear them, IIRC it's not as big a deal as it is here.
"Engineer" is protected by law here, like a legal or medical designation, and you can get in big doo-doo if you use the word anywhere w/o being a P.Eng. MCSE's aren't allowed to spell out what those letters mean, even, on business cards / course offerings here in New Brunswick.
..don't panic
Comment removed based on user account deletion
Also, it has seemed like that sort of thing (web programming) is something almost anyone can pick up on their own or in a one or two year program. The demand as the article said, is still out there for engineers, thing 4-5 years for a bachelors. With that much training you're more marketable.
Getting a job on little or no degree (diploma's included) seem to me as a starting point. Get the job, get working, save money, get a bachelor's in something, otherwise you're expendable.
But that's just my humble inexperienced position. Two more years and real world hear I come, then I get to learn how wrong I really am about everything :)
--- I used to moderate, then I read the -1 articles and decided having to filter through them was not worth it.
And you base this theory on what? The perfect understanding that people have when communicating using natural languages? Give me a break.
Artificial programming languages are never going to go away, because they are clear (to the computer) exactly what you mean. The evolution you are talking about in programming languages is making the languages clear to the people who use the computers. But there still needs to be a good mapping between the high level language used for programming and the low-level language the high level language is morphed into. This is why understanding pointers is important for Java programmers, even if you can't directly manipulate them in Java. I don't see English or Russian or even Esperanto being able to provide the same sort of mathematical mapping.
I do think you are right, though. Programmers are going to be the assembly line workers of the 21st century.
-jon
Remember Amalek.
I agree that increasing the popularity of programming is a good thing, but I don't even know where to start explaining what's wrong with your method.
First of all, natural language at what level? Clearly I can't just say to the computer "Hey, create me a report." It's going to need to know source data, selection criteria, subtotaling, etc.
Second of all, there are many many details that go into a "solution". Natural languages skate over these because we generally don't need to specify them. Not, I hasten to add, because everybody already knows about it (in which case just tell the computer and then it would know too). Natural language just isn't all that precise about some things. "I gave the boys two balls." How many boys? Two balls each or two balls total? Gave as a gift or just handed to them?
Programming languages aren't just regular languages with a lot of extra punctuation. Each "word" in a programming language has an exactly specified meaning and function. But natural languages have fluid meanings--even the parts of speech don't stand still! "You can verb any English noun" my friend used to say.
That precise, technical quality serves two functions. The one that's obvious to every programmer is that computers don't understand anything else. The other function is: algorithms themselves often (always?) need precise definitions. Sure, the computer can create a precise algorithm from a fuzzy natural language input--but is it the one meant?
This would all be obvious if you thought about what you were saying: You want a device that can take a natural language specification and output a working program, right? We already have that device--it's called a programmer. And how often does the programmer have to come back with questions? Pretty damn often. And how many people can successfully talk to a programmer such that the programmer outputs a program that the user wanted? Not very many--that's why we have "analysts" (and humor sites about stupid users).
It all boils down to this: At least 50% of people don't know what they want. At at least 50% of the people who do, don't know how to ask for it.
--
324006
I think it will help make computer science (and other similar) degrees more important. It will also increase the value of experience. Companies will now be a lot more carefull on who they hire. They are going to want to see more proof that the prospective developer can get the job done well. Things like college GPA (especially in you major) and performance at previous jobs will matter. Interviews will become more technical.
In the end it will probably be better for people that are good at what they do. The industry will see them as more important, find that they are rare, and be willing to pay even more for them. Although companies are going out of business, there are new opportunities elsewhere. DotComs may be dying off but all software development isn't. Code doesn't write itself and it will not for a long, long time. There are still problems that people want solved that require someone getting some kind of computer hardware to do things it wouldn't do all on its own.
-- soldack
Agreed.
:)
As a lab assistant in my college days (back shortly pre-'Internet Time', in 93) I had the dubious honour of hand holding first year students through basic pascal programming assignments. You could tell from day one who was going to make it. The way you did it was say, "OK, tell me, in english how you would accomplish this task..." and outline an analouge of the program they were required to write. The ones who would score A eventually would describe the process in detail using words like "while" and "for" natually. The ones who would score Bs eventually would describe it in fuzzier language, but still get the point across. When you got to the C level, the answers would get closer to "I would just sort them."
In every case I can remember my predictions bore out. I cannot imagine a natural language that would cope well with "Just sort them." as a program.
What it will do is allow people who may have poor rote memories and other LDs but have solidly logical minds (there are lots of them out there) play in the same field as programmers (I've since moved to Sys/Network admin/Team leader/manager jobs myself). More power to them. I still seriously doubt that there will be no demand for people who know lower level languages. I mean there's still a demand for good assembly language programmers, especially since they are usually the best C,C++ programmers since they understand the basics so well.
--
Remove the rocks to send email
On the whole, I find that I prefer Slashdot posts to twitter ones because I don't get limited to 140 chars before
What the heck did a math degree every have to do with programming? How this post got rate "Interesting" I have no idea. Back in the old days it was not a matter of high level degrees, but access, because the computers were so expensive only a few could use them.
Today almost everyone who wants access can have a computer orders of magnitude faster than the original clunkers which were once solely the purvey of your "top flight academics". Thus it is a heck of a lot easier to learn how to program.
Granted, programming languages are getting simpler to use, but building a complex app in any language is still a very difficult endeavor. Languages like Java make it easy for novices to build simple apps, but writing a solid program with any thing over a few thousands lines of code and integrating your work with the work of others is still just about as hard in Java as it is an any other language.
So yes, the unwashed massed of 'programmers' whose expertise stops at the point of an applet or scripting single web pages are going to have a hard time find jobs in a tight economy, because there are so many of them - but those with the skills to engineer large, complex systems will always have a job.
-josh
"HTML engineer" was the biggest myth of the last two years. Suddenly, if you had the attention span to read a book on HTML, you could get an $80k+ job inside the engineering department no problem. Here in san francisco, that was absolutely because there were hundreds of hopefully ecommerce shops run by MBA's with 0 technical knowledge. They would pile on the "engineers", who often with little experience would flounder... none of these companies were working very efficiently. Fast forward a year, and yeah, it's a lot harder to get that kind of job. People won't kiss your ass for having read a book and having designed your own homepage. You don't get a six figure signing bonus for knowing how to place images in tables. I know it's been said before, but good riddence. San Francisco had been torn apart by new money. $3000/mo 500 sq ft. flats. Overheard party circuit conversations about feeling sorry for the poor people "but honestly what do they expect". More mercedes benz automobiles than hondas. Honestly, you couldn't have lived in the bay area for the last three years and not been overwhelmed by it, even if you were part of the problem. I think what the salon article meant to say was "Tech Job Hunting returns to normal: Tough but fair". It may mean that with 2 years of experience you'll be struggling to sell yourself to a potential client. It may mean that what you got used to as a standard of living wasn't real. But as for a programmer with real experience and modern skills, there is most certainly work out there. I am both an engineering consultant and a staff member in an engineering consulting firm. While there is no doubt that demand has waned, My own services have stayed very much in demand and pricing hasn't dropped much from my peak of $250-$300/hr. I have found that those that we worked with with at least five years of coding are similarly in demand. We have also had some success placing other, but these rates have dropped significantly. At one point we were able to charge $110-$125 for QA, $125-$150 for design and $150-$200 for mid level programmers. These rates are now more like $40-$50 for QA, $50-$60 for design and $60-$90 for contract programming. I actually think $120k/year + overtime for doing HTML design is DAMN GOOD PAY. It'll just take a while before folks can swallow the bitter pill they have been handed. But when they do, they'll do just fine. Perhaps they won't be eatingf lunch at aqua anymore. Sleeper
It's always a sure sign a company is going down, though, when they start by laying off their marketing folks. I can think of at least three friends who worked at marketing positions who've been laid off in the past 6 months. I know what companies I'm not investing in!
Mmmm.. Donuts
The end result id natural language programming. You literally tell the computer what you want it to do, and its amazing compiler will produce perfect code.
Yup. Exactly. When you (or anyone else) get good, like really good, at C++ or Java or whatever you will eventually get to a state where writing the code is just not difficult. Like, as easy as speaking. Pretty well all the software engineers I've worked with have got to this state. Then all that remains is to explain to the machine exactly what it is you want it to do. Like, exactly. This is almost immeasurably hard and is the chief cause of failure in software projects. Arguably the only cause of failure.
Natural language programming will, kinda obviosly (IMHO) not get around this fact.
Dave
I write a blog now, you should be afraid.
I'm out of work right now (right out of college - doh) and I've been applying to every job that looks interesting for weeks. I may not be Alan Cox, but I'm not a neophyte who just picked up "Perl for Dummies". In fact I'm damn good at Perl, PHP, C, C++, and hell, I could probably pick up Ada or Smalltalk again if I had to. But no one will even call me back. Jobs that are listed on Monster, Dice, even companies' web sites turn out to be "on hold." What the hell am I doing wrong, or do I just need to quit being picky and go apply for those "experience in Microsoft Internet technology preferred" jobs? This is driving me nuts.
</rant>
* And remember, it's spelled N-e-t-s-c-a-p-e, but it's pronounced "Mozilla."
Natural language isn't good enough to precisely express many problems.
:)
Being a better way to express what I said. And shorter. And ironically proving the point in the process, kinda.
Hmmm, time for the blue pills obviously.
Dave
I write a blog now, you should be afraid.
This is a good article, but the downturn started in December. That was when it started to get more difficult. I have friends that think that they can make those same salaries that they used to make and they are still unemployed. I klooked for a lower salary and got a job. I am even making a little more than I was before I got laid off.
Of course normally when you leave a job an dgo to a new job you get a 20% pay increase, I only got about 3%. I am happy to be employed, but it took 6 weeks.
I don't want a lot, I just want it all!
Flame away, I have a hose!
Only 'flamers' flame!
Damn. I've been watching too many Disney flicks with my kids:
Coincidence? Or Vast Media Conspiracy?
MacOS, Windows, BeOS, GNOME, KDE: they're all just Xerox copies
OTOH, I don't buy the magic self-programming computer. This sort of prognostication is much like the now-laughable predictions in the early 1950's by an MIT professor that "I think that within five years we will have computers that can think."
That is, the problem of "programming" the computer via natural language is so vast as to be nearly equivalent to the (now somewhat discredited) goal of "classic" AI to put a brain in a box (or rather, create a non-embodied AI). Why? Because "natural language" lacks precision and information. Anyone who's had to reconcile marketing "requirements" with engineering reality will realize the incredible disjoint here. In its most general form, you are creating a programmer AI who:
No, I believe that highly skilled humans will always remain a part of the "programming" process even in the distant future (unless/until the very notion of "human" itself is challenged, ala some Brin short stories in Otherness.) As knowledge and technology improve, the capabilities of end-users will increase... as will the capabilities of the highly skilled software creators. Such "programmers" will be empowered by ever more sophisticated knowledge of software architecture, HCI, algorithmics, and lessons of history... along with some powerful software tools. But in the end, it will be humans using tools to craft things that have value to the human experience.
Comment removed based on user account deletion
Ah, I see the problem here.
You don't work in the software industry; you just make stuff up about it.
In point of fact, almost all programmers do not work on producing software for sale or distribution. They work or consult for organizations that are producing or maintaining custom software for specific purposes.
So yes, the spread of open-source tools and baseband software infrastructure means these people can be more productive for less money and therefore increase the rate of return per $$ spent on hiring them, and therefore economically rational employers will hire more of them and pay them more money.
"Patriotism is your conviction that this country is superior to all other countries because you were born in it." -- GBS
The real answer is to keep up and stay profitable. Businesses love profitable. Don't think of them as employers, think of them as folks who will let you use their capital and resources to make both of you money. Everybody works for themselves, and always has. The business has needs and resources. You have needs and resources. These resources may interlock (you need money, they need code...)
*whup* "Get along, little electrons. Heeyah!"
So let me get this straight: This guy is getting paid ~$60k/year, and all he can do is complain that he's not being paid an over-inflated $110k/year?
Oh, wait: he has to put a little effort into finding a job, now. It might take him a whole week of trying to get in touch with potential employers to find a job. Boo fucking hoo.
And what kind of idiot leeches Salon's office equipment because they want to "avoid a trip to Kinko's"? Didn't he just come off two years of $100/hour contracts and $100/year salaries? What an ass.
Any sufficiently well-organized community is indistinguishable from Government.
Forth like you if honk then
--
this is why i work in marketing: there's always a need for more bullshitters!
- j
i guess this isnt any different from cnet's consistent scaremongering or flame-baiting as news, but seriously. is there anyone here who think that c/c++ coders cant get jobs?!
it all depends on who you consider to be programmers. are you one of those guys who puts "5 years of HTML programming experience" on your resume?! if so, maybe youre in trouble...
unc_
This shouldn't be a big surprise. Just as any sector in the stock market has done in the past. It shouldn't be a shock that there are less jobs, the technology sector is just correcting itself after an over-expansion.
www.rose-hulman.edu/~castlebs
My .com failed...so I went searching about a month or so ago. I'm a skilled admin. I have 8 years experience with several good senior level consulting and engineering jobs behind me, so I'm not new to this. I work with NT (a lot), Linux (good bit), and Solaris (Some), as well as most network hardware. Over the last several years I've always had a huge response to putting out my resume.
Not this time. I got calls, some goood, some bad, but not nearly in the volume I had seen before. With everyone saying "recession" the market is really on hold for a while. Companies just aren't hiring right now.
I just took a contract position at a good company. I'm not doing as much UNIX or security work as I like but the pay is good and hopefully it will get me through this market downturn.
The people I feel bad for are those in lower level positions. I'm sure they will be hit the hardest when out there looking.
Wansu wrote:
....
> 36 years old and only making 110k a year?
You'd be surprised at how many good system programmers over 40 make less than $100k a year. It depends on what part of the country too. $100k isn't that high a figure in California but it is in North Carolina.
Indeed, since cost of living differs a lot. The Salary Calculator shows that a $110K salary in San Jose is the equivalent of a mere $67K in Durham, whereas a $110K job in Durham would have to become a whopping $170K job in San Jose to meet the same quality of life.
And a lot of people living in North Carolina would probably argue that you couldn't pay them twice that because the quality of life measured in non-dollar terms is much higher there. Never underestimate the nontangibles, like a nice home, more time with family, and so forth.
Another factor to consider is that with a slightly lower salary, often, comes a considerably greater sense of job security. If you're just earning for yourself, hey, go for the gold. But if you have a family, you prefer the steady work, the health insurance, the 401(k) that come with a settled job. Those, too, can be worth a lot more than their simple dollar value.
Anyway, I'm opposed to any snot snidely and snarkily commenting on 36-year-olds who "don't have their shit together", whatever that means. Not everybody follows the same path, and what should matter is how applicable your particular technical skills are. I couldn't stand helping end-users once I got past 30, so I boosted my skills. But this industry is full of round pegs and square holes [cubicles]. If he hasn't learned that by now
----
lake effect weblog
{Network engineer in Chicago--looking for work!}
I was the best programmer in my university (acording to performance in contests). I am also a good mathematician. I am very flexible, can learn a new programming language in one week and I speak three languages.
I spent a year working in the USA and then my company ran out of money. I have been looking for another job for six weeks now, and I haven't had any interviews yet. I am getting tired and I am probably coming back to Europe.
What I see in the requirements of job openings is:
- Object Oriented Stuff.
- Experience with Sybase.
- Lots of experience with C++.
- Lots of experience with Perl.
- 5 years IT experience.
- SORRY, NO SPONSORSHIP.
If what they are really looking for is good programmers, they are asking for all the wrong things. Why do they need experience specifically with Sybase? Doesn't it use SQL? Why is everybody mad about object oriented crap? What if you are not a U.S. Citizen?
Since 1993, I've made a master level checkers program and a master level chess program in my spare time. But they don't consider that programming experience.
As I said before, I will probably come back to Europe. I thought this country was good at attracting great brains, but that was some time ago.
Yes, as a matter of fact - my UID is greater by a factor of roughly 300. Sorry if this offends your senior status...
i'm sure this fellow was joking with that sig, but it is funny to see how much importance people put in silly little number like slashdot user numbers or karma (that is, karma after the +1 bonus).
i've been reading slashdot since very shortly after they were on slashdot.org. i was there when they implemented the user accounts, but i didn't bother getting one: there was no need when posting anonymously was always sufficient. in fact i always used to think the people who logged in were less interested in just joining the conversation and more interested in showing off and making a name for themselves. i created my user account only because most people (including moderators) were surfing at +1, and all the conversation was only had with the user account elite. the poor anonymous schmucks were almost completely igonred, regardless of the content of the message.
so at any rate, what i'm trying to say is don't trust anybody with a user number under 87585, as they're just a bunch of jackoff attention-seeking wangwarters.
- j
That's nothing compared to the flooding from open source programmers who don't charge at all for their work. The salaries in the field will go down substantially in the next five years.
I couldn't stand to see all the little trolls cry... besides, how else will they tunnel MPLS and have their gigE LANs be as baroque as ATM?
h tm
. tx t.html
http://www.networksorcery.com/enp/protocol/gre.
or the RFC itself,
http://www.kblabs.com/lab/lib/rfcs/1700/rfc1701
:-P
Remember that what's inside of you doesn't matter because nobody can see it.
C and Java are de rigeur nowadays; good luck getting your resume looked at without it. CGI and Javascript are important to Web shops, particularly those who are writing Web-based applications (not applets, applications). FORTRAN just shows how long he's been around; not many people coming out of college today know FORTRAN.
Citing Basic as experience is semi-pathetic. But Visual Basic is an exception, because regardless of what you feel about it, Visual Basic is the most widely-used programming language in the world, right after COBOL.
So if this guy was sending a resume to a business that was developing Web-based applications, those skills would all point to a seasoned professional who'd been around the block a few times who knew the technologies I needed.
Just because you think a certain skill is a "fanboy" skill, that doesn't mean the applicant is a fanboy.
To give you an idea, here's a short list of my skills. No, I don't put them all on a resume, but by your logic, just by possessing them I'm a poseur.
- Programming Paradigms
- Functional (Scheme, ML)
- Procedural (C, Pascal)
- Object-Based and Object-Oriented (Ada83, Ada95, C++)
- Generic (C++, Ada95)
- Parallel (Compositional C++, Fortran/HPF)
- Programming Languages
- C, C++, Compositional C++, Java
- Pascal, Modula-2/3, Oberon
- COBOL, JCL
- FORTRAN, Fortran and Fortran/HPF
- Classic LISP, Scheme, ML
- Ada83, Ada95
- Markup Languages
- LaTeX (not raw TeX)
- SGML, HTML, XML
- Operating Systems
- MS-DOS 3.3-6.22, Windows 95/98/NT/2000
- AIX, BSDI, FreeBSD, SunOS 5.7/Solaris 7, Linux
- MVS
- BeOS
... Am I a poseur simply because I'm a competent, well-versed computer scientist?Or is your main objection to the applicant who lists C, Java, XML, JavaScript and CGI that he knows more than you do?
Also, pay attention to how you present yourself. You're not coming across as a professional engineer. Professional engineers are people who learn things and solve problems--not people who talk like a wanna-be member of the Wu Tang Clan and blindly condemn every bit of popular technology because it's not C.
Contrary to what you wrote, Real Programmers don't list only the things they're total experts at, and the one or two things they think will help them land their next job. That's a pretty foolish way to go job-shopping. What you do is you figure out where you want your next job to be, and you tailor your resume to fit that position. In today's market, the key skills are Java, XML and Web-based skills. I've got a company in London that's interested in talking to me about a job writing applications in UNIX. Their engineering team has been grilling me about my C++ and UNIX skills.
But if I hadn't put Java and XML on my resume, Management would have never given my resume to their engineering team and said "this guy might do, talk to him".