2017

Follow up on the Test Automation Discussion – Bringing in the Performance View

Alex Podelko

There was a rather heated discussion around A Context-Driven Approach to Automation in Testing by James Bach and Michael Bolton (referred below as the article and the authors – other references would be explicit). Here are a couple of places where it got fiercely attacked Reviewing “Context Driven Approach to Automation in Testing” by Chris McMahon. and Open letter to “CDT Test Automation” reviewers as well as in many other different places.

126
126

Expanding the Cloud – An AWS Region is coming to Hong Kong

All Things Distributed

Today, I am very excited to announce our plans to open a new AWS Region in Hong Kong! The new region will give Hong Kong-based businesses, government organizations, non-profits, and global companies with customers in Hong Kong, the ability to leverage AWS technologies from data centers in Hong Kong. The new AWS Asia Pacific (Hong Kong) Region will have three Availability Zones and be ready for customers for use in 2018. Over the past decade, we have seen tremendous growth at AWS.

96
Insiders

Sign Up for our Newsletter

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

PerformanceObserver and Paint Timing API

Jos

In a recent post about Chrome 60 Beta , Google announced the support of the Paint Timing API to get metrics on when your page starts rendering and when the user gets content that can be consumed (more info on the definition of the events below).

130
130

The Problem With Heroes In Software Development

Professor Beekums

Imagine your web application goes down in the middle of the night. It’s 2 AM, but your business is global. You have users in every time zone. They’re angry. They’re unable to purchase things on your website or are canceling their subscriptions. Money is being lost every minute your web application is down. Suddenly, one of your developers is on the case! This developer shows a little anxiety and curses a lot (it is 2 AM after all), but eventually the problems are resolved

77

How to design a RESTful API architecture from a human-language spec

O'Reilly Software

A process to build RESTful APIs that solve users’ needs with simplicity, reliability, and performance. Every piece of software exists to solve a real-world problem. Directly or indirectly. Most web APIs are consumed by client applications running on PCs, mobile devices, etc., which in turn are used by humans. Despite being consumed directly by machines, APIs are made to satisfy the needs of human beings, so designing them should follow a user-centered process, but often it doesn’t.

72

Redis vs Memcached

Software Architecture

Memcached is in-memory key value store whereas Redis is in-memory data structures store. Memcached supports only string data type which is ideal for storing read-only data. Redis supports almost all types of data. Redis can also be used as a messaging system such as pubsub. Memcached cannot be used as a pubsub system. Memcached is more memory efficient than Redis. Redis is more memory efficient only after you use hashes. Memcached is volatile store and Redis is non-volatile.

100
100

Shift-Left Testing in the Enterprise and the Case for Open Source

Abstracta

Why continuous testing and open source are a perfect match I recently visited the offices of CA Technologies (one of Abstracta’s partners) in Santa Clara, where I had the chance to discuss shift-left testing, continuous testing, and why and how to turn to open source. The post Shift-Left Testing in the Enterprise and the Case for Open Source appeared first on Abstracta Software Testing Services.

68

More Trending

Analyzing Software Failure on the NASA Mars Climate Orbiter

cdemi

The Mars Climate Orbiter was a robotic space probe manufactured by Lockheed Martin and launched by NASA’s JPL on December 11, 1998. The purpose of this probe was to study the Mars climate, atmosphere, and surface changes and to act as the communications relay in the Mars Surveyor '98 program for Mars Polar Lander. The total cost of this mission was $327.6 million.

62

Evolving Distributed Tracing at Uber Engineering

Uber Engineering

Distributed tracing is quickly becoming a must-have component in the tools that organizations use to monitor their complex, microservice-based architectures. At Uber Engineering, our open source distributed tracing system Jaeger saw large-scale internal adoption throughout 2016, integrated into hundreds … The post Evolving Distributed Tracing at Uber Engineering appeared first on Uber Engineering Blog.

79

Delete an inline function, save 794 kB

Randon ASCII

