Categories
Marketing Software Testing

Personal Branding

Warning: This blog contains promotional content. Personal branding is all about that, what else did you expect?

We had a pretty awesome CV clinic for Sydney Testers yesterday held at Opus Recruitment Solutions. Barry Smith and Mike Hollowbread specialise in recruitment for software testers and went through their pointers for CVs. These guys see a lot of CVs and had built up years of experience in this area. They had tons of pointers and have put together some awesome resources with this advice:

Opus CV Pointers

This event completely booked out and the waiting list filled out to double the event capacity within 24 hours of the announcement. If you missed out don’t worry. We are doing a month of these events. Next week will be at Four Corners Recruitment. This event is already full but please join the waitlist. We had a dozen people change their RSVP at the last minute with the last one which opened up the event for half the people on the wait list. If you want some inspiration for your CV I’ve blogged about the evolution of mine before.

Have a good LinkedIn Photo

My LinkedIn Photo

My LinkedIn profile came up in Barry and Mike’s talk as an example of a good LinkedIn photo. I’d like to dig into more detail the planning that went behind that photo in this blog post. I used a professional photography service called Snappr. I paid a photographer $59 for a 2 hour photoshoot with the soul purpose of getting a good LinkedIn photo. They now charge $75 for this service. Snappr is a Sydney based startup that’s making the news for disrupting the photography industry and being successful in funding rounds. I quite enjoyed the photoshoot and I had a bit of fun with it too:

Some of my favourite photos from the photoshoot

For the photoshoot we walked around Pyrmont and the Star Casino looking for good backdrops. Maybe you can recognise a few of the locations? Some of the photos didn’t come out that great but it was still fun. You should check out Snappr’s LinkedIn Photo analyser, it’s a fun way to analyse your photo using an algorithm. What score did you get?

Hair and Makeup

The thing is, the photographer was not the only thing I paid for leading up to this shoot. It was my birthday, I decided to treat myself to a pampering. So I also got my hair and makeup professionally done. I think that cost me around $150 at CatWalk hair and beauty in Gladesville. And then there’s the outfit:

I bought the suit from the Oxford Factory Outlet in Alexandria for roughly $200. The shoes were from Paul Dane; $90. The tie was an impulse purchase from an antique suit shop in Melbourne. I think it cost me $140 but I love that tie. It’s so groovy. I didn’t purchase this outfit just for this shoot, I will wear my suit on the odd occasion. You don’t have to spend what I did on this shoot but I’m trying to highlight the planning that went into that one smiling photo.

Tailored Suits

If I was to get another photoshoot, I’d probably order a tailored suit from Luxury Plus Suits, they do a basic suit for $349. They will measure you here in Sydney and it’ll get made in China. I actually did get one of their suits but it was just before my weight loss surgery. I’ve now lost 50kg since I bought that suit so it’s safe to say it doesn’t fit me any more.

Corporate branding

There’s two testing companies that I love the branding for; Ministry of Testing and House of Test. I love the sense of Community that Ministry of Testing is working on building. They even inspire community members to get tattoos of their logo:

Rockstar Testers

House of Test literally market themselves as rock star testers. If I ever move to Europe, this is the company that I’d be begging to join. I’ll tell you a secret. There’s a small community of context driven testers out there (House of test) are one such group. Mentioning context driven testing is like secret handshake material that gets you on top of interview list with these people.

Do you want to improve your Context Driven Testing? Do the Rapid Software Testing course by James Bach at the end of August. I consider James Bach to be the original rockstar tester. If I ever saw a CV with his course on it, it would be at the top of my interview pile, no questions asked. It is some of the best training any tester worth their salt can do.

You will occasional see this secret handshake material mentioned in Job ads too; like this one for a Quality Coach role at Campaign Monitor. Campaign Monitor is an awesome company to work for; awesome people, awesome perks (free breakfast and lunch) and awesome views of Sydney.

