Slashdot Mirror


Career Advice: Don't Call Yourself a Programmer

Ian Lamont writes "Patrick McKenzie has written about the do's and don't's of working as a software engineer, and some solid (and often amusing) advice on how to get ahead. One of the first pieces of advice: 'Don't call yourself a programmer: "Programmer" sounds like "anomalously high-cost peon who types some mumbo-jumbo into some other mumbo-jumbo." If you call yourself a programmer, someone is already working on a way to get you fired.' Although he runs his own company, he is a cold realist about the possibilities for new college grads in the startup world: 'The high-percentage outcome is you work really hard for the next couple of years, fail ingloriously, and then be jobless and looking to get into another startup.'"

422 comments

  1. But ... by WrongSizeGlass · · Score: 5, Funny

    I'm self employed, and even though my boss is jerk he's not going to fire me because I call myself a programmer.

    1. Re:But ... by Anonymous Coward · · Score: 3, Interesting

      And me too! I used to work for other people, but got tired of the instability in the 'work for hire' work world. They need you for something, you get hired, you solve the problem they have been staring at for 6 months, you attempt to help in other ways once all the fires they throw at you are out, they get nervous about you as 'an outsider' interfering with the business, and the software engineers God intended for the company (the ones who couldn't put out the fires they handed to you) and so suddenly there you are with the collective 'they' handing you your hat, once again unemployed. I've even worked for places where, after you are gone, the regulars still can't handle the fire situation, and within one or two months, they are once again looking for a fireman. So I finally started up my own. Its a lot more work than work-for-hire, and even after things were built and running, the money was less, but it was steady, and growing. Early on, there wasn't enough to put bread on the table, but you keep it going and do work for hire. You start out with 1.25 times the income of straight work-for-hire (and about 1 1/2 times the work). Once it gets to about 1.75 times the income of work-for-hire, its time to bail on work-for-hire, and from that point on, your life belongs to you.

    2. Re:But ... by Midnight+Thunder · · Score: 3, Insightful

      I think programmer is still a fine title. In all reality titles for software developers are so varied and vague, that as long as I am getting my pay cheque, I am quite happy to be called a 'Senior Code Monkey'. At that point I am also happy to treat my boss as 'Manager Monkey' and the CEO as 'Chief Baboon'. ;)

      --
      Jumpstart the tartan drive.
    3. Re:But ... by LucidBeast · · Score: 1

      I'm a programer, porgrammar, programmar, damn it, I'm a coder and I write code

    4. Re:But ... by rally2xs · · Score: 2

      You're life doesn't belong to you if you're working 1.5X as much time as you used to, which was likely in excess of 8 hours anyway. 12 hours a day for some means too tired to do things like go to the gym, have a social / sex life, etc. If you live to work, that's one thing, but most of the rest of us work to live, and probably should learn something like welding or electrician that 1) can't be outsourced and 2) is usually no more than 8 hrs a day 5 days a week.

  2. Makes sense by rsilvergun · · Score: 3, Interesting

    If it's one thing America's taught me it's that doing useful work is the worst way to earn money around these parts.

    --
    Hi! I make Firefox Plug-ins. Check 'em out @ https://addons.mozilla.org/en-US/firefox/addon/youtube-mp3-podcaster/
    1. Re:Makes sense by SharkLaser · · Score: 3, Funny

      Well, programming practically is the computer-world equivalent of construction worker or cleaners. Sure, it's useful so people actually can get things done, but it isn't practically challenging or something lots of people can't do if given teaching. Developers have to make the important decisions regarding a product. If you wanted to work in the gaming industry, would you rather want to be a coder or actually the game designer?

    2. Re:Makes sense by Surt · · Score: 3, Insightful

      Programming has one advantage over construction workers: it's mind-numbing indoor work. Most people cannot stand it. That's the real hurdle keeping people out of the industry.

      --
      "Who is the Journal of Quantum Physics going to believe?" --Stephen Hawking
    3. Re:Makes sense by etymxris · · Score: 5, Informative

      Programming seems easy to you and me, but you would be surprised at how many people just cannot do it no matter how much training you give them. Anyone can clean, most people can do construction. Maybe 1 in 10 people could program if they really wanted to, and only 1 in 10 of those will actually want to.

    4. Re:Makes sense by Lemmy+Caution · · Score: 5, Funny

      Are you saying you are the 1%?

    5. Re:Makes sense by Dr_Barnowl · · Score: 4, Insightful

      Exactly ; they've done studies that prove this - not everyone can program a computer. Every time I see one of those GUI programming environments designed to enable users to program, I sigh. Real programmers detest them (unless they are a mile-high model overview and they fill in the gaps), and people who can't program still can't program, so implementing them is pointless and counter-productive.

      If 30-60% of people who self-selected to go on a Computer Science course can't program, what's the percentage in the general population?

    6. Re:Makes sense by CodeBuster · · Score: 4, Interesting

      Programming seems easy to you and me, but you would be surprised at how many people just cannot do it no matter how much training you give them.

      Please mod parent up. This is exactly right. All of my experience, both in school and now working as a software developer, confirms this.

    7. Re:Makes sense by EsbenMoseHansen · · Score: 1

      Interestingly, spreadsheets does make non-programmers program, to some degree. Someday, I will understand why that is.

      --
      Religion is regarded by the common people as true, by the wise as false, and by rulers as useful.
    8. Re:Makes sense by Arancaytar · · Score: 1

      25%, I believe.

    9. Re:Makes sense by Surt · · Score: 1

      But if you are saying half of all people can be programmers, that's not much more of a hurdle than construction. Maybe less because construction does have significant physical requirements.

      --
      "Who is the Journal of Quantum Physics going to believe?" --Stephen Hawking
    10. Re:Makes sense by sourcerror · · Score: 1

      I can tell you that you haven't graduated yet, and you're just parroting back the things your heard from your professor.

    11. Re:Makes sense by Stormthirst · · Score: 1

      By programming a spreadsheet, do you mean fill in a bunch of formulas and perhaps record some macros to take the repetition out of their work?

    12. Re:Makes sense by Spugglefink · · Score: 1

      Anyone can clean, most people can do construction.

      I don't think I'd go that far at all. Most people who try to do construction walk around with a hammer all day feeling so special that they're helping to build something, but they aren't accomplishing anything useful, and just need to get out of the way.

      Just like most people who try to volunteer at software projects, actually.

    13. Re:Makes sense by Synerg1y · · Score: 1

      There are also tiers of programmers, some of the poor fucks we've hired didn't know how to work w SQL parameters (HS knowledge for me when parameters in sql were new and great). Seriously though, article has a point, if I have to refer to that hat, I refer to it by "engineer", or "computer engineer" depending on who I'm talking to. Technically I'm a sys admin though, no go there either. Try meeting girls and say "I do programming | webdesign | code for a living" and watch the light go out of their eyes. Most definitely don't know what a sys admin is.

      Just imagine the learning curve to learning programming for people who don't know what a sys admin is. Then again I can totally emphasize with "who cares" too.

    14. Re:Makes sense by Synerg1y · · Score: 2

      You can build your muscles a lot faster than you can your mind. Back to the manhole for you!

    15. Re:Makes sense by anonymov · · Score: 4, Informative

      Well, filling in a bunch of formulas IS a form of dataflow programming.

      It is easy for non-programmers because it quite closely maps real-world calculations on a sheet of paper to the computer screen - just fill in the initial values and write down formulas without worrying about operations ordering. VisiCalc and those who polished the concept after them did a pretty nice job.

      On a side note, Visicalc authors' notes make for quite an interesting read.

    16. Re:Makes sense by A+nonymous+Coward · · Score: 2

      One of my bosses discovered he could weed out most "software engineer" candidates by giving them a simple recursive programming task. It was amazing the number of candidates who could write your standard simple recipe-style program, but were baffled at the idea of recursiveness, or even nested data, pointers to pointers and arrays of arrays and simple combinations.

      So yes, programming has divisions like all other activities: people who can build a bird house but not a people house, or can change spark plugs but not an engine.

    17. Re:Makes sense by Dahamma · · Score: 2

      That and when some crazy laid off tech worker burns down the building over his red stapler. Plus, who doesn't want to bring their lunch in a pail?

    18. Re:Makes sense by Sponge+Bath · · Score: 1

      A posting about muscles and manholes in response to a statement about physical requirements... is this slashdot or craigslist personals?

    19. Re:Makes sense by gman003 · · Score: 3, Informative

      If you wanted to work in the gaming industry, would you rather want to be a coder or actually the game designer?

      Bad analogy there. Game designers are about as far from programming as possible. You see plenty of game designer/level designer people or game designer/storywriters, you see some game designer/artist people (particularly in Japan), and you even see some game designer/musician people. I can't name of the top of my head a single game designer/programmer who isn't an indie developer (where everyone is a bit of everything, really).

    20. Re:Makes sense by Anonymous Coward · · Score: 0

      This is just ridiculous. When I started (way the hell back when) you were a coder, period. You were a good one, or a bad one. Good ones could write an app from start to finish and with polish, bad ones could do parts of that but not quite the whole yet. Bad ones could become good ones. There was none of this sanitation engineer crap. That's what happens when you let suits into the mix.

      Get the F off my lawn!

    21. Re:Makes sense by Anonymous Coward · · Score: 0

      Really? Two-dimensional arrays got covered in first-semester intro to programming course.

    22. Re:Makes sense by SharkLaser · · Score: 1

      John Carmack?

    23. Re:Makes sense by Anonymous Coward · · Score: 1

      Actually most people can't clean at least not in a professional and structured way. Even fewer can do construction work. Programming may be a bit more exclusive in that it requires a certain type of thinking to be successful at it that may or may not be more rare than the personality/thinking traits needed for the other two professions but don't be fooled into thinking programming is harder to accomplish successfully. Most jobs require a certain set of mental traits and some require physical traits as well. The combination of those pre-requisite traits with training is what makes someone successful and it is almost never that in born talent is a key contributor to general success (though over the top success it may contribute more significantly to). What makes programming worth more is the fact that the training is harder to come by not that the innate traits are harder to come by.

    24. Re:Makes sense by BasilBrush · · Score: 1

      There are also tiers of programmers, some of the poor fucks we've hired didn't know how to work w SQL parameters

      I've worked as a software engineer for years, and I wouldn't know that either. If I was told I had to work with that sort of thing I'd probably kill myself first.

      Technically I'm a sys admin though

      Ah, well, that explains it.

    25. Re:Makes sense by BasilBrush · · Score: 1

      My favourite interview involved a real world analogy to public key encryption. I think that would weed out 99% of the ones who understand recursion.

    26. Re:Makes sense by BasilBrush · · Score: 1

      And the significance of that is what? Two dimensional arrays don't involve recursion. N-dimensional array involve recursion.

    27. Re:Makes sense by Idaho · · Score: 1

      Probably, and indeed that is (a basic form of) programming. And yet I believe most people could not do even that if their live depended on it. If someone bothered to do the research, I think they'd find that the majority of people who even have a remote idea of how to use a computer (know how to read mail and how to click links on "the internet") are not actually able to create an Excel spreadsheet with a column A that lists some items, a column B that lists prices for said items, and then stick a SUM(B1:Bxx) in there somewhere, say. At least, not without prior extensive instructions on how to do exactly that one trivial task, of course.

      --
      Every expression is true, for a given value of 'true'
    28. Re:Makes sense by BasilBrush · · Score: 1

      Carmack is a programmer. He doesn't design the games. He comes up with some new engine technique, and then the designers make a game out of it.

    29. Re:Makes sense by A+nonymous+Coward · · Score: 1

      This is only significant if you are the dumbest programmer ever, since that would then prove that anyone can learn two dimensional arrays. Congratulations!

    30. Re:Makes sense by nomadic · · Score: 1

      A problem with programmers in general is they tend to be very poor at self-evaluation. Just like most people think they're better-than-average drivers, most programmers think they're better-than-average programmers.

    31. Re:Makes sense by stephanruby · · Score: 1

      Exactly ; they've done studies [codinghorror.com] that prove this...

      If that study proves anything, it's that most (if not all) Computer Science academics are not effective teachers.

      Personally, I would have used the same technique I used to teach my nephews about multiplication to teach those same Computer Science flunkies about operator assignment. I'd make my own boxes (or I'd use some cubby holes) to represent the variables and I'd use some nuts to represent the values to put into each.

      And not only that, but I'd verify that each student actually understood my metaphorical demonstration by asking them to explain a couple of lines of code back to me using those same objects (different lines of code so the students can't copy each other). And then, I would do enough spot-checking to make sure that the students had retained that understanding the following day, the following week, the following month, and until the very end of my course (after all, if there is no repetition, there is usually no learning).

      Obviously, this is not what Computer Science Professors do, and if any of them tried to do what I'd suggest, that might even possibly get them into trouble it's so counter to the existing culture instilled in Computer Science departments (it also runs counter to the way they're being incentivized). There is just no hand-holding in Computer Science. Its high degree of difficulty is not considered a flaw, it's considered a badge of honor. In a way, that difficulty is also a misguided survival mechanism, after all there are so many kids wanting to get into computer science all because they've been playing computer games most of their childhood (and they're under the naive assumption that programming a computer game will be as easy playing one, which couldn't be farther from the truth of course). Most Computer Science departments feel the need to make sure those students get weeded out early, that's already how they see themselves as, not just as teachers, but as gatekeepers that make sure that the new influx of modern lazy kids are weeded out early.

    32. Re:Makes sense by LucidBeast · · Score: 1

      So you what you are saying is that 50% of people know how to program?

    33. Re:Makes sense by stephanruby · · Score: 1

      He probably is. After all, it doesn't matter what subject it is, but most people think they're above average. And it wouldn't be much of a stretch to think that 50% of the population also think they're part of that top 1 or 2%.

    34. Re:Makes sense by Anonymous Coward · · Score: 0

      I can't name of the top of my head a single game designer/programmer who isn't an indie developer

      John Carmack, John Romero, Wil Wright, Nolan Bushnell, David Crane, Steve Wozniak. You'll also find a lot more when you start picking names that aren't in the gaming history books.

    35. Re:Makes sense by gman003 · · Score: 1

      Nope. He's never really done any of the game design. He's probably one of the best programmers on the planet, but the game design was always someone else - Romero, or Hall, or American, or Peterson, or whoever they have at the moment.

    36. Re:Makes sense by Anonymous Coward · · Score: 0

      These people go on to become to become Principal Software Engineers. They craft witty, verbose project status prose, that gives General Managers erections. They can, with very little effort, extend a 2 month project to 2 years. In meetings with GMs, they masterfully weave in an out of abstraction, incorporation just enough technical jargon to keep the higher ups nodding in agreement with the acronym fire hose from which they're drinking.

      Is this just Microsoft, or does the nightmare play everywhere?

    37. Re:Makes sense by mrchaotica · · Score: 1

      You know, that's the thing that's always pissed me off about spreadsheets: you have to operate on a particular range of cells, which means you have to know beforehand how large the range is. Why can't I program my spreadsheet to just SUM(B) (or SUM(B1:the last occupied cell in B))?!

      I guess it's because that concept would be too hard for all the spreadsheet-using non-programmers...

      --

      "[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz

    38. Re:Makes sense by shentino · · Score: 1

      If they DO understand recursion why would you want to weed them OUT?

    39. Re:Makes sense by BasilBrush · · Score: 1

      Because it isn't nearly enough. We studied recursion in high school, and I already knew all about it before that class. That's not a high enough bar for me to hire a software engineer. It's something they should understand in order to start a CS degree. A software engineer who's highest attainment is understanding recursion is an amateur.

      I wouldn't require them to understand public key cryptography, but I'd expect them to be able to work through it with me in an question and answer session.

    40. Re:Makes sense by Anonymous Coward · · Score: 0

      It's actually =SUM(B:B). Is reading documentation or clicking the column when asked for cell address too hard for a spreadsheet-using programmer?

    41. Re:Makes sense by etymxris · · Score: 1

      Well I used to think programming was something everyone could do. Experience has proven me wrong again and again. Some people think of themselves as exceptional. I do not. I think of myself as average or middling. When it comes to "ability to program" though, most people cannot come close to middling.

    42. Re:Makes sense by Anonymous Coward · · Score: 0

      ... pointers to pointers and arrays of arrays ...

      That gets my adrenaline pumping. Does that make me qualified?

      Polymorphic Lists that contain themselves.

      I declare Rule 34 fails on this.

    43. Re:Makes sense by Anonymous Coward · · Score: 0

      Programming seems easy to you and me, but you would be surprised at how many people just cannot do it no matter how much training you give them. Anyone can clean, most people can do construction. Maybe 1 in 10 people could program if they really wanted to, and only 1 in 10 of those will actually want to.

      So half of a half would be 25%.

    44. Re:Makes sense by Isaac+Remuant · · Score: 1

      What?

      A) It can be practically challenging depending on what is it you want to implement. It can be easy to implement crappy software but thar would be the same for every industry, if you suck at what you do, you're going to be one of the million.

      B) People can do it if given teaching? Sure, but somehow, they don't get taught or they don't follow through with their education or they're just not interested in learning that.

      C) Your last question kills me. I LOVE programming, I wouldn't rather be a game designer than a programmer. Not at all. I'd enjoy having game design decisions as I implemented the code but would hate to abandon the coding part. Then again, you talk about a crappy industry with crappy pay, crappy hours and lots of exploitation. Most likely, I wouldn't work in the game industry altogether.

      --
      "Science can amuse and fascinate us all, but it is engineering that changes the world. " - Asimov.
    45. Re:Makes sense by CodeBuster · · Score: 1

      most (if not all) Computer Science academics are not effective teachers.

      The lower division undergraduate CS courses are generally taught by lecturers and not tenured research professors at most universities. The lecturers ought to be good at teaching the basics, including programming, and at my school they were actually quite good. The basic truth is that not everyone is cut out for programming and without programming one cannot fully explore and experiment, both essential activities in any study of CS. That is why intro to programming is generally the very first or among the very first CS courses taken by incoming freshman undergraduates. It separates the wheat from the chaff and in so doing does everyone a service. Those who are unable to program discover that CS isn't the right thing for them and move on to pursue something else while those who are willing and able get a taste of what lies ahead in their studies so that they too can decide whether or not they want to continue with the major and make progress towards a degree.

      Most Computer Science departments feel the need to make sure those students get weeded out early, that's already how they see themselves as, not just as teachers, but as gatekeepers that make sure that the new influx of modern lazy kids are weeded out early.

      Perhaps this isn't such a bad thing? Does everyone with even just a passing interest in computers, programming and the like have to study CS in college? What's wrong with limiting the major to serious students only? They do the same sorts of things in other engineering and science majors. Serious majors always feature weeder courses to separate the interested and the serious from the dabblers. The dabblers can spend their time studying the liberal arts, humanities, social science or the classics. The scientists and engineers don't have as much patience for those sorts of students (you know the type, starry eyed idealists looking to "find themselves" in college).

    46. Re:Makes sense by Anonymous Coward · · Score: 0

      I taught C++ for two years at the local university for a six-month intensive OO course; prerequisites included a BSc.

      In my experience, each class could be divided into thirds:

      1/3 students could not grasp essential programming concepts beyond basic syntax, despite having appropriate levels of math and logic; the middle 1/3 could compile examples and program their way through a design, but lacked facility with algorithms, unit testing, software life cycle, project management, security, efficiency/optimization, etc., ie, the engineering layer; the top 1/3 learned enough to become adequate programmers, but only a handful were truly talented.

      So I tend to believe figures showing that the top 10% of the coders produce 80% of the value.

    47. Re:Makes sense by RCL · · Score: 1

      Well, programming practically is the computer-world equivalent of construction worker or cleaners. Sure, it's useful so people actually can get things done, but it isn't practically challenging or something lots of people can't do if given teaching. Developers have to make the important decisions regarding a product. If you wanted to work in the gaming industry, would you rather want to be a coder or actually the game designer?

      Being game programmer is much more fun than being a game designer. Most "important decisions" boil down to balancing and scenario =) Stuff like gameplay mechanics (weapon design and AI behavior) is proposed and basically decided by programmers who permanently experiment with code, designers do influence that, but they have to account for what's technically possible and it's programmers who say "this cannot be done in reasonable time" :)

      To sum up, the more you understand, the more power you have. Programmers can and often do understand game designer's job, but not vice versa - so programmers can both design and implement stuff, but game designers can only design =) They are valued for having more consumer-oriented mindset than programmers, if not for that, they would be just glorified testers.

    48. Re:Makes sense by Anonymous Coward · · Score: 0

      What if the sum is in column B too? You'd end up with infinite recursion.

    49. Re:Makes sense by Anonymous Coward · · Score: 0

      Nope, you'll just end up with cyclic references checker barking at you and stopping the calculation.

    50. Re:Makes sense by Anonymous Coward · · Score: 0

      I choose to be the coder, every time. I've been in software business for 15 years most of it in game development with some forays into consumer electronics and R&D. Game studios have designers, artists, testers and coders, but the really fun & satisfying places to work blur the lines quite a bit. Where the game designers might come up with the core ideas & mechanics, I'm the one who brings it to life. Coding is like having unlimited Legos, you still need vision and ingenuity to make it all come together.

    51. Re:Makes sense by Opportunist · · Score: 1

      Sadly, what the GP says is what most of management thinks. Just how many of us think that it's trivial to come up with the harebrained ideas we get to hear from management, making us think any monkey could come up with that crap.

      --
      We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
    52. Re:Makes sense by Anonymous Coward · · Score: 0

      Thing is, many of the people that think programming is easy are the ones whom others say can't learn to program well no matter how much you train them.

    53. Re:Makes sense by Galestar · · Score: 1

      you can. you create a named range.

      --
      AccountKiller
    54. Re:Makes sense by Compaqt · · Score: 1

      In a way, I think you just restated the points made by the parent: college courses aren't meant for the dissemination of knowledge, but rather a "game"--being deliberately obtuse as a way to play with the freshmen.

      Basically, they'll allow to you program if you already know how to program.

      I can relate in how hard it was for me to wrap my head around the idea of object-oriented programming, until a great book (I think it was Thinking in C++) layed it out quite simply and without being deliberately obtuse.

      I think the guy's idea about boxes and nickels is great, and the world isn't going to collapse if a few "normal" people are allowed to learn how to program a computer to do what they want it to do.

      --
      I'm not a lawyer, but I play one on the Internet. Blog
    55. Re:Makes sense by anomaly256 · · Score: 1

      Every other week I'm required to work with concepts and frameworks and languages and technologies I hadn't yet experienced in my prior 20 years engineering/programming/coding/whatever. A quick RTFM, a google, and a juryrig testbench script later and I'm up to speed. I think that last bit, is the bit that bites most people who are the kind of people not cut out for programming. They can't abstract the problem and apply their existing knowledge to it in order to understand it in the first place. They just aren't wired like that. On the other hand, I'm sure they can all dance to some degree. I however can not. I'm not wired like that.

    56. Re:Makes sense by tibman · · Score: 2

      Discovering recursion changed the way i looked at life.

      --
      http://soylentnews.org/~tibman
    57. Re:Makes sense by fyngyrz · · Score: 1

      Don't be too hard on m. parent; their life is obviously chaos.

      --
      I've fallen off your lawn, and I can't get up.
    58. Re:Makes sense by fyngyrz · · Score: 1

      some of the poor fucks we've hired didn't know how to work w SQL parameters

      If a real programmer was hired whose experience didn't include this, tell 'em to look over the version of SQL you're using and they'll know them well enough -- and where to look for details -- ten minutes later. No programmer knows every language right off the hook, and SQL itself isn't exactly groundbreaking, so there's no reason to pay any attention to it (and the DB concepts that support and depend upon it) at all until you have DB work to deal with. Real programmers actually do have a thing or two of "other" nature to deal with in their careers, ya know. :P I might not have known SQL at one point, but on the other hand, I could tell you every 6809 instruction, addressing mode, the timings, the condition code consequences of the instruction, how every interrupt worked... that's what you needed to know for real programming in the environment I was working in. It's all relative. Also, I know SQL now -- but I've had 40 years to run into the various dark corners of programming.

      --
      I've fallen off your lawn, and I can't get up.
    59. Re:Makes sense by mrchaotica · · Score: 1

      Well, your suggestion wasn't the solution I wanted, but it did lead me to the actual solution:

      =SUM(OFFSET(A1,1,0,COUNTA(A1:A65536)-1,1))

      Now, how do I refer to all of column A? The "$A:$A" syntax I've found doesn't work in Libreoffice...

      --

      "[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz

    60. Re:Makes sense by mrchaotica · · Score: 1

      I'm using Openoffice (actually Libreoffice) -- the "B:B" syntax doesn't exist.

      --

      "[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz

    61. Re:Makes sense by kmoser · · Score: 1

      Only 1 in 10 of those will be any good at it.

    62. Re:Makes sense by Lemmy+Caution · · Score: 1

      It's a skill based on a temperament + practice. You should neither diminish the reality of the skill nor think of yourself as a genius simply for having it (and recognize, also, that others have skills that may be just as unrealistic for you to attain.)

      It's good to realize that not everyone could do it. It makes you more compassionate when you consider the difficulties some people have when their skills are, at the moment, less needed in the labor market.

    63. Re:Makes sense by Ritchie70 · · Score: 1

      I have asked the following questions of supposedly experienced C/Unix programmers and gotten no sensible answer:

      Tell me what * (star, or asterisk) does in C. (Answer: multiplication.) OK, well, what other than multiplication?

      Tell me what the static keyword means inside a function. Global to a file?

      Tell me about some types of interprocess communications.

      I dream of recursion being a filter.

      --
      The preferred solution is to not have a problem.
    64. Re:Makes sense by smart_ass · · Score: 1

      I work at a software company and while I respect and appreciate all the programmers, I can assure you 1 or 2 in 10 would be suitable for construction work.

      Sorry, but in many cases it is a question of aptitudes more than one task being more difficult than another.

      Myself I am slightly above mediocre at both.

      --
      Ouch ... did I just say that.
    65. Re:Makes sense by SharkLaser · · Score: 1

      And that's why OpenOffice/Libreoffice sucks. It doesn't support what most people use.

    66. Re:Makes sense by schwitzkroko · · Score: 1

      rotfl I dont know what he is, but you are most probably among the 90% majority.

    67. Re:Makes sense by Anonymous Coward · · Score: 0

      Programming is something that is an aquired ability not everyone can do it no matter how much teaching/training they recieve. And software engineer just seems like a waste of breath i'd rather be called a programmer/hacker(in the original sense not the term the general Public considers for illegal acts)

    68. Re:Makes sense by hism · · Score: 1

      I disagree. Anybody who can grasp university level mathematics can be trained to program. Programming is nothing more than formalizing what you want to do into a language. If you can formalize a problem into the language of mathematics, then programming is just a matter of learning syntax. Maybe they don't immediately comprehend the latest posh programming paradigm or trend, but given a little bit of time, they can program. The way I see it, the math behind programming is orders of magnitude more involved and complex than programming itself. Programming is just a method to manifest those ideas.

    69. Re:Makes sense by Anonymous Coward · · Score: 0

      Tim Schafer, thought 1) I don't know how much design/coding he does nowadays, and 2) at the time of Monkey Island/Day of The Tentacle, the professional devs were far more similar to the indie devs today.

    70. Re:Makes sense by Anonymous Coward · · Score: 0

      Programming has one advantage over construction workers: it's mind-numbing indoor work. Most people cannot stand it. That's the real hurdle keeping people out of the industry.

      I just finished re-watching Office Space :)

    71. Re:Makes sense by Anonymous Coward · · Score: 0

      Really? Two-dimensional arrays got covered in first-semester intro to programming course.

      And the significance of that is what? Two dimensional arrays don't involve recursion. N-dimensional array involve recursion.

      I will use the bold feature, since the original post didn't manage to keep your attention.

      One of my bosses discovered he could weed out most "software engineer" candidates by giving them a simple recursive programming task. It was amazing the number of candidates who could write your standard simple recipe-style program, but were baffled at the idea of recursiveness, or even nested data, pointers to pointers and arrays of arrays and simple combinations.

      What the hell, dude? The original post was three sentences long. Not only did you stop at "people can't do recursion" and didn't bother to read the second sentence about other simple concepts people have problems with, but you decided to post something trying to correct someone who did read the (very short) post in its entirety.

      Either that or you don't know that a two-dimensional array is a pointer to a pointer, in which case you have no business commenting either.

    72. Re:Makes sense by Anonymous Coward · · Score: 0

      > Programming is just a method to manifest those ideas.

      There are several things you can do wrong in programming.
      - Not writing unit tests
      - Not documenting (self documenting code, comments in code, design decisions)
      - Writing errors (e.g. out-of-bounds)
      - Creating duplicate code
      - Reinventing wheel (e.g. write your own component that does the same but not as well as the one provided by standard language libraries)
      - Making design decisions that make future changes hard, e.g. by not following single responsibility principle

      Every programmer will make those mistakes. It is just a matter of weather the person has already done and learned to avoid those mistakes, or not.

    73. Re:Makes sense by rally2xs · · Score: 1

      And 1 huge disadvantage: Construction can't be outsourced.

    74. Re:Makes sense by Bengie · · Score: 1

      "I can relate in how hard it was for me to wrap my head around the idea of object-oriented programming"

      I had a similar thing for me. Most "intro" OO books/tutors dumbed it down so much that I couldn't figure out wtf they were talking about. I eventually found an intermediate C++ book that explained how objects were just structs with methods/functions/etc that run relative to them, then it just clicked.

      It was so stupidly simple.

      I understand how CPUs/Memory/OSs work, so when I learn what's happening on the back end, it makes it so much easier for me to understand what to do on the front end.

      I had the same problem with marshalling calls to the GUI thread. I got so confused with all the tutors. I eventually found an MSDN article on how the GUI thread works. One page of technical info and theory taught me so much better than tens of pages of dumbed down tutors and code examples.

      By the time I got to multi-threading, thread pools, and async callbacks, I eventually learned to just google how they work before looking for tutorials. At least these things came naturally.

      I can't learn when a tutor says "do it this way" without explaining "Why" and explaining "How" things work in the background. I don't like "black boxes" that magically do stuff.

      I seem to learn quite differently from most people.

    75. Re:Makes sense by Bengie · · Score: 1

      I think I know where Synerg1y was coming from.

      I see web programmers all the time who don't know about SQL paramterized inputs. Even though they are not SQL programmers, they need to know the basics since most web sites are consumers of DB data. It's like hiring a server admin who doesn't know anything about hard drives and memory.

      While "you" may have had to learn SQL as an additional language at some point, that wasn't your specialty. A web programmer *should* know their specialty, and that includes properly securing a web page.

    76. Re:Makes sense by Surt · · Score: 1

      Sure, but the construction projects can, and are.

      --
      "Who is the Journal of Quantum Physics going to believe?" --Stephen Hawking
    77. Re:Makes sense by Anonymous Coward · · Score: 0

      Discovering recursion changed the way i looked at life.

      I see what you did there, but you probably would have gotten more mod points for the explicit,
      "Discovering recursion changed the way I discovered recursion."

    78. Re:Makes sense by Anonymous Coward · · Score: 0

      Sid Meier : http://en.wikipedia.org/wiki/Sid_Meier

    79. Re:Makes sense by Anonymous Coward · · Score: 0

      Does the name Sid Meier mean anything to you?

    80. Re:Makes sense by fyngyrz · · Score: 1

      "web programmer"?

      What is that, like calling the individual who washes your car a "dirt mechanic"? lol

      Network facing security includes far more than cleansing user inputs; you hire someone as one-dimensional as "web programmer" seems to imply, and I don't think you've much chance at any reasonable level of security. Unless I very much misunderstand what you're trying to describe with the terminology you're using, which could be the case. I've never heard of a "web programmer", and I've been at this since punch cards were all the rage.

      --
      I've fallen off your lawn, and I can't get up.
    81. Re:Makes sense by Synerg1y · · Score: 1

      Right... kind of, the IT term is web developer and it encompasses a wide range of skills. Your analogy is total fail btw. Almost sounds like you look down on web developers and come from a networking background. So let me ask you this, when port 80 is passing traffic for your web server on your network and somebody passes a sql injection attack wtf do you? exactly, cry in your corner. So while clean user inputs (which have nothing to do with parameters btw but more with typecasting), are not everything there is to securing an application, it's quite essential I assure you.

      Still, lmfao what is a web programmer indeed.

      http://www.google.com/search?q=web+programmer

    82. Re:Makes sense by Anonymous Coward · · Score: 0

      Looking at recursion changed the way I look at recursion.

    83. Re:Makes sense by Anonymous Coward · · Score: 0

      "it's mind-numbing indoor work."

      And that perception is exactly what's wrong with the word "programmer". I really hope you're not one, because if you think it's mind-numbing, you're doing it wrong.

    84. Re:Makes sense by Anonymous Coward · · Score: 0

      John Carmack?

    85. Re:Makes sense by Surt · · Score: 1

      I don't find it mind numbing, but most people do. Seriously, get out of your basement, and talk to a small sample of non-software-developers.

      --
      "Who is the Journal of Quantum Physics going to believe?" --Stephen Hawking
    86. Re:Makes sense by Anonymous Coward · · Score: 0

      Don't worry. 1% of 7 billion is still a pretty large number. BTW most of these people will code just for food.

    87. Re:Makes sense by Anonymous Coward · · Score: 0

      And even fewer people can design, but that doesn't stop programmers from trying...

    88. Re:Makes sense by Geminii · · Score: 1

      "It's simple," you say, "we'll just start with recursion
      Recursing away so recursively looped.
      Then throw in recursively nested arrays
      Of arrays of arrays in self-referenced groups.

      And projecting these vectors selected respectively
      Gives us the index detected en route
      To these pointers to pointers to sixteen-dimensional
      Structures we'll have your code simply compute.

      Now when your cross-referenced, cross-platform hypercode
      Threads are recached in a microchip core
      Can you tell how the business third quarter's affected?
      Speak now - you've a one-minute window, no more."

    89. Re:Makes sense by Dr_Barnowl · · Score: 1

      Yeah.. I think of that as a bug or missing feature in Calc - it's the one thing I sincerely miss when I'm using Calc instead of Excel. I only use Excel for trivial things, really, and summing columns features prominently.

      As a sibling points out, it's probably the most used feature of Excel, so not supporting it is really annoying.

      I'm inspired to trudge over to the OpenOffice bug tracker and see if it's ever been logged...

    90. Re:Makes sense by PeterWone · · Score: 1

      Like me, you are a "reductionist" thinking in terms of mechanism; you want the junk removed so you can discern essential principles.

  3. meh by Anonymous Coward · · Score: 2, Insightful

    Don't worry what you call yourself. Do good work and people will want to work with you.

    1. Re:meh by Farmer+Tim · · Score: 1

      Hi, I'm the new Arch-clown of Pandemonium. Where's my desk?

      --
      Blank until /. makes another boneheaded UI decision.
    2. Re:meh by Surt · · Score: 1

      You laugh, but that was very close to someone's actual title at Blizzard (we picked our own titles). He got recruited away. Why? He was really good at his job.

      --
      "Who is the Journal of Quantum Physics going to believe?" --Stephen Hawking
    3. Re:meh by Farmer+Tim · · Score: 1

      You laugh

      Yes, it helps delay the inevitable soda bottle and balloon animal rampage.

      but that was very close to someone's actual title at Blizzard (we picked our own titles). He got recruited away. Why? He was really good at his job.

      It's possible the recruiter knew this about Blizzard and consequently ignored the title. I believe is the point of the article is that doesn't happen too often.

      --
      Blank until /. makes another boneheaded UI decision.
    4. Re:meh by Surt · · Score: 1

      My point is the article is wrong. You can really call yourself whatever you want in this day and age. Recruiters are all keyword searching in linkedin. They don't care if your selected title is programmmer, software engineer, developer, or lord of darkness. They care if you matched for the skills they are looking to hire, and if your resume makes it clear you're a good hire.

      --
      "Who is the Journal of Quantum Physics going to believe?" --Stephen Hawking
    5. Re:meh by Synerg1y · · Score: 1

      And you are completely right sir.

    6. Re:meh by BasilBrush · · Score: 1

      It happens all the time. In a lifetime of software engineering, I've picked my own job title for everything but the first couple of years. At some point you get an email saying they're going to do some business cards for you, and asking what job title you want on them.

  4. Depends on why I'm referring to my profession by Mean+Variance · · Score: 4, Insightful

    In casual conversation among people who wouldn't know the nuances of the various "programmer"-like terms, I do say, "I'm a programmer." It gets the point across simply that most people understand.

    If I'm in a semi-professional setting of white collar adults, I usually say "software developer."

    On a resume or among those who know the industry standard, I say "I'm a software engineer" because that's my title.

    If it's tied to a conversation that might have career potential, I give the true classification at work: senior software engineer.

    1. Re:Depends on why I'm referring to my profession by hey · · Score: 1

      Maybe need a new word: programineer.
      You are a senior programineer!

    2. Re:Depends on why I'm referring to my profession by kbrannen · · Score: 1

      I completely agree that the context and audience of the conversation will strongly influence what I call myself. If I had mod points you'd get some here.

      There's a lot of good advice in the article, but the "don't call yourself a programmer" point was not a good one, IMO.

    3. Re:Depends on why I'm referring to my profession by musicalmicah · · Score: 1

      I just say, "I make software." Yes, it's vague, but so is my job -- one day I am fixing a bug, another day I'm ironing out requirements, another day I'm writing tests, but all of it is to support one goal: to make software.

    4. Re:Depends on why I'm referring to my profession by Anonymous Coward · · Score: 0

      What do you call yourself when you're around actual engineers?

    5. Re:Depends on why I'm referring to my profession by Anonymous Coward · · Score: 0

      I always tell people I am a computer jockey.

    6. Re:Depends on why I'm referring to my profession by emilper · · Score: 2

      scarce

      they want us to fix their windowses

    7. Re:Depends on why I'm referring to my profession by cyberstealth1024 · · Score: 1

      I agree with parent and grandparent. mod them up!

    8. Re:Depends on why I'm referring to my profession by JWSmythe · · Score: 1

          Be careful, I'm pretty sure Disney already trademarked that one.

      --
      Serious? Seriousness is well above my pay grade.
    9. Re:Depends on why I'm referring to my profession by JWSmythe · · Score: 2

          If you go any farther than "I make software", their eyes glaze over anyways.

          For over a decade, I've held high level IT positions, including responsibilities in management, systems administration, network administration, and software development. My current title is "Director of Information Technology". When someone asks what I do, I just say "computer stuff". I elaborate a little bit at a time, until I understand what level they're at. In most social circles, "computer stuff" is all they need to know, or can comprehend.

            To many of them "IT" is the group that consists of the guy who comes to their desk to fix problems. The whole department, regardless of what they're doing, is considered "that guy who fixes my computer when it breaks." Ya, the lowest rank and responsibility in my department, and that's all anyone understands it to be. .. that's not to imply that the desktop support job is crap. That just happens to be the lowest position in my department. :) I have a lot of sympathy, since I have done it, and executives always seem to think that I should help them with their desktop problems, even if it's that they accidentally turned off their power strip, and the computer won't turn on. Sometimes I wonder how some people manage to survive at home. They don't appear to have the skills to work a light switch, or change a lightbulb. I don't quite understand how they make themselves coffee in the morning without burning their house down.

      --
      Serious? Seriousness is well above my pay grade.
    10. Re:Depends on why I'm referring to my profession by Haedrian · · Score: 1

      That happened to me. Someone asked me what I do and I answered "Software Developer". A few weeks he described my job to someone else as "IT technician".

    11. Re:Depends on why I'm referring to my profession by Anonymous Coward · · Score: 0

      Just don't call him Shirley.

    12. Re:Depends on why I'm referring to my profession by Anonymous Coward · · Score: 0

      for sure bro, I'm the same but I'm an investment banker. With blue-collar workers and less sophisticated types, I would normally just say "I handle money", whereas in a semi-professional setting of white collar adults, I say, "I'm a fund manager", whereas to those who know anything about the industry I say: "I'm a retired investment manager, I got out before the crisis."

    13. Re:Depends on why I'm referring to my profession by Anonymous Coward · · Score: 0

      And, to your therapist, you say "I'm an asshole".

    14. Re:Depends on why I'm referring to my profession by canoeberry · · Score: 1

      "Programmer" was good enough for Brian Kernighan, so it's definitely good enough for me. If I were Dennis Ritchie I'd call myself a computer scientist, but I've met Dennis Ritchie and I'm no Dennis Ritchie. However, I can still program computers way better than most and that's good enough for me.

    15. Re:Depends on why I'm referring to my profession by Anonymous Coward · · Score: 0

      hey man i probably made more while you commuted to work this month than you made all year. or, if you're unemployed, I made what you eat in three months in two hours yesterday morning.

    16. Re:Depends on why I'm referring to my profession by Anonymous Coward · · Score: 0

      I use pretty much exactly the same system. I've used all of these terms to describe myself in the last year, depending on the setting, and who I'm talking to:

      * programmer
      * software programmer
      * software developer
      * software engineer
      * senior software engineer

      In non-professional settings I tend to use the first three, and in professional settings I tend to use the last two.

    17. Re:Depends on why I'm referring to my profession by Anonymous Coward · · Score: 0

      Sometimes I wonder how some people manage to survive at home. They don't appear to have the skills to work a light switch, or change a lightbulb. I don't quite understand how they make themselves coffee in the morning without burning their house down.

      Their housewive? And maybe for some their househusband? And then again for some it may be Panchita the illegal alien. No need to be able to cook a meal when you can order someone to do it for you.

    18. Re:Depends on why I'm referring to my profession by Some+Bitch · · Score: 1

      hey man i probably made more while you commuted to work this month than you made all year. or, if you're unemployed, I made what you eat in three months in two hours yesterday morning.

      And with this little rant you more or less made his point :)

    19. Re:Depends on why I'm referring to my profession by omfgnosis · · Score: 1

      In casual conversation among people who wouldn't know the nuances of the various "programmer"-like terms, I do say, "I'm a programmer." It gets the point across simply that most people understand.

      I've had to train myself never to use the term "web developer", because more often than not the next thing I hear is along the lines of "so you design web pages?" I've also had to train myself not to feel insulted when that happens.

    20. Re:Depends on why I'm referring to my profession by Anonymous Coward · · Score: 0

      yo bitch, you attracted to my cash? Where are you living?

      bitch is not derogatory, just using your name on here "some bitch"! I'm very respectful in and out of bed.

    21. Re:Depends on why I'm referring to my profession by HBI · · Score: 1

      I agree entirely. "Computer stuff" is adequate for most people, including my parents AND the girlfriend AND my children. It's depressing at one level but vastly simplifies things at many others.

      --
      HBI's Law: Frequency of calling others Nazis is directly correlated with the likelihood of the accuser being Communist.
    22. Re:Depends on why I'm referring to my profession by TrekkieGod · · Score: 1

      That happened to me. Someone asked me what I do and I answered "Software Developer". A few weeks he described my job to someone else as "IT technician".

      I encountered that myself, and was incredibly surprised by it.

      I'm an electrical engineer, and whenever people asked me what I do, I got tired of answering EE and then explaining to them that I can't fix the bad wiring in their house because EE doesn't mean "electrician." So, I started answering "software developer" to that question, since that's a more accurate definition of my job anyway (I write engineering simulation software). I was pretty surprised to find out that people will interpret that either as IT admin or IT help desk.

      I've since realized you can't win. My economist friends keep having to explain to people that they are not accountants. I think there are very few professions out there that are unambiguous. "I do computer stuff," sounds about right for a proper answer for what we do.

      --

      Warning: Opinions known to be heavily biased.

    23. Re:Depends on why I'm referring to my profession by Larryish · · Score: 1

      "Programmer" among the non-computer-literate is a general term meaning "the person who can make my VCR stop flashing 12:00".

    24. Re:Depends on why I'm referring to my profession by JWSmythe · · Score: 1

          For kids, it does make perfect sense. My dad was an engineer. When I was a little kid, I was sure he drove a train. :) By the time I was a teenager, I understood what he really did.

      --
      Serious? Seriousness is well above my pay grade.
    25. Re:Depends on why I'm referring to my profession by Anonymous Coward · · Score: 0

      All of those positions are purely on the "cost" side of things, which is sort of the point. The only positions that aren't, of course, are sales. And of course management is convinced they aren't a cost center, but startups are out to prove them wrong.

    26. Re:Depends on why I'm referring to my profession by Anonymous Coward · · Score: 0

      Hopefully you were successful at "training" yourself. The problem is that most people less capable than you AS WELL AS more capable than you probably assume they're both the same thing, since really, they are pretty close. HTML, Perl, etc. - just a spectrum. You could correct them to say "I design the backside of web pages

    27. Re:Depends on why I'm referring to my profession by omfgnosis · · Score: 1

      Hopefully you were successful at "training" yourself.

      I don't know why you need to use scare quotes. Do you never have to train yourself? It must be nice being perfect.

      The problem is that most people less capable than you AS WELL AS more capable than you probably assume they're both the same thing, since really, they are pretty close.

      For whatever it's worth, it's exclusively non-techie people who react that way.

      HTML, Perl, etc. - just a spectrum.

      Well, for one... hardly. There's a world of difference between document markup and even the most basic, procedural logic specification. Second, the comment is always used to mean "design the graphics that appear on my screen", which doesn't even arrive at markup; it's from people who, not knowing at all how the innernets work, just assume someone somewhere starts in Photoshop and exports Google.

      You could correct them to say "I design the backside of web pages

      That wouldn't necessarily be entirely correct—I also design the interactive portions of the frontside of web pages. Usually I correct them to say, "yes, I do some design work, but mostly I'm a programmer", which isn't entirely correct and doesn't entirely convey my work, but that's all most people care about or are interested in understanding. If they want to know more, I go on from there. The point was that, outside a tech background, my usual experience is that people hear "web _______" and assume... well, Photoshop.

    28. Re:Depends on why I'm referring to my profession by Anonymous Coward · · Score: 0

      sorry about the previous comment, was trying to allude jokingly to your nickname.

  5. Such sage advice... by The+Living+Fractal · · Score: 5, Interesting

    Because, you know, the 1000+ currently open job postings for keyword "programmer" on Monster.com are just a perfect example of situations where people are already looking to fire you. After all, that's why they created the posting, just so they could waste company resources and fire someone.

    /sarcasm

    --
    I do not respond to cowards. Especially anonymous ones.
    1. Re:Such sage advice... by snowgirl · · Score: 5, Insightful

      Because, you know, the 1000+ currently open job postings for keyword "programmer" on Monster.com are just a perfect example of situations where people are already looking to fire you. After all, that's why they created the posting, just so they could waste company resources and fire someone. /sarcasm

      Sarcasm and all, this is the rantings of a single person at a single company, about his own personal view of the topic. I could probably find someone who would tell you that using the Oxford comma is likely to get you fired, and due to some forms of projection (the assumption that you are "typical", and you model everyone in the world based on yourself) they will assume that it's the prevalent opinion.

      --
      WARNING! This girl exceeds the MAXIMUM SAFE standards established by the FDA for BRATTINESS
    2. Re:Such sage advice... by Anonymous Coward · · Score: 0

      Those job postings on Monster.com are most certainly not the jobs you really want to be taking.

    3. Re:Such sage advice... by The+Living+Fractal · · Score: 1

      Agreed - my initial evaluation of this 'story' was it is someone's personal experience that they are projecting as general truth.

      --
      I do not respond to cowards. Especially anonymous ones.
    4. Re:Such sage advice... by AchilleTalon · · Score: 1

      Who is Patrick's boss so I can get him fired?

      --
      Achille Talon
      Hop!
    5. Re:Such sage advice... by Lemmy+Caution · · Score: 1

      That's not inconsistent with the idea that a programmer is expensive commodity labor, a cost that needs to be managed, rather than a member of the "inner circle" of those who are intended to have a long-term investment in the business.

    6. Re:Such sage advice... by tomhudson · · Score: 1
      No kidding. Consider this "gem"^Wlump of coal:

      (Quick sidenote: You can absolutely ignore outsourcing as a career threat if you read the rest of this guide.) Nobody ever outsources Profit Centers.

      Profit centers are outsourced all the time. "We're making $X by producing it locally, but we can make $5X by outsourcing."

      Or this:

      In the real world, picking up a new language takes a few weeks of effort and after 6 to 12 months nobody will ever notice you havenâ(TM)t been doing that one for your entire career.

      Obviously the type of guy who would say "C? No problem. Memory leaks? No problem." Then leak all over the place.

    7. Re:Such sage advice... by Trepidity · · Score: 1

      In particular, he does mostly consulting, and from his descriptions, it sounds like mostly for clueless people who aren't going to evaluate the technical quality of the deliverable (or even know what technical quality looks like). That's a real market niche, and a fairly large one, but it's hardly generalizable to all tech jobs. If you're interviewing for embedded systems development, and your attitude is "I can learn C in 6 weeks" and you want to talk more about providing return on value than about your technical skills, you probably aren't going to get the job.

    8. Re:Such sage advice... by Anonymous Coward · · Score: 0

      Obviously the type of guy who would say "C? No problem. Memory leaks? No problem." Then leak all over the place.

      That would depend on how skilled a programmer he is. If he is skilled, that should not happen.

    9. Re:Such sage advice... by tomhudson · · Score: 1

      That would depend on how skilled a programmer he is. If he is skilled, that should not happen.

      I know it's a shocking thing to do, but I actually read the article. He only wrote about managed languages. If all you ever learned was managed languages that didn't need you to deal with memory allocation, pointers, etc., good luck.

    10. Re:Such sage advice... by Anonymous Coward · · Score: 1

      Well, some of those ads on Monster.com (or Dice.com, or Careerbuilder.com, etc.) are actually fake job listing by some agencies just to collect resumes, or they posted and the job is real but are fully intending to hire an H1-B employee instead.

    11. Re:Such sage advice... by Anonymous Coward · · Score: 1

      The poster obviously doesn't understand the difference between a profit center and a cost center. The widget makers are too busy making widgets to get them into the customers' hands in exchange for money. Yes, yes, the sales people can't sell widgets without widget makers making some (well, they'll try. The successful ones are called con artists) but those could be widgets made by anybody. That's why the widget makers are not profit centers, and why companies outsource their widget making but not their sales department.

    12. Re:Such sage advice... by Anonymous Coward · · Score: 0

      Hm. I've actually never seen a profit center outsourced -- the risk isn't worth it, typically. Things associated with that profit center, maybe, but the actual core people are usually kept, just because you don't want to risk something that's currently effective.

      As to the language thing: he's right. Maybe *you* need more than 12 months of professional experience to master a language, but *I* don't, and my better coworkers don't, either. Of course, none of us would refer to ourselves as programmers, because those are the guys who just write code and, while we write some code, we're much more active on the design and planning side of things -- engineering software, rather than snapping the bits together based on instructions.

      Of course, someone has to snap those bits together. Maybe that's you?

    13. Re:Such sage advice... by tomhudson · · Score: 1

      I call BS.

      The poster obviously doesn't understand the difference between a profit center and a cost center. The widget makers are too busy making widgets to get them into the customers' hands in exchange for money. Yes, yes, the sales people can't sell widgets without widget makers making some (well, they'll try. The successful ones are called con artists) but those could be widgets made by anybody. That's why the widget makers are not profit centers, and why companies outsource their widget making but not their sales department.

      Companies outsource both sales and marketing all the time. From hiring boiler rooms of telemarketers to Madison Avenue ad companies, it's been done for decades.

    14. Re:Such sage advice... by tomhudson · · Score: 1

      Hm. I've actually never seen a profit center outsourced -- the risk isn't worth it, typically.

      Willfully blind? Profit centers are outsourced all the time. Ever see a captive spin-off? Or a division sold for cash plus a percentage of shares? You know, like IBM did with their PC biz? Or GM with EDS in 1996?

      As to the language thing: he's right. Maybe *you* need more than 12 months of professional experience to master a language, but *I* don't, and my better coworkers don't, either.

      Most languages you can get the basics in a day or two. However, you certainly cannot "master" c in under 6 months. Call back when you're able to write non-trivial c programs such as servers without leaking memory and then we'll talk, because obviously you can't.

    15. Re:Such sage advice... by shentino · · Score: 1

      So putting postings at recruiting sites are just bait to honeypot disgruntled workers you want to shed off the payroll by catching them accessing the internet on company time?

    16. Re:Such sage advice... by CAIMLAS · · Score: 1

      Personally, I'm opposed to hiring idiots in the first place. Forget hiring them! By not hiring them, it saves valuable time and money spent firing them which could be better spent finding reliable people who are competent and capable.

      Maybe this guy should've concentrated on those job skills.

      --
      ~/ssh slashdot.org ssh: connect to host slashdot.org port 22: too many beers
    17. Re:Such sage advice... by Bengie · · Score: 1

      If you "don't worry" about memory allocation/deallocation with "managed languages", then you're doing it wrong. If you want to be good at programming managed languages, then you need to understand how the framework handles allocation/deallocation and the best way to take advantage of that fact.

  6. Software Engineer by RPGillespie · · Score: 1

    Well, to me, "software engineer" sounds even more high cost than "programmer", since it implies college education.

    1. Re:Software Engineer by ifiwereasculptor · · Score: 1

      Why don't they just call themselves "DEVELOPERS DEVELOPERS DEVELOPERS DEVELOPERS"? I heard the ones that do are pretty well-off.

    2. Re:Software Engineer by Lemmy+Caution · · Score: 1

      The difference - and it is entirely in perception, yes - is that a "programmer" is a kind of intellectual brute-worker, while a "software engineer" has a conceptual understanding of the specific problem that makes a long-term relationship with the business more important; that they "own" the projects in which they are involved. So while the "software engineer" may cost more, they are treated as part of the business, while the "programmer" is really hired help.

      I agree that this is all perception, intuitions about the valences of different terms. It also reflects the fact that business culture in America has been about creating an "inside" and an "outside," between those with some kind of ownership (metaphorically speaking, partially, though equity is involved) in the business, and those who are kept at arm's length to be removed as quickly as possible. Part of the problem is that the first group is getting smaller and richer, and the second group getting bigger, less stable, and generally poorer.

    3. Re:Software Engineer by Anne+Thwacks · · Score: 1

      Because of the risk from incoming chairs!

      --
      Sent from my ASR33 using ASCII
  7. Programmer != Engineer, idiot. by sichbo · · Score: 5, Informative

    In Canada, it's illegal to practice engineering, or call yourself one, without a engineers license. There's nothing worse than retards who get a college degree in programming and start calling themselves "engineers". It's an insult to every actual certified engineer in the world.

    1. Re:Programmer != Engineer, idiot. by Hentes · · Score: 1

      What about programmers with a Computer Engineering degree?

    2. Re:Programmer != Engineer, idiot. by carpefishus · · Score: 1

      A continuum of Ludicrous: Certified Engineer - No Ludicrousiness Software Engineer Sanitation Engineer - Full On Ludicrousiness

      --
      Facts take all of the premium out of arm waving - T. Reynolds
    3. Re:Programmer != Engineer, idiot. by FooAtWFU · · Score: 4, Insightful

      There's nothing worse than retards who get a college degree in programming and start calling themselves "engineers".

      I work with these machines - design them, refine them. You could, with just the slightest hint of fancy, refer to them "difference engines". I am an Engine-er. Welcome to the English language; I suggest that you save yourself some grief and just deal with it.

      (Of course you need a license to do something useful in Canada. Woo flippin' hoo. Canadian industry is all about the incumbent industries protecting themselves from competition through regulatory capture. That's also part of why you have such sucky telecom services that you're always complaining about.)

      --
      The World Wide Web is dying. Soon, we shall have only the Internet.
    4. Re:Programmer != Engineer, idiot. by Anonymous Coward · · Score: 1

      Actually, there is something worse: retards who consider a government blessing as a some sort of indicator of one's ability to get shit done.

    5. Re:Programmer != Engineer, idiot. by RichMan · · Score: 4, Informative

      In Canada the degree does not matter. No one, no matter what qualifations can call themseleves and engineer unless they are a professional engineer.

      To be a professional engineer they must be a member of their provincial professional engineering association. This is roughly equivalent toa US lawyer being a member of the bar for a particular US state. The idea is that "Engineers" are professionals and to call yourself one you must be a member of the professional assiation.

      What is a professional engineer (Ontario Professional Engineers Organization)-> http://www.peo.on.ca/registration/LR.html

      Most civil and a high percentage of those who graduate from mechanical engineering do become professional engineers. It gets you the official STAMP which is used to mark building and machine documents. Most electrical engineering college graduates do not. Those who work in power engineering do. In Canada the main reason to become a professional engineer is to get your stamp. If your job requires you to stamp designs then you will get your professional engineering membership.

      Very few software projects get engineering stamps. The link above also discusses the seal.

      http://www.ccpe.ca/e/index.cfm

       

    6. Re:Programmer != Engineer, idiot. by tomhudson · · Score: 1
      Unless you're licensed as an engineer, you cannot call yourself a software engineer, not even in Texas. See section 1001.004.c.2.c

      Only a person licensed under this chapter may make any professional use of the term "Engineer"

      Many states have similar provisions. If you see someone calling themselves a "software engineer", but they aren't licensed by the state as an engineer, report them, they are engaging in fraud. Microsoft got nailed and had to change their courses from MCSE for exactly this reason.

    7. Re:Programmer != Engineer, idiot. by Rostin · · Score: 2

      Licensure in the US is handled by the individual states, and the rules and enforcement can be murky and inconsistent. I have a degree in the one of the traditional areas of engineering, but I am not licensed. I was told in college that in my state, my employer is allowed to refer to me internally as an engineer, but I can't represent myself that way to others (e.g. on my business cards) as an engineer unless I'm a for-real P.E. I'm honestly not sure where the line is, though. It could be a matter of fact that my job title is "Engineer II". If I put that on my resume, am I breaking the law, or is it fine so long as it's sufficiently clear that I'm not claiming to be licensed? Here's an old article from 2003 specifically about this issue in Texas. I'm not sure how it turned out, but it looks like a mess.

    8. Re:Programmer != Engineer, idiot. by Anonymous Coward · · Score: 0

      Who gives a shit about a backwater like Canada? Even the residents would rather live elsewhere.

    9. Re:Programmer != Engineer, idiot. by Surt · · Score: 1

      We resist this strongly in the US because of the history of people promoting themselves to 'lord' and then demanding the right to tax you and such. So we don't let anyone set claim to a title, though in a few cases we restrict your right to both name yourself something and actually practice at the same time. So you can call yourself a psychologist if you want, as long as you don't make money doing anything remotely resembling therapy.

      --
      "Who is the Journal of Quantum Physics going to believe?" --Stephen Hawking
    10. Re:Programmer != Engineer, idiot. by fliptout · · Score: 1

      I believe there is an exception to the rule in Texas, where if you work for a company that does manufacturing, you get a pass for calling yourself an engineer. It agitates me to no end seeing people barely qualified to do anything technical take the title of engineer.

      -from a software engineer in TX with PE license.

      --
      A witty saying proves you are wittier than the next guy.
    11. Re:Programmer != Engineer, idiot. by Mr+Z · · Score: 2

      For this reason, I've thought about taking the PE and registering. (I live in Texas.) But, it's been 15 years since I graduated with my BSEE, so it'd take some serious studying to refresh myself on all the calculus and such that I don't use every day. (I still remember all my Calc I pretty well. Calc II, Calc III, DiffEq, Advanced Statistics... not so much.)

      My business cards have never said "engineer" either. Where I work, the rule seems to be "Take whatever title you would have put engineer after, and just omit 'engineer'." So, back when I was considered a DSP software applications engineer, my business card simply said: "DSP Software Applications". These days, I get to use the title "Architect," which doesn't have the legal baggage. Yay me.

    12. Re:Programmer != Engineer, idiot. by Anonymous Coward · · Score: 1

      "it's illegal to practice engineering"

      It's illegal for someone to solve problems without an engineering license?

      All an engineer is, is someone who applies logic and science to solve a problem.

    13. Re:Programmer != Engineer, idiot. by slyborg · · Score: 1

      One of the (few) things that I still am glad about in working in the software field is the absence of retards brandishing some kind of government-issued license and feeling this entitles them to some kind of respect. You're judged on your skills and knowledge *as demonstrated* in this business. If this offends you, you're definitely in the wrong place, since I'd bet 95% of the people on /. have no form of professional licensure.

    14. Re:Programmer != Engineer, idiot. by Arlet · · Score: 1

      Depends on where you're from. In some countries, a degree at a technical university will allow you to call yourself an 'engineer', even including a special engineer title you can put in front/behind of your name.

    15. Re:Programmer != Engineer, idiot. by Anonymous Coward · · Score: 0

      Look up the etymology of the word engineer. I create works of ingenuity using software. That makes me a software engineer, and the distinction from just programming is worth making, I think. That the makers of tangible machines decided they wanted the word all to themselves some time ago doesn't change its meaning.

    16. Re:Programmer != Engineer, idiot. by Lemmy+Caution · · Score: 1

      This is made complicated by the fact that "software engineering" is a widely understood and accepted practice, with an extensive discourse going back to the 1960s, and has as much to do with organizational issues, workflow etc. as it does with architecture, design and programming. I understand that this is causing some contestation over the term in Canada. In some sense, you can have a group of system architects, developers/programmers etc. all working together doing software engineering without a single "engineer" among them.

    17. Re:Programmer != Engineer, idiot. by Anonymous Coward · · Score: 0

      there's nothing worse than retards who keep going on about this meaningless distinction. fuck Canada. you're making a distinction between "licensed engineer" and "guy who does the exact same thing but without a license". they're both doing engineers and should both be considered engineers. you only want to recognize the legal one because you love bending over for the gov't. go eat shit and die.

    18. Re:Programmer != Engineer, idiot. by Anonymous Coward · · Score: 1

      I suspect you're mistaken. The title "Professional Engineer" is, in the US, only permitted to be used by those people who have completed the difficult set of exams and earned the appropriate experience as required by the licensing state (http://en.wikipedia.org/wiki/Regulation_and_licensure_in_engineering#United_States). Relatively few people that study and have an engineering career become PEs because of the long and difficult exams that are required for the license, and also because most organizations only need a handful of PEs to certify the work done by a group of engineers.

      Furthermore, by your standard, my wife, who has a B.S. in mechanical engineering, is no more an engineer than I am with my software engineering master's degree and computer science undergraduate.

      Engineering concepts can be applied to software just the same as any "traditional" engineering discipline. The only difference is that engineers learn some sort of applied phyics, while software engineers focus more on logic, mathematics, etc. I'm a software engineer, so piss off.

      Anyway, what do non-licensed engineers in Canada call themselves? I suspect they still call themselves engineers.

    19. Re:Programmer != Engineer, idiot. by Anonymous Coward · · Score: 0

      Arguably, when developing software, the activity can most accurately be described as "design". The compiler "builds" the software, but this step something we take for granted, and costs so little, that we tend to think that we're "building" a system (Eric Evan's argument, actually, but I agree). What makes this activity difficult to define, is that the problem domain varies so widely, from the mundane data-in-data-out, to complex problems in science, engineering and machine intelligence.

      When you boil it all down, though, in all cases, you're creating data "understood" by a machine (virtual or physical) who's purpose is to transform other data, in a problem domain not understood by that machine directly.

      I think it'll be a while before society comes up with a term which adequately captures all that, so in the meantime I'll settle for "data transmogrification designer".

    20. Re:Programmer != Engineer, idiot. by Anonymous Coward · · Score: 0

      PEO is a scam! the type of licensing and the arm twisting with CEAB they do to artificially require teachers to become a PEng is ridiculous. I wonder whether their own scam would pass their ethics test.

    21. Re:Programmer != Engineer, idiot. by Anonymous Coward · · Score: 0

      Today I learned that everyone lives in Canada. In this hypothetical "Finland" though, most "programmers" graduate as engineers.

    22. Re:Programmer != Engineer, idiot. by Anonymous Coward · · Score: 0

      their website is really peo.on.ca?

      peon.ca?

      awesome!

      and the after-hours parties are at pee.on.ca, I suppose.

    23. Re:Programmer != Engineer, idiot. by Seumas · · Score: 1

      That's great, but the definition of an engineer is a person who builds, designs, or maintains things like engines, machines, (software), etc. If you build, design, or maintain those things, you are by definition an engineer and no union or guild or association that wants to represent you, dictate to you, and fish some dues out of your bank account every month changes that.

    24. Re:Programmer != Engineer, idiot. by hjf · · Score: 2

      Except I wouldn't like to use a bridge designed by an self-called "engineer", exploting the english etymology.

      Because in non-english speaking countries, the roles of architect (the one who designs) and engineer (the one who makes the real-life calculations) are very clear. An architect can design a 100-story building, but he needs an engineer to do all the calculations (or check them). It's what we call "sign the blueprints".

    25. Re:Programmer != Engineer, idiot. by hjf · · Score: 1

      Do you wonder why the software world is loaded with bugs? Oh yes, the hipster "I'm good at what I do" metodology. "Software experts" that have never had any formal training (and find themselves reinventing the wheel every day).

    26. Re:Programmer != Engineer, idiot. by Anonymous Coward · · Score: 0

      There's nothing worse than retards who get a college degree in programming and start calling themselves "engineers".

      I work with these machines - design them, refine them. You could, with just the slightest hint of fancy, refer to them "difference engines". I am an Engine-er. Welcome to the English language; I suggest that you save yourself some grief and just deal with it.

      (Of course you need a license to do something useful in Canada. Woo flippin' hoo. Canadian industry is all about the incumbent industries protecting themselves from competition through regulatory capture. That's also part of why you have such sucky telecom services that you're always complaining about.)

      It has absolutely nothing to do with incumbent industries protecting themselves. It has to do with the knowledge that if you hire an engineer, knowing that you are getting someone that has gone through a level of education and on the job training and experience to be certified as an engineering. It is typically most applicable in the physical world where you wouldn't just want some guy telling you how to build a skyscraper. The software world is a bit more fuzzy but when you get into mission critical software in which people's lives can be at risk if it fails, it becomes important again.

      It doesn't prove competence, but it does prove experience and training and having taken an oath of public responsibility. That doesn't mean that a non-engineer isn't capable of doing the work, and in many fields if they are "supervised" by an engineer they can do the work. But, would you trust someone to be your surgeon if there was no way to prove their training or experience?

      It's a direct result of building accidents of the early 1900s that resulted in deaths.

      As for Canadian telecom, that has more to do with the fact that our telecom companies are required to provide service to remote rural areas and that is very costly. If it were a true free market, they would likely target dense urban areas in which they can make ample money and reinvest in those areas. When you have to take your profits and build out to a 100 person community in the middle of nowhere, it makes it difficult to compete with Japan levels of internet service and speeds.

    27. Re:Programmer != Engineer, idiot. by nonsequitor · · Score: 1

      What about a Bachelor of Science in Applied Sciences from the Engineering College at my University? Don't I get to call myself a software engineer? I don't call myself a Professional Engineer, but neither do other recent engineering grads and they have engineer in their titles. It takes several years work experience and an exam to become a PE in the states, and once you get it, you can put it after your name like PhD. I know plenty of mechanical, electrical, and chemical engineers who are not PE's.

      In my opinion, the difference between programming and software engineering is the approach. Software Engineering is a discipline; it involves requirements, design, verification & validation of functionality, etc. Programming is just writing code.

    28. Re:Programmer != Engineer, idiot. by aztracker1 · · Score: 1

      I think the larger issue is using the term "Engineer" with software. You typically do not engineer a software project. I prefer the term developer, or architect since they are more apt to fit into a typical software development structure.

      --
      Michael J. Ryan - tracker1.info
    29. Re:Programmer != Engineer, idiot. by Anonymous Coward · · Score: 0

      Depends on your view... I've worked with some big companies in Waterloo who just dump me (programmer) onto positions called Software Engineer or [Product Name] Engineer. And other people in our group are titled exactly the same way, without a single "developer-titled" person around in the building.

      I think if you're in the industry, we know exactly what you mean by a software engineer. Though not the same as software developer, many more professional developer hybrid in their job between software developer and engineer. I see no problem naming yourself a software engineer if your title is like that, or if you're really hybriding. I don't think our industry care about the real professional title too much. Your position give you a responsibility you're taking, which is already your "stamp" in the company. Though of course, it's a bit over if you're a lower-ended developer and name yourself a software engineer...

    30. Re:Programmer != Engineer, idiot. by Dahamma · · Score: 1

      Pretending that a certificate somehow makes you better is the real joke. I don't know anyone in computer or electrical engineering who bothered getting a "certificate".

      I guess that's why they have had to settle for EE/CS jobs at second rate companies like Intel, nVidia, Apple, Oracle, Marvell, Broadcom, Google, or any of the others here in Silicon Valley that could give a shit about a piece of paper issued from bureaucrats over intelligence and motivation...

    31. Re:Programmer != Engineer, idiot. by Dahamma · · Score: 1

      Absolutely. That's why such a large proportion of high tech innovation has come from the US in this century - no one cares about titles, it's all about results. Hell, a lot of the most successful high tech entrepreneurs never finished their degrees anyway, let alone bother with a useless "engineering license".

    32. Re:Programmer != Engineer, idiot. by Anonymous Coward · · Score: 0

      Though legally not engineer, I really don't see a problem calling yourself one. If the listener is in the industry, they know very well about what you're talking about because though it's not the legal standard, is the industry's common naming. And if they want a seal, they'll ask you explicitly for sure.

      I can only say, speak human language. Nobody care about legal naming unless you're dealing with legal issue directly related to the legal title "Engineer". If you say "computer engineer" to somebody on street, i doubt they'll think about the "legal" meaning at all, in any way. Few people will even think about a "stamp".

    33. Re:Programmer != Engineer, idiot. by El_Muerte_TDS · · Score: 1

      Do you wonder why the software world is loaded with bugs?

      Not really. I know why it is often loaded with bugs. It often has to do with the price tag associated with quality and the time it takes to achieve it.
      So instead of going for quality software, the customers will take cheap and early delivery.

      Btw, there is nothing wrong with reinventing the wheel. Man has been doing that since they invented the wheel, otherwise we would still have stone wheels.

    34. Re:Programmer != Engineer, idiot. by hjf · · Score: 0

      Reinventing is not the same as perfecting. Early optimizing is another cause of bugs ;)

    35. Re:Programmer != Engineer, idiot. by shoemakc · · Score: 1

      For those outside of the US, while the terms "Engineer" and "Architect" are not legally protected in the United States, the terms "Professional Engineer" (PE) and "Registered Architect" (RA) most certainly are:

      http://en.wikipedia.org/wiki/Professional_engineer

      So sure, call yourself an Engineer if you want, but calling yourself a PE or RA in the US without having a license in good standing is grounds for being sued.

      -Chris

      --
      --an unbreakable toy is useful for breaking other toys--
    36. Re:Programmer != Engineer, idiot. by Mr.+Shotgun · · Score: 1

      In Canada, it's illegal to practice engineering, or call yourself one, without a engineers license. There's nothing worse than retards who get a college degree in programming and start calling themselves "engineers". It's an insult to every actual certified engineer in the world.

      Actually, the distinction is not as cut and dry as you would like to think. Most countries, including Canada, have restrictions in regards to who can use the title Professional Engineer. The Professional Engineer designation usually connotes a degree of legal responsibility when they execute their duties.

      However the use of the word "Engineer" in a position name or title is not as well defined legally. For instance in the US there is the notion of Industrial exemptions, where certain engineering positions do not require licensure because the product is sold across the country, or existing legal avenues for compensation of a faulty product are considered antiquate. Furthermore, in your country of Canada, the decisions regarding the use of the word Engineer in a title are varied across provincial lines, for instance some cases from Alberta, two of which it was ruled that the persons use of the word engineer was not liable to confuse the public or cause the public harm. Only in Quebec and Ontario is the word "Engineer" regulated, not just "Professional Engineer" via the Engineers act.

      Obligatory IANAL,IANYL, IANAE, IANASE, ILB

      --
      Of all tyrannies, a tyranny sincerely exercised for the (supposed) good of its victims may be the most oppressive
    37. Re:Programmer != Engineer, idiot. by Toonol · · Score: 1

      Sadly, I think this will change over the next few decades. There are types of employees that love to put up artificial barriers to competition. Whether it's engineers, architects, or hair dressers, the established workers love certification schemes. It'll drive more work offshore, of course.

    38. Re:Programmer != Engineer, idiot. by Anonymous Coward · · Score: 0

      So you can call yourself a psychologist if you want, as long as you don't make money doing anything remotely resembling therapy.

      This is not actually true. You can in fact create your own practice and charge money for your services. The law does not care. The reason you do not see this happening is because there are no third party insurance agencies that would pay you.

    39. Re:Programmer != Engineer, idiot. by Anonymous Coward · · Score: 0

      In Canada, it's illegal to practice engineering, or call yourself one, without a engineers license. There's nothing worse than retards who get a college degree in programming and start calling themselves "engineers". It's an insult to every actual certified engineer in the world.

      have to disagree. People who drive trains (a month of training) call themselves engineers. And is there a microsoft designated "Systems Engineer" (fancy term for network admin) for the price of writing a few tests?

    40. Re:Programmer != Engineer, idiot. by Anonymous Coward · · Score: 0

      In Canada, it's illegal to practice engineering, or call yourself one, without a engineers license. There's nothing worse than retards who get a college degree in programming and start calling themselves "engineers". It's an insult to every actual certified engineer in the world.

      No, that's a self insult from the software programmer to himself.

      Software is applied scientific art, anyone reducing it to mere engineering thinks he had ideas and software is written by underpaid newbies in a factory like environment.

    41. Re:Programmer != Engineer, idiot. by Anonymous Coward · · Score: 0

      There's nothing worse than retards who get a college degree in programming and start calling themselves "engineers".

      I dunno, retards who get a degree in engineering and start writing code are pretty bad.

    42. Re:Programmer != Engineer, idiot. by Anonymous Coward · · Score: 0

      Never heard of a college degree in programming...and besides...if you wanted to studying programming...is college the best way to do that? Go to a trade school or community college to learn programming.

    43. Re:Programmer != Engineer, idiot. by Anonymous Coward · · Score: 0

      Yes, you know, unions and regulations are what make Silicon Valley successful.

    44. Re:Programmer != Engineer, idiot. by BasilBrush · · Score: 2

      Sounds like protectionism. I have sympathy with the idea that you need a certain qualification to call yourself an engineer. I have no sympathy for the idea that you need to join a club to call yourself one.

    45. Re:Programmer != Engineer, idiot. by w_dragon · · Score: 1

      Look up 'stationary engineer'. It's a factory position, requires a 2-year college program, and the people who do it can call themselves engineers without a P.Eng in Canada. Also I do know people doing software that requires P.Eng, mostly industrial-control type stuff. There are also routes to a P.Eng if you have a degree that isn't in applied sciences, so long as it's fairly close (science or math generally), and you're willing to jump through some interesting paperwork hoops.

      Despite what they tell you in school, engineering in Canada, and the P.Eng designation in particular, isn't limited to the ivory tower few.

    46. Re:Programmer != Engineer, idiot. by Anonymous Coward · · Score: 0

      My BSE in Computer Science Engineering begs to differ

    47. Re:Programmer != Engineer, idiot. by stephanruby · · Score: 1

      Is Canada more like the UK by any chance? I don't know if they call software developers engineers in the UK, but they do label almost everybody who deals with machinery some kind of engineer: a train operator, a car mechanic, an elevator repairman, a factory worker, a janitor, etc. To them, they're all engineers.

      So if you're not the software kind, what kind of engineer are you? Do you happen to be a train engineer by any chance?

    48. Re:Programmer != Engineer, idiot. by jonbryce · · Score: 1

      In the UK, the British Computer Society, or it might be called the Chartered Institute of IT, is a member of the Engineering Council, so if you pass their exams, you have engineer status.

      Having said that, the call centre monkeys on first line support at my ISP call themselves "support engineers", and that is perfectly legal.

    49. Re:Programmer != Engineer, idiot. by Anonymous Coward · · Score: 0

      Yeah, here in the US the same applies - technically, to call yourself an engineer, you need to take the professional engeineer exam.

      Being a certified engineer is irrelevant for most engineering graduates, however, since it only makes a real difference to civil/structural/mechanical/aerospace engineers. (You want to make sure that the bridge you're bidding for won't fall in the water? Get a PE to sign off on it. Makes you wonder what happened to the PEs that signed off on the I-35W bridge in Minneapolis...) Being a PE has more legal meaning than technical.

      Interestingly enough, in the last issue of Communications of the ACM there was an article discussing whether "software engineering" was the same as any other type of engineering, and the conclusion was no. Having graduated as an electrical engineer myself, but having since turned to "software engineering" as my profession, I'd have to agree - and I'd still assert that "software engineering" was engineering, in every sense of the word "engineering." (Part of the problem is that too many people treat it as "programming," and you get the resulting unmaintainable spaghetti code out of them.)

      So yeah, you can curmudgeonly reserve the word "engineer" for those that pass the PE exam, but the only people that will care are government employees and lawyers. The rest of us that know what the word "engineer" means will still refer to those that practice the discipline of design and implementation as "engineers."

    50. Re:Programmer != Engineer, idiot. by Anonymous Coward · · Score: 0

      In Texas you can call yourself whatever kind of engineer you want so long as you don't offer those services to the public. That's what they mean when they say "professional use". In other words you can happily write code at whatever company you work for and have business cards that call you a Software Engineer and you're not in violation of the Act. However if you walk around town offering to write software for people for money and call yourself an engineer you'll get a cease and desist letter from the State Board unless of course you're licensed as a PE.

    51. Re:Programmer != Engineer, idiot. by Surt · · Score: 1

      Nope, you'll get in trouble with the law if you do. You can offer those services, or you can call yourself a psychologist, but if you do both you are going to jail.

      http://en.wikipedia.org/wiki/Psychologist#United_States_and_Canada

      --
      "Who is the Journal of Quantum Physics going to believe?" --Stephen Hawking
    52. Re:Programmer != Engineer, idiot. by Anonymous Coward · · Score: 0

      well.

      This has to do with what are called "title" and "practice'. In most states (and provinces) there are separate rules about whether you can "practice" Engineering (i.e. do it) and whether you can call yourself an "Engineer" as a title. And worse yet, there are differences among the kind of engineering (e.g. in California, there's different flavors of engineer: Electrical, Civil, etc. as well as Petroleum, Traffic, etc.)

      There's what's called the "industrial exemption" which allows people who are employed by a company to call themselves engineers, as long as the company is not doing "Engineering" as it's product. That is, Zenith Engineering would have to have at lease one PE who supervises everything, sort of like Nadir Architects needs a licensed architect at the helm. PORT, Inc., who makes widgets and sells them might have engineers working for them, but they're really in the widget business, not "Engineering".

      There are certain activities (practice rules) which require a licensed engineer (chartered engineer in UK) to perform them: signing and sealing certain construction drawings is one. Regulatory filings (building plans, etc.) often require a PE's "wet stamp".

      As for how one gets that license. You take a test, after having established that you have, 6 years of experience (with documentation from the bosses that you were really doing engineering as opposed to other work.. if you spent half your time designing and half being a marketeer.. you get half credit), references from 3 other licensed engineers, and having passed the Fundamentals of Engineering Exam (aka Engr in Training).
      A 4 year degree from an accredited school can count for part of the experience, but you do NOT need to have a degree to be licensed.

      The FE exam is a day long and not too tough but pretty broad: take it when you're a senior or just graduated, when you still remember Moody diagrams and Redox stuff that you took as an lower division. Or review it beforehand. They give you a 50 or so page handbook with tables and reference material to take the test with.

      The actual PE exam is another all day affair (open book, as many as you can carry in in one trip) that's more specialized to your field. Realistically, you don't need a lot of books. A couple handbooks and a scientific calculator is all you need. I'm pretty sure you could pass it using a slide rule: they're not looking for 20 decimal places. (I'd love a chance to try, but since once you pass, you can't take it again, I'll not get the opportunity). it was hilarious watching people dragging in a rolling cart with a freaking file cabinet full of notes and a bookshelf full of building codes: all totally useless on the test, since speed is important: you have to sustain about 2 minutes/question to get through.

      Take the test, wait a few months, get the notice in the mail that you passed, order the stamp, you're free to be sued for violating professional standards. (Yep.. want to actually do PE stuff, and you need liability insurance, unless you have no assets). Actually, a lot of PEs work for govt agencies (as a condition of getting the job), and it's a heck of a lot of fun as a sole practitioner. Insurance is available and not too expensive.

      And you get to act infinitely superior as an Engineer (with a capital E) to those other engineers (with a lower case e) toiling "for the man" under the industrial exemption.

    53. Re:Programmer != Engineer, idiot. by Anonymous Coward · · Score: 0

      Judging from the recent job search I've done for SW Engineer positions in Texas, you're looking at cracking down on 50-60 different companies who probably have in gross several thousand people with that title already working for them. And that's just for companies that are looking for new candidates.

      Quite frankly, the State of Texas doesn't care and neither do I. I don't pass myself off as a PE so as far as I am concerned you can rightly fuck off with your high and mighty moralistic bullshit.

    54. Re:Programmer != Engineer, idiot. by Anonymous Coward · · Score: 0

      There's nothing worse than retards who get a college degree in programming and start calling themselves "engineers". It's an insult to every actual certified engineer in the world.

      Poor baby. Want some cheese with that whine?

    55. Re:Programmer != Engineer, idiot. by msobkow · · Score: 1

      And what, precisely, does a stamp for marking building and machine documents have to do with programming?

      Obtaining the right to call yourself an engineer in Canada tells you absolutely NOTHING about their programming skills.

      --
      I do not fail; I succeed at finding out what does not work.
    56. Re:Programmer != Engineer, idiot. by Anonymous Coward · · Score: 0

      PE exam doesn't need much calculus, to be honest.
      Algebra, trig, ability to look things up in a compound interest table. You can pass it with a TI-30 calculator.

      You DO need to be able to solve complex problems, though

    57. Re:Programmer != Engineer, idiot. by PowerVegetable · · Score: 1

      "Retards" with college degrees who call themselves engineers are only breaking a rule in countries (like Canada) where "engineer" is a protected term. For countries (like the US) where engineer just means "someone who has training and responsibility in an engineering role", you're being a pompous ass. Your title does not make you a better problem solver.

      I know a few senior retired chemical engineers that don't have college degrees in engineering, because they got their start in an apprentice program years and years ago. They did good work as engineers and problem solvers, and the lack of a cert labeling them as officially-minted and approved by the ABCDEF certification board doesn't make them any less qualified.

      A trade group camping on a title and claiming legal ownership of it doesn't make them better at their job. And for what it's worth, train operators have a legit claim on the phrase "engineer" that predates any of our modern professions.

    58. Re:Programmer != Engineer, idiot. by Mr+Z · · Score: 1

      Hmmm.... then maybe I'd be OK. I solve complex technical problems at work almost daily, sometimes mathematic, but most often logistical, or what you might call "heavily derived", where you have to pull details from several disciplines to make sense of everything. Maybe I'd be OK. Hmmm....

    59. Re:Programmer != Engineer, idiot. by Anonymous Coward · · Score: 0

      Not anymore. It is illegal to call yourself a Professional Engineer (PE) if you are not registered, but for anyone with a degree such as Software Engineer, it is OK to use to call themselves that.

      One of the engineering societies lost a lawsuit, which made it clear a few years ago. They have been overstepping their bounds for a long time and someone finally got fed-up and went to court.

    60. Re:Programmer != Engineer, idiot. by Anonymous Coward · · Score: 0

      See also:

      The US economy

      voters

      doctors

      lawyers

    61. Re:Programmer != Engineer, idiot. by RealityChk1 · · Score: 1

      My (little 27,000 empolyee) corporation calls me a "Principal System Engineer". So, I guess I R one. At least thats what it say in my signature block. And engkneers can't spll neither.

    62. Re:Programmer != Engineer, idiot. by metarox · · Score: 1

      Not in the province of Quebec, you can't call yourself engineer or pretend your are one. If caught you will be fined.

      http://www.peo.on.ca/enforcement/Quebec_MS_April2004.pdf

    63. Re:Programmer != Engineer, idiot. by mjwalshe · · Score: 1

      no no - the only thing you should allow the architect to do is chose the paint color's.

    64. Re:Programmer != Engineer, idiot. by Anonymous Coward · · Score: 0

      Interesting enough, not a whole lot of great engineering comes out of Canada. You have your title and stamp though so I guess that's what's important?

    65. Re:Programmer != Engineer, idiot. by hjf · · Score: 1

      An architect is someone who's not man enough to be an engineer, and not gay enough to be an interior decorator.

    66. Re:Programmer != Engineer, idiot. by Dixie_Flatline · · Score: 1

      Augh. It's not protectionism, it's a designation that brings with it certain legal rights and RESPONSIBILITIES. From the link which you CLEARLY didn't read:

      "Affixing the seal on documents and drawings indicates the documents and drawings are final for the intended purpose and have been prepared by or under the supervision of a person licensed to practise professional engineering who is assuming responsibility for them. By sealing documents and drawings, licence holders acknowledge that they assume professional responsibility for the design, opinions, judgments or directions given in the documents and drawings. The seal is a "mark of reliance," indicating that a licence holder attests that other people can rely on the information provided in the documents and drawings."

      You're not 'joining a club', you're being certified by an organisation that has the expertise to know whether or not you're qualified to handle that sort of responsibility.

    67. Re:Programmer != Engineer, idiot. by Dixie_Flatline · · Score: 1

      I'm not sure what your point is here. The article basically claims you should call yourself an 'engineer' instead of a 'programmer'. These comments are (correctly) pointing out that you shouldn't be calling yourself an engineer unless you actually HOLD that designation. It's misleading at best, and outright illegal at worst.

    68. Re:Programmer != Engineer, idiot. by Anonymous Coward · · Score: 0

      I hate this policy.

      I completely understand the need for requiring certification for certain engineering practices, but they should not REGULATE USE OF LANGUAGE to do so. Create a very specific title of "xyz engineer" and require meeting it's specifications to use it, but don't tell me that I can't use a generic word when its meaning applies. I engineer things, and that makes me an engineer. Period.

    69. Re:Programmer != Engineer, idiot. by skovnymfe · · Score: 1

      The names are pretty easy if you consider that they're just a slightly skewed version of every other profession, mainly due to outsourcing. For example, indians/chinese guys are programmers. Then you have what other professions call lab assistants, interns and wage slaves. They're now software engineers. Then you have what other professions would call an engineer, which is a software architect. And I can't remember what the last title comparison is.. Damn. Oh, and on an unrelated note, computer science is a research line, not an actual programming line. It may involve programming, but it's a wholly different kind of programming than what most wage slaves are capable of. That's why the golden rule when hiring CS grads is not letting them touch a keyboard for the first few years, until they've actually learned how to program.

    70. Re:Programmer != Engineer, idiot. by BasilBrush · · Score: 1

      There was no link. There was a URL, but no link. And no I didn't read it. It's hardly the only trade club in the world.

      Qualifications are what is required to "know whether you are qualified". The clue is in the name.

    71. Re:Programmer != Engineer, idiot. by thetoadwarrior · · Score: 1

      Sounds retarded if you have to join a club to be a 'proper' engineer.

    72. Re:Programmer != Engineer, idiot. by Anonymous Coward · · Score: 0

      agree, but the qualification which assigns the authority and responsibility isn't handed out by a university to anyone who can afford tuition, it is awarded to those who have demonstrated the required skill and judgement.

      medicine, law, accounting, engineering, are all self regulated professions which have a body of members which discipline themselves and set standards for membership.

    73. Re:Programmer != Engineer, idiot. by Bengie · · Score: 1

      Not optimizing your design from the beginning is another cause of having to re-write everything or shipping a sub-quality product.

    74. Re:Programmer != Engineer, idiot. by Anonymous Coward · · Score: 0

      I practice software engineering in Canada. I don't call myself an engineer, but according to your short-sighted definition, I'm violating the law.

      So sue me, jackass.

    75. Re:Programmer != Engineer, idiot. by Anonymous Coward · · Score: 0

      I wouldn't want to use a bridge designed by a electrical engineer, either.

    76. Re:Programmer != Engineer, idiot. by Lemmy+Caution · · Score: 1

      Government contracts, government research grants and protectionism did.

    77. Re:Programmer != Engineer, idiot. by hjf · · Score: 1

      re-write everything? what are you using? perl?

      ever heard of modularity? refactoring? no?

    78. Re:Programmer != Engineer, idiot. by Anonymous Coward · · Score: 0

      Great article. I'm going to give this to my kids to read, as much if it I learned the hard way.

      I always roll my eyes at the professional engineer argument. I get it--mechanical engineering, civil engineering, and electrical engineering are very different things, they're licensed, and that's important. But if the only difference is a licensing system, you're argument is starting to fail on me. In the past you've made me feel bad about having the word "engineer" in my job title, but that's what the company calls it. The represents the value and scope we bring to the business. I'm getting over it--I'm a not a licensed engineer, but what I do is engineering.

      The things engineers do can and do kill people. Like it or not IT is going the same route. The things we code and systems we deploy can kill people now. Embedded software manages all sorts of things from vehicles to medical equipment. Medical companies are rolling out life safety systems with massive reliance on software, servers and networks. I hope to God, that if I need to get hooked up to one, it was properly engineered, despite not having a single "licensed engineer" involved.

      I've seen some work by mechanical engineers that do far more to slander the engineering profession than senior IT guys getting stamped with the engineer label.

    79. Re:Programmer != Engineer, idiot. by Anonymous Coward · · Score: 0

      I am about to graduate with a degree in computer science from the college of engineering at my university. Out of all the majors in my college, (comp e, ee, ie, me, civil e, chem e) we are the only ones that can't get a math minor because the reqs are built into the degree and the math department refuses to hand one out for doing nothing extra. On top of that, I am about 12 credits away from qualifing for a comp eng degree if they allowed it(to simalar apparently), and 28 credits away from an EE degree, which they would allow. Both of which qualifies for a professional engineering license.

      I guess my point is I have learned a lot more than "programming" and yes, I'm a God damn engineer.

    80. Re:Programmer != Engineer, idiot. by Anonymous Coward · · Score: 0

      And the solution to that isn't to regulate the use of an English word, but just require the person doing to work to have the relevant qualifications.

    81. Re:Programmer != Engineer, idiot. by SomeStupidNickName12 · · Score: 1

      Hi Canada, I would like to introduce you to the rest of the world where right or wrong this is standard practice. Calling the rest of the world retards makes you come across as a fool.

    82. Re:Programmer != Engineer, idiot. by swalve · · Score: 1

      Are you sure? Engineer and Professional Engineer are two different titles.

    83. Re:Programmer != Engineer, idiot. by swalve · · Score: 1

      What do IBM CEs call themselves in these states?

    84. Re:Programmer != Engineer, idiot. by swalve · · Score: 1

      Pretty wide definition of "man". Engineers follow orders, architects give the orders. I wouldn't want to be in a building designed by an engineer. "Why do we need 8 foot ceilings??! Nobody is 8 feet tall!" You'll have event spaces with 7.5 foot ceiling, and everyone would go insane. The only good news would be that there would probably be plenty of outlets.

    85. Re:Programmer != Engineer, idiot. by swalve · · Score: 1

      And worse than that are retards who believe such things, but then spend millions to get elected to said government.

      That is EXACTLY what a government is supposed to be doing. The citizens get together and decide what the rules are for society and how to enforce them. If the citizens decide that only people with certain qualifications can call themselves $JOBTITLE, then that's perfectly fair.

    86. Re:Programmer != Engineer, idiot. by swalve · · Score: 1

      Offshore hair dressers?

    87. Re:Programmer != Engineer, idiot. by PerfectionLost · · Score: 1

      That's why I call myself a Computer Scientist. That and I know mostly Physics and Chemistry Scientists, and it pisses them off to no end that they got the PHD and I did not. If I knew more Engineers of any sort I'd probably call myself a Computer Engineer though.

  8. Everybody is an engineer? by babblesaurus · · Score: 5, Insightful

    . . . and 'real' engineers everywhere weep. Obviously every case may be unique, but calling yourself one thing which has a set of implications does sort of slander professionals in the field whose titles you are trying to snag.

    1. Re:Everybody is an engineer? by FooAtWFU · · Score: 5, Insightful

      . . . and 'real' engineers everywhere weep. Obviously every case may be unique, but calling yourself one thing which has a set of implications does sort of slander professionals in the field whose titles you are trying to snag.

      I agree 100%! As we all know, real engineers drive trains.

      chugga chugga chugga chugga choo chooooo!

      --
      The World Wide Web is dying. Soon, we shall have only the Internet.
    2. Re:Everybody is an engineer? by Anonymous Coward · · Score: 0

      Wow, and here we are talking about eople who have degrees in "Software Engineering" and can be certified in "Software Engineering".. Sounds liek a bunch of ignorant idiots projecting.

    3. Re:Everybody is an engineer? by Anonymous Coward · · Score: 0

      Perhaps you, and the others who rated you, should come back when you actually know what the word Engineer means.
      Software development completely comes under the Engineering context.

    4. Re:Everybody is an engineer? by Anonymous Coward · · Score: 0

      Yes yes, and I always assume that Doctors of Philosophy can perform brain surgery. Sorry we co-opted your word, but we did, so... Neener neener? Does that sound appropriate? ;-)

    5. Re:Everybody is an engineer? by rbrander · · Score: 1

      No. Real Engineers are held responsible for their mistakes, like doctors. They go to jail if the building falls and kills somebody.
      This has never happened with a software "engineer". That's the difference.

    6. Re:Everybody is an engineer? by The+Living+Fractal · · Score: 2

      Or to take it even further, back in the 1300s when an engineer was someone who operated military 'engines' - aka machines like catapults.

      And let's not forget the Army Corps of Engineers.

      Point being, if someone goes to school to learn how to mix chemicals together and then comes out angry that other people are calling themselves engineers, too, but without the schooling, then maybe that someone should go BACK to school and learn some history.

      --
      I do not respond to cowards. Especially anonymous ones.
    7. Re:Everybody is an engineer? by Arlet · · Score: 1

      Of course, when you learn to design a building, they teach you how you can calculate whether the building is strong enough. There are methods and tools for that purpose.

      For software, there are no tools or methods that you can use to determine if a program has some fatal bugs. You're on your own, and usually with a tight deadline and no budget.

    8. Re:Everybody is an engineer? by Anonymous Coward · · Score: 0

      Working for a company that makes software that needs to be 21CFR Part 11 compliant for the FDA... I must say that you sir, are wrong..

      Programmers are most definitely held responsible for their mistakes where I work... If you don't know how to make very tightly controlled changed to validated software and fully document the potential impact of those changes to the satisfaction of the FDA, they'll kick you out of the business faster than you can press Undo.. Where I work, programmer mistakes CAN get people killed and programmers CAN be investigated as an individually by the FDA and can face serious jail time if they signed documents but didn't implement them.

    9. Re:Everybody is an engineer? by Anonymous Coward · · Score: 0

      No. Real Engineers are held responsible for their mistakes

      Actually they have insurance for such circumstances. Most of us dont get paid like doctors and engineers, because we dont need to pay the liability insurance like doctors and engineers. If the software industry had to pay liability from loss of revenue due to software failure, there wouldnt be a software industry as we know it. That is the reason for all the "Use at your own risk" EULA's.

    10. Re:Everybody is an engineer? by Anonymous Coward · · Score: 1

      Welcome to Formal Verification!

    11. Re:Everybody is an engineer? by Arlet · · Score: 0

      Formal verification only moves the problem from the implementation to the specification. Writing a sufficiently detailed and unambiguous specification is the same as programming, but in a different language.

    12. Re:Everybody is an engineer? by Anonymous Coward · · Score: 0

      I think I heard somewhere that you can prove using formal methods , that a software piece has zero bugs.But it is so time-expensive, that no one does it.

    13. Re:Everybody is an engineer? by rbrander · · Score: 2

      If you think structural engineering is not done on deadlines and budgets, you're kidding yourself.

      But your main point is mostly correct - real software engineering is HARD. One of my courses was about applying mathematical proof methods to programs and proving them correct. It was HARD. Exponentially so for more-complex programs.

      However, it *is* done, mostly in EE with control systems. Medical equipment, phone exchanges , aircraft control - anything where people die if there's a failure and the maker gets sued for it - is done to engineering standards. That is, it costs 10x as much per line of code. Boeing's software guys I have no problem calling "Engineers"; but of course, most of them already were before they added programming totheir skills.

      All software could be done to such standards, but we don't want to pay for that , so we endure some bugs instead. Less in some places than others, though - banks have very few software errors.

    14. Re:Everybody is an engineer? by Arlet · · Score: 1

      If you think structural engineering is not done on deadlines and budgets, you're kidding yourself.

      No, I meant that in the case of software development, a thorough verification (as far as that's possible) would take 10x as much time and budget as is available in most cases. And mathematical proof only works if you have a 100% correct specification.

      In structural engineering, at least the deadline and budget allow for an acceptable verification.

    15. Re:Everybody is an engineer? by Anonymous Coward · · Score: 0

      A programmer could also go to jail if a failure if their program killed someone. Negligence is not restricted to physical products.

    16. Re:Everybody is an engineer? by Anonymous Coward · · Score: 0

      I disagree. I am a software engineer. If my software doesn't work well, soldiers could die. Of course, if it does work well, even more enemies die. Hmmm.

    17. Re:Everybody is an engineer? by Chris+Mattern · · Score: 1

      For software, there are no tools or methods that you can use to determine if a program has some fatal bugs.

      Yes there are. It's just that nobody's willing to put in the time an expense to use them.

    18. Re:Everybody is an engineer? by hjf · · Score: 2

      I was going to give you a long explaination, but paraphrasing you will suffice:

      Point being, if someone goes to school to learn how to fix people and then comes out angry that other people are calling themselves doctors, too, but without the schooling, then maybe that someone should go BACK to school and learn some history.

    19. Re:Everybody is an engineer? by Chris+Mattern · · Score: 1

      That's not true. It's true that formal verification can't prove the program "does what I want" if you screw up specifying what you want, and it's very possible to do so. But formal verification *does* allow you to make blanket guarantees about the program behavior, like "This program will not ever crash and dump core," "This program will never take more than X clock cycles to update the display," "This program will never overflow a buffer" and the like, and such guarantees are very valuable and impossible to deliver without the verification.

    20. Re:Everybody is an engineer? by Arlet · · Score: 1

      They also only work in a small subset of problems, and only if you have formal specification that you can compare against. For most problems there is no formal spec, because writing one would be similar in complexity as writing the program.

      Seriously, 30 man-years for verifying 7500 lines of code? That's just not practical. And how can we be sure that the verification process itself is correct ?

    21. Re:Everybody is an engineer? by Arlet · · Score: 0

      It's true that formal verification can't prove the program "does what I want" if you screw up specifying what you want

      Which is exactly my point. For any sufficiently interesting problem, specifying what you want in a 100% perfect way is impossible.

      In addition, there's no formal way to prove that two programs produce the same output (that would be equivalent to solving the Halting Problem), and as a consequence there's no general way to prove that a program is equivalent to the specification.

      Of course, like you said, parts of the program can be simple enough to prove in a formal sense, but that doesn't nearly cover all the interesting cases. There's still plenty left over.

      And, like I said in my first post, even formally verifying the parts where it is possible would lead to unacceptable budget and deadline overruns, so it's rarely done.

    22. Re:Everybody is an engineer? by Anonymous Coward · · Score: 0

      As an electrical engineer I do indeed go to jail if someone dies and it turns out I made an error in programming the safety controller. Lucky the development system for those controllers prevent many errors. But eventually I am responsible for the programm as much as I am responsible for the design of any electrical/mechanical safety systems. My context: industrial machines, EC Machinery Directive

    23. Re:Everybody is an engineer? by Arlet · · Score: 1

      Your last example isn't even correct. For 'n' large enough, the factorial function will overflow the number representation, or run out of memory.

      It's also necessary to formally prove the compiler and libraries.

    24. Re:Everybody is an engineer? by Anonymous Coward · · Score: 0

      Of course, when you learn to design a building, they teach you how you can calculate whether the building is strong enough. There are methods and tools for that purpose.

      For software, there are no tools or methods that you can use to determine if a program has some fatal bugs. You're on your own, and usually with a tight deadline and no budget.

      Not true. OK, so it's true that software testing doesn't prove the absence of bugs. For one thing, it really is true that some bugs are features, depending on the user. For another, there are many, many more ways for code to fail than there are for simple mechanical materials.

      However, there are numerous techniques available to specify, design, implement, and test software that can at least ensure that basic requirements are going to be met. IBM used some of them to create CICS, for example.

      None of which you're going to be allowed to use to any real degree because some outfit based in Bangalore has promised an entire online system in 3 weeks time for $300. Possibly using some extravagently expensive and ultimately useless "silver bullet of the month" solution from some very large company with a vested interest in it.

      And because the "fun" part (to the developers) and the "productive" part (to the managers) is the coding. Which, in a rigorously-developed software system would shrink to a small fraction of the total amount of the time and personnel required to produce it.

    25. Re:Everybody is an engineer? by Micklat · · Score: 2

      It's true that formal verification can't prove the program "does what I want" if you screw up specifying what you want

      Which is exactly my point. For any sufficiently interesting problem, specifying what you want in a 100% perfect way is impossible.

      In addition, there's no formal way to prove that two programs produce the same output (that would be equivalent to solving the Halting Problem), and as a consequence there's no general way to prove that a program is equivalent to the specification.

      You overstate the theorem. Determining whether or not two programs produce the same output is undecidable. That doesn't mean that given two non-trivial programs, you can never prove that they produce the same output (rather, it means that there's no algorithm that can receive the representation of the programs and determine in finite time and without mistakes whether or not they have the same output).

      So, where does this put us? To get safety and correctness guarantees about programs, we need not write algorithms that prove correctness about any program provided to them. Rather, we need to write proofs concerning the particular program that we wrote - and it helps if we wrote our program in certain ways that make those proofs easier to develop. This is certainly possible.

      You might counter that certain correct programs have no correctness proof. This is true only in a superficial way. A program may have correct behaviour, but if its author cannot write a correctness proof for it - even an informal one - then that means the program isn't understood by its own author, and should be fixed. Good code has correctness proofs, even if they're informal and only in the author's head.

      I must make one exception to this rule, however. In AI code, there are sometimes heuristics that have no proof, not even an informal one, because the author doesn't have more than an intuition about why the heuristic should work. But that's a small minority of the total amount of code being written.

      Of course, like you said, parts of the program can be simple enough to prove in a formal sense, but that doesn't nearly cover all the interesting cases. There's still plenty left over.

      And, like I said in my first post, even formally verifying the parts where it is possible would lead to unacceptable budget and deadline overruns, so it's rarely done.

      This is often true, but as you probably know, there are cases where verification is worth the cost. Aerospace and medicine come to mind. I'd also hazard a guess that operating systems deserve the extra investment of formal verification. Has anybody ever made a quantitative comparison of the up-front cost of formal verification with the cost of bugs and maintenance work that would have been prevented by formal verification? Is formal verification really that expensive, or are does it just seem expensive because we habitually ignore the costs of skipping it?

    26. Re:Everybody is an engineer? by Arlet · · Score: 2

      Good code has correctness proofs, even if they're informal and only in the author's head.

      But that's still a completely different situation than a structural engineer designing a bridge, and testing its strength by a number of fairly well defined methods and adherence to building codes. An informal proof, existing only in the author's head, is poorly defined, and can easily be wrong.

      And, of course, in many cases the specification isn't clear. How would you formally verify a climate model, for instance ?

      Is formal verification really that expensive, or are does it just seem expensive because we habitually ignore the costs of skipping it?

      I think it's really expensive, but in either case, it's not fair to blame the software engineer for the mess.

    27. Re:Everybody is an engineer? by Anonymous Coward · · Score: 0

      No. Real Engineers are held responsible for their mistakes, like doctors. They go to jail if the building falls and kills somebody.
      This has never happened with a software "engineer". That's the difference.

      Doctors? Do you mean "physicians", who may have a doctorate or not?

      Interesting... people complain about the bad usage of a title, and commit a similar mistake with another.

    28. Re:Everybody is an engineer? by Chris+Mattern · · Score: 2

      In addition, there's no formal way to prove that two programs produce the same output

      Of course there is. You can't prove that any two *arbitrary* programs produce the same output (that would be equivalent to the Halting program), but with programs that are written to be formally verified, you can.

      and as a consequence there's no general way to prove that a program is equivalent to the specification.

      Once again, you can't prove an *arbitrary* program is equivalent to a specification. Programs that written for verification can be so proved.

      Of course, like you said, parts of the program can be simple enough to prove in a formal sense

      I never said that. I said that there were specific failsafe properties of the *whole* program that can be proved, that such proofs are very useful, and that you *only* get assurances that such properties are true if you formally verify.

      like I said in my first post, even formally verifying the parts where it is possible would lead to unacceptable budget and deadline overruns, so it's rarely done.

      That, alas, does seem to be the case. In the software industry, "good enough" is good enough. And we're all left looking at the third software glitch we've suffered today.

    29. Re:Everybody is an engineer? by Arlet · · Score: 1

      but with programs that are written to be formally verified, you can.

      Sure, but is that subset interesting and powerful enough to solve our problems ? Can we even define a meaningful subset, so that an engineer can follow some rules, and end up with a formally verifiable program ?

    30. Re:Everybody is an engineer? by bjorniac · · Score: 1

      Well, I CAN do it, but I don't think I should...

    31. Re:Everybody is an engineer? by w_dragon · · Score: 1

      I had a great prof that pointed out that everyone is legally liable for mistakes they make in areas they claim to be an expert in, but only engineers require a course in their undergrad to tell them so.

    32. Re:Everybody is an engineer? by Micklat · · Score: 1

      Good code has correctness proofs, even if they're informal and only in the author's head.

      But that's still a completely different situation than a structural engineer designing a bridge, and testing its strength by a number of fairly well defined methods and adherence to building codes. An informal proof, existing only in the author's head, is poorly defined, and can easily be wrong.

      If it can't be made right, then the code is wrong - that's the point of making the proof formal, rather than keeping it informal. I was replying to your notion that proving code is impossible due to the halting problem.

      And, of course, in many cases the specification isn't clear. How would you formally verify a climate model, for instance ?

      Is formal verification really that expensive, or are does it just seem expensive because we habitually ignore the costs of skipping it?

      I think it's really expensive, but in either case, it's not fair to blame the software engineer for the mess.

      You can't formally verify scientific hypotheses (such as a climate model) but you can certainly verify that a supposed implementation of a climate model is indeed an implementation of that climate model (given enough time and competence). You seem to confuse formal proof with hypothesis testing in this case. You are correct that verifying the implementation's correctness would be expensive, but I was replying to your contention that it is somehow impossible or pointless to prove program correctness. In the case of climate models, making wrong policy decisions because of buggy implementations would probably be no less expensive than the verification process.

    33. Re:Everybody is an engineer? by JohnnyBGod · · Score: 1

      And creating that specification corretly is almost as difficult as creating the program in the first place.

    34. Re:Everybody is an engineer? by Anonymous Coward · · Score: 0

      Or drives and/or pumps fire apparatus.... After all, some are called fire engines for a reason.

    35. Re:Everybody is an engineer? by Anonymous Coward · · Score: 0

      An engineer is someone who operates an engine or who engineers things.

      Now, there are lots of different TYPES of engineers who could feel slandered by someone claiming they are one when they are not, but saying "engineer" doesn't tell us who they are.

    36. Re:Everybody is an engineer? by Anonymous Coward · · Score: 0

      ...yet...

    37. Re:Everybody is an engineer? by Pope · · Score: 1

      Some Macromedia moron with a "Sales Engineer" demo'd Dreamweaver 4 to a group of us way back when. He's as much an 'engineer' as I am a CEO.

      --
      It doesn't mean much now, it's built for the future.
    38. Re:Everybody is an engineer? by swalve · · Score: 1

      I took that course. Being taught by an "engineer" who never did any actual work. I weep for America.

  9. Recent graduate advice by FooAtWFU · · Score: 3, Interesting

    It doesn't matter if your first job leaves you unemployed and searching again in a few years. It matters that you're working with people who are smarter than you are and learning how to actually program and write software effectively. Job security? Pay? If you end up as an undifferentiated code monkey left to your own devices or, worse, fighting a monstrous legacy code base and bureaucracy that you're powerless to alter *cough*IBM*cough... you can very easily find you've crippled the rest of your career. At best, the work will be a dull slog.

    Go for the startup, if they sound like they have some idea of how to do things right and will offer you meaningful professional development. If you can't take a career risk at this point in your life, when do you think you will be able to? And then for Job #2, you'll have some Skills. You'll be infinitely more employable. You might even be able to look at the monstrous legacy codebase and say, with the authority of experience, that this stinks and there's a better way to do it and yes you will do that refactoring, and you won't hate your job.

    --
    The World Wide Web is dying. Soon, we shall have only the Internet.
    1. Re:Recent graduate advice by CAIMLAS · · Score: 1

      I've been working in IT for 10 years. I've been working in progressively larger and more prestigious institutions this entire time. I've yet to work with anyone "smarter" or (sadly) more capable than I am (at least regarding information technology). The sad fact is that very, very few people are actually "good" at IT: this includes programming. Very few people are good at this, and even fewer are exceptionally good. I don't consider myself exceptional, though I am good.

      You're a systems engineer if you're actually engineering a system. Responsible for Foundation Libraries, the LSB, or something similar? You're a systems engineer. Everyone else? Fuck off - you're a sysadmin, a support technician, or a desktop jockey who knows AD. Get over it.

      You're a network engineer if you're actually engineering a network. This is pretty easy to accomplish, but difficult to do well enough to not be a pain in the ass for the next guy(s) (assuming the network is not relatively trivial). SMB networking? This doesn't qualify.

      Software engineering is what smart people have done, and to a limited degree, are doing. Unless you write libraries or frameworks which others use, you are not a software engineer. I don't care how fucking fast you can develop a NextGen brainfuck with Ruby on Rails. Get in line.

      Like most things in this field, the people with business/HR/marketing degrees fuck things up irreparably.

      --
      ~/ssh slashdot.org ssh: connect to host slashdot.org port 22: too many beers
    2. Re:Recent graduate advice by Anonymous Coward · · Score: 0

      You have to be careful about the start up. I went to one where all the seniors knew less than me my first job out of college. It was a horrible learning experience in software development. The architecture was a big ball of mud. There was one guy who was a great database guy so I learned a lot there, but no one who knew object oriented programming or how to build maintainable software. In the end on leaving there it puts you in the odd position that in some areas of knowledge you are better than many senior developers but in other areas of knowledge you know less than a junior developer should. After that I have of course read the various books on object oriented design, design patterns, domain driven design... But without practical experience in a professional environment, I'm not that good.

      Overall it is very important (at least if you want to be a programmer) to ensure that some type of care is given to maintainability. Most startups are get it done yesterday even if you have to rebuild it tomorrow. This is generally the reality of the situation that you release a bad product version 1 and then you can make version 2 better because you'll be around. Or more likely you release tons of bad code until something sticks and you get funding for version 2. The guy spending the time to do it right might release too late and have no business. At least that seems to be the idea that most have. I think it isn't necessarily a bad environment, but for your first job it is a bad environment because you won't learn how to do things right. In bigger companies the emphasis is on maintenance cost (at least on the bigger software teams) and writing maintainable software. That's what you need to know. Plus some people swear that doing things right with unit tests, clean design, etc. leads to a faster version 1.0. Not having seen this in reality as of yet, I cannot offer an opinion either way...

  10. Diversify by rogueippacket · · Score: 1

    Programmers can be outsourced. Employees with unique skills and an interest in the business can't be. Diversify yourself and stay engaged with your management and you will have nothing to worry about, even as a fresh grad.

    1. Re:Diversify by Tablizer · · Score: 1

      In my reply to rbrander's post, I pointed out that domain experience does not seem to be valued by industry in most cases. I don't know why, it just isn't.

    2. Re:Diversify by SomeStupidNickName12 · · Score: 1

      don't know which companies you have worked with but in every environment I have every worked in, technical staff (developers etc and to a less extent sysadmins) who have domain/business knowledge are treated like gold.

  11. Don't call your server... by Anonymous Coward · · Score: 0

    Don't call your server a server. It is only just a fiery pile of metal parts after being slashdotted.

  12. Career Advice by crucifiction · · Score: 1

    Make sure your website can scale properly. These days there is no excuse except for laziness. Getting slash dotted? Spin up 100 EC2 hosts for a day and load balance them. This isn't rocket science.

  13. Developer, not engineer. by Vellmont · · Score: 2

    I've always hated the term Software Engineer. I've never identified with engineers, or engineering. To me software development is a form of applied mathematics, not engineering.

    Programmer is usually associated with a low-skill person who cranks out code. A developer is someone who has to understand the problem inside and out, not merely just complete the task as prescribed.

    --
    AccountKiller
    1. Re:Developer, not engineer. by Anonymous Coward · · Score: 0

      Well when I get on with hotty art students I call myself a "Poetry Monkey", calling yourself a "developer" just sounds like you have no experience, and you are definitely not going to get any hotty action. Trust me it totally works.

      Posting anon obviously because a nerd getting laid could loose his tin foil hat.

    2. Re:Developer, not engineer. by xero314 · · Score: 2

      There is clearly a difference between Programing, Engineering and Architecture. Most of us that have been in the industry for a while have figured this out. You need to find your place in that structure. I personally identify myself as a Software Engineer (perfectly legal in the US as long as I work for someone else). But I identify that way because I send more of my time working on bigger picture items and include in such considerations topics like engineering ethics, than the time I spend typing out code. I can't identify with Architecture at this point because I don't spend my days sitting around making diagrams and drawing pretty pictures, I actually spend my time figuring out how to get actual work done.

      All three of these classifications are important when selling, designing and building large systems. The smaller, and less critical, the system the less likely you need each of these categories, which is very similar to material engineering (You can build a bring over your back yard stream all by your lonesome, but you would probably have a hard time building a span of over the Mississipi, for public use, without have a full team).

      Programmers are the welders and plumbers of the software industry. They are important and necessary. They would probably do well to organize and bargain collectively. Engineers fill a different role, though they might write code now and again, it should not be their top priority.

    3. Re:Developer, not engineer. by MacGyver2210 · · Score: 1

      While I am technically a software engineer, I tell people I am a programmer. I don't feel that saying you are a programmer denotes you as low-skill. I'd like to see some of these people bashing the term sit down and write a physics simulation engine from scratch.

      Developer, to me, says "I work for someone else trying to come up with a solution to their problems." Programmer, to me, says "I make computers go" - without too much additional information. Engineer seems to me like "I get hung up on this rounding error for two days trying to make everything completely perfect".

      Frankly, I'd rather be the "make computers go" guy.

      --
      If the only way you can accept an assertion is by faith, then you are conceding that it can't be taken on its own merits
    4. Re:Developer, not engineer. by angel'o'sphere · · Score: 1

      Programmers are the welders and plumbers of the software industry. They are important and necessary.

      I doubt that. As far as I understand it, a programmer is a low paid, no responsibilities job, mainly existing in the USA (no idea how that works). In my life I never have met a "programmer". Usually in a software development organization everyone has a university degree, aka software engineer, computer science degree, etc.

      Nevertheless you are right to distinguish between the levels of developer, "engineer" and architect. However reducing an architect to someone who does not know "how to get actual work done" sounds very strange to me. After all, how should he be able to "make diagrams and drawing pretty pictures" if he does not know how to "actually make things work"?

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    5. Re:Developer, not engineer. by Seumas · · Score: 1

      That's great that you hate it and all, but a lot of those people along the line that work with the software that you developed are doing engineering work. They're customizing your software, deploying it, supporting it, writing fixes for it, refining it, and maintaining it. They might be the customer or support person who is reverse engineering your software so that they can figure out why it isn't behaving as designed or to properly document undocumented elements of it. That sounds like engineering work to me. Hopefully you identify in some way with those people, since they're the ones giving your developed software life and purpose once you shove it out the door.

    6. Re:Developer, not engineer. by Dahamma · · Score: 1

      To me software development is a form of applied mathematics, not engineering.

      Well, engineering is often regarded as a form of applied mathematics. Some universities even put them in the same department.

    7. Re:Developer, not engineer. by xero314 · · Score: 2, Insightful

      I doubt that. As far as I understand it, a programmer is a low paid, no responsibilities job, mainly existing in the USA (no idea how that works).

      Read my prior statement that, just like welders and plumbers, programers (or developers if you rather) should organize and bargain collectively. Most large software projects would not be able to be completed for a reasonable cost without programers. Engineers are expensive, at least good ones, and you would be foolish to pay engineers to do what developers do. And I don't know about you but I don't want a mechanical engineer trying to fix my car or installing my heating a cooling unit. You need to know when to get the right person for the job.

      In my life I never have met a "programmer". Usually in a software development organization everyone has a university degree, aka software engineer, computer science degree, etc.

      It's possible that you don't use the same terms where you live. In the US a programer is someone that primarily writes actual software code. Sure they might dabble in design but on a large scale it's not their forte. This are the people that take the loft designs of the Engineers and make it actually work. As an Engineer, I totally understand this, and it's not at all unique to software.

      However reducing an architect to someone who does not know "how to get actual work done" sounds very strange to me. After all, how should he be able to "make diagrams and drawing pretty pictures" if he does not know how to "actually make things work"?

      I'm not trying to diminish what Architects do, but it really is just drawing pretty pictures. This is true of all fields with architecture, not just software. Architects don't build houses, they don't even design them. Architects have grade ideas about over all look and feel, or in the case of software, general structure. Architects draw pictures and make models. This then gets fed to Engineers who spend their time trying to figure out how to turn that architecture into a useable product. Engineers draw the schematics. Then the technicians, be it carpenters, or programers, take these schematics and use them as the basis of the final product. Usually you can follow the schematic pretty close, but there will always be one or two changes that have to be made, like some required part being out of stock or some customer need was not addressed, or some component is to expensive to implement in IE.

      Each part is important to the integrity of the over all product. If architects built buildings they would fall down. If engineers designed the aesthetics of them they would be functional but no one would actually want to live or work in one. If technicians designed them they would end up as a big unstable pile of mismatched parts.

    8. Re:Developer, not engineer. by angel'o'sphere · · Score: 1

      While I understand your general stand point, I only can say it is quite different here.
      The "developer" aka "programmer" you describe, does not really exist in Europe, most of the developers here are "software engineers".

      Each part is important to the integrity of the over all product. If architects built buildings they would fall down.

      This as well I can not support. Architects have by law exactly the same responsibilities like a "construction engineer". In fact many constructions are done without any "construction engineer" but are conducted by the architect alone.

      If technicians designed them they would end up as a big unstable pile of mismatched parts.

      Sorry, no idea in which part of the world you live. Technicians aka engineers are the ones defining (and are the ones liable for) the endproduct. Deviation from their plans needs paperwork and signings by the engineer. You can not simply take the "drawing" of an architect and build the bridge different. (And in the software industries where *I* work, this is the same). It is the architects responsibility to oversee your work and exactly prevent this. Or you have to feed him corrections and first *he* has to sign them and second the *building authorities* have to sign that change as well.

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    9. Re:Developer, not engineer. by Anonymous Coward · · Score: 0

      No wonder most programs use entirely too many resources and run far slower than they should.

    10. Re:Developer, not engineer. by xero314 · · Score: 1

      I have worked with many "Software Engineers" from Europe, and not a one was anything other than a programer. That's not a slight on Europeans, as a lot of people from other countries do the same thing, and many of the European programers I have met where damn good programers. I'm just saying that calling yourself a Software Engineer does not mean you are practicing Software Engineering.

      Actual Software Engineers are few and far between. Knowing how to design and write clear and complete technical specifications is a talent or interest that very few have. Very few know how to use minimal effort to get a complete result, such as limitations on third party libraries, or avoid reinventing the wheel. And very few people have broad enough experience to be able to make sound decisions. And this is a good thing, since we need a lot more people writing, and testing, code, than we need designing it.

      Oh and lets not confuse Programing or Software Engineering with Computer Science. If I need a new and unique algorithm I'll ask a computer scientist. Until then, please keep your hands out of my designs and off my software.

    11. Re:Developer, not engineer. by Anonymous Coward · · Score: 0

      I've always hated the term Software Engineer. I've never identified with engineers, or engineering. To me software development is a form of applied mathematics, not engineering.

      You're right, that is a Software Developer.

      A Software Engineer is different. That's the guy who has to actually put the program into practice in the real world.

      Example: Someone who writes an email server program is a Developer. Someone who deploys that on an actual Production system is an Engineer.
      Both jobs often require you to be a Programmer, just like being a Civil Engineer requires you to be something of a Draftsman.

    12. Re:Developer, not engineer. by Anonymous Coward · · Score: 0

      Engineering is a field of applied mathematics.

      In fact, IMHO most programmers do very little related to mathematics. I know I had a successful career despite being rather lousy at math (even if it was my major). What we do is not applied math. It's applied language skills. We simply formulate a way to express what we want to occur. Granted, in some places you really do have to do math (game engine programmers, encryption, science related work, financial work, etc). But the vast, vast, vast majority of programmers are writing applications that do pretty straightforward stuff. There is math involved, but that's not the bulk of the work.

      The best programmers are able to not only express to the computer what they want to happen, but also express to *other programmers* what's going on without them having to split their skulls thinking about it. Our job is to take high level direction, puzzle out the details and then express them in a way that is both correct and communicative. Unfortunately, most programmers are shit at the communicative thing, which is why our systems are so bad.

      Personally, I view programming as a trade, not an engineering discipline. YMMV.

    13. Re:Developer, not engineer. by swalve · · Score: 1

      The engineer's code might be two days late, but at least it is correct. If the software has rounding errors, what's the point of using software in the first place?

  14. In Canada it's illegal to call yourself a software by Anonymous Coward · · Score: 0

    - engineer unless you have the right training and certification. It's like calling yourself a civil engineer in the us without a license.

    I did it anyway as I had so much experience that I felt I qualified without the certification.

  15. A real programmer call himself a programmer by Anonymous Coward · · Score: 0

    Now get off my lawn.

    1. Re:A real programmer call himself a programmer by Anonymous Coward · · Score: 0

      nowadays, it's wiser to do that only amongst programmers.

  16. more fun.. by mevets · · Score: 2

    Invent new meaningless titles for yourself, and for extra grins make them acronym out to something amusing.

    Architect of Systems Software
    Architect of Computer Interaction Design
    Personal Computer Programmer
    High Availability Software Head

    I'm sure you can do better. There is nothing better than seeing your name and title on a contract, slide or sign and thinking, really, nobody noticed.

    1. Re:more fun.. by neokushan · · Score: 2, Funny

      Hi! I'm the Versatile Administrator of Giant Interconnected Network Architectures, nice to meet you.

      --
      +1 IDisagreeSoHeMustBeATrollOrAnAstroturferOrAShill
    2. Re:more fun.. by gfody · · Score: 1

      for most Architects of Software Systems that I've met the acronym is totally apt!

      --

      bite my glorious golden ass.
    3. Re:more fun.. by maxwell+demon · · Score: 1

      Technology and Computer Professional/Information Professional

      --
      The Tao of math: The numbers you can count are not the real numbers.
    4. Re:more fun.. by Anonymous Coward · · Score: 0

      What a cunt.

    5. Re:more fun.. by Scarletdown · · Score: 1

      Hi! I'm the Versatile Administrator of Giant Interconnected Network Architectures, nice to meet you.

      A pleasure to meet you.

      In my organization, I am the Grand Organizer Administrator and Tester of Software Endeavours.

      All I ask is that you ignore that gaping hole in my employment history.

      --
      This space unintentionally left blank.
    6. Re:more fun.. by Anonymous Coward · · Score: 0

      I can't believe you two haven't met, you work right next to each other.

    7. Re:more fun.. by JohnnyBGod · · Score: 1

      No title including "Wizard" or "Guru"?

  17. Need people to cut code by etymxris · · Score: 3, Interesting

    Too many people in IT don't know the first thing about writing code. I think things are changing though. Companies seem to realize you can get by with less people that can do more if your workers can actually program.

    Calling oneself a "programmer" tells us exactly what we want to know when we're looking at candidates. So many people put C, C++, Java, C# or whatever on their resume and can't even write a simple for loop.

    Patrick McKenzie isn't right about how he describes businesses and employees. We see resumes all the time where someone highlights how they saved their last company six, seven, or eight figures. We don't want to hear that. We want to hear that you have the skills needed to do the job we're hiring you for.

    He also isn't right about the language not mattering. It's much easier to go from low level languages to higher level languages than vice versa. If someone was an expert in VB or Python, we would be very hesitant to hire them for a position that required coding in C. And if someone can pick up a language in just a few weeks, then they should do that before they apply to jobs asking for that skill set.

    1. Re:Need people to cut code by Anonymous Coward · · Score: 0

      You may not want to hear about that, but most HR reps eat that up.

    2. Re:Need people to cut code by swalve · · Score: 1

      You are right about higher languages versus lower ones. I think the author assumed that everyone would know C, and then be able to apply that to the newest language of the week.

  18. Binary Interior Decorator by Anonymous Coward · · Score: 0

    Much better title. Also includes hardware support.

    Might have to explain if you aren't gay. Not that theres anything wrong with that.

  19. I knew AD&D would help! by Rinikusu · · Score: 5, Funny

    That's why I put "20th Level Code Rogue/Network Warlock" on my resume.

    --
    If you were me, you'd be good lookin'. - six string samurai
    1. Re:I knew AD&D would help! by Kjella · · Score: 1

      Except today they play WoW so they're thinking "Wow, what a n00b because I'm 85th level already."

      --
      Live today, because you never know what tomorrow brings
  20. Idiots by Dunge · · Score: 0

    If you work with someone that think you are worthless because you are a programmer, leave this place anyway, it's not worth it.

    1. Re:Idiots by gl4ss · · Score: 1

      maybe it's implying that if you're a "programmer", all you can do is to turn pseudo-code to some language.

      what people want nowadays are software developers.. because they don't know what they want the software to even do, but they want some of that sweet, sweet, sweeeet software.

      --
      world was created 5 seconds before this post as it is.
  21. what about train engineers? by Joe_Dragon · · Score: 1

    They are not professional engineers in terms of software or industry. The word engineer dates back to the old days.

    1. Re:what about train engineers? by Zancarius · · Score: 1

      They are not professional engineers in terms of software or industry. The word engineer dates back to the old days.

      I see the point you're trying to make, but it's actually a straw man. It's akin to confusing the terms "practice," as in "we're going to soccer practice," versus "practice" as in "I work for Dr. Johnson's practice," and then making an argument accordingly.

      AFAIK, the US has something similar. Only IEEE-designated degrees can, technically, call themselves engineers (e.g. electrical engineers), but there's no law that I'm aware of that prohibits anyone else from making up an "engineering" practice (there's that word again), even if it's not valid.

      Of course, it's all dependent upon context. Engineer in terms of the profession implies a specific educational background, while engineer in the context of the rail industry implies someone who manages or drives trains.

      --
      He who has no .plan has small finger. ~ Confucius on UNIX
    2. Re:what about train engineers? by Anonymous Coward · · Score: 0

      They are called Train Operators now, and have been for a long time.
      Operating a train does not require anywhere near the amount of expertise that it used to, i.e. no need for an engineer.

    3. Re:what about train engineers? by Anonymous Coward · · Score: 0

      Train Engineers are called Engineers because in the old days with steam trains that's what you had to be to keep the things running. It was not a simple matter to drive a train and those bastards had to know their shit.

      Many places in the USA also, by law, protect the title of "Engineer" to people who are actually licensed. Sadly, North Carolina at least only applies that law to industries that actually have legit Engineers running. Civil Engineering? Yeah, you need a license to call yourself an engineer. Programming/Software Development? You can call yourself Engineer all day and the law won't care.

      On a side note, the title of "Architect" is also protected and I know one who gets as pissed at programmers calling themselves "Software Architects" as many engineers do regarding "Software Engineers".

  22. Depends on the Province... by CmpEng · · Score: 1

    Calling yourself an 'Engineer' in Canada depends on the province you are in. For example, New Brunswick only 'Professional Engineer' is registered while in Ontario it is both 'Professional Engineer' and 'Engineer'. And yes I hold an engineering degree in computer engineering.

  23. Slashdotted by sheepe2004 · · Score: 1

    Since the site seems to have been overwhelmed here's the cached, text only version: http://webcache.googleusercontent.com/search?q=cache:www.kalzumeus.com/2011/10/28/dont-call-yourself-a-programmer/&hl=en&strip=1

    --
    http://compsoc.man.ac.uk/~shep/
  24. I don't call "a programmer" by Anonymous Coward · · Score: 0

    I call myself "The Programmer"

  25. I Prefer by Anonymous Coward · · Score: 0

    I prefer "code monkey".

  26. half joke, half serious by Anonymous Coward · · Score: 0

    How about 'one of those guys that makes things *go* '. Surely they cant be fired.

  27. joomla programmer by alphatel · · Score: 1

    I don't know, would you rather be a joomla programmer or a web guy?

    --
    When the foot seeks the place of the head, the line is crossed. Know your place. Keep your place. Be a shoe.
    1. Re:joomla programmer by Anonymous Coward · · Score: 0

      Is there another option?

    2. Re:joomla programmer by salesgeek · · Score: 1

      I'd rather you tell the truth and say you are a PHP programmer who has expertise with Joomla. Joomla is only programmable in PHP.

      --
      -- $G
  28. the right way by Anonymous Coward · · Score: 0

    The following is the best way I found to address this issue (it might have been a little bit different in the past).
    When in company of real programmers I would say "I am a programmer...that other programmer I met..".
    Not that I actually need to say anything, since I will recognize them, and they will recognize me.
    When in company of everyone else I say "I am a software engineer".
    Many programmers I meet tend to use some variation of this behavior.

  29. Re:In Canada it's illegal to call yourself a softw by xero314 · · Score: 1

    In Canada it's illegal to call yourself a software engineer unless you have the right training and certification. It's like calling yourself a civil engineer in the us without a license.

    Actually in the United States you can call yourself what ever you want. What you can't do is sell your services as a independent Engineer without having the appropriate certification. If you work in the Engineering department of a company in an Engineering capacity, then you have every right to call yourself an engineer. If you have graduated from a university with a degree in Engineering, you have every right to refer to yourself as an engineer. If there is no certification organization in your field you can sell your services as an engineer. The certification organizations would like you to think otherwise, but they know full well that in the US an engineer is defined by what you do not what your certifications are. This is also on a state by state basis, unless seeking a federal government contract.

    If my state offered a certification in software Engineering then I'd be happy to go about the process. But there are very few states that offers Software Engineering Certification (Texas being the only one I can think of off the top of my head, and even that one is not nationally recognized).

  30. Programmers are not Software Engineers by Anonymous Coward · · Score: 0

    You have to remember there's a big difference between a software engineer and a programmer. In some countries it's illegal to call yourself a software engineer unless you have an engineering degree. You would not for instance hire a programmer to develop avionics software, a software engineer with a Software Engineering degree would have a better understanding of engineering principals involved as opposed to a Bachelor of Computer Science. If you're confused what to call yourself just Google the terms and it will be clear. In most cases you cannot call yourself an Engineer without having an Engineering degree.

    1. Re:Programmers are not Software Engineers by WWE-TicK · · Score: 2

      Something tells me you've never seen the curriculums for undergraduate software engineering degrees. They're computer science degrees with mandatory software management courses thrown in replacing what would've been elective courses in Computer Sceince. At least in the States they are. Nothing about the curriculums make them more "engineering-like" than Computer Science. Unless my CS program just happened to be more "engineering-like" compared to everybody else. Perhaps ABET accreditation makes all the difference.

  31. That's why I don't use that phrase. by RyuuzakiTetsuya · · Score: 1

    Instead, growing up on the west coast full of gullible idiots, I call myself a "holistic digital globalistic digital metaphysicist."

    --
    Non impediti ratione cogitationus.
  32. Don't be just a programmer by rbrander · · Score: 2

    I've had a terrific career, culminating in a six-figure salary, six weeks vacation, very flexible start times (they wearily put up with my 10AM arrivals as long as I stay to 6), and my choice of projects, and my boss's, boss's, boss's boss recently writing me to congratulating me on 25 years of service and 40 years since I started programming (at 13, with punch-cards) with kind words like "one of our best assets" and "one of a kind".

    My secret? I started with a "real" engineering degree and a few years experience at it, then went back or the CompSci degree. I was going to take CompSci at 18 after 5 years of "fun" programming and some paid work doing stats with FORTRAN for civil eng grad students; but backed out with a funny feeling that I should start off in closer touch with the "real world". Best call I ever made.

    Being grounded as first an engineer, accountant, doctor, lawyer, nurse, salesperson, surveyor, MBA, technician, any profession that involves a lot of data - in these web days that includes "graphic artist" and "PR", is the difference between GP and medical specialist.

    The value you add is that you can skip over half the money spent on software - the requirements analysis, the whole phase of explaining the problem to programmers. Plus, you can go back and forth from yor base profession to w"mostly programming" as the needs of the business come and go. Where there are big software projects, you're the obvious guy to be project leader, you know when the hired programmers are BS-ing or just off-track.

    And you're the guy everybody relies upon when the IT systems are balky.What really freaked me is the calls for help I getfrom "kids"- Junior engineers in their early 20's who grew up with Windows PC's and the Web- but they've never studiedprogramming at all. They really aren't sure how to replace me!

    So: don't just not call yourself a programmer - don't be one. Enhance another profession with programming.

    1. Re:Don't be just a programmer by Tablizer · · Score: 1

      Domain experience is usually under-valued in my experience. I don't know why, but others have noticed the same thing. Companies seem to want interchangeable IT parts, and this includes software experts, and treat us like such.

      You got lucky and found an org that values domain experience.

    2. Re:Don't be just a programmer by Anonymous Coward · · Score: 0

      Thanks for sharing. Most of us with real computer science degrees are making six figures after 5 to 10 years.

      I'll be sure to not do what you did and take 25 years to be a semi-competent programmer at an overly rigid company that can barely stand you getting into work at 10.

    3. Re:Don't be just a programmer by Anonymous Coward · · Score: 0

      So, in 53 you still have boss's, boss's, boss's boss? I don't want to know your "secret".

    4. Re:Don't be just a programmer by Anonymous Coward · · Score: 0

      I've seen situations like this, please be aware that as great as you think you are, and as great as your company thinks you are, there's a good chance you've been there so long that your company just hasn't thought to see if there's anything better out there. It's called complacency.

      You may think you're doing a great job, but when you've been there as long as the furniture, it may be that you and your company has just been sat in it's comfort zone far far too long, and has seen plenty of potential to move things forward fly past it.

      I had the misfortune of working at a firm like this once, they were lacking some pretty essential things like UPS on their servers, any kind of IT security practices and so forth, but the poor dumb bastards just didn't know any better. I left after a couple of years as it was pointless trying to improve things there - the IT manager had the full faith of management because he'd been there so long, and well, if it's worked for 10 years, why wont it continue to work?

      The company suffered an automated, easily preventable hack a few years later, and was fined by the information commissioner for personal data leaked as a result. They failed to maintain profitability through the 2008 recession largely because of no real internet prescence allowing their competitors to gain an edge over them and were bought out by a German firm. I hear the IT manager is now out on his arse, as are many of the managers who thought you could blindly carry on with business as usual indefintely without ever having to deal with change, and that in the last year since things turned around they're back to profitability and with a decent internet campaign are doing quite well again.

      The moral of the story is this, just because you think you're great, just because your bosses think you're great, doesn't mean you are, and honestly, 25 years of service? I'm always weary of that, particularly in our industry. I just don't think you can see enough varied technologies, situations, and concepts to be as good as you can be sat on your arse in the same place for 25 years.

  33. It's Possible... by MacGyver2210 · · Score: 1

    What?!? You don't put two spaces after your periods?!? Better start looking for a new job!!!1

    --
    If the only way you can accept an assertion is by faith, then you are conceding that it can't be taken on its own merits
    1. Re:It's Possible... by PCM2 · · Score: 1

      FWIW, you should only put two spaces after a period if you're typing in a monospaced font (like on a typewriter). For a proportionally spaced font, it's always one space.

      --
      Breakfast served all day!
    2. Re:It's Possible... by Chris+Mattern · · Score: 1

      Given that a space is narrower than most of the other characters in a proportional font (while, of course, being the same size as all the other characters in a monospaced font), that makes no sense at all.

    3. Re:It's Possible... by BasilBrush · · Score: 1

      You're logical thinking comes to the opposite conclusion than looking at the results does. It's because words in proportional fonts fit closer together than in fix-width fonts, so they don't benefit from the change in spacial rhythm of two spaces that monospaced fonts benefits from.

      Having said that, two spaces following a sentence in a monospaced font is now an old fashioned standard. These days one space is standard for either.

    4. Re:It's Possible... by euroq · · Score: 1

      Who decides these rules? I like two spaces between sentences. I think it looks better, and flows better.

      --
      Just because the U.S. is a republic does not mean it is not a democracy. Democracy/republic are not mutually exclusive.
    5. Re:It's Possible... by BasilBrush · · Score: 1

      I like two spaces too. But its not the modern style. For example the RSA is the exam board that does most of the typing exams in Britain. For them it used to be two spaces. Now it's one space. HTML also insists on one space. You can put as many spaces as you like between sentences and it'll convert it to one. Unless you use specific tags to stop it. It's not a new thing either - when I was first working in an office in 1984, the change from 2 to 1 space was underway.

      More background here.
      http://en.wikipedia.org/wiki/Sentence_spacing

      To be honest I'm more concerned with the question of whether comments in code should have full stops (periods).

    6. Re:It's Possible... by Anonymous Coward · · Score: 0

      You're logical thinking

      Oh, the irony.

    7. Re:It's Possible... by snowgirl · · Score: 1

      To be honest I'm more concerned with the question of whether comments in code should have full stops (periods).

      If they are full sentences, then yes, they should always have full stops.

      Not full-sentences? no

      --
      WARNING! This girl exceeds the MAXIMUM SAFE standards established by the FDA for BRATTINESS
    8. Re:It's Possible... by PCM2 · · Score: 1

      Who decides these rules?

      Printers. Typographers.

      I like two spaces between sentences. I think it looks better, and flows better.

      But if you typed two spaces between those two sentences, nobody reading your post will see it as two spaces, because HTML doesn't work that way. It still renders as one space unless you intentionally put in non-breaking spaces.

      --
      Breakfast served all day!
    9. Re:It's Possible... by swalve · · Score: 1

      And I'll bet that's exactly why this "rule" has come into effect. It is what people are used to seeing. I am almost sure that real typesetting rules require more space after a period than between words. (Or at least, a period that's kerned to the left so it looks like more space, even though it is just two characters.)

    10. Re:It's Possible... by DragonWriter · · Score: 1

      FWIW, you should only put two spaces after a period if you're typing in a monospaced font (like on a typewriter). For a proportionally spaced font, it's always one space.

      Plenty of house styles places I've worked disagree, though that's my preferred style. The only time that I find doing two-spaces-after-sentence-ending-punctuation to be really problematic (assuming consistency within the document -- inconsistency is irritating anywhere) is when its done in full-justified text.

    11. Re:It's Possible... by euroq · · Score: 1

      Yes, according to Wikipedia, modern digital fonts and rendering are supposed to automatically create more space. But I sure don't see that on my browser.

      --
      Just because the U.S. is a republic does not mean it is not a democracy. Democracy/republic are not mutually exclusive.
    12. Re:It's Possible... by Eunuchswear · · Score: 1

      FWIW, you should only put two spaces after a period if you're typing in a monospaced font (like on a typewriter). For a proportionally spaced font, it's always one space.

      If you're using a proportional font you should be using a sensible system that knows that the width of a space is not fixed.

      --
      Watch this Heartland Institute video
  34. It was good enough for this guy... by Sam+Nitzberg · · Score: 0

    Yes, Ken Thompson....

    Quote:

    http://www.brainyquote.com/quotes/quotes/k/kenthompso254835.html

    From the original document...

    http://docs.google.com/viewer?a=v&q=cache:7bAOKq-gu0oJ:citeseerx.ist.psu.edu/viewdoc/download%3Fdoi%3D10.1.1.167.4096%26rep%3Drep1%26type%3Dpdf+I+am+a+programmer,ken+thompson&hl=en&gl=us&pid=bl&srcid=ADGEESibF-uVJXM7x_bfCWNz5chFMmYAUIxab__PJLL6zJOzKIFFP7_matZ6wmwqghTasmglEDX-UeS3McfIK1xR5i8_BY-wZ9fcbOitAsETD0o-MyewT8PPveCyQ7lZZD2jI0ArQA52&sig=AHIEtbSKScx76XaTVYkxJ0sl05FJWnQI2A

  35. Words mean stuff. by blindseer · · Score: 1

    When I worked in Texas I heard about some legal trouble that Microsoft got into. They were handing out these pieces of paper that said "certified engineer" on them. Well, in Texas law (IIRC) the only legal way you could claim to be an engineer was if you had a professional engineer license issued by the state, or you operated a train. People got around this by using the "MSCE" acronym and not defining the term on resumés, business cards, and such. People would also say that they "have an engineering degree" which was OK under the law since people did not claim to be an actual engineer but only had the training to become one.

    It was a couple years after I heard about this Microsoft trouble that they stopped issuing "MSCE" certificates but started to use the terms "professional", "developer", "technician", "architect" (I have to wonder if that term is legally loaded as well), "administrator", "specialist", and perhaps a few other terms. Microsoft no longer claims to be producing engineers.

    Point is that people cannot just call themselves an engineer if they like. Words mean stuff. The word "engineer" is a legal term in many states. Putting "software engineer" on a business card or resumé and not having an engineering license from the state can get a person in trouble for practicing engineering without a license, or some other crime.

    I've had jobs where my title included the term "engineer" but I've never been licensed by the state as an engineer. That somehow seems to get around the law. Perhaps my engineering degree, issued by a state recognized university, allowed me to do that without legal trouble. Maybe the "certified engineer" term is what got Microsoft in trouble.

    Point is that certain words have legal meaning, "engineer" is one of them. Be careful how and where you use that word.

    --
    I am armed because I am free. I am free because I am armed.
    1. Re:Words mean stuff. by GizmoToy · · Score: 1

      What is annoying about the Engineering licensing in the states that do have it is that it's heavily biased towards Civil and Mechanical Engineers, to the point where it is nearly impossible to pursue as an Electrical or Computer Engineer. This is because of the requirement that you train under a certified mentor with the same degree after your Fundamentals of Engineering exam. This is an exam that specifically required all engineers to know the ins and outs of Civil and Mechanical Engineering, items useless to an EE. Since the certification is not very useful to EEs and CompEs, there are very few mentors to train under, making it extremely difficult to get certified.

      So the result for an Electrical or Computer Engineer is that you spend somewhere between 4 and 10 years getting Engineering degrees (depending on whether you do graduate studies), only to find you can't actually call yourself an Engineer. If you went to an Engineering school, graduated with an Engineering degree, and work as an Engineer, it is ridiculous to not be able to call yourself an Engineer.

  36. Other things will do it more easily by Anonymous Coward · · Score: 0

    When I had the title, "Principal Software Engineer" (whatever). I called myself a programmer all the time. There's a computer. I program it. I'm a programmer. Simple. No BS. That's my programming style too. I try to cut through the BS as much as possible. That said, I know that when you're in certain situations... yeah, you gotta call yourself "Level 3 grand poobah cyclomatic complexity engineering specialist". You're really just a programmer who consolidates redundant functions; but the former gets your respect and the latter doesn't.

    Now, if you really want to have a fancy title and do nothing productive, call yourself an "architect". In the software world, the engineer and the architect both write code. The engineer writes his code in a programming language which others in the professian can read, and which compiles. The architect writes his code in a design document which nobody can read (or desires to read) and which doesn't compile.

  37. State law: Only engineers can have that title. by Anonymous Coward · · Score: 0

    In many states it is actually illegal to use the title engineer unless you are a certified engineer. You can actually goto jail. The same laws apply to calling yourself a medical doctor when you are not.

  38. Not many programmers needed by sgt101 · · Score: 1

    Very few people working in software today are actually programmers. Most people are software developers, some are architects. Both of those groups do some significant programming very occasionally.

    Most work is maintenance - adding features and interfaces to working systems; the skill is the utilization of the components to hand. After that, configuration and customization; taking the wrappers off something and making it work in our environment and process. The next biggest activity is development - bringing a set of components together and getting them to do something new. Finally architecture - thinking at a high level about how the infrastructure will work.

    Some places have a need for programmers - people who implement sophisticated algorithms over complex data structures day in and day out. Not that many though.

    --
    --------------------------------------------- "In the end, we're all just water and old stars."
    1. Re:Not many programmers needed by salesgeek · · Score: 1

      Let me clarify this for you. A programmer is a puh-tey-toh. A software developer is a puh-tah-toh.

      Got it?

      --
      -- $G
  39. It's not firing by ryzvonusef · · Score: 3, Funny

    No, it's called a divorce :P

    --
    I am an ACCA student. Got a query on Accountancy/Finance? Maybe I can help!
  40. Historical note by DragonHawk · · Score: 1

    As a historical note, "coder" used to be a separate job role from "programmer". Programmers wrote programs. On paper. Coders had the job of translating the program into machine code and entering it on the card punch. An early assembly-language system was dubbed "auto-coder" for that reason.

    (There's some similarity here with how "computer" used to be a job description as well.)

    --

    dragonhawk@iname.microsoft.com
    I do not like Microsoft. Remove them from my email address.
  41. Train engineers are licensed engineers by perpenso · · Score: 1

    They are not professional engineers in terms of software or industry. The word engineer dates back to the old days.

    Untrue. They are very much considered engineers in industry. My grandfather worked for the railroad briefly in the 1930s and in other industrial settings. He had a state issued stationary engineer's license, this implies there is a non-stationary engineer's license that probably referred to train engineers. The stationary engineer's license that he possessed allowed him to fire the boilers in the electrical power generating plant of an army munitions factory during world war 2.

    I get your point, but its a mistake to think licensed engineers only consists of the white collar design and build type jobs. At least as recently as the 1950s.

  42. Computing Machinist by Rob+Riggs · · Score: 1

    I guess tht makes me a union man. Really, I never understood what that term meant. (ACM - Look it up if you don't get it.)

    --
    the growth in cynicism and rebellion has not been without cause
  43. Well that... by Anonymous Coward · · Score: 1

    ...and the fact that individual software developer consultants cannot incorporate (well...you can form the s-corp, nobody will stop you, but the IRS will take all your money away after you have made any).

    And also the fact that software developers are chronically overworked.

    And also the fact that employers don't want to pay real money for the work.

    And last but not least, plenty of would-be software developers don't really have what it takes, and are just attracted to the field for the highly portable and marketable skill set. Once they land a job and discover how much it sucks, they move to management (an ANY industry) as quickly as they can.

    1. Re:Well that... by nomadic · · Score: 1

      "well...you can form the s-corp, nobody will stop you, but the IRS will take all your money away after you have made any"

      Yes, that pesky 100% tax rate.

  44. How is this important? by Jack9 · · Score: 1

    The whole article seems misguided. A "let me tell you how it is" (with a complete disregard for the reality).

    --

    Often wrong but never in doubt.
    I am Jack9.
    Everyone knows me.
  45. "Engineers" in Software by Anonymous Coward · · Score: 0

    The term "Engineer" being applied to IT folk, technicians, etc, annoys me and has caused me considerable consternation over the years looking for work.

      I have a degree in Computer Engineering; it's a real ABET-accredited engineering degree. The curriculum I took in college only differed from a pure Electrical Engineering degree by a few classes. (We skipped Analog Electronics II, Power Systems, E&M II, and Control Systems. We added Digital Signal Processing, Advanced Digital Electronics, Microprocessors, Programming I/II, and a couple of software electives. Our curriculum actually required 9 more hours than the EE degree.)

    When applying to jobs right out of college, I'd say "Computer Engineering degree" and peoples' eyes would glaze over; I became, in their eyes, either an IT lackey or a code monkey. (I really wanted to do hardware and embedded systems design!) After a while, I started saying that I had an "Electrical and Computer Engineering Degree" -- the name of our department -- just so I'd have long enough to explain my background. It was nuts.

    A large part of the problem was the "Engineer" fallacy in software production. I have friends with the title "Software Engineer" that have no college degree or just an associate's from ITT Tech, etc. One, whose official title is "Technical Applications Engineer" just takes help-desk calls and tries to resolve software issues, largely from a script. It really devalues my degree in the software field. (I eventually gave up and chose another vocation.)

    1. Re:"Engineers" in Software by Anonymous Coward · · Score: 1

      The term "Engineer" being applied to IT folk, technicians, etc, annoys me and has caused me considerable consternation over the years looking for work. I have a degree in Computer Engineering; it's a real ABET-accredited engineering degree. The curriculum I took in college only differed from a pure Electrical Engineering degree by a few classes. (We skipped Analog Electronics II, Power Systems, E&M II, and Control Systems. We added Digital Signal Processing, Advanced Digital Electronics, Microprocessors, Programming I/II, and a couple of software electives. Our curriculum actually required 9 more hours than the EE degree.)

      Please don't take this personally, but I've known quite a few hardware degreed folks who style themselves as software engineers. In my old line of work (Dept of Defense), actual software engineering had a lot to do with formal methods, verification, testing, and frankly oft-times math well beyond the bog standard diffeqs that so many engineers consider to be their final math course. Many degreed hardware engineers don't have a clue (nor do some computer science folks). And no, having an engineering degree in another discipline doesn't give you the "right" (facetious here) to call yourself a software engineer.

      Not trying to be a dick about it, but just sayin'. ;)

  46. Important question by Anonymous Coward · · Score: 0

    Do you really think it's worth it to keep on living?
    I mean it. There's no work to be found; and even if you have found work
    it's not hard to replace you. The salary is extremely low and it's hard to maintain
    any quality of life, let alone start a family. It just doesn't seem like it's worth it.

  47. Engineer by Chris+Deckard · · Score: 2

    If you do not have an Engineering degree, you should not call yourself an Engineer. As someone who works for an Engineering University, who does NOT have an Engineering degree, I would never water down what an Engineer is. It is prestigious, and should remain so. Respect the title. If you're not one, don't call yourself one.

    1. Re:Engineer by WWE-TicK · · Score: 1

      You should try actually working with people outside of academia and you will quickly learn that just because there degree says "engineer" on it doesn't make them an engineer. You will learn the converse to be true as well. I've encountered people with physics degrees and computer science degrees hold "engineering-type" positions who I would say were actual engineers compared to people who were really nothing more than "paper" engineers.

    2. Re:Engineer by Xest · · Score: 1

      What's with Engineers and their arrogance?

      Up until 2 months ago I was working at a mechanical engineering firm as a software developer, full to the brim with certified engineers. There was nothing special about them, I had to learn their trade to build systems to support them in their role, and I helped them obtain a number of patents because none of their engineers were competent enough in math to know what math they needed to solve which problem.

      I'm not saying engineers aren't in the upper tiers when it comes to intelligence, but they're no more special than physicists, biologists, chemists, mathematicians, computer scientists, developers and the like yet for some reason they have this overblown image of themselves as special.

      I'm not even saying certification for professions like this are a bad thing, particularly where safety is critical a lot of the time. But fundamentally what bugs me is the "You can't call yourself a software engineer" mentality - why? software engineering isn't any less skilled or difficult than the likes of mechanical, and civil engineering etc.

      Scientists, mathematicians et al. don't feel the need to protect their titles with such zeal - if you need to check someone's credentials then "chartered" as a prefix for those who genuinely are is a good enough distinction. But pretending that the meaning of terms shouldn't change as the world does, for a specific profession for whom the meaning of the name of that profession has changed drastically from it's original rail related origins anyway just stinks of pettiness, and arrogance. I just can't help but feel such engineers who feel this way should simply get the fuck over themselves, they're not special.

  48. Re:State law: Only engineers can have that title. by salesgeek · · Score: 2

    Sheesh. This is silly. The only place where there is an issue is when someone hangs out a shingle that and practices engineering. People with creative job titles (i.e. Database Engineer) and graduate engineers (4 year degree EE without license) are not being prosecuted for calling themselves by their job titles or degrees UNLESS they hang out a shingle and open a contract engineering company or are claiming to own a company that holds an authorization certificate and does not.

    This whole trying to make engineering work like the law industry isn't going

    --
    -- $G
  49. Blogspam by thatskinnyguy · · Score: 1

    If you haven't read TFA, don't waste your time. It's all an opinion piece from one guy's perspective. [citation needed] should appear after every assertion.

    --
    The game.
  50. what... by Anonymous Coward · · Score: 0

    > Anyone describing themselves as either a Java programmer or .NET programmer has already lost, because a) theyâ(TM)re a programmer (youâ(TM)re not, see above) and b) Jeez.., dude is contradicting himself in every other sentences lol.

  51. Software Engineer by antdude · · Score: 1

    A CS professor, Dr. Thomas Plew (RIP) in the late 1990s/90s, said "software engineer" was a better title than programmer. I don't remember if he said software developer was good or bad.

    --
    Ant(Dude) @ Quality Foraged Links (AQFL.net) & The Ant Farm (antfarm.ma.cx / antfarm.home.dhs.org).
  52. One Word... by interval1066 · · Score: 1

    ...PLCs. For right now, PLCs are the way to go.

    --
    Python: 'And then suddenly you have a language which says "we're all stuck with whatever the whiniest coder wants".'
  53. I'm a programmer by msobkow · · Score: 4, Insightful

    I'm a programmer. I have been for over 25 years.

    I'm not going to jump on the bandwagon of "software engineer". I think it's as ludicrous as "sanitation engineering."

    Any employer who thinks "programmer" is a derogatory or lesser term is too blinded by buzzwords for me to be happy working for them anyhow.

    --
    I do not fail; I succeed at finding out what does not work.
    1. Re:I'm a programmer by iplayfast · · Score: 1

      Found your post after I wrote mine. (probably a couple down from yours). Totally agree!

    2. Re:I'm a programmer by Anonymous Coward · · Score: 0

      The fact that you are a programmer, does not mean that everyone else is. For example, I design technologies, simulate them in an appropriate rapid dev environment (e.g. Octave if I need matrices, or Perl if I need about string processing etc), and give the spec to programmers. I could implement them myself in C as required, however I get very bored writing low level code, plus my time is more valuable than the (pretty decent) programmers' we have.
      So if they are programmers, what am I, given that I can do their work, but they can't do mine (at least not near as competently, most of my BS and MS years were spent doing math which sort of helps)? I have decided that "Software engineer" or "Software developer" is appropriate. If a layman asks, I don't use those terms as they are not recognized, but I still don't want to say "programmer". So I go with "I design software".

    3. Re:I'm a programmer by Anonymous Coward · · Score: 0

      Agreed. Same boat - over 20 years real world and much pre-graduation experience. I've been performing 'engineering' work on behalf of my Clients in in pretty much everything: software, processes, products, etc. As part of software-centric projects, I've worked in fabrication, training, operations management, business strategy, design & drafting, finance, inventory and warehousing and so on designing said non-software matters (and sometimes developing code) for my clients. Software and coding, like all tools, are just a means to an end for achieving business value. Nobody cares what arcane technology you're coding for.

      Yes, they still call me 'programmer', but I've earned my place above the full-time staff and the engineers. Third parties (my client's clients and business associates) call me 'Consultant', but I'm not too hung up on the titles.

      But the programmers need to wake up - whatever field you get involved in, you need to make a difference. Value is key if you don't want people to treat you are the industry's grunts.

    4. Re:I'm a programmer by Anonymous Coward · · Score: 0

      100% agree. I dislike software engineer as a term mostly because its a waste of breath honestly how many damn synonyms do we need for programmer.

    5. Re:I'm a programmer by Undead+Waffle · · Score: 1

      I don't understand what people think is so absurd about the term "software engineer". The approaches to solving problems is very similar between programmers and other engineering professions. Not for all types of software, but certainly for any complicated system. Unless you're one of those programmers that copies and pastes code everywhere and generally leaves a mess for the next guy, but there are equivalents to this in other engineering practices as well.

  54. Sticks and stones by Anonymous Coward · · Score: 0

    I know you want to feel better about all that time and money that went in to be an engineer but but it's just a title. I feel it does represent some form of professionalism and liability for ones work and 'software engineers' can be held liable when they screw up. I know I've done software for credit card processing and HIPAA.

    Yes it's a misnomer but have a little respect for others. How about custodial engineer? domestic engineer?

  55. Validation and Verification by dtmos · · Score: 2

    The author, Patrick McKenzie, describes himself as an "awkward twenty-something CEO of a multinational company." As an "awkward fifty-something CTO of a multinational company," I can state that I have never read a more truthful and cogent collection of career advice for this profession.

    What he says is the way it is.

  56. First rule for new grads... by SETIGuy · · Score: 1

    Never expect Human Resources to be human or resourceful.

    1. Re:First rule for new grads... by swalve · · Score: 1

      HR is unfortunately where people with teaching degrees go when they couldn't pass their licensing exam. My company has a surprising number of HR types, most of whom seem to exist to make brownies and play with construction paper.

  57. Re:State law: Only engineers can have that title. by dtmos · · Score: 2

    Note this passage in the Florida statutes (471.031 (1)(b)1.): "A person may not [...] use the name or title “professional engineer” or any other title, designation, words, letters, abbreviations, or device tending to indicate that such person holds an active license as an engineer when the person is not licensed under this chapter, including, but not limited to, the following titles: [...] 'software engineer,' 'computer hardware engineer,' or 'systems engineer.'"

    I can tell you from personal experience that the State of Florida will prosecute someone simply for having a business card with the title of "Software Engineer" who is not a Registered Professional Engineer in the state. (No, it wasn't my card.) People thinking that "people with creative job titles [...] are not being prosecuted for calling themselves by their job titles or degrees UNLESS they hang out a shingle and open a contract engineering company or are claiming to own a company that holds an authorization certificate and does not" are living in a dreamworld. A printed card clearly violating a statute is what's known in the legal profession as "physical evidence," and prosecutors wanting an easy conviction love these kinds of cases.

  58. Um... no by rsilvergun · · Score: 1

    programming anything but the most trivial applications is computer science, e.g. math, and lots of it. Every single aspect of programming involves lots and lots of math, even for supposed 'application programmers'. Take a few 300 level CS courses (you need them to work on big projects) and you'll find it's really just discrete math. As soon as you get past a web form + php for 20 users you're in math territory, if only to just make your app fast enough to scale.

    --
    Hi! I make Firefox Plug-ins. Check 'em out @ https://addons.mozilla.org/en-US/firefox/addon/youtube-mp3-podcaster/
    1. Re:Um... no by obsess5 · · Score: 1

      Have you ever worked on non-trivial applications? I worked on satellite ground systems for 25 years, first in image processing and then in monitoring and control. The heavy-weight math was done by actual mathematicians; e.g., those who understood spherical geometry, etc. We programmers were basically moving data around; a smattering of basic math and basic statistics was involved and, yes, some discrete math. The math certainly had nothing to do with scaling applications; we were already processing high-speed data streams.

  59. Programmers being isolated from Programmees. by Anonymous Coward · · Score: 0

    The engineer is the new Accreditted middle-man.

    It's like when attornies and lawyers get between the people and the Constitution.

    whiskey...tango...foxtrot.

    1. Re:Programmers being isolated from Programmees. by Swampash · · Score: 1

      You just have to specify "Software Engineering" to distinguish it from real actual engineering.

  60. Wrong-o by dtmos · · Score: 2

    See this comment. You absolutely cannot call yourself whatever you want in the US. Rules vary by state, but in almost all states the reason you have every right to call yourself an engineer if you work in the engineering department of a company in an Engineering capacity, is because that industry is specifically exempted from such requirements (in Florida, it's the aerospace and military industries, with some other, lesser, exceptions). Calling oneself a "Software Engineer" without also being a Registered Professional Engineer is specifically listed as a prohibited act in the statues.

    The "certification organizations" are irrelevant; this is state law.

  61. We won't hire "Software Engineers" by Anonymous Coward · · Score: 0

    As a licensed P.E. I discard any resume I'm asked to review that uses the term "Engineer" illegally, if that person isn't a licensed Engineer.

  62. Crappy article by Anonymous Coward · · Score: 0

    I stopped reading when I reached: Engineers are hired to create business value, not to program things.

    You are dealing with Engineers, not Salesmen. You fail.

  63. I'm a programmer and proud of it. by iplayfast · · Score: 1

    I've had a career in programming for about 30 years so far. I've loved the tech side of things, and I've always called myself a programmer. (or grunt)
    People either know what it means or they don't and you have to explain it to them.
    Calling yourself a software engineer does not change the job.

    A programmer by any other name is still a programmer (and smells as sweet).

  64. Re:State law: Only engineers can have that title. by salesgeek · · Score: 1

    I am not a lawyer,and the following is not legal advice:

    I can see where anyone who is a sole proprietor or owns a company and entitles them self a "systems engineer" or "software engineer" would run into trouble under that law. After reading all of 471, I can't see where some guy who gets a job as a programmer at a company he does not own and gets handed a stack of business cards that say "software engineer" on them would be prosecuted under 471.031. Would seem there are more than a few provisions in that law to prevent people in that situation from being prosecuted (see .003, 0.31, .023).

    In other words, a printed card may or may not violate the statute, and you probably should get some legal advice from an actual lawyer if you are concerned about it.

    --
    -- $G
  65. Programming good enough for Knuth by Cooker · · Score: 1

    Although most likely true, this just goes to show that adjectives follow fashion and fall out of favor.

    The bible of software engineering algorithms?--The Art of Computer Programming (vol. 1-4) by Donald Knuth.
    I'm pretty sure that the humble Knuth wouldn't have a problem describing himself as a Programmer.

    1. Re:Programming good enough for Knuth by jgrahn · · Score: 1

      Although most likely true, this just goes to show that adjectives follow fashion and fall out of favor.

      The bible of software engineering algorithms?--The Art of Computer Programming (vol. 1-4) by Donald Knuth. I'm pretty sure that the humble Knuth wouldn't have a problem describing himself as a Programmer.

      Knuth also wrote (in an interview somewhere?) about how one interesting aspect of a programmer's work is the jumping between abstraction levels. One minute you're at the machine language level -- the other you're thinking of overall design, or usability. And of course that's what he did when he created TeX.

      BTW, I'm sitting with a Debian Linux machine typing this. I wonder how they divided the work when writing ls, vi and awk? Or the other gigabytes of excellent free software in the Debian archive?

  66. Visicalc by fyngyrz · · Score: 1

    There's a live copy of MSDOS visicalc on that site; I grabbed it, ran it (under XP) -- awesome nostalgia. Thanks!

    --
    I've fallen off your lawn, and I can't get up.
  67. Maintainability by Tablizer · · Score: 1

    Plus, creating maintainable code is an even more difficult skill. The pool of people who can program is limited, and the pool of those who know how to build maintainable code is even smaller.

    I've seen a lot of newbies make spiffy stuff, but when I look at their code or have to fix or change it when they move on, Mamma Mia!

  68. Title Inflation by Tablizer · · Score: 2

    If everybody inflates their title to avoid the pitfalls of peon-sounding titles, then it dilutes the worth of the higher titles, and pretty soon they all mean nothing.

    "I'm not a trash-man, I'm a Waste Engineer!"

    It just becomes a never-ending bullshit game. If we were good at that, we'd instead go into marketing or politics.
       

  69. Re:In Canada it's illegal to call yourself a softw by mark-t · · Score: 1

    Citation required. Seriously.

    I live in Canada. While I do know that there are penalties for misrepresenting oneself as having actual engineering training and education, I am unaware of any prohibitions on the term "software engineer".

    I've called myself a software engineer for decades now.... Nobody has ever so much as looked at me sideways for it.... it's even been listed on official records of employment that the government itself has records of... if it were illegal, I'm pretty sure I would have heard about it by now.

  70. I write programs, but I'm not a programmer. by Mr+Z · · Score: 2

    My job duties range from architecting caches and DSP structures, to coming up with clever ways to break systems, to automatically generating performance characterization suites, to analyzing the bulk quantities of data that result from them.

    To do all these things, I write a fair bit of software to achieve these goals. But, in the end the software is a tool to reach some other end. It isn't an end in and of itself.

    Therefore, while I program things (and program them well, IMHO), I don't consider myself a "programmer." My primary work output isn't programs. It's architectural decisions, performance analysis, etc. Programs are just a tool I use to get there. The fact that I fashioned my own tools just means I'm more likely to achieve my goals than someone who can't make their own tools when none exist that will give them the answer they need.

    Now, if the primary output of my job was software, where others provided the requirements inputs, and I produced software to meet those requirements for someone else's consumption, then I might consider calling myself a programmer. But honestly, I have to believe a large quantity of software gets written to further some other immediate need, not as an end in and of itself.

  71. I like my title by Anonymous Coward · · Score: 0

    Consulting Systems Programmer. I consult with a back and forth to solve a customer's problem, then design the system, and program it.

  72. Re:Everybody is an engineer - or a doctor? by Anonymous Coward · · Score: 0

    Agreed, just like everybody with a Ph. D. calls themselves a "doctor", especially those whose credential is in edjumacation.

  73. Most people can't do construction by Anonymous Coward · · Score: 0

    I agree with you that programming is difficult for the majority of folks. I know it is for me. But having worked as a carpenter, I'll say that only one out of ten people you meet are cut out for the hard labor and smarts it takes to be successful in the trade. The mix is different because the barriers to entry are much lower: you don't need more than a highschool diploma to swing a hammer. But to be a successful builder you need a mix of talents, both physical and intellectual, that's no more common in the general population than the intellectual gifts required to become a successful programmer.

  74. Anecdote by Anonymous Coward · · Score: 0

    I was at the doctor the other day, and she asked me about my job. When I mentioned I was a programmer, she quickly scrawled on my referral for tests "Please bulk bill." Which is Australian medical code for "he's not good for it [the cash]."

  75. Startups by tehcyder · · Score: 1

    What is the American obsession with working for a startup company all about? Is it just the prospect of working hard for a few years and then cashing in when it goes public?

    --
    To have a right to do a thing is not at all the same as to be right in doing it
    1. Re:Startups by swalve · · Score: 1

      Yes. But it is also about the work. We like the idea that someone can have a good idea, work hard at it, and be successful. Even if it doesn't end up with Google style payouts, we like the idea that someone can start with an idea and end up with a company that does good work and makes the world a better place.

      It is exhilarating to work for a startup, because you are often working without a net.

  76. Change yourself completely to get ahead, but ... by lwriemen · · Score: 1

    At the end of the day, your life happiness will not be dominated by your career.

    What if being called a programmer makes you happy? ;-)

  77. This advice sounds by SlippyToad · · Score: 1

    Like it is for people who are forced to work with sub-IQ nitwits.

    If you call yourself a programmer, someone is already working on a way to get you fired.'

    If you don't want a programmer, what in the hell is your business doing developing software?

    --
    One day I feel I'm ahead of the wheel / the next it's rolling over me / I can get back on / I can get back on
  78. I don't by neminem · · Score: 1

    I call myself a codemonkey. Reclaiming the term! Codemonkey and proud of it! (Mostly because it's an inherently funny word.)

  79. EM&C by plcurechax · · Score: 1

    EM&C - Electron Manager & Capitalist