Category Archives: Lean

Advanced blogging – Honey, I Shrunk The Pictures.

Small recap

It took me three days and three takes to make 26 pictures. Now I had to shrink the pictures to a smaller size. This would lead to a faster download of the blog post and hopefully a better performance of my blog post.

Warning:
This is not the standard look-how-great-I-am blog post. It is more like look-how-I-stumbled-forward.

Reminder to myself:
As a tester I built this website to share information, but also to get a better understanding of building websites. The more I blog, the better I test.

Here, have some notes

Writing a blog post is creating an introduction, a good end, and something in between. The last part was still missing.

I only had notes and pictures in a charter. As an experienced tester I made my observations including date and time. I used the abbreviation PIC for Picture.

20201012 blogging
PIC 10:37 Screen print TEstLogin3.java 
Input: Cap / Secret.
PIC 10:44 debug menu
PIC 10:46 first breakpoint.
PIC 10:47 Cap in screen.

All my pictures had names like “20201012 – 1.2 debug program.jpg”:

  1. “20201012” is the date when the picture was taken. The format is year in 4 digits, the month in 2 digits, and the day in 2 digits.
  2. “1.2” means Take 1 and Step 2.
  3. “debug program” describes the picture.
  4. “.jpg” describes how the picture is stored. I chose this file format, because it is great for editing. That is a bit of a spoiler.

The big advantage of this name is that I can order the pictures on name.
I must have looked like a Holywood director. Day 1, take 1.

Now I had to make a link between my actions and the pictures. Luckily, I had used descriptive names for the screen pictures. These pictures had a day and time stamp, so it was easy to place the file names at the right places in my blog post.

20201012 blogging
PIC 10:37 Screen print TEstLogin3.java -  20201012 - 1.1 three breakpoints.jpg
Input: Cap / Secret.
PIC 10:44 debug menu - 20201012 - 1.2 debug program.jpg 
PIC 10:46 first breakpoint. - 20201012 - 1.3 - first breakpoint.jpg
PIC 10:47 Cap in screen.- 20201012 - 1.4 - fill in username.jpg

Processing a picture

A 288 kb picture is too big for my blog post. I figured out several steps to cut down the size.

Emphasizing

The first step is to determine whether a box should be placed in the picture. If this was the case, I used a green bordered and transparent rounded rectangle for highlighting.I would add “+box”:
e.g. “mindful-tester-p3-20201012 – 1.4 – fill in username+box.jpg”.

Let me break down the name again:

  1. “mindful-tester” is the name of my blog.
  2. “p3” is the third part of TDD in Test Automation.
  3. “20201012” is the date when the picture was taken.
  4. “fill in username” is the description of the picture.
  5. “+box” states that a rectangle is placed in the picture for highlighting an important detail.
  6. “.jpg” describes how the picture is stored.

In case of no box I did not add anything at the end of the name.
This would lead to:
“mindful-tester-p3-20201012 – 1.4 – fill in username+no+box.jpg”
After a while, I did not use the “+no+box” any more, because it did not add value.

I stored the old version of the file in case of any mistakes.
So far, so good.

Zooming in

The second step was that I cropped the picture: I would cut a rectangle out of the picture and save it. My favourite shareware tool is irfanview. Less pixels means smaller size and better performance.

Shrinking

The third step was to shrink the picture also using irfanview.
This way a picture of 288 kb could be shrunk to 40 kb.

In the Resize/Resample image dialog of irfanview the "Set new size as percentage of original" is selected. The Width and Height are set to 100%!

Note: for this blog post I accidentally used a png file. png is like jpg a way to store pictures. Only irfanview would not let me resize the png picture using percentages.

In WordPress I resized the picture to maximum size. I selected a corner of the picture and stretched the picture. This way the user does not have to click on the picture to see the details.

The new file name was:
“mindful-tester-p3-1.4-fill-in-username+box.jpg”.
I left out the date and the spaces in the name.

Was this a joyful experience for me? Not really.
So the time of processing pictures became longer and longer, until I forgot my process.

Processing pictures

The status of the picture was not clear in the file name. Also, the location of the pictures had its own logic. So the time between the editing of one picture and the editing of another picture became longer and longer.

So I made a nice file with all kind of instructions, “Instructions printscreens programming.txt”.
This included files, their contents, and their locations.
Exploratory blogging in a nutshell.

Only to discover that I had already “Overview files.txt” in place.
Exploratory blogging takes practice.

Because a lot of time was spent on editing the pictures, I did not remember my steps well enough while writing. Now pictures are handy, because pictures do not lie. So I had to change my story a few times.

Looking at some pictures I missed the essential point of the picture. So I added the transparent rectangle and went through the whole editing process again. Even after cropping the picture the important details were too small in some cases. So I split pictures in certain cases.

