Visual thinking with sketchnotes

I’m a visual learner. I like to draw things as I absorb information. I enjoy doing sketchnotes while I’m at a conference. See YOW! Sydney 2018Australian Testing days and Agile Australia as examples of these sketch notes in practice. It helps keep me in the moment and focused on the talk material. It’s also a nice thing to hand to the speakers as they get off the stage. Here is my workshop material for learning sketch noting:

Everyone can draw

You brain is a pattern recognition machine and will turn almost anything into something you recognise. Even your random squiggles can turn into birds. Try this squiggle birds exercise out as a warm up:

Mindmapping

Mind mapping is a good way to start with visual thinking. You have your central idea in the centre of the page and all of your ideas related to that idea radiating out if it:

Source: https://www.mindmeister.com/blog/mind-maps-essay-writing/

You can use a mindmap to brainstorm ideas like, “How do I test a username/password field?”. Michael Bolton has a this fabulous mindmap just for this problem:

A Michael Bolton mindmap

Sketchnotes

you can do sketch noting without drawing. You can start with lettering and things like bullets, frames and connectors:

 

I use banners everywhere

You can even find youtube videos for doing these banners

Build up a library of icons

There are many common icons you’ll use. I often draw light bulbs, locks, poop emoji’s and tools (what does that say about the state of technology?). 

Use colour to highlight ideas

It might feel like you are back in primary school colouring in borders but I love adding shadows and some colour highlights to my sketchnotes to really make them stand out/seem more 3D.

Practice your stick figures

people are often used to communicate abstract ideas. There’s lots of different styles out there and you will find your own.

Give it a go

The next time you are watching a lecture/presentation on youtube, try and take some sketch notes and let me know how you go.

Australian Testing Days – Sydney Conference Overview

I had a blast at Australian Testing Days Conference in Sydney on Friday. It’s always good to get reconnected with some colleagues and to make new connections. First up we had Jennie Naylor go over how to use OKR’s to drive the Quality Onwership:

Using OKR's to grow quality ownership - sketchnotes

The OKR (Objectives and Key Results) framework has been in use since the 70’s and is used by companies such as Google, Uber and Facebook to set their organisational goals. OKR is a framework that can be used at any level within your organisation. This presentation mention how to use OKRs to help improve quality and ownership in a team.

Key Takeaways

The key takeways I got from this talk was how to use OKRs to determine if experiments are successful or not and getting the whole team involved in quality and product ownership.

AI and the impact on QA

Given by Chhavi Raj Dosaj who proposed the question, can AI can the landscape of testing?  Chhavi had a big topic to fill. I think his main point was a little lost because he spent too much time going over the basics and he wasn’t able provide compelling examples of where AI could benefit the QA process.

One of his examples was using an unsupervised learning algorithm to select the top manual test cases to execute in the next testing cycle based on past performance of said test cases. Anyone who primarily uses test cases to manage their testing work and reporting is using a pretty dated testing practice that doesn’t scale or make sense in the Agile world. You can read more about my thoughts on the end of manual testing. I also wish he asked me for feedback on his slide design before he got up on stage. There were some presentation sins committed in his slide deck.

dev Ops Testing Strategy

DevOps Testing strategy by Amit Kulkarni fell victim to the old bait and switch presentation sin. The title didn’t match up to the content. My key take away from this talk was, “there are tons of tools out there you can use in a continuous testing way”. There wasn’t any DevOps in this talk at all. 

Performance Testing in CI

Andrey Pokhilko gave an engaging talk on Performance Testing in CI using opensource tools. I learnt the name of a new tool; Taurus. Which can be used on top of JMetre and is a little easier to use than the good old JMetre.

State of BDD

As I’ve already done Gojko Adzic’s spec by example workshop offered through YOW! a few years ago, I already had a decent idea where this talk would go. Bria Grangard was engaging and gave a good update on the state of this field.

Transforming Testing

Bruce McLeod gave an engaging talk in business strategy and how it will transform testing. This was one of my highlights of the conference. Bruce goes over how testing needs to change from a culture of “protection” to a culture of experimentation using the Netflix chaos monkey as an example. 

Ditch that intro slide

Australian Testing days is off to an awesome start. I always enjoy the community vibe at these events. However there’s tons of poorly designed slide decks out there. Here’s some advice. Ditch the intro slide with your picture on it. The audience doesn’t care and we know what you look like. You are standing right in front of us.

