[…] I’ve been pushing the idea that every app should be a platform for a long time, that in addition to a user interface, every app should have a programmatic interface. For me the idea came from growing up using Unix in the 70s, where every app is a toolkit and the operating system is a scripting language. Wiring things together is an integral part of being a Unix user. It’s why programmers like Unix so much […]
It is entirely true. The limits are blurry, IMHO. In the Unix world it is common to find full-fledged “applications” which have been written by the ground up by people that were doing SysAdmin tasks, and those “applications” are usually just… scripts. Simple shell scripts, or something more evolved (PERL, PHP, Python) it does not really matter.
I am so tired of the division traditionally made in the Microsoft world between “Developers” and “IT Professionals”. We even have separate sites for the two audiences: MSDN and Technet. There are separate “TechED” events: for”Devs” and for “IT Pros“. There are blogs that are divided among the two “audiences”…
There aren’t two different audiences, really. There are people, with various degrees of expertise. There is no such a thing as a “developer” if he doesn’t know a bit how the underlying system works. His code is gonna suck. And there is not such a thing such a “IT Pro” that builds and integrates and manages systems if he does not have the palest idea of how things work “behind the GUI”. He’s gonna screw things up regardless of how many step-by-step (click-by-click ?) procedures you spoon feed him.
That’s why automation and integration are best done by people who know how to write a bit code.
The PowerShell folk GET IT.
Your main idea, IMHO, is right, yet there *IS* a natural division between Developers and SysAdmins. As far as you can see around the world it happens that applications are built by people that don’t even know or bother about system issues or connection issues. Take an example at my blog about the “Middle Tier”. Applications built regardless of the impact an application may have if the development model known as Client/Server is GUI to DB connection with ADO. I think that the main problem of developers is that they see an enemy in a SysAdmin: if they have something to do, they do it. They rarely ask a SysAdmin or a NetAdmin for an advice, if it ever happens. And when their application hangs… everybody points the finger about us (SysAdmins)… the division *IS* real and *IS* natural. IMHO :))
My friend, you say: “[…] I think that the main problem of developers is that they see an enemy in a SysAdmin […]”.
And that is PRECISELY WHY we should NOT foster and endorse this behaviour and tendancy of people to be in opposition to each other.
We should UNITE them, not DIVIDE them. We should get them to be working TOGETHER.
You are more than right about this, yet often I have found more issues with Devs coming to me asking for an advice than the opposite. I strongly encourage this kind of dialog between Devs and SysAdmins, yet seems that we are the enemy… maybe I just mispelled a couple of phrases.