Placing a picture in a blog post is quite tiresome. I had to go to the right location, search the right picture, and upload it. Not enjoyable at all.

But I already knew what I wanted to upload. So I opened Media and uploaded all the pictures using one drag and drop.

Then I searched for the first picture to be included using PIC for Picture. All my files had an unique name like
“mindful-tester-p3-1.4-fill-in-username+box.jpg”.
Using the filter I searched for the file with 1.4 in the name. Then I selected the file.
In the Add media dialog of WordPress the Search Field is set to "1.4". The result of the search is a single picture containing a part of the Login Page!

Uncomfortable observations afterwards

  • At the end I shrunk the total size of my pictures in the blog post to a quarter: from 8 Mb to 2 Mb, which is still big. Is it still possible to shrink the pictures without losing the important details?
  • I did not check the size of my blog post with the preview version.
  • Chrome Devtools contains Lighthouse, an accessibility tool. My site scored 58 on a scale from 1 to 100 for performance. This is not really high.
  • The setting of “the most number of blogs posts show on page” was still on 5. I forgot to save this setting. Saving a setting in WordPress was not consistent with saving an alternative text for picture.
  • The trouble with pictures is, that it can cost a lot of time. This will decrease my enjoyability. It makes my blogging slower. On the other hand it will increase the enjoyability of the readers. At the end this will increase my enjoyability. I like to read my own blog posts. I might call this the Enjoyability Paradox. Things which I did, were no fun, but finishing the blog post was good for my mood.

Coming up

At the end of the picture processing, I had a bunch of pictures without alternative texts. For blind people or people with bad sight this had to be fixed. A screen reader needed these texts to describe the pictures aloud. This was about accessibility.

Q&A A Fistful of Spreadsheets

[Note from the author: after some fact checking I discovered that I used the Red Card in a wrong way in this blog post. The red card must be used to raise issue like low volume or high temperature in the room, which can lower the quality of the gathering of information. For normal interruptions the yellow card should be used.

This basically means that I had to rewrite the blog post on certain points. This task was more complex than I had expected. The whole flow of arguments had to be restructured while preserving the spirit of this post. So I only added this note.]

Facilitator: Welcome back to another round of questions and answers. This Q&A will focus on the serie Smart Use of Spreadsheets of Mindful Tester.   K-cards will be used in order to structure the flow of thoughts.

I’ve got green cards from numbers 43, 25, and 9. Number 43, you can ask your question.

Attendee number 43: I only read instructions. Why do you not add more clarification?

Writer: It is important to discover things myself. This way I get a better understanding of spreadsheets. In this serie I wanted to share this experience with you, the reader.

Facilitator: I’ve got yellow cards from numbers 31 and 16. Number 31 it’s your turn.

Attendee number 31: That’s pretty abstract. I don’t get that. Would you provide an example?

Writer: In the last episode I described the use of Remove duplicates in order to get a set of pizza brands or a list of names, which are mentioned only once. During the test I needed a way to make a set. I explored the spreadsheet program to find an easy way. By letting the reader follow my steps she or he might see some functions of spreadsheets, which are unknown and useful in the future.

Facilitator: Number 16.

Attendee number 16: How did you find it?

Writer: By selecting a tab, which might contain an interesting set of functions.

Attendee number 16: Just curious. Did you know the function before the test?

Writer: No.

Attendee number 16: So you stumbled upon it during the test?

Writer: Yes, I did.

Attendee number 16: Is it not strange to start testing without an exact set of instructions?

Writer: No. Let me elaborate.

Attendee number 16: Sure.
[Facilitator relaxes.]

Writer: Is it possible to make a test strategy, which does not change? I think: “Not”, so making test cases should be postponed as long as possible or skipped when possible. Nothing is worse than hours spent for nothing. The same is also applicable for the use of tools to determine the most easy way to test the system under test.

Facilitator: A yellow card from number 33. Number 33 it’s your turn.

Attendee number 33: When do you skip test cases?

Writer: There are other alternatives like checklists and exploratory testing.

Facilitator: this is going off topic, so I am closing this thread.

I’ve got green cards from numbers 25 and 9. Number 25, you can ask your question.

Attendee number 25: In your blog post you are using a spreadsheet program. Why did you not use a database tool or Python? They are better equipped to handle data.

Facilitator: I see a red card from number 493. You have a question about the question?

[Attendee number 493 nods.]

Facilitator: Number 493.

Attendee number 493: what is Python?
[Facilitator looks for a snake.]

Writer: For me is Python a strong light weight programming language. Do you need more information?
[Attendee number 493 shakes his head. Facilitator relaxes.]

