<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Nick Harley</title>
    <description>The latest articles on DEV Community by Nick Harley (@harley1984).</description>
    <link>https://dev.to/harley1984</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F118736%2F10af4f54-fa06-4ee3-b6cc-94a1b2b55ade.png</url>
      <title>DEV Community: Nick Harley</title>
      <link>https://dev.to/harley1984</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/harley1984"/>
    <language>en</language>
    <item>
      <title>11 of the most costly software errors in history</title>
      <dc:creator>Nick Harley</dc:creator>
      <pubDate>Mon, 10 Dec 2018 22:24:11 +0000</pubDate>
      <link>https://dev.to/raygun/11-of-the-most-costly-software-errors-in-history-gbi</link>
      <guid>https://dev.to/raygun/11-of-the-most-costly-software-errors-in-history-gbi</guid>
      <description>&lt;p&gt;In this post, we take a look at some of the biggest disasters over the years to see what happens when software errors cause chaos!&lt;/p&gt;

&lt;h2&gt;
  
  
  NASA's Mars Climate Orbiter
&lt;/h2&gt;

&lt;p&gt;On its mission to Mars in 1998 the Climate Orbiter spacecraft was &lt;a href="//ftp://ftp.hq.nasa.gov/pub/pao/reports/1999/MCO_report.pdf"&gt;ultimately lost in space&lt;/a&gt;. Although the failure bemused engineers for some time it was revealed that a sub contractor on the engineering team failed to make a simple conversion from English units to metric. An embarrassing lapse that sent the $125 million craft fatally close to Mars' surface after attempting to stabilize its orbit too low. Flight controllers believe the spacecraft ploughed into Mars' atmosphere where the associated stresses crippled its communications, leaving it hurtling on through space in an orbit around the sun.&lt;/p&gt;

&lt;h2&gt;
  
  
  Ariane 5 Flight 501
&lt;/h2&gt;

&lt;p&gt;Europe’s newest un-manned satellite-launching rocket &lt;a href="https://en.wikipedia.org/wiki/Cluster_(spacecraft)" rel="noopener noreferrer"&gt;reused working software from its predecessor&lt;/a&gt;, the Ariane 4. Unfortunately, the Ariane 5’s faster engines exploited a bug that was not found in previous models. Thirty-six seconds into its maiden launch the rocket's engineers hit the self destruct button following multiple computer failures. In essence, the software had tried to cram a 64-bit number into a 16-bit space. The resulting overflow conditions crashed both the primary and backup computers (which were both running the exact same software). &lt;/p&gt;

&lt;p&gt;The Ariane 5 had cost nearly $8 billion to develop, and was carrying a $500 million satellite payload when it exploded. Read more &lt;a href="http://sunnyday.mit.edu/accidents/Ariane5accidentreport.html" rel="noopener noreferrer"&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  EDS Child Support System
&lt;/h2&gt;

&lt;p&gt;In 2004, EDS &lt;a href="http://news.bbc.co.uk/2/hi/uk_news/3235394.stm" rel="noopener noreferrer"&gt;introduced a highly complex IT system&lt;/a&gt; to the U.K.’s Child Support Agency (CSA). At the exact same time, the Department for Work and Pensions (DWP) decided to restructure the entire agency. The two pieces of software were completely incompatible, and irreversible errors were introduced as a result. The system somehow managed to overpay 1.9 million people, underpay another 700,000, had US$7 billion in uncollected child support payments, a backlog of 239,000 cases, 36,000 new cases “stuck” in the system, and has cost the UK taxpayers over US$1 billion to date.&lt;/p&gt;

&lt;h2&gt;
  
  
  Soviet Gas Pipeline Explosion
&lt;/h2&gt;