Chhavi Raj Dosaj gave a good introductory talk on “on practical AI for the tester”. I have the sketchnotes here:

However, I just wish I could have walked him through my workshop material on giving better technical presentations before he got up on stage. This type of mentoring is something I offer for free. I love helping people improve their technical presentations. It makes every conference experience better for everyone involved. His slide deck could have been better. For example;

This intro slide

We don’t need a slide with your picture on it. You are standing right in front of us. We know what you look like. Keep this for the offline version for sharing if you like but you should never have a slide with your picture on it when standing in front of a crowd. This is my personal opinion, but do you think this adds any value?

There are too many words on this slide

Can you read what’s on this slide from that photo? no? me neither. Only the people in the front row would have been able to read this. Anyone further back in the crowd can’t. Also when people read they stop listening to what you are talking about. Think of your slide deck as a good user interface, your goal is to teach us something new. Not cause us to be distracted from reading your words when you want us to focus on what you are saying. Wordy slides are good for offline sharing. They aren’t needed in a physical presentation. Slides are free. If this content is important use the slow reveal technique to build up. If not, dump it. You have already established you credibility. the audience doesn’t need your words to figure out you are competent on stage and that you know the material you are presenting. You are already standing in front of us and we are already seated. Waiting to hear your insights on the topic.

Don’t put anything important on the bottom third

Only the front row can read this content. Everyone else has to strain or just completely ignore any information you put here.

In summary, ditch that intro slide. The audience already knows your name; it’s on the schedule. We are already convinced of your value; we are sitting in the audience. The audience just wants you to get to the learning material. Want a challenge for slide design? Try the Takahashi minimalistic slide design or a presentation using only images, it will force you to focus on your story over your slides.

The future of work

There was a question at last nights Sydney Testers meetup event with James Bach, “What is the future of software testing with AI and automation?” Have a read of “Weapons on Math destruction“, it’s about how big data is driving inequality. I think testers are in a good position to raise questions around the ethics of Big Data. I’m not too concerned about our current state of AI drastically changing how I work. The tools I use might change but I’m going to remain being a tester for the foreseeable near future.

If I was to look into my broken crystal ball on future proof work this is what I’d be telling anyone who listens:

Become a nurse

Hear me out, if you are a high school student contemplating what to do and you don’t really have an idea but you know you want to go to uni and study something. Pick a nursing degree, especially if you are male. Men just aren’t taking up this robotic proof work.

With an ageing population more and more people will need care in the future and you have an almost guaranteed job for the rest of your life. You can do an accelerated nursing degree within 2 years and if you decide nursing isn’t for you, at least you didn’t waste that much time at uni and you learnt something practical.

Try it out first

If you are looking into trying this field out, approach your local nursing home or disability support group for a few weeks of work experience. If you can deal with other people’s shit (sometimes quite literally) consider going into health care.

Suicide impacts older generations more, this demographic are often stuck in nursing homes and are disconnected from their families. Robots aren’t exactly going to able to replace that need for human connection for these people. An aged care nurse will be providing services to growing market demands.

Other health care services are prime for automation and disruption. A machine learning algorithm based on probability and linking your symptoms to likely causes could replace 90% of General Practitioners work. Drug dispensing machines that access your prescriptions through the internet could replace pharmacists. Health care will be a growing market but could be changing.

Any existing work that has a strong focus on people is going to be hard to automate; parenting, teaching, recruitment are a few I could list off the top of my head. Maybe people thought the same thing about bank tellers 30 years ago?

Many new roles will exist

in 10 years time there will be new roles on the market. 10 years ago who knew that “Social Media Guru” would be a thing? If you have some basic web skills (HTML and CSS) and a passion for marketing I think you’ve got yourself a fairly guaranteed position for the foreseeable future. Email marketing is still a big thing and how long have we had emails for?

Most new jobs that are created tomorrow will not have a clear path from uni today into them. People will need to be adaptable and will experience career changes. What you study probably won’t be related to your work all that closely. Why consider doing an expensive 4-5 year degree at uni when there’s many shorter ways to get to work out there. If I knew someone who wanted to work in tech tomorrow, I’d suggest doing a 12 week coding bootcamp program over going to university. I didn’t really learn much hands on technical skills at uni through my computer science degree and I’ve learnt more stuff on the job.

