2017

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 140
article thumbnail

Linux Tips and Tricks: From Picking a Distro to Using the Command Line

DZone

Linux is a vast ecosystem of operating systems. Unlike Windows or macOs variants, there are loads of Linux distributions (distros) available. But these distros often differ greatly. Whether you're just getting started with Linux, or are a seasoned pro, here are the tips and tricks you need to know. Picking the Right Linux Operating System Whereas Windows and macOS offer fairly few choices for their operating system (OS) options, Linux presents a ton of flavors.

Insiders

Sign Up for our Newsletter

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

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. Image taken from the Chrome 60 blog post , which first appeared in “Web Performance: Leveraging the Metrics that Most Affect User Experience” at Google I/O 2017.

Google 130
article thumbnail

As-Salaam-Alaikum: The cloud arrives in the Middle East!

All Things Distributed

Today, I am excited to announce plans for Amazon Web Services (AWS) to bring an infrastructure Region to the Middle East! This move is another milestone in our global expansion and mission to bring flexible, scalable, and secure cloud computing infrastructure to organizations around the world. Based in Bahrain, this will be the first Region for AWS in the Middle East.

Cloud 117
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

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.

article thumbnail

The Fallacies of Distributed Computing (Applied to Front-End Performance)

CSS Wizardry

What can front-end and performance engineers learn from the Fallacies of Distributed Computing?

More Trending

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.

Traffic 100
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

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. This article was titled, Create an Android Launcher Icon Generator RESTful API with Node.js, and Jimp , and it was a great example of creating APIs that that did most of their work in memory.

Lambda 90
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 113
article thumbnail

JBoss Data Virtualization on OpenShift (Part 4): Bringing Data Inside the PaaS

DZone

Welcome to part 4 of Red Hat JBoss Data Virtualization (JDV) running on OpenShift. JDV is a lean, virtual data integration solution that unlocks trapped data and delivers it as easily consumable, unified, and actionable information. JDV makes data spread across physically diverse systems such as multiple databases, XML files, and Hadoop systems appear as a set of tables in a local database.

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. Image taken from the Chrome 60 blog post , which first appeared in “Web Performance: Leveraging the Metrics that Most Affect User Experience” at Google I/O 2017 Up until now we hav

Google 100
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

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

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. Why? 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.

Latency 111
article thumbnail

Ten Years Old

CSS Wizardry

csswizardry.com turns ten today!

100
100
article thumbnail

Software Developers Should Have Sysadmin Experience

Professor Beekums

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

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

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.

Metrics 85
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

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

Improving App Performance With Isolated Component Testing

DZone

Today’s composite applications can have hundreds of failure points (memory leaks, socket exceptions, open connections) all compounded when third-party services and APIs are thrown into the mix — not to mention the added complexity of when the request has to make it through the spaghetti mess of a complex ESB to a legacy system or database in the back end that is never available for testing.

Testing 130
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.

article thumbnail

AI for everyone - How companies can benefit from the advance of machine learning

All Things Distributed

This article titled " Wie Unternehmen vom Vormarsch des maschinellen Lernens profitieren können " appeared in German last week in the "Digitaliserung" column of Wirtschaftwoche. When a technology has its breakthrough, can often only be determined in hindsight. In the case of artificial intelligence (AI) and machine learning (ML), this is different. ML is that part of AI that describes rules and recognizes patterns from large amounts of data in order to predict future data.

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

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.

article thumbnail

Relative Requirements

CSS Wizardry

Define the relative importance of project traits in order to make development smoother

article thumbnail

Solaris to Linux Migration 2017

Brendan Gregg

Many people have contacted me recently about switching from Solaris (or illumos) to Linux, especially since most of the Solaris kernel team were let go this year (including my former colleagues, I'm sorry to hear). This includes many great engineers who I'm sure will excel in whatever they choose to work on next. They have been asking me about Linux because I've worked for years on each platform: Solaris, illumos, and Linux, in all cases full time and as a subject matter expert.

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. Source: [link] Cassandra has tunable consistency which means that not only on the database level, you can tune the immediate and eventual consistency of your data per query/operation by setting t

Tuning 100
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

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.

Servers 83
article thumbnail

I've joined SpeedCurve! Here's why

Speed Curve

TL;DR. If Mark and Steve invited you to work with them, what would you say? Exactly. Long version. Okay, I have to elaborate a bit more about why I’m ridiculously excited about working with Mark and Steve. My first foray into the performance space was at the Velocity Conference in 2009. If you had told me then that someday I’d be working with that tall guy rocking the main stage, I would’ve thanked you for the kind words… while secretly thinking you were nuts.

Metrics 75
article thumbnail

Make Windows Green Again (Part 4)

DZone

While we discovered in part three of this blog series how to run graphical openSUSE Linux programs within WSL, a lot of readers, including myself, started exploring this new opportunity. Given the feedback we received (either through comments or direct emails/chats), it seems that many of us (and by that, I have to count myself in) hit a road block at some point.

article thumbnail

GCC vs LLVM Q3 2017: Active Developer Counts

Nick Desaulniers

A blog post from a few years ago that really stuck with me was Martin Olsson’s Browser Engines 2015: Commit Rates and Active Developer Counts , where he shows information about the number of authors and commits to popular web browsers. The graphs and analysis had interesting takeaways like showing the obvious split in blink and webkit, and relative number of contributors of the projects.

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.

Internet 110
article thumbnail

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.