&lt;p&gt;The Soviet pipeline had a level of complexity that would require advanced automated control software. &lt;a href="http://en.wikipedia.org/wiki/Siberian_pipeline_sabotage" rel="noopener noreferrer"&gt;The CIA was tipped off to the Soviet intentions&lt;/a&gt; to steal the control system's plans. Working with the Canadian firm that designed the pipeline control software, the CIA had the designers deliberately create flaws in the programming so that the Soviets would receive a compromised program. It is claimed that in June 1982, flaws in the stolen software led to a massive explosion along part of the pipeline, causing the largest non-nuclear explosion in the planet’s history.&lt;/p&gt;

&lt;h2&gt;
  
  
  Bitcoin Hack, Mt. Gox
&lt;/h2&gt;

&lt;p&gt;Launched in 2010, Japanese bitcoin exchange, Mt. Gox, was the largest in the world. After being hacked in June, 2011, Mt. Gox stated that they’d &lt;a href="https://en.wikipedia.org/wiki/Mt._Gox#Bankruptcy;_stolen_bitcoin_(2014%E2%80%93ongoing)" rel="noopener noreferrer"&gt;lost over 850,000 bitcoins&lt;/a&gt; (worth around half a billion US dollars at the time of writing).&lt;/p&gt;

&lt;p&gt;Although around 200,000 of the bitcoins were recovered, Mark Karpeles admits "We had weaknesses in our system, and our bitcoins vanished.”&lt;/p&gt;

&lt;h2&gt;
  
  
  Heathrow Terminal 5 Opening
&lt;/h2&gt;

&lt;p&gt;Just before the opening of Heathrow's Terminal 5 in the UK, &lt;a href="http://news.bbc.co.uk/2/hi/uk_news/7314816.stm" rel="noopener noreferrer"&gt;staff tested the brand new baggage handling system&lt;/a&gt; built to carry the vast amounts of luggage checked in each day. Engineers tested the system thoroughly before opening the Terminal to the public with over 12,000 test pieces of luggage. It worked flawlessly on all test runs only to find on the Terminal's opening day the system simply could not cope. It is thought that "real life" scenarios such as removing a bag from the system manually when a passenger had left an important item in their luggage, had caused the entire system to become confused and shut down. &lt;/p&gt;

&lt;p&gt;Over the following 10 days some 42,000 bags failed to travel with their owners, and over 500 flights were cancelled.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Mariner 1 Spacecraft
&lt;/h2&gt;

&lt;p&gt;On a mission to fly-by Venus in 1962, this spacecraft &lt;a href="http://edn.com/electronics-blogs/edn-moments/4418667/Mariner-1-destroyed-due-to-code-error--July-22--1962" rel="noopener noreferrer"&gt;barely made it out of Cape Canaveral&lt;/a&gt; when a software-coding error caused the rocket to veer dangerously off-course, threatening to crash back to earth. Alarmed, NASA engineers on the ground issued a self-destruct command. A review board later determined that the omission of a hyphen in coded computer instructions allowed the transmission of incorrect guidance signals to the spacecraft. The cost for the rocket was reportedly more than $18 million at the time.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Morris Worm
&lt;/h2&gt;

&lt;p&gt;A program developed by a Cornell University student for what he said was &lt;a href="http://en.wikipedia.org/wiki/Robert_Tappan_Morris#The_Morris_worm" rel="noopener noreferrer"&gt;supposed to be a harmless experiment&lt;/a&gt; wound up spreading wildly and crashing thousands of computers in 1988 because of a coding error. It was the first widespread worm attack on the fledgling Internet. The graduate student, Robert Tappan Morris, was convicted of a criminal hacking offense and fined $10,000. Morris's lawyer claimed at the trial that his client's program helped improve computer security.&lt;/p&gt;

&lt;p&gt;Costs for cleaning up the mess may have gone as high as $100 Million. Morris, who interestingly co-founded the startup incubator Y Combinator, is now a professor at the Massachusetts Institute of Technology. A disk with the worm's source code is now housed at the University of Boston.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fiqsv7tq4dxwwxukg0h3e.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fiqsv7tq4dxwwxukg0h3e.png" alt="The Morris Worm" width="780" height="437"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Patriot Missile Error
&lt;/h2&gt;