Taking Personal Branding to the next level

Edward Zia is an example of someone in my network who has taken personal branding to the next level. He even has a caricature made up with his facial birthmark as part of his branding:

If you don’t have a personal brand, people won’t want to do business with you. What have you done with your own personal branding before? Have you ever made a bad investment?

Categories
Uncategorized

White people can’t experience racism

After seeing Sarah Jeong’s controversy explode over twitter, and reading the general response of white people can’t experience racism, I’m going to attempt to reflect on my own biases and thinking and attempt to use my white privilege to talk about hard things.

Australia is pretty racist

I have an almost impossible chance of experiencing the same levels of systemic racism as my neighbors of color do. Aboriginals are some of the most incarcerated people in the world, they live on average 10 years shorter and generally have a shittier time with life. The didn’t win the genetic lottery to be able to thrive in today’s society. Australia is an extremely racist country to live in. Osman Faruqi received a lot of racial hate for having an opinion about the plastic bag ban in NSW which motivated this tweet:

https://twitter.com/oz_f/status/1024435404429123586

I am definitely speaking from my high white horse of privilege here. Reading up on this topic, I discovered that people tend to conflate experiencing prejudiced and racism. The main difference being that racism is systemic, race is also a human made idea made to benefit 1 group of people over another group. For further reading, here is an article from the Huffington Post on 4 reverse racism myths that need to stop.

Race is a human made construct

It doesn’t exist biologically. For me race means culture. But it can also be connected to location, language and shared experiences. Race has a disturbing history and it was constructed to help the colonizers of Europe to justify their superiority. White Racism is a course that’s received a bit of backlash, I guess some people’s ego’s are so delicate that they can’t allow the study of racism from a sociological, cultural and historical point of view.

Sexism and Foreigner Analogy

I mostly agree with the fact that most white people can’t experience racism but that doesn’t mean it always has to apply in every case. Being a tester, I’m drawn to the edge cases. Saying, “white people can’t experience racism”, to make an analogy, is like saying men can’t experience sexism. Now, in the general sense most men probably won’t experience the same levels of systemic disadvantage solely based on their gender as women do. But there are a few cases were men are at a disadvantage; going through the family court system, receiving support for mental health and seeking shorter prison sentences are the main two I can think of. These are systems that unfairly punish men based on something out of their control; their gender. (1)

Say I wanted to migrate to Japan for this example. I’m definitely a foreigner. It’s also a country where it is really hard for foreigners to integrate socially and to obtain Japanese citizenship. Say I wanted to buy a house there, it would be pretty hard without citizenship. You could say it’s almost a systemic disadvantage. Japan is slowly changing but I would likely experience just a little bit of racism trying to integrate there. It wouldn’t be anything like the experiences of some of you experience but having pale pasty skin doesn’t exclude me from experiencing systemic prejudice.

Every month is white history month

We don’t need a white history month because every month is white history month. Stop getting your knickers in a twist because someone wants to celebrate something that doesn’t include you at it’s centre. Let’s all just get behind the huge diverse cultures we come from. If you neighbours wants to do something to celebrate their culture, just be a decent human being and support them in their efforts.

Please call me racist

By pointing out how I contribute and benefit from our racialized society you will help me be a better person and help me in my attempt to change my biases to make our society just a little less sucky. We are all just a little bit racist but I am trying to use my white privilege to talk about hard topics.

(1) Note on references

In trying to find some evidence to support my views in (1). It was harder than I expected. There’s this HuffingtonPost article on dispelling the myth fathers face in the court and this The Telegraph article on how unfair the “success” metric is for Dad’s going through the family court system. I’m of the opinion that there is nothing legally that puts men at a disadvantage but I believe societal influences favor women. I know of anecdotes where the mother has lied, said the husband was abusive and it’s made their battles in being good Dad’s all the much harder. I am acknowledging that I’m considering anecdotal evidence above statistical evidence which is a fallacy/cognitive bias. Do you have better resources than I do? At the end of the day nothing is black and white, it’s all grey.

