1

Permission to Fail

by Angela 20. March 2014 18:04

Occasionally something happens to me that I feel the need to share. OK it’s more than occasionally, if you follow me on Twitter you probably know a lot more about me than you ever wanted to. But this was particularly noteworthy. Mostly because it has reinforced something I’d always heard but never experienced myself before.  Well, I probably had but not quite in THIS way. Today, I was given permission to fail.

I’m one of those people who wants to make everyone happy, and for everyone to like me. I know, isn’t that true of everyone? But it is an especially big part of my personality, and it bleeds into my work-life in many ways, not always for the better.  I strive to focus on the “big picture” while keeping an eye on the short term goals, but I often obsess too much about all of the possible outcomes of my actions/decisions and fear something could go wrong. This is true both professionally, and personally. Seriously, I am shocked I ever settled on fixtures for the guest bathroom because “oh my goodness what if I end up hating them in 5 years and now I am locked into those towel bars FOREVER!” The bigger failure in these  types of situations, is to take the safer route, to compromise on what is really important to minimize the risk of all possible negative outcomes, and then short change yourself and/or your client. And heck, usually the worst case scenario of making a wrong choice is a little lost time, some rework, and a valuable lesson.

My point is that you can’t be so hung up on avoiding potential failures that you constantly settle for “safe” paths that may meet your immediate needs and avoid any potential issues, but that in the long term turn out to be a mediocre solution at best.  It seems so obvious in a microcosm - if you’re going to fail, “fail fast” and do better next time. Right? But often times when I’m dealing with other areas of my life, I fail to heed the advice I so often give other people every day at work. So back to my original point.

I was getting particularly anxious about an upcoming meeting. I was definitely over-thinking it, to the point where I felt almost too paralyzed to make a choice about how to handle things, for fear of failure. Somewhere deep in my brain I’d decided that if I made one bad decision, said one thing that was not absolutely perfect, that I’d let my boss down, myself down, I’d ruin everything we had worked for, and as an added bonus I’ve put a permanent blemish on the reputation of all WOMEN in IT to boot ::cue dramatic music::  I’d think I was crazy to do this to myself if so many other people that I have talked to recently didn’t struggle through the same feelings themselves.

But then it happened. I was relaying some of these fears to my boss, he listened patiently and then said to me “what’s the worst thing that can happen? We lose this deal, we learn from it, we move on, we do better next time”. I’m pretty sure I sat in stunned silence. Don’t get me wrong, I’m not actually shocked he said it. But it was like an epiphany, and I felt a little dumb for feeling like it was an epiphany.  It’s so obvious. But sometimes I need to not only be reminded of things like this, but I need to hear it out loud from someone like my boss for them to really stick.

I think giving ourselves permission to fail can be critical to our own development, personally and professionally.  So try it sometime, and be sure to give someone else permission to fail if you see them sinking into a tar pit of possibilities rather than making an educated guess and trying it out. Your coworker, your direct report, your significant other, heck even your kids…  You won’t regret it.

Tags:

career | failure | personal growth | XKCD

0

Data Driving a Web Service Performance Test in VS 2013

by Angela 20. March 2014 17:35

Now, I’ll admit that all of this is technically documented on this page on MSDN, but it isn’t super obvious sometimes exactly what something should look like when it is done. And for non-technical folks, having a nice handy tutorial with images can be a huge help. I have a few client folks right now that needed something like this, so rather than only share it with them I thought I would post this on-line for everyone’s benefit.  ANYONE can follow along with this, I am using a public web service. I specifically was doing this on VS 2013, but this should on any version back to 2005, so long as it is either Ultimate or Team Suite.  I am assuming you already have some basic knowledge of web performance testing, but if you don’t check out this exercise first.

First identify a web service you would like to test, and choose and operation. You could also wrote your own web service, I’m not feeling THAT ambitious today. I am using a public Weather service and the “GetCityForecastByZip” operation as seen below:image

1) Create an empty web performance test, so immediately stop recording when the recording tool starts up in the browser.

image

2) Let Visual Studio resume. Add a web service request to the empty web performance test:

image

3) Enter the URL for the web service via the Properties panel (“http://wsf.cdyne.com/WeatherWS/Weather.asmx”). It should look like this:

image

4) Grab the Soap Body from the Web Service page, it should look like this:

image

5) Enter “text/xml” for content type and place the soap body from your clipboard in the String body of the web service via the Properties pane. It should look like this:

image

6) Add a header to the service request:

image

7) Grab the SoapAction from the Web Service page:

image

8) In the Properties pane, add a key value pair of “SoapAction”, and the SoapAction from your clipboard. It should look like this:

image