&lt;p&gt;Sometimes, the cost of a software glitch can't be measured in dollars. In February of 1991, a U.S. Patriot missile defence system in Saudi Arabia, &lt;a href="http://www.ima.umn.edu/~arnold/disasters/patriot.html" rel="noopener noreferrer"&gt;failed to detect an attack on an Army barracks&lt;/a&gt;. A government report found that a software problem led to an inaccurate tracking calculation that became worse the longer the system operated. On the day of the incident, the system had been operating for more than 100 hours, and the inaccuracy was serious enough to cause the system to look in the wrong place for the incoming missile. The attack killed 28 American soldiers. Prior to the incident, Army officials had fixed the software to improve the Patriot systems accuracy. That modified software reached the base the day after the attack.&lt;/p&gt;

&lt;h2&gt;
  
  
  Pentium FDIV bug
&lt;/h2&gt;

&lt;p&gt;When a math professor discovered and publicized a flaw in Intel's popular Pentium processor in 1994, the company's response was to &lt;a href="http://en.wikipedia.org/wiki/Pentium_FDIV_bug" rel="noopener noreferrer"&gt;replace chips upon request to users who could prove they were affected&lt;/a&gt;. Intel calculated that the error caused by the flaw would happen so rarely that the vast majority of users wouldn't notice. Angry customers demanded a replacement for anyone who asked, and Intel agreed. The episode cost Intel $475 million.&lt;/p&gt;

&lt;h2&gt;
  
  
  Knight's $440 Million Error
&lt;/h2&gt;

&lt;p&gt;One of the biggest American market makers for stocks struggled to stay afloat after a &lt;a href="http://www.businessweek.com/articles/2012-08-02/knight-shows-how-to-lose-440-million-in-30-minutes" rel="noopener noreferrer"&gt;software bug triggered a $440 million loss in just 30 minutes.&lt;/a&gt; The firm's shares lost 75 percent in two days after the faulty software flooded the market with unintended trades. Knight’s trading algorithms reportedly started pushing erratic trades through on nearly 150 different stocks, sending them into spasms.&lt;/p&gt;

&lt;h2&gt;
  
  
  Honourable mention: NOAA-19 Satellite
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgcrkzrzgbx9ipbhsnihl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgcrkzrzgbx9ipbhsnihl.png" alt="The NOA-19 satellite" width="777" height="507"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Although not a software error, on September 6, 2003, this &lt;a href="http://www.nasa.gov/pdf/65776main_noaa_np_mishap.pdf" rel="noopener noreferrer"&gt;satellite was badly damaged&lt;/a&gt; while being worked on at the Lockheed Martin Space Systems factory. The satellite fell to the floor as a team was turning it to a horizontal position. An inquiry into the mishap determined that it was caused by a lack of procedural discipline throughout the facility. Turns out that while the turn-over cart used during the procedure was in storage, a technician removed twenty-four bolts securing an adapter plate to it without documenting the action. The team subsequently using the cart to turn the satellite failed to check the bolts, as specified in the procedure, before attempting to move the satellite.&lt;/p&gt;

&lt;p&gt;Repairs to the satellite cost $135 million.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Don't want to get caught out by your software bugs?&lt;/strong&gt; Get automatically notified of your software errors with instant notifications. &lt;strong&gt;&lt;a href="https://raygun.com/book-demo" rel="noopener noreferrer"&gt;Book a demo with an experienced team member&lt;/a&gt;&lt;/strong&gt; or &lt;strong&gt;&lt;a href="https://raygun.com/" rel="noopener noreferrer"&gt;sign up for a free trial.&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>history</category>
      <category>bugs</category>
      <category>list</category>
    </item>
    <item>
      <title>5 Application Performance Monitoring tools for improving user experiences</title>
      <dc:creator>Nick Harley</dc:creator>
      <pubDate>Wed, 22 Nov 2017 20:57:16 +0000</pubDate>
      <link>https://dev.to/raygun/5-application-performance-monitoring-tools-for-improving-user-experiences-1649</link>
      <guid>https://dev.to/raygun/5-application-performance-monitoring-tools-for-improving-user-experiences-1649</guid>
      <description>&lt;p&gt;Not all user experiences are equal. People can have good and bad ones, even when using exactly the same website or mobile application.&lt;/p&gt;

