Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
IT

In Favor of Homegrown IT Solutions 265

snydeq writes "Today's IT organizations turn too readily to vendors, eschewing homegrown solutions to their detriment, writes Deep End's Paul Venezia. 'Back when IT was "simple," several good programmers and support staff could run the whole show. Nowadays, [companies] buy hefty support contracts and shift the burden of maintaining and troubleshooting large parts of their IT infrastructure on to the vendors who may know their own product well, but have a hard time dealing with issues that may crop up during integration with other vendors' gear. ... Relying solely on support contracts and generic solutions is a good way to self-limit the agility and performance of any business. In short, more gurus equals less hand-wringing and stress all around.'"
This discussion has been archived. No new comments can be posted.

In Favor of Homegrown IT Solutions

Comments Filter:
  • by sethstorm ( 512897 ) on Monday December 12, 2011 @08:34PM (#38350750) Homepage

    When you treat people like second-class citizens by making them contracted labor, especially in IT, this shouldn't be a surprise.

    • Yes, it's better to make them full time exempt employees, this way you can make them work sixty hours a week without over-time.

      • by sethstorm ( 512897 ) on Monday December 12, 2011 @09:43PM (#38351240) Homepage

        Some of us have worked for employers that made the extra hours worth it; that doesn't mean you'll have to exclude large businesses either as well.

        How about fixing the overtime law to remove the IT exemption, along with something that makes requirements more reasonable(e.g. if you can't find someone, you're going to be on the hook for directly hiring someone - not as any form of a contractor - and training them as an FTE at full wage)?

    • Large institutions (especially financial ones) do this because of the enhanced plausible deniability.
      It's to much easier to blame IBM for your outage / downtime / boo boos, instead of admitting you have poor internal IT practices and infrastructure.

    • Re: (Score:3, Informative)

      by roman_mir ( 125474 )

      Why do people think that contractor = second rate citizen? I don't know any contractors (including myself,) that want to go full time. I don't understand the mentality that choosing to be paid a rate per hour and have no other connection to the employer is somehow a bad thing.

  • by Anonymous Coward

    I was trained to be an IT manager, where most people move on to an MBA. All the classes taught were BS outsource this, best of breed that, vendor support another. The technical skills were deemphasized to the point that they are "complementary skills" rather than primary ones. You don't need to know how to manage a server, or configure Active Directory, or run an Exchange mail server. All that you know is to write business requirements for vendors to come in and set everything up.

    My company decided to go wi

    • by jellomizer ( 103300 ) on Monday December 12, 2011 @09:21PM (#38351090)
      Those must be some bad MBA schools in your area. I got an MBA and I was never taught we should outsource everything.
      We were taught to get venders when the requirements word distract the existing staff from their mission focus. I had to read case studies where outsourcing worked well and when it failed miserable and should have kept the inside staff. We were taught the complexities of global business and that American staff tend to be more productive and creative even though they cost more. How bean counting causes you to miss the good envestments. And a good HR policy means treating your workers right and at a good pay.
      I am willing to bet there are less MBA but BBA who are out of a 4 year business with no experience, trying to save money by stepping on the backs of anyone who gets in their way. The MBA program is far more responsible.
      • by Attila Dimedici ( 1036002 ) on Tuesday December 13, 2011 @07:43AM (#38353866)
        Perhaps they should have taught you reading comprehension. The OP did not say that the MBA program taught outsouce everything (I'm not even sure that he was referring to an MBA program, it appears to have been an IT management training program--at what level appears ambiguous). The OP said that the IT management training program he was part of taught a whole bunch of stuff such as outsourcing, best of breed, vendor support as primary skills and that actual IT skills as not terribly important (nice to have for an IT manager, but dispensable).
        I have seen this in many areas, not just IT. The idea that management does not have to have any of the skills needed to do the jobs subordinate to them is very prevalent. While a manager does not need the skills to sub in for all of their subordinates (although it does help), they should be able to do the job of a significant number of their subordinates. Otherwise, they will have trouble recognizing the relative value of different staff members contributions.
    • by AK Marc ( 707885 ) on Monday December 12, 2011 @10:47PM (#38351662)
      In my MBA program, we discussed that outsourcing almost always costs more than insourcing for the simple matter that if it costs them $10 to do it, or costs you $$10 to do it, they'll mark it up 50% and sell you the service for $15, but if you'd had the capability to do it at cost, you'd be out $10. Oh, and that the single greatest "cost" of outsourcing is almost never counted. Risk. What's the risk the outsourcing company will close down? don't know? Then you shouldn't be relying on them for a business critical function. What's the risk that your competitor could pay off your outsource company to get access to your systems? Don't know? Then why are you outsourcing?
    • I'm a long-term developer studying an MBA at the moment. I'd recommend it to everyone working in commercial IT, it really helps you to understand why some of the decisions are made so badly from a technical point of view (because they're taken from a business point of view where they make more sense). More usefully, it also gives you the tools to explain why those decisions are technically bad in language your decision-makers will understand.

      You don't need to know how to manage a server, or configure Active Directory, or run an Exchange mail server. All that you know is to write business requirements for vendors to come in and set everything up.

      Yes, an IT manager doesn't need to know how to set up an Exchange

  • yes and no (Score:5, Insightful)

    by Trepidity ( 597 ) <[delirium-slashdot] [at] [hackish.org]> on Monday December 12, 2011 @08:45PM (#38350834)

    The general in-house versus outsource vs commodity question here is a bit inextricably tied up in the more specific "enterprise software sucks" problem. I've seen moving from in-house solutions to third-party stuff work well, when it's good third-party stuff. For example, near the end of my time there, my university switched from an aging home-rolled email setup to a Zimbra [wikipedia.org] installation, which, while not perfect, was generally better and more reliable. On the other hand, there is certainly plenty of crap that they pay Oracle and Microsoft $$$ to run that doesn't serve anyone's needs very well, or integrate with anything else.

    • Re:yes and no (Score:5, Insightful)

      by Mad Merlin ( 837387 ) on Monday December 12, 2011 @09:01PM (#38350962) Homepage

      On the other hand, there is certainly plenty of crap that they pay Oracle and Microsoft $$$ to run that doesn't serve anyone's needs very well, or integrate with anything else.

      Like Sharepoint? It baffles me as to why anybody would buy that monstrosity... it doesn't do anything!

      • Re: (Score:2, Informative)

        by BitZtream ( 692029 )

        Because there isn't any alternative that integrates with as many other products and provides as many features in as easy to use package as Sharepoint + Office?

        If you don't understand why people use sharepoint you don't need to be discussing IT related topics as you're clueless.

        Sharepoint, much like Outlook is a steaming pile of shit, but its still better than the alternatives ... which there aren't any.

        • Re:yes and no (Score:5, Insightful)

          by Tablizer ( 95088 ) on Monday December 12, 2011 @10:48PM (#38351668) Journal

          I'm not sure what Sharepoint's forte is. It's a file server with a web interface more or less with some MS-Office integration features. Some try to use it as a intranet WCM system, which it does poorly and requires lots of tweaking to work right. I don't get "it".

          • Re: (Score:2, Insightful)

            by Anonymous Coward

            Well the fileserver portion is actually pretty slick. It's a rudimentary revision control system for said files, with a proper audit trail, unlike using a volume shadow copy, and just reverting by date. Additionally with a groove workspace you can trade files, IM files, or even created workgroup shares harnessed through sharepoint to trade files to Joe in Aruba, and Frank in Seoul. All without using anything more than an https connection. The files themselves do not need to be loaded into sharepoint dir

          • Re:yes and no (Score:5, Insightful)

            by jimicus ( 737525 ) on Tuesday December 13, 2011 @07:53AM (#38353922)

            I think I figured it out myself, but a certain amount of this is guesswork based on observation. Take it with as much salt as you think it needs - if anyone can add to this, please do so.

            Sharepoint doesn't give you a lot out of the box, as you've mentioned. What it does give you is a very capable framework with which to put together your own solution.

            What I think happens is this:

            Person A (who is not in IT - perhaps he's a salesman) works for company B that implements a Sharepoint-based system. Company B is quite joined up - they'll get all the major stakeholders on board when there's a big project. IT will advise on sorting out the underlying infrastructure and making sure it all works; other business units will get involved to make sure the project achieves what it's supposed to. They take their Sharepoint project seriously - they allocate a budget to it, they put together a clear set of requirements based around their business processes (which were already pretty clear) and they hire in or contract out development work. Ultimately they wind up with an extremely competent system that does all they could ever want with pretty good efficiency - and the project is delivered in record time. Yes it's based on Sharepoint but they've really harnessed it to make it work for them.

            Person A doesn't know anything about how the project was implemented, however. All he knows is that his employer brought in Sharepoint and it's fantastic.

            Anyhow, time marches on and Person A gets offered a new job as a sales director at company C. It's a nice little promotion, so he takes it. What's the first thing he sees? Company C doesn't have anything like the sophisticated computer system he used at company B. So he demands Sharepoint.

            Note that person A has a lot of influence in his new job. He's a sales director in charge of a small team who essentially provide the money the company needs to survive. He demands Sharepoint, he gets it. The problem is, nobody at company C - not even person A - actually knows what Sharepoint is. Oh, they know it's some sort of computer-type-system-thingy, but that's as far as they go. Expecting it to be a big project, someone is tasked to look into it and figure out how much it's going to cost..... oh. That's interesting. Apparently, Sharepoint is free. And not free as in "free from some dodgy website", it's a free download from Microsoft themselves.

            So instead of putting a formal project together, the IT department simply downloads Sharepoint Foundation, installs it, sends everyone a URL and thinks to themselves "That was easy".

            It soon becomes apparent that Sharepoint isn't the all-singing, all-dancing system our blue-eyed boy proclaimed it to be. Sure, it's a competent enough little Intranet and it's a lot less hassle than a traditional fileserver to store your documents on, but the way it was being discussed initially, anyone would think the second coming of the Messiah was in the form of a computer program. It sure isn't that. But nobody quite knows why.

      • by jonwil ( 467024 )

        The problem is not SharePoint, its people who use SharePoint for things it is not designed for.

        • You mean like when the director says get rid of all file servers and put everything in sharepoint? hmmmm...
        • by hjf ( 703092 )

          Yeah, everyone knows Excel spreadsheets are the answer. I mean you can do anything with them. Price lists, contact databases, everything. It's just great.

      • by Lehk228 ( 705449 )
        we got set up with a sharepoint server quite a few months ago, as far as i know nothing has happened with it since then.

        it effectively allows semi-technical people to clumsilly administer their own versioned file repository and self contained WYSIWIG web site maker for internal sites with semi-database features.

        in short, it is a case of rope you can give to management types that is just long enough for them to hang themselves with.
      • Re:yes and no (Score:4, Insightful)

        by jd2112 ( 1535857 ) on Monday December 12, 2011 @11:20PM (#38351886)

        Like Sharepoint? It baffles me as to why anybody would buy that monstrosity... it doesn't do anything!

        Sharepoint does do something, It firmly locks you in to the entire suite of Microsoft products (Windows, SQL Server, Exchange, Office) while at the same time irrecoverably looses your documents.
        Actually almost all 'Enterprise' software is like this. No matter how much it costs it doesn't do a damn thing out of the box. To get it to do anything you have to hire an army of programmers and consultants to customize and configure it. The real money isn't in the product itself but in professional services to make it work.

    • It's not necessarily the application, it's the system management. The vendor in our case manages the exact same applications that we used to manage in-house, only a *lot* slower and with hilarious communication issues.

      I'm pretty sure the article is talking about infrastructure (partly because the summary *says* "shift the burden of maintaining and troubleshooting large parts of their IT infrastructure on to the vendors") which doesn't at all mean, to me, that the IT admins were writing their own database a

    • by Tablizer ( 95088 )

      In my observation, well-run in-house software is better than crappy off-the-shelf software and vice verse. It's a matter of managing, configuring, and selecting tool choices and staff smartly. I know this is probably obvious, but there are some who insist one is almost always better than the other based on a few bad experiences.

  • Exactly... (Score:4, Interesting)

    by gadzook33 ( 740455 ) on Monday December 12, 2011 @08:59PM (#38350940)
    I couldn't agree more with this. We run an in-house development shop that continually out-performs areas of the organization that purchase COTS stuff (and then spend millions trying to customize it). In the beginning we got a lot of crap for having a "not-invented-here" approach and coming up with custom solutions. The first time we replaced one of these multi-million dollar solutions with something much cheaper (and easier to maintain) the comments stopped. This isn't to say we don't use commercial frameworks, appliances, etc. But these are tools (sometimes power tools), not pre-fab homes.
  • by DERoss ( 1919496 ) on Monday December 12, 2011 @09:05PM (#38350982)

    A high turnover of employees creates problems with in-house development and maintenance of software. The "organizational memory" -- how did we get here, what were the problems, how were they solved -- is lost.

    In the U.S. military, cognizant personnel are often rotated to new assignments every 2-3 years. This has the same negative effect on long-term maintenance and evolution of software for military uses. For this reason, military software projects are (or at least were) out-sourced.

    For 24 years, I worked for the System Development Corporation (SDC), which eventually became part of Burroughs which then merged with Sperry Univac to form Unisys. We worked with the Aerospace Corporation and with Lockheed. Together, these three companies held the organizational memory needed to maintain computer systems for operating an ever-changing array of earth-orbiting space satellites. Our role at SDC-Burroughs-Unisys was to receive software packages from 10 or more independent software development companies (sometimes the same companies that built the satellites) and integrate them into a single system. We audited the developers' specifications and tests, tested the merged packages, performed configuration management, prepared user documents, conducted training for the end-users, and diagnosed suspected errors. On occasion, we even rejected software and sent it back to the developer company to rework. Contrary to current practices, the most senior professionals also provided "help desk" support. In all the time I worked on this project, not one space satellite was lost due to a software error. Considering the cost of a space satellite, the fact that our task doubled the overall cost of software development was money wisely spent.

    While the project on which I worked was technically out-sourced from the U.S. Air Force, the repeated renewal of our contract and the contracts of Aerospace and Lockheed created an in-house professionally-skilled environment for acquiring and evaluating software. As a result, a very large software system with an expected life-span of 15 years evolved and was used for over 20 years.

    • by BitZtream ( 692029 ) on Monday December 12, 2011 @09:43PM (#38351242)

      A high turnover of employees creates problems with in-house development and maintenance of software. The "organizational memory" -- how did we get here, what were the problems, how were they solved -- is lost.

      In the U.S. military, cognizant personnel are often rotated to new assignments every 2-3 years. This has the same negative effect on long-term maintenance and evolution of software for military uses. For this reason, military software projects are (or at least were) out-sourced.

      You do realize the one of REASONS the military rotates personal every few years is to avoid EXACTLY what you're referring to, right?

      Losing any one person doesn't kill a project because there are multiple others with experience on it and no one person 'owns' the project.

      • by Alan Shutko ( 5101 ) on Monday December 12, 2011 @10:06PM (#38351386) Homepage

        If the project has been around long enough, you end up with a bunch of people who only have a max of three years of experience with it, and any knowledge of the full history is second, third or fourth hand. The risk is that as you keep cycling people out, you develop an angry monkey situation [blogspot.com].

        • by AK Marc ( 707885 )
          When you institutionalize the transfer of knowledge, it doesn't matter that any particular person isn't there. The others are aware of the task, and the "why" is less important.
          • by Kjella ( 173770 )

            Institutions don't know anything, people do. You don't get competence on SQL Server by buying a book and putting on the shelf. Why do people think it's different for custom built software? Sure, having documentation certainly beats not having documentation and you can train people to operate it but understanding the design, architecture and code structure behind it if you ever want to change it or adapt it isn't done in a month or even three. Knowledge transfer is a much less than perfect process when you m

  • Source Code License (Score:3, Interesting)

    by dg41 ( 743918 ) on Monday December 12, 2011 @09:06PM (#38350990)
    This brings up a question. My organization replaced our old ERP and CRM-like system which was bought 20 years ago with the source code and heavily customized. The administration (through thir consultants-ugh) declined to buy the source code licenses for the new applications because "modern organizations don't buy source code licenses anymore." Now, predictably, people are upset because we cannot tailor the apps to our business rules. My question is whether the statement of the consultant is crap or not: do companies nor buy the source code license and solely rely on vendors to make changes via upgrades or custom programming?
    • Well, considering the number of companies that still sell source code ... I'd say you should be able to draw your own conclusions.

      You can, for instance, get the source to most of Windows, for the right price.

    • by AaronLS ( 1804210 ) on Monday December 12, 2011 @09:47PM (#38351262)

      It depends on if you mean a vendor's 3rd party product versus outsourced programming.

      If you hired an outside consultant and paid them by the hour to produce a custom piece of software, then I'd default to having the contract written up to include the source code as a deliverable. You might encounter resistance if its a big firm and they have reusable libraries they've created and don't want to share them. In this case the compromise might be to provide the compiled DLL's for these, but you are back at square one where you depend upon them to fix issues in those DLLs, but at least this way it reduces the dependencies.

      When I think "Vendor" I think of someone who has some premade product, which seems to be what the article is refering to. I.e. its like going to a vending machine and saying I want the "Blah Blah Account Management Software". These products are usually sold to many different customers and thus have had a stream of revenue over a long period of time or for a large team to enhance the software over time. Thus they are somewhat large and even if there was a source code license option available from the vendor(although there usually isn't), the code base would probably be large and probably somewhat difficult to customize by internal staff.

      Also, the cost to develop these vendor products is spread across many customers, but as the article author points out, you can pay dearly in the areas of integration and customization. You may find corner cases or new requirements down the line that the software simply cannot handle, and in my experience(having continuously been in one scenario or another dealing with a vendor for the last 5+ years) there are a lot of barriers to cross in getting the customization or fixes done.

      If people are upset about the inability to customize the vendor product, then you need to go back to the stakeholders and say hey, "In light of new requirements, we clearly need a solution that 1) has some features that support these customization scenarios, OR 2) has a source code license and developers who have the skills and time to deal with implementing those customization(it's hard to know what you are getting yourself into until you actually see the source code), OR 3) roll our own solution." #3 can be a good option if you are only using a small subset of the vendor's product's features, which I've found to often be the case(since usually over time it has been enhanced to meet many customer's needs, but any single customer will only need a subset of these). Thus to roll your own solution isn't going to be nearly as complex, and may be a breath of fresh air for your users who can be overwhelmed by extra unneeded features/complexities.

      I've also found that vendors put a premium on integration features. The more features they provide for integration, the more their fear that you or another vendor's product will stand in place of one of their extra "modules" that they wanted you to buy from them.

    • by tqk ( 413719 )

      This contractor/consultant negotiates a contract with clients. Clients can specify whatever they damned well please to be in the contract. Speaking only for myself, pretty much anything I do while contracted to a client is owned by the client, and I'm happy to sign NDAs as well. You pay my hourly rate, and I'm yours for the duration of the contract.

      Often, going into an assignment, details are murky and I may end up working on anything; fine by me. Anything the client wants done after the contract ends i

    • Now, predictably, people are upset because we cannot tailor the apps to our business rules.

      If you need the source code to tailor an ERP and /or CRM system to your business rules, you picked the wrong product.

  • Shortsighted (Score:4, Informative)

    by wiedzmin ( 1269816 ) on Monday December 12, 2011 @09:11PM (#38351014)
    While I would love to wave this article at my management and say "hire more gurus", I find it somewhat disconnected from reality. This concept would only work if you had a department dedicated to in-house development, with unlimited permanent headcounts all of whom would be flawless in developing, documenting and supporting their respective applications in a uniform, regulatory-compliance friendly manner and who would never, ever move on to the greener pastures. In reality, you have self-proclaimed "developers" from various departments, writing spaghetti code designed to address their specific problems, then eventually quitting and leaving IT to struggle with supporting the uncommented, undocumented application that now cannot be replaced because it contains "all customer data". And when your friendly neighborhood ISO 27001 auditor comes along, you end up hiring 3 more people to fix every missing data validation, credential management and change control problem in this irreplaceable creation, and then, maybe, it becomes that wonderful application the author is hoping to push for.

    On the other hand, if you get a third party vendor to provide you with a solution - your upfront costs will seem higher, but chances are - unlike your departed headcount, that vendor exists for the sole purpose of supporting their solution. Their features, functionality, security and regulatory requirements have either already been hashed out by other customers, or will be hashed out for your if you ask for them. And unless they're a small enough vendor to go out of business without selling their assets to someone else who will take over, they will be there to support that application and provide feature updates while your in-house developers come and go...
  • Not So Fast... (Score:3, Insightful)

    by Harshmage ( 1925730 ) on Monday December 12, 2011 @09:16PM (#38351050)
    While having in-house solutions is great, but what happens when people move on? I work in the EDU part of the IT industry, and we have a particular system that was designed by a former employee, picked up by a second, redesigned by the same person, who denies that anything could be wrong with it. Support calls to them go unanswered, and they're rarely in the office. And they are one of the three Directors in IT. Personally, I work on our Windows 7 deployment, and all the underlying AutoIt scripts, plus the virtualization of our applications. I have trained all of my colleagues in what they may need in the event of my demise (or less worrisome event). And I get paid about $34k a year.
  • Like most things, there needs to be some balance between those things that you get from a vendor, and those things you do in house. Too much of either end of the spectrum is generally a problem. Too much from the vendors and you end up with the scenarios that the author describes. Too much of the in-house work, and you end up with a NMH (not made here) mentality which is ultimately destructive to the company. You end up wasting too much time re-inventing the wheel when an off-the-shelf solution would be ad
  • I work at a small law firm, and all of our infrastructure is in house. Since I wear a few hats, and with the IT part of my job now the least demanding part, I've been contemplating moving some of our services out. It does get disruptive when there are fires to be out out right when there are deadlines due.

    One thing I've been investigating is abandoning exchange for google apps. It would defiantly help up the security, as we'd only need a single open rdp port. And maintenance, service packs, anti-spam subscr

    • Any thoughts for or against?

      Yes.

      1. I have a lot of experience with law firms, and before you pitch going with Google (and turning over all your confidential data) you'd better have your ducks in a row.

      I haven't read their usage agreement

      2. This isn't having your ducks in a row.

      Point being, there seems to be a trade off that makes outsourcing the deal worth looking into, especially for small firms where budgets and manpower face more constraints than with fortune500 companies.

      3. Yep.

      4. If you're going to make a significant pitch, get someone else to check the grammar before sending it off to lawyers. (Hint - much as I dislike Google, going to Google apps still can't really be said to help increase security in a defiant manner.)

  • My experience has been the vendor theoretically knows their product, in that they know where to configure something.... but they know shit about how their product operates in the IT infrastructure of your company. most of the vendor products I have installed needed quite a bit of extra code to be written just to fit into the environment and be able to be properly monitored so the support staff on our end could go home for a weekend and not have to worry about files that did not process for 4 days with the f

  • Best of Both (Score:5, Insightful)

    by maeglin ( 23145 ) on Monday December 12, 2011 @09:55PM (#38351310)

    The company I work for has the best of both worlds. They go out and buy a $500,000 piece of Enterprise Software*, forgo the expensive contractors and dump the setup and configuration on 2 or 3 in-house developers, a project manager (who is usually an outside contractor who happens to be friends with an executive -- a budget locust, if you will) and an IT manager. After about a year the esteemed project manager moves on to the next project, the manager in charge gets promoted, the software is blamed for the lack of results and a new $500,000 purchase is made.

    *For those that haven't used the stuff, Enterprise Software doesn't actually work out of the box. It's much like a do-it-yourself plane kit with lots of manuals on FAA regulations, a glossy guide full of pictures of planes "other customers" have built and a box full of parts (with a few random parts missing) but no actual assembly instructions.

  • by Anonymous Coward

    It is better to outsource if you are outsourcing to people who are more competent than your in house staff. Unfortunately the people who make these decisions often are not sufficiently competent in IT to make an informed decision. My boss certainly never believes me when I tell him I'm more competent than those bozos.

  • Most mature organizations have reached the point of understanding that custom solutions cost too much to maintain and support unless they are core to the business. Organizations make do to with off-shelf-solutions and support. As for integration, more and more organizations are also buying software suites instead of standalone products or relying on contractors for integration.

    In fact, custom solutions actually makes organizations less nimble by tying them to their customized in-house infrastructure. By

  • Yeah totally stupid. (Score:5, Interesting)

    by unity100 ( 970058 ) on Monday December 12, 2011 @10:05PM (#38351378) Homepage Journal
    Imagine - you are trusting a PRIVATE party with your sensitive stuff. they can do something stupid and go bankrupt, get sold, this that. you have no power over hirings there, so you wont know whether they are hiring reliable individuals or people who could leak your stuff at any given point. what are their goals their policy changes this that.

    basically you are giving your balls to them. and they grip tightly.

    i.t. became too complicated now indeed. but, is that much complication really necessary ? KISS rule (keep it simple, stupid) is applied in software development, but, ironically it is not applied in setting up i.t. infrastructure of an organization - nowadays people try to incorporate every 'next big thing' into the setup. and you get a mess.

    KISS outside, KISS inside the infrastructure. And then keep your own infrastructure. That's the key.
    • You forgot the fact that when you work with a PRIVATE party, you have to agree to a legal document up front. Want to approve of every single employee that works on your system? Get it in the contract (aka "Statement of Work"). Want to make sure nobody works on it that is not a US citizen? Get it in the contract. Uptime? Unscheduled outages? Scheduled Outages? How long it takes for a part to get on side?

      Get it in the contract. And if they're in breach, set the lawyers on them and get your money back.

      Good

      • Get it in the contract. And if they're in breach, set the lawyers on them and get your money back.

        yeah. do it. get your 'money' back. what about the customers and pr you lose in the process. how are you going to get them back.

  • I work at a company that has a very high "we build it ourselves" ethic. This can be a great thing if you are actually spending time and energy on building the product you are shipping, as that does crazy things like create value for the company and generate revenues because you deliver the features people actually want. Revenues end up making profits. This pays my salary and ends up putting food on the table, paying the mortgage and keeps the house warm. YAY.

    What doesn't do a darn thing for productivity

    • by Rumtis ( 887583 )
      A good (maybe not great, though) analogy I heard of in regards to in house IT: Designer clothing

      An internal team will cost extra, but can create a solution that fits the company perfectly and it looks/works *really* good. The thing is (a) they are the only ones who can build it just to the company's needs and (b) hopefully the size of the company doesn't change dramatically. Otherwise it won't fit right.

      On the other hand, a one size fits all may work for the company, but nobody looks good in a muumuu.
  • While I can see a larger business being able to support the personnel to have such an experienced/skilled in-house development team, the fact is that for most small and mid sized businesses such a setup just isn't worthwhile.

    One of my previous jobs was the systems/network administrator for a 65 person company. The yearly IT budget for software licensing, hardware, etc was about $150k. The software we bought met the needs of the company admirably, with only a little bit of customization required. Myself an

  • by C_Kode ( 102755 ) on Monday December 12, 2011 @10:19PM (#38351472) Journal

    This is true, but you have to be selective. Sometimes pre-built solutions makes since.

    I've seem way to many people try to build solutions when an off the shelf solution would have been easier and cheaper in the long run. (say after a failure, and sometimes before!)

    If you need a mail server with lots of accounts, but no bells and whistles. Build it yourself. You need an mail server with all the bells and whistles. (calendaring, etc) Buy one off the shelf. You will save yourself a lot of head aches. (providing you're not stupid in implementing your off the shelf product)

    I have a couple of name brand HA NAS devices. I also have a couple of Linux NFS servers running DRBD and heartbeat. I knew where to buy off the shelf and where I could do it myself.

  • The blame game (Score:4, Insightful)

    by Glendale2x ( 210533 ) <[su.yeknomajnin] [ta] [todhsals]> on Monday December 12, 2011 @10:26PM (#38351520) Homepage

    A lot of the time it's because when shit hits the fan then management can shift blame to the vendor and/or support contract.

    • so in fact it is due to a system where when people are blamed for some screw up they lose their jobs. This causes middle management to look after their asses first and part of their job becomes diverting responsibility instead of solving problems. It causes the entire company hierarchy to look for the next person to blame as losing their job is not an option. If this was off the table as a punishment maybe employee retention would be better. I think there is a difference between firing someone for messing
  • Compromise - A Kit (Score:4, Insightful)

    by Tablizer ( 95088 ) on Monday December 12, 2011 @10:42PM (#38351628) Journal

    I'd like to see software "kits" for families of application domains. One purchases the software kit's source code and then customizes it, perhaps with an optional subscription to get future doo-dads.

    Doing everything from scratch takes too long and buying pre-built solutions shoehorn you into something both missing features you need and that carries the baggage of features you don't.

    Write them in common languages such as Dot.Net, Php, Java, etc.

    However, enforcing licenses may be tricky.

  • by PPH ( 736903 ) on Monday December 12, 2011 @10:45PM (#38351650)

    Its where your business processes are implemented these days. If your company has no competitive advantage over others based upon these processes, then by all means, buy the same s/w package that the guy down the street uses. Or hire the same consultants. More often than not, rather than customizing an application to suit your business, they whip out some boilerplate procedures manuals and get some of their inside people to slip them into your business plans. It makes their subsequent sales job much easier.

    There are legitimate issues of core competence vs activities outside your companies value chain. Once you can identify what it is you do that gains you an advantage in your market and apply your IT (and other) resources to that, the rest can be bought off the shelf.

  • by Chas ( 5144 ) on Monday December 12, 2011 @11:00PM (#38351754) Homepage Journal

    I understand that some environments can be more flexible or more dialed-in to company/user needs with a full time, active development staff doing everything homegrown.

    But the talent pool for this sort of thing is woefully limited. I've seen "in-house" development groups come up with some of the nastiest, most byzantine pieces of crap-hackery you could possibly imagine. And there's ZERO planning for what to do when the system reaches obsolescence. And don't give me any crap about how it won't ever happen. It WILL. Then, what's the upgrade path? How do you get the data out? And a million other niggling little things.

    There's also the problem of relying on a group of individuals like this. It's essentially a thinly disguised form of vendor lock-in. Save the vendor is a group of your own employees. And what happens if they all up and move on to greener pastures? How do you maintain the system? CAN it be maintained? Can it be extended? Can ANYTHING be done with the system without bringing it crashing down?

    How do you know Joe WannaSecureMyJob didn't back-door the system?

    Yes, a lot of these are concerns you face with vendors too. But with vendor approaches, if you dislike the direction the project is heading, you can kill it, cut out the vendor, and move on to something you find more acceptable.

    Not saying it CAN'T work. Just that the level of care you have to take when risk managing is different from what you need with outside vendors.

    • by jyx ( 454866 ) on Tuesday December 13, 2011 @01:40AM (#38352476)

      I'm a contractor that has spent most of my career 'on site' at various large institutions. Never less than 2 years at any one spot - the contract has always been extended even after the original work has been done.

      I've seen "in-house" development groups come up with some of the nastiest, most byzantine pieces of crap-hackery you could possibly imagine

      Very true, It you hire crap staff you will get crap results. Most of the places Ive worked had environments like this. In fact, its usually why I get called in ("ARGHH!! ITS ALL SHIIIIIIT FIX IT!!!!!!!")

      But with vendor approaches, if you dislike the direction the project is heading, you can kill it, cut out the vendor, and move on to something you find more acceptable.

      Hang on. Your saying that an IT department that is not capable of hiring even basically competent staff is some how magically able to contract and evaluate a 3rd party to meet their businesses needs?

      That's rubbish.

      The same lack of management competency that led to hiring crap staff will result in a crap outsourcing project.

      If you have a good management layer, you will succeed regardless of outsourcing or in sourcing. If you have a continual need for X number of developers, why pay the over head of a contracting firm? Sure bring in people when you need to, but they should support your in house team not replace them.

      I say if your big enough for an IT Department, your big enough for at least one full time developer. If you want to outsource, then walk the walk and outsource THE LOT (Includes all CIO and IT related management positions)

  • by iPaul ( 559200 ) on Monday December 12, 2011 @11:52PM (#38352054) Homepage

    The first, diversity, was mentioned in the article. In the last 20 years (1990 to 2010) we've had countless "core enterprise technologies of the future" spring forth. Some of these concepts or technologies are still in wide spread use, but others have fallen out of favor or have been overcome by events. Many shops have hodge-podge systems with tough to find skill sets. It's hard to staff these positions and the average tenure of an IT person is about 2 years. With a contractor, it's now the HR problem, not your problem, to find someone who knows Delphi, COM, and DB2 to patch your in house app.

    By contrast, the CICS was developed in 1969, System 360 1964, and COBOL 1959?. Anyway, you can take a 30 year period from the mid sixties to the mid 1990's and find almost the exact same mix of products. The versions and features evolved, and some additional COTS products were introduced, but there is an amazing consistency. Even the terminal technology for the mainframe was fairly slow to change, with serial terminals in wide spread use until fairly recently. I think the lack of diversity makes it more economical for companies to train and manage an in-house staff. When it's time to find new staff, you used to be able to find an ample supply of people who had COBOL/CICS on their resume.

    But I think this problem could be overcome if senior management saw their IT as delivering a competitive advantage relative to their competitors. Even in the mainframe days there was a lot of outsourcing. If we're all using the same COTS packages and building the same applications on the same platforms, it's more about not screwing up than it is about doing something excellent. Companies are more likely to keep their "secret sauce" in house but take the stuff everyone has to do and outsource it to try to reduce cost. That's not to say that companies don't use consultants to help with projects.

    You sometimes see this as "know your knitting," meaning understand what makes your company great, it's core competencies and what makes it special. Don't get distracted by the other stuff and just focus on that. If IT isn't something that makes your company special - why would you spend one nickel more than you had to?

  • by billybob_jcv ( 967047 ) on Monday December 12, 2011 @11:55PM (#38352060)

    You need to decide what business you want your company to be in - if you want to be a SW development company, fine - be a SW house. However, if you want to be anything else, then don't write your own SW. Keep your business focused on what you really do. You don't want to spend resources tracking, designing and coding the annual changes to the tax code, or all the deprecated functions in your chosen framework or the latest trends in user interface design. There is no way you can do all the industry research, application design and code maintenance for the price of the annual SW maintenance, let alone match the amount of resources a large commercial SW vendor can devote to the same problem. His R&D costs are spread across all of his customers - are yours?

    Oh - and lets not forget a little thing called Sarbanes-Oxley. Do you really want to prove to your auditors that you have built the same level of controls into your homegrown ERP system that are put into tier 1 or 2 commercial systems?

    In the vast majority of companies, the "unique business processes" are a very small percentage of the application - and many of those are simply stubborn and egotistical business users who refuse to believe that the vanilla solution would also work just fine for them if they were just willing to try to understand it.

             

    • I work as a programmer in the retail industry, and in previous employment have dealt with ERP integration and extending legacy systems. I can tell you with absolute confidence that certain industries do need completely custom software to work properly - grocery stores, bookstores, and clothing stores all have different needs, different workflows, and different requirements. A cash register is a cash register, yes, but everything from dealing with expiration tracking and sales by weight to street dates to c

  • by yoey ( 247125 ) on Tuesday December 13, 2011 @08:21PM (#38364648) Journal

    there are lousy homegrown solutions and great vendor applications (and vice versa). It depends on the caliber of the development team.

Children begin by loving their parents. After a time they judge them. Rarely, if ever, do they forgive them. - Oscar Wilde

Working...