Articles

Two people participating in a code review, photo by Alvaro Reyes Participating in Code Reviews as a Tester

Code reviews are a popular method of catching bugs early in development through peer-reviewing someone’s code. But perhaps more important than catching bugs, these reviews also serve as a chance to see how something is built and have a conversation about it. Because testers question software differently from developers, it’s important that we participate in this knowledge-sharing practice.

Chris Kenst
Mushroom cloud explosion How to Ruin Your Behavior-Driven Development Test Scripts

We get it: Writing good, reusable, effective test scripts is hard. It consumes a lot of time and energy, and you have to learn too much about automated testing and test implementation. Just give up and produce some complicated, messy, and ineffective scripts! But why waste time figuring out how to do that on your own? Here are the best practices to ruin your BDD test scripts completely.

László Szegedi
Sign reading "Duh!" When the Code Is Too Obvious to Check

How many times does something seem too obvious to check? Most of the time this normal human response is a handy shortcut. Your brain tries to save you time—but you can’t always trust it. If your code malfunctions, each of those "too obvious to check" thoughts will bias your thinking about what caused the malfunction. We have to commit up front, before our thinking crystalizes, that the code will have to prove to us that it is correct.

Steve Poling
Car steering wheel photo by Nicolai Berntsen A Case for Test-First Development

You may feel you don't have time to write unit tests, but you really don't have time not to. Steve Poling makes the case that writing tests first not only will yield better code, but will help you get that code working right sooner. Here's how using a test-first approach changes your thinking about coding, lets you see mistakes immediately, and helps you create more testable code.

Steve Poling

Better Software Magazine Articles

Do You Really Want to Be a Manager Do You Really Want to Be a Manager?

The majority of managers are promoted due to their software development expertise. But becoming a successful manager requires a drastic change of focus. There is a set of expectations to consider before making that leap to the “dark side.”

Ron Lichty MW Mantle
Playing Games to Improve Software

You may not have heard about gamification, but instructional designers are now using game principles to help with retention of learned material in many forms of training. Ross Smith and Rajini Padmanaban believe that developers' UX and app design can benefit from gamification.

Ross Smith Rajini Padmanaban
When Software Smells Bad

Most software needs to be "maintainable" and have high "internal quality." But what does that mean in practical terms? Code smells form a vocabulary for discussing code quality and how well suited code might be to change. The smells also provide good indications as to what to refactor and how.

Leveraging A Learning Culture

Mistakes happen. It's how you respond to them that matters. Teams might react to a bug with panic and blame, leading to a quickly hacked fix and possibly more issues. Taking time to investigate and learn leverages problems into process and practice improvement and a higher quality product.

Lisa Crispin

Interviews

Mike Faulise Why Testers Are Starting to Look More like Developers: An Interview with Mike Faulise
Video

In this interview, Mike Faulise, the founder and managing partner at tap|QA, explains how organizations are trying to move toward continuous integration and taking in automation. Consequently, he says, testers are cultivating more technical skill sets and starting to look more like developers.

Jennifer Bonine
Swim Along with the Testing Wave: An Interview with Dawn Haynes
Video

In this interview, Dawn Haynes, CEO, testing coach, and consultant for PerfTestPlus, explains how testers can expand their skills to move along with the development wave and collaborate with their programmer colleagues. She also talks about her problem-solving workshop at the Women Who Test summit.

Jennifer Bonine
Stacy Kirk A Comprehensive Full Stack Testing Strategy with Node.js: An Interview with Stacy Kirk
Video

In this interview, software agile coach Stacy Kirk explains the reasons for the increasing popularity of Node.js, what full stack testing means, and why Node.js can make it easier. Stacy discusses the best testing practices, processes, and modules to develop Node.js applications.

Jennifer Bonine
Melissa Benua discusses continuous integration Employ Continuous Integration Processes to Make Your Code Work: An Interview with Melissa Benua
Video

In this interview, Melissa Benua, senior backend engineer for PlayFab, explains the new way of life that continuous integration brings. She imparts practical advice for creating builds and running automation on the fly without spending hundreds of hours or thousands of dollars.

Jennifer Bonine

Conference Presentations

Mobile Dev Test Threads, Queues, and More: Async Programming in iOS
Slideshow

To keep your iOS app running butter-smooth at 60 frames per second, Apple recommends doing as many tasks as possible asynchronously or “off the main thread.” Joe Keeley introduces you to some basic concepts of asynchronous programming in iOS. He discusses what threads and queues are, how...

Joe Keeley
Program Management: Collaborating across the Organization
Slideshow

To be most effective when managing a large program, the component projects should limit their batch size, create networks of people, and report status in a way that works for the entire program. For those of you who are not quite ready for agile, Johanna Rothman explains how to use staged...

Johanna Rothman, Rothman Consulting Group Inc.
When Code Cries: Listening to Code
Slideshow

What is the best way to learn a new programming language or improve coding skills with the language you already use? Cory Foy has developed a new method for learning—and teaching—new programming languages and improving programmer expertise on their current languages. 

Cory Foy, Cory Foy, LLC
Reducing the Cost of Software Testing

The demand to deliver more software in less time is increasing. Give in to the pressure without thinking, and you end up facing burnout, stress, business risk, and, most likely, even more demands. Refuse, fight the good fight, and it is likely the business will replace you with someone else.

Matthew Heusser, Excelon Development

StickyMinds is a TechWell community.

Through conferences, training, consulting, and online resources, TechWell helps you develop and deliver great software every day.