&lt;p&gt;Meanwhile, developers code away and release new features thinking users aren't complaining, and everything is fine (when it's not).&lt;/p&gt;

&lt;p&gt;When was the last time you submitted a report for a software error? Many customers won't take the time to create a support ticket when they experience a slow loading landing page, they'll just close your browser and leave. Fortunately, these wasted interactions are preventable using Application Performance Monitoring tools. In this post we've compared a selection of tools currently on the market for software teams (including our own for comparison).&lt;/p&gt;

&lt;h2&gt;
  
  
  Why you need application performance monitoring tools
&lt;/h2&gt;

&lt;p&gt;Part of the problem is that different operating systems, browsers, connection speeds, devices and locations mean that any number of combinations could be interacting with your application.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--r5Q8mTlu--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://raygun.com/blog/wp-content/uploads/2017/11/browsers.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--r5Q8mTlu--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://raygun.com/blog/wp-content/uploads/2017/11/browsers.png" alt="Top browsers"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Local testing is useful but fails to identify the vast amount of variables that users can encounter when trying to use your app.&lt;/p&gt;

&lt;p&gt;Synthetic testing also comes up short. How do you fake millions of users interacting with your application and get an accurate view of what may happen when you deploy into production?&lt;/p&gt;

&lt;p&gt;Nothing will beat real user interactions with your application in production for the most accurate view. Getting a window into this activity is also a lot easier than you think if you have the right tools.&lt;/p&gt;

&lt;p&gt;Here we take a look at five Application Performance Monitoring tools that will monitor your application in production and beyond.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. New Relic
&lt;/h2&gt;

&lt;p&gt;New Relic is widely used in software engineering teams, particularly for their APM (Application Performance Monitoring) tool, as they've been around for many years now.&lt;/p&gt;

&lt;p&gt;Handy features like the User Interaction Traces allow you to track individual user interactions in your application by providing code-level data traces. You get visual timelines for any activity in your app giving you insight into how your app uses memory, database, and CPU. Interaction traces also provide insight into how your data is optimized across the different threads in your app so you can dive into this code and make sure there are no inefficiencies.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--DIOk14bX--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://raygun.com/blog/wp-content/uploads/2017/11/new_relic.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--DIOk14bX--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://raygun.com/blog/wp-content/uploads/2017/11/new_relic.png" alt="New Relic"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;With a ton of insights into how the elements of our application interact, New Relic helps tune the experience for users and identify potentially disastrous issues before they become problems.&lt;/p&gt;

&lt;p&gt;Though New Relic is not as strong on the error and crash diagnosis as other dedicated crash reporting and error tracking solutions, you can pair it up with a tool like [Raygun][1] to give you the best of both worlds. You'll get APM data plus dedicated error diagnosis and user session tracking.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--2YhUZHbn--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://raygun.com/blog/wp-content/uploads/2017/11/apm.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--2YhUZHbn--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://raygun.com/blog/wp-content/uploads/2017/11/apm.png" alt="New Relic"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;Key features&lt;/strong&gt;
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;App availability monitoring, alerting, and notification&lt;/li&gt;
&lt;li&gt;Production Thread Profiler feature&lt;/li&gt;
&lt;li&gt;Automatic application topology mapping&lt;/li&gt;
&lt;li&gt;Platform plugins&lt;/li&gt;
&lt;li&gt;Histograms and percentiles&lt;/li&gt;
&lt;li&gt;Performance data API access&lt;/li&gt;
&lt;li&gt;Real-User response time, throughput, and breakdown by layer&lt;/li&gt;
&lt;li&gt;JVM performance analyzer&lt;/li&gt;
&lt;li&gt;Error detection, alerting, and analysis&lt;/li&gt;
&lt;li&gt;Database call response time and throughput&lt;/li&gt;
&lt;li&gt;Code-level diagnostics, transaction tracing, and stack trace&lt;/li&gt;
&lt;li&gt;App response time, throughput, and breakdown by component&lt;/li&gt;
&lt;li&gt;Slow SQL and SQL performance details&lt;/li&gt;
&lt;li&gt;Apdex score&lt;/li&gt;
&lt;li&gt;Real-User breakdown by web page, browser, geography&lt;/li&gt;
&lt;li&gt;Custom dashboards&lt;/li&gt;
&lt;li&gt;Track individual business transactions&lt;/li&gt;
&lt;li&gt;X-Ray sessions for business transactions&lt;/li&gt;
&lt;li&gt;Cross-application tracing for distributed apps&lt;/li&gt;
&lt;li&gt;Availability, scalability, deployment reports&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  2. Pingdom
&lt;/h2&gt;

