Slashdot Mirror


Re-Tooling Your Skills for the Future?

nojayuk asks: " Over the decades I've re-skilled myself several times, from mainframe FORTRAN through minicomputer PASCAL to microcomputer C. In between I've done microcontroller development and programming in Assembler, robotics, graphics design and 3-D animation for TV, PC build and repair, Website design etc. Currently I'm looking for work and I'm wondering what new skills do I need to stay in the computing biz. What OSes do I need to know, what technologies do I have to have under my belt for the employers to come hunting for me instead of me passing my obsolete CV around and being told to get lost? I'm looking for advice, not just for next week but for a few years down the line. What can I do to acquire these essential new skills?"

229 of 590 comments (clear)

  1. quality vs quantity by webworm · · Score: 2, Insightful

    It isn't the quantity that counts but the quality of your knowledge

    1. Re:quality vs quantity by GigsVT · · Score: 5, Insightful

      Not necessarily, there is something to be said for being a generalist. A specialist often will fall to the "everything looks like a nail" syndrome, because they only know how to solve problems one way.

      For example, the submitter might think of a hardware solution that is better than a software one, when a specialized computer programmer would only think in terms of what software he had to write to address the problem.

      The thing about being a generalist is that you need to find jobs where you are either semi-management, or have enough latitude and influence to be able to propose the solutions you want to implement. A generalist won't last long in a rigid top-down organization where the management wants to control every detail of implemention.

      I don't know that this helps the original submitter much... Really my advice to him is to just not worry about learning new skills just because a bunch of people think they are hot... Just keep it to the basics of job hunting, personal networking, keep your eyes open... and learn whatever you are interested in. If you are interested in the field, then you will learn much more about it than if you are doing it just because you think it is a hot skill to have.

      --
      I've had enough abrasive sigs. Kittens are cute and fuzzy.
    2. Re:quality vs quantity by Anonymous Coward · · Score: 5, Insightful

      Unfortunately that isn't true. Employers want cheep young expendable labor. If you are 50ish and speek fluent English as well as C you are, by default, to expensive and over qualified. Duh! We need to eat too. Last summer I walked past a DEC/Compaq/HP department picknic - no one there was over 40 and no one there spoke English as a native language. I am bidding on jobs I could do in my sleep at rates I was paid in the early 1980's and I still can't get good jobs. I have been reduced to teaching MS Office at a local junior college. You want bugs with that?

    3. Re:quality vs quantity by Martin+Blank · · Score: 2, Insightful

      You speak Truth, Gigs, and it's one that many people choose not to accept.

      My entire career, I've been told to follow this path or that, and learn as much as I can about this topic or that topic. For various reasons, I took a middle path between the specialist and generalist, and became very good with Windows and competent (and still learning) in Linux and Cisco. I intend, over the next couple of years, to add FreeBSD and Solaris to my skill list, including some mid-level certifications. This will help to keep me out of knowledge-dulling management and in real positions that have an effect and keep me sharp.

      Incidentally, this has helped me in the career choice that I have chosen to follow, and that is security. Having a broader sense of the capabilities of different systems has allowed me to look at a given situation and recommend a more flexible solution for it. Sometimes it's homogenous, and sometimes not; everything has its strengths and weaknesses. If I need to find some really obscure answer, I've used my past mentors as a knowledge network, and can usually call on at least one of them to provide me with that crucial tip or pointer.

      There's an added advantage to this. Should the job market sour, I have more flexibility to get into the jobs that are available, even if they're not my immediate preference. It may be a lower-end job than I'm used to, but not-quite-happily employed is far better than homelessly unemployed.

      --
      You can never go home again... but I guess you can shop there.
    4. Re:quality vs quantity by TheConfusedOne · · Score: 5, Insightful

      What wonderful logic. Truely insightful. And, tragically, completely useless in today's IT job market.

      Companies looking for temp workers (heaven forbid they think about actually hiring someone) have a long and detailed laundry list of "buzz words" that they think are job requirements/necessary skill sets. If your resume doesn't hit in the word matching then out it goes.

      The best "buzz word" to have these days is probably Web Services. The good thing is that successfully implementing real Web Services actually requires a generalist.

      So, tack a little XML knowledge onto the old resume and slap in a few words about B2B and EAI. This could actually lead to something interesting.

      Good luck.

      --
      --- I wish I could hear the soundtrack to my life. That way I'd know when to duck.
    5. Re:quality vs quantity by mr_z_beeblebrox · · Score: 4, Insightful

      Not necessarily, there is something to be said for being a generalist. A specialist often will fall to the "everything looks like a nail" syndrome, because they only know how to solve problems one way.

      True.
      As you progress up the chain in MIS you get to a level where you are expected to understand business. Not just that you know that you need to bring in more than you spend but REALLY understand business. Take an accounting course or two, a couple business management courses etc... Of all the hammers I own this one did the most for my income.

    6. Re:quality vs quantity by The+Impossible · · Score: 3, Insightful

      I can only agree with this.

      Being a generalist I found that I can work with any OS (I deny all knowlegde of M$ OS'es), solve any problem they trow at me and I'm able to advise and educate others.

      When I'm stuck... wel, it's specialized knowledge that can be found on the web, with suppliers, coworkers, friends,...

      It's always nice to know how brand X works, in detail, but what happens when management decides that brand Y is better. I'd prefer to be able to advice them to go for the correct brand for the job, instead of finding myself looking for another job just because they switched to brand Y.

      Know what happens in the environment that you work in, never forget to fiddle around a bit while sorting things out, just to get the feeling of the systems you're working on.

      Once you know how to drive and maintain a crappy old mini you shouldn't have a problem with that shiny ferrarri they want to buy. (and once you've convinced your boss that a BMW is better you can play with the ferrarri for yourself ;-))

      Yeah, I'm also a carnut...

      Just to summarize, general, in depth knowledge of the design of a computer, an OS, an application is rare, very rare. I guess it's less then 5% of the IT business that know what's going on when they for example send an email. (and I mean know exactly what's going on, including the content of the IP packets) I'm at least not yet one of them, not on that level.

      Or was this just because the Y2K and euro 'problem', which 'required' lots of MCSE drones.

      --
      ... Wenn ist das Nunstruck git und Slotermeyer? Ja!... Beiherhund das Oder die Flipperwaldt gersput!
    7. Re:quality vs quantity by jorjun · · Score: 3, Interesting

      Here (UK) it seems you are considered past it at 30! All IBM iSeries(AS400) jobs advertised on the Big Board - www.jobserve.com are for people with specific package experience or foreign language skills. The clients seem to believe technical competence is not important. But at least 12 months using their particular installation is.
      Why ? Maybe because when the job fails to get a "suitable" candidate. It's inter-company transfer time (India). It is easy to hoodwink governments with this "skills" shortage crap.
      And being cynical, I expect the guy brought in to do the work eventually, will most likely become familiar with the package on the job
      like I used to do in my 20s, when I had no family to support.

    8. Re:quality vs quantity by sielwolf · · Score: 2

      Reminds me of what happened to my Dad (heh, don't take it as an insult ;)). Of course his issue was slightly different as he is a PhD in organic chem. The chemistry field has been heading down the lou for a while his problems were the same as many: too "old", too educated, too "white" (which sums up as to too expensive in business talk).

      Is the IT field heading in the same direction? Moving all jobs south/east/out-of-country? I know, Indian programmers, but at least most of the firms in the US are still US companies.

      --
      What is music when you despise all sound?
    9. Re:quality vs quantity by mitchner · · Score: 2, Funny

      For someone that can "speek fluent English", I think your proofreading skills may be the problem. picknic? cheep? to expensive?
      sheesh.

    10. Re:quality vs quantity by 12dec0de · · Score: 2, Funny

      But if you allready are a generalist, then adding buzz words to you CV is no problem. If you keep at it, by the time they answer to your query you will have ample time to do the reading up on what the flavor of the month does differently to any other technology of that class.

      And who is to check. I know 3 object oriented languages, distributed systems and component technology. If you want me to do J2EE /w Beans, no problem. Even though I have never really done that before. But if you hire me I will know by the day I start.

      Learn the basics man! The rest is syntactic sugar.

    11. Re:quality vs quantity by stonewolf · · Score: 5, Interesting

      Let me second that statement.

      30 years of programming experience. Worked on international standards body (X consortium). Two degrees in CS. Web services experience. Network architectures. Corporate R&D. Business analysis. Long range forecasting.

      In my last job as the company shrunk I was moved from a pure R&D/technical analysis job, to an architecture job, to a design job, to a coding job. And then they laid off all the coders and hired a company in India to do the coding work.

      I can't even get a job at the local Junior College. They went broke because of the decline of the "tech sector" in this dear town. Best I've been able to find is the occasional testing job that pay about half what I made in the '80s.

      The truth is that there are some very good people in India and China who will do the low level coding work work for very little money. And, in this market, no one is hiring people to do the kind of high level work I used to do. That is life, I have adapted to it. And I am.

      Stonewolf

    12. Re:quality vs quantity by ScuzzMonkey · · Score: 4, Interesting

      Exactly. You just have to fake it enough to get in the door. A good generalist can spend the evening before the interview soaking up enough pertinent details to pass himself off as a specialist--and then it's generally easy enough to pick up the details after you've got the job.

      In fact, this is one of the best ways to become a generalist. Having to absorb a lot of information about something you only know a little about, relatively quickly, is the hallmark of a good generalist. The important thing is to be able to adapt.

      --
      No relation to Happy Monkey
    13. Re:quality vs quantity by hyperturbopete · · Score: 2, Insightful

      And who is to check. I know 3 object oriented languages, distributed systems and component technology. If you want me to do J2EE /w Beans, no problem. Even though I have never really done that before. But if you hire me I will know by the day I start.


      Sucks for whoever hires you. No offense, I believe that your experience has made you adaptable, and a fast and effective learner. But experience really is valuable.


      All technologies have quirks and whatnot that you can't get from books or classes. But Why should "they" hire you when they can spend an extra $10-20k to hire a dot-commer who'se been doing nothing but J2EE + Beans in his previous posn

    14. Re:quality vs quantity by bwt · · Score: 2


      Get a job as a military contractor. Duh.

    15. Re:quality vs quantity by Jhan · · Score: 2

      Or was this just because the Y2K and euro 'problem', which 'required' lots of MCSE drones.

      Hey! I resemble that remark!

      Seriously, I did the Y2K fixing for two major labor unions in Sweden (Unix). There were problems, dozens of them. Some would have lead to large amounts of money being lost ("%d", tm_year leading to our banking bands becoming invalid because of row length). I fixed most of them, one went unfixed (bringing heaps of abuse on my head. I of course never got any praise for the 30 bugs I fixed.)

      I'm suprised that more companies didn't do what the first union (the Swedish Union of Goverment Employees) did. Apparently they decided that as long as they were going to have to inspect every line of code in the system, why not use this opportunity to upgrade it?

      Which was what I did. I went through about 150.000 lines of code, checking for y2k bugs and translating the system from SCO/Informix/4GL/VB (client) to Linux/MySQL/C/Java.

      --

      I choose to remain celibate, like my father and his father before him.

    16. Re:quality vs quantity by timeOday · · Score: 2

      Oh, is recognizing foreign accents politically incorrect now? Sorry, I missed the memo.

    17. Re:quality vs quantity by cduffy · · Score: 2

      Sucks for whoever hires you.

      If and only if the only thing they need me for is J2EE, certainly. If the next project is such that the dot-commer who knew J2EE better is totally lost (say, building an embedded settop box, or maintaining some crufty old legacy ACCELL/4GL code, or whatever) then I can more than pay back the time I spent learning J2EE's kinks.

      That's different, of course, if the position is a single-project contract... but even there there are often cases where more general skills come in invaluable. I'm not saying a project should have all generalists -- but having at least one on each team (or whatever the lowest unit of division is above a single coder) can come in invaluable.

  2. Hrmm by acehole · · Score: 5, Insightful

    Perhaps IPv6 is something you should look into. How many IT people are experts in that field?

    The university I go to doesnt even look at it, which is a shame because it's got to be rolled out sooner or later. I think most people are hoping for the later.

    --
    Be you Admins? nay, we are but lusers!
  3. unfortunatly.. by mj_sf · · Score: 2, Funny

    Unfortunatly many IT employees have more hanging out and over their belts as apposed to under them..

  4. OOP by Anonymous Coward · · Score: 4, Insightful

    Learn some solid OOP and modern languages like Java, C#, C++. It takes years of experience to write well designed OO code.

    1. Re:OOP by RAMMS+EIN · · Score: 2, Insightful

      ``It takes years of experience to write well designed OO code.''
      It just struck me how ironic that is. I for one used to think that OOP was supposed to make programmers' jobs easier. Independent objects avoid breakages and incomprehensibility that often result from spaghetti-like code. Thinking in objects rather than whole programs should also be easier. Yet it is so very true that a typical object-oriented language like C++ or Java is much harder to learn than a procedural language like C (think of all the extra syntax...virtual, public, private...). And even writinh OO code is often harder, especially when you're faced with decissions like ``should this member be publicly accessible?'' One wrong decission could result in your class being incredibly slow or useless for a purpose it would otherwise be perfect for. Of course, it's not like C can't be nightmarish, perhaps even more so, especially when you're trying to do OOP with it...well, that proves my point, does it?

      --
      Please correct me if I got my facts wrong.
    2. Re:OOP by smileyy · · Score: 2

      And even writinh [sic] OO code is often harder, especially when you're faced with decissions like ``should this member be publicly accessible?''

      That one's easy. The answer is always "No".

      --
      pooptruck
    3. Re:OOP by EnderWiggnz · · Score: 2

      VB is the Cobol of the 21st century.

      C/C++ aint going anywhere.

      --
      ... hi bingo ...
    4. Re:OOP by hding · · Score: 2

      Yet it is so very true that a typical object-oriented language like C++ or Java is much harder to learn than a procedural language like C

      One could always learn a different typical object-oriented language (e.g. Smalltalk) that is much easier to learn. About the worst side-effect of that is never wanting to go back to something like C++ or Java.

    5. Re:OOP by Enonu · · Score: 2

      I find the number one way to shoot myself in the foot with OO languages is to not correctly assign responsabilities to various classes. This results in the following types of classes:

      (excuse my naming)

      Jack-of-all-trades classes: They do everything
      Webbed classes: Too much dependancy between classes, the worst being multidirectional.
      Gimp classes: Almost completely useless except for a small function or two.
      Cruft classes: Forced to implement methods that are never used anyways.

      The worst are by far the first two IMHO, and the last two are simply annoying. However, the key is to recognize the situation as early as possible, and refactor soon there after. Otherwise, you'll get a Leaning Tower of Piza where minute changes start becomming painful, and large ones can require huge rewrites (good-bye weekend).

    6. Re:OOP by GoofyBoy · · Score: 2

      "C/C++ aint going anywhere."

      They used to say that about FORTRAN and COBOL too....

      --
      The surprise isn't how often we make bad choices; the surprise is how seldom they defeat us.
    7. Re:OOP by Daniel+Dvorkin · · Score: 3, Interesting
      "C/C++ aint going anywhere."

      They used to say that about FORTRAN and COBOL too....
      Quote from a friend of mine who recently took her shiny new CS degree (based on doing almost all her academic programming in to a job fair and tried to find a job:

      "Half the people I talked with wanted to know if I knew FORTRAN!"

      Now, granted, this may reflect the area where we live (Denver) being very heavy on aerospace ... but it's something to keep in mind.

      So what happened to her? Well, she never did get a job from anyone she talked to at the job fairs. Fortunately, she was able to get a job at her Dad's company (something she was trying to avoid, not because it's a bad place to work, but because, you know, her boss is her Dad.) Some of her coding she does in Java. But a good half of what she does is in ... wait for it ... COBOL.

      Me, I develop in PHP and SQL, so what the hell do I know? ;)
      --
      The correlation between ignorance of statistics and using "correlation is not causation" as an argument is close to 1.
    8. Re:OOP by Daniel+Dvorkin · · Score: 2

      Aaargh. That should be "... (based on doing almost all her academic programming in Java) to a job fair ..." above, of course.

      --
      The correlation between ignorance of statistics and using "correlation is not causation" as an argument is close to 1.
    9. Re:OOP by MAXOMENOS · · Score: 2

      Two jobs ago I was coding Java servlets. Got laid off.

      One job ago I was coding Perl and C++. Got laid off.

      This job I'm coding COBOL (using Synon) on miniframes.

      Trust me, COBOL isn't going anywhere.

    10. Re:OOP by bay43270 · · Score: 2

      Learn some solid OOP and modern languages like Java, C#, C++. It takes years of experience to write well designed OO code.



      Very true. One thing I've noticed, you can hear phrases like "Favor composition over inheritence" over and over, but until you see a project begin to fail due to bad design, you will never understand WHY these rules are important. This is one area where experince does count. And a very good area for someone looking out over the next 10 years rather than the next 3 months.
    11. Re:OOP by Raiford · · Score: 2
      I think the conventional wisdom is that OOP is more difficult and takes more planning and design. A true OOP product is really an engineered piece of work and not just some hack. The advantages that I am aware of is not in ease of programming but in the ease of reducing a real world problem into code having objects mimic real world objects. The other advantages come from the reusability, maintainability and extensibilty of the OO code.

      --
      "player 4 hit player 1 with 0 stroms"
    12. Re:OOP by anonymous+cupboard · · Score: 2
      Yep, my most recent project was supposed to be C. That was until they discovered that I knew COBOL.

      Then a good half year of COBOL, some new modules and a lot of maintenance. Then I discovered a file dump tool wasn't quite working properly, so I fixed it. It was written in FORTRAN.

      The only one of my old skills I haven't recycled recently is assembler.

    13. Re:OOP by Junks+Jerzey · · Score: 2

      C/C++ aint going anywhere.

      Ah, but they are! Look at how much you can now get done more productively by using Perl, Python, REBOL, or any of a dozen similar languages. Ten years ago, C was the only real option for software development. Now you have Mitch Kapor and friends writing an Outlook replacement in Python, for example.

      The paranoia among C programmers is similar to the early 1970s paranoia among assembly language programmers.

    14. Re:OOP by anonymous+cupboard · · Score: 2
      In our case, thanks to some Androids, they had a naming convention that negated the whole idea of COBOL data structures, that is all elements must be qualified by their record, instead of using A OF B. This also means that you can't use stuff like 'MOVE CORRESPONDING'. Bleagh!!!!!

      Oh, we had some high tech stuff as well, a front-end written in Java. Trouble was that the whole thing was written by a bunch of kiddies who had no concept of engineering. The C code was ok though.

    15. Re:OOP by Lars+T. · · Score: 2

      It takes years of experience to write well designed code, period.

      --

      Lars T.

      To the guy who modded me down from perfect to terrible Karma - Apple haters still suck

  5. C# .Net by Anonymous Coward · · Score: 3, Insightful

    C# .Net is the biz. But the slashdotters will knock it since it comes from Microsoft. Doesn't change the facts tho ...

  6. Try a RHCE or similar. by AltGrendel · · Score: 2
    I'm typing this from a RHCE classroom. I'm taking RH300 Rapid Track. It's been very good and as advertised. It's for folks that have dealt with RH installs before and want to "fill in around the edges".

    Class hasn't started yet, BTW.

    --
    The simple truth is that interstellar distances will not fit into the human imagination

    - Douglas Adams

    1. Re:Try a RHCE or similar. by LinuxHam · · Score: 3, Interesting

      Funny, when I took it as an IBM-run public class it covered in 4 days what took me 6 years to teach myself. A lot more than just making "expert installers" out of us. I really enjoyed that class.

      Looking back on it, I didn't really learn all that much that I didn't already know, except for some advanced X Windows administration. Over half the class failed the exam, so it was more of a confirmation for me that I was making the kind of progress that I thought I was.

      --
      Intelligent Life on Earth
  7. Don't think you're skills are the problem. by Anonymous+MadCoe · · Score: 5, Interesting

    Just find an employer who understands that your vast experience should be enough to master any new interresting field. IMHO you just need to run into the right employer, not the right additional skills.

    1. Re:Don't think you're skills are the problem. by ipmcc · · Score: 5, Insightful

      Just find an employer who understands that your vast experience should be enough to master any new interresting field. IMHO you just need to run into the right employer, not the right additional skills.

      Five years ago, that would have been good advice. The problem is that now employers don't have to train folks. I have a fairly diverse background including everything from EE type jobs in the embedded sector to MIS jobs with few technical requirements and everything in between. Many employers went through a downsizing in the last two years, and now they are loathed to pick up "General talent." Despite my wide range of experience and obvious skill inventory, I was passed up for people who had 5 straight years of development experience with a single technology because the employers I talked to couldn't justify hiring general talent anymore. If they were going to make the expenditure to hire someone it had to fill an immediate need.

      All that said, hang in there. There are employers out there who still see the value of the "engineer brain." Just dont hold your breath waiting for them to find you. Also, unless you have a major objection to it, focus your energy on smaller companies. Companies with 5 or 6 people can much more readily see the benefits of having a swissarmy knife instead of a T40 Torx wrench, whereas a big company sees that it has a bunch of Torx bolts to unscrew.

      For waht its worth I was unemployed for a year before finding my current job. If you have a job now you may want to consider trying to find a way to be happy in it rather than moving on.

      --
      This too shall pass.
    2. Re:Don't think you're skills are the problem. by michael_cain · · Score: 4, Informative
      Also, unless you have a major objection to it, focus your energy on smaller companies. Companies with 5 or 6 people can much more readily see the benefits of having a swissarmy knife
      I'm facing impending unemployment -- we are being acquired and the new owners are simply discarding the headquarters staff -- and am also a generalist. I was talking to my financial advisor yesterday, who also works with an outplacement firm, and he made the same point about smaller companies. He says a significant number are in need of technical help, and that they prefer getting a generalist who can solve one type of problem this week and a completely different problem next week.

      As the "networking" one might do to find those positions is quite different than looking for a position at another big corporation, his comments gave me something to think about in organizing my own job search.

    3. Re:Don't think you're skills are the problem. by Amazing+Quantum+Man · · Score: 2

      You forgot "5 years experience with Windows XP".

      --
      Fascism starts when the efficiency of the government becomes more important than the rights of the people.
    4. Re:Don't think you're skills are the problem. by Neil+Watson · · Score: 3, Insightful

      It's unfortunate that many companies hire using keywords and other BS. I was reading a good article in Men's Health last month. They were interviewing the CEO of a, still successful, dot-com company (can't remember which one). He said not to hire to fill a position. Hire good people (read: experience and good thinkers) and find a job for them.

    5. Re:Don't think you're skills are the problem. by Raiford · · Score: 2
      The parent post here is correct. You have a big advantage just based on experience base. There is way too much pigeon-holed expertise in the IT industry today and too many people not having broad basic talents which come from a firm engineering or computer science background. I wouldn't get into the trap of trying to sell yourself on a new skill. You would do better to emphasize your experience. Additionally if you were to get a job based on one little thing that you might have learned in the latest craze going around IT it wouldn't be a very good job anyway.

      --
      "player 4 hit player 1 with 0 stroms"
    6. Re:Don't think you're skills are the problem. by vanyel · · Score: 2
      Also, unless you have a major objection to it, focus your energy on smaller companies.

      Smaller companies generally have a lot better working environment anyway. The only place a big company wins is in things like stock options and sometimes pay. It's also generally easy to move around and do different things if you get bored. Even so, I'd rather work for a small company that appreciates what I do.

  8. Skills by stevenp · · Score: 5, Informative

    The most important for every developer in my opinion is Java. It is the current foundation of the general programming (no flames, please). A second step will be the Java-releated technologies - J2EE, XML processing and so on.

    You probably already have a solid knowledge of SQL, relational databases and C (C++).

    Then XML, HTML, the different CSS and DOM things and so on.

    Also some TCP/IP and basic Unix administration will come handy.

    This I think is more than enough for a good start. Java + C + C++ + XML + HTML + TCP/IP + SQL + relational databases are going to be around for a very long time and a lot of BIG and small systems are going to depend on them.

    About the learning - a good book (finding a good book may be hard), a lot of interest and trying to understand the underlying principles should be enough.

    1. Re:Skills by mgkimsal2 · · Score: 3, Insightful

      Maybe a good skill to learn would be making good java user interfaces. Emphasis on good. If someone made a good, fast java gui toolkit which was cross platform, people might use it more, which would help java's long term security.

      I just retried the websphere installer - done in java - and I couldn't believe how utter crap it was. This from a company which is supposedly supportive of java, and is behind linux, and has more money than most of eastern europe combined.

      That's what most people think of when they hear the word 'java'. Slow, clunky interfaces. Could only get websphere installed on one machine here, and even then it was still horrifically slow, reinforcing java's 'slowness'. Whoops - sorry, that machine was 'only' 600 mhz with 512 megs. I guess we need real 'enterprise' machines to get moderate performance, right?

      If java is to have long term viability, it needs to run faster on commodity hardware, otherwise it will remain a marginal player which increasingly only the elite few will be able to afford to run in production environments.

    2. Re:Skills by mgkimsal2 · · Score: 2

      BTW, just becuase websphere's install is shit(and I second that opinion), doesn't mean its impossible to write good repsonsive Swing GUIs.

      Perhaps, but WHY is it such an uphill battle? Why is the default that everyone puts out crap? Why are there only one or two things people can point to to say 'see here - java really doesn't suck'?

      There's something completely backwards about a company and a technology that seem to go out of the way to push poor performance. You have to *REALLY* understand fairly complex underlying system internals to figure out how to decent GUI apps. Obviously none of the code generating tools out there do it.

      Oh wait. Java == Sun (like it or not). Sun == hardware company. Java being slow means people will be more inclined to need faster/newer hardware, which means more Sun sales. Honestly, if this isn't a conflict of interest, I'm not sure what is.

    3. Re:Skills by ChannelX · · Score: 2
      If Sun sued MS over MS trying to improve the speed of Java (yes, I know there were some other issues involved, but MS JVM was definitely faster than other things out at the time)

      The Sun lawsuit had absolutely *nothing* to do with MS trying to improve the speed of Java and *everything* to do with the "other issues" you mention. Sun sued Microsoft because Microsoft broke the license agreement by making illegal changes to the language. Very simple.

      --
      My blog: http://jkratz.dyndns.org/~jason/blog/
    4. Re:Skills by ChannelX · · Score: 2
      If someone made a good, fast java gui toolkit which was cross platform, people might use it more, which would help java's long term security.

      There already is a good, fast java gui toolkit that is x-platform. Its from the Eclipse project (read: IBM) and its called SWT.

      --
      My blog: http://jkratz.dyndns.org/~jason/blog/
    5. Re:Skills by T3kno · · Score: 2

      I have looked at SWT, it's sweet! Unfortuneately I have yet to see a single application that utilizes it. I completely agree with the parent post, java UI's are ugly as sin, not to mention slow. I'll stick with Perl until Java actually provides something usefull that you can't do with a million other languages.

      --
      (B) + (D) + (B) + (D) = (K) + (&)
    6. Re:Skills by dubious9 · · Score: 2

      XML is the portable data format. Java is the portable programming lanuage. Java, IMHO, has more API for dealing with XML than any other language I know. Name some XML programs: Xerces, Xalan, Ant (I know they are all Apache) they're all for Java. I know that there are parsers in C++ and Perl, but if you are using XML, most likely you are using Java.

      I believe this was the point of the orginial poster.

      --
      Why, o why must the sky fall when I've learned to fly?
    7. Re:Skills by Vagary · · Score: 2

      Are there really that many companies using Java?

      My school switched to using Java in almost all the undergrad courses a few years ago and yet students keep coming back from summer jobs and internships talking about how all they used was C++. You should have seen the Microsoft promoter's face when he was informed, in front of an entire audience, that C++ wasn't used in any of the classes. In fact, the only time I've heard a student mention Java in regards to his summer job was a guy who modified the threading model of the JVM -- which is written in C++.

      Could it be that Java is only being used in projects which include SQL, XML, and TCP/IP? There are certainly plenty of companies creating software (in-house or commercial) that uses only one or none of those technologies.

      Can anyone point me to some statistics?

    8. Re:Skills by bwt · · Score: 2

      Are there really that many companies using Java?

      Yes. Lots.

      Java just passed Visual Basic as the most widely used language, defined in terms of employees doing it, which is different from the number of job postings right now. Perl is now third, followed by C and C++.

      I tried to find the market share study I'd seen that said this, but I couldn't find it. I did find this story however.

      On a whim, I tried looking at the number of keyword hits at jobsearch.monster.com . Here are the hit counts for job postings in the last 60 days. I think this is pretty telling, actually.

      1307 SQL
      1140 Unix or Linux
      1063 Windows
      1062 Access
      1029 Unix
      1023 J2EE or Java
      1005 C
      976 Java
      888 Oracle
      821 C++
      763 network
      621 Visual Basic
      595 Web Services
      570 XML
      464 HTML
      457 Computer Security
      385 ASP
      288 .net
      281 J2EE
      254 Linux
      225 Javascript
      214 TCP/IP
      210 Perl
      206 DB2
      204 JSP
      188 SAP
      141 IIS
      138 Peoplesoft
      134 Exchange
      131 WebSphere
      110 Cobol
      85 MCSE
      70 Apache
      70 SOAP
      60 SAS
      44 Delphi
      42 DNS
      28 MySQL
      20 JUnit
      19 Python
      10 Pascal

    9. Re:Skills by cduffy · · Score: 2

      There's something completely backwards about a company and a technology that seem to go out of the way to push poor performance. You have to *REALLY* understand fairly complex underlying system internals to figure out how to decent GUI apps. Obviously none of the code generating tools out there do it.

      I'll agree -- both Java's provided UI libraries suck. However, not all of the ones in existance do.

      IBM's SWT, for instance (used for Eclipse) performes quite snappily. More importantly, though, Java does quite well at a lot of tasks in no way related to user interfaces -- in short, backend code. Recently, modern IO interfaces (select loops, memory mapped I/O, etc) have been added, making Java reasonable for multiplexing servers as well.

      Conspiracy theories regarding Sun trying to make shittier software so they can sell more hardware are just silly -- to do something so detrimental to Java's adoption is just silly. Swing performs like a dog because it was written with pure-Java widgets, AWT was barely usable from a programing perspective because it used lowest-common-denominator native widgets. The issues with each are simply the results of a few design tradeoffs, not some grand conspiracy.

    10. Re:Skills by Pfhreakaz0id · · Score: 2

      try Jdeveloper 9 from Oracle. What a steaming heap of shiat. It runs like a dog on my p4 1.8 ghz machine with 512 meg of memory.

    11. Re:Skills by crucini · · Score: 2
      OK, I'm confused:
      Swing performs like a dog because it was written with pure-Java widgets

      Does that mean SWT is not pure Java? So is a JAVA/SWT app cross platform? Can it be run on a machine without any special preparation like installing a library? Can a web applet be written with SWT?
    12. Re:Skills by cduffy · · Score: 2

      Does that mean SWT is not pure Java?

      Yes -- like Sun's original AWT (which used native widgets), SWT is not pure Java. (Of course, on a low enough level, Swing isn't either... my cutoff is whether Java code is called for rendering purposes when pulling down a menu -- one of the operations that's notoriously slow with Swing).

      So is a JAVA/SWT app cross platform?

      Pretty much. It runs on all the platforms SWT supports -- which is to say, win32 and any UNIXlike OS with Motif or Gtk2, and (experimentally) MacOS X or Qt/E (both of which will be officially supported in the future).

      Can it be run on a machine without any special preparation like installing a library?

      No. SWT was built for IBM's Eclipse project, and one of the assumptions there was that the application would be installed before use -- and so that the necessary native code could be installed at the same time.

      Can a web applet be written with SWT?

      Only if it will be run on machines which have had SWT installed (see previous answer) and appropriate permissions have been granted... so effectively, no.

    13. Re:Skills by Fjord · · Score: 2

      Yeah, but for every person like us, there are a whole bunch of other Java developers out of work. Or, at least I think so. Although, come to think of it, the 19 of the 20 Java developers we laid off here all found jobs within 2 months. The other one had a severe speech impediment which probably effected his job search, although he has a job now too (took him 8 months).

      Also, most of the Java systems I've worked on are to replace or run along side COBOL systems, and Java is a shitload (technical industry term there) faster than COBOL.

      --
      -no broken link
    14. Re:Skills by Fjord · · Score: 2

      And back in 97, I played around with a Java applet that could render Quake maps on a PPro-180 just fine. I was making UIs with the AWT that were fast and responsive, and I've done the same with swing. Mostly, my work has me doing J2EE, so it's just web based front ends, but I can still cut a reasonable UI. Check out DBVisualizer for a Swing UI that is responsive, well designed, easy to use, and gives you access to any JDBC database (close to TOAD in quality, but DBV 2.1 lacked updating via the data view and no cration wizards, while TOAD didn't have the relational graphing).

      It is possible to do, but if you
      a) don't care about speeding your UI up and/or,
      b) believe the UI is slow because of Java and not because of crappy coding
      then you will end up with a slow UI.

      --
      -no broken link
  9. Specialise by Twylite · · Score: 5, Insightful

    Computers (or more generally IT) is a broad playground these days. Its simply not possible to do everything anymore, much less to do it well. The answer is to specialise, even if only a little.

    Your history suggests a good deal of experience with embedded systems. This is a good field to be in right now - there are plenty of opportunities, from special-purposes devices to cell phones and PDAs.

    If you want to stay in mainstream development, you probably need to skill yourself up in C++, C# and/or Java. For the former you're going to have to be familiar with the operating system under which you are developing; for the latter two, you're going to have to be familiar with the language and the platform, especially when it comes to enterprise systems.

    If you want to move away from development, you have at least three choices: networking, design and management.

    Networking moves you in between development and users -- you use, but you still have the skill ;) These is a lot of opportunity in network security in the future.

    Design is a step "above" development, in which you're going to have to learn about formal methodologies, OO and patterns; how to control a development team effectively; and how to manage customer requirements.

    Management is, well, management. Enough said.

    My advice would be to decide what you want to do, and then investigate further to determine what skills you need.

    --
    i-name =twylite [http://public.xdi.org/=twylite], see idcommons.net
    1. Re:Specialise by Jeppe+Salvesen · · Score: 2

      I whole-hartedly agree. With your background, you really should look into the ever emerging mobile computing market. That means internet-connected cell phones and PDAs, as well as laptop computers and tablet PCs.

      I am sure you will find lots of interesting areas to specialize in if you look into those technologies. Who knows - maybe you know something relevant, so they don't need to reinvent the wheel all the time?

      --

      Stop the brainwash

  10. Object Oriented Technologies + co. by Coppertone · · Score: 5, Interesting

    Well the brief CV that you have presented it seems that you haven't done a lot of OO in your programming life - it maybe a good thing to learn as OO is a beast it is still one of the best programming paradigm available today.

    Don't worry about the programming lanaguage - as you have learnt so many new langauage in the pass I don't think you have problems picking new things up - have a look at C# and Java - they are the "same" aren't they ;-p

    I say: Operating Systems and Programming Languages come and go, but good Software Engineering and technical understanding never dies. I mean file operation is the same principles in Unix, Windows, "Java", BillGatesMustDie OS (I make it up) - the difference is really whether they call it new File("hello").open() or open("hello", READ_ONLY).

    1. Re:Object Oriented Technologies + co. by Bill_EEE · · Score: 2, Insightful

      Please pardon me for throwing water on the OO must be learned paradigm: It is very popular to believe this as if OO was the second coming. It always seemed to me that OO was just a rewrapping of MODULAR programming. What is the difference? And didn't BIOS calls mimmick what we call proxy objects? OO was a great boon for publishers and for folks in accedamia. The truth from the trenches is that code that works is what is desired in the real world. Yes, OO is awesome, and a great new vocabulary. But there are plenty of EXCELLENT old-time programmers who didn't learn the vocabulary of OO and still design awesome modular code. A lot of folks who have OO as their mantra neglect the fact that a lot of very good software engineers never learned the vocabulary of OO but still write rock-solid code and engineer incredible products. So, if a guy is good at what he does, why send him back to school to learn a new dialect (which is all OO really is) when the dialect that he currently speaks lets him say what ever he needs to say. I would suggest to our friend that he follow his bliss and learn something that he likes to do.

  11. You know embedded programming and C? by Troed · · Score: 2

    .. that's all you need to know. Really - that won't disappear for a very long time. A lot of people are getting sacked in the IT-business today, but competent C/C++-programmers that can do non-Windows (non-desktop, really) programming are still in demand.

    1. Re:You know embedded programming and C? by Grab · · Score: 2

      Dead right.

      In embedded control systems software (where speed of response is critical), everyone still uses C, and will do for a *long* time. Why? It's fast and efficient, everyone understands it, and there is no embedded processor yet which is fast enough for the more "bloated" development methods like OO to be used.

      Other embedded control software (where speed of response is not critical; mobile phones for example) tend towards C++ for convenience - everyone understands C++. C++ is too slow and too unpredictable for it to be used for proper control systems, particularly when it's safety-related or safety-critical, but it's fine for interfaces on phones and stuff like that.

      Embedded software is the big boom area now. Get into that, and don't look back.

      Grab.

    2. Re:You know embedded programming and C? by bunratty · · Score: 4, Informative
      C++ is too slow and too unpredictable for it to be used for proper control systems
      This is FUD, pure and simple. Several years ago I wrote low-level software for a wireless modem entirely in C++. It needed response times in the microseconds range. I found nothing "slow" or "unpredictable" about C++ in hard real-time embedded systems.

      The one problem we did have is that we couldn't do source-level debugging on an HP emulator we bought. When more tools are updated to support C++, you'll see lots of embedded systems development switch from C to C++, just like it switched from assembly to C many years ago.

      --
      What a fool believes, he sees, no wise man has the power to reason away.
    3. Re:You know embedded programming and C? by cduffy · · Score: 2

      there is no embedded processor yet which is fast enough for the more "bloated" development methods like OO to be used.

      Simply untrue. PowerPC chips are very frequently used in embedded space, and the higher-end ones are very fast.

      Does that mean that the programming-time cost saved by using safe languages and such is greater than the cost of shipping higher-end chips than might otherwise be necessary? Maybe, maybe not -- depends on how large the software development project is and how many units will be shipped (and what language is being used -- the penalty could be as low as 2% or so, and thus making use of capacity that otherwise would just be idle, or much much higher if using Java or Python or such, both of which I've seen used in embedded space). For a popular example, look at Qt/E and QPE -- written, like Qt itself, in C++.

      What I'm saying is that while C is still the language to know for embedded systems programming, it's not the only one used there.

    4. Re:You know embedded programming and C? by Grab · · Score: 2

      Simply *true*.

      We're currently using a 32MHz PowerPC chip in a car engine controller. We're *only just* managing to get everything running in the time allowed, and we've had to make some changes to get it down to that. We're using C, with some assembler to optimise the more extreme corners of it.

      And note that this is still a traditional engine controller (lookup tables and stuff). Moving to new-fangled "model-based control" will require at least another order of magnitude improvement or more in processor speeds. Processor speeds will improve, but ppl are more likely to use extra power to implement features than to allow them to write OO.

      Grab.

    5. Re:You know embedded programming and C? by Grab · · Score: 2

      Not bad going! :-)

      However, I stand by what I said. C++ has too many areas of uncertainty for use on embedded systems. It is nice for concealing complexity from the user, but that isn't necessarily what you want for control systems - see the "leaky model" post on /. yesterday.

      Re "slow", I will acknowledge that it depends how you code it. But if you're using all the features of the language such as abstract base classes and multiple inheritance, then it can't but take longer to execute, simply bcos there's more to check at every function call!

      Lots of ppl use C++ but just write similar code to what they'd otherwise write in C. In that case, there genuinely will be little change in execution time. However, in that case there is no reason for them not to be writing in C, bcos all the classes are providing is a convenient place to group functions together.

      Grab.

    6. Re:You know embedded programming and C? by Grab · · Score: 2

      Oops, forgot to mention one key detail - embedded *control* systems. If you only want to run a mobile phone, no-one gives a damn if it crashes every day (as several do). If you're controlling a washing machine and it tips water over the floor every day, that's bad news. If you're controlling a car and the software (and therefore the car!) crashes every day, that's major legal action. If you're controlling an aircraft and the software (and therefore the plane!) crashes, that's the end of the company and the careers of everyone involved.

      Grab.

    7. Re:You know embedded programming and C? by cduffy · · Score: 2

      Depends on how deeply embedded you are, and what kind of thing you're doing. What you say may well be true in more deeply embedded systems, but becomes less true when the devices get less specialized and more general-purpose (and thus start to have faster hardware and a need to run more software). Look at QPE -- it's one of the stronger palmtop environments available (provides handwriting recognition, notetaking software, etc) and it's written in C++. Likewise, while the actual routing functionality of a piece of network hardware needs to be done either in hardware or with very low-level software, the interface software (say an embedded web server used to reconfigure it) has more flexible performance constraints and can be written to emphasize maintainability and terseness over raw speed.

      While the order-of-magnitude estimate may well apply to your product (coming from a state machine/lookup table background), not all software is written so efficiently in the first place; the cost of objectifying some software is less than that of a system so effectively and tersely described as your current product sounds to be. If your systems' functions are best described in a lookup table, by all means do that -- I'm not saying everything should be rewritten with an MVC architecture. OTOH, there are other places still within the bounds of embedded systems where some level of object orientation makes sense, and is actually used in practice.

    8. Re:You know embedded programming and C? by Grab · · Score: 2

      I'd agree with you on that. Thing is, I'm coming from the point-of-view of real-time control of physical systems.

      If you're talking about embedded stuff in palmtops, that's a very different target - palmtops and desktops have pretty much the same core requirements, so the implementation is likely to be pretty similar too.

      Most of the umpty-tum million chips going out though are microcontrollers - there's zillions more microcontrollers than anything else, and they're all in "commodity" electronics. When you're selling a few million pieces a year, the cost of writing the software becomes negligible - you just want to be able to squeeze it into the cheapest, nastyest little chip you can find. The benefits of OO simply don't apply. If you're talking mobile phones though, OO becomes a strong contender - software reuse, modularity and ease-of-interfacing mean you'll likely get a faster time-to-market, which in mobile phones is much more important than the final cost of them. (To give an example of how critical time-to-market is, my friend who works for a mobile phone design company had a project last year where the deadlines were so tight, the customer couldn't wait for the final version of the PCB, so they built 50,000 phones with the old PCB and had a bunch of ppl using patch-wire and soldering irons to fix them!)

      Yeah, C++ has its place, and that place is in rapid-development or user-interface-related stuff - mobile phones and palmtops are the classic applications. But it will always be cheaper to buy a low-featured microcontroller than a high-featured one, so I think code efficiency (in terms of time, RAM and ROM usage) will always (or for some significant time, at least - never say never! ;-) be more important than the benefits of OO for large-production-run low-cost items, and for embedded real-time control systems where there's some serious processing going on.

      Graham.

  12. Key to preparing for the future by jamesjw · · Score: 5, Insightful


    About 6 months ago I left my System Admin / Level II support position at a local ISP and went into business for myself with another guy, our business is aimed at specialising in a key IT area that few local businesses do, that being UNIX consulting and specialist networking.

    I think the only way to stay current and have something good on your Resume/CV is to diversify, not neccisarily specialise in a technology but be across many current technologies, read the literature - read mailinglist digests, visit as many free seminars as you can (visit some that you have to pay for if you think its worth while and you have the cash) if you know what the current products out there are, your better prepared than most people that are in the industry employed to work in one narrow area.

    Just my 0.02cents

    --
    -- If at first you don't succeed, lie!
    1. Re:Key to preparing for the future by _ph1ux_ · · Score: 2

      I totally agree with this!

      I was an IT manager for some time - specialized in network design. I architected many large networks - built a global VOIP network, did a lot of stuff. And was really really good at managing the management (i.e. protecting my IT departments from the rediculous demands of most executive staff)

      I then went on a sabatical (sp) for 4 months. I came back and had enough money to sit on my ass for a little longer... This was in the begining of 2001.

      The market was HORRIBLE in the SF area, especially for IT managers. See, I spent a lot of time making sure my staff was happy - and I made surethat I had people doing what they loved to do - if one of my guys wanted to specialize in security - I sent him to security training - cisco? sun? whatever - i made sure they got the classes and access to the equipment. This was great for them - but for me it was really bad. I was separating myself from the depth of knowledge I was engendering in my staff. big mistake. (I dont regret making sure that my team had it good - I regret not taking advantage of it myself)

      So - I was out of work for a year and a half. The only reason why i wasnt getting the jobs that I was interviewing for? well - after a year and a half - you forget a lot. The most important thing that you lose is your knowledge of exactly what is out there- what is new, what replaces what, what companies are "doing it" and which are about to croak. What new chipset is the best on pc motherboards? What is going on with memory these days? why is the price fluctuating again?

      This type of knowledge of what is going on in the industry as a whole is imperative to keeping your skills up. If you take off time and just let the market move ahead while you're not looking - it can be so difficult to catch up.

      Finally I got a job, I got really lucky getting a job that uses my architecture AND networking background. Now I design (physically) campus networks, and after a year and a half off - there was a lot I had to catch up on.

      Make sure you read a lot about whats going on in the tech industry - and stay up on hardware.

  13. Comment removed by account_deleted · · Score: 2, Insightful

    Comment removed based on user account deletion

  14. java... java.... java by mark_lybarger · · Score: 3, Informative

    these days, if you're an application developer you have 2 main choices. you can learn .NET, or you can learn java. general java is good, but you'll be the one doing the hunting. if you have very solid j2ee experience under your belt, you'll probably be sought out. (conversely, if you've got 9 months development experience using .NET you'll probably be sought as well as people are starting to flirt with the devil on this technology front.).

    in most other software development fronts, c/c++ are still the languages of choice, and your edge is in knowing how to use certain api's (visual c++, com+, unix threads, rdbms, etc) within those languages.

  15. Read Dilbert by mirko · · Score: 5, Funny

    Actually it sounds like a joke but you shouldlook for buzzwords :
    Learn Java, XML, or try to convert yourself to System Administration... You can also get some Oracle DBA certification or, if you don't mind the philosophico-political issues, get an MSCP (Microsoft Certified Professional)...
    Well, the choice is yours but look for whatever sounds the most expensive *and* the biggest : Programming a desktop computer is not as promising as administering a cluster of Sun E10k...
    Bon courage :)

    --
    Trolling using another account since 2005.
    1. Re:Read Dilbert by horza · · Score: 2

      I know plenty of out-of-work Sys Admins at the moment, but no unemployed programmers, so stick to programming if I were you. I don't know why the above post is moderated funny, you should look for buzzwords. (a) it's what clueless HR people look for on a CV and (b) large companies will pay over the odds to get someone with the buzzword skills, as there is always a lag between a new technology and a wide pool of people with those skills. You will have to 're-skill' fairly often but to be honest most of the complicated-sounding buzzwords hide some piss-easy jobs. Add OO to your imperative language skills, and you should be able to pick up pretty much any buzzword skill very quickly. You then get to irk the people in the company you join because they are probably more qualified in the skill than you but the management are paying you twice as much because they wanted a 'specialist' :-/

      Phillip.

    2. Re:Read Dilbert by SecretAsianMan · · Score: 2

      MSCP (Microsoft Certified Professional)

      Tsk tsk. Get your acronyms in order, nerd!

      MSCP = Mass Storage Control Protocol
      MCSE = Microsoft Certified System Engineer

      BTW, MSCP was a DEC (Digital Equipment Corporation) standard machine-level API for accessing disk controllers. It was prevalent on later PDP-11s and on some VAXen. The RQDX3 disk controller spoke to MFM drives, and several Emulex boards spoke to ESDI drives, but the system saw them both as MSCP devices.

      --

      Washington, DC: It's like Hollywood for ugly people.

  16. COBOL by Thoguth · · Score: 3, Interesting

    As a new CS grad who knows lots of the latest technology buzzwords, I've been surprised at the number of openings there are for mainframe COBOL programmers. There are enough big mainframe apps out there (and few enough who know how to work with them) that there will probably be a demand for COBOL programmers for quite a while yet.

    On the other hand, the same can probably be said about C or FORTRAN. With that many years of experience in the industry, I'm surprised you haven't gotten into management or consulting of some sort.

    --
    The requested URL /iframe/sig.html was not found on this server.
    1. Re:COBOL by jasonditz · · Score: 2

      Bah, if you know Fortran you know COBOL, just do everything the hard way and try to think like a businessman while doing it. The differences are minimal and a good Fortran programmer can pick up COBOL in a weekend (and spend the rest of his life trying to forget).

      What I'm more interested in is why exactly so many companies insist on doing all their new coding in COBOL. I mean, they can't help it with the legacy code they've got, but I went to a job interview recently where the guy was complaining up a storm about how much they paid for their new computer systems (WinNT boxes and a big IBM mainframe) and how slow all the code still is and then went on to inform me they do all their development in Visual BASIC and Cobol. I mean, why not just get people to use languages that perform a little better?

    2. Re:COBOL by mesocyclone · · Score: 2

      I've been in the business for 35 years. I worked my way up to CTO in a 2000 person company. Now I work as a designer and coder. The reason: personal preference. I work out of my house (you cannot do that effectively in management); I get to create things myself, which I enjoy. I don't have to wear a suit. I don't have to play in office politics, which get more intense the higher up you go.

      OTOH, if it wasn't for the health insurance mess (TRY buying health insurance if you or members of your family have pre-existing conditions), I would not have to work - at least full time.

      Sigh.

      --

      The only good weather is bad weather.

  17. Essential new skills by Mattygfunk1 · · Score: 2
    What can I do to acquire these essential new skills?"

    Your submission doesn't mention your formal education. How about looking at picking up a certification like an RHCE, CCNA, etc?

    Sure, it is more expensive than teaching yourself if your boss won't pickup the tab, but would be beneficial regardless.

    -----
    taco taco, taco taco, ____________________ I love that ad.

  18. From my experience... by MoThugz · · Score: 5, Interesting

    it is best to get hold of as much knowledge as possible. Don't target anything trendy, but strenghthen yourself with basic computing knowledge such as server administration, network implementation, and computer repair & maintenance. Although it does sound blue-collarish but believe you me, in the IT business, they are a must.

    Since you already have good programming-based skills, you should just keep them polished.

    And when you actually apply for a job, don't over-pimp your skills, they will then have a reason to categorize you as over-qualified. It's suffice just to exibit your ability to handle situations from hardware to code and vice-versa. This will make you appear more all-rounded and project an image that you will be beneficial in the long run.

    Just speaking from experience watching all my Masters degree friends stay home because of lack of work whilst I have a fixed income to look forward to at the end of every month.

    Best of luck in your endeavours!

  19. Re:I would recommend leaving I.T. by joey2k · · Score: 2, Interesting

    Whatever

    Given the fact that he reads slashdot, the people here are NOT total random strangers. No doubt he knows they are more technically minded than most.

    Some here are very familiar with the IT/computer industry and have a good idea what's coming down the road technically in the future. Of course I'll admit that some advice here should be ignored, but I'd be willing to sift through it to find the good ideas.

    Personally, I am very interesting in finding out what the slashdot crowd has to say about this.

  20. Go for things that suit you and be good at them by ajv · · Score: 5, Insightful

    As the guy you'd be seeing who does the interviewing, here are my five tips for a long and interesting career:

    1. Do whatever YOU like, but do it well.

    2. Only work for employers that you want to get up in the mornings for.

    3. Dedicate at least 10% of your "work" time to professional development, even if you have to pay for it. Go stale = out of job

    4. If you're not having fun, leave. Life is too short to put up with crap.

    5. Don't choose the boring staid job unless you want to retire. Be different. Work for Microsoft*.

    If you're after buzzword compliance (j2ee, .NET, etc), read the other 500 posts. As you already know, they mean nothing in 5-10 years. My tips will last a lifetime.

    Andrew

    * by this, I actually mean for *you* to pick the most interesting job you can find. A friend of mine interviewed for a job in Antarica, for instance. Think about it.

    --
    Andrew van der Stock
    1. Re:Go for things that suit you and be good at them by renehollan · · Score: 3, Insightful
      As the guy you'd be seeing who does the interviewing, here are my five tips for a long and interesting career:

      So, hire me. See sig. :-)

      1. Do whatever YOU like, but do it well.

      Some flexibility is necessary. I'm not crazy about Java, or scripting languages, for example. Of course, I come from an embedded background where you squeeze every last drop of performance out of your resources. Not everything has to be blindingly fast, and there is something to be said for rapid deployment. As much of a development geek that I am, I have found pleasure in streamlining build environments, generating test infrastructures, and producing customizable installation media. Even "mundane" tasks can be made superb with the right attitude.

      2. Only work for employers that you want to get up in the mornings for.

      Aye, though I'd augment that by saying, "Only do things that you like getting up in the morning for." -- the employer might be a bit of an ass, but the job can still be fun.

      3. Dedicate at least 10% of your "work" time to professional development, even if you have to pay for it. Go stale = out of job

      That's been my mistake. I never really got into the whole Java, J2EE, enterprise "thing", dealing with it when necessary (and damn well, at that). Also, it can be difficult to find that 10% when work time ranges from 60 to 120 hours a week to correct mistakes made by others -- the tragic flaw of having exceptional troublshooting skills.

      There's a tendency to not "train" after having seen a lot of different, but similar, systems, because a good S/W engineer will pick up the required skills as necessary without wasting time on traning that may or may not prove useful. However, future employers like to see "training".

      In an attempt to correct this oversight on my part, I have been spending some of my free time with "buzzword" technologies like SQL, XML, Javascript, and Java -- though the tendency does remain to think, "I'll pick this up when it's the right tool for the job and not sooner."

      The difficult is that many employers will not believe that you can actually do this, even with a history of pulling off "miracles". Sell yourself too hard and you come off as arrogant.

      4. If you're not having fun, leave. Life is too short to put up with crap.

      Alas, one has to eat, and leaving is not always practical. But, the sentiment is noted.

      5. Don't choose the boring staid job unless you want to retire. Be different. Work for Microsoft*.

      Indeed. The best time of my life was working for my last employer, and optical router startup. Sadly, I got caught on the wrong side of a 20% cut to make VC capital last. Still, smartest bunch of people I worked with.

      OTOH, after a while, one starts to think, "Ya know, why not take all one's savings, buy a cheap house in the country outright, and 'retire' to give the people at the local Rat Shack blank stares (or, if they're clueful, a surprise of knowledge).

      If you're after buzzword compliance (j2ee, .NET, etc), read the other 500 posts. As you already know, they mean nothing in 5-10 years. My tips will last a lifetime.

      Yeah, but the short term is a bitch.

      --
      You could've hired me.
    2. Re:Go for things that suit you and be good at them by ChannelX · · Score: 2

      Just a nitpick here but SQL is hardly a buzzword. Its been around forever. Java is way past the buzzword stage as well. You want buzzwords you got XML and you missed .NET.

      --
      My blog: http://jkratz.dyndns.org/~jason/blog/
    3. Re:Go for things that suit you and be good at them by jedidiah · · Score: 2

      > "I'll pick this up when it's the right tool
      > for the job and not sooner."

      How do you know if something is the right tool of for the job if you don't really know anything about it?

      --
      A Pirate and a Puritan look the same on a balance sheet.
    4. Re:Go for things that suit you and be good at them by eddy+the+lip · · Score: 2

      I'd like to add to that that the only jobs that buzzword compliance will help you with are the backroom/cubicle "that's where we keep our geeks" kind of job. Some want that, and that's fine, but it's really as far as a trendy CV will get you. What's more, it will just put you in the pool with all the others that have a similar set on the resume (and there are a lot out there right now).

      It sounds like you've got miles of experience to differentiate you, so I'd say the same thing I recently told a friend in a similar spot - network. I was horrible at this two years ago, until me and some friends launched our own company. It's the single most valuable skill I've learned since then, and I've started seeing the value of it from the employer's perspective as well.

      If I'm looking for someone to fill a specific role, my first thought is "do I know someone who could do this?" Not necessarily do they already know language X, but who would be good at it. Could they talk to a client if they had to? Will I be able to work with them? All of those are things you can't figure out from a piece of paper.

      Granted, this is more effective at getting contract work, or a position with a smaller company, so if that's not what you're after, you'll have to read someone else's post. But if I'm looking to hire/outsource, it's the criteria I use.

      --

      This is the voice of World Control. I bring you Peace.

    5. Re:Go for things that suit you and be good at them by renehollan · · Score: 2
      How do you know if something is the right tool of for the job if you don't really know anything about it?

      It is possible to know what something is used for without having to know exactly how to use it for that.

      For example, I can make a solid reccomendation dropping Tomcat in place of Alaire's JRUN as a Java servlet engine, without knowing how to configure Tomcat -- that comes quick enough. Whether this is a good idea depends on an evaluation of Tomcat's stability and speed, whether any quirks of JRUN are being exploited, and so on. None of that really requires "three years experience" with Tomcat.

      Now it's true that experience with the tool in question helps answer those kind of questions, but it is not the only way to get those answers with an acceptable degree of confidence.

      Indeed, remaining focused on the tools with which you have expert knowledge often leaves you narrowminded when it comes to "out of the box" thinking to deal with new problems.

      For example, we had a requirement, on a distributed internet test platform, for an administrative interface. As usual, implementing this kept getting put off and put off until it really became a critical path issue, which no one considered. So, we had the proverbial "zero time" to implement an admin interface, secure in the public internet. Bad planning? Bad management? Perhaps, but shit happens, and what separates the men from the boys is dealing with it.

      Without knowing much about Apache or Linuxconf configuration or extention, it nevertheless was obvious that using Apache to proxy an SSL session to linuxconf's web-based interface would get the job done, with little "real work" providing linuxconf backends for our unique copnfigurable components. It may not have been the most elegant way to get the job done, but it worked, proved secure, met the requirements, and was done in time.

      Now, do you think any of the "Apache" or "Web" experts knew anything about this? Nope. They had no clue where to start. I knew nothing about the specifics but was confident that these components could be glued togehter via configuration magic, and perhaps a bit of custom code, and a google search confirmed these suspiscions.

      You could argue that webmin might have been a better choice, and without panic, a better analysis could have been done. But, so often, the ability to work with less than ideal specs and data is what keeps a project on track.

      --
      You could've hired me.
    6. Re:Go for things that suit you and be good at them by renehollan · · Score: 2
      Just a nitpick here but SQL is hardly a buzzword. Its been around forever. Java is way past the buzzword stage as well. You want buzzwords you got XML and you missed .NET.

      Point noted re. SQL, but it's just a query language. Anyone with database theory should be able to pick it up in no time. More to the point, anyone who's used a more typical programming language should have no problem with something as simple as this, syntactically (though, it is also baroque in the same way that COBOL is).

      As for Java, sheesh! What matters should be OO methodology and an understanding of n-tier architectures (which is but a physical manifestation of the former). Java is an implementation detail with certain nice cross-platform attributes (like client-side validation off-loading, etc.)

      Perhaps I'm a bit of a crank about this, but having been in the position of implementing code to desirable "common", if not standard, APIs in an embedded environment from scratch, specific API knowledge does not strike me as it should be a major differntiator -- picking up a new API and language is trivial by comparison.

      Of course, if Java is your first OO language, and you're learning the principles and practices of OO design, development in a heterogenous environment, good Java skill matters, but it's not really the Java you're learning, it's the nature of programming in that environment in general.

      So, I'll still rank Java in the buzzword camp. The language matters far less than the overall architecture and really just represents a means to an end.

      Could the same argument be made about C++, or other OO languages, like Smalltalk? Perhaps, but, unlike Java, they are richer in terms of the native OO concepts they support: multiple inheritance for one. Java scales back on a lot of these things (simply parsing C++ is, admitedly, a bitch), and adds more practical facilities (garbage collection and native multithreading) useful in a particular set of applications.

      As for XML, and .NET, so what? Yet another interchange and serialization format, and marshalleling scheme. Sure, there's a whole bunch of support code around the technologies, but it's still just a different way of doing the same old thing. RPC/XDR was the big thing in the Unix world way before XML, and more efficient too.

      I dunno, SQL, Java, and XML just give me an, er, COBOLish feeling: programming for non-programmers with a business app bias. I suppose we can afford the cycles to be inefficient for the sake of rapid deployment and easy inter-subsystem debugging, but the argument stands that if you could hack the "older, less friendly stuff", this new tech is not a big deal to pick up. Focusing too much on the most recent specific implementation technology of rather old principles does strike me as buzzword mining.

      --
      You could've hired me.
    7. Re:Go for things that suit you and be good at them by ChannelX · · Score: 2
      So, I'll still rank Java in the buzzword camp. The language matters far less than the overall architecture and really just represents a means to an end.I agree that its a means to an end but Java is 7 years old. Hardly a buzzword.

      Could the same argument be made about C++, or other OO languages, like Smalltalk? Perhaps, but, unlike Java, they are richer in terms of the native OO concepts they support: multiple inheritance for one. Java scales back on a lot of these things (simply parsing C++ is, admitedly, a bitch), and adds more practical facilities (garbage collection and native multithreading) useful in a particular set of applications.

      Smalltalk is a single-inheritance language and you'd be hard-pressed to find situations where MI adds anything significant to a language that can't be expressed with single-inheritance and something like interfaces. And Java just borrows on other languages (like Smalltalk) for things like garbage collection, etc. There was a nice marketing job done for Java and it was cheap for developers to adopt (and still is). Smalltalk didn't have that luxury unfortunately. It does now but its pretty much too late.

      As for XML, and .NET, so what?

      I think you're missing the point of my reply. You said 'buzzwords' and SQL and Java aren't buzzwords. XML and .NET are buzzwords (ie: currently in vogue and "cool").

      --
      My blog: http://jkratz.dyndns.org/~jason/blog/
    8. Re:Go for things that suit you and be good at them by renehollan · · Score: 2
      I think you're missing the point of my reply. You said 'buzzwords' and SQL and Java aren't buzzwords. XML and .NET are buzzwords (ie: currently in vogue and "cool").

      O.K. I think I get the point you are trying to make, though XML and .NET are every bit as much technologies as Java and SQL, just new and thus "sexy", and prone to buzzword mining in resumes.

      Where I criticize something as a "buzzword" is when an inappropriate weight is given to it as a skill, when compared to the general skill really desired: OO in the case of Java, query languages in the case of SQL, and structured data in the case of XML -- there are other examples of these skills and they should carry over: C++ experience should be a good fill for Java, evidence of handling structured data for XML, and experience with heterogenous systems interworking for both XML and .NET. That, and a proven history of adapting to a different flavour of the "same old thing" in record time will often be better than someone with recent Java and SQL Server experience as the only OO/Database expertise they have.

      You are right about Smalltalk being single inheritance, I think, but, IIRC, it has a rich dynamic type system that C++ and Java can only dream of. As for multiple inheritance, I suppose multiple interfaces can work as a proxy, but then you have the whole member function virtualization overhead for them no? C++ is superior here in that you can have implementation composition without that extra indirection. Whether that matters in practice, is, of course, debatable: there is a whole school of thought that anything that can be done at compile time should, as a matter of optimization, but, OTOH, this stiffles dynamic run-time extentions.

      --
      You could've hired me.
    9. Re:Go for things that suit you and be good at them by sv0f · · Score: 2

      3. Dedicate at least 10% of your "work" time to professional development, even if you have to pay for it. Go stale = out of job.

      Does reading Slashdot count?

    10. Re:Go for things that suit you and be good at them by ajv · · Score: 2

      Yes. And no.

      Reading and replying to a heap of Slashdot posts is about as useless as yelling at the wind. You might be a karma whore like me, but it doesn't really help anyone, does it?

      Whereas taking the time out to learn how to code securely, or to pick up on all the features of the latest version of Widget Inc's BoogerMiner 7000 that your company is using will directly help you.

      Or if you're like me and do essentially tech writing, I like to write fiction (short stories) at night at the moment. It's cathartic and fantastic training for being frugal and concise with language. It's great training for use-cases. :-)

      Andrew

      --
      Andrew van der Stock
    11. Re:Go for things that suit you and be good at them by Fjord · · Score: 2

      The difficult is that many employers will not believe that you can actually do this, even with a history of pulling off "miracles". Sell yourself too hard and you come off as arrogant.

      I understand what you are saying here, but I do have to say that there are limits to this philosophy. There is a certain amount of hubris in the belief that because you know OO you can pick up, for example, J2EE in a week or even a month. For a while on a project you are either going to be moving very slowly and learning on your own, or will be moving slowly while learning from others (thus slowing them down). In 97, I'd been using Java for a year and really was an expert in all there was to know about it when designing a solution. Almost 6 years later, and I know I'm not an expert in a small facet of the entire platform (J2EE) applied to either of 2 vertical markets (1 year medical and 2 years logistics). I'm barely qualifies to make architectural decisions, and even there I know I make mistakes and unknowingly pass over technologies that could make systems simpler/more robust/faster to build/have a better ROI/who knows what. It's gotten very big very quickly. It's not just stuff from Sun, it's the Apache Group, and IBM, and a million 3PVs.

      In short, reading the Wrox Professional Java Server Programming J2EE Edition isn't going to make you a senior architect. It make help you become an intermediate programmer, but it takes a lot of time to fully understand these things, why and how they work together, and wether or not they are the best tool for the job.

      --
      -no broken link
    12. Re:Go for things that suit you and be good at them by renehollan · · Score: 2
      I understand what you are saying here, but I do have to say that there are limits to this philosophy. There is a certain amount of hubris in the belief that because you know OO you can pick up, for example, J2EE in a week or even a month. For a while on a project you are either going to be moving very slowly and learning on your own, or will be moving slowly while learning from others (thus slowing them down).

      The point is noted, and I can only write from my own experience with picking up new things "on the fly": my history has always (though past performance is no guarantee of future results) been one of going from novice to expert, and exceeding the skills of the resident experts, in short order.

      Certainly a rich and broad inventory of classes with which to attack a problem takes time to learn. But again, I have often found those who know the inventory often can't judge the applicability of a particular architectural choice for lack of an understanding of implementation details that "leak", i.e. performance, memory footprint, etc. Generic skills come in handy here.

      If I were to seek a position where Java was the primary implementation language, I would consider an intermediate development position, and certainly not an architectural role, at least not right away. But, what's upsetting is someone not realizing that over a decade of OO and expert C++ work, along with a demonstrated track record of adapting to new technologies, APIs, etc. isn't even considered superior to utter novice level with a new or different technology. The vast majority of the skills repertoire does transfer.

      --
      You could've hired me.
    13. Re:Go for things that suit you and be good at them by ChannelX · · Score: 2
      O.K. I think I get the point you are trying to make, though XML and .NET are every bit as much technologies as Java and SQL, just new and thus "sexy", and prone to buzzword mining in resumes.

      Yeah. Now we're on the same page.

      --
      My blog: http://jkratz.dyndns.org/~jason/blog/
  21. I agree, but.... by gatkinso · · Score: 5, Insightful

    The mindless automatons in H.R. need to see the right words and letters on the resume before they will forward it to a hiring manager.

    Sometimes it isn't even a human doing the processing these days - OCR for the few that still snail mail their resumes (a red flag in itself), coupled with full text indexing and data mining determine which resumes are deleted and which are forwarded.

    --
    I am very small, utmostly microscopic.
    1. Re:I agree, but.... by Anonymous Coward · · Score: 2, Funny

      I'm getting sick of the job ads that have a shopping list of tools/techniques, right down to the version number and often requiring more years of experience with the tool than the number of years it has been in production. What say we start spamming the HR twits who create these ads - Each time you see an ad requiring 5-7 years experience in each of 7 obscure tools, send 'em a fake resume with exactly the list of skills they asked for and Dial-a-prayer for a phone number and u.r.anidiot@hrscum.com for an email address.
      Maybe after receiving a few hundred of these they'll start to get a clue.

  22. Whatever you want by duffbeer703 · · Score: 5, Interesting

    Do whatever interests you.

    You sound you have plenty of experience under your belt and a good understanding of things.

    I've seen people make a living off of just about any computer specialty out there, good economy or bad. Find something that can get you some clients and do what you love.

    Just stay involved in the community around a product or technology, and you'll have no problems. I've found that posting intelligently to a newsgroup or mailing list leads to job offers when you are not even looking for work.

    --
    Conformity is the jailer of freedom and enemy of growth. -JFK
    1. Re:Whatever you want by HyperbolicParabaloid · · Score: 2

      I think there is a lot to be said for enjoying your work. Being in IT, we presumably are already in a field we enjoy, but if you like your work, life is better. (On the other hand, being able to food on the table is more important!!)
      An earlier poster noted that wireless devices are sure to be an expanding market, so some of the wirelss technologies, such as WAP/WML and J2ME (learn Java if J2ME doesn't mean anything to you.)
      Beyond that, predicting the future of IT is like predicting the stock market: it is a game for suckers. The only thing you can be sure of is if you are enjoying the technology you are working with.

      --


      -------------------------
      A person of moderate zeal
    2. Re:Whatever you want by duffbeer703 · · Score: 3, Interesting

      That is absolutely correct.

      The beauty of "IT" is that it isn't a static thing. If you like coding, there are a nearly unlimited number of things going on in different environments, languages, and projects. If you hate writing webpages in PHP or Perl, you can pretty easily transfer those skills into writing GUI applications in Swing.

      Administration is the same way, you have networking, unix flavors, windows, databases, etc...

      Of course finding a gig can be difficult, but jobs are out there.

      --
      Conformity is the jailer of freedom and enemy of growth. -JFK
  23. Learn all you can. by rob-fu · · Score: 3, Insightful

    I'd say get a firm grasp on .NET. I've been on all of the job sites lately and all I see is C# this, ASP.NET that, etc, etc. It's a Microsoft world, and, unfortunately, we're just living in it. My .02

  24. something radical for depressing times by linuxislandsucks · · Score: 2, Informative

    I am going to suggest something different, work different:

    Fin some thecnology problem that is interesting to you to solve thast you have no skills in, do the research, gain the skills, and solve the problem..

    If you do all these steps, the job wil find you..its alonger process than job hunting in a good economy but I think you may be more satisfied

    --
    Don't Tread on OpenSource
  25. Solid Generic Skills by tyagiUK · · Score: 5, Insightful

    Whenever I'm recruiting, I'd much rather interview someone who has a solid technical mind with a splash of creativity and self-motivation. This will go a lot further than someone with a bunch of paper qualifications but no true passion for the subject.

    Those who have self-motivation and a passion for technology, whether this is networking, MS Windows, Unix, whatever, will generally pick up whatever technology you throw at them. i.e. a solid investment for the future.

    --
    Contribute to the online videogame encyclopedia: GamerWiki
    1. Re:Solid Generic Skills by DEBEDb · · Score: 2

      If all hiring managers were like you, the
      industry would be a much better (not
      to mention fun) place. Alas...

      --

      Considered harmful.
  26. The new mobile phones by yatest5 · · Score: 2

    are all based on Symbian OS and if you can program that you won't be short of work for a while. See Symbian's web site for details. I'll let you work out how to find it.

    --
    • Mod parent up! [a] by Anonymous Coward (Score:5) Thurs, June 31, @13:37
  27. Get a Masters Degree in another field by SpaceKow · · Score: 5, Insightful

    Your running in a rat race... Get skills which will be almost timeless. Like Managerial skills...

    If you already have a bachelors, it will only take 2 years.

    Or start your own business...

    1. Re:Get a Masters Degree in another field by ffatTony · · Score: 2

      Your running in a rat race... Get skills which will be almost timeless. Like Managerial skills...

      I've been thinking about this lately, but what in reality do managers do beyond:

      1. strive to create the perfect power point presentation
      2. send scathing emails to other people in the company

      Being a mananger and thinking in terms of "resources" (e.g. thinking,breathing, talking people) is the way to be. Ignore that feeling in your stomach that urges you there is more to life. Money is all that matters and you and your MS Suite control the company don't you. Everythjing would fall apart without you, as you struggle to understand the seemingly esoteric language the developers speak in those wonderful meetings which you lead. Don't worry, Leading a meeting cleary means you're a winner! In any case, if no one else does; your Lexus still loves you.

  28. Learn new skills, unlearn the old by 91degrees · · Score: 4, Funny

    Firstly, forget C. This language is hardly ever used, so you might as well leave more room in your brains for something a little more useful. I'd also avoid learning Java. It's a mature language. Nobody is interested anymore unless you have at least 10 years experience.

    Up and coming technologies are the more specialised areas such as Occam and INTERCAL programming. People witht these skill are rarely out of work

    I'd also suggest singing lessons. A more formal working environment like that in IBM's early days is becoming typical, and as we all know, IBM used to have company songs. What better way of climbing the career ladder than showing this sort of team spirit.

    1. Re:Learn new skills, unlearn the old by Grab · · Score: 2



      You forgot to mention working out a bit, so you're in shape for all those group exercise meetings before work. ;-)

      Grab.

  29. Mobile computing by fredrik70 · · Score: 2, Interesting

    THis might be more appropriate for europe/asia, but I suppose the mobile messaging market is gonna explode in the states as well as it has done elsewhere.

    Learn stuff about SMS Messaging, including the protocols used (SMPP, CIMD, EMI, SEMA, etc, etc).
    Nokia got a opensource CIMD API, Logica got a OS SMPP API, both in Java, good place to get some code to look at.

    Also try to get into the MMS stuff (nxt generation SMS - gonna take a few years to break through - if ever!)

    good luck!

    --
    if (!signature) { throw std::runtime_error("No sig!"); }
  30. Start your own show... by heretic108 · · Score: 2, Interesting

    I've been self-employed for 7 years now, and wouldn't dream of going back to the paycheck.

    Hurts a bit at lean times, but it's better than sucking coc^H^H^Hup to idiots and trashing your self-esteem.

    With your device-level skills, you could team up with other IT-ers with complementary skills, have a few bourbons or cafe lattes or acid trips, whatever works for you, and brainstorm up some ideas.

    Put the 20 best ideas into a list, and sleep on them. Get together into a renovated garage and create something that'll blow everyone away. End up in a position where you don't ever have to touch a keyboard again (except where it gives you pleasure).

    --
    -- In the beginning was the WORD, and the WORD was UNSIGNED, and the main(){} was without form and void...
    1. Re:Start your own show... by Robber+Baron · · Score: 2

      you don't ever have to touch a keyboard again (except where it gives you pleasure).

      That's right! He should get into making pr0n!

      --

      You're using her as bait, Master!

  31. Mobile devices? by sql*kitten · · Score: 2

    In between I've done microcontroller development and programming in Assembler, robotics, graphics design and 3-D animation for TV, PC build and repair, Website design etc.

    You've got embedded systems, web site design and animation. That looks like a good fit for programming mobile devices, like phones and PDAs. 3G was an embarassment to all concerned the last time around, but phones are gradually getting better bandwidth, better displays, faster processors and more memory. This time around, telcos and vendors are going to know that adoption will be driven by real applications, not by trying to shoehorn PC applications like email and web browsing onto a tiny screen and keyboard.

  32. Smart guy! by martingunnarsson · · Score: 5, Funny

    Wow, he managed to get his job ad on slashdot! Ten bucks this will get him a job!

    --
    Martin
  33. Learn by ivanandre · · Score: 2, Insightful

    I think the best skill you can adquire is the skill you have now. The ability of learn new things.

    The IT field will always change, and because of it the best thing you can lear is the skill of learning new things. (uf)

    1. Re:Learn by PigleT · · Score: 3, Insightful

      Agreed, although some say this apparently gets harder with increasing antiquity ;)

      I would say there's another thing to be on the look-out for: abstraction. Someone who "learns Pascal" or "learns Fortran" or "learns C" might be said to be missing out on the general "knows how to program" aspect, which is far more employable. Likewise "knows web-design" is missing out on the fun of the open w3c standards and tagged-up text-processing tools that go with XML.

      Ask yourself what aspects of IT will be around in 10yrs' time.
      Windoze? No way. Linux? Probably not in any form similar to present. Cisco? Likewise, mutation expected.
      It's not worthwhile investing time and money for certification in any proprietary single technology. I'd say two key things that'll still be around are an understanding of SECURITY and of ETHICS. Read up on those - get to know security for what it is, and how best to apply it to a couple of current OSs, and work through the moral mazes of a few ethical questions, and you'll set yourself up for a longer career.

      $0.02. HTH.

      --
      ~Tim
      --
      .|` Clouds cross the black moonlight,
      Rushing on down to the circle of the turn
  34. It depends on how old you are... by DrDebug · · Score: 5, Insightful

    You sound like you have been around the block, more than once. If you are getting on in life (say, mid-fifties or older) you may find that it is more and more difficult to keep up with all the changes in technology nowadays. And learning a new skill is getting harder and harder also.

    Neverfear, it is just Mother Nature kicking in.

    The solution? Move up to (technical) management. There really *IS* a need for technically competent managers to guide the young hotshots. Your experience counts, even if you don't understand the latest and the greatest (have your hotshots explain it to you in their own words).

    Yeah, management can be a drag, stuck in the middle between the upper-level and the people who actually get things done; and good technical people don't necessarily equate to good managers; but it is worth looking into. Even if you wanted just to be a techie-nerd for the rest of your life.

    Of course, you could always become an instructor (assuming you have some communications skills) and pass your experiences and techniques on to the next generation.

    Just some thoughts...

    (From a fifty-ish longtime technical instructor)

    1. Re:It depends on how old you are... by OneOfThree · · Score: 3, Insightful

      Being on the older side of the average in this business, this comment had me seething...until I read the last line :)

      Age does not require a move to management. Management is a different set of skills, challenges and rewards. You should want all of this before you decide to take the step. Having tried it, I can speak from experience.

      I agree that there is a need for experienced technical managers to lead. But I also believe that there is a need for really good, seasoned programmers/DBAs/sys admins/etc to work with the "youngsters", lead by example and pass along some of the accumulated wisdom.

    2. Re:It depends on how old you are... by richieb · · Score: 2, Funny
      I agree that there is a need for experienced technical managers to lead. But I also believe that there is a need for really good, seasoned programmers/DBAs/sys admins/etc to work with the "youngsters", lead by example and pass along some of the accumulated wisdom.

      I agree that there is a need for technical mentors (I'm available :-)). This reminds me of an old riddle:

      Q: What's the difference between a leader and a manager?

      A: A leader has followers.

      --
      ...richie - It is a good day to code.
  35. Not what you know, but how you learnt it by OrangeSpyderMan · · Score: 2

    What OSes do I need to know, what technologies do I have to have under my belt for the employers to come hunting for me instead of me passing my obsolete CV around and being told to get lost?

    I don't know what jobs you have been looking at exactly, but generally people in your position are better off presenting their ability to uderstand and solve problems, rather than aiming at specific technology posts. The amount of skills you have should be presented to a future employer as proof of your ability to understand and solve problems, regardless of any underlying technology specifics (which will be farmed out to underpaid technology specific implementors:-) ). Perhpas you ought to think about Project Management qualification/certification, or Consultancy work. You'd be able to feed off your wide IT culture to understand the relevant technologies well enough to manage projects, and deal with a team of techno "underlings" :-), and more importantly this allows you to present a specific skillset on your CV that younger (and therefore cheaper) profiles simply won't be able to match. I think this is where the battle lies, otherwise you might well just spend your time brushing off "overqualified", "under-experienced" ("Yes, sir, I understand you have several years experience in, errr, Fourtran, is it? But we're looking for an XML guy, and you've never actually used that.") or "too expensive" objections.

    --
    Try NetBSD... safe,straightforward,useful.
  36. 3 things you NEED to know to help you decide by evodas · · Score: 2, Insightful

    1) Less and less software will be developed in US, just like less and less steel is produced. Unless you vote for that to change
    2) You must learn sales skills and, whether you continue to stay in code or truly move to sales, you must learn the #1 lesson of sales: truth and quality don't matter
    3) See your politics through your job prospects and your job prospects through your politics

    1. Re:3 things you NEED to know to help you decide by gfxguy · · Score: 2, Insightful

      You know, I realize that it is true that a lot of software development is moving outside the U.S., but, and correct me if I'm wrong, most software development is actually in-house products.

      Things like scripts for internal websites, specialized database programming for accounting, inventory, human resources, etc. Personally, I'm the sole developer in a television production studio. Our much larger company has a programming department, but my group has me for the really specific things they need quickly.

      Most moderately sized (and even small sized) companies need people like that... even if they hire freelance, it's often local talent. It seems to me that most programmers DON'T work directly on commercial software development. Since the needs of these smaller companies are very specific, they also don't want someone telecommuting - they want someone close to the business.

      --
      Stupid sexy Flanders.
  37. Try Busines by outofpaper · · Score: 2, Informative

    I curently studying busines, because it is all good and dandy to know how to write code but if you can only tell a computer what to do how far will you get. By Studing busines a person is opening them serves to the world of better self emploment and the option of posibly maneging thier own sucsefull busines.

    Befor going to schooll I hadrun my own web design company for a number of years. Seeing as I had started it just out of highschool I and it hadn't floped over the 4 years of it's life I think I did prity well for my self. Yet at the same time with the new thing that I am lerning about managment, I am realizing that while I was with the company I could have done so mutch more.

    If your the type of person who has some interpresonal skill ontop of you computer skills thik about busines.

  38. skills that don't go away and interests... by ACK!! · · Score: 2

    Ok, listen I am a sysadmin but this goes for almost all IT jobs.

    I got into linux before anyone was officially using it in the workplace.

    These were skills I wanted to use at work so what did I do?

    I learned the Solaris way of doing things and got Sun certified. Now, I do as much linux as I do Solaris and if you throw in a bit of the DEC Unix experience and BSD experience I got in one other jobs I feel like I make a pretty good all around Unix admin. They don't go away and will not for awhile.

    As a programmer, learn or bone up on your C/C++ skills and then learn something else related that interests you like Java. Listen java is not going away and it is not up and coming like linux was at the time but solid C/C++ skills have been useful since the languages first appeared. Get a good base in something and then branch out to things that catch your interest. That is the key.

    ________________________________________________ _

    --
    ACK /ak/ interj. 2. [from the comic strip "Bloom County"] An exclamation of surprised disgust, esp. i
  39. Resume Spin Control by Kiaser+Zohsay · · Score: 5, Insightful

    Your "obsolete CV" might serve you better than you think. With all of the skills you listed, there is an implied skill that you left out, that will serve you and your future employers better than any stack of certifications will.

    That is the skill of learning new skills. Flexibility and adaptability will always be in demand. Sell yourself on that.

    True, a lot of employers put together a laundry list of skills for each new position. But they rarely find people who are a perfect fit for those kinds of lists.

    --
    I am not your blowing wind, I am the lightning.
  40. What Do Want to Do? by OneOfThree · · Score: 2, Insightful

    You haven't really said what you want to do in the "computing biz". If you want to code, learn the flavour of the month language (Java, C++ or probably C#), OS (Windows or Un*x/Linux,FreeBSD), grab a couple of good books and start learning. Somebody with your experience will be proficient in 3 to 6 months. But if you want a career as a programmer, that's a lot tougher. You need to know the language, the OS and probably some other technology. But more importantly, you need to really understand how to design a software system and how to apply your technology toolkit to a problem. Being able to understand the problem domain, empathise with the customer and maybe even communicate with them helps too. IMHO, the art of what we do is in the design; the programming language is just a way to express, and manifest that design. It takes years to build up this level of proficiency. Programmers at this level are rare and worth their weight in gold.

  41. Re:Learn Java by theforest · · Score: 4, Informative

    Java. All you need is to visit Sun. Start with the tutorials, download the jdk, and get a decent text editor. Download Apache and Tomcat. Then move onto Netbeans if you desire a development environment. Nothing to buy. No classes to enroll in. No proprietary system to learn. No silly license issues to deal with. A great start.

  42. Constraint programming by TuringTest · · Score: 2, Insightful

    There is a new emerging paradigm for programing, Constraint Satisfaction. If you like to learn a new tool with an estimated important future and possibilities on AI, hardware design, logistic, expert systems, distributed agents and computer training, take a look at Constraint Programming Languages and CLIPS.

    --
    Singularity: a belief in the "God" idea with the "demiurge" relation inverted.
  43. Modern software design by CodeWheeney · · Score: 2

    I've found some of the biggest improvements in my career, lately, have come by reading and using two books: Modern C++ Design, by Alexandrescu and Generitive Programming by Czarnecki.

    IMHO, these two books are two of the most important books to be written in recent years. The first book is C++ specific, but the second is not. Both talk, in there own ways, about ways to improve software design and implementation by more clearly expressing design in code.

    I think that, regardless of your language or field of choice, the increasing complexity of software development requires that you move towards an expressiveness that is richer and puts more responsibility on the automated tools at your displosal to generate correct software. Modern C++ Design talks about doing this via C++ constructs like templates.

    Both will make you a better software developer, and both are time consuming reads. I think, with your breath of knowledge, that the important thing for you to do is to stay current with modern techniques of software design and modern implmenetation technologies. Languages and implementaion details should be something you can pick up quickly.

    Hopefully, you can find an employer who will value these skills.

    JC

    --
    C8H10N4O2 | Developer > Code
  44. Go for Mgmt by ch-chuck · · Score: 2

    If you started with mainframe / FORTRAN then frankly the old brain cells just ain't what they used to be (Hey, I'm 42 and it's happening here too) - it's hard to compete with youngsters who are quick on the uptake and plenty of cerebral elasticity. However, you have LOTS of experience. I'd leverage that into an exhaustive search for an upper level position with a big budget and ability to hire people to do the nuts and bolts. Of course it's dealing with people instead of bare metal which is a whole different world but I'm sure you can pick up public speaking, organization, etc. All you need is a vision, a plan of what you want to accomplish, something challengingly big enough, and farm out bits and pieces of that to others (consultants, contractors, temps, etc) while maintaining control of the system to fit your employeers IT needs. I.e., switching from a tactical to strategic career.

    For example, a Professor I've been exchanging email with, quite a successful guy, gets a lot done by handing it off as projects to students. He /could/ do tasks himself but anymore gets much more done thru others.

    --
    try { do() || do_not(); } catch (JediException err) { yoda(err); }
  45. hedging my bets ... by HealYourChurchWebSit · · Score: 2


    I'm hedging my bets. I've taken the pains to learn both .NET and Java (there are _some_ differences!-). I'm fortunate enought that I can use both at work. Then again, that's the reason I stay there.

    That said, perhaps a place to look-n-see what you might need to study are some of the tech job postings via a source like Monster.com or the Wash.Post tech page?

    --
    --- have you healed your church website?
  46. Security by elliotj · · Score: 5, Insightful

    With your background across different systems you sound like a good candidate for getting into the security game. As you might expect, this is becoming big business at the moment.

    Security is a process, so you wouldn't really have to learn much new technology. There's a lot of value in talking to someone rich in experience when it comes to security, especially if you're trying to secure legacy platforms.

    If that doesn't sound like fun and you want to stick with programming, I'd suggest picking up either Java, C#/.NET, or Obj-C/Cocoa. Learning these technologies will certainly keep you relevant and will probably be fun too!

    (Since you already know C, Obj-C/Cocoa would be really straight forward, and we can't have too many Mac developers you know.)

  47. India is not the whole problem by abhikhurana · · Score: 2

    "There are huge differences in salary between an Indian developer($8-$12) and his US counterpart(>$75000). Do the math."

    Firstly dude the average Indian developer of equivalent experience to the one making > $75000 would be earning about $20000 or more in India. And lets say that the company where this guy is employed will charge the US company about double his salary, so about $40000(thats the norm).Its less but not that much less.

    Secondly, did you know that there are more CMM level 5 spftware companies in India than anywhere in the world? And normally such companies produce extremely high quality code. Atleast that has been my personal experience. Ofcourse there are many small no-name companies too, which I dont know anything about.

    And I will say thats capitalism. I think the west preached capitalism to the developing countries mainly to get their markets open. Listen to what IMF is always telling Argentina and other such countries. So effectively capitalism is fine as long as the Western companies get access to developing world market, as long as they can charge the developing world high proces for their patented drugs and things like that, but when the developing world tries to do the only thing it can do, i.e, provide cheap and qualified manpower, the west starts having problems??

    1. Re:India is not the whole problem by FatherOfONe · · Score: 4, Insightful

      Well speaking for some of the "West". We have NO problem competing with India on codeing, however we pay 60% of our income in taxes. Those taxes go to pay for stuff here in the west. Those coders over in India don't pay anything! So much like cars that are taxed on import, code should also be taxed. Will this happen? No. Will Unions happen? Yes.

      The real problem is greed. Do coders over here deserve 70+k a year? Most don't. However, does top management of companies over here deserve >100k/year? Very few do.

      That management wants to protect their jobs and salary so they see an easy solution. Farm out all development to slave labor err I mean India.

      Now if that development out of the country was taxed at around 100-160%, then both sides would win. The Indians would still get some jobs, the "West" could comete and still pay taxes over here for schools and hospitals etc.

      --
      The more I learn about science, the more my faith in God increases.
    2. Re:India is not the whole problem by FatherOfONe · · Score: 2

      Well this has been closed for a while now, but I can't let this die.

      You said
      "You sound more pissed off you are not making money from the skills and talents that the Indians have provided the IT sector. Stop whining like some labor union and get involved and leverage the skill sets found abroad."

      First, I do make a considerable amount of money for my talent in I.T. I am willing to bet that you have NEVER built ANY system, or for that matter have NEVER coded a system with more than 100 lines of code, and HelloWorld with 99 lines of comments doesn't count! What you need to consider here is that people who design systems for companies need to know the business BETTER than the rest of the business. The developers have to know EVERY aspect of the system. When a greedy cost cutter decides to outsource that work to India, two things happen.
      1. The intellectual property that was created for that company is generally used for other companies without their consent. The ethics used by these companies isn't great. So code developed for your company will probably be used for your competitor.
      2. When the company in the "West" comes to the conclusion that it doesn't make sense to do business this way, and they decide to bring it back, there will be few coders here left to do the work, that have experience with it. Specificaly, there will be no lower level or mid level coders. So the cost of finding someone will be high. This will help cement India development for some companies.

      Your second point/question says do we want to subsidize? YES!!!! Do I want Unions NO!! You come to the conclusion that the both have to happen. I think your example of farmers is an excellent one. If we choose to kill off all of our farmers because we can import the food cheaper, by slave labor mind you... then we are setting ourselve up for a huge problem when the likes of Mad Cow hit that country. You can fool yourself into thinking our FDA would catch it!

      But both food and steel need ships and labor to bring in to the "West". That cost money and time. Code takes NOTHING!!!! That is the core difference between these commodities. Yes code is a commodity.

      Lastly you say that there is a problem in the education and views in the US. I somewhat agree that there are issue in the educational system, but that has little to do with this discussion.

      I will go back to my original post. The real problem is greed.
      You say
      "With different time zones, good skill sets, and common languages, you can really grow a business with outsourced development. Many startups now use this as a model for quick entry into the market."

      WTF?? I have worked with and for many startups and have found NOBODY that has used this model for success. Name ONE company. I can show you a ton of companies that are testing the waters of it now, and it isn't going well. The problem is that it will take years to switch back.
      I can point you to a HUGE number of companies that will come in with a "Project Manager" and "Requirements Team", talk with people for ~1-6 months and then plan on giving a "Solid" design to let the slaves... er... I mean Indians do the coding. How are these companies doing? Most are not doing so well.

      Again, I pay taxes that go to this country. They do NOT. Someone like you I imagine, is getting the extra money from this slave er.. I mean Indian labor.

      This isn't my main point though.

      I pay taxes on stuff I do here. They do not. That is wrong. Using your thinking it would be ok if I took prisoners over here and let them code, then sold that "service" to people for near free. But I have a feeling that you would be all for that!

      --
      The more I learn about science, the more my faith in God increases.
  48. Break out of the "techie" mindset by shoppa · · Score: 5, Insightful
    What you probably need more than anything is to break out of the "techie" mindset. I agree, it's great fun to write code and solder hardware together, but there's only so far that these skills will take you in the corporate world.

    I'd recommend that you either go into systems engineering (that includes architecture and can include business-process re-engineering) if you want to stay technical or go for an MBA if you want to plunge into the business end.

    1. Re:Break out of the "techie" mindset by shoppa · · Score: 2

      You've got to break, in particular, out of the HR Department's mindset that you are a techie. That is, if you actually want to get out of the dungeon of coding C all day or making forms for Visual Basic. Maybe you don't, you seem to enjoy it.

  49. You can try my approach.... by Ixe · · Score: 5, Informative


    Take this advice at your own risk:
    This requires that you are really crazy about technology, but so far it's been working out ok for me.
    Learn everything and then master one part at a time.
    Read/Skim a lot of books. No, I'm not saying RTFM, I'm saying there are many good books out there that can get you up to speed quickly (don't need to waste time and money on fancy classes-though perhaps it would be worth your time to get certified in a few areas [RHCE, MSCE, and A+ is a powerful combination])Be fluent in M$ Windows (9x/NT/2k/XP), OS X, and Linux/UNIX and be able to code with some decency in Perl, C++, C#/VB, PHP(or ASP I suppose), and XML per say. You can pick and choose to favor your interests somewhat. Once you have something like that going, then you peek at the market out there, to see what the 'big need' is. Say it's XML devels-then you get the job, because you know your XML enough to get in, but while you're there you specialize in that so they don't give you the boot. The key is to have many skillz in many areas so you are "multi-purpose"

    I think a lot of people will disagree w/ me and say that this requires too much time and is a waste if you only need to learn one skill to get a job. On the contrary, so far this has worked for me, and as long as you stay up on what you know (DON'T FORGET EVERYTHING YOU KNOW JUST BECAUSE YOU DON'T USE IT!) and get educated about the latest and greatest technology, then you will never need to "start from scratch" (like perhaps where you are now) you will simply need to master another area.

    Example:
    If you get a job as a web devel, your *ML skills will become excellant along w/ perhaps your PHP/MySQL and JavaScript abilities. However, if you don't practice them, your sys/net admin skills will waste away along w/ any others you let the dust collect on, so be sure to keep up your other skills at home, such as linux/perl. You could say, set up an automated backup server on your network or something.

    This prevents you from forgetting everything and it lets you have some fun w/ other technologies then your forte.

    Perhaps why this approach works for me is because I am an exicted engineering student w/ a lot of projects. (how many other people have their own linux based MAME in their basement and a music server in their car?)

    I hope that's good advice, again, depending on who you are this could help you or confuse you. GL

    --
    Sigs pose an operational security risk and help the baddies aggregate data. I guess commenting does too, oops.
    1. Re:You can try my approach.... by krinsh · · Score: 4, Insightful

      Perhaps why this approach works for me is because I am an exicted engineering student w/ a lot of projects. (how many other people have their own linux based MAME in their basement and a music server in their car?) This approach works for you because you don't have a wife and three kids who desire some of that time for them to get attention and affection. I bet many of us here that attempt some semblance of pet projects do this in lieu of home improvement-type work and have to balance their self-learning with their family. And it is a balance; you love them and should expect that they want to spend non-geek time with you.

      --
      I think with the interesting people, their lives can't possibly be wrapped up into a nice little package.
  50. ageism by peter303 · · Score: 5, Informative

    Your skill base mentions technologies from over 20 years ago, so you are probably pushing 40 if not over. The tech field is very ageist, presuming near senility over 35 or so. Yet another NY Times article complaining about this.

  51. Ecommerce by msheppard · · Score: 3, Informative

    My recommendation would be eCommerce and all that revolves around it: Here's some ways to get started:

    You'll need to know how to work in a operating system that runs on servers. Maybe install and get used to working with Linux?

    If you don't know how webserver's work, now is a good time to install one and play with it, how about Apache?

    If you don't understand the scripting languages that make the internet work, learn one, how about PHP?

    If you're not at least a little familar with how datbaases work, you should at least know how to get info from a database to a webpage, why not learn some SQL, so install and play with a database, how about mySql?

    With a few more basics (security + content management + etc) you're now fairly versed in what you need to develop websites using LAMP (linux + apache + mySql + PHP)

    The best part, you don't have to spend a dime to use any of these technologies. They are all free (as in beer). What I really like about all these technologies, is the ammount of documentation and help you can also find for free. Be sure to kick back a little, answer a couple questions after you've found a few thousand answers.

    And if you need links to find mroe (alias more mroe) info, you haven't heard of google. (i.e. look for LAMP)

    M@

    --
    Krispy Cream is people
    1. Re:Ecommerce by oliverthered · · Score: 2

      capitilism.

      --
      thank God the internet isn't a human right.
    2. Re:Ecommerce by oliverthered · · Score: 2

      BTW: What are you writing VBA marcos for (e.g. word, Excell, LookOut).
      There not that hard (infact very easy since you can record and edit them if you can't remember how to do something).
      If you have a problem with VBA then the changes are you'll have a problem with any reasonable size development, this isn't to say that you problems can't be overcome.
      unless you use JavaSript in ASP (like I do) then there's not much diffrenace between VBscript and VBA.

      --
      thank God the internet isn't a human right.
  52. Not so old by Ektanoor · · Score: 2

    For those who came from Pascal's golden years and later, FORTRAN may look as some crappy language that once fed iron dinosaurs. Well, some years ago I got convinced that this is not the way things are. FORTRAN is still a language that is in high demand. However, in very specific but very hightech areas - main supercomputing and clusters. As far as I see, there is a big lack of experts, here as many good FORTRAN gurus are in their late 50's and early 60's and unwilling to get back to the rooms. Anyway, if you are skilled in FORTRAN and willing to remember your old times, maybe you should try something on this field. Surely it will not be exactly like old good times. Things changed a lot since then, and there are a lot of new things to learn. But your FORTRAN skills may be an arrow that will put you ahead of many younger candidates.

    BTW I saw a small job fever in one organisation when they set up a small cluster for chemistry analysis. They could not find anyone younger than 34 to catch the task of programming the monster. The guy who went there, passed 3-4 months blaming the skies for the headache they gave him but later was happily playing the role of guru...

  53. Re:OSses to know... by mr_z_beeblebrox · · Score: 2, Insightful

    Tragically, it looks like the only OS you'll need to know is Window$

    Not at all true. As an IT manager in my shop (which is fairly typical) we have a lot of 98 desktops but the new ones all have XP (MS first good OS IMO) this OS is very different from 9X series so get a little familiar with it. We also use Unix (AIX and Unixware) as well as Linux. Most other MIS guys I talk to have similar content though maybe different flavors.

  54. Mobile Java by oliverthered · · Score: 4, Insightful

    The next big thing will probably be mobile application for PDA's and Phones and anything else, so I'd learn Mobile Java next.

    --
    thank God the internet isn't a human right.
  55. Well the future of programming. by jellomizer · · Score: 3, Insightful

    Without actually naming language. You need to find methods of producting stable quality code more quickly. Get use to OOP Programming. You have to realize now that computers are getting smaller faster and cheaper it is the fact that it is now cheaper for a company buy a less efficient program that took less time to make then to buy extra hardware to to make the program run faster. So brush up on styles of programming that improve programming speed then working on ways to make you code more optimized. I like nicly optimized code as much as the other person but you have to realize if it takes you an extra week to code at $85 an hour that is an additional $3400 in the cost of the program. Which may or may not be broken up by multable purchacers. But if you are making a custom application for 1 customer. That extra week to make the code run 25% faster cost as much as a second systems that can split the work load and make your code twice as efficient.

    --
    If something is so important that you feel the need to post it on the internet... It probably isn't that important.
    1. Re:Well the future of programming. by TheSync · · Score: 2

      You need to find methods of producting stable quality code more quickly.

      Well, I don't know about "stable," but I hate to say it that the combination of ASP.NET and C#/.NET allows for very fast development of a wide range of Web-enabled business applications.

      Alternatively, there is Java J2EE application server world if you really need serious "amazon.com" style performance.

  56. I only need one tool... by twoslice · · Score: 2

    ...using primary buffer
    2 channel(s)
    16 bits/sample
    ---- sound initialization ----
    Initializing DirectSound
    Creating DS buffers ...using primary buffer
    sound sampling rate: 22050

    === InitGame ===
    --- Server Initialization ---
    27 entities inhibited
    1 teams with 2 entities

    Changing map...
    reconnecting...


    Outer base
    ]give all
    ]give cells 4323313
    ]USE BFG10K

    In all seriousness though I have used Assembler almost exclusively for over 20 years and it has never failed to get me bucks...

    --

    From excellent karma to terible karma with a single +5 funny post...
  57. Alot of helpful advice posted so far.... by _LORAX_ · · Score: 2


    From the masses of laid off geeks that still have enough money in their pockets to read slashdot!

    Cmon... how many of you have real jobs? ;->

    1. Re:Alot of helpful advice posted so far.... by dasunt · · Score: 2

      I reject that! I don't have any money in my pockets.

  58. Become a manager. by kevlar · · Score: 2

    5-10 Years from now the likelyhood of anyone in the US being able to write software AND be paid enough to live looks very grim. Become a product manager or development manager. Its every developers hope at ever having a decent salary again.

    1. Re:Become a manager. by TheSync · · Score: 2

      I think the threat to US programmers from off-shore programmers is mild, but not something to be ignored. I've heard lots of horror stories about working with Indian development teams, but I'm sure they will start to get it right soon.

      As an American or Western European, your primary value add is where you are helping effectively translate business opportunities into revenue. This includes entrepreneurial activity, effective management, sales, and business development.

      I've said this before, the days of the black t-shirt smelly hacker who can't talk to non-technies is coming to an end. I've made the transition myself...hair much shorter, lost weight, became an engineering manager, and oh god, I'm wearing a tie!

      Alternatively, you can move to a third-world country...cheaper to live there, and much better Indian food...

    2. Re:Become a manager. by kevlar · · Score: 2

      Yes. This is precisely the problem with LOTS of people just out of college. Companies are only hiring people with 4+ yrs experience. 4 Years from now they'll only be hiring people with 8+ yrs experience. There's a significant event horizon here thats completely obliterated our college grad's chances of getting a job. I'm barely hanging on to the sector... :(

  59. Keep an eye open for trends by Observer · · Score: 2
    I'm looking for advice, not just for next week but for a few years down the line. What can I do to acquire these essential new skills?
    Even when you're securely (as far as you can tell) employed, keep on reading the trade press and scanning the job ads. If a new topic starts making an appearance and it's one that you would consider working with, investigate it, do self-study, if it looks sufficiently promising consider shelling out for paid courses, if you can find any.

    No guarantee that any of the knowledge you acquire will actually be something that you will use, but it may make it less likely that you experience the sudden realisation that your current skillset is past its sell-by date and that unless you have at least some familiarity with newer stuff then many employers are going to automatically drop your application at the first filtering stage.

  60. Re:MOD PARENT UP, he/she's right! by kisrael · · Score: 2

    I wonder if businesses will ever wind up realizing that with the India import programmers, you tend to get what you pay for.

    I'm surprised how true this has held up. Don't get me wrong, about 1/4 or so of the Indian developers I've worked with have been topnotch--and, as far as I could tell, paid about as well as me. But those other ones? Terrible, terrible developers. Between the language barriers and a general scattershot approach they to every problem, they're really worthless.

    --
    SO YOU'RE GOING TO DIE: The Comic for Dealing with Death
  61. Re:Read Dilbert - - Okie Dokie. by simetra · · Score: 2

    Programming a desktop computer is not as promising as administering a cluster of Sun E10k...

    Fortunately, 90-whatever percent of businesses and users use clusters of Sun E10k, and not desktop computers!

    That was sarcasm, incase you were wondering.

    --

    "Would it kill you to put down the toilet seat?" -- Maya Angelou
  62. Forget chasing technology by Alethes · · Score: 2

    I've said this before on a similar Ask Slashdot, but really you should figure out what you want to do regardless of the technology used. Don't try to keep up with the latest buzzwords. It will only lead to frustration (like you're dealing with now), and you'll get a lot more satisfaction from accomplishing the real goals you have in mind that are independent of the method used to accomplish them.

  63. No, it really depends on who you are applying to by zaqattack911 · · Score: 3, Insightful

    As always, especially in the tech industry the best thing you can do is tailor your resume to the specific place you are applying to.

    Yes, this takes more time than emailing the same resume 1000times to different places.

    A large company (like IBM), might want to see you as a specialst in one particular aspect of programming. Like an expert in C, and compiler design.

    I'd think a smaller company might want to see more of a "Jack of all trades". C/Java developer, web applications, Unix administration.

    Worst thing you can do, is assume you know what MOST companies are looking for, and tailor a single resume because of that.. or make generalizations such as "They want quality, not quantity". Many BIG companies would rather hire newbies for less, and train/MOLD them into the skilled guru they are looking for.

    Of course add in the "economic slump" factor.. and things get a bit more difficult.

    Perhaps the "Iraq" factor, will smooth the economy a little :)

    --noodles

  64. SAP by 12013 · · Score: 2, Interesting

    SAP if you like to use business and computing skills

  65. Obviously... by Hard_Code · · Score: 3, Funny

    You have to leverage your existing skill-based assets to synergize with strategic technical learning opportunities so that you are empowered to become the mobile information architect of the future.

    Duh.

    And case mods. Make sure you have lots of case mods. Those are cool. You can be a web typist in no time!

    --

    It's 10 PM. Do you know if you're un-American?
  66. Don't do what they teach in school by gosand · · Score: 5, Interesting
    I made the choice about 8 years ago. When I got out of college in '93, I took a job at Motorola. I had a BS-CS. My entry level position lasted about a year, I was doing build/configuration management stuff. At the end of that year I had proven myself, and they said I should decide what I wanted to do next. I had two choices - development or test. I knew how to code, as most CS students fresh out of college do. I had gotten to know both teams of people, and I chose the test side. I have been doing it ever since, and it has served me well.

    A lot of people consider it to be a stepping stone position, where you put the new developers so they can get an overall idea of the product. I don't. That is good for me, because companies want people who are serious about the position. They don't teach QA in school, they teach programming. I went with the odds that I wouldn't be fighting for my job every year against a fresh batch of bright-eyed programmers.

    Some people aren't suited for QA, others are. I think I am, because I get to problem solve quite a bit, and even write a little code. I am currently working on QA process, and test automation. You get to really be anal-retentive and picky, which I am good at. If you program, you only know X number of languages, but I can test pretty much anything you throw at me. My job is based on methodologies that I can pretty much apply to anything. I admin my own Linux system on my home network, which I find really interesting, but I don't think I want to be an admin. But it helps me when I need to talk to the admins, or other tech people I come across in my job.

    No matter what your job is, I think you should always pursue what you really like outside of your job. Maybe they are the same things. Develop YOU, because no matter where you work, you will have to interact with other people.

    --

    My beliefs do not require that you agree with them.

  67. Wrong! by ChaosMt · · Score: 3, Interesting

    As such and admin, let me summarize the market condidtions:
    Admins: 4 for a $1
    Programmers: $2.49/lb
    Seriously, there's not that many people left that *need* admins any more. They are either huge and already well staffed, or they are small and have their programmers do the admin work. Putting people out of work by automating their job is ALWAYS in season; it's computing's promise to the capitalist. This includes automating IT, and as such, IT IMHO is a doomed career choice. Think of all of the "computer operator" positions that used to exist. That has almost disappeared, and very soon, so will the network/system/database administrator positions.
    So ignore his advice about being a sysadmin. Let me add my advice; it's not what you know, it's who you know. Trusted human networks are far more profitable than trusted computer networks.

    1. Re:Wrong! by Neil+Watson · · Score: 2
      Admins: 4 for a $1
      Good Admins: Priceless.

      You will always, need administrators to watch over the network as it changes and grows.

      I'm sure the same can be said for programmers.

    2. Re:Wrong! by Fjord · · Score: 2

      Maybe it's that way where you're from, but around here (NW florida), a junior J2EE developer at $70K can become a senior J2EE admin at $80K, and all you're doing is deploying shit (and meetings meetings meetings). Senior J2EE developers are only making $90K-$100K, down from $110K-$120K.

      A agree that it may not be a wise career path, though, on account of the lower top pay and your evaluation that these job have a higher risk to become more and more phased out, like "computer operators".

      --
      -no broken link
  68. 3 options by Action_Jax · · Score: 2, Informative

    There are 3 main options you have here in order to stay in IT and do the type of work you love:

    1. Read the Market
    2. Lead the Market
    3. Find a Niche

    1. Read the Market
    This is probably the easiest but involves a lot of research and retraining on your part. What you do is find out what the HR types are looking for and acquire those skills. Sounds hard? Well its not as hard as you may think. You go to a load of job sites e.g. Dice, Monster, etc. and find which skills are consistently requested e.g. for a Support Analyst typically a CCNA, MCSE, etc. and then train yourself up in these skills making sure you back them up with real experience of using them in either a paid or voluntary role. Do this you are essentially a market trend follower.

    2. Leading the market, now this is a bit trickier you essentially have to predict what is going to be the next "big thing". This carries some risk because there are a lot of "silver bullet" technologies that never make it off the ground or take years to come into their own. Your best for finding these is to read the industry press, check what the analyst are saying or look for the early adopters of that technology and carefully research the benefits they acquired from the technology and evaluate whether it's a "good thing" to press ahead with.

    3. Find a niche, there is quite of lot of this about and your skills may be best suited for it, there are still a lot of shops running legacy technologies or very specific vertical industry applications e.g. Geology s/w, Automotive s/w. You'd be amazed how many shops still run cobol and in Y2K those old cobol programmers came into their own again, so a cobol programmer with a second high level language and a specialism in migrations would be worth their weight in gold when there are changes in the legal or economical framework of an economy e.g. Europe and the implementation of the Euro.

    I've been in IT for 9 years and I have to admit that from my point of view experience is king and counts for a hell of a lot, in fact its amazing how much experience of these older technologies helps you when migrating to these newer technologies (as they say there's nothing new under the sun).

    But now you have a new adversary i.e. the HR team who have no idea about IT and all they do is look for those certifications so you need them to get your foot in the door (yep I know its a pain).

    You also have face the what certification has done to the industry a key example is the MCSE once regarded as a high level certification now regarded as a entry level one, Microsoft and the industry in general really screwed the pooch on this one, they really should have got the MCSA out the door before the MCSE now we've got a huge back peddling job going on while trying to re-alter the perception of the MCSE.

    Next you have to face the IT manager who really needs 3 people but because of cut backs he can only have one, so what does he do? He lumbers "all" his requirements into one job spec.

    All the above combined with the sheer number of people you are competiting against with the same or similar skills because of a soft economy doesn't paint a pretty picture but you can survive if you play it smart, ditch a bit of pride and box clever (we are no longer the Princes of the Universe)

    Its hard being in IT at the moment and its going to get harder coming up to Christmas so I wish you luck matey

    -Martin

  69. Two words, my friend. by Blackheart2 · · Score: 2
    Ball bearings.

    Come on, guys, it's all ball bearings these days!

    --

    BH
    Fools! They laughed at me at the Sorbonne...!

  70. teach. by werdnab · · Score: 5, Insightful

    Those that really can, teach. You have a wide variety of experience and knowledge, why not pass it on the to next generation.
    You will stay cutting edge and help a few young folk to not make the same mistakes you once did. You will learn the newest technology from them, too.
    I'm amazed how much I've learned from students. It is sometimes a challenge to keep up with their knowledge, if sometimes misdirected. Above all stay openminded.

    1. Re:teach. by sv0f · · Score: 2

      Those that really can, teach.

      Those that can, do.
      Those that can't, teach.
      Those that can't teach, teach gym.

  71. Employers don't always know what they want. by mgkimsal2 · · Score: 2

    I distinctly remember job hunting in late 95, and I saw an ad in the paper that wanted someone with 5 years Java experience. I wish to goodness I'd kept that newspaper section. :)

  72. Re:Don't think you're skills...(comment on thread) by zanerock · · Score: 4, Insightful

    This thread is interesting, and shows the dichotemy between "what should be" and "what is." I would say that the underyling problem is not the questioner's skills, but (as some have alluded to in the HR-filter for keywords comments) is the mindset of businesses.

    What most fail to realize is that 5 years in a single tech is probably a bad sign. A "better" programmer would probably have gotten bored and moved on, or moved on because it's highly unlikely that a single technology remains the best solution for that long a period of time.

    My advice would thus be this: if you're good, don't worry about it. It takes a few days to pick up 98% of any language/tech., a few hours to learn 98% of the commands and interfaces for an OS etc. (unless you're administering the thing, which takes us back into the few days bit). So, just skim a Java reference, a Linux book, etc. and throw them all on your resume.

    If you're not that good, you can hang yourself with this, but, then again, most companies don't know what they're doing with tech anyway (even the experts within the company), so you can get away with just being mediocre.

    And, if you find a company that thinks the right way about technology, they'll understand it's a fluid thing and they'll be looking for smart people, not people who've memorized wasted their time memorizing reference books that are available for $20 or online for free.

  73. Re:hate to break it to ya... by Doom+Ihl'+Varia · · Score: 2, Interesting

    Wrong, small wars are good for the economy. Weapons need to be made. That means General Electric gets a nice check for a few bombs. People will be hired to transport these weapons. People will be hired to obtain the raw materials. People will be hired to design new weapons. Contractors are hired to do all sorts of things for the economy. More soldiers means more people taken out of the civilian job market. Dead soldiers are taken out of it permanently. We are doing imperialism the smart way here. We conquer without conquering. We get the benefits of controlling say, Afghanistan, while the local government takes care of the day to day details. It's markets and natural resources are ours for the taking. War and imperialism may not be ethical but as long as it doesn't force us into a so-called "war time economy" and we come out victorious, it is good for the economy.

  74. why not send work to India? by Bill_EEE · · Score: 2, Insightful

    Though I resent that a lot of jobs are sent to India these days, and I do agree that Indian programmers are no different than programmers in the United States, it is just short sighted to say that you will NEVER send work to India. I believe that the problems that are legion in the software industry will crop up in India as well. I have always seen that a very few software developers do the lion's share of the work. Why would this be different in India? There are obviously a lot of very capable Indians who will be able to crank out the golden-code. Our industry is plauged by being run as if it is a Fuedal enterprise. We have money-managers and bankers who promote hack-coder-psycophants to management. These butt-plecos don't want competence, they want loyalty. They hire people are generic programmers based upon the number of years in the industry that a candidate has. And they have destroyed the American programmers by putting our jobs in India. But they build the same kind of fuedal businesses in India (Indian are big into caste system, "were better and higher born"). But since fuedalism is a brain-dead philosophy, and since competence always wins out, all we need to do is to wait and the jobs for the good programmers will return. The fakers and the frauds will be exposed. We are only part there now. Scandals keep cropping up, and the bankers (ie the 'fuedal lords' of the modern day) knee-jerk and lay off everyone. There will be programmers working in India and in the United States. There will not be these fuedal work farms with the cadres of generic programmers. The competent programmers will return. So, don't blame the Indians for a fault in the way that capitalist bussinesses are run. There were so many software jobs because the venture money whores do the math: each 'prgrammer' added so much to the bottom line of the valuation given to the money mongers at the banks. And then they could go to the IPO with a larger value. The whole scheme is fraudulent and all of us programmers got burned in the process. They threw away all of the gems with glass (ie there were a lot of fakers in our industry, admit it, who couldn't code or design software) The diamonds are still diamonds. And bankers and money mongers being greedy, they will sort through the rough of the diritis of what they have done and pull out the valuble programmers from the mix. So don't dispair, all of you good programmers. But also, don't blame the Indians. There are obviously a lot of very awesome 'diamond' programmers there as well as the fake 'glass' programmers. Keep your chin up, this stuff isn't over. There will be a lot more layoffs before things turn around. And if there is a war, we don't know what will happen. What we need to do is to keep programming, keep our skills up and also to debunk the management model that has lead to this dispairing situation.

  75. Long term approach.. by wxfield · · Score: 2, Insightful

    Find a good University that has a large variety of CS classes for continuing education. Enroll each and EVERY semester. Stick to it. Make sure the programs you select are challenging, interesting and relevant. Don't stagnate in a job that is often a one-trick pony..You need to find knowledge outside the pigeon hole of work.

  76. Re:India by Creepy · · Score: 2

    I think the outlook for software dev in the US is looking increasingly dim. I've watched more and more layoffs at my company and more and more outsourcing to India to cut costs and keep up with development schedules. Most of the people I know who were laid off have not found a new job in the industry. Other Engineering (Electrical, Mechanical) careers are fairing much better because the dev work is done in the US and only the manufacturing in Asia. For instance, I was looking at a couple of med-tech companies ('cause I dislike working for anyone with "routine" layoffs) and all either one wants is EE majors (and most of these are for programming positions, because that's what my search hit on). Med-tech at least is mostly stuck in the US because our high prescription costs pay for the R&D here, and proximity to R&D is important for most of the rest of the industry. When I looked last week at available programming jobs, all I saw was a couple for COBOL and three senior positions that required 10-12 years of programming experience(which I don't have). At least the poster might be qualified for those.

    It's sad, but we're watching the computer industry do just what the clothing industry did in the 80s - move to the cheap labor of Asia.

  77. Smalltalk, no thanks by jlusk4 · · Score: 2

    Ya know...

    I recently came back to Smalltalk (Squeak, specifically) after being away for a few years (10?).

    Yuck. No thanks. This realization pretty much slapped me in the face: it's a scripting language. It's essentially untyped, transforming all your type errors into runtime occurrences that depend on dynamic data. Ewww. I want my compiler.

    1. Re:Smalltalk, no thanks by ChannelX · · Score: 2

      a scripting language that is responsible for running lots of important financial systems. People always rag on dynamic binding/typing in Smalltalk and they always come up with the same lame reasons why it sucks.

      The development style of Smalltalk is completely different than the development style of a compiled language like C/C++ (or Java for that matter) and that has to be taken into account when talking about bugs, etc.

      Fact is that Smalltalk is very easy to develop solid code in and people have done so for years.

      --
      My blog: http://jkratz.dyndns.org/~jason/blog/
    2. Re:Smalltalk, no thanks by hding · · Score: 2

      It'd probably be more accurate to say that what you want is your static typechecker, not your compiler, given that Smalltalk (and many other dynamically (yet strongly) typed languages, e.g. Common Lisp) are typically compiled.

      Nevertheless, your concern is not without any merit. People who take to dynamically typed languages don't seem to have the problems with type errors that those who do not think they would, but if one has a problem it may well be better to stick to something with static typing. In any case, the whole static/dynamic typing issue does not, IMHO, obviate the usefulness of Smalltalk for getting a handle on OO concepts.

    3. Re:Smalltalk, no thanks by jlusk4 · · Score: 2

      (ChannelX and hding engage in some belittlement of my need for such a "crutch" as static typing, and I find it difficult to leave it at that for future potential employers to discover. :)

      Smalltalk runs financial systems. Good code can be, and is, written in Smalltalk. Smalltalk isn't untyped, it's dynamically typed. Smalltalk (BASIC, LISP, PROLOG, Java) can be compiled, Smalltalk doesn't have performance problems.

      Noted, y'all. I knew all that.

      I stand by my statement, however. In spite of all the above wonderfulness, you're still discovering errors at runtime, rather than before. This is how that XP unit test thang got started. (Actually, never mind the unit test thang, this is how that whole XP thang got started. Pair-programming (grizzled vet/neophyte) and all. I might even make the point that Smalltalk requires XP, if I felt like taking even more time off from work to compose this.)

      Sure, it can be made to work, but I feel the opportunities for problems are greater than in statically-typed languages. Allow me to bring up Haskell, one of whose primary concerns is static type determination and checking (in addition to all that functional blah-dee-blah).

      Also, I'm not sure what ChannelX meant about knowing about the language before discussing bugs (predicting frequency and severity?), but I've never really been able to convince a user that a bug is less serious because of my choice of implementation tools.

      I do, however, totally agree that Smalltalk is a great way to get started on the O-O paradigm. Leave all that C bullshit behind and start w/a blank slate.

      John.

    4. Re:Smalltalk, no thanks by jlusk4 · · Score: 2

      Damn. I posted this before I saw the "Questioning Extreme Programming" story. Honest.

    5. Re:Smalltalk, no thanks by hding · · Score: 2

      My apologies if you took my statement to imply that you needed static typechecking as a cruch. The fact of the matter is that we all have things that cause us problems and things that don't, and things that emphasize our strengths and things that don't. I personally have an easier time creating robust, useful software quickly in dynamically typed languages like Common Lisp and Smalltalk. Other people can do it better in things like Haskell or ML (which the language of that vein that I am most familiar with). I find that dynamic typing helps me a lot more than static typing. YMMV, and in fact probably will.

    6. Re:Smalltalk, no thanks by JamesOfTheDesert · · Score: 2

      It's essentially untyped, transforming all your type errors into runtime occurrences that depend on dynamic data.

      OH NO! It's untyped! Run away!

      I want my compiler.

      Sounds like you would be most comfortable with, say, Pascal.

      --

      Java is the blue pill
      Choose the red pill
  78. Just master the most important skill. by jafac · · Score: 4, Insightful

    Networking. Not computers. People.

    I was recently laid off, and I just got a new job yesterday. Out of the dozens of places I applied at, only one even bothered to send a rejection letter. (plus another one sent a rejection email).

    Where did I eventually get a job?
    A place where a friend works, and pulled some strings for me - they looked at my resume and created a position for me.

    Yes, I realize that I am very, very lucky - but it just goes to show; that if you aren't exactly what someone's already looking for, and if you aren't exactly the strongest candidate, your chances of actually getting a job, whether you have all the skills you need, or whether you're so technically good that you can pick up new skills in a trivially short time, are exactly zero.

    --

    These are my friends, See how they glisten. See this one shine, how he smiles in the light.
    1. Re:Just master the most important skill. by perfessor+multigeek · · Score: 2

      Well.......
      User groups. Bars (yes, there are tech bars), church or synagogue (if you are so inclined), political activism, volunteering, temping, getting a scut job (a.k.a. working in a bookstore, restaurant, or coffee house) that puts you in contact with good folks.
      You have to be creative.
      Of course, there's always that teeny leetle problem of making enough to pay rent and such while working the scut jobs and doing the volunteering and hanging out with the people who can get you the real jobs. Can't help ya there. Try putting fresh lime juice, peanut butter, bean sprouts, and scallions on your ramen. It'll taste better.
      Anyway, you're in northern CA? Have you tried Craig's List?
      Rustin

      --
      Data is the lever, rigor the fulcrum, brains the force that drives it all.
  79. Re:Learn Java by Erbo · · Score: 2
    And then you can move up to JBoss if you want to learn about EJBs and other J2EE concepts. Still no expenditure required. Also, learn Ant; for building Java projects, it is "da bomb."

    A working knowledge of SQL is also a good thing to have for Java developers, as many Java projects will involve databases. And using Java will give you a springboard to start investigating Web services, which may become increasingly important soon.

    Perhaps the best advice I can give is to start an open-source project in Java, using SourceForge or a similar site. That way, you can legitimately put the project on your resume, and potential employers can actually see what kind of code you're writing. I'm pretty sure that my project was at least partially responsible for getting me my last two jobs, both in Java development.

    All in all, these days, you can't go too far wrong if you're "livin' la vida Java."

    --
    Be who you are...and be it in style!
  80. Get younger by unoengborg · · Score: 2, Funny

    The most important thing is that you are not
    over 25 and that you have at least 15 years
    of experience in the field of the job you
    are applying for.

    --
    God is REAL! Unless explicitly declared INTEGER
  81. Some Radical Options by richieb · · Score: 4, Insightful
    Here are two radical possibilities for a different career:
    • Become a patent lawyer. We really need laweyers who understand software and there is great need for them.
    • Become a high school math and science teacher. Pay not as good, but much improved quality of life, you'll be doing the society a great service, as we all need people who understand science and math.

    --
    ...richie - It is a good day to code.
  82. you need a Bigger agenda to give you direction by BroadbandBradley · · Score: 2

    For example, Try joining the Rebel alliance in a fight against the evil empire. Sure, you want to make money and have skills that are in demand, but it's a big world and in the computer universe you are here as much as you are in Khatmandu. and we are talking about the future here right?

    Head over to Mozilla.org and scope out the Mozilla Hacker's Getting Started Guide . the Mozilla community works inside of a tool they've created called Bugzilla which is just so great other projects have started using it. Bugzilla lets you follow anyhing you're interested in and even follow around other coders to see what changes they're making. I myself am something of a bugzilla Lurker watching features I'm interested in, it's like the celebrity coders show. The animal book people have done a great thing and open sourced Creating Applications with Mozilla which seems to sum things up pretty good and gets updated frequently as readers point out errors and such. Using the Mozilla environment is great for apps that run anywhere (mostly anywhere) and you can jump in to Mozilla at many different levels javascript to C code. you could create browser addons like those at Mozdev.org or standalone applications. Best of all, when Mozilla and it's Kindred have 80% of the worldwide browser market and IE is only a bit player, you can tell people that you've been a Mozilla Hacker sice 2002 and it isn't new for you.

    Help us Obi Wan, you're our only hope...there's more to a job skill than the money you make with it.

    May the Source-Force be with you!

  83. Re:Don't think you're skills...(comment on thread) by dubious9 · · Score: 2

    " It takes a few days to pick up 98% of any language/tech., a few hours to learn 98% of the commands and interfaces for an OS etc."

    I don't know if I agree with that. If you just ment syntax and begining functionality, then yes, but proficiency takes much longer. How can you expect to learn, for instance, the entire Java standard API? You can learn about advanced constructs such as IPCs and threading and networking, but I wouldn't say that you knew 98% of a language, unless you've written programs that take advantage of 98% of the standard libraries.

    In regard to OSes, you can't tell me that a windows person has any hope of becoming proficient in a Unix environment in a couple days. A year maybe.

    In my resume, I separate the skills that I am proficient in and the skills that I have rudimentary knowledge in. I believe this is wise because what if you read a beginners Java, and in the interview they ask you about syncronized multithreading?

    I wouldn't put anything on my resume that I just picked up in a couple days. It only takes one slip up to make you regret that you did put something you know nothing about to make you regret it big time.

    --
    Why, o why must the sky fall when I've learned to fly?
  84. Flexibility will keep you employed... by BobRooney · · Score: 3, Interesting

    In today's rapidly changing and down-sizing business environments it is often the MIS and development people who find themselves on the short end of the stick for the simple reason that they generally do not generate enough cash flow to cover their employment expenses. Exceptions might be in smaller software firms where their only business is contract development.

    When a company falls on hard times, rather than expanding your skills in whatever your specialty is, try talking to sales people or some of the tech writers or try coming up with some business ideas to present to your higher-ups or generally try to demonstrate your flexibility and "swiss army knife - like" ability to do multiple things well.

    Particularly in the software field there are a large number of people who's primary language is not English. It may be politically incorrect of me...but here it goes. English is the language of business. If you have better English skills (reading, writing, communication, bull$hitting) you will have a leg up on your peers. A well written email with some industry buzz words and a few $2 words thrown in for flavor will likely impress people. Use spell check every time!!! There is nothing worse than trying to impress people with your verbal skills and getting a word's, or worse, a colleague's name wrong.
    Are you a hard-core engineer? Try writing a white-paper on some piece of technology you have expertise with. Your initiative and competence will likely be noticed by someone, and if it isn't, keep a copy and add it to your resume as another selling point if you ever find yourself looking elsewhere for work.

    Communication skills are key for getting, keeping, and excelling in any job. All the technical expertise in the world in useless if you can't express to you your employer exactly what you can, and are willing to do.

  85. Parent is a good point, NOT a troll by mekkab · · Score: 2

    Now, I have heard of success stories where engineers are now at the vice president level doing just what they want to: architecting systems and solutions.

    But I've also heard from a mechanical engineer who has seen his friends who went either into management or into law with patent/IP work "surpass" him (in terms of money!)... (BTW: he's now in law school and clerking)
    There is some truth to this. And I can't help but be drawn to the idea that computer programmers in the future will be viewed like automechanics: once revered, now looked at as "misfit motorheads" (until you car breaks down!!!)

    Personally, I'm getting my masters part-time and I plan on doing this engineering thing 'till I die... however I can view everything as an engineering problem and that includes management. You can take the tinkerer out of the workshop but you can't take the workshop out of the tinkerer.

    --
    In the future, I would want to not be isolated from my friends in the Space Station.
    1. Re:Parent is a good point, NOT a troll by mekkab · · Score: 2

      Damn straight- I've got a friend who's getting his MBA at the same place I'm getting my MS in CS... depending on how he rates the program (I think so far its' thumbs down!) I may follow in his footsteps, or just tap his network of contacts.

      Let me know how your start-up works out!

      --
      In the future, I would want to not be isolated from my friends in the Space Station.
  86. Based on what we're buying by stephenbooth · · Score: 2

    I'm assuming that you want to stay in some sort of development type environment.

    Part of my duties is to plan and assess procurments of enterprise apps for the biggest public sector authority in Europe. Looking at what we, and other public sector bodies, are buying right now the big field for the next 3-5 years is systems/data integration. The beauty of this from a devlopers point of view, especially someone with a good history who's looking to the future, is that you are usually reusing your existing skills (interfacing to the old legacy apps) whilst also picking up skills in the bleeding edge OSs and fields (where the new apps are running) and getting a really good workout for your problem resolution skills.

    If you're looking for specific skills to develop then I'd have to go with a lot of other people who've commented and say OO, probably concentrating on Java and C++. On top of that I'd reccommend getting comfortable with a few different flavours of UNIX (Solaris and HP-UX seems to be the big ones or enterprise level boxes right now with Linux taking a big bite out of M$'s share of the datacentre in the small server arena), a couple of RDBMSs (Oracle for sure) and some SAP skills wouldn't hurt. A solid understanding of networking and IP would be very useful, as would XML knowlege.

    Stephen

    --
    "Don't write down to your readers, the only people less intelligent than you can't read" - Sign on Newspaper Office Wall
  87. You'd make a great embedded sys engineer by ppetrakis · · Score: 2

    I don't necessaily mean Linux embedded systems though dont exclude it. Anything from a thermostat for the furnace in your home to the air bag trigger system in your car is an embedded system, The market is HUGE. Your "nuts & bolts" experience fits very well in the embedded market along with your diversified skills, Which implies you're not oppossed to learning something new. Also you wont have to learn addtional languages since you already know C and ASM, thats really all you need. You'll learn your OS's on the job. If not pick up Linux in the meantime and if you can get your hands on it, vxworks. You don't have to reinvent yourself, just refocus what you already can do well. There will ALWAYS be a market for embedded systems. Oh, The salary and contracts a fscking ridiculous :)

    One more thing. Since you mentioned robotics. Do you know CAN and/or CANOpen???
    That's an emerging market here in the U.S. It's also 'the' standard for motion control and industrial automation.

    Peter

    --
    www.alphalinux.org
  88. Re:MOD PARENT UP, he/she's right! by jedidiah · · Score: 2

    Or perhaps management doesn't really care about quality of the product. Perhaps they only have the short term in mind and don't really care about the quality of the end result. This would be consistent with my experiences with H1Bs.

    --
    A Pirate and a Puritan look the same on a balance sheet.
  89. Learn any OSS technology by Qbertino · · Score: 2

    I've been into computing since the Sharp MZ700 and Pc-1402 days. Now I'm a Software developer.
    I switched to Linux on my PCs a year ago. Completely.

    Yeah, it's commandline, ancient Unix quirks and all that. But here's the one major and main reason I did it:

    I will never ever have to learn how to deal with yet another new OS!

    Read that again. And let it sink in.

    You don't honestly think that people will pay for shrinkwrapped software in five years from now? At least not enough to make a living from it. They will pay to have the job done. No matter what OS, no matter what Platform. End-user distinction of OSes in the everyday buisness is fading to non-existence fast. They're becoming nothing but a bare nececcity (spelling?? :-( ).
    To me OSS is the only answer to your question.

    --
    We suffer more in our imagination than in reality. - Seneca
  90. Re:Hot Knowledge by jedidiah · · Score: 2

    Are you talking about Ohio, or Cleveland?

    --
    A Pirate and a Puritan look the same on a balance sheet.
  91. -=# Learn Java #=- here's why... by eyefish · · Score: 2, Informative

    First of all, I suggest you learn Java above anything else, and here's why:

    1. Learning Java automatically frees you from having to develop for a specific platform. If you know Java you can develop for Windows, Linux, Solaris or any other OS. In other words, you can target 99% of all available platforms. As an example, now all you need to learn in Linux is simply "how to get around" in the command line, but for actual development you won't have to dig in and learn all the Linux libraries, or all the Windows libraries, or all the solaris libraries, etc...

    2. Learning Java gives you a consisten way to access most new technologies. Once you now Java you can for example use Jave Server Pages very easily afterwards (and therefore save a step by not having to learn a new technology like PHP (which is GREAT by the way, but I'm giving you the path of least resistance here)).

    3. Likewise, if you know Java you can access mySQL, Oracle, Sybase, SQL Server, or any other database with the same JDBC interface. This gives you access to 99% of all databases in the world, without having to learn any one in particular (besides the obvious administration tasks).

    4. Java also gives you direct access to Web Services (I recommend a product called GLUE by a company called The Mind Electric, above Sun's own implementation of Web Services). With Java and GLUE *anything* you code or have coded before can be transformed into a Web Service automagically, with no coding. And for new Web Services projects you can also tweak to your heart's desire. It is the absolute easiest, most powerfull Web Services tool in the market (believe me, I've tried them *all*, even the .Net tools).

    5. Java also gives you consistent APIs for anything from GUIs to sounds, to networking across all platforms. As an example, we developed a *HUGE* Java-based distributed application with Java, using everything from JSPs to Swing and custom socket programming, and to our customer's surprised, after the whole application was developed and tested on Windows, we tried "for the heck of it" to copy the class files to a Linux machine. Guess what? The darn thing work 100% perfect (after we modified a small configuration file with directory names and things like that of course)!!! No recompilation, no code tweaking, no nothing. As a matter of fact the customer quickly opened her eyes, decided to stop paying licenses to Microsoft, dropped Windows, and is now using a farm of Linux machines with the new app. In the future, should some new OS that is better than Linux come out, she'll have the chance again to simply move the class files and everything should work.

    6. Java protects you from the future. You bet that as soon as Grid Computing takes off that IBM, Sun, Bea, Oracle, HP and others will provide a Grid Services API for Java, and again since you already have the Java foundation, all you need to learn is the new API for Grid Computing and forget about the details of where it will run.

    Note that other technologies like PHP are great, but it does not integrate all the functionality that Java offers you, and certainly not across so many platforms. However if all you want to do is dynamic websites, PHP is also a GREAT choice for the job.

    As for C and C++, the biggest drawback is how easy it is to create bugs, how problematic it can be to port applications (little endian, big endian, 16-bit, 32-bit, 64-bit, order of operations left-to-right or right-to-left, etc), and it just simply does not behave the same across platforms. Sure a very experienced programmer can greatly reduce these hurdles, but why bother really if Java gives you garbage collection, no pointers, a small and simple syntax? In other words, it gives you what you need to get the job done.

    Note that TONS of people will tell you how Java is "slow". This was true 4, or maybe 3 years ago during the dark ages of Applets, but nowdays with Just-In-Time compilers, and Dynamic Compilation, I dare anyone to compare performace of a typical C/C++ application to that of a typical Java application. Is Java still slower, maybe yes (specially in the GUI department), but remember that Moore's Law is on your side: today *any* PC you buy will run Java apps more than well enough for your needs. As for big server farms, I rather have a 15% performance loss than having to maintain the same app over many different operating systems, or even modify the app everytime the same operating system comes up with a new release, or than having to spends hours or days hunting down bugs lurking in hard-to-decipher C++ code.

    Bottom line: Java gives you simplicity, access to 99% of all Operating Systems, databases, Web Services, and media and networking APIs you'll ever need, so learn it and shield yourself from the deep technical details and instead concentrate on your business solutions.

    Side note for other geeks: Yes, I *do* know the importance of sometimes you having no choice but diging in into the tech details of things, but that's something I asume the person I'm trying to help here already knows from his own experience.

  92. there's IT skills, then business by zogger · · Score: 5, Interesting

    --this is for the guy who submitted the questions, it's different in a lot of ways from the techie answers he's getting, but perhaps it's useful to him

    --biggest problem I am seeing here is lack of understanding of what to DO with IT skills. companies are in the widget business. They USE "IT" skills to make and sell widgets. The PRIMARY goal is to make and sell widgets, all the IT skills are to be used as TOOLS to make and sell the widgets. Just IT in and of itself is only a market that sells the tools or builds the tools, but it's NOT the primary end market. The thinking should focus first on identifying a niche in the widget market that needs to be filled and isn't adequately yet.

    Now the problem is there's a sort of depressed widget market. Along with IT, widget making is being outsourced, mostly to china and some other asian nations.

    OK, now this is a double problem, short thinking bean counters and owners/managers only want their loot now, they could care less about eventually losing their customers, as they DON'T CARE that every outsourced job is also an outsourced consumer. They get their loot now, later on their plan is to live on that loot, they are fully prepared to drive by you huddled on the sidewalk begging, just like they do in any other technofuedal 2nd world nation now.

    THINK on that aspect of society and the job market right now before you proceed.

    Don't expect any of them to be loyal to you, so don't work for them. You'll just keep getting screwed, over and over again. if this wasn't true you'd still be employed, yes?

    The only person who will be loyal to you is YOU, and only YOU will keep yourself employed.

    Figure out a widget niche, then use your OWN IT technical skills for your OWN business model. You need your own business, and I DON'T mean just consulting for someone else's business.

    Here's an analogy, it's rough (crappy really) but it might get this concept across.

    Joe is a car/truck mechanic, over the years he's learned how to work on a lot of cars.

    Joe worked for years for belchfire motors, but they gradually switched to using foreign parts and foreigners in general, eventually moving their factories and finally even outsourcing any repairs. His job got to be less and less hours until finally one day he got his last check, then was unemployed, despite being this great mechanic.

    He then went around applying for mechanic jobs, but all over it was the same scene, mechanics not needed unless you today have this exact single thing we need and once that's finished good bye, see ya later.

    He picks up a day here, a week, there, but it's rank and not really steady.

    He's still a good mechanic.

    He thinks, "hmm, what was I working on again?" "oh ya, I was a mechanic to make cars and trucks work"

    He thinks again, "what do people use cars and trucks for to make a living with, something besides generic transportation?"

    "Well, taxicabs, delivery, construction specialised truck-tools, etc".

    So he gets a brainstorm, he goes into the commercial application vehicle business, he notices locally there's an unfilled niche, there's no light duty delivery service. He gets a fleet of small trucks, hires drivers, and uses his previous mechanical skills to keep the trucks running so he stays profitable. He starts with one truck, builds from there. he knocks on doors, gets contracts. he fixes his own truck at night if it needs it, and does deliveries during the day, always stopping at some new place to pitch his business. He's relentless.

    He's not getting paid as a mechanic per se anymore, but he's still using his mechanic skills to "make money", but this time he's the boss and can make better decisions, like, he knows such and such a truck has a better track record for not breaking as often. Done, that's what gets decided. Other companies have the bean counters decide on the cheapest truck, so they suffer breakdowns later on but blame anyone but themselves. He knows that aftermarket part A is better than OEM part B, so he uses that part if needed. He knows that preventative maintenance is a good idea, so instead of running his vehicles x-thousand miles from tune ups and oil changes like his competition, he runs them in sooner-yes, higher short term cost, better long term average cost, it's cheaper in the long run to do it intelligently.

    and etc.

    Hope this helps, think one step higher in "business" mode rather than concentrating on "tech" mode, as being self employed is what's going to count in the future, not the overly niched skill set. use your skills to do business for yourself, don't make the money for other people. If they can afford to pay you x thousand, they are making x + thousand, might as well get the whole amount.

    The handwriting is on the wall as to the two class global society coming, best you can do is to stave off the timing, get as self employed as possible, in at least two different areas, and for sure (this one is my really only serious detailed recommendation), make sure you move rural and own property outright that has it's own water, garden area and woodlot. Commute if you have to now or tellecommute, but DON'T stay major urban bound in a piped in reality apartment or house.

    Look around, the %^&t is getting bad out there.

    All the tech in the world won't eliminate the basics of being a carbon based lifeform. In times of economic or social crisis or depression, having the ability on site to feed, water and heat yourself and family will be more valuable than any number of high tech gizmos. Don't think in terms of just representative wealth in the form of money, think of what the basics are you use that "money" for, and get ahold of them now while still possible and affordable.

    I listened to the stories from my grandmothers and great aunts about the great depression, it was no joke, there's no guarantee it won't happen again. People in the city who lost their jobs lost a LOT, those in the rural areas might have been poor but at least they had food and water and a place to sleep. Cover your basic human needs, proceed from there. It's real insurance, a great adjunct to that piece of paper in the file cabinet.

    And anyone who don't think it can happenm, here's some clues.

    Large corporations get a tax break to relocate outside the US. They are doing so. This is a bad idea and is part of the great economic snakeoil salesmen's spiel. Check the daily headlines, you aren't seeing "xyz corp anounces a new plant and hiring thousands" you are seeing "xyz corp announces layoffs". this is across the board, every sector you can point at practically. This is single major clue # 1.

    The government cooks the books on unemployment to avoid panic, we are over double digits now, it's not the 5-6% they spout on teevee, it's double that. It's 10 to 12%, they DON'T count people who have exhausted unemployment benefits or who have been out of work past a few months.

    Look at the major US banks derivatives exposure.(scary)

    Look at the fortune 500 (and government) pension exposure(ditto, scary)

    Look at where the major insurance carriers have their eggs piled now(nothing that's making any money beyond theoretical poker chip bond money. bonds can only be paid if people are working. bonds can default same as anything, and government printing press money won't help if the work itself defaults.)

    Look at projected energy demands and what is related to what and where it comes from(we have a certain amount of cheap to extract by the BTU energy, hint, we don't own much of it anymore)

    Look at which nations are going to be needing how much energy and when, timewise (china, 1.5 to 2 billion people, ramping up manufacturing and all those people demanding jobs and to become sort of kinda middle class, at least to have some bones thrown to them, projected crisis level roughly 2010)

    Do that, you'll get reality religion and get self employed and move rural most likely. Most guys won't, the concept of "not having" and "$%^&* this is bad" hasn't been hammered in yet so it's "not possible". Latest release of quake and who won the ball game is still tops. Don't go there.

    good luck and better skill

  93. Where is perl? by bear_phillips · · Score: 2, Interesting

    I have noticed many people mentioning Java and C, but few talking about perl. Am I the only one here who uses perl at work on a daily basis?

    --
    http://www.windmeadow.com/
  94. IP Extensions in University by Vagary · · Score: 3, Interesting

    I'm an academic purist, so normally I'd tell you that if you want to know about something new: get off your ass and learn it yourself. However in the case of networking I'd have to agree with you.

    Let's face it: TCP/IP and UDP/IP are the only protocols worth a damn. Networking courses are filled with archaic ideas like ATM which clearly has no future (QoS will be implemented on top of TCP/IP). You could argue that learning about the good old days will teach students general design principles, however so would learning about the exotic ideas that might not be here for the long haul.

    So rather than spend a bunch (it's okay to spend a little) of time on history or cut back the low-level portion of networking courses, I'd rather see students learning about things like IPv6, IPSec, and Mobile IP.

    1. Re:IP Extensions in University by vanyel · · Score: 2
      I'm an academic purist

      That much is clear. Unfortunately, I live in the real world, where I'm having to put in ATM lines to connect to the phone companies so as an ISP I can offer DSL services. The phone company is built on ATM, and from what I was hearing several years ago when I had closer contacts, so are most of the backbone IP providers.

    2. Re:IP Extensions in University by Vagary · · Score: 2

      The phone company is hardly a bastion of the latest technology. I'd grant you that QoS over IP is not fully mature, but it seems clear that once it is circuit networks have little to offer. The fact is, ATM is not optimal for transmitting data (as opposed to voice) and data is the future. I'd even argue that broadband connections with guaranteed speed is a short-term solution.

      As far as the backbone providers go, a quick Google search shows a few companies offering bridges from their IP backbones to customer's ATM networks -- if they were using ATM for their backbones, don't you think this wouldn't be required? Or perhaps they're as disfunctional as the phone companies and first they switch it to IP and then back to ATM...

    3. Re:IP Extensions in University by vanyel · · Score: 2
      The phone company is hardly a bastion of the latest technology.

      Granted, ATM is hardly recent technology, but it's clearly not a dying breed either.

      Or perhaps they're as disfunctional as the phone companies and first they switch it to IP and then back to ATM...

      I never thought much of the idea of running IP over ATM in the first place, but that's what I saw. Make of it what you will...

    4. Re:IP Extensions in University by Paranoid · · Score: 2

      Networking courses are filled with archaic ideas like ATM which clearly has no future

      ATM has no future? You do realize that DSL is nothing but a modulation format to get ATM frames through twisted pair?

      (QoS will be implemented on top of TCP/IP).

      In my experience, QoS is implemented under IP, never on top of it. DiffServ, for example, makes use of fields in the IP header if needed, but acts on a level between layers 2 and 3. Especially when integrated with MPLS.

      Indeed, how would you go about implementing QoS on top of TCP/IP? Build it into HTTP? What about the non-HTTP protocols? What's to keep them from hogging bandwidth and making your ogg stream skip?

      I find it strange that you would claim that ATM is better or worse than IP, anyway. They're on different layers of the network stack entirely. ATM is one possible layer 2. Ethernet and PPP are others. IP is one possible layer 3. IPX and IPv6 are others.

      And by the way, I don't think networking needs to be exempt from the "if you want to know about something new, get off your ass and learn it yourself" category, either. If I stayed on my ass, I'd never have fun toys like VLAN and PIM-SM to play with... *grin*

      --
      Paranoid
      Bwaahahahahaa.
  95. Golf by MountainLogic · · Score: 2
    No, really. Develop some broader skills and interests. When I hire someone I am interested in finding a well rounded person, not just a well rounded engineer. Lets face it, real design decisions are made by the engineer alone in her cube, not in a marketing meeting on a white board. I want an engineer who can grock the needs of little Bobby or great aunt Betty and cut features to and improve a product by making it smaller, faster and easier to use.

    Also, develop some people skills. Go interact with non-engineer types. Join the local Sierra Club or softball team. This will also open up introductions to jobs that you would never have thought about.

  96. Re:Learn Java by mangr3n · · Score: 2, Informative

    if ( I.amIgnorantAboutJava()) {
    if ( I.amIgnorantAboutOO()) {
    I.buyAndRead(new Book("Thinking in Java"));
    }
    I.browseAndUse("http://java.sun.com/docs/books/tut orial");
    }
    I.buyAndRead("Effective Java");
    I.buyAndRead("Refactoring by Martin Fowler");

    if (I.amInterestedInWebServices()) {
    get("JBoss","http://www.jboss.org");
    get("Tomcat","http://jakarta.apache.org");
    }

  97. Best advice by Andrewkov · · Score: 2

    The best advice I can give you is this: Spend less time posting stories on Slashdot, and more time actually learning something. ;-)

  98. Microsoft FrontPage by sharkey · · Score: 2

    You can charge $100US per hour and more to plop content into FrontPage wizards and create "state-of-the-art" websites for stupid people.

    --

    --
    "Outlook not so good." That magic 8-ball knows everything! I'll ask about Exchange Server next.
  99. Cross train, something other than programming by Red+LaRoux · · Score: 2, Insightful

    In today's world, skills are resources. The marginal utility of adding another laguage is less than the adoption of a completely new skill set. Become a lawyer, or get your MBA. Add value by geting out of the hacker box into someone who can bring the programming skills into another environment, where computer skills have not been as completely utilized as in the pure programming market.

  100. Re:People in India pay huge taxes too! by FatherOfONe · · Score: 2

    My point is that you do NOT pay any tax here for work done in this country. I have NO problem with Indian coders over here working and getting paid. They help pay for our hospitals, schools and military...

    It doesn't make sense to tax a car built outside this country and not tax something like software development. The only difference is that it doesn't take much effort to "move" code in to the country. This is why it needs to be taxed much higher than an automobile.

    Lets turn it around. Assume that I have a bunch of coders over here; say prison workers doing software development. I then "offer" those services to companies over in India for 1 Euro or 1 dollar an hour. Hmmmm..... I don't have to pay any taxes on that development do I? But YOU pay close to 60% of your income. I could even offer "early release" programs for these guys if they wrote good code and it worked well. This would help quality.

    --
    The more I learn about science, the more my faith in God increases.
  101. Tech + what? by Strange+Ranger · · Score: 2

    This may not be what you're looking for, but why not apply your already well developed technical skill set to some other subject?

    Financial Industry Tech.
    Medical Industry Tech.
    Manufacturing, Retail, Biological Research, Education, the list is endless.

    If you can get really good at applying your skills to a certain broad industry you'll have quite a leg up on job applicants who's technical skills are similiar (or better) but have no depth of experience
    A: Applying those skills to particular business models.
    B: Using industry specific tools and implementations.
    C: Navigating the vastly different cultural and political landscapes of a given industry.
    D: Dealing well with industry specific vendors.
    E: I'm sure the list goes on.

    So pick an industry of interest and attack it with gusto.
    Of course YMMV.

    --

    Operator, give me the number for 911!
  102. Generalist will go further by wildjim · · Score: 2, Insightful

    I'm a generalist. I've been a Microsoftie, Netware Engineer, Unix and Linux specialist, LDAP/NDS guy, I've worked hard on email, I program in Perl and Ruby, a little in C, C++, Java, adminstered the Backup Tapes, written an SMS Server system... There's no way I know everything there is to know about computers, and there's no way I could do any job going, but I'm always keen to learn more, and I'm always prepared to give my best shot. The trick seems to be that every employer wants someone who mostly fits the bill, but might easily fill in a few gaps for other jobs, so they don't need to hire/train someone else -- money, money, money. And it's a big bonus if you get to try new stuff.
    On top of this, it seems training and experience has become second to strong people skills. The CV might get you the interview, but the interview will get you the job, and your social skills will help also you progress. There are lots of people out there with skills which will fit any job, more or less -- only experience in the specific job will help you fit better -- but there seem to be fewer people who are prepared to put the social/psychological effort into the people they work with and for.
    I know I'm not explaining myself all that wonderfully, but I do know that these skills have benefitted me at least as much as my knowledge and abilities in computers, and they seem to be neglected more often than not. And I don't mean the rubbish 'team-building' courses. They always seem to be more destructive than constructive, in my experience, unless the team forced to go on them already has some sort of good dynamic to build on.

  103. you can't go wrong with... by mwm158 · · Score: 2, Funny

    a PhD. My professors work, in a long week, 3 hours a day, 3 days a week. Their pay is pretty decent too. You can sit around calling your students morons and basically do things to piss off all of your students for a nice laugh. It sure sounds fun.

  104. Recent finds.. by MikeFM · · Score: 2

    I've spent a lot of time recently looking for work. The big questions posed by most companies seem to be Oracle, Java, Cisco, and ASP. However it was my Linux, MySQL, Perl, PHP, Python skills that actually found me a job. If you cover all those bases you'll probably do okay at finding a job now and in the near future. For long-term I'd say Oracle, MySQL, Linux, Cisco, PHP, and Python are probably the most useful.

    --
    At what price learning? At what cost wisdom? The price is a man's peace of mind, and the cost is his life.
  105. Instead of focusing on tech... by cr0sh · · Score: 2
    Focus on the tech behind the tech. Let me explain:

    Knowing all about various languages and such is great, it will get your foot in the door, etc - but what you really should know (and if you have done half of the things you posted, you should know this) is how languages work. In other words, the logic/mindset/etc behind general purpose computers. You should know enough that you could at least conceptualise how to develop a compiler or scripting language interpreter, using your "favorite" programming language (I am not saying it has to be optimised, but you should be able to know how to do it). Think of it as a mid-point of knowledge between that of a programmer and a comp. sci. individual - a melding of the theory with the practical.

    Find and read books and articles on these "abstract" areas. Right now I am reading (and attempting to understand the main concepts behind) Stephen Wolfram's "A New Kind Of Science" - I don't know how it will help me later, but I am sure I will learn something interesting from it. I try to read and understand various books and articles on topics like that, and work that into my knowledge base to better myself in programming and other development work.

    Believe me, if you can get the interview and can steer the conversation to such a funky topic, and describe how "simple cellular automatons can describe high-complex behavior, signifying that simple programs can create complex outcomes" and "as such, I can apply such knowledge to create better, smaller, and faster software systems", etc (ok, maybe not in those words, but you can see what I mean - be honest, no bull, but tell them what you know and take an interest in) - eyebrows will raise, and you may rise a few notches in consideration.

    If you get the job, continue learning, and continue talking - and above all, build funky projects at home (I get the strangest looks when I tell people at my work about my current building of a homebrew electric vehicle using bicycle parts, custom welding, an surplus electric motor, etc - they just don't know what to think, BECAUSE IT ISN'T IN THEIR WORLDVIEW that somebody would do that).

    I am sure you already do at least a little of this already, but if not - do it. If so, take it up a notch (ie, say your project is an AI for a game - well, why not just a generalised AI to compete in the Loebner prize challenge?)...

    --
    Reason is the Path to God - Anon
  106. Re:Don't think you're skills...(comment on thread) by seaan · · Score: 2

    What most fail to realize is that 5 years in a single tech is probably a bad sign. A "better" programmer would probably have gotten bored and moved on, or moved on because it's highly unlikely that a single technology remains the best solution for that long a period of time.

    There is probably a bit of truth somewhere in this statement, but there are some real problems with it too. Perhaps this is the view of a system administrator, but it does not match my experience as a developer. I enjoy technology, but at the end of the day I'm being paid to accomplish things. Technology is merely a tool that helps you accomplish your goal. There are a lot of reasons why people can enjoy their job, and why they should seek out new technology. Speaking from experience, boredom is rarely solved by new technology, it usually has it roots elsewhere.

    It takes a few days to pick up 98% of any language/tech...

    I won't comment on the language part, but from my experience it is wildly over optimistic for a technology field. I'm a generalist by nature, and pride my self on my ability to investigate and use new technology quickly. Over the years I have specialized in a few areas, and most of them can not be mastered in a few days. Perhaps that is because I don't consider any area that can mastered in a few days worthy of being called a specialization. I'm talking about things like embedded system development and developing/analyzing cryptographic protocols, or even managing the software development process.

    For example, it takes years to get good at applied cryptography (and this is not based just on my own learning rate :-) The quickest I've seen someone become competent for a reasonable range of tasks was about 2 years (and she was an extremely intelligent cryptography Stanford post-doc). Even for very bright and experienced programmers (10-15 years of experience), it more typically takes 3-5 years to start designing good cryptographic protocols and systems.

    I'm sure there are technology fields that are less demanding, but to be frank that is part of the fun of specializing in this field. It does not take much reading (recommend Schneier's Crypto-Gram as a good starting place) to start seeing the flops made by people who thought they could learn cryptography in a few days.

  107. Re:Go for a Unix/ Network Admin job by gabec · · Score: 2

    LOL... are you trying to imply--even though sofware engineering jobs (arguably much more difficult than network administration) weren't "safe" from outsourcing--that network/unix admin jobs are somehow impervious to the cheap labor coming from Russia and India? Dream on, buddy.

  108. My $0.02 worth by Audacious · · Score: 2, Interesting

    First - start your own company. You can do it on-line now-a-days for next to nothing. If you know how to fix errors companies pay big money for people who can walk in, take over a problem, and fix the problem. Basically, you become your own consultant. Get some business insurance ($500.00 a year can buy you quite a bit of insurance). In this way other businesses will be less leary of hiring you as a consultant/independent programmer because they know that if something goes wrong they are covered.

    Second - write a program others will want to use. Like EverQuest. Only start small and work your way up to something as large as EverQuest. Pick a game that the patents and copyrights have expired on and go to town with it. Or write a variant. Make it Java or browser based so people don't have to buy the game. Make it look nice with some graphics (you can get free graphics off of the web too!) and do a very cheap subscription fee (like a dollar a year or something). You are looking for volume. So yeah - you only get a dollar a year from someone. Well, 100,000 someone's is still $100,000.00 and there are places which will host your site for very little. Some, I am told, will do it for free.

    Remember that big companies like Microsoft, BMC Software, and the like all started out with only one or two people who wrote or bought programs and then just marketed them well. That (IMHO) is what you need to do. Because it sounds as though you have reached a plateau in your life. You are at that point where you can do the computer stuff but the business end of things isn't your balliwick. So maybe its time to invest some time in learning that end of things. You do it right and you'll end up like the owner of SAS Corporation, Microsoft, and the like. Or - you can just keep on beating your head against the wall which doesn't care if you live or die. I'd climb over it, go around it, under it, or blow it up. Stop going "I need a job" and start saying "I want to make money and here is how I'm going to do it."

    I know it sounds like a "Ra-ra-ree, kick'em in the knee" thing but the truth is that a lot of people are in great need of a lot of good software and no one is making that software. Well, you don't have a job? Ok - then you do have the time to work on some personal software which you might be able to market. Here are some ideas:

    1. Scheduling program for pet boarding houses. All of the software currently available will not allow people outside of the company to request days for their pets, to see the status of their pets, or anything else. The current state of scheduling systems are closed ones (ie: they only work on the computer systems in-house). Write one so people over the net can do things.

    2. Same as #1 but for dentists, doctors, and the like. Why can't we make appointments to see the doctor via the net? *shrug* I dunno - you just can't.

    3. My mechanic has one of the crudest systems for keeping track of his inventory. Write one for the small businessman. Charge him $50.00 a whack. Sell him a complete system for more.

    4. Hispanics in Texas who do not speak english have an awful problem because every program I've ever seen is in english. We also have a large asian community. Using the capabilities of Java (and some help from a friend, etc...) write programs so they are in other languages or even multiple languages. Error messages and all!

    5. Write a program which looks for things like fires. Couple that with video input. Now you have a way to tell if a house is on fire via video. Sell that to cities so they can monitor areas for fires automatically.

    6. Write a program to note changes. Hook it up to video cameras. Use it to denote whether traffic is moving or standing still so it can automatically update TV and radio stations on traffic conditions. You could also use it to monitor where people are speeding a lot (boo! hisss! :-) ) so the police know where to go to give out tickets. (Not that I would REALLY like anyone to do this - it just popped into my head.)

    Ok - there are six programs you could work on and sell. Remember that in selling you will get a lot of no's but just learn from them and keep going. I know the guys who work on my car really wish there was a Vietnamise version of their software. But there isn't. So they make do. It is one of the reasons why I am working on quitting my job. I've found enough things to work on and get out the door to make me money that I no longer want to stay where I am working. So I'm planning on selling my house, moving out of the city (so it is cheaper to live), and working on my software. Once through I will begin selling it on-line as well as door-to-door. I know it will be tough going at first but I also know that I can sell myself as well as the software. Especially since I plan on toting around my own laptop to demonstrate things and I plan on making everything web based. All they will need is a browser and nothing else.

    Just my $0.02 worth. :-)

    --
    Someone put a black hole in my pocket and now I'm broke. :-)
  109. Re:Point well taken.... by krinsh · · Score: 2

    Heheh. It is around here when my wife is going through an 'ebay' period and wants to look at it from our rolltop desk in the living room; otherwise it is just my 'learning time' that I should be spending at an auction with her

    --
    I think with the interesting people, their lives can't possibly be wrapped up into a nice little package.
  110. Re:OOP-UML by Raiford · · Score: 2
    I have been programming for some time (Fortran IV was the thing to know when I started) and the planning stage of a program was a half-hearted attempt at creating some kind of flow chart for your logic. This is how programming grew and procedural roots still permeate the primal brains of modern programmers. I am a Java developer now and I have my own bastardized version of UML that I use to design my projects. It does help trmendously but I can tell you it ain't natural. What is natural is getting into the zone and hacking out code. However for OO platforms this is a sure fire way of creating a monster.

    --
    "player 4 hit player 1 with 0 stroms"
  111. In my field... by Paranoid · · Score: 2

    ...it sounds like you're already far more qualified than I am. *grin*

    I'm an embedded systems engineer. I dabble here and there with hardware, but I mostly do software. At all levels, but mostly the deeper levels of things. I've done everything from web user-interfaces under Linux, to custom BIOSes and bootloaders, to firmware to drive network adapter's MACs. And all of that so far has been C and assembly, both of which you already know. Space constraints rarely allow me anything more extravagant than that. If I have it available, I'd probably implement any given thing in Perl, but it's all good.

    I'm saddened that CV buzzword compliance takes precedence over simply knowing the tools that would allow you to do the job you're prepared to do. The future is a big place, especially the computer industry. Are you seeking something on the applications side of things, on the bare-metal side of things, or where?

    As an engineer who definitely tends towards the bare-metal and hardcore embedded end of things, I'm sure I would recommend far different things than a webdesigner or GUI head or SQL jockey would. Though I think embedded devices will play a large part in the future, I'm sure the other subfields will be right there with it.

    --
    Paranoid
    Bwaahahahahaa.
  112. Re:Don't think you're skills...(comment on thread) by seaan · · Score: 2

    Yes, we are probably in closer agreement than I first thought. As I look over my examples, a lot of what I was thinking about was at the "design" level, while you were really talking about the "coding" level.

    To expand upon your SSL example: It should not take long for a competent programmer to add SSL to an existing program using the OpenSSL library. The protocols and libraries already exist, and there are a lot of existing examples. So long as you can avoid adding any buffer overflows :-( no special programming knowledge is needed.

    It is quite another thing to design and implement a new cryptographic protocol (hmm, should I XOR those values together before or after I encrypt them?).