A recent project found us integrating an online SaaS with a MSSQL Order Entry system. The SaaS system used the hideous SOAP protocol, but PHP’s SoapClient class made quick work of that.
“Unless you have a definitive reason to use SOAP use REST.”
The order entry system followed Microsoft’s version of the development bible and operated by calling dozens of stored procedures, sometimes many times (reduntantly) over again, with each click. Yet a call out to xp_cmdshell allowed us to exit that limited platform. Finally, speed, was impressive! On modern machinery PHP’s optimized and ultra thin C++ engine is a rocket ship.
So despite the completely unorthodox strategy our client has again had their expectations exceeded. Once the code for their custom interface was moved to a PHP script all scope creep was easily conquered without any threat to the timeline nor any increase in cost. Win/Win/Win (The client/The developer/PHP).
What percentage of development shops are pigeonholing their clients by their loyal adherence to their prescribed stack? Far too many. At V-Tek, we’ve found that .NET often fits quite nicely into our mostly open-source toolbox. Especially when our client already has an MS oriented product.
One of the most powerful combinations we’ve leveraged somewhat regularly is PHP scripting routines against MSSQL systems on Windows servers. Combine the power of CLI PHP with Windows’ Task Scheduler, libraries like CURL and Sockets, and we accomplish things that other shops have flat out claimed impossible.
So unless you, as a customer, are narrow-minded, then it is best not to hire a narrow-minded development shop that will treat you like a child while they themselves waste your money.
Technology is like a religion for some. If it ain’t in their language it must “suck”. We may be able to thank headhunters and job descriptions for this unnecessary level of specialization. Jobs often come with a laundry list of specific required skills and those specific skills are either the result of a monoglot project leader or the preference of the previous developer. Either way requiring 15 years of .NET programming experience is a sure way to weed out some great prospective brain power. (as well as any honest candidates in this case since .NET hasn’t been around that long)
We often steer folks away from .NET implementations for the simple reason that compiled languages add an unnecessary layer of complexity to the production process & have caused a nightmare for maintainers. I personally love writing C# but can’t recommend it for a web site. Not when interpreted languages are so powerful and often perform better than the .NET VM.
However the title of “sucks” is reserved for a handful of technologies whose developers knew exactly what they were doing. Making products purposely limited to control the user base does suck in the tyrannical, Godwin’s law, way. That’s all I’ll say about that for now.
However, if you are a polyglot you may be a dying breed. Unless you’re careful that work you’re doing now will be the only work you ever learn to do. The more specific your experiences are the less adaptable your solutions will be. Then one day you’ll say, without any embarrassment: “I don’t know how to do that.” … If you are a real technologist that sentence had better be followed by: “ … but I’ll figure out how.” … if it is not, you are probably a monoglot, and you may well find yourself cursed with the ungraceful miasma of obsolete skills. Perhaps your employer will “keep” you because of your obsolete skills, but you’ll be stuck, and it will suck. You’ll rot in your office chair anxious for the day you can retire.
Polyglots like us have the gigantic benefit of never becoming obsolete, we are edge cutters, we aren’t afraid of new stuff, we assimilate new technologies like Cheerios. Polyglots are cool, and we may make a hobby of antagonizing the Monoglots (or “fanboys”) but our license is our knowledge. We can rip on the things we know, it’s what the “fanboys” don’t know that make them entertaining.
If you are a monoglot, stop it. Stop it now! Then you’ll get the joke.