In the previous episode of “ Simple Changes to Shrink Chrome ” I discussed how deleting ‘const’ from a few key locations could lead to dramatic size savings, due to a VC++ compiler quirk. In this episode I’ll show how deleting an inline function definition can lead to similar savings. The savings this time are less important as they are mostly in the.BSS segment, but there are also some modest code-size savings, and some interesting lessons.

51

Excited by the Upcoming CMG imPACt Performance and Capacity Conference

Alex Podelko

I am very excited by the upcoming CMG imPACt performance and capacity conference. This year it would be held on November 6-9, 2017 in New Orleans, LA. It is only such vendor-neutral, 4-day, 5-track conference devoted completely to performance, capacity, scalability, and adjacent topics. It is organized by CMG (Computer Measurement Group) , a not-for-profit, worldwide organization of performance and capacity planning professionals.

109
109

Improving Customer Service with Amazon Connect and Amazon Lex

All Things Distributed

Customer service is central to the overall customer experience that all consumers are familiar with when communicating with companies. That experience is often tested when we need to ask for help or have a question to be answered. Unfortunately, we've become accustomed to providing the same information multiple times, waiting on hold, and generally spending a lot more time than we expected to resolve our issue when we call customer service.

93

PerformanceObserver and Paint Timing API

Jos

In a recent post about Chrome 60 Beta , Google announced the support of the Paint Timing API to get metrics on when your page starts rendering and when the user gets content that can be consumed (more info on the definition of the events below). Here I’m going to describe this new API a bit and show you how to use it.

100
100

Software Developers Should Have Sysadmin Experience

Professor Beekums

Being? ?a? software? ?developer? developer? ?and? and? ?being? being? ?a? system? ?administrator? administrator? ?are? are? ?very? very? ?different? different? ?things.? things.? ?Many Many folks? ?lump? lump? ?the? the? ?two? two? ?professions? professions? ?together,? together,? ?but? but? ?the? the? ?skillsets? skillsets? ?do? not? ?overlap? overlap? ?much.? much.? ?Software Software developers? ?write? write? ?code.? code.? ?System? System? ?administrators? administrators? ?maintain?

68

Becoming an accidental architect

O'Reilly Software

How software architects can balance technical proficiencies with an appropriate mastery of communication. One of the demographics Brian and I noticed in the several O'Reilly Software Architecture Conferences we've hosted is the Accidental Architect : someone who makes architecture-level decisions on projects without a formal Architect title. Over time, we're building more material into the conference program to accommodate this common role.

67

Data Consistency in Apache Cassandra — Part 1

Software Architecture

For a quick introduction on what Apache Cassandra is, take a look here. Consistency is a significantly large topic to cover in one part. So I’ll be completing it in 3 parts. This first part defines consistency in general, write consistency, read consistency, consistency levels (CL), immediate, eventual and tunable consistency. Consistency The topic and concept of consistency is very important when you work with a distributed database like Cassandra.

100
100

When is the Best Time to Start Performance Testing?

Abstracta

Waterfall vs Agile Performance Testing When taking into account the performance of existing systems or ones built from scratch, teams have to determine at what point in the development process they are going to benefit most from running performance tests. I’ve spoken about this topic. The post When is the Best Time to Start Performance Testing? appeared first on Abstracta Software Testing Services. Performance Engineering agile Performance Testing SDLC waterfall

57

Why OpenStack is like a Crowdfunded Viking Movie

VoltDB

Everybody ‘gets’ the concept of a Viking Movie. It’s got boats, men in hats with horns, lots of fighting and often a one way trip to Valhalla. So imagine you decide to crowdfund one. Things start off really well, and then turns into a mess, because the people committing resources all want their own distinct versions, but many of the competing memes are hard to reconcile.

50

What is Serverless Architecture?

cdemi

Let's talk about the elephant in the room; Serverless doesn't really mean that there are no Software or Hardware servers. It just means that from Software Development perspective, servers are abstracted and outsourced to another entity, so you don't need to worry about it. Serverless Computing is also known as FaaS (Function as a Service). Serverless is currently a hot topic in many modern architectural patterns. You can imagine Serverless as Microservices broken down further , per function.

