Slashdot Mirror


Choosing Your Next Programming Job — Perl Or .NET?

Trebonius asks: "I have just received two job offers in the same day. The first was for a job coding in Perl on Linux/UNIX platforms, for a small but very cool company around 120 miles from where I live. They play Half-Life together in the off-hours and the people I've talked to there seem very happy with the job and work environment there. I'd be making smallish web systems, and I'd basically have total control over the projects on which I work. They offered me 20% more than I make now. The second offer I received is for a huge nationwide company opening an IT office a couple blocks from where I currently work. They're an all-Microsoft shop — VB, C#, .NET, SQL200*, etc. I'd be a very small cog in a very large machine. They offered me 66% more than I'm making now. Benefits are essentially identical between the companies, so that's not a big factor. I'll also give the Perl company a chance to make me another offer, but what should the threshold be? How do you folks balance the desire for a fun job with the need to pay off debt?" Most of my work experience is in Microsoft development, though not by choice. It was my first job out of college. In my own time, I run Linux, write in PHP, Perl, MySQL, etc. I don't like developing in .NET much, but I'm used to it, and the money's good.

How do I choose? The money issue is huge, of course, and I think I'd much prefer the Perl job in terms of development preference and work environment. However, I've got the impression that Perl web development doesn't have the future potential in the professional world that .NET has. A search of Dice shows a lot more .NET jobs. Would taking the Perl job hurt my prospects in the future?"

