Engineering, Product

The Challenges of App Monitoring with .NET Core

The evolution of software development from monolithic on-premises applications to containerized microservices running in the cloud took a major step forward last summer with the release of .NET Core 2. As I wrote in the “Understanding the Momentum Behind .NET Core,” the number of developers using .NET Core recently passed the half million mark. Yet […]

Engineering, Product

Attaining Nirvana: The Four Levels of Cloud Maturity

Cloud adoption is atop every CIO’s priority list, and for good reason. Technology stacks are advancing at lightning speeds. Application architectures of the past decade are aging fast and being replaced with modern, public and private cloud-based ones. But while cloud adoption is inevitable, the vast majority of organizations are still searching for an effective […]

News, Engineering

IoT and the Age of the User

It’s come to be the number to guide us through the IoT revolution, and all the tech innovations driven by it: a projected 50 billion connected devices by 2020. Forbes wrote of retailers betting big on the Internet of Things, changes have been made to accommodate the impending wave of data and new protocols, and […]

Engineering, Product

Understanding the Momentum Behind .NET Core

Three years ago Satya Nadella took over as CEO of Microsoft, determined to spearhead a renewal of the iconic software maker. He laid out his vision in a famous July 10, 2014 memo to employees in which he declared that “nothing was off the table” and proclaimed his intention to “obsess over reinventing productivity and […]

Engineering, Product

The AppD Approach: Composing Docker Containers for Monitoring

Since its introduction four years ago, Docker has vastly changed how modern applications and services are built. But while the benefits of microservices are well documented, the bad habits aren’t. Case in point: As people began porting more of their monolithic applications to containers, Dockerfiles ended up becoming bloated, defeating the original purpose of containers. […]

Culture, Engineering

Hackathoning with IoT, Blockchain, and AppDynamics

Early in the new year, AppDynamics hosted a hackathon to give employees a chance to explore technologies they were curious about, have fun, and build cross-functional relationships. I teamed up with a group of women who were interested in researching blockchain. Other members of the team included Balwinder Kaur, Nicole Hu, Audrey Nahrvar, Jeanie Oh, […]

Engineering

Tales from the Field: Spectre, Meltdown, and Patching Performance

By now you’ve certainly heard of – or perhaps been impacted by – Meltdown and Spectre, two newly discovered vulnerabilities that affected nearly every modern processor. If not, you might want to take a moment and visit Meltdownattack.com for a good overview, and Ars Technica for some good examples of how the vulnerability affects processors. […]

Engineering, Product

Tales from the Field: Debugging Applications in Production with Information Points

Production debugging is one of the most difficult parts of the job for any software engineer and one of the most underrated problems faced by IT. Developers usually rely on logs to troubleshoot production issues. They go through hundreds of lines of logs, sorting through complex logic as their stress levels rise, acutely aware that […]

Engineering, Product

The AppD Approach: Using Flame Graphs to Debug Node.js Apps

In my day job, I work to help people understand performance and reliability issues in distributed applications across a number of different technologies including Java, .NET, and Node.js. A few years ago, I started to see a rise in the adoption of Node.js, with some large organizations like PayPal making a major shift to the […]

Engineering, Product

Tales from the Field: Migrating from Log4J to Log4J2

The AppDynamics Java agent, like many Java applications, uses logging extensively. We have used Log4J as our logging framework for many years. And while the latest release of Log4J was in 2012 – and the Apache Foundation announced end-of-life for Log4J in August 2015 – we didn’t upgrade to Log4J2 because of the need to […]