Writer: The question was: “Why did you not use a database tool or Python?”I have to take additional steps: install tools and figure out, how to use them. It would have taken me extra time.

Facilitator: I’ve got yellow cards from numbers 1 and 24. Number 1 it’s your turn.

Attendee number 1: This could have been a nice starting point to explore another tool?

Writer: Yes, but… The but is to look for long term benefits. For simple data manipulation spreadsheets are good enough. I did not expect complex data analysis in the near future, so I did not even consider using other tools.

Facilitator: Number 24

Attendee number 24: why did you not use the experience report to tell your story? This would provide more insight in the way you work.

Writer: it is nonlinear and it would confuse the reader, who is looking for a fast and linear solution.

Attendee number 24: Could you be more specific? I mean: could you share an experience?

Writer: The first time I used Remove duplicates I got the wrong combination of pizza brands and phone numbers. So I did a manual check for the remaining wrong numbers. Later I discovered that I ordered the phone numbers from A to Z instead of Z to A. So I used System 1.

Facilitator: I see a red card from number 493. Number 493.

Attendee number 493: what is System 1?

Writer: System 1 is used for automatic and fast decisions like walking to the supermarket. System 2 is used for the complex operations, which need thoughtful thinking like buying items on the shopping list.

Attendee number 24: So?

Writer: When I heard the word Order, I picked the order from A to Z. For System 1 this is the default choice. I had to use System 2 (Is the order really from A to Z?), before continuing the test. Adding this experience is likely to add confusion for the reader.

Attendee number 24: I think that you are smart enough to make a smart formula to automate the manual check.

Writer: Thank you for your compliment. There were only foursome numbers to check. I actually made an attempt to use a formula, but that costed me too much time.

Facilitator: Are there any more questions on this thread? Apparently not.

I’ve got green cards from numbers 9, 10, and 11. Number 9, you can ask your question.

Attendee number 9: Why did you not use a programming language supported by the spreadsheet program?

Writer: I didn’t know the language.

Facilitator: Number 10.

Attendee number 10: Why did you not use a blink test to compare?

Facilitator: I see another red card from number 493. Number 493.

Attendee number 493: what is a blink test?

Writer: A blink test is a test, during which the tester processes a lot of information in incredible short time or in a blink of an eye. In this particular case you can switch fast between the two spreadsheets. Differences can be noticed: characters change.
[Attendee number 493 nods.]

Writer: The blink test has some disadvantages. Spreadsheets can be so big, that you need a lot manoeuvring. Some spreadsheets have cells with default width, so not the complete content is shown to the tester. Non-readable characters can be contained in cells. My favourite is that trailing spaces cannot be spotted with the naked eye. “Text” looks the same as “Text<space><space>”.

Facilitator: Number 11. You can go ahead.

Attendee number 11: You copy the calculated values instead of the formulas to the last worksheet. [Speaker nods.] That is a smart move, but it looks like a redundant step to me.

Writer: if everything is OK, then you are right. It there is more than 1 NOK, then odds might change for me. In this case I have to verify the formulas. If they are right, then I have to analyse the data. Values can better be manipulated than formulas.

Attendee number 11: Like?

Writer: Spreadsheet programs support auto filter, which contains nice features.

Facilitator: I’ve got green cards from numbers 21, 562, and 23. Number 21, you can ask your question.

Attendee number 21: You already advocated against the use of database tools and programming language in this context. Why did you not use spreadsheet comparison tools?

Writer: It would only save me one step: to learn the tool. I have to admit that I am not familiar with these tools.

Facilitator: I’ve got green cards from numbers 562 and 23. Number 562.

Attendee number 562: Why do you not change the background colour of the cell to red, if the cell contains a NOK?

Writer: It is an extra step. For analysis of complex patterns of NOKs it can be considered.

Facilitator: Number 23.

Attendee number 23: I found a neat trick. If I have to compare a new sheet with one in the map, then I copy the sheet in the map and rename the tab. What about that?

Writer: It is a tricky one: after months it is not clear, which spreadsheets have been compared. More particular: what were the sources of the sheets? Also there is a risk of different numbers of rows. You actually have to refactor the spreadsheet.

Facilitator: A yellow card from number 21.

Attendee number 21: Could you give an example of refactoring?

Writer: I would an extra row above the table and add a text with information over the source. You still have to watch the formulas though.

Facilitator: A green cards from number 372. Number 372.

Attendee number 372: Why do you not use the standard compare function of the spreadsheet programs?

Writer: Good question. I’ll have a look.

Attendee number 372: Sounds like a new blog post?

Writer: The last blog post about spreadsheets took a considerable amount of time.

Attendee number 372: Why?

Writer: I was refactoring the solution.

Attendee number 372: Is that not contradictory with your previous statements about being lean?

Writer: You’re a smart girl. I blog in my free time.