54 of 426 comments (clear)

  1. .NET by cnowacek · · Score: 4, Insightful

    Take the money and run, my friend.

    1. Re:.NET by IWorkForMorons · · Score: 2, Insightful
      (or it kills you)

      What's going to kill him now?

      Honestly, after working in Microsoft langauges and now working as a tester for .Net applications...take the Perl job. Less money now, but if you already like working with it then the switch to .Net will have serious affects on your mental health. Especially with .Net 2.0 and VS2005. .Net 2.0 fixed a lot, but introduced some new bugs. VS2005 is just crap. The beta testers were begging MS not to release it. MS released it. They made everyone at my work upgrade to VS2005. The programmers are 1) confused as to why the hell they upgraded with no benefits analysis done (project manager is a moron), and 2) they are begging to go back because of all the bugs in VS2005. Random crashes, inexplainably long load times, rediculously long build times, and it's generally unusable.

      Personally I got lucky to get a testing job with this place, because I do write code to help me with the testing. The reason I'm so lucky is that I got to choose Perl. It was kinda by accident really. But now that I've picked up Perl, that's what I'll be looking for. Yeah, it ain't perfect, but the main part is pretty danm stable and it's so nice to have access to the module code when there's a bug. I can debug a program I have the code for. I can still debug a program when I don't have the code, I just can't be as accurate ("problem is in this function at line 566", as opposed to "problem is on this screen when I do this.") Even better is that I can change a module to suit my needs and submit my changes for future versions. Can't do that with the .Net framework.

      That's the tech side. Here's the business side. Working for a small company, even for less pay, is much better then working for a big company where you're just a faceless cog. I've worked both. The big companies are just as likely to just lay your ass off as a small company is to shut down and lay everyone off. Big companies are stable, as in they will be around for a long time. Not that *you* will be around for a long time. "Our profits are down this quarter. Who can we get rid of?" Small companies, unless they are very profittable, have a chance to just go out of business. You'll be in a much worse place then just being laid off, if the small company literally ran out of money and can't pay severence. But working in a small company is usually more flexible, and has more variety. Although I found while working for a big company...you can hide and literally not do any work for months before someone notices. IF someone notices I should say.

      Anyways, that's my experience. Do what you like, the rest will follow. Do what you hate for lots of money, you'll just spend that money on therapy...

  2. Fun in work is important. by Neeth · · Score: 5, Insightful

    Would taking the Perl job hurt my prospects in the future?
    By asking this question it seems that you value prospects over fun in what you do. If that is the case, go for the .Net job. However. If you are a good programmer I don't think you have anything to worry about; you will be able to fit into any programmingjob now, or in the future. I'd go for the Perl job and worry about prospects later.

    --
    Yes, I am the one with the legendary sig.
  3. Think about the future by Anonymous Coward · · Score: 4, Insightful
    perl prospects: (near enough) Zero

    .net prospects: Much better


    I've never, ever, seen a perl programmer making a huge amount of money, but with .net senior positions and architect positions are common place.

    Take the .net one - if you feel like doing perl you can do it in your spare time.

  4. Go for the happiness. by NeuralAbyss · · Score: 4, Insightful

    If you wouldn't be happy in the .net job, don't take it. Unless you're in serious debt, it's better to go for the job you'd be happier in. Personally, I'd set the limit at a minimum of a 35% increase (as opposed to 66%) for the Perl job.

    Do what makes you happy. It'll pay off in the long-run, and you typically gain more contacts that way for future jobs.

    1. Re:Go for the happiness. by sublies · · Score: 2, Insightful

      On the other hand, turning something you love into your full-time job can oftentimes diminish your enjoyment of it. I've been a full-time perl programmer for nearly 10 years, and while I still enjoy it to a certain extent, when I get home at night I'm so sick of looking at perl code that I rarely spend any time just messing around with it anymore.

      The important difference might be what kind of tasks the job will entail. If you're working on a few core products there's much more chance of it getting routine. If it's a job where you're facing new challenges with relative frequency, that can make all the difference.

  5. Tricky by not_a_product_id · · Score: 4, Insightful

    I suppose the 2 biggest things if I was looking at this would be:
    Future prospect
    Money
    The perl shop sounds cool but from your research it looks like the .Net/MS stuff give you better prospects (but it might be worth looking into what kind of work you'll have - not worth it to make shitty changes to shitty code). The money depends on your situation. 66% would seem to beat 20% but if you're pretty happy with your current salary then it might not be such a big issue for you.
    Got to admit - wish I had your problem (currently slaving away with Oracle Forms - shudder...

    --

    ---
    We spoke for about a half an hour. I don't recall a thing we said. - Colorblind James Experience

  6. Choose your next elective surgery.. by Anonymous Coward · · Score: 5, Funny

    Vasectomy, or frontal lobotomy.

    1. Re:Choose your next elective surgery.. by James+McGuigan · · Score: 2, Insightful

      Thats easy: a vasectomy means never having to worry about children. A frontal lobotomy on the other hand would be like having to program in VB all day.

  7. Follow your heart by gnool · · Score: 5, Insightful

    It seems to me that your heart is set on the Perl job. Are you waiting for someone to give you permission to choose the lower paying job that you think you'd enjoy more? Life's too short, go for the Perl job, you know you want to :-D

  8. Money != Happiness by pedestrian+crossing · · Score: 5, Insightful

    For me, being happy doing my job is worth a lot. I've recently switched from a job that paid a lot, but the environment and management really sucked. Now I'm working part-time, making about 25% of what I was making at the other job but the environment is great.

    Life isn't really that long, you need to do what makes you happy, as long as you are not starving. Going to a job you don't like every day is a mistake if there are more personally rewarding alternatives.

    --
    A house divided against itself cannot stand.
  9. Personally I'm not fan of ... by hatrisc · · Score: 4, Interesting

    either platform, but I'd consider the PERL job way before the .NET job. If you're working in a computing environment you like and are in a good company, I'd think it's a much better situation than corporate nightmare on windows. Is the .NET company a place where you wouldn't be able to install software package A because their IT department is overworked and can't support all software?

    --
    I write code.
  10. Compensation is only a part by oakbox · · Score: 5, Insightful

    I have worked for large corporations (22,000 employee bank) and very small companies (12 people) and my personal preference is to work with small groups of people who are fired up by interests similar to mine and who are good fits personality-wise.
    The big company was more financially secure, carried more prestige, and offered great and solid retirement options. On the other side, it was next to impossible to affect change, my contributions (while recognized in the form of raises and titles) didn't really make a big difference to the overall picture. Even coming up with a system that saved 1.2 million a year in expenses warranted only an 'attaboy'. Because, in a company controlling 60 billion in assets, 1.2 million isn't really that big a deal!
    The small company offered much more freedom, personal responsibility, and allowed me to make a direct and substantial impact on the bottom line of the whole company. I was in direct communication with the owner of the company, not to a manager with a senior manager with an executive with an executive vp to the CEO.

    Best advice: Play to your strengths and go with work that motivates you. You will spend about 60% of your life at work. You should spend that time doing things that motivate, inspire, and energize you.

    - Oakbox

    disclaimer: I am a programmer for career coaches :)

    --
    Not just answers, the correct questions.
  11. Decisions, decisions by $RANDOMLUSER · · Score: 5, Funny

    [ ] Perl
    [ ] .NET
    [x] Death by ooga booga

    --
    No folly is more costly than the folly of intolerant idealism. - Winston Churchill
  12. How bad is the debt? by kjart · · Score: 4, Informative
    How do you folks balance the desire for a fun job with the need to pay off debt?

    This seems to be the crux of it, at least to me. Debt can seriously limit your options, now and in the future. If the debt you refer to is significant, taking the higher paying job now and resolving that issue would probably let have more freedom in picking your workplace in the future. If you are debt-free taking a job for less money but which is more interesting is surprisingly more palatable than if the bank is knocking down the door :)

  13. Would taking the Perl job hurt my prospects ... by emilper · · Score: 5, Informative

    try to install a linux distribution for PCs without the Perl packages and see if it will work ...

    as far as I can see, the demand is not great, but quite stable ... for better or worse, Perl5 is the next COBOL ;) meaning there are huge custom apps built with Perl that won't be replaced in a hurry

    1. Re:Would taking the Perl job hurt my prospects ... by IntergalacticWalrus · · Score: 2, Insightful

      And just like COBOL, most Perl projects are unmaintainable garbage that nobody can understand! Yay!

  14. 120 miles is a far way away by cornjones · · Score: 4, Insightful

    You didn't mention how close the .net job was. 120 miles is more than 2 hours each way. That is brutal especially if there aren't public transport options. You didn't mention if you have the ability to move easily or if you are tied to your current living arragnements. This alone would make my decision.

    perl vs .net? .net is more marketable in the corp world, there is no doubt about that. .net seems to be only picking up steam in the marketplace and there doesn't look like anything is around to unseat it in the forseeable future. Still, you could easily make a good career out of perl and open source and (generally) smaller projects. You stated yourself that the perl job seems to be more casual and closer knit group, hanging out outside of work and what not. If you are new to the area or don't have a close group that may be very valuable.

    Where do you see yourself in 10 years? master of a domain of programmers building large systems? go .net. Running a small internet/web consulting shop, doing various smaller scale web sites? perl will be fine. This job is most likely a stepping stone down a path. think farther down the path a bit.

    The best thing to do is to take a couple of your close friends out tomorrow night and spend the evening getting loaded. Don't talk about this the whole time but bring up your concerns now and then. get good and drunk and when you wake up in the morning, you will know which way to go. the subconcious is a beautiful thing. seems odd but me and my friends have been doing this for major decisions for a long time now and i am still amazed out how well it works.

  15. Management management management by mosel-saar-ruwer · · Score: 2, Insightful


    Even coming up with a system that saved 1.2 million a year in expenses warranted only an 'attaboy'.

    Okay, either:

    1) Your manager [or your chain of management] was/were completely incompetent bozos, or else

    2) Unbeknownst to you, THEY took the credit [with the higher-ups] for the 1.2 million in savings, and THEY pocketed the year-end performance bonuses.

    Or maybe some combination of 1) & 2) above.

  16. I'd go with the fun by vadim_t · · Score: 4, Insightful

    Money is nice, but a pleasant life is better.

  17. Worrying about strategic choices by LarsWestergren · · Score: 5, Insightful

    My own personal and highly subjective opinion of this is -
    don't worry too much about making strategic choices. I think as programmers, we all have a small nagging worry that one of the technologies we didn't pick is going to dominate the market, and cause our hardwon skills to become obsolete. But no matter how hard you study and try to keep up, that worry is never going to go away. If you pick .Net, you are going to worry that Java is going to continue its dominance, if you spend all your spare time mastering .Net, Java AND Perl to hedge your bets, well, it might be a new framework in Ruby or Python that all the cool kids are talking about next year. But if you are skilled enough, there is always going to be some jobs available in your favourite language, and you are probably going to pick up the new technology fairly quickly if you have to.

    Pick a technology you like. If you get a job in it, fantastic. You are having fun, and you are earning money, and getting experience. Now, you can spend some time reading up on other languages, but if I were you, I'd concentrate on enjoying life.

    Now, the remaining question of what to value most - the money or the job enjoyment, that you can only answer yourself, and is the very essence of an economic transaction.

    --

    Being bitter is drinking poison and hoping someone else will die

  18. Do what you LIKE, it's an investment by cerberusss · · Score: 4, Insightful
    How do I choose? The money issue is huge, of course, and I think I'd much prefer the Perl job in terms of development preference and work environment.
    I can't tell you what to do, but I can tell you what I did myself.

    When I first started working, I was doubting between programming and network security. I couldn't find a job in the latter, so I choose a big company (Oracle). I invested heavily into Java (which is what Oracle does), but it wasn't really what I wanted. After three years, I went to look elsewhere.

    I found out that when you've invested in some specific area, people start assuming that's what you want to continue investing in. Every recruiter, every interviewing manager had the opinion that I was most useful in the Java field.

    But that's not what I wanted. After a brief stint as "just another Java developer", I found the job I wanted: programming C and Perl at an institute which develops instruments (like infra-red sensors) for climate and space research. However, it was very hard and based on my experience alone I shouldn't have gotten the job.

    My advice: you should choose whatever you're most comfortable with, because it's an investment into your future. Others will say, "but, a good CS student can program in any language/environment". It's true, but that's NOT how most people see it who might have to employ you.

    As for your debt: you can quickly pay that off by continuing to keep expenses as though you were a student. Don't start buying too expensive cars, don't buy crazy gadgets, don't invest in silly hardware, and make sure to get a girlfriend who doesn't have a hole in her hand (or at least, one who has a smaller hole than you have).
    --
    8 of 13 people found this answer helpful. Did you?
  19. My 2 pence... by Prez_n_Tenz · · Score: 2, Insightful
    If you can afford it, do what you like better. In the long run you'll probably make more doing what you like (it's why the rich get richer).

    If not, take the money and run. Nothin beats cash.

    Technology is largely irrelevant....just ask the guys who made a killing doing COBOL while everyone else migrated to C++.

  20. Why's everyone so negative about the .NET job? by Toreo+asesino · · Score: 3, Insightful

    Doing .NET is actually good fun believe it or not; assuming you can use c# rather than any of the others (VB comes to mind). Also, bear in mind that .NET covers a multitude of sins - WWW, WinForms, Pocket PCs - not just the web, so any experience gained from the job is transferable to a degree.

    --
    throw new NoSignatureException();
  21. Freedom by A+Friendly+Troll · · Score: 4, Insightful

    You probably haven't thought of one thing: freedom.

    In the large company, you will be locked to a regular user account. You won't get to install unapproved software (this includes your favourite text editors, browsers, music players, etc).

    They might run some sort of software metering service, perhaps even keyloggers.

    You will access the net through IE (which I'm sure is the official company browser), and their proxy might have half the net blocked.

    You will probably be locked into using Outlook.

    There will be all sorts of crap on your PC (since it's going to be a company-wide standard image); perhaps even something like McAfee AV, which happily chews away on 70-80 MB of RAM and makes things unbearable.

    If your workstation is lacking RAM or other hardware, you're going to have to file a ton of paperwork and have it signed by 10 different people until you get the stuff half a year later... If you get it.

    Also, it's very possible that your movement through the building will be monitored. Cameras everywhere, and your ID card will log the exact moment you get to work and leave it. Your lunch break will be exactly 60 minutes. You won't be able to go outside for a two-hour walk in spring if you feel like it and if you have nothing more important to do.

    You will work with drones, not people. Mostly incompetent drones.

    Listening to music will probably be forbidden, thought you might sneak in some headphones and find out you don't hear your phone ringing when you have them on, and if you make the music quieter, you won't be able to listen to it from the phones ringing (catch 22).

    (Disclaimer: I work in a large company. I do have admin access and unrestricted internet access, but I had to buy RAM by myself, and I'm still waiting for a new monitor - on my desk is an old 17" curved CRT.)

  22. Don't forget to look at the risks... by john_lear · · Score: 4, Insightful

    The small company, while cool, has a lot of risks associated with it. Not least of which is that small companies tend to offer less security and coupled with the fact that you would have to move house, I would think long and hard about whether this all makes sense. If you did move and the Perl shop went down the pan in six months say, would it be easy to find alternative work in this new town/city? Or would you find yourself moving back to where you live now? Of course the bigger company will not be immune from 'downsizing' either. Has this happened at all recently? How do the two companies compare in terms of their financials?

  23. Would you move by QuantumRiff · · Score: 2, Insightful

    You Mentioned that the other job is 120 Miles away from your current one. Assuming you live close to work, that is an extra 4 hours a day of Commuting! Much more if you live in a place like the Bay area where the average Highway speed is 35MPH.. If your not willing to relocate, or if the Perl Job is in a more expensive area, it seems like that would be a huge step backwards from having a life outside of work!

    --

    What are we going to do tonight Brain?
  24. .Net job stability VS Perl job stability by HappyHead · · Score: 4, Insightful

    One thing to consider is this - how often has perl been completely overhauled and replaced with something more or less incompatible with itself in the last 15 years, compared to how often the MS platform of preference has been completely overhauled and replaced with something more or less incompatible with itself?
    Perl vs Perl vs Perl compares well to VB vs VBScript vs J++ vs VB.Net vs C# vs whatever is next
    Remember that if you're going into the MS programming job, you're going to have to re-learn every new language MS comes out with to stay relevant to your job as they "switch over" to the latest greatest thing the marketing people have pushed on you, and some of them may only be there for a few months before you once again must switch over to the new latest buzz-word compliant new toy.

    What you really need to ask yourself is, "Is the added stress of the impersonal environment and having to re-do all of my work in a slightly different language every 3 to 18 months worth the extra money?"
    If the answer is yes, then go for the .Net, and remember to keep up with the latest MS programming languages or you'll be laid off as irrelevant. Big companies won't be bothered giving you time to train in whatever new system they want to use when they can always just hire a fresh batch of new graduates who only know that language.

  25. Similar experience by DLG · · Score: 4, Interesting

    I preface this by noting I have been working in IT and data processing for 18 years now, with an uncountable number of clients at this point, so I have seen a lot.

    Here are a few points:
    Programming and technology is rarely the primary challenge in any job whether its a short term contract or a fulltime position (and my father who has been in the business for 40 years pointed out that there is no such thing as a short term contract or a fulltime position.) You can make a lot of money very quickly doing stupid work with annoying people. You can work very hard with a great team, and end up with very little to show. Commuting can be exhausting, relocations can be frustrating, and all in all things that start off well can turn bad and vice versa.

    That being said, we no longer live in the world of working for the same company for 50 years. Consider it a learning experience one way or the other.

    And lets be honest. A few years working in a big iron shop or whatever the equivalent is, using the enterprise standard, within an organizational structure is going to teach you a great deal about the industry, beyond the technical.

    There are alot of variables. Flexibility of schedule, telecommuting, whichone is going to leash you with a beeper fulltime, which one is going to get you into new technologies, and force you to think for a living.

    I recently got two jobs in the same week, one programming and one heading Network Ops and I had billed out the second one at considerably more, but chose the first one because the reason I had priced the network stuff so high was because I knew it would be more punishing and less rewarding.

    Do I think, 'Hey the 100 bucks a day extra might be nice?' Yeah. But I have worked both type of jobs, and I noticed that when I get paid more to work in a miserable situation, it gets harder to save, since I need to spend the money I make on keeping me happy. While if I wake up in the morning and the only thing that bugs me is that it takes too long to get into the office to try out this new idea I woke up with, well.... You get my drift.

    Again though, and its been said, there will be other jobs. You never know what happens. My dad became a VP for a bank after years as a consultant and they did an early retirement buyout in 8 months.

    I went into my last long term contract as a database analyst and left as an expert in VoIP, having been fired by my new boss after 3 years of big raises, because he wanted to shift in his own staff...

    Also, don't worry too much about languages. I have been in shops where they are gungho about .NET and I have been in shops where the last boss was gungho about .NET and everyone pities the 2 programmers who are still forced to work in that environment (and I am not dissing .NET really. I just mean that preferences change.)

    Good luck! Congrats on having this as your difficult choices in life.

  26. Look at it this way. by xutopia · · Score: 4, Insightful
    In the Perl company:
    • hackers make technical choices
    • you use open and free software
    • you'll most likely have people like you who understand you
    • the projects you'll take on will have more chance to be difficult technically because the people giving you the work know what the languages and you can do

    In the .NET company

    • business people make technical choices
    • the stuff you'll be asked to do will probably be simple (which means boring) because business people know as little as they can get away with of the technical side of things

    I just left a .NET company to work for a php/perl/python/ruby company. At one place I had trouble getting up in time (had to be at work for 9am). Now I get up at 5 in the morning to get to work ASAP.

  27. quality by namekuseijin · · Score: 2, Insightful

    I'd go for quality of life: less coding, more freedom and some fun at the job.

    Why would you want a job at a megacorporation in what will be probably a very stressful work environment and coding in one of those ironclad languages with layers upon layers of redundant abstractions and frameworks that in the end do exactly the same as ten lines of Perl?

    money isn't worth it.

    --
    I don't feel like it...
  28. Balance by noz · · Score: 4, Insightful

    Two tradeoffs exist: income; and career vs fun.

    Income: if you do not need the money, then you do not need the money. Three hours work pays my weekly rent (and I am not earning executive dollars) because I am comfortable in a smallish flat near (not on) the beach.

    Fun vs career: there's a lot of crap about how cool is required in a job (*cough* Google *cough*). Work is survival for almost all people, and any child of immigrant parents knows the discipline they had to endure shit jobs.

    If you need the money or a stronger career path, take the 66% increase. Either way, two job offers is a lot more than most people have. Good for you.

  29. Money/Fun by FuzzyDaddy · · Score: 4, Insightful
    Part of the answer lies in your life situation. For me, (married, two kids in school, wife in school), it would be a total no-brainer - the closer job with more money. I could use the money and I wouldn't have to move my family.

    However, if I were 25 and single, I would definitely go for the hip/more interesting job. Control of your own project is much more important, overall, than the specific technology you are using, because it gives you an opportunity to look at the big picture issues - architecture, design choices, hardware constraints, etc. That will serve you very well in the long run even if you later end up using another language.

    --
    It's not wasting time, I'm educating myself.
  30. Distancing ourselves from MS as fast as possible by xtal · · Score: 2, Interesting

    We're a small shop. If I can write code once, on a stable platform, and keep it away from Microsoft's API of the week - great. Whenever possible, that means web-based applications. For things where that is not practical, and that is getting smaller, I have had great success with Python as a application environment. Compiling natively provides good speed, and with the toolkits out there it's easy to jump across platforms.

    Java offers similar advantages, but I find the GUI code overly complicated for what I want to do.

    The answer is different depending on what you want to do, but this is a trend I am noticing more and more.

    --
    ..don't panic
  31. perl or .net? both by cucucu · · Score: 2, Insightful

    Go to the .net job, earn more money and convince them to introduce IronPython. Then you'll have the money and resume of .net, and the geekyness of open source dynamic language.

    You can also make great career advances by showing them how they get more productive with Python and being their guru.

    Just writing more C# or Perl lines will not take you anywhere. Try to make highest impact and leave your personal mark on the job you do.

  32. personal decision by colonslash · · Score: 3, Funny

    I think you should take the .NET job. You obviously have trouble making personal decisions - with the extra money you can get a personal shopper to buy stuff for you and a butler to dress you.

  33. It's your life, not just a job by Peregr1n · · Score: 3, Interesting

    You spend a third of your life at work (and another third asleep, so essentially half your waking life). Don't you think being happy is more important than money? Unless you think more money = more happiness. Personally, I haven't experienced anything to justify this theory.

  34. Misleading title by StrawberryFrog · · Score: 2, Insightful

    The title "Choosing Your Next Programming Job -- Perl Or .NET?" is totally misleading. It's clear to you and to me that your deciding factors are, in order:

    1) Fun: social/work environment, large/small company considerations
    2) Money: Salary and benefits
    3) Toolset: perl or .net.

    Having said that, you can do worse than c#. I even prefer it to perl, the syntax is less of a mess. But your mileage can and will vary.

    --

    My Karma: ran over your Dogma
    StrawberryFrog

  35. Flip a coin... by matt4077 · · Score: 5, Insightful

    ... and see if you're happy with the result. If not, switch.

  36. Language not that big of a factor by nahdude812 · · Score: 5, Insightful

    Believe it or not, language is not that big of a factor in whether you like your job. As proof, I offer that I've been working 2.5 years in a ColdFusion job, and while the language feels like I'm trying to perform surgery with rusty tools, the work is interesting and challenging.

    Here's a few questions, and my advice based on their answers:

    1) Are you young? Take the higher paying job and work like mad for 5 years while living like a pauper (small apartment, used car which you paid cash for, but wide broadband and good computer). Your time in the cubicle farm will be rewarded with getting home and being able to go frag someone. You'll either pay off all your debt, develop a huge savings, or some combination thereof. This will establish the financial stability today which can permit you a lot more freedom in your job choice in a few years. This is the path I'm going, and I'll have my mortgage paid off 3 years from now (5 years after I opened it).

    2) Are you willing to relocate? If not, you do NOT want that Perl job no matter how good it looks. 2.5-3 hours of driving a day will sap way more of your life than working in a corporate environment. Every single day you will arrive at work tired, and every single night you will get home exhausted. I drive 1.5 hours now, and this is absolutely my upper limit. Something most folks don't really think about is that they get errands done during the week, which I don't have time for even with my (short compared to yours) drive. That means my weekends get sapped up getting stuff done which most people get done during the week. Opportunities for relaxation become few and far between. During the week you'll get home from work and just crash on the couch until you fall asleep, exhausted. My drive takes more out of me than my work day does, by a long shot.

    3) Do you have a wife and/or kids? You're going to want to take the job which provides sufficient financial stability, while giving you the most time with them. If not, refer again to question 1.

    4) How many hours are generally worked by the employees of each location? I've seen small companies which generally work 40 hours and no more, and I've seen big companies which are this way. Also I've seen small companies which expect each person to put in 70-80 hours, and I've seen big companies which expect each project to meet its deadline no matter how unreasonable. Total amount of free personal time is way more important than how much you like the work you're doing.

    5) How busy are the people at each place? Too busy as in #4 is bad, but too slow is just as bad. Nothing is worse than trying to muddle through another work day with nothing to do, and nothing interesting to keep your mind occupied, while you surf work-friendly sites such as Slashdot, and hope your web usage doesn't get high enough to raise eyebrows. This will actually lead to a state of mental apathy which is very hard to shake, and which can seriously cripple your career for years. We've had people like this, and have had to get rid of them because we could never depend on them to get anything done in a reasonable amount of time even though once upon a time they were firecracker developers. 3 or 4 years in a job like this can ruin a developer, sometimes forever.

    I hope these thoughts help. Largely they're based on my own personal experience, but to some extent they're also based on having been a developer manager for a firm which contracts most of our people out to other companies (hence my experience with point 5).

  37. commute time by rrcjab · · Score: 5, Insightful

    one thing you can not buy is more time. It wasn't clear to me whether you would actually try driving 120 miles each way, or whether you would move closer, but if it's the former, that's about 1/4 of your waking hours you'd be spending in the car. I did this for a year. It sucked.

  38. One thing to consider by ceeam · · Score: 3, Insightful

    The amounts you talk about on interview may be nothing like you really get. On my pre-last job I settled on one thing and then several months later boss decided that he should cut in by a third and pay the difference as bonuses (theoretically even more than it was before, yeah, right). Of course bonuses only applied if boss was happy. And when you are a "small cog".... Well, you can go down depression road pretty easily. And climbing back may be a bit toughy.

  39. Why ask us? by Carik · · Score: 3, Insightful

    We can tell you what we think, but you're the one as has to make the decision in the end...

    That said: I would much rather make less doing a job I enjoy than get paid a lot for doing something I hate. Does the lower paying job cover your bills? Will it allow you to build up at least a little bit of a reserve? If you decide to move, will you be able to afford living nearer that job, and if not, will you be able to afford to commute? Assuming the answers to all of those are "yes," I'd take the job that pays less but looks like more fun. Don't buy into the American "money is everything" mentality -- money does you no good if you're miserable.

  40. Perl,old and not busted.Net, new crapness. but.... by kisrael · · Score: 3, Insightful

    I know and love Perl (in fact it probably takes the case for "least looking things up" for me) but... I don't think it's as solid career foundation right now. It's a great supplement to the Java/J2EE that actually lands me jobs, but it's getting to be more and more of an esoteric kind of skill. (And I still haven't found a way of making a decent UI for a standalone app...)

    I don't know if .Net is a "flash in the pan", but it seems to be the current plateau of a Microsofty-path. And it's not a terrible one. The mindset can be a little weird for a Perl-head, Microsoft tries to do too much and too little and sometimes it's hard to get the deep grokking that coders tend to like. But there are some upsides as well.

    This isn't an evaluation of your life position and work-culture-based decisions, just my two cents about the technologies.

    --
    SO YOU'RE GOING TO DIE: The Comic for Dealing with Death
  41. I had this kind choice a long time ago by MistChild · · Score: 2, Insightful

    First, are you willing to relocate or at least reside where the "Perl" job
    is during the normal work times? Can you telecommute for this job if not?

    Second: You say you have been doing Microsoft/.NET work since college.

    Perl/.../Linux would BROADEN your appeal to employers (and yourself) as
    you get more experience and become more senior in the programming world.
    So it would also be a professional learning experience. It never hurts
    to have balance, and more that one point of view in computing. My background
    (over just a FEW years) includes IBM Mainframe, most of the operating systems
    offered by Digital at one time or another, (U/Li)nix in several flavors
    and writing operating systems and applications. The breadth of my past
    professional background and the comfort in many platforms as contributed
    hugely in my abilities to offer value in situations where a "single view"
    (say Microsoft OR *nix OR Mainframe) contributors were banging their heads
    against the sides of the boxes they lived in.

    Third: There is the personal reward.

    Unless +20% is not enough to maintain the type of living you want, there
    is going to be an extra N% effective in self reward as well as developing
    breadth and making yourself a more salable senior programming "product"
    at the same time.

    If you were to relocate to shorten the 120 mile commute, can it be done
    in such a way as to LOWER your cost of living, for instance? (Is
    housing cheaper or more expensive, ...).

    I personally thing we, as a society, have gotten so focused on money and
    "cost of doing business "here"" that we loose ourselves and a chunk of
    self reward.

    You sound fairly new to the workplace and have time for the money to come.
    I shoot for fun and learning while it is still possible. Who knows, perhaps
    you can make the Perl shop a Python shop and/or become such a WEBbing expert
    that you won't care what platform it runs on, you can handle it and have
    a good time too. It is really nice to go home after work on a high.
    It is really nice to do something so creative, to you, that you keep beating
    in it, not because it is expected you will put in more that 40 hours, but
    because you are having fun.

    JMHO

    Bill

  42. Trends by gmerideth · · Score: 2, Interesting

    While not a clear indication of trends towards choice of programming languages, its interesting to view the queries associated with either .net or perl. Google trends shows a nice steady decline in searches for perl while .net has remained a constant.

    http://www.google.com/trends?q=.net%2C+perl

    There is also a steady decline in Java compared to C# in queries.

    http://www.google.com/trends?q=c%23%2C+java&ctab=0 &geo=all&date=all

    Could it be that nobody needs to search google for examples, updates, information versus C#? Who can tell.

    --
    Why do overlook and oversee mean opposite things?
  43. .BORG er .NET of course by Ranger · · Score: 2

    You must come over to the .dark .side. .Become .a .NET .developer. or you could become a Ruby zealot. I've heard it involves becoming an acolyte but you must first sacrifice an old Amiga (or is it a goat?) on the alter of zealotry. Perl is cool and all, but I recently converted from Perl to Python and it is wicked cool. Once I got past that weird whitespace thing it's really nice to not to have to put a ; after each line. I think Python hits the language sweetspot. It's an object oriented scripting language robust enough that you don't have to learn Java. You get the added bonus of being more productive for things like web development.

    --
    "You'll get nothing, and you'll like it!"
  44. Where will you learn more? by TwobyTwo · · Score: 2, Insightful

    If one of the two will give you a chance to learn more than the other, I'd consider that pretty seriously. In the long run, you'll probably have a more successful career and (if you care, a more prosperous career) by taking jobs where you'll work with the brightest most interesting people, and where you'll have the greatest chance to learn about useful technologies, business techniques, or whatever gets you up in the morning.

  45. Pills red and blue by mysticgoat · · Score: 2, Insightful

    A search of Dice shows a lot more .NET jobs. Would taking the Perl job hurt my prospects in the future?

    Let's just focus on this. And sum your current professional coding experience as X years. Then in two years

    • If you go with the MS shop your resume can say "X+2 years experience coding in a Microsoft shop using .Net, C#, yaddayadda"
    • If you go with the small shop your resume can say "X+2 years experience coding in a range of environments including .Net, Perl, etc; AND 2 years of increasing responsibility in managing web coding projects including working directly with clients, and contributing to modifying specifications and contracts to meet changing requirements, yaddayadda"

    For several years I chaired the LPN Board for a large hospital, which screened applicants for hire and promotions. A big chunk of our work could be summed up with this question: "Is this a nurse with five years of experience, or a nurse with one year of experience repeated five times?" The same thing applies here. I don't think your decision is about money. I think it is about whether you want to take the red pill or the blue pill.

  46. Make your own destiny by KFury · · Score: 2

    Take the Perl job and start moving them to Python*. Perl is dead for web development, but it sounds like this kind of shop would be able to move on to the next technology and let you have fun while doing it.

    * rand(Python, JServe, LAMP, Ruby)

  47. Which job will make you happiest? by AugstWest · · Score: 4, Insightful

    Money isn't all that, and there's a MAJOR factor missing in your information.... What are the overtme/crunch time/weekend situations like?

    Being happy in your job is a major factor of leading a happy life. If you hate your job, odds are you're going to hate your life. If you have to work a lot of overtime and weekends, it can really make life suck.

    One good way of dealing with this is insisting on comp time for overtime. Make sure your company knows that you expect a fair deal. If you have to work 8 hours on a Saturday, you should get a comp day. They're hiring you, not buying you.

    Also, money isn't everything. BUT, if you are young, and the pay is really good, it can't hurt to put several years into making good money as long as you somehow invest it. I slaved away in a .com for 5 years, and some of them really sucked, but I dumped all of that money into my house. After 7 years I sold the house in the "perfect little suburban community" for a boatload more than I paid, and bought a cheap house, and I was able to put a huge chunk of money down on it, reducing my monthly mortgage payment.

    Now I have a low-stress job with greatly reduced pay, but I also have much smaller financial needs, and I'm as happy as I can be.

    Always keep your eyes on the prize. Happiness.

  48. Um... This is a job not a hobby right? by Dissenter · · Score: 3, Informative

    Something that I learned early enough to make a difference, but late enough to lose momentum is that your next job depends on your current job. Here's what I mean. If you are making X then you can expect your next job to be at least x + .15x or a 15% increase. I would never leave a job for more than a 15% increase unless there were serious problems. Taking the Perl job sounds like a ton of fun, but remember than smaller companies often need longer hours. The side benefits are nice, but there are usually needs on the side too. If you take the smaller raise, you will probably find yourself still working towards that x + .66x income in 5 years. If you take the .NET job you will be looking for the salary of 1.66x + .15(1.66x) rather than 1.2x + .15(1.2x)

    To take the math out of this you will be playing salary catch up for years and probably won't catch up for a long time if ever. I turned down a 60% raise 7 years ago and just caught up to that level last year. If I'd taken that money then, I would be much farther ahead right now.

    Let me qualify this by stating that MONEY ISN'T EVERYTHING. I understand that, but I have a wife and a son and they aren't cheap.

    If I were you and didn't have a huge preference between languages, I can play Half-Life at home thank you very much. Besides every time I play almost any game with co-workers they're a bunch of peon n00bs anyway ;-) and it gets old fast.

    Money does mean something, otherwise we'd all be working on software projects and just giving it away... wait a second....

    --

    Dissenter
    "There is no knowledge that is not power."

  49. Excellent decision making skills... by ryanvm · · Score: 4, Funny

    I can't tell you which job to take, but I hope your resume doesn't list decisiveness as one of your strengths.

    [I keed, I keed.]

  50. The simple rules by gatesvp · · Score: 2, Informative

    OK, here's the straight stuff.

    The goal is to find a job that you can survive over the long term, but to extract as much money as you can while you're there.

    Measure yourself against this.

    • If you dread getting up every morning, you should probably get a different job. This is true of either job. This level of stress can severely impact on the job performance and personal health. Poor performance and poor health both negatively influence your goals. Don't confuse dread with natural fear.
    • Find a value for your personal time. This will help you decide how long you want to be at the office each day. Working long hours will help extract money, but won't help survival. And there is a point where working extra hours is actually costing you money because you don't have time for things like cooking or laundry or cleaning or even shopping.
    • Your annual salary must factor in the amount of time involved in work. If I make 38k working 37.5 hours/week and you make 45k, but have to work 45 hours/week, you're not making more money, you're just being allowed to work more. How good is a promotion if the extra required hours just wipe your hourly increase?
    • This work time includes transportation time. If your old commute was 1 hour/day and your new commute is 3 hours/day, then your (typical) work week goes from 45 hours/week to 55 hours/week. In a case like this a 20% pay raise just means you're working more, not really getting paid more. Heck you may be losing money if you're driving. And moving is a definite expense.
    • Work time also includes health time. If one job lets you work out over lunch hour and then eat at your desk, then you've just made a huge time (read monetary) gain. Maybe one job has a subsidised cafeteria which could actually save you time and money when you don't need to prepare your own lunch.
    • Work time also includes training time. If one job has a bigger training budget, then you're making huge gains. Growing your skill set improves your value to both this company and the next. This increases your survivability and your ability to extract money. Smaller companies generally don't have the budget to train employees or offer pay raises to employees who train themselves, this could cause issues (see next).
    • Work time also should include time spent finding a job. Finding a job is often time consuming. If you plateau at the PERL job in 2 years, you'll have to find a new job sooner, which is going to cost you time (read money).
    • Work time includes benefits. You've noted this as similar, but policies like sick days, flex time and vacation increments are all very important. Nobody like being sick, but sick and poor is even worse.

    So, figure out what you're really going to make/hour using some of the above concepts. Count all of the time from the moment you leave the house to the moment you get home and add/subtract the work-related time savers. Now you'll have two numbers to compare, this makes the question easy, "what am I sacrificing for X $/hour". This will tell you what your time is really worth.