BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage Delivering Quality Content on InfoQ

  • Crunch Mode And Making Superstars Average

    James Golick and Reg Braithwaite discuss the often overlooked realities of how putting teams into "Crunch Mode" can have undesirable results. The discussion looks at various ways applying pressure to a team often results in putting your project into not better but worse shape and how teams and managers might benefit by taking a different approach.

  • White: A New Windows UI Developer Testing Framework

    The White project is an automated testing framework for Win32, WinForm, WPF and SWT (java) applications. Use it in combination with your favorit xUnit framework just like WatiN to perform user acceptance testing.

  • TDD: Essential Skill or Architectural Landmine?

    At JAOO '07 Bob Martin asserted: "it is irresponsible for a developer to ship a line of code he has not executed in a unit test." In this InfoQ video, Martin debated with another well respected software thought leader, Jim Coplien, on this and other topics, including Design by Contract vs. TDD and how much up-front architecture is needed to keep a system consistent with the business domain model.

  • Does "Done" Mean "Shippable"?

    There has been a lot of discussion on various agile forums and blogs about the difference between 'Done' and 'Shippable'. It might sound like both mean the same, however discussions on the lists and various blogs suggest that these are still widely misunderstood, mis-used terms. Here's a roundup of recommendations about how to handle "Done."

  • Opinion: Programming Languages Shouldn't Enforce Style, Teams Should

    Some believe that, if you write a large enough cookbook, there will always be a simple recipe to solve our programming problems. Taking it to an extreme, some want programming languages to limit developers to safe constructs and clean style. Reg Braithwaite skewers this idea, and challenges teams not to give up accountability for style, asking "Whatever happened to code reviews?"

  • Can Tools Reduce the Effort Involved in Test Driven Development?

    With the presence of high quality test generation tools like Agitar One and Parasoft's JTest, some are questioning the need to write tests manually. 'Uncle' Bob Martin weighted in, exploring the weakness of the idea.

  • Does TDD Really Ensure Quality?

    Analysis of a recent study by the National Research Council of Canada's Institute of Technology into Test Driven Development turned up some interesting observations regarding the value that this approach adds, including whether, in fact, it adds any more value to the quality process than testing after development.

  • Prefer Broad Design Skills over Platform Knowledge

    In his latest article Martin Fowler suggests that what matters most while building a team is not experience or thorough knowledge of the specific platform and business domain, but rather some broader skills that allow building quality software and delivering value.

  • An Agile Developer's Responsibility

    What is a developer's responsibility when a customer asks for a quick and dirty solution? Should they listen to the customer and take the short cut because, after all, they are paying the bill? Should they instead always do what is technically the "best" option in their opinion? Or is there a middle road that should be taken?

  • Book Excerpt and Review: Release It!

    Release It!: Design and Deploy Production-Ready Software by Michael Nygard discusses what it takes to make production-ready software, and explains how this differs from feature-complete software. InfoQ spoke with Michael Nygard and asked him several questions related to the book and some of the issues it raises.

  • RSpec 1.1 - A Step Up for BDD advocates

    RSpec has become a poster child for both Domain Specific Languages and Behavior Driven Development (BDD), a type of Test Driven Development. The new RSpec 1.1 release adds improved support for Rails and other improvements.

  • Continuous Integration and Code Inspection with Hudson and FindBugs

    A recent article published in IBM developerWorks talks about automating Continuous Integration and Code Inspection tasks in a build process using open source tools. It explains how to install and configure Hudson server with Subversion, Ant, and software inspection tools like FindBugs and PMD to create a build process with continuous feedback on test results and defects.

  • Is Quality Negotiable?

    If a customer tells you that they are not interested in software quality, that they have a specific scope that must be completed by a specific date - what do you do? Do you listen to the customer and compromise quality? (By the way, what is quality?)

  • Debate: Scaling teams up in productivity rather than in personnel

    Larger team size prevents from adopting the whole range of language abstraction tools and puts constraints on productivity. Reg Braithwaite believes that tools should not be tuned to the size of the team. He advocates for building teams around the tools and keeping them small. It appears however that team growth is often inevitable. What can be done then to maintain quality and productivity?

  • Surprising criticism from parting Microsoft development lead

    Jay Bazuzi, once Development Lead for the C# Editor, is leaving Microsoft, and he wrote some surprisingly harsh parting words for his friends before he left; things like “OO isn’t a fad” and that “It’s OK to use someone else’s code”.

BT