About

I am a software developer, manager, team coach, blogger, and speaker with 17+
years of experience creating and delivering high quality software. I have specific expertise in:

  • Leading and coaching software teams
  • Mentoring developers
  • Improving development processes and practices for cross-functional development teams
  • Test Driven Development (TDD)
  • Unit testing
  • Agile / eXtreme Programming practices
  • Pair programming

I’m passionate about eXtreme Programming (XP) principles, Test-driven development (TDD), and pair programming. I am a strong believer in Software Craftsmanship and a lifelong student always trying to improve my craft. I believe code quality is not subjective or a matter of preference. I enjoy mentoring and coaching developers specifically about code quality, unit testing, and Test-driven development.
I’ve developed professionally in C#, JavaScript, Ruby, Java, C++, and Perl.

I graduated from Drexel University with a degree in Computer Science. I currently work for eMoney Advisor in Radnor, PA. You can learn more about me here.

Blog

18 Jun 2017 . development practices . TDD is Not a Testing Practice Comments

I often hear people state that they don’t care whether unit tests are written first or last, just as long as they get written. This is indicative of the belief that the existence of tests is more important than the method used to create them. Unfortunately, this advice disregards all of the benefits of test-driven development (TDD). Misunderstanding the Purpose of TDD There is widespread misunderstanding in the industry about the purpose of TDD. Often people believe that the primary justification for practicing TDD is the creation of unit tests. This illustrates the most common…

View more posts

Code

Here are a few projects I have worked on in my free time:

Improved iTunes Parser

A ruby iTunes library parser using Nokogiri.

Listening To

A .NET Web API app (using my Lastfm.NET library) with an AngularJS / Bootstrap front end. It displays the last 25 songs I’ve listened to as well as my top 25 artists.

Lastfm.NET

A .NET client for the Last.fm REST API.

iTunes Library Parser

A C# implementation utilizing LINQ-to-XML. Parses an iTunes library file into a collection of track objects.

If you’d like to see some other things I’m working on you can view my github account.

  • {{track.Artist}}-{{track.Album}}

    {{track.Artist}}

    Track: {{track.Name}}
    Album: {{track.Album}}
    Last Played: {{track.LastPlayed}}
  • {{track.Artist}}

    {{artist.Name}}

    Rank: {{artist.Rank}}
    Play Count: {{artist.PlayCount}}
Music data courtesy of
Loading
Cannot connect to the Last.fm Service to access music data.
Check the Last.fm Status Site for more information.

Contact

Drop me a line if I can help your development organization, help you with your product, or you just want to talk about music!