2021 Call for Code Awards: Live from New York, with SNL’s Colin Jost! Learn more

IBM Developer Blog

Follow the latest happenings with IBM Developer and stay in the know.

Developer Advocates discuss pitfalls and opportunities of cloud development

Cloud development practices and environments are evolving faster than ever. As developers, we are no strangers to adapting to the changing technology landscape. However, with a landscape that changes this often, it’s easy for us to get caught using the techniques we’ve used in the past to create the applications of the future.

In this video, we talk out a problem in Upkar’s code where a 505 error that occurred due to miscoded credentials and ultimately discuss how we tackle problems like these with some vital app modernization tools.

“Just talk out the problem. You’ll be amazed on what you resolve that way.”

When serverless makes sense

Serverless is simplifying the Ops landscape for developers. By offloading responsibility for common infrastructure management tasks to cloud providers and tools, developers can focus on the business logic specific to their applications.

The core value of a serverless application is that it scales to zero. With serverless applications, we don’t waste resources we don’t need and we get to focus on writing code rather than being concerned about the infrastructure that our applications need.

Beware: There is some hype around serverless. You’ll need to know where it makes the most sense to go serverless. Serverless is based on events being triggered. So, while serverless might be perfect for a credit card processing service that only runs when a shopper buys something, it makes less sense for a web server that is effectively “always-on” and doesn’t fit so neatly into an event-based methodology.

The advantage of serverless is that you get more money for operations expenses, which in turn could mean more engineers, which means more robustness, which in turn might mean more money for the company.

Check out this great resource on getting started with serverless.

The versatility of OpenShift

Developers need to make sure that they can get their ideas out as quickly as possible. Sometimes, legacy systems make it difficult to move from a local system to the cloud or move the infrastructure to something public. Also, as developers we want to:

  • Be able to develop new features and new services quickly on the platform that makes the most sense.
  • Not get locked into a a single cloud platform with a one-dimensional infrastructure.
  • Have build versatility. AKA: If one cloud platform goes down, the build could target a completely different cloud platform which also would help with issues of security. This type of multicloud platform is all available through Red Hat OpenShift.

Red Hat OpenShift is an open source container application platform that runs on Red Hat Enterprise Linux CoreOS (RHCOS) and is built on top of Kubernetes. It takes care of integrated scaling, logging, and metering functions. With OpenShift, we can do anything that we can do on Kubernetes and much more with OpenShift-specific features. And, because of the nature of OpenShift, it’s easier to do canary builds or dark launches.

OpenShift includes everything you need for open, hybrid cloud, like a container runtime, networking, monitoring, container registry, authentication, and authorization. Find out how RedHat OpenShift can help develop across a multicloud architecture.

Improving your DevOps framework

Developers are often faced with the same question as new technology emerges: how can we continuously deliver faster and with better quality? Using DevOps development practices, developers can modernize their applications through four key areas: collaboration, sharing, automation, and measurement.

Through collaboration and sharing, developers can catch common mistakes, often by simply talking through the issue. A proper DevOps framework also allows us to take full advantage of automation, which frees up time and resources that can help to increase overall efficiency of creating applications. Because automation helps us catch and avoid mistakes from the past, we don’t have to worry about making the same mistake twice. And, with more functional builds and capabilities to close off individual aspects of an application, we can provide more accurate and instrumental performance metrics.

By improving a DevOps framework with a continuous delivery and deployment solution like Tekton, you can tackle all of these four key areas and automate your workload while modernizing your applications.

Discover how you can improve your DevOps with our walkthroughs and hands-on labs.

Application modernization for cloud development

In order to solve tomorrow’s challenges, developers need to think holistically about application modernization. As the amount of data and input that developers are tasked with continues to grow, it will soon be virtually impossible to modernize applications without new tooling and new ways of working. With serverless, Red Hat OpenShift, and improved DevOps, we hope to give developers the tools and resources they need to build multi-functional cloud apps they are proud of.

In the video, I mention to Upkar that he should use the “rubber duck” method to solve his problem, insisting that sometimes the fastest way to solve a problem is to talk it through with another developer. And although another person can serve as a sounding board for solving a problem, oftentimes the right combination of resources and services can be that for you too. Today, discover the tools that will allow your applications to reach their fullest potential. Today, let IBM be your rubber duck.

Learn more about the key concepts of application modernization and explore more application modernization information.