Oracle wants to be more than databases. On its own developer tools website, the company touts an "integrated set of application development and business intelligence tools that supports any development approach, any technology platform, and any operating system." Put another way, Oracle wants to be your go-to cloud development platform, whether you use Oracle databases or not.
As vice president of product management and strategy for Oracle Cloud Platform, Siddhartha Agarwal knows that developers today are building applications based on technologies that did not exist just a few years ago. As part of the effort to pique developer interest, he is participating in the Oracle Developer Day roadshow currently touring the United States with his presentation, "Building Modern Applications Using APIs, Microservices and Chatbots." He took time out from his travels to speak exclusively with SearchCloudApplications.
Chatbot development is the hot topic of 2017. What can developers build using chatbot technology that they could not build before?
Siddhartha Agarwal: Think about the experience of a fan going to [an NBA] basketball game. This fan who wants to buy tickets can engage with a chatbot instead of downloading mobile apps. You can 'friend' the chatbot and ask what tickets are available, and the chatbot can ask you what your budget is and then find the best tickets. The chatbot can also add cross-promotions into the discussion and ask if you'd like beer and chips included in your ticket package.
That's a simple user experience scenario, but things are always more complex from an application-development perspective. What is going on under the hood in terms of chatbot development?
Agarwal: What we're demonstrating with that user scenario is how a developer builds the APIs, requesting, for example, a list of beers being offered and the seats that are available. Next, we show the developer platform where you build microservices associated with those APIs. There's also the continuous integration and continuous delivery (CICD) pipeline around being able to look at the source code, being able to get the code from Git, being able to do the build, and being able to deploy the build onto a container platform running Node.js code. There is also designing the intent and entities -- buying tickets and beverages -- of the chatbot and consuming the microservice through it. We want developers to understand that the next generation of applications can be built on the Oracle platform and look at it as a de facto 'why-not' platform.
In parallel with chatbot technology, developers still need to deal with that ever-growing mountain of big data.
Agarwal: We have the ability to have Hadoop clusters set up, scaled, and managed for you with Kafka and Spark for getting big data streams in.
With so many new technologies changing the nature of applications, including chatbots, IoT, cognition, AI and big data, how is the role of the application developer changing?
Agarwal: We see developers fall into two categories. The first is mature developers. We have a retail customer rewriting an app across 8,400 stores that runs locally in each store. They are rewriting that as a microservices-based application with Docker containers, Kubernetes for orchestration with XCB [X protocol C-language Binding], and Spinnaker for CICD. Even though they have insight into building cloud-native applications, it is still challenging. Even at their maturity level, setting up all these pieces and getting them to work together is hard. You still need to do applications performance monitoring so you know which specific microservice is causing a problem.
Siddhartha Agarwalvice president of product management and strategy, Oracle
The other set of developers are those that have heard about microservices and containers and are excited by their potential. We help them focus on writing code and bringing that code to a PaaS [platform as a service] and not have to worry about putting things into containers.
Is chatbot development reaching a point where writing code to build an application becomes largely unnecessary?
Agarwal: Writing code will not become obsolete, but we see a rise in the number of people who are business analysts that leverage new visual development platforms. The number of developers writing high-code applications using Java, Angular, Cordova, Ionic (mobile app development framework) will grow a little. But the pool of people who learn to extend a SaaS application without writing any code or who can build a rapid mobile-app for prototyping without getting IT involved -- we are going to see a significant increase.
What does that say about the quality of applications these non-coders are building?
Agarwal: The question to ask is whether an application ever needs to be perfect. Businesses want to fail fast. They want to try out a dozen projects with user feedback and decide in a couple of months which work and which don't. Then they go to IT and say, 'These are the two things we want you to make into real applications for us.' So, there is a space for no-code or low-code citizen developers and for high-code traditional developers.
Chatbot development technology is changing the career landscape
Chatbot integration advances intelligent insights
AI, machine learning are key chatbot technology drivers