Slashdot Mirror


When Should We Ditch Our Platform?

odoketa writes "My organization recently had to replace our Web developer. It took us an extremely long time to find someone with the necessary skill set. I don't know if this is because of the platform we are running (which I will leave nameless), or simply because the fates conspiring against us. It's easy to assume that languages or platforms are popular based on buzz, but the rubber hits the road when you have to hire someone to maintain that code. How are folks out there determining when you've backed the wrong horse, and getting back on track?"

125 of 622 comments (clear)

  1. Solution by TheSpoom · · Score: 5, Funny

    Stop using FORTRAN. It really wasn't built for the web, you know.

    --
    It's better to vote for what you want and not get it than to vote for what you don't want and get it.
    - E. Debs
    1. Re:Solution by shutdown+-p+now · · Score: 3, Informative

      You're joking, but sometimes it's for real. Care to try PL/SQL for that instead?

    2. Re:Solution by lexarius · · Score: 5, Funny

      You'll change your mind after you see FORTRAN on Rails.

    3. Re:Solution by Anonymous Coward · · Score: 5, Funny

      FORTRAN runs in Ruts, not on Rails, don't forget.

    4. Re:Solution by sirgoran · · Score: 2, Funny

      Damn!
      And here I was thinking that COBOL on Rails would be released first.

      Looks like I backed the wrong horse again!

      Man, I am going to be SOOO fired for this...

      --
      Carpe Scrotum - The only way to deal with your competition.
    5. Re:Solution by MightyMait · · Score: 2, Insightful

      Hey, this is funny! Don't you get the joke? Ruts=punch cards.

      --
      Nothing interesting to say...MUST...NOT...REPLY...ohtheheckwithit.
    6. Re:Solution by HomerJ · · Score: 5, Interesting

      I've actually WRITTEN web backends in Fortran....how else are you going to make a pretty website with data that only sits on a 20 year old VAX?

      I also did one site in Fortran just to see how it would work. Fortran write statements using formats, is a lot better than using C, I'll tell you that much.

    7. Re:Solution by mengel · · Score: 3
      Sure it was! How about the following demonstration:

      program hellocgi
      write (*,100) 'Content-Type: text/html'
      write (*,100) ''
      write (*,100) 'hello world!'
      stop

      100 format (a)

      end
      (Boy is it hard to get Slashcode to do a decent fortran listing -- I had to do double-nested blockquotes with ecode blocks inside except for the line numbered part... And I had to add this at the end to make it not complain about how many characters per line the post is)
      --
      - "History shows again and again how nature points out the folly of men" -- Blue Oyster Cult, 'Godzilla'
    8. Re:Solution by hullabalucination · · Score: 3, Funny

      Stop using FORTRAN. It really wasn't built for the web, you know.

      Oh, haven't you heard? HTML tables are out; layouts based on Hollerith fields are in.

    9. Re:Solution by greg1104 · · Score: 2, Funny

      FRAILS? That sounds about right.

    10. Re:Solution by Just+Some+Guy · · Score: 2, Funny

      You're joking, but sometimes it's for real. Care to try PL/SQL for that instead?

      I walked into a job interview and saw a book, "Web Development with Visual RPG". I got up and left.

      --
      Dewey, what part of this looks like authorities should be involved?
  2. Which platform? by Anonymous Coward · · Score: 5, Funny

    How do you expect Slashdot readers to tell you whether to ditch your platform unless they know whether it is Microsoft or not?

    1. Re:Which platform? by Brian+Gordon · · Score: 2, Insightful

      Why can't we know it anyway? That's just stupid, like for security reasons or something we can't know? Nobody answer this joker.

    2. Re:Which platform? by LithiumX · · Score: 5, Insightful

      Maybe he wants an objective response?

      If you know what platform he's talking about, opinions would be skewed based on what people think of that platform. It would be a distraction.

      Not knowing the specifics makes it easier to provide the general answers he's looking for.

      --
      Do not confuse "Freedom of Choice" with "Free Will".
    3. Re:Which platform? by Brian+Gordon · · Score: 4, Insightful

      Or not- many older platforms are just worth ditching in favor of easier or more efficient platforms. Yeah he'll get objective answers, but they won't be valuable.

    4. Re:Which platform? by mooingyak · · Score: 5, Insightful

      The platform is irrelevant. Maybe you could list a dozen problems with it off of the top of your head, but THAT'S NOT WHAT HE'S ASKING.

      He wants to know, generically, how you decide that what you're using is the wrong choice.

      --
      William of Ockham had no beard. The most likely explanation is that it was chewed off by squirrels every morning.
    5. Re:Which platform? by orclevegam · · Score: 2, Insightful

      Ok, let me see if I follow your logic here. We're supposed to provide feedback on whether he should ditch his platform or not, but we can't know what the platform is because it might effect our opinion of whether he should ditch it or not. Riiiight. Hey, you think I should be using a different brand of shoe, but I can't tell you which brand I'm currently using because it might effect your opinion of whether I should switch or not.

      News flash, when asking for an opinion about something, you have to tell people what that something is so that they know which opinion they're supposed to be giving you. I suppose I could just run down the list and toss out an opinion of every platform that's ever existed and you could make your decision based on that, but that really wastes rather a lot of time don't you think.

      --
      Curiosity was framed, Ignorance killed the cat.
    6. Re:Which platform? by orclevegam · · Score: 5, Interesting

      He wants to know, generically, how you decide that what you're using is the wrong choice. All choices are wrong, some are just more wrong than others. Generally you attempt to find the least wrong choice at that time, and then periodically re-evaluate the cost of switching to a newer less wrong choice.
      --
      Curiosity was framed, Ignorance killed the cat.
    7. Re:Which platform? by LithiumX · · Score: 2, Insightful

      There is no single general answer, but:

      If the system is already fully developed and no major changes are expected, that's a plus for sticking to their guns.

      If they can find an already-good web developer who's willing to pick up a new platform (and they're in no rush to change it much), that's another plus for sticking with it.

      If the system itself is older, then a rewrite becomes more reasonable even if it works great.

      Is the website largely static? Platform barely matters then.

      Is the site Java based? Dump that trash, because only bitches use Java.

      That is some of my totally unbiased generic input.

      Maybe it would be a good idea if a list of current "optimal" systems were given out. On second thought, though, maybe it would be better if the actual platform were named, as any ProductX blasting would still contain a few useful threads.

      --
      Do not confuse "Freedom of Choice" with "Free Will".
    8. Re:Which platform? by orclevegam · · Score: 2, Insightful

      Is the site Java based? Dump that trash, because only bitches use Java. Out of curiosity, what would you recommend using instead of Java (and don't you dare say PHP)?
      --
      Curiosity was framed, Ignorance killed the cat.
    9. Re:Which platform? by LithiumX · · Score: 3, Interesting

      Out of curiosity, what would you recommend using instead of Java (and don't you dare say PHP)?

      My unreasoning hatred for Java blinds me to any semblance of logic. I would suggest Ada before I'd suggest Java.
      --
      Do not confuse "Freedom of Choice" with "Free Will".
    10. Re:Which platform? by Grayputer · · Score: 5, Insightful

      No he it NOT asking whether he should drop his platform. He is asking the more general question, how do you know when ANY platform has reached it 'drop' time'. You want to feed him a fish, he is asking to be taught to fish, big difference.

    11. Re:Which platform? by LithiumX · · Score: 4, Informative

      I do believe the original question was how do you know when you're off-track, rather than asking if he should drop his specific technology.

      Using the shoe analogy, I'd probably say that if she shoe was comfortable, wasn't breaking down after a week of use, and people weren't openly ridiculing your choice of footwear, then your brand should be fine. If it wasn't comfortable but everything else checked out, I'd suggest a different type of shoe regardless of brand. If it was breaking down immediately, hell yes get another brand, and consider spending more than $15 bucks next time. If people are laughing, then you venture into a whole new line of questioning.

      Through that whole thing, I don't need to know what brand you wear now. If I did know, I could give you better advice, but what if you were wearing a brand that might not be popular on a particular forum? You would have to separate out the BrandX-haters who make reasonable arguments from people who honestly don't care but have a low opinion of that specific brand.

      Which proves the man is running a Microsoft product, because he's hiding something. Only MS can produce that level of guilt.

      --
      Do not confuse "Freedom of Choice" with "Free Will".
    12. Re:Which platform? by moderatorrater · · Score: 5, Insightful

      The answer's easy: ditch the platform when the costs of maintaining it become greater than the cost of switching. That answer's so easy, in fact, that it's pointless to ask slashdot about it, bring it up in conversation, or even think about it for more than 2 minutes.

      If you want something that actually requires an answer, you need to give more details. What's making him think of switching platforms? What's costing so much in maintenance or in finding people that it's just not worth it? Are these difficulties in his head, or is he actually having problems?

      My guess is that he's talking about ruby on rails, because it's got a lot of hype and it's short on people with the necessary skill set. My answer in that instance would be, don't go with a young platform in the first place. Don't buy into hype until it's so mature that it doesn't have any hype, just a good solid list of pros and cons.

      But maybe he's using .NET, in which case the necessary skillset is having your head up your ass ;) But seriously, if he's having problems finding people of the right skillset on .NET, he needs to increase pay or switch to a platform where the pay's not as high as it is.

      Perhaps he's using LAMP on either perl or php. If it's perl, he should shift to php as soon as possible, because perl code becomes very hard to maintain the longer it goes and developers are fewer and higher paid. He might have a problem with php because the developers lack the professional focus, in which case he should tighten his hiring practices.

      Those are just some of the possible scenarios, and each of them requires a different response. The variables going into platform decisions are so complex that asking for an analysis without giving details requires a response that would be well over a hundred pages. He deserves credit for coming to the proper forum for his question (instead of asking a legal question, like "when is it legal for me to take my children without my ex-wife knowing?"), but that doesn't change the fact that any discussion which arises will be based on things that almost certainly don't answer his question.

    13. Re:Which platform? by blincoln · · Score: 4, Funny

      Is the site Java based? Dump that trash, because only bitches use Java.

      I didn't know Lil Jon worked in the tech industry. I suddenly feel the need to crunk-enable all of my servers.

      --
      "...always new atoms but always doing the same dance, remembering what the dance was yesterday." -Richard Feynman
    14. Re:Which platform? by mysqlrocks · · Score: 2, Insightful

      Out of curiosity, what would you recommend using instead of Java (and don't you dare say PHP)?

      PHP + Zend Framework - seriously

    15. Re:Which platform? by MightyMartian · · Score: 3, Interesting

      Perhaps he's using LAMP on either perl or php. If it's perl, he should shift to php as soon as possible, because perl code becomes very hard to maintain the longer it goes and developers are fewer and higher paid. He might have a problem with php because the developers lack the professional focus, in which case he should tighten his hiring practices.


      I'm attempting to manage someone else's PHP code, and I can tell you it can be every bit as awful as maintaining alien Perl code. Throw in a spattering of CSS and DHTML, and man-o-man, but trying to read some absent developer's mind can be a nightmare.

      So here I am, thinking about redoing the whole thing, just so it makes sense. This is the real problem with a guy sitting in his basement writing your platform for you. Unlike a team where there is proper documentation, notes and usually decently documented source code, you have a collection of half-baked half-used ideas tossed together until they work, but in a fashion so maniacally complicated that you end up spending more time (and thus money) trying to sort it out than if you just simply rolled your own again.

      Of course, the guy that follows you has the same problem, because the need to get it into production fast means you don't properly follow conventions either. It's an endless vicious cycle, and PHP is every bit as bad as Javascript, Visual BASIC, VBA and so forth for producing this shitty code.
      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    16. Re:Which platform? by Omnifarious · · Score: 4, Interesting

      My hatred of Java has nothing to do with speed. The platform has become a giant morass of 'enterprisey' 'solutions' that create more need for more 'solutions'. And all Java 'solutions' must somehow involve XML, because it's standard, and enterprisey.

    17. Re:Which platform? by Omnifarious · · Score: 2, Interesting

      I would highly recommend either Python or Ruby, though my general preference is for Python. TCL is an awful tar pit put there to make it easy to spot academic things that aren't actually useful in reality. They all seem to get trapped in TCL. It's eerie.

    18. Re:Which platform? by Rary · · Score: 4, Insightful

      But there isn't a general answer. In order for anyone to give an accurate assessment of the situation all factors must be taken into account.

      I think that's the point. He doesn't want us to assess the situation for him, he wants us to identify what the factors are that he should take into account to do the assessment himself.

      If he leaves the assessment to the SlashHorde, the factors that will be used will include religious bias. He's trying to eliminate that.

      --

      "You cannot simultaneously prevent and prepare for war." -- Albert Einstein

    19. Re:Which platform? by Plugh · · Score: 2, Interesting

      As a person who's been using Drupal for the past 2 years, I can honestly say, I'd prefer to be beaten up in the face than have to use Drupal any more.

    20. Re:Which platform? by mooingyak · · Score: 2, Funny

      If your chosen platform [snip] is unpronounceable.

      This reason. I like this reason. Is good reason.

      --
      William of Ockham had no beard. The most likely explanation is that it was chewed off by squirrels every morning.
    21. Re:Which platform? by CustomDesigned · · Score: 4, Informative
      My hatred of Java has nothing to do with speed. The platform has become a giant morass of 'enterprisey' 'solutions' that create more need for more 'solutions'. And all Java 'solutions' must somehow involve XML, because it's standard, and enterprisey.

      I sympathize. However, that is hatred for J2EE, not Java. I stuck with JDK 1.1 until last year just to keep away from J2EE. However, I've found that you can safely ignore that crud, and just use core stuff. It doesn't affect startup time thanks to the classlib precompiler introduced in Java5. (In theory, you can create your own custom compiled classlib minus the crud to save memory also, but the memory isn't an issue anymore with current hardware.)

    22. Re:Which platform? by mongus · · Score: 3, Informative

      Not all Java "solutions" use XML and require that you develop EJBs. You just haven't seen the right platform for Java web development.

    23. Re:Which platform? by forgotten_my_nick · · Score: 4, Insightful

      "I stuck with JDK 1.1 until last year just to keep away from J2EE."

      ROFL. That's like saying I stuck with Windows 95 because I wanted to stay away from XP.

      Even 1.4 JVM is considered dated by todays standards and still way better then 1.1.

    24. Re:Which platform? by kramulous · · Score: 2, Insightful

      You would have to separate out the BrandX-haters who make reasonable arguments from people who honestly don't care but have a low opinion of that specific brand. That would be nothing like ...

      Is the site Java based? Dump that trash, because only bitches use Java.

      and people weren't openly ridiculing your choice of footwear ... Honestly, who cares if it is popular or not? If it works and is not breaking down, don't change it. This may not be a case of needing a "Superstar programmer" but actually having programmers who are barely competent. How hard is it to learn a platform and language that enables you to find what is breaking in unknown code? And making minor changes to that code to fix it. It's not rocket science. You only need basic debugging techniques and google.

      Which proves the man is running a Microsoft product, because he's hiding something. I think he may actually be referring to Apple. But like you pointed out, wants to avoid the fans.
      --
      .
    25. Re:Which platform? by localman · · Score: 4, Insightful

      ditch the platform when the costs of maintaining it become greater than the cost of switching.

      Yeah, sounds so simple -- except you've missed a critical variable: how much does it cost to maintain after the switch.

      If the cost of post-switch maintenance is only 80% as much per year as the pre-switch cost (a generous estimate in most cases), and the switch takes you only six months (another generous estimate), it's a 2.5 year ROI. Meaning you'll actually be behind where you would have been for 2.5 years before getting any advantage out of the switch. How many businesses can weather that?

      I've never seen anyone correctly estimate the cost of switching. Partly because they underestimate the costs of maintenance after switching, believing in the glowing code Utopia of the promised platform. And partly because rebuilding from scratch is usually much more time consuming than people expect: most working systems have lots of tedious, forgettable, but absolutely critical code that must be rewritten and debugged.

      To answer the original poster's question: if you've got a substantial working system (read: reasonable performance and reliability) stick with it. Almost any platform can be set up well enough that a decent programmer can work well with it. If the maintenance is such trouble it may be that the programmer sucked, not the platform. In that case, a good programmer can slowly replace the most troublesome components and bring it in line for probably less than the cost of a full switch.

      If you can't find programmers who are expert in your platform, look for programmers who are generally experienced and hungry to learn your platform. They're often better anyways.

      If the system as it stands doesn't work (read: has major performance or reliability problems), then a switch is a more reasonable option.

      Cheers.

    26. Re:Which platform? by zymurgyboy · · Score: 2, Insightful
      He's already stumbled on part of the answer to his question anyway. If you cannot find candidates to interview that have even heard of the platform you're hiring to support, that's a pretty good indication that the rest of the world has moved on... And perhaps you should as well.

      Been there, done that, rather not do it again. Better to have a pool of people from whom you must determine who sucks, who doesn't, who's a scheister, and who's the straight shooter than a pool of one who could be any combination of the above.

      --
      If you never make mistakes, it's probably because you're not doing anything.
    27. Re:Which platform? by LWATCDR · · Score: 3, Insightful

      Sorry I have work on both Perl and PHP. I see little difference in them as far as read ability. Heck if nothing else PHP can be worse.
      Python seems like it is better for maintenance but that is from just a quick look.

      --
      See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
    28. Re:Which platform? by SatanicPuppy · · Score: 3, Insightful

      These days I develop primarily in Java and Php, and I can say with assurance that if you think you can do anything in php that you can do in Java, you're out of your mind.

      Php has its place, and it's easy to develop in, but if you can do everything you ever need to do in php, you have pretty simple needs.

      --
      ad logicam Claiming a proposition is false because it was presented as the conclusion of a fallacious argument.
    29. Re:Which platform? by powerlord · · Score: 4, Funny

      I wear KDEs shoes. Don't all Linux users?


      Only the Dyslexic ones.
      --
      This space for rent. All reasonable inquiries will be entertained at proprietors discretion.
    30. Re:Which platform? by Dragonslicer · · Score: 5, Interesting

      Sorry I have work on both Perl and PHP. I see little difference in them as far as read ability. Heck if nothing else PHP can be worse. The big difference is that PHP gets more readable as the skill level of the person who wrote it increases, while Perl gets less readable as the skill level of the person who wrote it increases.
    31. Re:Which platform? by MightyMartian · · Score: 2, Insightful

      The problem is that a lot of firms, even some larger ones, don't want to pay the initial outlay for a well-trained programmer. It's more like "Bob, do you know anything about website scripting?" "Why sure Doug, I read the PHP Cookbook last week!" "Great, Bob, write us an E-commerce site."

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    32. Re:Which platform? by SanityInAnarchy · · Score: 3, Interesting

      Depends how you measure efficiency, but yes. (Also depends how you define "framework".)

      I'm sure someone could write a book -- I haven't got the experience, but someone -- which covered all the possibilities here. Fact is, this is actually something you want to do your best to translate into numbers, and then have a manager look it over and make the call.

      The kinds of questions you want to ask are:

      • How much work is it, really, to find people with the skills?
      • How much does it cost to train people who don't have the skills?
      • How efficient are they at developing for this framework? If possible, measure in dollars to functionality.
      • How long is it going to take to migrate to a new framework? How much money? Double those amounts, because you're underestimating. (Yes, you are. Really.)
      • How long are you intending to keep the product you're developing on that framework?
      • How much does it cost you now to maintain?
      • Based on all of this, how long before your migration pays off?

      You could fill a book with questions like this, analysis, etc -- it's really a bunch of boring business stuff. And it's going to be very different based on what the framework is, what your project is, the lifespan of your project, etc.

      For example: I just finished porting a simple corporate website (and a blog) from an old, contractor-hacked version of a blogging engine to a shiny new one. In the process, I tried to avoid touching the actual engine itself, rather adding our skin as a theme, and adapting the site to the features the engine had, rather than the other way around.

      Say what you will, but it took the contractors months to make those modifications, and it took me about a week to port what I saved of their stuff over to the new engine. The old site was buggy as hell, probably because of the contractor modifications. The new one actually works.

      Now, a few jobs ago, I was working at a company which had a fairly large .NET app, which had SQL injection vulnerabilities all over the place, and was not fun to maintain. But we did anyway, because it was a big app, and we'd lose money anytime it went down, and so on. Maintenance may have been a pain, but a ground-up rewrite was just not feasible, as much as it was needed.

      And then there was the odd job I did -- a single server (an old, retired computer) which sits in a corner, whose sole purpose is to run a single app once every three months. I hacked it together as an AJAX app before I really knew JavaScript, with an ugly, hackish backend, horrible limitations, etc. But it allows one person to do in 20 minutes to an hour what used to take two people more like five hours or more, and allows reports to be sent via email, rather than printed out. And it's only run once every three months, so as much as I would like to patch it up now that I know better, it's not worth it -- it's good enough, and no new features are really needed.

      --
      Don't thank God, thank a doctor!
    33. Re:Which platform? by bunratty · · Score: 2, Insightful

      Keep in mind the original question. The submitter had problems finding a developer for their language. Are there really as many Python, Ruby, or TCL programmers out there are there are Perl, PHP, or ASP programmers? That's why I tend to stick with more commonly used languages. I haven't bothered to learn Python or Ruby, as I prefer to use Perl in case I need to hand the code off to someone else. I write server-side web code in PHP, even though I'd rather stick with Perl, which I'm more familiar with.

      --
      What a fool believes, he sees, no wise man has the power to reason away.
    34. Re:Which platform? by Roadmaster · · Score: 2, Informative

      Using vim? here ya go (automatic end insertion on ruby and erb code). Not using vim? well not everyone is perfect ;)

    35. Re:Which platform? by LWATCDR · · Score: 2, Insightful

      I don't buy that. If a perl developer has the skill of writing readable code then it will be readable. Yes they will have to stop using the mentality that every perl program should e written like a one time use macro but it can be done.

      --
      See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
    36. Re:Which platform? by jimijon · · Score: 2, Funny
      I can only say one thing WebObjects! WebObjects with WOLips on Eclipse and Wonder blows everything away.... everything. It is a very, very, exciting time to be a WebObjects developer again. Before I was just kicking out the code and the solutions while the JSF, etc, guys where still going blind with XML. True components, true Eclipse, it just Rocks!!!!


      It really does.

      --
      Mind | Body | Spirit | Cash
    37. Re:Which platform? by lordSaurontheGreat · · Score: 2, Insightful

      Yeah, right now Java's getting a firm Ruby in the butt though. The number of RonR apps I'm seeing developed is quite interesting. Personally this Ruby on Trains crap gives me a massive headache, but it does work and if you take the time to learn the extensive API it can truly magnify the agility of your site. As soon as I saw RonR I said to myself "how is PHP not dead yet?"

      --
      Consider yourself spoken to.
    38. Re:Which platform? by skelly33 · · Score: 2, Interesting

      As someone who has spent about 10 hours a day for the last 4 years coding predominantly MySQL-backed PHP-based content management systems, I concur: most things PHP works just fine for. That includes shell scripting automation processes, communication middle-ware, commerce, front ends, data conversions, image and video generation and manipulation, and some pretty good mathematical computations. There are a couple things that I have found it lacking in however:

      1) Some of the magical pre-processing that occurs prior to PHP script execution prevents you from doing certain things such as doing the work for uploading files through a browser to the server; with PHP alone, you cannot intercept a file upload without PHP first spooling the file off to disk. I use Perl for this instead which allows me to abort uploads in progress as well as provide an upload progress measurement system.

      2) Fatal errors cannot be redirected through a graceful handler and shutdown process. This, to me, is retarded, and has recently bitten me on an application that tests and loads third party modules which may have fatal errors even though they pass syntax checking.

      3) OOP is still pretty weak. There have been improvements, but it's still incomplete. I don't like, for example, not being able to navigate a pointer tree through parent identifiers which is something that can be done in just about any other high level language. I can fake it in my own app by deriving all my objects from a base class that gets a pointer to its parent in the constructor, but it's not a capability that's intrinsic to the language.

      Those are just a few samples, but I'm sure I could come up with more if pressed. If it weren't for the widespread availability of PHP-capable programmers and open source code development in PHP today and I were tempted to choose an alternative, I'd probably fall back to Perl - an oldie, but goody that never let me down.

    39. Re:Which platform? by Tablizer · · Score: 4, Funny

      My hatred of Java has nothing to do with speed. The platform has become a giant morass of 'enterprisey' 'solutions' that create more need for more 'solutions'. And all Java 'solutions' must somehow involve XML, because it's standard, and enterprisey.

      Java is a gift from the Job Gods to make up for the offshoring by creating new specialists such as GUI architects, Object-Relational-Mapper Admins, XML Configuration Admins, I/O library figure-outers, etc. etc. etc.

      I'm applying for Hello World Architect by showing on my resume it can be done in under 30 Java classes.

      (Yeah, it's flamebait, but venting's therapy.)

    40. Re:Which platform? by syousef · · Score: 2, Interesting

      You're not alone in thinking that.

      I learnt to code in the late 80s and early 90s, when RAD was king. I went to uni and then got a job where J2EE wasn't used. I felt that J2EE had passed me by and my employability was in question.

      I transitioned to being a J2EE programmer because I felt I was losing touch with the industry. I was writing front end code using Java 1.0 just 3 years ago and using old unsupported Smalltalk for the server side. I'd been with the company for 5 years starting with the boom. Their pay and conditions went down hill but we didn't lose our jobs and the company was self funded so I didn't regret my time there, but knew it was time to move on. They started to take on J2EE work but were hiring new programmers to do that work.

      When I moved to my current job, knowing there was a learning curve, I thought it was just a matter of riding it out. What a rude awakening. No RAD tools. XML hell. Development with layer upon layer of crud that got in the way of doing the job and did little more than require huge amounts of boiler-plate and cookie-cutter wiring code. Even when I'd joined there had been a shift away from EJBs. Now the big thing is wow we have frameworks like Spring to remove the error prone code. Yippee? We're still hand writing visual code using JSP. We're still building monolithic files (jar,ears,wars) with lenghty build processes. What use to take a day to do client/server style takes a week to do in J2EE. Everyone's focused on the cosmetics of web pages instead of functionality.

      Some days I think the world's coming off the rails and society's in rapid decline. When I have to code like this to make a living it doesn't help.

      --
      These posts express my own personal views, not those of my employer
    41. Re:Which platform? by s4m7 · · Score: 2, Interesting

      I think the gp's comment was more about Perl's "hack factor," where more skilled practitioners come up with unique solutions using less-used features of the language. This owes largely to Perl's "There's more than one way to do it" mentality.

      --
      This comment is fully compliant with RFC 527.
    42. Re:Which platform? by Dragonslicer · · Score: 2, Insightful

      Depends on where you look. Most of the code you see on tutorial sites is pretty bad, since it was probably written by a teenager with no real software engineering experience. The good PHP code is usually done by professional programmers and software engineers working for a company, where it isn't viewable by the general public.

  3. But that would obsolete our hardware! by EmbeddedJanitor · · Score: 4, Funny

    Fortran works better than anything else on punch cards.

    --
    Engineering is the art of compromise.
    1. Re:But that would obsolete our hardware! by Omega996 · · Score: 2, Interesting

      I've had no experience with Fortran, but a billion years ago when I got my start in IT I remember writing programs in RPG II for a System/36. I remember the joys of the program cycle, and struggling to remember the positional params without the 'punch-card' cheat sheet. Actually, in retrospect, it's kind of keen in a really nerdy way that RPG had that 'virtual punch-card' support, but I wasn't so hot for it at the time...

  4. measure the hype by budgenator · · Score: 2, Insightful

    I've found that the more a manufacturer hypes a product the more likely it is to be a flash in the pan; If your lucky the previous programmer made a well designed application that will be easy to translate into other platforms or languages. Still sooner or later everything goes the way of the dodoe, I learned COBOL once apon a time.

    --
    Apocalypse Cancelled, Sorry, No Ticket Refunds
    1. Re:measure the hype by Kingrames · · Score: 4, Funny

      "I've found that the more a manufacturer hypes a product the more likely it is to be a flash in the pan...
      --
      When is the last time you hadn't thrown your vote away? Ron Paul even if its write-in!"

      The Irony is... overwhelming.

      --
      If you can read this, I forgot to post anonymously.
  5. move on? by Russell2566 · · Score: 2, Informative

    It's hard to give tons of feedback without knowing more about what your currently using (low use tech / vs god hates your HR staff) but if your going to consider making a tech jump, I would highly recomend making a major version jump (assuming your writing that kind of application).

    Depending on the age of the current app(s) and skill of your past developers, sometimes a total rewrite is cost saving in the long run by aiding in faster turn-around and all around easy of adding on to the app at a later period...

  6. Based on my complete lack of experience... by PresidentEnder · · Score: 2, Funny

    Right now seems like the perfect time to get yourselves a new platform, preferably something easy to maintain.

    --
    I used to carry a bottle of whiskey for snake bite. And two snakes. -Nefarious Wheel
    1. Re:Based on my complete lack of experience... by ajs · · Score: 4, Insightful

      This is probably not a great idea. Instead, consider broadening your hiring criteria, and hiring people who don't have experience with that particular platform, but know the application domain well. For example, if you're a PHP shop and you need someone to maintain PHPNuke, but can't find anyone, consider bringing in someone who knows Slash or some other Web logging software and has a grasp of the technology.

      Make one of the new guy's first tasks the evaluation of competing products and the overhead involved in moving to them, not with an eye to switching, but just to get a lay of the land and further expose him to a breadth of approaches. Periodically, send him off to appropriate conferences too.

      All together, you'll end up with a well-rounded employee who can speak to the costs and benefits of your platform.

  7. A few questions by Nightlily · · Score: 2, Insightful

    You didn't say where your organization is, but have you factored your location into the equation? Maybe in another area, you could find web developers with the correct skill set. Of course on the other hand, you could be using something outdated.

    Last time my company hired a new programmer, we had trouble. However it had more to do with the local job market, a general lack of IT talent in the area and other human factors (pay, benefits, etc...).

    You know when you are asking about an older technology when most of the younger applicants give you a blank stare and the older ones sit there for a minute thinking about the last time they used it.

  8. Wrong Question by tha_mink · · Score: 5, Insightful

    Everybody always says about the various platform/language wars, use what you can to get the job done. Since you said "web developer" and not "web developers", I assume the project isn't that large, or at least isn't large enough where you can't afford to do a bit of a re-write. The thing that is more important to me than language and platform, is design. If you have a good design, then refactoring your code_base into a different platform, shouldn't be all that impossible. (Remember, I'm assuming your application/site isn't really really big) And if you don't have a good design, then you need to redesign anyways. Just my two cents though.

    --
    You'll have that sometimes...
    1. Re:Wrong Question by Shade+of+Pyrrhus · · Score: 2, Insightful

      I fully agree - I came in here expecting to have to preach about design, but seems like you hit the nail on the head.

      If you expect things like this to happen, write them down as risks and take them into consideration when you're doing your design and plans. I understand a lot of people, especially with web code, want to sit down and just start writing until it works. At the very least laying, down the framework ahead of time will save you headache in instances like this.

      I guess when dealing with this, the best thing you can try to do is get your people to document their code and keep it as neatly modularized as possible. If you know what you had to write for your previous app, you can bet you'll be needing very similar functions/methods in the app created in the new language.

  9. Sometimes, you can't ditch soon enough by susano_otter · · Score: 4, Insightful
    The developers I support have somehow convinced upper management to let them build their app around a third-party application that, get this:
    • Can only be installed by third-party technicians
    • Costs us several thousand dollars for the installation service
    • Must be scheduled at least a month in advance for installation


    Yes, this does, in fact, mean that if one of our application servers dies and has to be re-baselined for any reason, our entire application[1] is down for over a month and will cost us several thousand dollars in re-installation fees alone.

    [1]The entire application is a system of interlinked application servers, each of which has a different role in the system and each of which represents a single point of failure.

    I know what you're thinking: You're thinking we should have ditched the development platform before we ever even implemented it.

    But you're wrong. We should have ditched the developer platform the moment they came up with this hare-brained scheme.
    --

    Any sufficiently well-organized community is indistinguishable from Government.

    1. Re:Sometimes, you can't ditch soon enough by Reverend528 · · Score: 2, Funny

      The developers convinced the management that they needed to use some god-awful platform? It's like you're working in some evil alternate universe!

  10. Sounds like you already made a decision... by javabandit · · Score: 4, Insightful

    If sensible individuals in the organization are starting to question whether or not the platform needs to be replaced, then it probably does. Because usually those discussions don't come about unless you've hit a wall of some sort: performance, unavailability of employees with those skills, incompatability, unsupportability, deprecation, et cetera.

    When you start to experience those things in your platform, its usually time to start an exit strategy.

  11. Without knowing the platform, how could we say? by seebs · · Score: 4, Insightful

    You could be talking about anything from RealBasic to perl. Without knowing, we can't even speculate on whether you can't find someone because demand is so high that they've all been snapped up, or because the product is dead.

    In general, I tend to look for a healthy third-party community. If there are multiple third-party sites, well run, with competent spelling and grammar, and no legal affiliation with the primary vendor, that's a good sign.

    Examples: Ruby, python, perl, C.

    --
    My blog: http://www.seebs.net/log/ --- My iPhone/iPad app: http://www.seebs.net/seebsfrac/
  12. Binary is better by sjwest · · Score: 4, Funny

    we train monkeys to shout 1's and 0's at computers. The Monkeys are happy.

    1. Re:Binary is better by sm62704 · · Score: 2, Funny

      We train monkeys to Write fiction.

      In COBOL. Using Hollerith cards because keyboards are for pussies.

      Am I done yet? Can I go home now?

      --
      mcgrew's razor: Never attribute to stupidity that which can be explained by greedy self-interest
  13. Immediately by z-j-y · · Score: 5, Funny

    And I recommend Ruby on Rails. Its developer community has been growing exponentially, from 5 guys in 2006 to 10 guys in 2007. If you are extra conservative, you can try Groovy on Rails. It's just like Java, but better.

  14. Use proven technology by uuxququex · · Score: 2, Insightful
    You don't give a lot of detail about your current setup.

    But here are a few tips anyway, perhaps they can make your decision easier:

    • Use a proven language, not HotNewLanguage v0.09beta. It will do wonders for your stability and you can actually get developers for it, next year when there a new hotness.
    • Use open formats, do not get vendor-locked. Maybe there are a lot of developers for your propietary system, but they are going to use the newest tools that the vendor provides, not your bound-to-be old version.
    • Keep your system simple and modular.

    So, in a nutshell, I recommend Perl, Postgresql and FreeBSD. Plenty of experienced developers, and the tools Just Work.

  15. languages, talent, and community by davejenkins · · Score: 4, Insightful
    A platform is a semi-permanent thing. You cannot just switch your website platform for a major ecommerce site over the weekend-- plan on several months of pain. If you don't plan, figure on several years of severe pain.

    Platform choice should come down to three things, IMHO:
    • language - must be flexible and interconnectable with 3rd parties. Your platform won't do everything, and you'll be using a lot of 3rd party vendors for analytics, cross-sell, reviews, image hosting, etc. Make sure your language plays nice with others: Java, PHP, perl, .NET are all 'common', so these should be good.
    • talent - in my previous city, there was a good amount of perl people, as well as java developers. Now I am in the midwest, and everyone seems to be all .NET this and .NET that-- so, .NET seems to make sense, as we would be pulling talent from this pool for our staff. Some areas of the country are stronger in different languages and platforms.
    • community - there are some great platforms out there, but their communities are dying or shrinking. Other communities have a lot of people, but most of them are script-kiddies. Beware. A platform should be both 1) a bit mature, and 2) viable community.


    Having said those points, DO NOT switch platforms just to make your developer happy. If you have a staff of architects and developers and they all agree that some new platform is better in the short- and long-run, then go ahead and switch. But if this is just the whim of 2-3 guys, tell them NO.

    One last point: if/when you do switch, make sure the clock drives the functionality, not the other way around. If you let functionality drive the clock, you'll be 4 years and several million dollars into a nightmare. Set a deadline (a REAL deadline) of 6 months and take what you get at the end of that 6 months. your developer crew (internal or external) will be augmenting and building out on that platform no matter what, so you're far better off having something cuick and crude rather than late and fancy. I cannot emphasize this point enough.
  16. Well, what is the platform? by SmallFurryCreature · · Score: 4, Insightful

    It matters, because it relates to why you might be unable to find any people for it. It might be a really obscure one that requires deep knowledge. Any programmer worth his salt should be able to switch between PHP/ASP/Perl/Ruby and the likes with relative ease. Did you look for a programmer worth his salt or did you search for someone with 10 years experience with Vista? The more obscure and closed the platform, the less likely you are to find someone with specific knowledge and them more you will just have to hire someone who can train himself on the job.

    The easiest way to determining if your platform has support is to look through personal ads, is nobody else hiring people with those skills, then you got to wonder why. Browse for tutorials, see the forums for that platform for activity.

    The way to avoid this in the future is to remain low-tech. Don't tie yourself to deeply into solutions crafted onto solutions. For instance use PHP, not bloody frameworks build on that. If you then use a software suit, build on a framework, build on a language, build on a platform, well you are going to have problems finding someone with those exact skills.

    Oh and replace PHP with whatever language you prefer.

    I see this all the time, some company buys a solution, does some half assed training, do half of the updates that are available and then a couple of years later when the site is hopelessly out of date wonders why they can't find anyone who responds for their personal ads.

    --

    MMO Quests are like orgasms:

    You may solo them, I prefer them in a group.

  17. hmmm by circletimessquare · · Score: 2, Funny

    i highlighted "When Should We Ditch Our Platform?" but IntelliSense doesn't have any suggestions

    --
    intellectual property law is philosophically incoherent. it is your moral duty to ignore it or sabotage it
  18. When the cost of maintaining it... by KillerCow · · Score: 5, Insightful

    ... exceeds the cost of replacing it.

    P.S.

    I don't buy this "we couldn't find anyone" BS. Were you, by chance, using a 2 year old technology, and your HR drones were looking for someone who "must have 5 years experience" with it. Were you looking for a laundry list of tools, apps, and domain knowledge that, realistically, no-one except the previous employee had? You could, you know, find someone with a modicum of intelligence and [*gasp*] train them. Did you insist on someone with a degree to do little more than cut and paste text files? Were you paying at the market rate? I suspect that the problem was more with your hiring process than with your technology. If it was purely a technology problem, then the answer would be obvious and you wouldn't be asking us.

    1. Re:When the cost of maintaining it... by Timinithis · · Score: 4, Insightful

      "We couldn't find anyone" usually equates to we are too cheap to pay the market rate.

      I speak from experience. I apparently set someone off in upper management, and the process was set in motion to replace me. When the company received no applications (they placed the salary range in the ad), they removed the salary and asked for salary requirements. My supervisor, who was reviewing the resumes, actually resigned when he saw how underpaid he was!

      I got a small raise, I am above the minimum range, but not close the the average for my position. I stayed only because I was already holding on a security clearance to come through for another job. Took 6 months, but it came through and I'll be resigning myself shortly .

      Never let management/HR tell you "they can't find anyone." Odds are they are too cheap to pay market.

      --
      Sig? What's a Sig?
  19. Exact same problem with Flash by paulpach · · Score: 3, Interesting

    This same thing happened to us with Flash.

    Flash was all powerful and pretty. Putting aside the serious deficiencies with flash, hiring quality people to work with it was nearly impossible. The people that where good with flash where graphics designers, they like to do pretty animations and colorful graphics, but they where terrible programmers, and knew nothing about usability and user interfaces. The people that where good programmers avoided flash like the plague ( myself included :), why did I ever go work for them? ). Usability people's first recommendation: dump flash.

    So if you are a big enough shop, and you decide to do your web application in flash, you need a minimum of 4 people: A graphics designer to do flash, a user interface guy to design your interface and a programmer to do your code, and a project manager that can make them work together. If you are a small shop, and can not afford 4 people, you should really reconsider your choice of platform.

    At the end, we ended up switching to good old HTML, the transition was very painful, but now there are lot more options when hiring, the product improved dramatically, and there is less worry about someone being hit by a bus.

  20. Asking the wrong questions.... by johnlcallaway · · Score: 4, Insightful

    So .. you can't find someone with the right 'skill set'.

    Maybe what you really need are smarter programmers. Anyone who has talent can pick up new languages, especially when they need to maintain an existing system and not create a new one from scratch. Ignoring C++ developers simply because one has a Java web platform (or WebSphere because one has a JBOSS environment) is just plain ignorant. All languages share common elements, and good developers use those elements to pick up the nuances of syntax. All application servers share common elements, and good application support staff can learn new ones.

    Every time I hear a developer or app support person say 'I don't know that', I just want to reach across the room and ask them how stupid they are. The smart ones get online, research, and learn it very quickly, the non-as-smart ones use their ignorance to stay in their comfort zone. I'd rather find the smart ones, because in 6 months there are going to be more changes in the computer industry and I would want staff that can adapt.

    So ... go find some smart people and let them loose. They'll take care of it.

    Then, once you get those smart people that have experience in other areas, work with them to determine what platform to go to, or if you even need to.

    --
    I rarely read replies, it's my opinion and if you thought about your opinion a little more, I'm OK with that.
    1. Re:Asking the wrong questions.... by G+Wonder · · Score: 2, Informative

      I completely agree with the above post. When hiring developers it is much more important to look for smart people, who get things done. Not for someone with a lot of keywords in a resume that match your particular environment. Smart programmers will be able to pick up the languages, concepts, methodologies and design patterns used in your current application whatever platform it's on.

      A smart developer will be able to tell you whether your application is built in such a way that it can be maintained and expanded upon or if it's such a mess that it may be better to abandon it to re write on another platform. So the real answer to your question is to hire someone who is smart and let them have a lot of input into the decision about platforms, technology and such.

      That being said if you can find a smart programmer who also has experience in your platform and in your business domain, that's the cats behind ;)

      I do a lot of hiring of developers at the company I work for and I've found that my favorite person to read about hiring and interview practices is Joel Spolsky, check out http://www.joelonsoftware.com/articles/GuerrillaInterviewing3.html, it's a great article that I've used as the basis for my own interviewing technique. Also check out his archives at Joel On Software. He comments on interviewing and hiring practices a lot.

    2. Re:Asking the wrong questions.... by Chandon+Seldon · · Score: 2, Insightful

      This suggests a good rule of thumb for replacing a platform:

      If a sold-seeming programmer you're about to hire says "You're using platform X? Oh god no, I'm not interested in this job anymore." more than once, it's time to switch platforms.

      --
      -- The act of censorship is always worse than whatever is being censored. Always.
  21. If you have abstraction, switching is a LOT easier by quanticle · · Score: 4, Insightful

    Most platforms don't provide a simple way to transition between one platform and another, especially in the web development sector.

    This is why you write an abstraction layer to sit between your business logic and the platform. Lets take databases as an example. Suppose your application is initially written for MySQL. Now, lets say that your application becomes a big hit, and you want to move it to a more robust backend. If you're application is tied directly to the platform (i.e. you've peppered your code with direct MySQL calls), you've got a lot of work in development and testing to make sure that all of the MySQL stuff is replaced with Oracle equivalents. However, if you've got an abstraction layer, the only things you have to rewrite and retest are the components of the abstraction layer. Its not zero work with the latter strategy, but it is a lot less work.

    This is actually one of the gripes I have against web programming as it stands today. It seems to me that programmers are far too eager to call the database directly from their application, without using any sort of abstraction layer. Sure, its faster to create the application without an abstraction layer, but it makes porting the app to another backend an absolute nightmare.

    Some lock you in more than others, but I think it would be quite difficult to switch between them, if you had a reasonable amount of code.

    If you have a good abstraction layer, even the most proprietary platform won't lock you in.

    --
    We all know what to do, but we don't know how to get re-elected once we have done it
  22. My first clue is usually... by penguinstorm · · Score: 3, Funny

    when Microsoft "embraces" the platform.

    --
    Skot Nelson music is my saviour / i was maimed by rock and roll
  23. Re:Two of Each by orclevegam · · Score: 2, Funny

    Of course, that can get costly, but, when you work for the government... ... you should save time and shoot yourself now. Oh wait, did you fill out the right form for that?
    --
    Curiosity was framed, Ignorance killed the cat.
  24. Re:What platform? by gbjbaanb · · Score: 2, Insightful

    on the other hand, we can make some inferences from this. We know its not ASP on IIS.

    I think that tells you something about why people choose Microsoft no matter what. Quite often the decision to go with a cool, new technology is not a good one simply because it is new and cool. Old and boring generally always wins in this industry.

  25. True Solution to your problem by RaigetheFury · · Score: 2, Insightful

    I don't need to know your platform to help you qualify that answer. This is easy.

    1) When you look the technology up on monster.com, how many results do you get?
    2) Does the technology have an active community? How supported is it?
    3) How big is your site?
    4) How much are you willing to spend for someone to maintain it, convert it, implement it etc?
    5) What is your time span?

    I've done a hell of a lot of conversion from PHP and ASP to ColdFusion simply because companies want a language that's easy for other developers to come behind and figure what's going on. Like ALL code... even ColdFusion can be made to look ugly by a bad developer.

    The most important thing is what many echoed already. Pick a language that has years of support behind it with an active community. You'll find your developers easily then. It also prevents the entrenchment technique used by bad developers.

  26. Do you hate the guy? by Spinlock_1977 · · Score: 2, Interesting

    Here's what I'd recommend:

    1) Get 3 vendors to bid on replacing it on your platform of choice, without any functionality changes. Triple the price of the lowest bidder, double the price of the highest, and toss the middle guy out. Then ask: Would you rather pay those prices, or live with what you've got?

    2) Answer these questions: Is it a mission critical app? Do you have support for all the hardware and software components - or are some so old that you're on your own?

    3) Is the existing code really really a mess, or just the usual well-commented mess most programmers like me leave around?

    4) What features do you need to add to it in the next year or two? Can they be added reasonably to the existing code base? Will the hardware, OS, etc support the new functionality, or cave under the weight?

    5) Do you hate the guy who wrote the original?

    Ok, maybe you should weight that last question a little lightly. But at least there's some things to think about before pulling your own plug, or someone else's chain.

    --
    - The Kessel run is for nerf herders. I can circumnavigate the entire Central Finite Curve in a lot less than 12 parse
  27. Re:Finding good web developers is hard. by sigxcpu · · Score: 3, Funny

    Pick me! I weigh less!

    - think of an add "wanted: lean, mean programmers, that are worth their weight in gold"
    - We pick the small ones, they cost less.

    --
    As of Postgres v6.2, time travel is no longer supported.
  28. Easy answer. by Colin+Smith · · Score: 4, Funny

    He wants to know, generically, how you decide that what you're using is the wrong choice. Well, that's simple. It's when you are more than two standard deviations away from the mean.
    --
    Deleted
  29. Job Trends by Target+Drone · · Score: 2, Interesting

    You can graph the trend of platforms/frameworks using job postings. For example heres rails, jsf, wicket, struts. Make sure you look at both the relative and absolute numbers though. The relative gives you an idea of the trend for an individual platform. The absolute tells you how big it is compared to others.

  30. did other factors come in to play? by petes_PoV · · Score: 2, Insightful
    You say It took us an extremely long time to find someone with the necessary skill set.

    Don't you really mean it took a long time to find someone ..... who was willing to work for you?

    Without wishing to start an argument, web developers aren't exactly the rarest species of techy. Unless you have something truly bizarre, a remote location, or are paying peanuts, it shouldn't need much more than a "webmaster wanted" ad. to have them queuing round the block.

    Did you interview lots,, and not choose any - or was it simply that no-one wanted to take the job?
    (silly thought - did you consider recruiting someone without the skills, then training them?)

    --
    politicians are like babies' nappies: they should both be changed regularly and for the same reasons
  31. ha ha by mkcmkc · · Score: 4, Funny
    You think you're joking, but you haven't lived until you've helped someone deploy their Java-on-AS/400-based webserver (itself a front-end to their RPG-based database).

    (And no, AS/400 is not the name of an obscure Linux distro, and RPG does not mean "role playing game" or even "rocket propelled grenade"--it's much worse than that...)

    :-(

    --
    "Not an actor, but he plays one on TV."
    1. Re:ha ha by sumdumass · · Score: 2, Funny

      That's probably a good idea anyways. Maybe some of us would think about asking "who's bright idea this was" when we have to do it. Of course that might get us fired when they answer us.

      Speaking of redneck equivalents and "hay yall watch this" moments, I had a neighbor who was smart enough to put an old althon thunder bird based computer in his car, over clock it, and then complain about all the heat the fans pushed from under the dash and onto his legs. So he took some foam and cardboard and wrapped the heatsink to force the air outside the car or to the passenger side or something.

      I bumped into him at a grocery store and he wanted to show me his fix so so we purchased our stuff and went outside to see the fire department raping his car and flushing it out with hundreds of gallons of water. I guess he left the computer running when he went in and the heat sink got hot enough to smolder the foam which released a bunch of black smoke. Someone called 911 and the fire department broke the windows out to get to the fire and put it out. But because the foam was encased around the heat sink, it wouldn't stop smoking until they opened the hood of the car with an axe and snipped the battery cables.

      It may not sound all that funny or weird but I know this guy knew better. He didn't even account for fresh air to get in to cool the thing, it would have just recycled the previous hot air. And the look on his face watching the fire department slam a pick axe through the hood repeatedly to get access and cut the battery cables was something else. He almost got arrested by the cop who was keeping people away but couldn't understand the frightened rambling of "that's my car". It appears he forgot how to speak for about 20 minutes after first seeing this happen.

      After all was said and done, the only things that exhibited signs of burning or fire was the tube he made for the processor heat. His insurance company totaled the car and didn't give him enough to replace it. It was a bad week for him.

  32. The Platform? It's Ruby (on Rails) by Azure+Khan · · Score: 4, Insightful

    He said all the right words to point to Ruby or ROR as the platform they chose:

    - The illusion of popularity based upon buzz
    - Lack of employable gurus who are familiar with production level platform development.

    Most of the folks who have the latter work for a firm or work as "consultants". There are few folks with enterprise or production experience with ruby systems to actually employ to develop and maintain an entire codebase, especially one expected to be a jack-of-all-trades, as their 'single web developer' issue probably requires him to be.

    I'm not saying that Ruby isn't a great development platform. I'm just pointing out that it's adoption and dissemination have not allowed it to reach the stage of .NET/LAMP/Perl/Python in terms of available production man power.

    --

    --- I'm going sane in a crazy world.
  33. What is your job description? by kcdoodle · · Score: 2, Insightful

    You probably are not the person to make this decision.

    Whenever management decides on software it is by reading one-sided literature distributed by the software vendors. Never a true story. Then it is cost driven. Never mind that the platform cannot possibly solve the business problem.

    Tell the developer(s) your problem. They know what the application needs to do and which different solutions can get them there. If you hire good programmers, they will make good decisions, that is OUR expertise.

    When management or marketing (or worst of all -- sales) get to contribute to decisions for software platforms for development, something is REALLY WRONG.

    I tend to "Pink Floyd" in situations like this.
    i.e. "Run Like Hell"

    --

    - I live the greatest adventure anyone could possibly desire. - Tosk the Hunted
  34. Don't assume it's the platform by Dynedain · · Score: 5, Insightful

    As the Senior Web Developer, I've been tasked with interviewing and hiring my team.

    It's been extremely difficult finding candidates because for website design and development, there is an extremely high ratio of signal to noise in quality candidates.

    I've only been able to find 3 people worth interviewing after posting a junior position on several job boards and with several staffing agencies. And we're using an extremely common platform and set of services.

    Anyone who's fired up design mode in Dreamweaver thinks they're a qualified developer. And anyone who's created something in Flash thinks they're a qualified designer.

    And the talented people who are easy to find, are frequently only interested in freelance work because they want the flexibility.

    As for actually switching your development stack, it's doable. Don't try to switch existing clients and projects, instead setup your new stack and only put new projects on it. There will be a learning curve, but if the end results show a significant improvement, it will be well worth it. Don't try to force in-progress projects, or old projects onto the new stack. Once you've done some work with the new stack, how feasible migrations are will become better apparent.

    I've used this method for switching web development stacks several times. From plain old HTML, to ASP/IIS, to PHP/Apache, to Object-oriented PHP, and finally to an OSS CMS that we like. Old sites are only migrated to a new stack if we are redoing the design or functionality as a new project. Otherwise we just deal with the old and focus on making the new the best we can.

    --
    I'm out of my mind right now, but feel free to leave a message.....
  35. Re:If you have abstraction, switching is a LOT eas by doom · · Score: 2, Informative

    This is why you write an abstraction layer to sit between your business logic and the platform. Lets take databases as an example. Suppose your application is initially written for MySQL. Now, lets say that your application becomes a big hit, and you want to move it to a more robust backend. If you're application is tied directly to the platform (i.e. you've peppered your code with direct MySQL calls), you've got a lot of work in development and testing to make sure that all of the MySQL stuff is replaced with Oracle equivalents. However, if you've got an abstraction layer, the only things you have to rewrite and retest are the components of the abstraction layer. Its not zero work with the latter strategy, but it is a lot less work.

    Why that's a great idea... if you don't mind crippling all of your database code so that it runs at the same mediocre level with every database. ("We can't use materialized views!"; "Why not?"; "Well, database X and Y don't have them yet."; "But we're not using X and Y...")

    (Personal opinion: if you start with postgresql, you won't ever need to switch, and database-independence starts looking like a pretty silly goal.)

  36. Let's play GUESS THAT PLATFORM! My guess is... by JoshDM · · Score: 2, Funny

    Cold Fusion.

  37. As soon as I heard this... by Weaselmancer · · Score: 3, Funny

    ..but the rubber hits the road when you have to hire someone to maintain that code...

    Soon as I heard this I envisioned pointy hair.

    --
    Weaselmancer
    rediculous.
  38. The problem with your statement... by Vthornheart · · Score: 2, Insightful

    I agree that your statement is 100% correct... but it's also not as easy as you make it out to be.

    Indeed, you should switch when the cost of switching is less than the cost of continuing with your current platform... but realizing that is obviously not the tricky part.

    The tricky part is knowing WHEN switching costs less than continuing with the current platform. That can be a very difficult question to answer, and involves looking at many, many factors.

    --
    -Vendal Thornheart
  39. Holy negativity pal by microbox · · Score: 3, Informative

    Hi,

    As a software developer I'd like to shoot back.

    First of all, I appreciate sys-admins, and would not want to do their job. But they sometimes do seem to miss a few key things about software. Where I used to work, they *refused* to let me run OS X or Linux. I even offered to pay for my own computer. This is in a large multi-national development shop, and also another time in a government department. If shares as servers are configured in a rational manner, then OS X or Linux should have no trouble talking to them, and maybe a developer may be able to to a few tricks on those systems that will save time. But no - the sys-admins just said:
    + Too hard for us to administer (yes your highness)
    + We can't run our anti-virus on your computer (ahem, I don't need that crap)
    + We can't tell if you're running unlicensed software on that computer (why don't you just like, ask me?)
    + We can't tell if you're running encryption software of packet sniffers you would-be corporate spy?

    This last item is a complete joke. For some reason, a few of the sysadmins I've met aren't clued into the fact that you can get source-code and compile it into a binary and then execute it. Pretty standard stuff. Software doesn't *have* to be installed using some wizard-install-software, and never need show up on any audit. Perhaps you could scan the computer for filenames of well-known software, but that wouldn't stop someone who knew what they're doing. I asked one "top" resource if he'd let me use it anyway if I could sniff the network from a windows box without "installing" any software - he looked at me like a criminal.

    Autocratic, and completely clueless.

    --

    Like all pain, suffering is a signal that something isn't right
    1. Re:Holy negativity pal by microbox · · Score: 4, Interesting

      Well...

      They develop web applications but only ever test them on windows. These are apps for the government that are for general consumption. Not having a single OS X or Linux testing station is plain wrong. But hay, at least the corporate types got the contract right? Never mind doing the job properly, or even learning what that means.

      Also, testing things on Linux, Windows and OS X is a great way to make sure that what you're doing doesn't have hidden quirks. That goes for designing webpages as well as network shares and other network services.

      I find Outlook a terribly annoying email client to use, and would prefer to use my own.

      When writing documentation, I find it *much* easier to use OS X's screenshot technology and inter-app tools to bring the pieces together. This saves enough time that I frequently go home to write significant amounts of documentation, and it looks great when it is done, and it's done *fast*.

      OS X and linux have a superior command line with a complement of tools that is esp. useful when you're batch processing vast volumes amounts of files. I used to write ruby scripts and run them on windows because of a lack of a command line. That is not the most efficient way of doing things. My co-workers were wowed at the things I could do that they just didn't think were feasible because they have no real experience with getting the command line to sing. Large numbers of files is typical when working on software projects.

      I like using multiple desktops, I find that much faster and easier to do than work with the almost crippling windows taskbar.

      And there's tones of fanboy stuff too.

      What I don't get is how anybody thinks that standardizing everything on windows is somehow going to just make everything cheaper and hunky dory. People use other platforms for a reason, and using a bit of intelligence there is no reason why sysadmins can't figure it out. And you get the benefit of not grid-locking yourself into a single vendor.

      To me it seems like common sense is being replaced by a rule book. That's why I left for a smaller company, and they let you run what you want - but only support you with stuff they know. It works out great.

      --

      Like all pain, suffering is a signal that something isn't right
    2. Re:Holy negativity pal by susano_otter · · Score: 4, Insightful
      Like I said, we live in opposed-alignment alternate universes. Each of us is convinced the other's universe is the evil one. Everything you've just said only serves to reinforce my own conviction. Indeed, even the way in which you said it reinforces my conviction. Far from including the kind of technical clarity that would allow me to rationally evaluate your demands and make a well-informed decision on whether or not an exception to the policy was warranted in this case, you instead degenerated steadily into technical inchoherence so that by the end of your post I have no idea what you're talking about anymore. No doubt you--like my own developers--sincerely believe you've been crystal clear in every important detail.

      All that aside, I do have some commentary:

      Too hard for us to administer
      It sounds like you're talking about IT Helpdesk, which I don't know much about anymore. But in the realm of "enterprise" applications (the big, customer-facing, 99.99%+ uptime moneymakers), a developer's insistence on using their own favorite OS rather than the departmental standard is, in my experience, a guarantee of systems-adminstration headaches, instability, confusion, and vulnerability. You may have a list of reasons longer than my big swinging dick as to why your OS is better than the departmental standard, but I guarantee you that once it goes into our datacenter, its nonstandard nature will cause far more problems than it solves.

      We can't run our anti-virus on your computer (ahem, I don't need that crap)
      Contrary to popular belief, non-MS operating systems and the applications that run on them are, in fact, exploitable. And I have yet to meet a Linux developer (of which I support several) who didn't insist on flatly ignoring Linux's built-in security features (such as the permissions system, for example), because it was either easier to develop everything as root, or because he had a hard-on for some third-party app that needed to run as root, or both. Maybe your corporate Linux workstation isn't a big security threat, but all my enterprise Linux servers are just as exploitable as my Windows servers. Because it makes my developers' jobs easier.

      We can't tell if you're running unlicensed software on that computer (why don't you just like, ask me?)
      We don't ask you because we don't trust you. We don't trust you because you generally spew evil-universe stuff like this post at us. Also, we don't trust you because you obviously don't know or care about the requirements of good systems administration policy. Asking end-users if they're complying with regulatory requirements is not a sufficient test of regulatory compliance. Your refusal to acknowledge and accept this fact, and work within its framework, only serves to enhance your notoriety as a super-villain from an evil alternate universe.

      We can't tell if you're running encryption software of packet sniffers you would-be corporate spy?
      This last item and its explanation are complete gibberish to me. About the only thing I can say for sure is that, yes, if you want to run packet sniffers on a corporate network, then you will get looked at like a criminal.

      Autocratic, and completely clueless.
      Only from your point of view. From our point of view, we're just trying to do our jobs, within a set of constraints you refuse to understand or even consider, and to prevent you in your ignorance and sense of entitlement from undoing our hard work, ruining our weekends, or putting our employer into serious legal and financial jeopardy.
      --

      Any sufficiently well-organized community is indistinguishable from Government.

    3. Re:Holy negativity pal by immcintosh · · Score: 2, Insightful

      This last item and its explanation are complete gibberish to me. About the only thing I can say for sure is that, yes, if you want to run packet sniffers on a corporate network, then you will get looked at like a criminal.
      Just to clarify (and not take sides), I think what he's saying is that these people are foolish to assume just because they monitor standard installation procedures (Setup.exe or whatever), they can prevent a developer from running whatever software he wants. As such, their insistence on this particular precaution is nothing more than a "feel good" measure of security; it's effectively useless. At least, that's how I understand his point.

      To put it another way, a programmer with access to a compiler can get whatever kind of illicit software he wants onto a computer without you knowing; they just program it themselves on the spot if necessary. Any precautions that presume otherwise are foolhardy and give a false sense of security, and can certainly seem foolish as an excuse to prohibit certain activities that would be otherwise harmless.

      I've never worked in an environment where any of this applies though, so I may be misconstruing what's going on here.
    4. Re:Holy negativity pal by swillden · · Score: 2, Funny

      you instead degenerated steadily into technical inchoherence so that by the end of your post I have no idea what you're talking about anymore.

      You know, the rest of your post would have been somewhat reasonable, but this part ruined it all. There was absolutely nothing in the GP post that should have posed the slightest difficulty for a competent system administrator to understand.

      I'm going to choose to believe you were exaggerating for effect.

      --
      Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
    5. Re:Holy negativity pal by Zey · · Score: 2, Insightful

      + Too hard for us to administer (yes your highness)

      That's their job. They answer to their boss and must be able to confirm to them particular policies are in operation.

      + We can't run our anti-virus on your computer (ahem, I don't need that crap)

      Just because your Linux/Mac OS X machine might not fall to a virus or trojan, doesn't mean your machine isn't capable of acting as a 'Typhoid Mary' -- capable of passing them to others. That's leaving aside whether they trust you and your chosen distro to keep up to date patches going.

      + We can't tell if you're running unlicensed software on that computer (why don't you just like, ask me?)

      Because if you lie (and from experience, users do lie about these things) it can cost gigantic amounts of money in penalties if they're audited.

      + We can't tell if you're running encryption software of packet sniffers you would-be corporate spy?

      Their general auditing tool is probably specialised for Microsoft environments. Again, the cost of being wrong (their entire client list or source code going missing or other sensitive information getting where it shouldn't) outweighs the needs of one whiney user -- unless you can give them a good business case as to why your need overrides the risk, you'll be out of luck. Sorry about that.

      For some reason, a few of the sysadmins I've met aren't clued into the fact that you can get source-code and compile it into a binary and then execute it. Pretty standard stuff. Software doesn't *have* to be installed using some wizard-install-software, and never need show up on any audit.

      I suspect they'd notice the installation of a compiler though where it shouldn't exist ;-).

      Perhaps you could scan the computer for filenames of well-known software, but that wouldn't stop someone who knew what they're doing.

      Don't underestimate a good Windows policy editor. There are many places where things are extremely well locked down.

      I asked one "top" resource if he'd let me use it anyway if I could sniff the network from a windows box without "installing" any software - he looked at me like a criminal.

      Well, you'd just admitted plotting to breach network security and likely breach terms of your employment contract. No wonder! ;-). Rather than bitching about sysadmin stubbornness, you should be thanking them for not reporting the incident to your manager and it turning into a formal warning or instant dismissal.

  40. The road ahead by lennier · · Score: 3, Funny

    The rubber hits the road when you back the wrong buzzing horse off a running platform that's not on the right track, and have to ditch it.

    I love business metaphors.

    --
    You are not a brain: http://books.google.com/books?id=2oV61CeDx-YC
  41. Is there a Right Horse? by Greyfox · · Score: 2, Informative
    I haven't really run across a web application platform I really like so far. It seems like the best solution is to write a Javascript front end to track state and a back end that delivers chunks of data to the front end. I don't particularly like Javascript either but so far it seems like the least sucktastic solution available. In that scenario, pretty much ANYTHING could serve as the back end as long as it can route requests based on the URL. Or you could use SOAP to get the data you need.

    Anyway... the easiest way to tell if you're wrong is to show your code to several developers in house and if they run screaming from the building, you might consider switching platforms...

    --

    I'm trying to teach myself to set people on fire with my mind... Is it hot in here?

  42. Answered! by Archangel+Michael · · Score: 3, Interesting

    "What's making him think of switching platforms? "

    He gave the answer to this question in the summary.

    "It took us an extremely long time to find someone with the necessary skill set."

    This can be unacceptable in just about any organization. Depending upon the definition of "extremely long time", which can vary from organization to organization, this is unacceptable. Most places want easily pluggable modules for positions, so that retirement, death, transfer or quitting doesn't break the organization.

    This is the equivelent of "vendor lock in" that /. decries so much with Microsoft, except the vendor happens to be their Web Developer.

    There is an unacceptability in being held hostage to a singular developer. At this point, I usually recommend switching to one of the various CMS setups available. It is much easier to find people able to tweak and update using one of the available CMSes, than some proprietary hack that has less features and no other developers.

    While this advice is not universal, it most likely would fit the kind of shop that has a single Web Developer on staff (or contract).

    This is based upon the general problem presented, the general details, and my understaning of what is available in the market.

    --
    Agent K: A *person* is smart. People are dumb, stupid, panicky animals, and you know it.
  43. Be sure you're not overvaluing platform knowledge by pthisis · · Score: 2, Insightful

    You should drop it when there's another platform that's so much better than yours as to justify the effort of moving away (ie not just slightly better unless your code base is tiny). Normally any decent developer won't have a tough time adjusting to any decent platform, so the reason to switch isn't really that developers are hard to find who can work on your platform (unless it's something really unsuited to the job), it's that developers are hard to find who _want_ to work on your platform.

    If you're running on platform X and you keep advertising for developers with 3 years of platform X experience or turning away really skilled people who have been working on some other, similar platform, the problem is your hiring. If you're advertising for good developers in your application domain and they're not accepting offers, then the platform may be at least a marketing problem (which can be a serious problem indeed).

    But if, say, you're using Ruby heavily, there's no significant reason not to hire experienced Python or Perl developers (or vice-versa); if they're any good, they'll pick it up very quickly. There are limits; obviously if you're doing C development on an MMU-less embedded system, you don't want a great Visual Basic developer who's never worked with explicit memory management before. But if the developer is skilled in the application domain that you're working in, that's a lot more significant than knowing even the language (let alone the IDE or libraries) that you're using.

    --
    rage, rage against the dying of the light
  44. JDK 1.1 by CustomDesigned · · Score: 2, Interesting

    I routinely coded network apps in JDK 1.1 that ran in 256K memory - including the JVM (no jit). That's K, not M. In comparison, the later Javas are stuffed turkeys. Even J2ME needs 512K. The two things that finally made Java 2 usable were the precompiled classlib for reasonable startup, and the fact that memory is now measured in Gigs instead of Megs.

  45. Popularity... by mengel · · Score: 3, Informative
    Actually, the OP mentioned why most people think popularity of platform is important -- being able to hire people who already know how to work on it -- it's the "wanted: programmer with 3 years experience coding java beans" mentality; you pick the platform so that when you put that want ad out there are lots of respondants.

    Although, in my opinion, you are better off hiring someone who's worked on numerous systems/languages and is willing to learn yours, than switching platforms to get someone with experience in that single platform.

    To the original question; if you were planning a major rewrite anyway, that's possibly the best time to switch platforms -- treat the old one as a prototype, and build another. But you're still better off with a team of programmers who have diverse experience, and letting them agree on the platform (after suitable battles with Nerf-weaponry), rather than picking it based on popularity.

    --
    - "History shows again and again how nature points out the folly of men" -- Blue Oyster Cult, 'Godzilla'
  46. Quick answer by FatherOfONe · · Score: 2, Interesting

    first you need to decide how painful it will be to migrate. Is this some mainframe application that has had 20+ years of refinement and bug patches behind it, that happens to be in the millions of lines of code size? If that is the case then you keep kicking the dead horse for a while.

    Is this some scientific/complex application that is written in a language that just isn't popular today, but isn't too large? Well then you "might" consider migrating it over time.

    Obviously this isn't something to be taken lightly, because the expense of migration/bug testing and possible validation can be HUGE for large systems.

    I only have a small amount of data that you provided, so I can say that I "might" look at trying to expose as much of the legacy system as possible via a web service or some other "normal" RPC call and then look at having another system start to use the business logic in the core system, but have in written in a more modern and common language (Java). You "might" be able to start and pull off parts of the system over time that way.

    --
    The more I learn about science, the more my faith in God increases.
  47. All depends on what you write by Giant+Electronic+Bra · · Score: 5, Insightful

    There is nothing wrong with a full up J2EE environment. It simply exists for certain specific purposes. It makes no more sense to write many applications on J2EE than it does to write web sites in FORTRAN.

    On the other hand, if you write serious enterprise class middleware there is nothing better and those frameworks you find 'icky' are 100% necessary. You simply CANNOT in any sane world replicate the large scale clustering, distributed transaction management, connectors, and resource management capabilities of a good J2EE server. Furthermore you WILL need that kind of thing if you want to build a piece of software that has requirements like ABSOLUTELY no single failure under any circumstances can ever loose a transaction and you process 10k transactions per second with 5 9's reliability 24/7/365.

    The other problem with most developers (most teams) is they simply don't have the training in properly designing their applications for that kind of environment. You HAVE to know all the ins and outs of where your transaction boundaries are, exactly what all the possible execution paths (exceptions especially!) are, and map it all out. Anyone that tries to build complex J2EE apps by sitting down at a keyboard and pounding keys will FAIL miserably, and they will then lament about how horrible J2EE is. No, you need to know exactly what you are going to write first. THEN when you sit down and start developing all that 'J2EE cruft' actually turns out to be your friend because most of the hard stuff is already done for you.

    Its all a matter of what you're problem set is, and knowing the tools well enough.

    --
    "Malo periculosam, libertatem quam quietam servitutem." -- Jefferson
    1. Re:All depends on what you write by stonecypher · · Score: 2, Interesting

      On the other hand, if you write serious enterprise class middleware there is nothing better and those frameworks you find 'icky' are 100% necessary. You simply CANNOT in any sane world replicate the large scale clustering, distributed transaction management, connectors, and resource management capabilities of a good J2EE server.
      You know, there's a reason that Java disallows its use in life critical systems in the license. If you really think J2EE is the top of the line in those four topics, you need to do some research. There are in fact quite a few application systems with higher availability than J2EE. Unfortunately, the only one you're likely to have heard of is Erlang.
      --
      StoneCypher is Full of BS
    2. Re:All depends on what you write by demi · · Score: 2, Informative

      You simply CANNOT in any sane world replicate the large scale clustering, distributed transaction management, connectors, and resource management capabilities of a good J2EE server. Furthermore you WILL need that kind of thing if you want to build a piece of software that has requirements like ABSOLUTELY no single failure under any circumstances can ever loose a transaction and you process 10k transactions per second with 5 9's reliability 24/7/365.

      Yes, you can, and pretty easily, too, using Erlang. The contortions you have to go through in Java to get messaging, queuing, bus-connections, failover, clustering and all that stuff to work is ridiculous. You can spend hours declaring, configuring, creating adapters, installing drivers, extensions, hibernate properties, blah blah blah and you're not only no closer to being done, you get to write your logic in... Java!

      Java goons can spend days talking about persistence layers and attribute storage and web service connecters to the enterprise bus. And after weeks of hobbling along and some purchases of middleware and object brokers and JMS this and that (and don't forget the servers to run it) they can start writing a bajillion classes and interfaces for every function. All this to support a messaging system with no more functionality than this:

      resource ! {self(), {request, Key}

      And no, that's not the abstraction or exposed interface--that's the nitty gritty detail.

      Java--the technology, the language, and the culture is a joke. Unfortunately, as you say, it's ever so Serious and Ready for the Enterprise--so it's not a very funny joke. When you actually get your Enterprise Solution delivered (never anything so Un-Serious and Un-Enterprise as a program in Java World), you now get to deal with upgrade and dependency headaches, schema changes and--why is my RPC performing so poorly? Marshalling overhead? How do I fix that? Throw away my objects, throw vectors of strings at it, buy faster CPUs, throw some more Tibco on it, please!

      Five 9s? Erlang has been used to build systems with Nine 9s. In your list of desirable features (many of which don't inherently require teams of engineers poring over UML diagrams but in fact are trivial or easier in Erlang). I mean, good God, why should you have to "know exactly what you are going to write first" just to distribute load and share data amongst servers? Why should you need "special training" to write an application that can automatically and statefully fail over from one node to another? Next you're going to tell me the answer to software reliability is just to make sure you don't have any bugs in your application!

      In your more or less random list of requirements you forgot online code upgrades (with no sessions dropping, please), task migration and interactive management.

      There is nothing wrong with a full up J2EE environment. It simply exists for certain specific purposes.

      Paul Graham had it right when he said that Java was popular in corporate environments because it produces a lot of what looks like work. If you want a lot of mediocre people busily coding away--well, not coding; declaring, annotating, configuring, setting build properties and constructing--then Java really is great for that specific purpose.

      --
      demi
  48. You, Sir, are talking Bullshit. Plain and simple. by Qbertino · · Score: 3, Interesting

    This question plays into simular territory that one that came just a week ago. And, as you can tell from the subject, it really gets me going. If you are of the kind who posts questions on slashdot, then you at least are somewhat tech-savy enough to judge fairly quickly after talking to a handfull of developers if you're plattform is rubbish or not.
    Since you're not saying which plattform I suspect you rode with some standard fare OSS plattform (which are all very good for 99.9% of all web solutions) for free and expected to get the programmer along with it for $4 per hour or something like it.

    You said you had to look hard to replace you guy ("It took us an extremely long time to find someone with the necessary skill set."). You, Sir, are a liar. Here's what really happend: You chose a plattform (... jadajada, Django, Rails, Zope, EZ Publish or even .Net it doesn't really matter for this part) and, so I strongly suspect, were paying your main "maid for everything" dev with a shoestring budget who then probalby left on his own when the farce became more than his self-respect could bare. You didn't train him on the technology, you didn't give him air to breathe, you didn't let him run his mind, you didn't space (not to speak of pay) the enviroment, pipeline and toolset needed for the product you wanted and you most certainly didn't plan *or* stick to your calls you made four weeks before. The usual stuff everybody with real developement experience here on slashdot has seen time and time again. (Watch them mod me way up to Jupiter to see what I mean)

    I tell you what: Stuff this bullsh*t about 'lack of skillset'. I've heard it all many times over and I'm sick of it!

    Pay and treat the people the fair and you'll have so many well-versed devs at you doorstep you'll have to shoo them away. And once you've got your favorite, show him/her your web-setup. If he's an OSS guy and you happend to jump on .Net because of some hair-brained idea back in the day, he'll tell you he can continue with that for an extra 20 000$ per year to compensate for learning a hermetic skill or you give him free reighn and he'll implement on whatever buzzword draws the highest line in OSS technologies on trends.google.com. Or he'll maybe just dive into the system you're running and come out on top after half a year.

    Oh, and to drive the point home:
    If you're really lacking skillset and have a tough time finding it, I've got customers in the US too. I'm a freelance webdeveloper from Europe who also does consulting. Especially for the very sort of situations you claim to be in. Give me a neutral contact email-address here (post it in a child) and you'll get my contact data. Get back to me over your official channel and if we strike a deal and you afterwards can plausibly refer to this slashdot question as being your's I will apologize, stand corrected and you get 200 Euros off the bill. That's fair, isn't it?

    And now I ask you, my fellow slashdotters:
    What's the bets we'll never hear from this guy again?

    --
    We suffer more in our imagination than in reality. - Seneca
  49. You do the math. by FatSean · · Score: 3, Informative

    Cost of maintenance/repair for 3 years vs. cost of new platform + app migration. Eat the support costs. Factor in the increased performance the new platform may provide. Wave hands around and shake the 8-ball.

    At least, that's how I do it.

    --
    Blar.
    1. Re:You do the math. by swillden · · Score: 2, Informative

      Cost of maintenance/repair for 3 years vs. cost of new platform + app migration.

      And keep in mind that you're likely to underestimate app migration costs by a significant factor. I think people tend to say "Well, it took four developers and eight months to build the old one, so we'll assume that this newer, more efficient platform will take a little less", completely forgetting that the system as it was at the end of that eight-month development time did significantly less than the one that has since evolved over the course of five years. Your new app needs to be as functional as your old one will be a few months from now. Also, don't forget to factor in time for developers to learn the new toolset, and if they have any responsibilities for supporting the old stuff, better assume a good chunk of their time will be going to that.

      Finally, don't forget to add a fudge factor to correct for the fact that you probably really want to build a new system. That fact is clouding your judgment on any number of issues.

      --
      Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
  50. WWGGD? by cyberfunkr · · Score: 3, Funny

    Roll a d20 and consult the correct chart.

  51. System/36? Newbie! I used a System/34 by billstewart · · Score: 4, Interesting
    I has a summer job in college doing programming on an IBM System/34, mostly in RPG2. It had 48KB of Semiconductor RAM (as opposed to real core), and a 13MB Winchester drive, and came with two IBM employees who were around every couple of weeks to keep it happy (usually by updating the accounting software, and then re-patching the updates to deal with the customizations our system had because the construction industry does accounting differently.) Unfortunately, we only had the slow printer, not the fast printer, so compile time was largely constrained by how long it took to print out the 10-page program listing, which was 20-30 minutes, and the printout was not optional; you always got one when you compiled. And of course when the Apple II came out, except for the disk drive it could totally kick the /34's ass, not that you'd want to run corporate accounting packages on the Apple.


    The thing that was cool about the /34 was the Operations Control Language, which was a shell-like interface that you could actually do simple programming in. It was obviously cooler than JCL, but it was also even cooler than the PDP-11's RSTS-11 user interfaces that we used to run BASIC programs.


    One thing that wasn't cool about the /34 was its mainframish approach to file system management - the OS wrote new file system headers when you saved or closed a file, but if it got interrupted before you'd done that, you basically lost everything. We were a steel fabricating company, and one day the clerk had spent about 6 hours typing in the list of parts we were going to need for a project, and some guy in the shop was trying to shut off the circuit breaker for his welder and powered us down instead. Fortunately she'd entered an hour or so worth of data the day before, so there were pointers to the beginning of the file and where it had ended after the first hour's work, and it was an extent-based file system. So I spent about 5 hours on the phone with IBM wandering through hex dumps of the file system to find the remaining pieces; it ended up being slightly faster than just retyping the whole thing would have been, but that could have easily gone either way. If you remember fsdb, it was kind of like using that on the raw disk.

    --

    Bill Stewart
    New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks
  52. Betting on ANY specific tech is the wrong horse by rmerry72 · · Score: 2, Informative

    How are folks out there determining when you've backed the wrong horse, and getting back on track?

    By realising that if you back any kind of specific technology you've already backed the wrong horse. Back your people and you'll stay on track a lot better. Good technical staff can learn any new technology - really, how many genuinely "new" technologies have there been in the last 25 years anyway? Two, three?

    But the modern world hires specific people for specific roles and specific technology. Know J2EE and .NET? Tough you'll be hired only for one or the other and the MBAs will bitch that they've backed the wrong horse if there choice goes south. Doesn't matter that you can do both and learn both - you were only hired for one, so they'll sack you and spend months finding somebody else.

    All technology is extict and replaced within a decade. Yes, even COBOL has gone through significant "upgrades", and I seen managemers not hire people because they have worked with Cogen 2.5 and not Cogen 4. Like its *that* different. Worked with Oracle 8 for most of your career but somebody else has worked with Oracle 9 for six months? They'll get the job because "They have more recent Oracle 9 experience".

    So in summary: You're screwed. And you're screwed because you've been too specific in your hiring and have bypassed generalists who can learn. Computers can't learn and technology never will.

    Oh all right, I'm generalising. I'm venting. I don't know whether your company has this sort of a hiring practice (but I really bet it does). I've been looking for a role for a couple of months and been pidgeon holed so bloody often. And yet my home network is more complicated and technically challenging then anything I've seen commercially for the last few years.

    --
    We do not inherit the Earth from our parents. We borrow it from our children.
  53. theres a simple solution by pjr.cc · · Score: 2, Interesting

    From my point of view it simple anyways.

    Go to the nearest job-search web site and search for your platform. then search for the current modern platforms (dot net and j2ee or whatever) and see what the results are like, if your job advert was the only result for your platform, you should be probably looking to switch platforms.

    Thats a very broad brush approach, but at least it gives some idea of the general popularity.

  54. Let management/HR tell you that by patio11 · · Score: 2, Funny

    "We should do the next project in Rails."
    "Nonsense, we only have one engineer who knows Rails and would need ten."
    "Hire them."
    "Nonsense, they make 20% more than you do."
    "I guess I should be doing Rails elsewhere, then."

  55. Could only be ColdFusion by ivormi · · Score: 2, Insightful

    Can't be .Net or Java (shake a tree to find your dev). C/Perl CGI, Perl, Python, PHP, too common to find coders for. Ruby. Hah. Too popular still.

    Nobody's considered the real dead end technology of late: ColdFusion. Yes, sites still run it. No, its not quite dead yet. Yes, Adobe provides and has provided plenty of hype to fool managers into deploying things to it.