The fight from the trenches

In war, trenches are a fortified position soldiers use to defend against enemy attacks. They help keep soldiers safer than they would be out in the open, making enemy attacks much easier to fend off. The problem with trenches is they don’t allow progress. You can’t just move a trench, you have to get out, move forward, and build another one. Software developers often have a similar, albeit less deadly, problem. »

A night of firsts: VS2010, Dynamics, Python

Tonight, I installed Visual Studio 2010 beta 1 for the first time. I know I am late to the game, but I had to give it a whirl since I found some free time this afternoon. One feature of .NET 4.0 I wanted to try out was the dynamic keyword with Python scripting. So, here is my first hello world program using dynamic, with the help of this walk-through. class HelloWorldDemo: def run(self): return "hello world" Here is the C# code needed to run it. »

Interview/Resume Tip: Depth

Resumes are a necessary evil. In no way can they fully represent a person’s qualifications, but they need to come close. Resumes contain a list of skills and experiences. As an interviewer, I use a resume as the guidebook on interviewing someone. So it is important to put things that matter on there. One key goal I have in an interview is to talk in depth on some project, concept, or technology that I am familiar with. »

Scrum Idea: Volatility Factor

Over the past few months, I have been working a lot on release planning for my teams. Not only have I seen the light on its importance, but it has also helped me realize problems with my own prioritization. Each time I change my release roadmap based on additions/modifications to the backlog, I realize how hard planning for the future is. My solution, the Volatility Factor. Here is the scenario. You have a team with a velocity of 15. »

Brian Hartsock on #Scrum,

Scrum Tip: Get outside

Last week, Rex came to me asking if the Webmail Apps team could have their sprint planning at a park here in Blacksburg. I thought it was a great idea, and yesterday we had an awesome morning of planning, followed by some grilling. Lately, the project management team has been pushing a lot more of these type outings. In my opinion, it stems from the fact that developers hate meetings. Even though sprint planning meetings are needed and important, teams hate sitting in some conference room for hours. »

Brian Hartsock on #Scrum,

Scrum Tip: Listen to Rex

Our company blog, Rackspace Email & App’s blog, just had a post from Rex. It’s all about Scrum here at Rackspace (yes, I no longer respond to Mailtrust since our recent name change). I encourage you all to follow the Rackspace Email and Apps blog (yes, shameless self promotion) for any tips from our project management team. Rex is the PM for all my software development teams and all my scrum posts are either stolen or inspired by interactions with him and those teams. »

Brian Hartsock on #Scrum,

Scrum Tip: Be wary of how you prioritize

Being a product owner is hard. Making sure you achieve the proper balance of tasks across different stake holders in a product isn’t easy. Support and operations need certain enhancements that make servicing the customer easier, while the business needs to advance with new features as well, and the designer wants to make the user twice as happy by tweaking a few things. All good things, that require good prioritization in order to make a successful product. »

Brian Hartsock on #Scrum,

Scrum Tip: Sprint length is a variable

One of the nice things about Scrum is the lack of rules. There aren’t a lot. And the rules that are given, should be changed over time. Scrum, like development, is an iterative process of continual improvement. A very important part of the Scrum process is sprint length. If you’re thinking I am going to tell you an ideal sprint length, you are wrong. My Scrum tip of the day is just to make sure you’re adjusting sprint length based on many different factors. »

Brian Hartsock on #Scrum,

Death of SQL Injection, long live SQL Injection

I very rarely hear people talking about SQL injection anymore. Just a few years ago, it was a very common problem that all developers needed to understand, in and out. My guess is, the prevalence of database abstraction layers in all languages have helped remove this problem from most developers minds. Hibernate, ActiveRecord, Zend_DB, and all the other frameworks in nearly every language are used much more than hand-written queries. The death of SQL injection. »