Reducing the Software Value Gap

Research shows at least 50% of IT developers’ time is wasted due to the following reasons: Rework due to incomplete or poorly defined needs and requirements (“incomplete kit”); Rework due to frequent changes in requirements and scope up to the final delivery stages; most such changes are not “must have” but only “nice to have”; Software…
Read more

Howto: Install PHP 5.5 and PHPUnit on OS X via Homebrew

Here is how to install the latest PHP and PHPUnit versions on OS X using Homebrew, which became my first choice after testing other package managers. To avoid conflicts, it is generally not recommended to use Homebrew alongside other external OS X package managers such as MacPorts or Fink. You can remove MacPorts with these…
Read more

Written requirements in the age of agile development

Many of today’s agile software projects are characterized by a lack of written requirements and other documentation. The rationale behind this is that requirements change “too often” to be written down. Project management might also be afraid that writing documents consumes too much time of developers and stakeholders. However, my personal experience is that projects with…
Read more

Cloud9 IDE: My first impression

After I could gather some experience with Cloud9 IDE today, I’m in the process of customizing it to my needs. For example, the run and preview buttons seem useless when using Cloud9 as editor only: Most PHP/JavaScript Web apps are constantly running in another tab anyways and usually don’t require compilation (as a developer, I…
Read more

Howto: Install Cloud9 IDE on CentOS 6.3 / Linux

There is an interesting (and free) alternative for those who are sick of (re-)installing Eclipse, Aptana, Zend Studio, PhpStorm, NetBeans or other IDEs on each new computer they use – or for those who don’t have 1 GB of RAM left to waste just to run a source code editor. I used to work with…
Read more

Estimations done right

How reliable, useful and realistic are effort estimations and what are the implications of different methodologies? Since at least the 1960s, this is a hot topic for software engineers and their managers, although the importance of precise estimation is decreasing in the age of agile development. I would like to give a summary of my past experiences,…
Read more

What Architecture Means for Agile Development

In contrast to some discussions we observe in the software community, agile development is not about cargo cult adoption of Scrum or any other process, toolkit, or methodology — although we certainly observe this and consider it a problem. The essence of agility is responsiveness, learning, and sufficiency. Agility is reflected in sustainability and quality…
Read more

Is your team really agile?

Most teams purporting to be doing agile software development are not applying the level of technical rigor necessary to succeed at it. Most “agile” teams have actually only adopted Scrum’s project-management practices and have failed to effectively adopt “the hard disciplines” like test-driven development, refactoring, pair programming, simple design, and continuous integration. Jean-Raymond Abrial, Faultless…
Read more