Author Archives: John Ruberto

Dragons, Ponies, and Unicorns: Testing TESS

On Monday, April 16th, NASA will launch TESS – Transiting Exoplanet Survey Satellite, which will search for nearby planets over the next 2 years.  This is a follow on to the Kepler mission, and pre-cursor to the James Webb Space Telescope.  What a time to be alive.   You can follow the launch at NASA’s live site.

The TESS Spacecraft. Image Credit: NASA

The TESS Spacecraft. Image Credit: NASA

One interesting tidbit, the TESS orbit is optimized to be able to observe the stars, and its not a near-Earth orbit. This means that the team needs to get it right, there won’t be an ability to fix the satellite after launch, like we did with Hubble.  This means the team needs to get it right the first time.

MIT has produced a short (10 minutes) documentary about the making of TESS.  This shows several interesting tidbits about testing:

TESS has 4 cameras, each with a test setup named after dragons.  They used a simulated star field for each.  For the cameras to operate correctly, each environment is in a vacuum chamber cooled down to -75C, and the ambient light is blue to minimize light pollution.

Testing the optics required the a team at the University of Geneva to invent “the most stable light source on earth”. (link) This light source had to be 10x more stable than the camera sensors.

Integration testing shows how the cameras are each mated to an assembly which holds all 4 cameras, then mounted to the main spacecraft.

The test team is predominately women, who are obviously passionate about this mission.

These videos, and the TESS program, are a great distraction from the other things happening in the news.  We wish them luck.

 

 

New venture for me…

After 32 years working for some of the top corporations, I’ve decided to go on my own. I’m my own boss.

Blessed in life, with a supportive family, and numerous people that I’ve worked with and admired, I’m going to try my hand at making a living by doing just my favorite parts of my job. These include:

  • Coaching engineers and managers to help them become great leaders at the Software Leadership Academy
  • Helping organizations apply Quality Engineering practices
  • Transform test organizations into Quality Engineering Organizations
  • Bring customer focus into the software development life-cycle with Customer-Driven Quality
  • Accelerate testing by reducing or eliminating long regression cycles and moving to a continuous delivery model
  • Help investors understand the developer productivity and testing tool/service marketplace.

I’ll be sharing more about my plans in the coming weeks, including a product launch for the online leadership course. You can watch progress at http://www.swleadership.com

Wish me luck!

John

Testing Practice – Find my Bugs

Some of my favorite experiences with learning about testing is is do exercises where there are known bugs.  Somehow, knowing that the bugs exist, and my challenge is to find them, is energizing.  That is probably a good mindset to have when approaching testing in the first place. There are always bugs…

I created a couple of modules, called bugPractice, with intentional bugs for you to practice your skills.  There are likely more bugs than what I purposely put in, maybe you will find those as well.

The first module is a classic testing interview question, test a palindrome checker.  The function is called is_palindrome and it takes a single string.  It returns True if that string is a palindrome. Otherwise, it returns False.    I put in 5 bugs. If you find all 5, congratulations. If you find more, well, shame on me.  Here is the happy path execution for is_palindrome:

Transcript of happy path execution of is_palindrome()

Transcript of happy path execution of is_palindrome()

The second module is an implementation of a very simple stack data structure.  A stack simulates a stack in the real world, you can add items on top of the stack (push action), or pull items off the top of the stack (a pop).  Here is the transcript for the stack happy path:

Transcript of happy path execution for a stack class.

Transcript of happy path execution for a stack class.

These use Python, my favorite language.  If you need to brush up on your Python, I recommend a couple of resources. First, a software testing class from Udacity uses Python to teach testing fundamentals.  Second, Codecedemy’s class on Python teaches the fundementals of the language.

The most simple way to get started, download the archive, unzip it, then invoke Python interactive from that folder and follow the transcripts above to get started.

Leadership Lessons from the Latest Episode of Game of Thrones

Winter has come, and Game of Thrones fans enjoyed the first episode of season 7. This episode had a couple of good leadership lessons. By the old gods and the new, there are spoilers ahead, so read at your caution.

Jon Snow leading the North in Winterfell

Jon Snow leading the North in Winterfell

Jon Snow is an inclusive leader, which will expand his influence. He embraced the wildlings earlier in the show and most recently the next generation of the Umbers and Karstarks. These moves build his collation, expand his influence, and will aid in the battle with the white walkers.

Most organizations have an “enemy” to help focus their strategy. The most successful organizations focus their efforts outside, towards beating a competitor or changing the status quo in the marketplace. I’ve seen places that concentrate, instead, on infighting between departments. These places don’t exist anymore.

Jon Snow focuses instead on the outside threat, the white walkers, which puts the North in the best position to survive.

Secret Information in the Citadel Library

Secret Information in the Citadel Library

We see Sam Tarley in the Citadel, the greatest library in Westeros. All kinds of information that is vital to the humans is literally locked up in the Citadel. The maesters there are keeping the “memory” alive, but not making that useful information available.

Be transparent with your information, don’t horde it. You never know who needs that data to help them do their job.