Pankaj Malviya is CEO of LongJump, a Platform-as-a-Service (PaaS) provider.
Most of the effort in developing system functionality in today's business applications is not programming. It's the busy work. It's reinventing the wheel. I might even say that it's a complete waste of time. If you happen to be working on such a project today, I apologize if you take this the wrong way. It is not to say you are a waste as a programmer, but as you might have already realized, the cycles you are spending refining a proprietary business rule engine or an audit trail function are likely not worth the long hours you're putting into them, especially when you can not leverage that functionality elsewhere. Too much emphasis is on application look-and-feel and building proprietary processing technology.
I recently talked to Izak Joubert, the CTO of NES Financials and a LongJump platform customer, who said that in the past, they had the time, money, tools, and resources to "perfect every pixel" of applications. As developers, they loved the control and the blank canvas to design beautiful applications.
But as businesspeople, that control and dedication wasn't enabling them to finish projects any faster or meet the challenges of a very dynamic business climate. Instead, responsiveness to change became more difficult because there was no framework and too much time was spent on accoutrements that don't matter in the back-office IT world. At the end of the day, NES Financials is a financial solutions company, not a software company, and application perfection was taking away from their core competencies.
We hear many stories like this: Businesses that essentially need development tools to get their work done, but traditionally have only had what constitutes as designer tools geared towards productizing a wide range of commercial software applications. As a result, their developers fall in love with perfecting those pixels, because they can and because it's fun.
As developers, we rely on our ingenuity and hard work to keep us employed, but the truth is many of today's back-office IT applications don't need the sexy wow factor that commercial applications offer. An overwhelming number of business applications are not 99-cent, millions-of-downloads, mass market apps. After all, we're not releasing the next Guitar Hero or Tap Tap Revenge app. Back-office IT applications are hardworking, bread-and-butter applications. They don't need to be pretty. They simply need to make everyone's work easier, more accurate, and more effective.
Enter the advent of cloud computing and cloud application platforms or platforms-as-a-service (PaaS) -- virtualized and scalable IT infrastructure married to adaptable application platforms. In the same way server infrastructure is outsourced and managed in a ubiquitous cloud, applications can have their "guts" outsourced to speed software development -- including common building blocks like data modeling, security, data and workflow processing and reporting.
Applications built on these cloud platforms offer up real immediate value. The pre-built interfaces are utilitarian and pragmatic, while the platforms come with flexible data processing and reporting engines, and they're infused with the enterprise class features of workflow, permission management and business object modeling every enterprise app needs. Add on layers of user self-service customization features, web services integration, API extensions, and versioning and deployment capabilities, and you have everything needed to build robust, serviceable business applications in a small fraction of the time with significantly fewer resources.
The value of building on the platform goes beyond the first application. IT can take advantage of the economies of scale, even in their own private clouds, and do so in a way that promotes agile development and enhanced internal customer service.
For example, using PaaS, you can build an order management application that might encompass data on customers, orders and inventory. Well, in that same platform, you can seamlessly reuse the orders data in your accounting application, and reuse the inventory data in an asset reconciliation application. Different applications for different departments -- all using a common set of objects.
The entire organization benefits from less emailing of spreadsheets, less time spent building integration points, and less rogue applications to contend with. In addition, this process is building upon a foundational set of data that can be leveraged over and over again. When our customers need changes, most are menu-based configurations that don't involve custom code, so we can have solutions out faster and adapt quicker to new requirements.
Beyond the fiscal and time saving benefits, there is also a strategic reasoning for PaaS that hits the crux of mission critical application planning. IT needs to take a serious look at where the weaknesses are when it comes to information flow. Where is the weak link to giving information workers the data analysis and processing they need? Where are companies most at risk for a major breakdown in process, accountability, or compliance? In most cases, the trouble starts where there are no applications or where entrenched rogue applications have introduced chaos into the information landscape.
PaaS is an essential tool to establishing an IT strategy for businesses to:
- Control and host applications from a single environment
- Standardize application architectures
- Quickly roll out changes while safeguarding information
- Give IT a leadership role in defining applications rather than having to support them after the fact
- Focus on core competencies
What would IT need to take advantage of a cloud/PaaS arsenal? First and foremost, it means adopting the mindset of solution architects focused on analyzing challenges at the information and business process level, not at the physical and networking levels. It also means wasting less time on what doesn't matter and instead focusing and redirecting resources into what does.