Categories
Technology

Getting started with GCloud, MySQL and the Command line

I’ve put together this guide for how I connect to my MySQL instance using google cloud after this tweet from @ddiversion:

Google cloud has a command line interface from the website when you navigate to your project:

gcloud overview

Google have put together some awesome tutorials for getting started with Google Cloud, here is their guide for setting up a MySQL database. I’m just going to go over how I connect to it in this tutorial.

There are different ways to access the google cloud console:

accessing google cloud console

Once the console is up, you will be presented with this view with thew console down in the bottom of your browser:

google cloud console

To connect to my SQL instance, I type in:

gcloud sql connect bog-logger-dev-database --user=root

And type in the password I’ve set up for my root user.

connectin g to database

connected

Then I can type commands like

show databases;

use bogs_logged_dev_database;

show tables;

select * from bogs_logged_table;

show tables

Previously I had created this table and inserted data using thew following commands:

CREATE TABLE bogs_logged_table( time DATETIME NOT NULL, device_uuid VARCHAR(36) NOT NULL, type INT(1), notes VARCHAR(140) );

INSERT INTO bogs_logged_table(time, device_uuid, type) VALUES(NOW(), "d3ad458d-eca1-4cf3-be34-fb10facd5992", 4);

INSERT INTO bogs_logged_table(time, device_uuid, type, notes) VALUES(NOW(), "d3ad458d-eca1-4cf3-be34-fb10facd5992", 2, "very painful, a little bit of blood");

INSERT INTO bogs_logged_table(time, device_uuid, notes) VALUES(NOW(), "d3ad458d-eca1-4cf3-be34-fb10facd5992", "tried to poo for half an hour");

So when I do a

select * from bogs_logged_table;

mysql query example

SSH

If you aren’t using Google Cloud there is a guide here that starts with an SSH command. The general structure of an SSH command is

ssh user@location

Location could be anything like an IP address (e.g. 192.168.1.2 for a locally setup maching) to a host name like test.environment.com, SSH will ask you to put in the password and once you are in and assuming MySQL is installed you can go your merry way.

What are your favourite resources for learning MySQL from the command line? MySQL command line help docs is probably the next step from here.

Categories
Software Testing Technology

So you want to become more technical?

Here is my 5 step guide for becoming more technical without learning to code. No matter what your background, if you follow these steps you will be more hands on technical than I was when I first graduated from Computer Science at Uni.

NOTE: If you are a software tester looking to get more technical DO NOT start with automation. Automation testing tools change as often as the seasons. These 5 steps have served me better than any automation framework has. If you are looking to get into automation, starting with some basic web developer skills could help if you want to learn UI automation via Selenium (but Javascript automation like protractor is hotter right now).

1. Get comfortable with the command line

This is so fundamental. I use this skill nearly every single day without even thinking about it. E.g. my morning starts out with checking out the latest code for our android app using a git command from the command line. Every other step proposed in this guide can all be done from the command line. You can even do all of your emailing from the command line, this blew my mind when I discovered this. If you’d like to learn more, you should check out this medium blog post on 11 console commands.

I’m biased towards using a linux/unix based system (Ubuntu, Android and macOS are the main ones I use). You can learn this on windows but the transition from windows to linux/unix is hard, for example the slashes for file directories are the WRONG WAY in window.

screenshot of a terminal session on macOS
You can access the command line with an application called “Terminal” on macOS. Here is an example where I list the files on my Desktop with the command LS. I can see all of the screenshots that I’ve captured for testing. I have my terminal set up in bright green font because it makes me feel more like a hardcore hacker. Want to feel like a hacker? go to http://hackertyper.com/ and start typing gibberish.

e.g. To change the directory linux/unix

cd /usr/home/some/folder