Facilitator [a bit surprised]: I see a green card from number 493. Number 493.

Attendee number 493: What do you mean with “=b”?
Writer: “=” is an underarm and “b” a hand.
Attendee number 493: Thanks. =b.
Writer: Thanks.

Facilitator: Thank you for all questions about spreadsheets, testing, and… Hey, I miss the pizzas. Anyways I hope you enjoyed this Q&A.

Keep on questioning things!

Fetching, fast and slow

Let’s start with a simple observation of the following sentence:

Do I communicate (without a mouse)?

If you were fast, then there is a high probability you were thinking: “The word mouse is used by the author instead of the word mouth. So the spelling is wrong.”

If you thought hard, then there is a high probability you were thinking: “The mouse is probably a computer accessory. So the question could be rephrased as follows: do I communicate (without a computer)?”

I once heard a great story from an experienced test manager René. He told me, that his project members were communicating with emails. It did not even change, when they sat in the same room. He just set a daily limit of 3 emails, which they could send. This lead to more face to face communication, which improved the project spirit and group cohesion significantly.

Breakdown

In the introduction I used a mind trick on you. This is a trick, which can be used to confuse people.  For the fast observations System 1 is used in most cases. This way of thinking provides fast, almost effortless way to digest information. Like walking to the office.

For the thoughtful observations System 2 is used. Doing complex operations like testing in the office. Both systems have been discussed in depth by Daniel Kahneman in the book Thinking, fast and slow. The title of this blog is based on the title of this book. And fetching is short for fetching coffee.

In March 2015 James Bach introduced the term testopsy. He analysed, what the tester did during a test. I thought about a post autopsy or blog post autopsy.  It is tempting to concatenate the strings post and opsy. But as a Dutch native speaker I do not take any chances. 

Just let me perform an autopsy for a blog post: how did I construct the blog post Do I communicate (without a mouse )?

Because I wrote the blog post, I have the original mind map, which was used as a basis. In the following picture I highlight, which System is used and the corresponding trends. System 2 is used in certain parts of the blog post and System 1 in other parts.

mindful-tester-mindmap-System1-Sytem2

A manager would say:
“This is nice. And that’s all. The relationship between the parts of the blog post and Systems is meager at most. ”

Time for a graph make over.

Graph SOS
There is a British car program, in which they deconstruct and construct a beloved car wreck. For people, who earn it.  And as a reader you definitely earn a better graph.

In case you did not read this blog post Do I communicate (without a mouse)?, please do. It makes the following graph understandable.

mindful-tester-timeline-system1-system2

In the graph above I show my usage of Systems 1 and 2 on the vertical axis. The horizontal axis shows the different parts of the post in reading order. So it is possible to observe, that System 2 is used less and less until the end of story.

A manager might be more interested in this graph than the previous one:
“So what you are basically stating, is, that people use System 2 for learning. And participating.”
Or even better:
“I wonder, whether System 1 is used during the meetings in my company .”

Breakdown 2

Over the years I saw a recurring pattern. Every time I boarded a project or got a new room, I had to change my coffee fetching list. And somehow I reduced the spent time. I eliminated waste: it looked to me, that I was lean. This story I carried with me for more than a year. Telling and retelling it to myself over and over again.

Then it was time to put it in a blog post. I started with the mind map with the condensed and descriptive title Coffee. The first branch contained the story. Then I added two funny anecdotes to add some flavour to the blog post.

In the meantime I had lost my favourite mug out of view: a bear, who juggles, while praising the owner of the mug. (That’s me.) After I had found the mug, I made a photo with my smartphone. The mug was on the foreground and my markers right behind them. Then I noticed my mouse: it was behind the markers and not on the photo. So I changed the view for the next picture: the mouse is on the background. Unreachable for normal use.

A few days later I noticed, that I was missing a photo with a funny text for the blog post. I needed something, that could be connected with coffee or tea. Then I remembered the picture of my mug, which was a major obstruction for using my mouse. A thought about communication entered my mind: Do I always need a mouse for communication? It was relatively simple to write an introduction from this point.

Most stories have a lesson at the end. I think, that it is highly predictable (and a bit boring). I wanted to give the reader a choice out of 3 lessons. But that was not entertaining enough. So I placed myself in the spotlights (again). If I could let my voices speak, then I would have a more recognisable situations instead of some abstract and concise questions without any explanation. I took the following voices:

  • The lean machine in me, cutting wastes on his way to the future
  • A woman constantly looking for her needs, while brainstorming and chatting
  • A service desk agent concerned about an implementation of a new functionality
  • A curious software tester looking for clues.

I somehow used a Dutch style form: the circle is round. I started with the title Do I communicate (without a mouse)? And ended with the same question.