9) Now the basics are configured, but we want to be able to pass in a zip code. To keep things easy for the first pass, let’s just hard code that sucker. I know, bad practice, but we’ll change it soon. Open the StringBody and replace the parameter with a value:

image

Now run the test and see weather for my town, it’s quite lovely today :)

image

 

But this is not really exciting, we should data drive this.  Let’s create a data source with some zip codes to truly exercise this service.

1) Add a few rows to an excel sheet with valid and even invalid values, use a column header of Zip and save as CSV. Save someplace easy like the desktop, you’ll need to refer to it later:

image

2) Add a data source to your web service test:

image

3) Use the data source wizard to choose the CSV file that you just created, and add it to your solution. We could point to a shared repository instead, but for now let’s keep it simple and add it to our project when you are prompted to do so.

image

You should now see something similar to this:

image

4) Now we want to data drive the the Zip code rather than use a single hard coded value. To do this, we need to embed a reference to the data source inside the String Body. So where before you just hard-coded “60304” we now add a reference to the Zip field in the data source we imported with the following syntax {{DataSourceName.TableName.ColumnName}}. It should look like this:

image

5) Now most likely your test settings are still defaulted to running web performance tests just once. Let’s open your testsettings and make sure we spin through every row in the data source:

image

6) Now go to the Web Test section, and choose “One run per data source row”. Your settings should look similar to this:

image

7) Run the test again. It should now run once for each row, returning an appropriate response for each.

image

 

Huzzah! Super easy right? Now give it a try yourself…

0

Come Join Polaris at CCC 2014 on April 26th

by Angela 10. March 2014 14:53

So if you haven’t been to Chicago Code Camp yet, you should! I know, I know, there are SO MANY conferences in the Chicago area, how do you choose? It’s true, there are a lot of good ones but here are some benefits to CCC:

a) Because it is community- driven, there is some amazing sessions, including a few sessions on TFS and agile. Here are the ones I am hoping to attend (to be fair I am GIVING two of those talks):

 

Other great sessions cover a wide variety of topics like Windows 8, TypeScript, PowerShell, Unity 3D and Azure, JavaScript and Elixir.

b) it’s FREE for a full day of techie goodness, lunch included. Yeah, you read that correctly, FREE.

c) it’s super easy to get to. It’s right off of 294 and the parking is free.

d) it’s on a Saturday so you don’t even have to miss work! OK, so maybe you don’t see this as an advantage, but I do.

e) Polaris Solutions is a Platinum sponsor and will have a booth. So stop by, say hi, and pick up one of our sweet little booklets on Agile practices.

 

So register now before it sells out, and check out the full list of sessions here: http://www.chicagocodecamp.com/Public/Sessions

0

An Upgrade is a Beautiful Thing, Especially When It’s TFS 2013 Update 2

by Angela 6. March 2014 18:09

This is one of my favorite dialogs :)

image

Not RTM of course, I am not THAT cool. Hopefully that is coming soon because not everyone has the freedom to install pre-release software and this one is CHOCK FULL o’ goodness. I was hoping to upgrade my company’s server last weekend, but thanks to Comcast’s unreliability I ended up barely getting it downloaded, and then upgraded my personal on-premise TFS instance. And I’m loving all the new stuff! Here are just a few of my favorite things ::cue Julie Andrews!::

1) Tags.  Tags have always been a nifty way to add useful metadata to work items so they could be easily identified, sorted, and filtered on the backlog. But everyone, EVERYONE, wanted to be able to query on tags.  Also, they wanted to work with tags outside of the WebUI.  Now you can! (requires VS 2013.w2 as well)

image

image

 

2) Charts. I *love* the work item charts as you may have figured out from my previous post on them.  Such a simple and easy to learn way to visually slice and dice your shared work item query results. My customers love them too! Another frequent request is “why can’t we pin these to our team dashboard?”  Well, guess what, that is an option too! So now that Team home page just got EVEN MORE useful :)  Keep in mind you can only pin charts based on the types of queries you can make a team favorite, so SHARED queries.  Also notice that now to pin something to the team homepage, you have a new option:

image

image

3) Test Plan printing. I know right?! Before your only option was Test Scribe and while it was handy, and free, it was not really customizable. Now from a quick click from the Test Hub on the web, you can request a “hard copy” of Test Plan artifacts for sharing with others via email, or as HTML. Sweet huh? And notice all the links, so an active TFS user could jump right into MTM to see or edit the items he is reading about.

image

image

image

image

There is a lot more than this, but it’s already a pretty long blog post.  So check out Brian’s blog post and the MSDN download page for the CTP to find out more about the new features available in TFS 2013 Update 2.

Powered by BlogEngine.NET 2.7.0.0
Original Design by Laptop Geek, Adapted by onesoft