&lt;p&gt;Usually, a particular part of the world is vital to your business. So, if your app is painfully slow for customers located there, you'll need to know about it. For this reason, Real User Monitoring (RUM) tools are essential for identifying performance problems and their environments.&lt;/p&gt;

&lt;p&gt;With Pingdom, you can filter data from specific users for greater insight on the regional performance of your website. By setting your performance levels for what is considered satisfactory, you can ensure your most valuable customers get the site experience they deserve.&lt;/p&gt;

&lt;p&gt;Pingdom also monitors your website for downtime, alerting you right away when a disaster happens, and it goes offline. You can't deliver exceptional software experiences for your users if your website isn't loading at all and Pingdom's uptime monitoring has you covered here.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--92UUM8CL--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://raygun.com/blog/wp-content/uploads/2017/11/pingdom.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--92UUM8CL--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://raygun.com/blog/wp-content/uploads/2017/11/pingdom.jpg" alt="Pingdom"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;Key features&lt;/strong&gt;
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;Monitor websites and servers&lt;/li&gt;
&lt;li&gt;Detailed reports&lt;/li&gt;
&lt;li&gt;Important interactions&lt;/li&gt;
&lt;li&gt;Analyze and come up with a solution to fix it&lt;/li&gt;
&lt;li&gt;Real data from real visitors equals real performance data&lt;/li&gt;
&lt;li&gt;Share your data with others&lt;/li&gt;
&lt;li&gt;Available for free on your mobile devices&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  3. Datadog
&lt;/h2&gt;

&lt;p&gt;Datadog wants you to view all your application performance metrics in one place  — ; and does so well. There are a large number of integrations that allow you to connect various other tools as well as what Datadog provides out of the box.&lt;/p&gt;

&lt;p&gt;Though other performance monitoring tools have collaborative functionality, Datadog puts this at the heart of the product and makes sure teams consider monitoring various parts of their applications together.&lt;/p&gt;

&lt;p&gt;DataDog also charts a vast variety of data on simple-to-use dashboards and is not limited to monitoring data only. Where New Relic builds different agents to monitor various aspects of your application code, DataDog serves this information in one dashboard.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--cDGlgrkw--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://raygun.com/blog/wp-content/uploads/2017/11/datadog.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--cDGlgrkw--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://raygun.com/blog/wp-content/uploads/2017/11/datadog.png" alt="Datadog"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;Key features&lt;/strong&gt;
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;Free trial for an unlimited number of hosts&lt;/li&gt;
&lt;li&gt;120+ turn-key integrations for data aggregation&lt;/li&gt;
&lt;li&gt;Clean graphs of StatsD and other integrations&lt;/li&gt;
&lt;li&gt;Slice and dice graphs and alerts by tags, roles, and more&lt;/li&gt;
&lt;li&gt;Outlier detection for hosts behaving abnormally&lt;/li&gt;
&lt;li&gt;Alert notifications via e-mail and PagerDuty&lt;/li&gt;
&lt;li&gt;Alert on any metric, for a single host or an entire cluster&lt;/li&gt;
&lt;li&gt;Full API access in more than 15 languages&lt;/li&gt;
&lt;li&gt;Overlay metrics and events across disparate sources&lt;/li&gt;
&lt;li&gt;Out-of-the-box and customizable monitoring dashboards&lt;/li&gt;
&lt;li&gt;Easy way to compute rates, ratios, averages, or integrals
&lt;/li&gt;
&lt;li&gt;Sampling intervals of 10 seconds&lt;/li&gt;
&lt;li&gt;Mute all alerts with one click during upgrades and maintenance&lt;/li&gt;
&lt;li&gt;Tools for team collaboration&lt;/li&gt;
&lt;li&gt;Easy-to-use search for hosts, metrics, and tags&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  4. Raygun
&lt;/h2&gt;

&lt;p&gt;The Raygun Platform gives your development team a unique view of how users are experiencing your software applications. Mainly, Raygun focuses on &lt;a href="https://raygun.com/platform/crash-reporting"&gt;error monitoring&lt;/a&gt; alongside identifying performance issues that users encounter with &lt;a href="https://raygun.com/platform/real-user-monitoring"&gt;real user monitoring&lt;/a&gt; and &lt;a href="https://raygun.com/platform/apm"&gt;application performance monitoring&lt;/a&gt;. &lt;/p&gt;

&lt;p&gt;One of the features that saves the most time is smart error grouping, which collects errors underneath a single root cause so you don't get flooded with notifications.&lt;/p&gt;

&lt;p&gt;To help isolate and diagnose performance issues, page performance breakdowns are viewable for every user session to see which specific assets were the cause of a slow loading page or mobile app view.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--vwUZ911U--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://raygun.com/blog/wp-content/uploads/2017/11/rum-interface.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--vwUZ911U--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://raygun.com/blog/wp-content/uploads/2017/11/rum-interface.png" alt="Raygun Real User Monitoring"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Another time-saving feature of Raygun is the ability to identify authenticated users, so you get a view of which specific users encountered problems, and to what extent. This is great for surfacing VIPs or Enterprise customers who have bad user experiences. It works by enabling the developer to search a specific email address to produce a user profile. The unique profile will have a list of every error or crash that user has encountered, which browser they use, and all the devices they use to access your app.&lt;/p&gt;

&lt;p&gt;The deployment tracking feature is also useful for surfacing problems with releases. When you release a new update or version, Raygun can identify issues that were introduced, resolved or fixed in each version.&lt;/p&gt;

&lt;p&gt;Pretty neat for immediately spotting a poor release before they get into the hand of your customers!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--oGWVokIA--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://raygun.com/blog/wp-content/uploads/2017/11/compare.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--oGWVokIA--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://raygun.com/blog/wp-content/uploads/2017/11/compare.png" alt="Real User Monitoring Compare"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Though functionality is &lt;a href="https://raygun.com/blog/real-user-monitoring-google-analytics/"&gt;different to what tools like Google Analytics&lt;/a&gt; provide, Raygun does also incorporate some high-level analytics including which locations are experiencing the fastest and slowest loading times.&lt;/p&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;Key features&lt;/strong&gt;
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;Full-text search and filtering&lt;/li&gt;
&lt;li&gt;Track multiple applications using any language and framework&lt;/li&gt;
&lt;li&gt;Error, crash and performance tracking in one platform&lt;/li&gt;
&lt;li&gt;Unlimited end users&lt;/li&gt;
&lt;li&gt;Discover critical bugs&lt;/li&gt;
&lt;li&gt;Add comments and mention team members on issues&lt;/li&gt;
&lt;li&gt;Version/deployment tracking&lt;/li&gt;
&lt;li&gt;Attach tags, custom data objects, and user data&lt;/li&gt;
&lt;li&gt;JavaScript source maps&lt;/li&gt;
&lt;li&gt;Automatic error reporting&lt;/li&gt;
&lt;li&gt;Seamless integration that takes minutes&lt;/li&gt;
&lt;li&gt;Intelligent error grouping&lt;/li&gt;
&lt;li&gt;Error notifications via email, Slack, HipChat etc&lt;/li&gt;
&lt;li&gt;Full stack traces&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  5. AppDynamics
&lt;/h2&gt;