that just feels nice, natural, it’s also the same direction as the slashes in your browser address bar. Just look up ^ ^.

For windows its

CD C:\user\some\folder

GARRH I feel like pulling out my hair, why do you do this to me windows?

If you want to explore linux/unix commands on windows you can:

Let me tell you a secret, I didn’t learn this skill until I was 2 years into my testing career when I started working at Tyro and every developer computer was running Ubuntu. The first thing I learned was how to CAT logs for a test environment. I studied computer science, you’d think I’d learn this skill there but nope I breezed through uni without ever learning how to change the directory from the command line.

You don’t need to memorize all of the linux commands but learning how to change a directory, make a file, move that file, edit a file and search a file (probably by using a grep pipeline command) is all you need to get started. Learning how to read a help file to understand all of those pesky characters will also help. I found help files intimidating. Heck I still find them intimidating and I prefer to google an example than to try to make sense of a help file.

2. Learn Git

Now you don’t need to know how to code or have a coding project idea to learn this. For Example, you can just put together a wiki of your favorite resources. Like my amazing colleague Paul Maxwell Walters who put together this list of testing learning resources. You could easily learn how to add a bunch of Testers twitter handles to that project, Paul would appreciate the help. Here are some resources for learning git. You just need to learn a few basic git commands (PULL, CHECKOUT, COMMIT, BRANCH are the ones I use 80% of the time),

Here is another secret; I don’t really understand git, I just know enough in how to use it. If I get stuck I always fall back onto a git hard reset to head but I always have to google the structure of that command. Stack overflow is your friend.

3. Learn a query language

Learning how to construct SQL queries was one of the first technical skills I picked up on the job and I have used it in every single role since. Again I didn’t learn this at uni. It was hands on experience that taught me this. MySQL is a common query language (it’s open source too). You can also construct MySQL statements from the command line. E.G. I’m working on a poo diary app to teach myself mobile development and google cloud. I have a MySQL test database set up and when I query the database from the command line this is what I get back:

mysql query example

Now you don’t need to learn everything, just learning how to do a simple SELECT WHERE {Conditions} will get you far. I use this type of query 80% of the time. Maybe learning how to update an entry and how to do a query across multiple tables will also help. You don’t need to be a database master. Here is a follow up blog post on this topic.

4. Learn how the internet works

I’m talking about learning about API’s, REST requests and JSON payloads. You should learn how network requests work; how servers talk to each other using the internet. Again you can learn this by using the command line and googleing a few resources. If you are exploring a new API, learning how to construct a simple GET request using a CURL command will get you far. Learning how to do a GET, POST or a DELETE request will be 80% of any API testing tool out there (e.g. Swagger, restlet or postman).

Learning about how requests work will naturally open up the door to using performance testing tools or security testing tools. Learning this is a good foundation for more technical testing practices. You can also use developer debugging tools for browsers; Firefox & Chrome to monitor network traffic or to explore API’s. If you can mostly understand what this stack overflow question is about then you already have a good foundation here. Joe Colantonio has an awesome resource which has a section for learning about API’s right up the top.

5. Start a learning project

I often start new projects with the focus on learning. I wanted to learn some arduino skills, so I researched open source robots and built a tapster robot which can be used for mobile testing:

Now, it’s nearly impossible to find a practical use case for Tappy McTapFace, but building this robot has helped me learn a great deal and I’ve been able to demo this robot all over the world. That’s pretty cool.

My next project is a poo diary app. I want to learn how to do mobile app development, how to integrate mobile apps with google cloud/firebase and how to build an API in Java that talks to a MySQL database backend. The app itself is a little silly (some would say it’s crap – pun intended) but I’m using it as a learning tool. I’m mostly just following tutorials on the internet and it’s glorified copy paste work with a little bit of thinking. However with the 4 foundations listed here and studying Java at uni it doesn’t seem all that hard.

Do you consider yourself to be technical? What’s your next step in improving your technical skills?