56

Apache Cordova And Ionic Framework Apps Are Not Native Mobile Apps

The Polyglot Developer

If you’ve been keeping up with my content since the birth of The Polyglot Developer , you’ll know that I was once a huge advocate of Apache Cordova development using frameworks like Ionic Framework. Having been a web developer and coming from native Android development with Java, cross-platform development using hybrid technologies seemed like a logical next step. Fast-forward to now, I’m no longer using Apache Cordova with Ionic Framework and have gone back to native development.

49

The average web page is 3MB. How much should we care?

Speed Curve

A couple of month ago, someone asked if I'd written a page bloat update recently. The answer was no. I've written a lot of posts about page bloat, starting way back in 2012, when the average page hit 1MB. To my mind, the topic had been well covered. We know that the general trend is that pages are getting bigger at a fairly consistent rate of growth. It didn't feel like there was much new territory to cover.

70

The Role of Recording in Load Testing Tools

Alex Podelko

An interesting discussion started around a very good post Open Source Load Testing Tool Review by Ragnar Lönn. Somehow the latest comment, which I got in my e-mail, didn’t get published. So I decided to copy the discussion as is and publish the comment (and my answer) here. Check the original post (as well as many other great posts) following the link above – but the discussion below is somewhat independent.

100
100

Amazon Makes it Free for Developers to Build and Host Most Alexa Skills Using AWS

All Things Distributed

Amazon today announced a new program that will make it free for tens of thousands of Alexa developers to build and host most Alexa skills using Amazon Web Services (AWS). Many Alexa skill developers currently take advantage of the AWS Free Tier, which offers one million AWS Lambda requests and up to 750 hours of Amazon Elastic Compute Cloud (Amazon EC2) compute time per month at no charge. However, if developers exceed the AWS Free Tier limits, they may incur AWS usage fees each month.

92

Linux Load Averages: Solving the Mystery

Brendan Gregg

Load averages are an industry-critical metric – my company spends millions auto-scaling cloud instances based on them and other metrics – but on Linux there's some mystery around them. Linux load averages track not just runnable tasks, but also tasks in the uninterruptible sleep state. I've never seen an explanation. In this post I'll solve this mystery, and summarize load averages as a reference for everyone trying to interpret them.

66

Death Marches Aren't Worth It

Professor Beekums

Imagine you’re a manager on a large software project. You’ve got about a month to go before the intended deadline and your team appears to need at least 3 more months before being done. What do you do? Many come under the temptation to start a so called “death march”. It essentially means having folks work as many hours as possible: nights, weekends, whenever.

63

How a RESTful API server reacts to requests

O'Reilly Software

Learn how to properly design RESTful APIs communication with clients, accounting for request structure, authentication, and caching. This series of articles shows you how to derive an easy-to-use, robust, efficient API to serve users on the web or on mobile devices. We are using the principles of RESTful architecture over HTTP. In the first piece, we started from a list of specs for a simple bike rental service, defining URLs and the HTTP methods to serve the app.

67

Data Consistency in Apache Cassandra — Part 2

Software Architecture

In part 1 , I introduced the basics of consistency in general, write consistency, read consistency, consistency levels (CL), immediate, eventual and tunable consistency. In this part 2, I will talk about how to achieve immediate and eventual consistency using different write and read consistency levels.

100
100

Today’s New Challenges for Performance Engineers and How to Deal With Them

Abstracta

From the Cloud to CDNs, performance testing just isn’t what it used to be. If you are a performance engineer, you may have noticed that today’s new technologies and the challenges that come with them are disrupting the way in which we used to do. The post Today’s New Challenges for Performance Engineers and How to Deal With Them appeared first on Abstracta Software Testing Services. Agile Testing Performance Engineering CDN CI/CD cloud Gatling HTTP/2 jenkins Taurus TestingUY