Having a learning mentality is more important.

Once you have a degree in anything, studying a masters for a career change becomes an option too. Why not do an accelerated 2 year degree just to get a piece of paper?

If I had a spare 15-30K I’d be studying Data Science or a masters in teaching, but I don’t because I’ve been bad with my finances. I really enjoy teaching people and I don’t need a masters degree to practice that.

Don’t follow you passions

You know that sentiment, “follow your passion and you will never work a day in your life”? That’s a load of baloney, throw that shit in the bin before it infects you further. It’s harmful wishful thinking. If you do know what you want to do and how to get there, good for you. Most people aren’t in that situation, me included. acknowledge what type of work engages you and what interests you but don’t conflate passion and work.

I find testing engaging work and I’ve made it my passion but I didn’t go through high school telling myself, “when I grow up I want to be a tester”. Often the work you do will not be what you expected. I never thought I’d be doing mobile testing for a meditation app but here I am.

I want to teach people; there’s a market for learning technical skills. It’s something to work towards that combines my skills and interests but I didn’t know I wanted to do this 6+ months ago. It’s been a recent evolution. Heck, if paying off my credit card debt wasn’t one of my main focuses I’d probably be working in a brewery. 

A lot of work is prime for automation

Automation is coming for all of our jobs. Even people who work in technology aren’t safe. However if nursing doesn’t appeal to you, consider doing engineering. Even if automation changes how we work, we will still need bridges, buildings and infrastructure to support everyone. Unless we figure out how to upload our consciences to the internet, then I have no friggin’ idea  what work would look like. 

Getting Started with Google Cloud, App Script and BigQuery

The humble spreadsheet is one of the most versatile digital tools that any tester has in their toolkit. I’m working on a data analytics project at InsightTimer where we are doing event tracking across our android and iOS apps using MParticle and BigQuery. I want to do some data analyst on the events coming through for new android builds. “Basic Sanity” testing of events is my goal. My first step towards this is to create a Google Sheet dashboard that integrates with BiqQuery via a javascript-esk language called App Scripts. App scripts is an amazing extension of the humble spreadsheet, it really adds a lot of extra functionality. I’m going to walk you through how you can get started with a similar project of your own.

1. Sign up for a google cloud trial

I used a test account; sammy.test.cloud@gmail.com to explore this for you and I collected screenshots along the way.

Navigate to https://cloud.google.com/ and sign up for all that cloud magic.

 

You will get $300 worth of credit to explore the cloud

 

You will be asked for credit card details 🙁 but at least there is no auto charge if you forget

 

Woot, the default project name is “My First Project”

 

Go to https://console.cloud.google.com/bigquery?p=bigquery-public-data to test out your big query set up. BigQuery should be enabled for new projects by default.

There’s a whole bunch of public data sets for you to explore

 

We are going to explore the hacker_news datasets in this example. This is actually a collection of the data (comments and articles) from this Hacker News website.

Previewing the table is a handy feature for getting an idea of the structure of the data

The preview gives you some sample data, an idea of columns and a way to explore

 

If you wanted to find the top ranked comments for author ‘4ad’ you can run a query like the following (remove the \ characters if you are copy pasting this query):

SELECT
  author,
  id,
  ranking,
  time_ts,
  text,
  parent 
FROM 
\`bigquery-public-data.hacker_news.comments\`
WHERE
author = '4ad'
AND deleted IS NULL
ORDER BY
ranking desc,
time_ts
LIMIT 10;

 

2. Setting up Google Sheets with App Script

Create a new sheet in your drive folder, I’ve named mine BigQueryTest. Open up the tools > Script Editor:

 

You will see a blank script editor. Copy & paste the code from https://developers.google.com/apps-script/quickstart/custom-functions 

Save, the first time you save it will ask you to name your project

 

I ended up calling mine BigQueryAppScriptIntegration, original I know

 

Run the onOpen function. The first time you run this app script it will ask you to set up permissions

 

Review the permissions

 

select your account

 

More Permissions

 

Whew, done. Now if you navigate back to your spreadsheet you should see some added menu items:

 

What happens when you click on the Prepare sheet… function?

Huh, fancy that. Our spreadsheet is updated

 

Then how about the Generate step-by-step function?

 

That’s pretty cool a new tab is added

 

You don’t need to understand google’s code to explore this. I find it’s better to learn by starting from scratch. This code gives you a guideline for what you can achieve but you will have a better understanding of how app script works by building out your own.

3. Enable App Script APIs in your google cloud project

Navigate to your google cloud console: https://console.cloud.google.com/apis/dashboard and click on enable APIs and services

 

search for App Script and click enable

 

4. Enable BigQuery APIs in your App Script

Navigate back to you App Script and go to Resources > Advanced Google settings

 

Enable BigQuery APIs

 

Delete your old app scrip code, copy and paste the first code sample from https://developers.google.com/apps-script/advanced/bigquery

Replace the XXXXX string with your project id, you get this from your google cloud console

 

 

Replace the query with 

'SELECT COUNT (DISTINCT id) FROM [bigquery-public-data:hacker_news.comments]'

 

Save and run the runQuery function. You will also need to set up permissions again the first time you run this.

 

Huh, that’s a new screen. I clicked on “Advanced” to see a similar permission screen I had previously encountered

 

Dam. I got another error message:

When I click on the details it gave me a handy url to navigate to

 

I went to the suggested URL and it turned out I need to enable another API somewhere else. That makes me thing I did it in the wrong spot in step 3, maybe that step wasn’t needed?

 

I wait a few moments and go back to my app script. I click on “Run Query”. No error messages this time. If you go to your drive folder you should see a new sheet called “Big Query Results” with one row of data:

 

You can test out this result is roughly correct by running the query directly in your google cloud query editor:

 

Now you are all set up with your API integrations. Next lesson will be building out your own dashboard that puts this set up into practice.

Feeling low today

Dear Diary, I woke up feeling tired and low this morning. My alarm went off at 6:30 but rolled over and snoozed until 7:30. I’m meant to be attending the DDD Sydney conference today but the trains were delayed. By the time I got to central station I needed to have a teary in the toilet. It was the first time I’ve had an unprompted crying breakdown in a while. I’m not that concerned about it though, I just needed an outlet. If depression was trying to settle back in that sensation of being on the verge of tears would be sticking around all day. That’s the debilitating side of depression and I’m not experiencing that today. It’s passed now which I’m grateful for. Now I just want to sit in a cafe and write to you about it. Sitting in a warm cafe with nice music and a coffee is like a warm hug for me. It’s how I recharge.

Mmm, coffee. It’s not quite like a warm hug but it’s close enough for me.

Contributing Factors

I’ve had a constant headache for a few weeks, I thought I might not be drinking enough liquids. I haven’t been sleeping all that well. I have a fair amount of stuff on my plate. My uterus was trying to kill me this week. Maybe I’m not exercising enough? Maybe there’s something missing from my diet? I don’t know what’s causing my low mood, all that I know is feeling constantly tired is my main trigger and it tipped me over today. When I was fat it was easy to think, “I’ll have more energy when I lose the weight”. I do feel more resilient about my mental health now that I’ve lost weight but I still have some niggling issues that pop up every now and again.

Next steps; track the low moments 

I won’t know what to improve on if I don’t have any data to back up my hunches about my low mood. Next week I’m going to keep a physical journal. I need to track a weeks worth of;

  • sleep
  • exercise
  • food
  • meditation practice
  • general mood

Do you mind if I share my journal with you? If I don’t tell anyone about it then I might never finish it. I need help with some external accountability. Maybe you’d like to keep your own health journal/tracker and share it with me? It doesn’t have to be public. You could send me an email sam@thebughunter.com.au or a Facebook message if we are connected there. After a week of data I plan on going to my doctor for some advice.

Sydney Testers and Money

We have a Sydney Testers evening with James Bach coming up soon and you might be curious to know why we are charging $5 for it when it seems we have a sponsor for the event (Campaign Monitor). There are actually a few reasons to try this model that I will explain in detail.

Ongoing costs

prices from meetup

Meetup charges US$14.99/month for any big meetup and the organizing committee often foots the bill for this. There were times we were buying name badges and accessories for events. There’s been a few occasions when the organizing committee have footed the bill for food (I paid for the pizza for Michael Bolton’s talk expecting to be able to claim it back later but couldn’t). Sometimes we have sponsorship for food scrape through at the last minute. For example our bug bounty discussion panel at Prospa, Prospa did an awesome job of hosting us but didn’t have the budget for food and drinks. We had Bug Crowd confirm the day before the event that they were able to sponsor food and drinks. It would be nice to have some buffer of money/sponsorship so these moments aren’t as stressful. Our average meetup generally costs our sponsors anywhere from $200 to $500.

Meetup’s view of the money portal

Turn out rates

The meetup average drop out rate is around 50%, plus or minus 10% depending on things like the weather and location of the event. This can have an impact on food budgeting and moral. With a paid event the drop out rate is expected to be around the 20-30%. It makes it easier on organizers who are catering food to organize if the RSVP numbers match up to reality. We also get a better vibe. Imagine expecting to turn up to an event where 100 people RSVP’d and only 40 people turned up. You’d feel a little disappointment with the turn out. As an organizer it would suck your motivation for running future events too.

Lost funds

The previous committee had a paypal account set up and linked to Meetup but when the organizer left, the paypal account left with them and that means any previous funds we had raised (like when Michael Bolton came to Sydney and we charged $10 per person for) we actually never saw that. Which is a sucky situation to come to terms with but it’s the current situation. That’s why we haven’t charged for anything since then because we wanted to try and sort it out. This time we’ve just started from scratch with a write off for the previous balance.

Paypal setup

Paypal takes a 4.4% cut out of every transaction so for every $5 ticket sold we get $4.57. Currently I re-jigged an old business account I had set up for my tutoring services. The account has been shared with the committee so if one person leaves existing members still have access. You might see Sam’s Tutoring on your receipts until we update the details.

please don't be concerned if you see my details on the receipt
Example PayPal receipt

Free events

We will continue to run free events that benefit members, if you want to help organize any or have ideas for events that you’d like to attend hit us up. We are always open for ideas. The CV clinics we’ve been running this month came about from discussions in the pub. So please, suggest your ideas, we’d also appreciate if you helped with an event or two.

Any profits will be donated to charities

For James Bach event, Campaign Monitor has selected the drought appeal where profits will be contributed. You don’t need to worry about me profiteering from this event.

Investing in your education

Isn’t it worth spending a few dollars to support the community, your education and the drought appeal? These are just our first steps towards managing this meetup just a little better. We are always open to suggestions.

Financial and debt update

End of financial tax year is a good time to reflect on finances. I wrote this blog post on my wealth worries when I had 14K in credit card debt. I was concerned about the impacts of that debt on my mental health. Even though my salary has grown since then I’ve had a few hiccups and my credit card debt got worse before it got better.

Estimated tax refund for 2018
2018 tax year refund estimates

The $77,527.00 taxable income was lower than I expected but I didn’t work for around 2 months of the year recovering from my broken ankle and being in between jobs. I got a decent Tax return because I’m getting better at keeping track of receipts for professional development purposes. I attended a few conferences in that year, my previous company couldn’t afford to help me get to one and it was all out of pocket expenses.

35K Credit Card Debt

My credit card debt grew to a max amount of $35,000 AUD before I started getting on top of it. Why did it grow from $14K when I blogged about it last? At the time I had just been approved for a $20,000 credit card and was going to do a 0% interest credit debt transfer. I was going to cancel all of my other cards. I was just about to cancel the big 12K card when I had a family member ask for a loan. Then I went on holiday. Then I paid for weight loss surgery on that $12K card. My application to use my super to pay for the weight loss surgery was declined. The surgery cost me around $7K and I couldn’t really put a value on extending the quality of my life in the future.

Personal loan

In March last year I took out a personal for $35,000 to pay off my credit card debt. I cancelled all of those pesky credit cards. I’m now down to about $27K owing on that personal loan. I’ve had a few hiccups, the broken ankle didn’t help but now I’m settling into a new role I’m looking forward to clearing out most of that debt next year. I have a monthly budget that I’m constantly looking at:

Monthly Budget
Not everything is included (food and transport aren’t in this list)

Goals for this financial year

I want to get better at keeping track of expenses. I’m trying to get better at taking photos of receipts and collecting them at the end of the month. I’m still terrible at this (this has taken me years to build up the discipline to care enough to try it). I don’t know why this is so hard but it is.

What are your financial goals? How are you going to achieve them?

Are you Hungry? Try the Carrot Test

Have you ever found yourself with a strong desire to eat almost anything and thought to yourself, “why do I want eat?”, “Am I really hungry?”? Often the drivers for eating are emotions; we could be bored, stressed or feeling low. We could be looking for that quick comfort and unfortunately a lot of what we eat is unconscious; we do it without even thinking. It’s habit that feeds our desire to eat, here is an article on 5 reasons why you can’t stop eating.

Afternoon Boredom

I get this desire nearly every afternoon around 3PM when I’m at work, I just want to stuff my face. Sometimes anything will do. There’s been the occasion where I’ve pigged out on plain salada biscuits before. I’ve now started bringing baby carrots and baby cucumbers to work and sitting them on my desk for when that desire hits. I call it the carrot test. If I’m not hungry enough to eat something bland like a carrot/cucumber then I’m not really hungry. Sometimes I’m just bored/tired and looking to take my mind off work. I might be thirsty and confusing it for hunger. So after eating a carrot and having a glass of water I recheck with that desire. If it still exists, I’ll reach for some fruit. Carrots are my choice because they are a low energy density food. If I binge on carrots, how much damage can I really do?

Carrot from a farm
Mmm, carrots.

The Carrot Test fails when there’s chocolate

Carrots can’t help me in the face of chocolate. I will stuff my face when there are these tasty morsels floating around. Sometimes I can’t help myself. I’ve always struggled when I’ve been in situations where there was ample food around. At a social gathering I’d be tempted to try everything and go back for seconds or thirds. Having most of my stomach removed has helped quell this desire some. My stomach physically doesn’t have the space to try everything, it has helped me curb my behaviour a little. There’s still situations where I find myself loosing control of what I eat but now the damage I can do to myself is reduced. I no longer feel guilty when this occurs, I’m trying to practice self compassion with my thinking but it’s a slow journey.

How do you control those desires? What habits do you try to form around food?

Lessons in Branding : HelloFresh

In a world of time poor families and social media every where; HelloFresh is nailing their branding.

I got my first HelloFresh box this morning. I really like the idea; a food subscription with fresh ingredients delivered to your door with recipes to make for easy meal prep at home. I think their branding is just top notch:

Image Source: https://flic.kr/p/ToXrwp

I’m going to walk you through my unboxing experience while I delve into the branding behind it.

Unboxing & Recipe Cards

Woo the box, each recipe actually came in separate brown paper bags
My box came with 5 recipes
Here is the back of one of those cards, pictures make it easy to follow

Leveraging Technology

HelloFresh has a sleek website that was easy to use and an app that pairs with their product offering. I haven’t used their app but having that digital way to plan meal preps sounds like a good idea for them. You should leverage technology as part of your marketing campaigns as much as possible. If I had discovered bugs with my first ordering experience I would have viewed the overall product with less favor. The on boarding experience here is super important to get right especially when you are pairing a physical product with a digital offering.

Product Idea

Hello Fresh could sell a binder and each recipe card could have a 2-3 punch hole on the side to add to the binder. It would be an easy way to keep the physical cards. They are so nicely put together it would be a shame to toss them. It would be similar to the magazine subscriptions I use to have back in the day:

Source: http://www.modernbookbinders.com/

Aggressive marketing

I see HelloFresh everywhere; at least in Sydney they frequently have reps on the street giving out vouchers. I’m sure I have 2 floating around somewhere. Even the box comes with coupons to share with your network. Partnerships are important. If you had a similar product to HelloFresh and partnered with them to give out a coupon code on their next delivery cycle you’d get a reasonable amount of reach. Postal marketing is seeing a resurgence lately.

Good branding needs good marketing to support it.

They also have an instagram photo competition (#HelloFreshAU) going on to engage customers around their brand. What marketing tactics have you seen HelloFresh use that you’ve also tried?

Will I continue with it?

Short answer, probably not. I had 80% of my stomach surgically removed for weight loss surgery 2 years ago. I can only eat tiny meals now and I need to focus on protein first. I would waste some food on this program because the protein to everything else ratio doesn’t suit my dietary needs. I also enjoy researching my own recipes and perusing fresh food markets on weekends to get ideas for meal prep. The convenience doesn’t sell me because I am a foodie at heart and love putting my own research into food. I do think this company is doing an awesome job at branding.