It has been a while

November 3, 2016

Wow, has it been a while since I’ve posted.  I’m going to get back to my passions of Agile, Development and Leadership.  First, I’m enjoying my role as a Sr. Director of Engineering at Vin Solutions.  When I’m not working at Vin, I’m usually work on MarbleSpark or making time to get out and cycle.

So, hold tight, I’m hoping to find the time to get back to my blog.  No promises Smile


Visual Studio 2012–Find All References Issue

November 18, 2013

Hopefully this will help someone that’s experiencing the same issues that I’ve been battling.  Recently, “Find All References” started taking forever to complete; like 45 seconds to minutes.  I recently upgraded my laptop from 7200 rpm drive to SSD, so I was seriously perplexed.  Everything else was SUPER fast.  And a check of the event logs on my laptop turned up nothing, nadda, zippo.


Run VS 2012 as administrator.  Yup, that fixed ALL of my issues.


Besides “Find All References” issues, I also started getting weird errors on ASPX or ASCX pages about not able to locate net.pipe//localhost/…  I noticed squiggles underneath the <%@Page directive and <asp: tags.  So, a little time on various search engines and too many hours wasted trying fruitless change this and try that, the solution.


So here’s the easy way to force VS 2012 to always run as an administrator.  And you will have to click “Yes” each time you start it, but that’s a pretty minor annoyance.

  1. Right click VS and select Properties props
  2. Select “Compatibility” and check “Run the program as an administrator”. 
    Run as Admin

That’s it.  Hopefully this saves you some of the headaches that I encountered.

Agile and offshore

July 6, 2013

Like most development shops, we operate a mixed team of onshore and offshore members.  I’m fortunate to have a very skilled offshore team and excellent working relations with their management and engineers.  Like most agile teams, we’ve struggled with how to maximize our agility and interactions when dealing with an 11 – 12 hour time delay.  For now, I’ve opted to have one team that combines both onshore and offshore.  Long-term, I may separate the teams to maximize efficiency, but for now, I’m finding that I really like the mixed team.


The most important thing that we’ve done is create open and honest communications.  When we selected our offshore partner, our #1 priority was for them was to hire outspoken individuals, which is counter-cultural to many people in India.  We treat their opinion with the same respect that we treat the onshore teams’ opinion.  Trust, trust, trust is the key for building the strong team relationship.

For each story or bug being worked offshore, we have a buddy system, where there’s an onshore analyst and engineer that are paired/buddied up with the offshore engineer.  The offshore person knows who to contact for any questions.  This has created an environment where onshore and offshore people work directly with each other.  I wanted to avoid the man-in-the-middle syndrome that’s prevalent in most offshore engagements.  My experience is that offshore teams that want to hide their teams have something to hide.

It has taken time for both teams to get comfortable with each other.  Yup, we went through the forming, storming and norming stages.  Early on, we had a Skype session so both teams could see each other and just get to know one another.  This was a huge hit and was a major catalyst in building trust.


Our SCRUM/Agile process is simple; we follow scrum. 

For the daily stand-ups, the offshore team has one delegate per week that attends the call on behalf of the entire team.  This allows them to be part of the scrum and if they have questions that need immediate attention, the onshore team immediately calls or Skypes them after stand-up.

Sprint Planning has been tougher.  We’ve taken a slightly different approach.  The onshore team participates in the meetings and our offshore liaison from Chicago attends either in person or via Skype.  Given the duration of sprint planning, it just isn’t practical to to engage the offshore team.  We’ve found this to be a workable solution.

For retrospectives, we have the offshore team send us their lists of what’s good, what’ can be improved, what they like and what they don’t like.  We have them do this anonymously so they don’t feel like they are being targeted.  I think we’ve got a lot to improve here and I don’t feel like we’ve got this optimized.  Our Chicago liaison attends via Skype or phone and acts as the voice of offshore.  We forget that he’s not an employee and we “abuse” him the same as the rest of the team!

For Demos, we don’t have them participate right now.  Not because we haven’t figured out a good way, but we’re just not good at this yet.  I’m just now getting my team to understand the value of the demo and getting the business to understand it as well.


For tools, we’ve kept it simple:

  1. Conference calls
  2. Skype, and starting to investigate Google Hangouts
  3. On-line work board; we’re using JIRA
  4. Email

We’re looking at various video conferencing tools, but for now, we’re sticking with simple solutions.

What works for you?

Ouch–Visual Studio Copy and Paste Headache

April 7, 2013

Hopefully this will save someone else a bunch of time that I just wasted.  I have a large complex form and all of a sudden, I couldn’t add a hidden field.  I kept getting the “CS0103: The name ‘[hidden field name]’ does not exist in the current context”.  Long story; short.  I had accidentally copied JUST the aspx page in my solution.  I had the following:

  • Form1.aspx
    • Form1.aspx.cs
  • Form1 – Copy.aspx

It was that darn “Form1 – Copy.aspx” that was causing all of  my grief.  I’m not sure how this happened, but I had a couple of instances with VS 2012 crashed on me and I suspect it had something to do with that.  Deleted the copy and BINGO; all better now.

Hope this saves you a few hours that I lost.

Continuous Delivery

August 27, 2012

Continuous Delivery

If you’re not looking at continuous delivery, you should. We’ve all been there at 2am trying to figure out why a release blew up. Some DB change was skipped; some library wasn’t packaged properly or heaven help you if it is a firewall or network switch issue.

Official Book   Full disclosure; I haven’t read this yet

Also, start reading up on DevOps; there’s a lot to learn.  At the end of the day, much of this boils down to automating the mundane.  If your deployments aren’t mundane, then you should rethink how you are doing them.

New Job

July 3, 2012

After 13 years at H&R Block I’m moving to Ascend Learning.  I’m not leaving HRB as much as excitement for new opportunities.  Stay tuned for more as I not sure what the future brings.  Who knows, I may be blogging about Ruby, scorn, Boston or things that I can’t imagine.

SCRUM / Agile–What’s Next

June 6, 2012

In our sophomore year of agile, we’re tackling a handful of big ticket items.  First, we’re working closely with the business to ensure we’re aligned and that agile doesn’t become a negative.  This is all internal stuff that I’m not comfortable sharing.  If this is important to you, drop me a note or give me a call and we can discuss.

There’s more to agile than SCRUM

While SCRUM excels as a process, there’s a lot more to building world class software than process.  Spend any time in the agile space and you’d run across a LOT of terms: TDD, BDD, CI, etc., etc.  I’m not going to go into all of this; feel free to use Google or Bing and spend endless hours reading.  However, I did run across this maturity model for building & releasing software from ThoughtWorks and thought it was good.  It forgoes all of the buzzword jargon and focuses on how to rate your level of maturity and not which tools you use.  My teams reviewed this model and we’re shooting for “Level 1 – Consistent: Automated processes applied across whole application lifecycle”.  What level would you target?


Reference Maturity Model:

%d bloggers like this: