2017

article thumbnail

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).

Google 130
article thumbnail

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.

Testing 126
Insiders

Sign Up for our Newsletter

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

article thumbnail

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.

article thumbnail

Take A Node.js With Express API Serverless Using AWS Lambda

The Polyglot Developer

Not too long ago I had written about creating an API with Node.js and Express that accepted image uploads and manipulated the images to be Android compliant before returning them in a ZIP archive.

Lambda 77
article thumbnail

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

article thumbnail

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.

article thumbnail

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.

More Trending

article thumbnail

This spring: High-Performance and Low-Latency C++ (Stockholm) and ACCU (Bristol)

Sutter's Mill

I don’t get to Europe very often apart from ISO C++ standards meetings, but this spring I’ve been able to accept invitations for two English-language European events in the last week of April. If you’re interested in attending, please check out the links, and I look forward to meeting and re-meeting many of you there. Tue-Thu Apr 25-27: High-Performance and Low-Latency C++ (Stockholm).

Latency 62
article thumbnail

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.

article thumbnail

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.

article thumbnail

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.

Google 100
article thumbnail

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.

IoT 109
article thumbnail

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.

article thumbnail

Using A Raspberry Pi For Distributed Object Storage With Minio

The Polyglot Developer

So I was researching object storage and I came across the open source distributed object storage software, Minio. This lightweight software was written with Golang and accomplishes similar things to that of Amazon S3. After all they are both object storage solutions.

Storage 65
article thumbnail

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?

article thumbnail

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.

article thumbnail

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

article thumbnail

Submitting Your First Patch to the Linux kernel and Responding to Feedback

Nick Desaulniers

After working on the Linux kernel for Nexus and Pixel phones for nearly a year, and messing around with the excellent Eudyptula challenge , I finally wanted to take a crack at submitting patches upstream to the Linux kernel. This post is woefully inadequate compared to the existing documentation, which should be preferred. link]. link]. I figure I’d document my workflow, now that I’ve gotten a few patches accepted (and so I can refer to this post rather than my shell history…).

C++ 59
article thumbnail

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.

article thumbnail

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.

article thumbnail

Hudi: Uber Engineering’s Incremental Processing Framework on Apache Hadoop

Uber Engineering

With the evolution of storage formats like Apache Parquet and Apache ORC and query engines like Presto and Apache Impala , the Hadoop ecosystem has the potential to become a general-purpose, unified serving layer for workloads that can tolerate latencies … The post Hudi: Uber Engineering’s Incremental Processing Framework on Apache Hadoop appeared first on Uber Engineering Blog.

article thumbnail

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.

C++ 50
article thumbnail

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.

article thumbnail

A Decade of Dynamo: Powering the next wave of high-performance, internet-scale applications

All Things Distributed

Today marks the 10 year anniversary of Amazon's Dynamo whitepaper , a milestone that made me reflect on how much innovation has occurred in the area of databases over the last decade and a good reminder on why taking a customer obsessed approach to solving hard problems can have lasting impact beyond your original expectations. It all started in 2004 when Amazon was running Oracle's enterprise edition with clustering and replication.

article thumbnail

Authenticate A Golang API With JSON Web Tokens

The Polyglot Developer

Over the past few weeks I’ve been doing a lot of investigation into JSON Web Tokens (JWT) for authentication in APIs. If you’ve been keeping up, you’ll remember I wrote about JWT authentication in a Node.js application as well as building a client facing NativeScript and Angular mobile application that made use of the Node.js backend. This is great, but what if you’re not very fond of JavaScript development?

article thumbnail

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.

article thumbnail

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.

article thumbnail

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

article thumbnail

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.

Speed 70
article thumbnail

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.

article thumbnail

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.

article thumbnail

Re-Architecting Cash and Digital Wallet Payments for India with Uber Engineering

Uber Engineering

Uber is developing a payment platform for India that enables operations teams to more seamlessly collect and distribute cash and digital wallet payments to drivers. In this article, San Francisco-based software engineer Yijun Liu reflects on his experiences working with … The post Re-Architecting Cash and Digital Wallet Payments for India with Uber Engineering appeared first on Uber Engineering Blog.

article thumbnail

Running Clang-Tidy on the Linux Kernel

Nick Desaulniers

Clang-Tidy is a linter from the LLVM ecosystem. I wanted to try to run it on the Linux kernel to see what kind of bugs it would find. The false positive rate seems pretty high (a persistent bane to static analysis), but some patching in both the tooling and the source can likely help bring this rate down. The most straightforward way to invoke Clang-Tidy is with a compilation database, which is a json based file that for each translation unit records. The source file of the translation unit.

C++ 48
article thumbnail

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.

Metrics 66
article thumbnail

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.

Games 94
article thumbnail

Create A Basic Todo List Application With The Vue.js Framework

The Polyglot Developer

When getting started with a new development technology or framework, a basic todo list style application is often in the examples used for learning.

article thumbnail

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