I was recently asked to write a little something about my thoughts on doing QA and some questions about my experience. I was told to only write two sentences but I made three so that I could delete a paragraph later. I thought it would be ok to post them on my site. I hope that you get something out of reading it.
I'm a little bit of a perfectionist when it comes to my work. I find myself agonizing over details and often have multiple drafts and versions of emails, code examples and tutorials that I'm going to publish right after I change that one or two critical things that will make my point. This has been one of the reasons that I've been in Quality Assurance for as long as I have; I don't want people to run into problems.
When I first started working, I was put in charge of creating and automating test suites for an application development tool. The mission was to simulate how a user would create a smaller application using the different components and options available. I quickly learned that automation is only good if you have a clear goal of what you want to accomplish. When the automation breaks, something should happen other than changing the automation. Since then, I've worked with a variety of systems that reported an issue when something goes wrong, either a problem in the build system or a change in functionality.
A lot of companies are attempting to be agile and it is important that a QA engineer keep up to date with where the company wants to go with the product and have an idea for how people are actually going to be using it. I've been in a couple of situations where companies have been so focused on the features of the product, that they loose track of how everything is supposed to come together for the user. There can be difficulty in communicating (development in remote parts of the world or just don't see it the same way), but I feel that I've learned a lot of different ways of getting my point across (detailed bug reports, screenshots and videos) and understanding where other people are coming from.
In your current role, what is the end product? How do you test it?
In my current role, I test two products. One is a web portal that I test using selenium for regressions and manual testing following test plans that I've developed. The other is an IDE based off of eclipse which creates smaller applications that I do manual testing using test plans that I've created.
Do you have experience with imbedded software? Please describe?
No, the closest I've come to a truly imbedded system is when I was working at Intel and I had to run data through a simulation of the graphics chip.
What is your experience with programming? Languages? Years of experience? What have you programmed for?
I've always been active in keeping my skills up. I've been doing java for about 8 years now and use it mainly for creating examples for customers and components within my test plans. I've used objective-c for 4 years and use it for my own personal applications. I've been getting more and more into python for the last 2 years as a way to automate my mac, generate test data and small web services.
Have you been a member of a SCRUM team? Describe your sprints
Yes, most of them are related to creating and merging a major feature into the software. The team had to design and implement new features that could make the software unstable, I was in charge of merge conflicts and regression testing.
What is your experience with defect tracking systems. Where did you do this and what was the project?
I can't imagine a world where there isn't some kind of defect tracking system! I've used RedMine, Jira, Salesforce and a couple built by the the company (Intel and Apple). At Unify, we used Salesforce to track customer issues and information. If there was a real bug or enhancement, we'd put it into Jira or a terminal based bug tracker and each person was told to make sure that all the information needed for a bug was completely documented and were to place test artifacts. At Intel and Apple, we used a custom built solution that required us to put the examples and test artifacts on a shared drive. At Intel, we also had to schedule time on simulator in order to reproduce and debug problems. At Starview, we use RedMine to document and prioritize issues as they come up.
Describe your experience with source control systems
I've used CVS, RCS, Subversion, git and mercurial. At intel, we used subversion to branch and merge bug features and bug fixes. It was my primary duty to handle these merges. The most difficult merge had to do with over 25 files and thousands of lines of code. At Starview, they use mercurial and I use the command line to interact with that. I use git to check out source control from Github.
Describe your experience with automated testing tools. What have you used? Where? For how long? In what context.
The first tool that used was SilkTest as Unify, I used it for 2 years. At Intel, they had a system called Tambor that ran tests in an emulator (not to be confused with the simulator from earlier) part of the regression testing was running Tambor. Currently, I've been using Jenkins to start automated tasks when there is a change in source code. Jenkins kicks off tasks such as selenium to test how the application respond to user input.
What is your experience with integration test planning approaches and related experience with:
Usually, we add a test to the automated suite based off the the severity of the bug and all critical issues are added to the test plan for manual testing. Usually, this is broken down as use cases and there is a lot of over lap. For example, a new feature might be introduced (i.e when users click and hold a button a different event is triggered) and we have to make sure that the new functionality doesn't change how it used to work unexpectedly. I've had to write the plans that describe how it is supposed to be used and the code that would actually do it.
At my current position, we noticed a problem where things started to feel slower when using the application. We didn't have any real data on how to see if there was a problem other than noticing that our automation suite was taking longer to run. I took it upon myself to learn and implement jmeter and look at serval plugins for jenkins so that we can look at the performance of different test from one build to the other.
risk based testing?
I usually see this as part of regression testing because of time and resource limitations. If you are able to grow your suite of tests, you can focus on making sure that new features and bug fixes get higher priority for test creation. That being said, the new stuff is usually tested manually so that I can get a feel for what it is doing versus the documented requirements.
I'm pretty excited about the latest changes in MultiMarkdown Composer!
It's going to have some things like:
x^2 or x^2^
as well as
y~z or y~z~
It looks like it is showing the changes now.
Well, it seems like even Paula Deen has said it too. And it looks like a lot of people have a strong reaction to this. Her sponsor has dropped her and even the food network has severed her ties with her. "People" -I use the term loosely- are going back on forth on forums about how it's unfair to do this to her because some of the best selling rappers use the word like a particle of speech.
Personally, I think the outrage is too much. Doing this isn't helping race relations.
I'm not going to give you a history lesson on the N-word. Most people in America already know what it means. If you don't know what it means, take some time and watch Roots or Django Unchained.
All I can think about are my own experiences.
People yelling it out of cars
Most of the times that I've heard the N-word shouted at me was when I had someone drive past me and yell the word from a moving vehicle. I've had people throw things at me as they were doing it.
One instance was when our neighbor's boyfriend had yelled it at me after I had threatened to call the cops on him for yelling at his girlfriend.
None of these people knew anything about me other than I was black.
Children Yelling at Each Other
Sometimes, when I take my kids to the park I hear some of the younger kids say it to each other. Sometime to intimidate and anger each other and other times as a general insult.
I sometimes see how some of the children will gang up on the other and use it in hopes that the one being teased (usually a smaller kid and never the largest) will fight back.
I wonder if the kids are mimicking TV or just there life at home and feel sad for them that this is what they do when their parents are around.
I enjoy a lot of things, like music and movies. One of my favorite things to do is to watch a movie or listen to some stand up. In fact, some of my favorite comedians are Eddie Murphy, Chris Rock and Dave Chappelle.
All three of them have had jokes that can be considered derogatory.
When it comes to movies, a lot of the "black films" that I've seen in recent years have had the phrase "Nigga, please" or some kind of derivative.
I remember a couple times, when I've had "discussions" with my parents about how I don't "talk black".
Honestly, the most memorable use of the N-word that I've heard happened when I was at a NSBE conference back in 2003.
The speaker had painted an image of how a group of runaway slaves had been captured by some kind of bounty hunters and how some of them were going to be killed as an example. One of the runaways had just given birth and was pleading to be spared.
The slaver shot her dead.
Then stomped the baby.
And said "Nigger".
As if it was less than trash.
This was a powerful image, because it hit me that the N-word is the same word people would use to kill as to chide.
That makes no sense to me.
Do other races see it that bad
I don't know if other races, think about words used for them. And honestly, I've only know a couple. Most notably mexicans.
What are we going to do?
Well, we can all jump to arms and point fingers, but I doubt that is going to help anyone out in this situation.
Don't hide it
I feel we all need to be a little more open to the fact that people are going to say things that we don't like.
And honestly, there are people out there that even the worst words are too good for them.
It is up to all of us to be a little understanding and let people express themselves to a degree.
Otherwise, how are they going to learn? And how are we going to know?
We have a long way to go in race relations. I consider myself very lucky to be in America and even more lucky to be in California. I know we've made huge strides in equality and learning to live with other ethnic groups.
Still, there is more to this case than just the N-word. The lawsuit that brought this to light talks about other forms of harassment and I think that as human beings we should focus on that in regards to Paula Deen.
I wanted to write something today. That's the whole reason for this post. My mind is kind of wandering and I wanted to put some of those thoughts someplace where I can look at them again.
The Dog Smells
We've had our dog, Puddles, for almost a year and the first thing that comes to mind when I think about him is that he smells. He really, really smells.
From the very first moment that we had him, we noticed that he had a certain odor about him.
We had hoped that it was only because he was being rescued, but despite the regular bathing, the special shampoos and changes in diet…
He still smells.
Tonight, my wife told me that our daughter has an exclusive girl club in her kindergarten class that she isn't allowed to be in. This club has one particular girl in it that is being mean to my daughter. She doesn't like being there .
It's something that no parent wants to hear, but should listen to now more than ever. The suicide rate for girls has increased to an alarming level with articles and news clips talking about how girls are being ambushed and beaten by their peers. Then, to add more humiliation, someone records it and puts it on the internet.
Some would say that it's just girls being mean, but I've been bullied and I know how these things can affect you. I only pray that I can help my daughter find the strength that she needs in order to get past this.
I've been making little changes with my life in order to get more done instead of just talking about it. One of the changes that I've done is to become more committed to the things that I put into my calendar after hearing a couple great quotes from Merlin Mann's Back to Work podcast.
"A calendar is a map of your time." - Merlin Mann
"Don't let a calendar run your life, use a calendar to help you run your life." - Merlin Mann
It seemed like perfect timing that at the same time that I'm putting more effort into getting things together, one of flagship calendar applications - BusyCal - came out with a new version.
In the effort to become more organized, I decided that it would be easier on me to start off by placing recurring events and events that I know that I will certainly be attending. The only problem being that I need to review my calendar to make sure that it is up to date and that all the activities on my computer are reflected on the family calendar hanging on the wall of the kitchen. I'm slowly building up the habit of making sure that the two are in sync and in a way this works as a little review of what is going on in my life for the purpose of time management. Another benefit is that I don't commit to a lot of different things because of the hassle it would take to make sure that I'm available at a certain time.
In a way, this has improved how I function in my day to day life because I don't have as much stress about missing appointments. The stress I do have is generated because of my desire to do more things at once. The problem is that I'm getting a better idea of what I want/should be doing and it is kind of scary to see all the different things that are vying for my attention. I've been using OmniFocus to help me manage all the projects and I think I've moved a little bit past just pushing things around and doing busy work. I'm learning where things are getting lost and I think thats one of the key things you need to find if you really want to improve your life.
Ultimately, this has really shown me that there isn't a silver bullet to being productive and getting things done. It's a bunch of little bullets being fired from the gun called willpower. And I am starting to trust in myself to follow the plan that I have set out. I'm still working on making sure that I do some kind of as often as possible and get things out of my inbox.
But that leads us back to the main point of this post.
Why did/didn't buy BusyCal 2?
Honestly, I'm on a budget. When you're constantly checking your balance to make sure that you have enough for food/rent/kids/spouse, it is hard to justify $30.
The other reason is that I already have the first version of BusyCal and fantastical. Both of these products provide me with all the calendar information that I need at this point. For the current date and to add things, I use fantastical. When it comes to a wider view, BusyCal does that way better that iCal in the sense that it isn't a nightmare to look at.
If I had the money, I'd buy the new version as it looks really nice and company is focused on bringing a great mac experience.
I've been thinking about email a lot more than I would like to during the last couple of days due to my latest attempt to have a GTD based workflow and eliminate some of the friction in my life.
I know for a fact that email is not really the problem when it comes to managing my life and the thoughts about how to handle the incoming maybe just my minds way of just "moving the food around on my plate".
This has been a problem for me every time that I get organized. I've been blessed to have two computers and it seems like a lot of trouble trying to get the two to have the same set up because I share one with the rest of the family and the other is my "work" computer that has all the latest do dads and what nots in it.
Right now, I'm at a crossroads when it comes to my feelings about Mail.app and email/Gmail. I have multiple account (3 gmail accounts and 1 iCloud/me.com/MobileMe). I feel that if I can't control this kind of input into my life than I'm not going to be able to trust any kind of system that I set up. So made a little wish list of all the things that I need from an email client.
- Keyboard Shortcuts
- IMAP/POP for when I "eventually" leave gmail.
- Scriptable/extendable - I want an easy way to send a link to a message to OmniFocus
- Stable - I want the app to do all of this without using plug-ins.
So where does this put me? Do I take the time to find that "Perfect" email client? Do I go back to Mail.app attempt to make it fit my imaginary workflow?
After writing all this, I think I'm just wasting my time with a first world problem.
I really like doing a brain dump/collection in the GTD sense. It gives me a feeling that I can actually control it all. That I'm going to rediscover every last commitment that I've got to make and then be able to make my world just a little bit better. I think that I've finally reached the point when I'm no longer running from all my insecurities.
Well after having nightmares about it for the last couple of nights, I can now rest easy now that the pancake breakfast is over.
And what a breakfast it was, at first things were moving really slowly as the people trickled two and three at a time and I was actually afraid that we wouldn't be able to make enough money to break even with the costs of all the supplies.
And then the boom dropped.
I found myself constantly mixing batter to keep up with a constant stream of hungry customers. In fact, I heard that there was a story of people who went through the line 3 times.
Tomorrow, I’m going to be leading the parents of my daughter’s kindergarten class in our first and only fundraiser.
The (in)famous pancake breakfast.
This was an activity that they told us about at the very beginning of the school year (6 months ago) and I’ve honestly have been kind of dreading that this day would come.
It’s not so much volunteering to do it as it is getting the parents to help out. Although our school has a policy where every parent is required to volunteer 40 hours over the entire school year or donate 20 bucks per hour, I feel that not everyone is able to jump on board and help support us with this.
I’m not angry and I understand that not everyone can help this week, but since I’m the one who is responsible for this if it fails...
I’m just happy that the class that my daughter is in has a lot of top notch parents who really want this to succeed and understand that even the little bit of help can go a long way.
Especially if you tell me about it so I don’t go crazy thinking about what could go wrong.
One thing of personal note is that all the stress of the pancake breakfast has gotten me back in front of the computer to write again. There have been a number of moments that I’ve been wishing for my journal and tonight is one of them.