&lt;p&gt;Firmly placing it's offering towards the Enterprise end of the market, AppDynamics is one of the performance monitoring tools providing APM and End User Monitoring in one solution.&lt;/p&gt;

&lt;p&gt;AppDynamics has instrumentation to handle application data collection if the application is in a supported language. (Java, .NET, PHP, Python, C++  or Node.js.) They also collect data from mobile devices, mobile apps, and browsers.&lt;/p&gt;

&lt;p&gt;Tracing transactions from the user through all the components within the application means AppDynamics can relate all of the infrastructure and log messages back to that single transaction. AppDynamics automatically discovers and names these exchanges enabling you to correlate data and visualize topologies of applications.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--jg-Giu_o--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://raygun.com/blog/wp-content/uploads/2017/11/appdynamics.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--jg-Giu_o--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://raygun.com/blog/wp-content/uploads/2017/11/appdynamics.png" alt="AppDynamics"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;Key features:&lt;/strong&gt;
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;End User Monitoring&lt;/li&gt;
&lt;li&gt;Application health dashboard&lt;/li&gt;
&lt;li&gt;Real-time business transaction monitoring&lt;/li&gt;
&lt;li&gt;Reports and visibility into your application&lt;/li&gt;
&lt;li&gt;Visualize and manage your entire app&lt;/li&gt;
&lt;li&gt;Operational dashboards&lt;/li&gt;
&lt;li&gt;Detect business impact and performance spikes&lt;/li&gt;
&lt;li&gt;Analyze impact of agile releases&lt;/li&gt;
&lt;li&gt;Isolate bottlenecks in your application&lt;/li&gt;
&lt;li&gt;Deep code-level diagnostics in production&lt;/li&gt;
&lt;li&gt;Identify root cause with complete code diagnostics&lt;/li&gt;
&lt;li&gt;Dynamic scaling in the cloud&lt;/li&gt;
&lt;li&gt;Automatic business transaction discovery&lt;/li&gt;
&lt;li&gt;Diagnose the root cause of the problems 90% faster&lt;/li&gt;
&lt;li&gt;Discover and visualize your application topology and business&lt;/li&gt;
&lt;li&gt;Troubleshoot performance and availability issues&lt;/li&gt;
&lt;li&gt;Set up proactive alerting to find problems&lt;/li&gt;
&lt;li&gt;Monitor 24/7 what matters most-your key business transaction&lt;/li&gt;
&lt;li&gt;Troubleshoot bottlenecks 90% faster&lt;/li&gt;
&lt;li&gt;Monitor hybrid environments with Java, .NET, PHP, and Node.js&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Overview
&lt;/h3&gt;

&lt;p&gt;In conclusion, each of the performance monitoring tools above offers something slightly different, but are all built around the same goal  —  seeing what your users are doing when they encounter problems. Usually,  developers have to hunt around for clues as to why their software is not performing as expected. &lt;a href="https://raygun.com/platform/apm"&gt;Application Performance Monitoring&lt;/a&gt; tools present the symptoms of the problem in a clear and visual way to aid in diagnosis and ultimate resolution.&lt;/p&gt;

&lt;p&gt;Ultimately, performance problems are a &lt;a href="https://www.impactbnd.com/blog/user-experience-stats-infographic"&gt;huge contributor to dissatisfactory software experiences&lt;/a&gt;. Therefore, it's down to the software engineering team to be proactive in making sure their applications are performing for users in the way they are intended.&lt;/p&gt;

&lt;p&gt;Teams slow to adopt such visibility stand to lose out to their more innovative competitors that took more care of how users experience their application.&lt;/p&gt;

</description>
      <category>performance</category>
      <category>overview</category>
      <category>monitoring</category>
      <category>webdev</category>
    </item>
  </channel>
</rss>
