Why 'Advanced ServiceNow Development'?
I define advanced ServiceNow development as being test-driven (if practical), incorporating good design patterns, and providing a great user experience. There are a couple of reasons such development is important for the platform:
1. Talent
At the same time, the platform must retain the talent it already has. Many younger guys I know have fear they are developing too narrow a skill-set. This may be warranted to an extent but my challenge to them is to ask whether they are test-driving their development and following design patterns. Are they following S.O.L.I.D. principles? There is nothing 'narrow' about these pursuits, and such skills are portable to any platform or language in the future.
2. Towering Capabilities
What [we are] going to be putting in your hands is a system that you can build apps for 5-10 times faster than anything out there. Period. And you can choose to do one of two things or somewhere in the middle with this power. 1. You can make existing complexity apps 5-10 times faster, which means that 3 people really can go into a garage on day one with a concept and come out in the market with a product 6-9 months later.But rapidity of implementation alone won't advance the platform any further. I think this is actually an area that ServiceNow overemphasizes, with their push into 'citizen development' and the like. Look at how Steve Jobs followed-up on the above concept:
One of the other things you can do with these powerful tools in addition to building a current complexity 5-10 times faster, is build an app you couldn’t build on any platform. And that to me is the most exciting. Build an app you could not build on any other platform, because it’s all about managing complexity, right? You’re developers, you know that. It’s all about managing complexity. It’s like scaffolding, right? You erect some scaffolding, and if you keep going up and up, eventually, the scaffolding collapses of it’s own weight, right? That’s what building software is. It’s how much scaffolding can you erect before the whole thing collapses of its own weight. Doesn’t matter how many people you have working on it. Doesn’t matter if you’re Microsoft with 3-400 people, 500 people on a team. It will collapse under it’s own weight. You read “The Mythical Man-Month”, right? Basic premise of this is a software development project gets to a certain size where it can add one more person. The amount of energy to actually communicate with that person is actually greater than their net contribution to the project so it slows down. So you have local maximum and then it slows down. We all know that about software. It’s about managing complexity. These tools allow you to not have to worry about 90% of the stuff you worry about, so that you can erect your 5 stories of scaffolding, but starting at story number 23 instead of starting at story number 6. You can get a lot higher.
(Transcription from OnStartups.com)
We ServiceNow developers should be using these capabilities to build taller, not just faster. We should be delighting our customers with solutions that could only be built on ServiceNow because they are reaching such towering heights of capabilities.
Closing Remark
I invite you to get in touch, comment, and contribute to SnowLib. Let's help keep the platform strong!