You must really be a sucky tester.
I’m kidding, of course. There may be several explanations as to why an excellent tester like yourself is not finding bugs. Here are four:
- There aren’t any bugs! Duh. If your programmers are good coders and testers, and perhaps writing a very simple Feature in a closely controlled environment, it’s possible there are no bugs.
- There are bugs but the testing mission is not to find them. If the mission is to do performance testing, survey the product, determine under which conditions the product might work, smoke test, etc., it is likely we will not find bugs.
- A rose by any other name… Maybe you are finding bugs in parallel with the coding and they are fixed before ever becoming “bug reports”. In that case, you did find bugs but are not giving yourself credit.
- You are not as excellent as you think. Sorry. Finding bugs might require skills you don’t have. Are you attempting to test data integrity without understanding the domain? Are you testing network transmissions without reading pcaps?
As testers, we often feel expendable when we don’t find bugs. We like to rally around battle cries like:
“If it ain’t broke, you’re not trying hard enough!”
“I don’t make software, I break it!”
“There’s always one more bug.”
But consider this, a skilled tester can do much more than merely find a bug. A skilled tester can also tells us what appears to work, what hasn’t broken in the latest version, what unanticipated changes have occurred in our product, how it might work better, how it might solve additional problems, etc.
And that may be just as important as finding bugs.
At Radware, we recently released one of our most-anticipated reports of the year — our annual State of the Union for Mobile Ecommerce Performance. You can download the report here and read my overview of some of our key findings here. Today, I want to share the poster-style infographic we created to accompany the report. It offers a great snapshot of our key findings, as well as some background info about mobile commerce in general.
As always, please feel free to copy and share these graphics. And if you have any questions about our study and findings, don’t hesitate to ask.Related posts:
- New findings: For top ecommerce sites, mobile web performance is wildly inconsistent
- Mobile stress: Slower web pages lead to increased user frustration and lower engagement
- Six reasons to ditch your m.site in 2014
The post It’s a mobile-first world. Is your website fast enough for mobile shoppers? [INFOGRAPHIC] appeared first on Web Performance Today.
I keep getting questions about how to best analyze memory leaks – especially when they are not always reproducible by the developer on the local workstation. If you never experienced a memory leak issue (or you simply don’t admit it) then read up on some real life examples on our blog: Fixing Memory Leak in […]
The post Hands-On Tutorial: 5 Steps to Identify Java and .NET Memory Leaks appeared first on Dynatrace APM Blog.
I talk a lot (and write a bit) about software teams without separate disciplines for developers and testers (sometimes called “combined engineering” within the walls of MS – a term I find annoying and misleading – details below). For a lot of people, the concept of making software with a single team falls into the “duh – how else would you do it?” category, while many others see it as the end of software quality and end for tester careers.
Done right, I think an engineering team based approach to software development is more efficient, and produces higher quality software than a “traditional” Dev & Test team. Unfortunately, it’s pretty easy to screw it up as well…How to Fail
If you are determined to jump on the fad of software-engineering-without-testers, and don’t care about results, here is your solution!
First, take your entire test team and tell them that they are now all developers (including your leads and managers). If you have any testers that can’t code as well as your developers, now is a great time to fire them and hire more coders.
Now, inform your new “engineering team” that everyone on the team is now responsible for design, implementation, testing, deployment and overall end to end quality of the system. While you’re at it, remind them that because there are now more developers on the team that you expect team velocity to increase accordingly.
Finally, no matter what obstacles you hit, or what the team says about the new culture, don’t tell them anything about why you’ve made the changes. Since you’re in charge of the team, it’s your right to make any decision you want, and it’s one step short of insubordination to question your decisions.A better way?
It’s sad, but I’ve seen pieces (and sadder still, all) of the above section occur on teams before. Let’s look at another way to make (or reinforce) a change that removes a test team (but does not remove testing).Start with Why?
Rather than say, “We’re moving to a discipline-free organization” (the action), start with the cause – e.g. “We want to increase the efficiency of our team and improve our ability to get new functionality in customers hands. In order to do this, we are going to move to a discipline-free organizational structure. …etc.” I would probably even preface this with some data or anecdotes, but the point is that starting with a compelling reason for “why” has a much better chance of working than a proclamation in isolation (and this approach works for almost any other organizational change as well).Build your Team
The core output (and core activity) of an engineering team is working software. To this end, this is where most (but not necessarily all) of the team should focus. The core role of a software engineer is to create working software (at a minimum, this means design, implementation, unit, and functional tests). IMO, the ability to this is the minimum bar for a software engineer.
But…if you read my blog, you’re probably someone who knows that there’s a lot more to quality software than writing and testing code. I think great software starts with core software engineering, but that alone isn’t enough. Good software teams have learned the value of using generalizing specialists to help fill the gap between core-software engineering, and quality products.
Core engineering (aka what-developers-do) covers the a large part of Great Software. The sizes of circles may be wrong (or wrong for some teams); this is just a model.
Nitpicker note: sizes of circles may be wrong (or wrong for some teams) – this is a model.
Engineering teams still have a huge need for people who are able to validate and explore the system as a whole (or in large chunks). These activities remain critically important to quality software, and they can’t be ignored. These activities (in the outer loop of my model) improve and enhance “core software engineering”. In fact, an engineering team could be structured with an separate team to focus on the types of activities in the outer loop.Generalizing Specialists (and Specializing Generalists)
I see an advantage, however, in engineering teams that include both circles above. It’s important to note that some folks who generally work in the “Core Engineering” circle will frequently (or regularly) take on specialist roles that live in the outer loop. A lot of people seem to think that discipline-free software teams, everyone can do everything – which is, of course, flat out wrong. Instead, it’s critical that a good software team has (generalizing) specialists who can look critically at quality areas that span the product.
There also will/must be folks who live entirely in the outer ring, and there will be people like me who typically live in the outer ring, but dive into product code as needed to address code problems or feature gaps related to the activities in the outer loop. Leaders need to support (and encourage – and celebrate) this behavior…but with this much interaction between the outer loop of testing and investigation, and the inner loop of creating quality features, it’s more efficient to have everyone on one team. I’ve seen walls between disciplines get in the way of efficient engineering (rough estimate) a million times in my career. Separating the team working on the outer loop from core engineering can create another opportunity for team walls to interfere with engineering. To be fair, if you’re on a team where team walls don’t get in the way, and you’re making great software with separate teams, then there’s no reason to change. For some (many?) of us, the efficiency gains we can get from this approach to software development are worth the effort (along with any short-term worries from the team).Doing it Right
It’s really easy for a team to make the decision to move to one-engineering-team for the wrong reasons, and it’s even easier to make the move in a way that will hurt the team (and the product). But after working mostly the wrong way for nearly 20 years, I’m completely sold on making software with a single software team. But making this sort of change work effectively is a big challenge.
But it’s a challenge that many of us have faced already, and something everyone worried about making good software has to keep their eye on. I encourage anyone reading this to think about what this sort of change means for you.(potentially) related posts:
The eighth GTAC commences on Tuesday at the Google Kirkland office. You can find the latest details on the conference at our site, including speaker profiles.
If you are watching remotely, we'll soon be updating the live stream page with the stream link and a Google Moderator link for remote Q&A.
If you have been selected to attend or speak, be sure to note the updated parking information. Google visitors will use off-site parking and shuttles.
We look forward to connecting with the greater testing community and sharing new advances and ideas.
In my last post I introduced the async and await keywords and I showed you what the C# compiler generates from an async method. In this post we will see what the PurePath looks like when we use an async API in our code. Feel free to follow my steps by downloading the free trial […]
The post The Performance Impact of Async – Looking at the PurePath appeared first on Compuware APM Blog.
Mobile has never been more crucial to business success than it is right now.
Chances are, you’ve been exposed to some version of this statement so many times that you’re probably (understandably) immune to it. But it bears repeating:
Mobile has never been more crucial to business success than it is right now. Brace yourself for a barrage of stats that prove it:
- One out of four people on our planet own a smartphone.
- More than half of all time spent on retail sites takes place on a mobile device.
- The average online shopper makes 6.2 visits to a company’s website, using 2.6 devices, before they buy.
- Just a one-second delay in mobile load times can hurt conversions and cart size by up to 3.5%.
- Slow pages also drive mobile shoppers to the competition, with 30% of dissatisfied shoppers saying they will never return.
- 65% of consumers say that a poor online experience has a direct impact on their opinion of a brand.
This is why sites need to perform quickly and consistently across all platforms. This is why it’s critical for site owners to have visibility into the real-world mobile performance of their sites. And this is why, every year at Radware, we study the mobile performance of the top 100 ecommerce sites to see how they measure up to user expectations.
Our latest report — the 2014 State of the Union: Mobile Page Speed and Web Performance — is now available for download. Today, I want to share some of our key findings and takeaways.Background
Measuring mobile performance is extremely challenging — much more so than measuring desktop performance. Here’s how we tackled mobile performance measurement for this research:
In July and August, we engaged in a four-week study of the top 100 retail websites, as ranked by Alexa.com. Using an online tool called WebWait, which measures load times in real time, we subjected the home page of each site – both the full-site version and the m-dot version – to ten page speed tests each, and we used the median numbers for each set of tests. We tested on a variety of Android and iOS smartphones and tablets (using their native browsers) over 4G and Wifi networks. If this sounds incredibly laborious, that’s because it was.
We also looked some other numbers, such as which sites serve m-dot and t-dot versions of their pages to smartphones and tablets.
The goal of this research was to gain an understanding of how the world’s most popular ecommerce sites perform for real users in real-world settings, outside of development and testing environments.
The results were eye-opening. We found that performance on mobile devices is wildly inconsistent across devices and platforms.Both m-dot sites and full sites fail to meet user expectations.
We found that — regardless of the type of site, device, or network — the median site in each batch of tests failed to meet user expectations:
- Among the top 100 retail websites, the median m-dot page took 4.8 seconds to load on the iPhone 5s, and 7 seconds to load on the iPhone 4s (over LTE).
- The median full-site page performed much worse than the median m-dot page, taking 11 seconds to load on the iPhone 5s and 15.2 seconds on the iPhone 4s.
- Only 2% of full-site pages loaded in the ideal time of 4 seconds or less on the iPhone 4s.
- 15% of full-site pages loaded in fewer than 4 seconds on the iPhone 5s.
Median load times also varied across tablets, ranging from 5.7 seconds for the Galaxy Note to 8.1 seconds for the Nexus 7.
IMPORTANT: These tests are most emphatically not intended to be taken as performance reviews of the devices we tested on. Rather, they demonstrate how broadly performance can vary across mobile devices, with the slowest device performing three times more slowly than the fastest device. Site owners need to be aware that this degree of variance exists among their users so that they can prioritize performance testing their pages across a range of devices and connection types.As device fragmentation continues to accelerate, website fragmentation also continues.
When I see graphics like this one, via OpenSignal, which illustrates the current state of Android fragmentation, I hurt for site owners and developers.
According to OpenSignal’s data, the number of distinct devices that have downloaded their app grew by almost 60% in just one year — from 11,868 in 2013 to a staggering 18,769 in August 2014. This graphic beautifully (if painfully) illustrates the massive challenge faced by developers who are tasked with optimizing sites and apps across platforms and devices.
In looking at the top 100 retailers, we found that most are making a brave attempt to serve optimized versions of their sites to the different high-level device categories:
- 81% of the top 100 retailers automatically serve an m-dot version of their site to smartphones.
- Up to 8% serve a t-dot (tablet-optimized) version of their site to tablets.
But among those retailers serving a t-dot version of their site to tablets, the success rate really depends on which tablet you look at. We found that when it comes to delivering the right site to the right device, results are all over the map. Yes, between 6-8% of sites serve t-dot pages to the iPad/iPadMini, but as few as 1% of the top 100 sites served the t-dot site to Android tablets.
What’s worse is the fact that many sites are still serving their m-dot pages to tablets — particularly Android tablets — despite the fact that tablet users expect a desktop-like experience. We found that 5-6% of sites served m-dot pages to the iPad and the iPad Mini, while up to 30% of sites served m-dot pages to Android devices.Conclusion and takeaways
It’s impossible to emphasize enough the immediacy and urgency of addressing mobile performance. Users expect pages to be at least as fast on their smartphones and tablets as they are on the desktop, and they don’t care about the many factors that limit mobile performance. They don’t care that mobile devices don’t have the processor power to deliver a speedy desktop experience. They don’t care that the browser cache is relatively tiny compared to desktop. And they don’t care about slower networks and greater latency. As far as most mobile users are concerned, that’s our problem to fix, not theirs.
Responsive web design (RWD) further complicates the challenge. A growing number of site owners recognize that maintaining multiple websites is not a sustainable solution. In an effort to create a consistent user experience across platforms, many sites are turning to responsive design. However, responsive websites are complex, and that complexity can come with a serious performance price tag. While it’s quite possible to design a website that is both responsive and fast, these two attributes don’t automatically go hand in hand. Creating a fast responsive site requires a deep understanding and knowledge of both responsive design and front-end performance optimization.
Here’s what I hope people will take away from this report:
- Most sites don’t currently deliver a satisfactory experience on mobile devices.
- There’s no magic bullet for mobile performance.
- Maintaining separate desktop, m-dot, and t-dot sites may not be a sustainable practice in the long term.
- Don’t serve your m-dot site to tablets — that means any tablets, not just iPads.
- Test your site — and test it often — on a variety of devices, browsers, and connection speeds.
The post New findings: For top ecommerce sites, mobile web performance is wildly inconsistent appeared first on Web Performance Today.
Debugging web apps across multiple platforms and devices can be extremely difficult. Fortunately there are a few cutting edge tools that can ease the pain. Follow along as Jonathan demonstrates how - and when - to use the latest and greatest tools and techniques to debug the mobile web.About Jonathan Stark
Jonathan Stark is a mobile strategy consultant who helps CEOs transition their business to mobile.
Building compelling web experiences that work across a wide range of devices without descending to "lowest common denominator" design can be a challenge. Follow along with Jonathan Stark as he uses progressive enhancement, responsive design, and cutting edge CSS3 techniques to build a sophisticated user interface that will run virtually everywhere.About Jonathan Stark
Jonathan Stark is a mobile strategy consultant who helps CEOs transition their business to mobile.
Is your eCommerce solution ready for the cloud? Learn how to incrementally adopt cloud computing (specifically public Infrastructure-as-a-Service and Platform-as-a-Service) and to marshal as much capacity as needed to handle peak holiday or special-event traffic.
Advances in the cloud over the past few years now make it possible to run an enterprise-class eCommerce platform out of a cloud. We'll help architects leverage these advances by covering:
- Cloud service models (IaaS, PaaS, Software-as-a-Service) and deployment models (public, hybrid, private)
- The impact of omnichannel retailing on platform architecture and deployment architecture
- Building an auto-scaling solution that can quickly add or subtract hardware in response to real-time traffic
- Re-applying what you already know about security to the cloud
- Running a single eCommerce platform from multiple data centers, including several forms of multi-master
- Creating a hybrid solution or deploy your entire platform in the cloud
- Application and deployment architecture for "cloud native" through legacy eCommerce platforms
- Using a SaaS for eCommerce, including content delivery networks and global site Load balancing services
Kelly Goetsch is Oracle's leading expert on large-scale eCommerce deployments, having architected, implemented and advised many of the largest eCommerce properties in the world. Kelly is director of product management in Oracle's Cloud Application Foundation group, where he is at the intersection of Oracle Commerce and the larger portfolio of Oracle products that power eCommerce. Kelly has written eight white papers on various topics related to large-scale eCommerce and regularly speaks at industry events. He has filed for three patents and hold a bachelor's degree in Entrepreneurship and a master's degree in Information Systems Management, both from the University of Illinois at Chicago.Kelly Goetsch 2014-05-30T01:23:08-08:12
Congratulations! You are the proud owner of the Ultimate Arduino Microcontroller Pack. But now what? In this webcast, we will highlight several Arduino projects you can create using this kit and learn about electronics while building fun devices. The projects are examples from the book Make: Basic Arduino Projects.About Don Wilcher
Don Wilcher is a passionate teacher of electronics technology and an electrical engineer with 26 years of experience. He's worked on industrial robotic systems, automotive electronic modules, systems, and embedded wireless controls for small consumer appliances. While at Chrysler Corporation, Don developed a weekend enrichment pre-engineering program for inner city kids. He is the Department Chair for the School of Electronics Technology of ITT Technical Institute at the Madison, AL campus.Don Wilcher 2014-05-29T12:22:24-08:13
OpenBSD is frequently billed as a high-security operating system. That's true, but security isn't the OpenBSD Project's main goal. This webcast will introduce systems administrators to OpenBSD, explain the project's mission, and discuss the features and benefits.About Michael W. Lucas
Michael W. Lucas is a systems and network engineer who keeps getting stuck with problems nobody else wants to touch. He's the author of critically acclaimed books, including Absolute OpenBSD, SSH Mastery, Absolute FreeBSD, Sudo Mastery, PGP & GPG, and Cisco Routers for the Desperate.Michael W. Lucas 2014-05-27T16:21:39-08:14
Wearable devices already monitor and track our activities and anticipate and react in a variety of ways and situations. In some cases these devices are even context-aware.
In this webcast, we'll examine:
- What's enabling this explosion in wearables?
- How might business processes, entertainment, healthcare and other industries leverage these new devices?
- How will insights and information gleaned from wearables impact our future interactions as data on biometrics, activities, preferences, and location become commonly collected and made available for analysis?
Joe Burton serves as Chief Technology Officer, responsible for setting and driving Plantronics' technology direction and leading the company's global engineering teams and programs.
Prior to joining Plantronics, Mr. Burton has held several key executive, engineering leadership and architecture-level positions at Polycom, Cisco, and Active Voice. During Burton's 10 year career with Cisco, he served as Cisco's Chief Technology Officer for Unified Communications, encompassing call management, IP phones, contact center, conferencing, unified messaging, unified communications applications, and advanced technologies and products.
Mr. Burton was most recently EVP, CTO, Chief Strategy Officer, and General Manager for Service Provider at Polycom where he led Polycom's long-term strategic agenda and next-generation focus areas.
He is the author of several communications patents and holds a Bachelor of Science degree in Computer Engineering from Reynolds College in New York.
You may also be interested in:Joe Burton 2014-05-16T12:23:56-08:15
Webcast: Real-World Responsive Design: A Behind-The-Scenes Look at the Entertainment Weekly Redesign - May 15 2014
Responsive web design techniques help designers and developers cope with an incredibly fragmented computing landscape. But tools are just one part of the story. RWD requires a new mindset, process, and workflow for everyone involved with the project, including client stakeholders (yikes!). Join Jonathan for a behind-the-scenes look at what did - and didn't - work on the responsive redesign of the Entertainment Weekly mobile site.About Jonathan Stark
Jonathan Stark is a mobile strategy consultant who helps CEOs transition their business to mobile.
Flask is a small and easy-to-use, yet fully featured open source web framework written in Python. It is considered a micro-framework, but don't let the "micro" part fool you; Flask can do everything the others can do, many times in a simpler, leaner way. Flask's code is concise and well written; you can easily read and understand it. In this webcast, we'll provide an overview of Flask, full of examples that you can download and try. The topics to be discussed are:
- Anatomy of a Flask application
- Web forms
- Project structure for large applications
Miguel Grinberg is a Senior Staff Software Engineer at Harmonic, Inc., where he leads a team of engineers that produces video software for the broadcast industry. He has a blog at blog.miguelgrinberg.com, where he writes about a variety of topics, including web development, Python, robotics, photography, and the occasional movie review. Miguel authored the epic 18-part Flask Mega-Tutorial series and is currently writing a book on this framework to be published by O'Reilly Media in 2014. He lives in Portland, Oregon with his wife, four kids, two dogs, and cat. Follow @miguelgrinberg on Twitter.Miguel Grinberg 2014-05-13T11:56:14-08:17
While architecting and installing OpenStack clouds often draw the most attention from developers, technologists, or system administrators charged with building public and private cloud infrastructures, many people overlook the larger and far more important task of managing the cloud. As OpenStack has matured, tools and processes have improved immeasurably. This webcast will introduce advances in OpenStack cloud management, as well as reintroduce some old standbys.
You'll learn about:
- Tools that OpenStack cloud operators are using to manage their cloud
- Gathering important data from your cloud
- The most important metrics to monitor in your cloud
- The impact of the Icehouse release on your management strategy
Join us for practical advice derived from real world experience in operating both public and private OpenStack clouds.About Ken Pepple
Ken Pepple is the co-founder and Chief Technology Officer of Solinea, which helps enterprises and service providers build cloud infrastructure. Prior to founding Solinea, Ken was Vice President for Cloud Technology Partner's OpenStack Practice. Before that, he led the creation of Internap's OpenStack based public cloud services while serving as their Director of Cloud Development. In the distant past, he also served as Chief Technologist for Sun Microsystem's Server Line of Business as well as other Director level roles at Sun and Oracle. Ken is also an OpenStack code and documentation contributor, blogger and frequent book author. His most recent book is Deploying OpenStack for O'Reilly Media. You can read his shorter form work on his blog (http://ken.pepple.info).Ken Pepple 2014-05-06T16:56:41-08:18
As more of the physical world is becoming connected, new and lucrative business models are forming around industrial applications that manage large-scale infrastructure in fields like energy production and transportation.
Designers helping to shape the connected world, need to be mindful of human motivation and raise questions about connectivity's impact on the individual, the community, and how we live.
In this webcast talk presented by Michael Delgaudio, we'll focus on why the human role is crucial in the Age of Connected Machines. Actionable methodologies for approaching large scale connected design problems are discussed.About Michael DelGaudio
As Creative Director at frog, Michael leads teams to produce products and services customers love. Placing high value on design research and the user's point of view, Michael approaches business problems through the lens of the customer which enables him to craft physical and digital, experiences and interfaces. Michael focuses on the creative structure within his methodology and approach which enable the design teams he leads to create world-class products and services.
You may also be interested in:Michael DelGaudio 2014-05-01T09:56:12-08:19
Making your website faster is key to improving the user experience. This webcast focuses on the basics that can delight—or disappoint—your users: including usability, performance, reliability, availability and accessibility. It will help you get up and running quickly, so you can identify problems and (equally important) opportunities for improvement. You'll learn the 7 basic principles of web performance and get started with some basic testing and tools.About Daniel Austin
Daniel Austin is Principal Architect and a member of the technical staff at Paypal, where he focuses on large-scale payment systems. In a past life, he's worked for organizations such as CERN, NASA, W3C, Sun, and Yahoo! in pursuit of making the Internet faster and smarter. He lives in Northern California.O'Reilly Media, Inc. 2014-04-30T14:51:39-08:20