56

Can You Afford It?: Real-world Web Performance Budgets

Alex Russell

TL;DR: performance budgets are an essential but under-appreciated part of product success and team health. Most partners we work with are not aware of the real-world operating environment and make inappropriate technology choices as a result. We set a budget in time of <= 5 seconds first-load Time-to-Interactive and <= 2s for subsequent loads. We constrain ourselves to a real-world baseline device + network configuration to measure progress.

65

Byzantine Fault Tolerance

cdemi

In distributed computer systems, Byzantine Fault Tolerance is a characteristic of a system that tolerates the class of failures known as the Byzantine Generals' Problem ; for which there is an unsolvability proof. The Byzantine Generals' Problem. On July 5th 1982, Leslie Lamport (initial LaTeX developer, Microsoft Researcher and winner of the 2013 Turing Award), Robert Shostak and Marshall Pease published a paper named The Byzantine Generals' Problem.

55

The Road to uChat: Building Uber’s Internal Chat Solution

Uber Engineering

Two years ago, Uber’s previous chat application began showing signs that it would not be able to adapt to our growth. There were app crashes, performance hiccups, and outages that crippled our company’s ability to effectively communicate online. With user … The post The Road to uChat: Building Uber’s Internal Chat Solution appeared first on Uber Engineering Blog.

65

Solar Flare For Cloudflare Released On Android And iOS

The Polyglot Developer

I am pleased to announce that Solar Flare for Cloudflare, my first mobile development project in a long time, has been published to the iTunes App Store and Google Play! So what is Solar Flare and who is it designed for? This is a free application for managing data stored in Cloudflare on iOS and Android. If you’re unfamiliar, Cloudflare is an amazing service that acts as a content delivery network (CDN), among other things related to web performance and security.

45

The Difference Between GTmetrix, PageSpeed Insights, Pingdom Tools and WebPagetest

Gtmetrix

If you’ve used any of these tools, you may wonder why the results are sometimes different. The post serves to highlight the key differences in these performance analysis tools. Optimization Explained google lighthouse page optimization PageSpeed PageSpeed Insights Pingdom Pingdom Tools WebPagetest yslow

64

Välkommen till Stockholm – An AWS Region is coming to the Nordics

All Things Distributed

Today, I am very excited to announce our plans to open a new AWS Region in the Nordics! The new region will give Nordic-based businesses, government organisations, non-profits, and global companies with customers in the Nordics, the ability to leverage the AWS technology infrastructure from data centers in Sweden. The new AWS EU (Stockholm) Region will have three Availability Zones and will be ready for customers to use in 2018. Over the past decade, we have seen tremendous growth at AWS.

91

Brilliant Jerks in Engineering

Brendan Gregg

Notice board at Ericsson, Stockholm (pic by DeirdreS ). Many of us have worked with them: the engineering jerk who is brilliant at what they do, but treats others like trash. Some companies have a policy not to hire them (eg, Netflix's "[No Brilliant Jerks]", which was one of the many reasons I joined the company). There's also the "[No A **e Rule]", popularized by a bestselling book of this title, which provides the following [test]: 1.

65

How Do You Know A Developer Is Doing A Good Job?

Professor Beekums

Evaluation of developers is an important topic for anyone involved in software development. Many developers care a great deal about career growth or raises at the very least. Managers need to be able to justify decisions around promotions and raises. Ideally, developers would be rewarded based on the amount of value they provide to a business. It’s a simple concept: you make the company more money, the company pays you more money

62

Handling user-initiated actions in an asynchronous, message-based architecture

O'Reilly Software

A simple framework for implementing message-based, user-initiated CRUD operations. A message-based microservices architecture offers many advantages, making solutions easier to scale and expand with new services. The asynchronous nature of interservice interactions inherent to this architecture, however, poses challenges for user-initiated actions such as create-read-update-delete (CRUD) requests on an object. CRUD requests sent via messages may be lost or arrive out of order.

58