Advocating Linux / OSS to Management.
An anonymous reader writes "I'm the Senior Developer at a fairly large agency, we're currently a 100% LAMP shop, but I've heard a reliable report through the grapevine that the management a few levels above our office wants to standardize our region on MS .NET. As I'm sure most of you can appreciate, to do such a thing would be... counterproductive, and I could really do with a hand conveying this to a manager whose only real knowledge of Linux is "if it's so good, why would you give it away for free"?"
The difference between a professional and an amateur is that amateurs work for the love of it and professionals work because they get paid. Sort of the difference between a spouse and a hooker. Which side does MS fall on?
.. Blub falls right in the middle of the abstractness continuum. -- Paul Graham
Don't be fooled by management's official reasons why they don't go with Linux or other open source software. It really just boils down to FUD.
There's still a prevalent image of Linux and other open source software out there as just hobbyist software. The reason I hear most often cited for not considering open source software at my company is, "There's no one to hold accountable if it breaks." Even when I point out companies that offer paid support--people to be held accountable for making sure the software works--they still chant the "hold accountable" mantra. Those companies aren't big enough, they may go out of business any minute now, blah blah blah.
It's really disgusting sometimes. I've seen software come into our environment that I know for a fact and can demonstrate is crap, and offered alternatives for it. I'm told, "That's all fine and good, but when the software we're going to use breaks, we'll have someone to sue over it." Of course, that doesn't really happen, we always just end up suffering for several years until the next version comes out or some other closed-source competitor comes in and convinces management that they're the way to go instead. Having people to "hold accountable" (which they never are) is more important to my company than having something that actually works.
I don't know what to suggest. Another trait of large companies is that they won't do something until everyone else in the world is doing it. Once a company reaches a certain size, there's no longer a culture of trying new things and trying to separate yourself from the competition; it becomes an unrelenting strive for mediocrity. Right now, everyone else is moving to .NET, so that's probably where you'll end up, regardless of what is best for your company. About the only chance you have is to put together a pretty Powerpoint presentation showing that switching to .NET will cost a billion dollars. Make costs up if you have to. The problem is that if you show it will only cost a million, they'll still do it anyway just to be on that magical .NET bandwagon, and you'll need a ridiculously large cost to justify not doing so.
Question: Ask him if he charges his children for the parenting he gives them? Must be worthless, then, right?
Question: Ask him how it is in the company's best interests to spend money on something you can get for free?
Question; Ask him how much he thinks it would cost to convert over, and then give him an estimate of what you could do with the money on your existing LAMP platform.
My guess: FEAR. It seems to me he's afraid that *something* *will* go *wrong* and he wants to be able to Cover His Posterior. (See: Sarbanes-Oxley Act.) Address his fear by pointing out the REALITY of what happens WHEN something goes wrong.
Of course, he could mention about coding a work-around, but that holds true for either platform. It's a non-factor.
It might help to also point out that with LAMP, it is possible to be pro-active and actively search for vulnerabilities. Seeing as others would have the same interest in safety, this has already been done to a some extent, but you still have the option of doing this yourself. With MS .NET, you're screwed. It's closed source and there's no way to investigate what problems are there. Security by obscurity? Right.
Testing for vulnerabilities: There's a big difference between what is POSSIBLE with: Black Box (.NET) vs White Box (LAMP).
Still, with a bug in .NET the manager can say it's a bug with Microsoft and wave his hands around it. Sounds good, but in the meantime, his hands are tied, and
the brown stuff is still hitting the spinnie-thingie. With LAMP, he CAN do more than just wait for a fix... and any fix that can be implemented in less than a month is a win compared to Windows.
I know I waved my hands around some in the preceding, but the manager really doesn't care HOW your code works, or even WHAT your code is written in. He's just looking at an abstract "applications that do FOO". Speak to him at his level. Get him to be specific about his fears. For each one, address what could be done with either platform. Provide a reasonable time line. Keep harping on having to wait for MS to get back to you with a fix, while, with LAMP, you could have already constructed one.
" a manager whose only real knowledge of Linux is "if it's so good, why would you give it away for free"?"
"Because the best things in life are free - you PAY for crap like Windows."
Ask him is he things solaris or java or aix are "unprofessional" products. Versions of all those available for free downloads - heck, Sun sent me the install dvds for opensolaris for free. Then ask him why he thinks that a few thousand programmers working at Microsoft can beat out a world-wide network of programmers, many paid by industry leaders like IBM and Novell, whose work is peer-reviewed!
Would he feel confident if his doctor started recommending non-peer-reviewed cures and drugs? Does he like the idea doing away with the notion of a fair trial by a jury of his peers? Would he trust an airplane, a nuclear power plant, his fridge or toilet if they ran Windows?
Then tell him that he really needs to get with the times - his attitude is stuck in the '80s. - that's 1380, when everything was run by guilds with "secret knowledge." Lincoln freed the slaves in 1863, and since then, people want more and more of that "freedom" in all parts of their lives.
Start looking around for other jobs.
The issue here isn't about .NET vs LAMP, or proprietary vs open source. I would give the same advice if the decision had been the reverse, ie switch from 100% .NET to LAMP.
Basically your company's upper management is going to make a huge decision without any input from developers. If senior developers like yourself weren't consulted before the change, it's unlikely they have a migration plan that is more detailed than "1) Switch from LAMP to .NET 2) ???? 3) Profit!". Is this a company you want to stay in?
It all depends on how individuals see the world around them. I think managers, who are mostly business school educated, don't see the world the same way the rest of us (developers) do.
Actually most managers do not have an MBA. Many have undergraduate degrees in science and engineering. Also, I'm in an MBA program right now and there is no shortage of engineers and IT (including admins) in my class. Some of my professors who have decades of real world experience in strategy and marketing at major corporations have undergraduate degrees in electrical engineering, mechanical engineering, etc.
They probably don't understand why someone would work for free or why someone would volunteer at a soup kitchen.
That is an extremely ignorant statement. There is a lot of charitable work being performed by business schools, fund raising, volunteering, etc. Additionally, a couple classmates actually work at non-profit research or charitable organizations. I know several that made donations of their time to various charities before entering business school, and who have also continued to make such donations despite having far less spare time now that they are back in school. The school also maintains a list of local charities that could use help in some area of business.
You are engaging in the same ignorant stereotyping that many around here complain of with respect to how geeks, and technical issues/people in general, are portrayed on TV and movies.
Most of the managers would never think that work could be fun unless it payed lots of money. Manager-types chose business school just as a way to get more money, it was a pretty good shortcut -- you go to school, pick business as your major, party for 4 years with buds, and then one of their dads hires you as a manager -- the system works great
That is also a fairly ignorant statement. I have BS and MS degrees in CS. Except for 2nd year calculus and theory of computation I am routinely using more advanced math in marketing classes. Yes, I was completely shocked. Yes, I used to hold the same arrogant and erroneous opinions you now hold.
Developers became developers because they like to write software. Most found ways to get payed for it, but they didn't dream of reaches first, then thought that becoming a developer would get them there and chose 'computer science' as a major in college (those that did do that, probably ended up switching to 'communication', 'business administration' or 'comparative literature' before the 2nd year.)
Bull. The vast majority of CS graduates that I have interviewed basically got into it because someone told them it was a good career path. It is difficult to wade through the applicants and find those truly have an interest in the work. Also, donating time to an open source project does not necessarily identify those with an interest. Some of the more savvy career path types realize that this is an easier way to get something on the resume outside of classwork.
Also, some individuals donate time to FOSS for non-altruistic reasons such as ego, improving credibility/reputation, getting some experience in an esoteric area before applying for a job, etc. I'm not saying there is anything wrong with this. Just that your are romantically naive about FOSS developers.