Tag Archives: best practices

Testing equals() with Guava

I’ve long held the opinion that Guava belongs on every Java classpath because its design and the quality of its implementation surpass other comparable utility libraries (and sometimes even the JDK). Guava’s testlib is pretty cool, too, even though it’s … Continue reading

Posted in java | Tagged , , , | Leave a comment

A Case for Guard Clauses

One of my pet peeves in programming is that few people use guard clauses. A guard clause is an almost trivial concept that greatly improves readability. Inside a method, handle your special cases right away and return immediately.

Posted in best practices | Tagged , , | 8 Comments

Efficient Development Environment Setup

Development environments and their configuration can become quite complex. It’s not unusual that a complete workstation setup takes half a day or more and requires extensive help from other project members. Using virtual machines for the runtime environment can help … Continue reading

Posted in best practices | Tagged , | 1 Comment

Professional Deployment and Operation of Web Applications

There are millions of web applications on the Internet that are under constant development. Paying software developers to work on bug fixes and new features is quite expensive already, but what’s often neglected is the cost for deployment and operation. … Continue reading

Posted in best practices | Tagged , , , , , | Leave a comment

The State of Java Build Systems

Most people eventually get it that building release artifacts using their IDEs is not the way to nirvana. Builds have to stay stable and reproducible between IDE revisions, and being able to execute them in a command line environment or … Continue reading

Posted in java | Tagged , , , , | 26 Comments

Why Do We Build Web Applications?

Creating a good user interface is no trivial task, no matter if it’s running as a desktop application or inside a browser. When it comes to accessing server-side resources (a common thing in the corporate world) web applications seem to … Continue reading

Posted in best practices | Tagged , , , | 4 Comments

Thoughts on Collective Code Ownership

Agile software development methodologies like Extreme Programming (XP) propagate collective code ownership: Every developer is allowed (and encouraged) to make changes wherever necessary. But is this really a realistic, useful approach?

Posted in best practices | Tagged , , | 2 Comments

A Metadata Format For CSV Files

Using CSV files in batch processing applications has many advantages, most prominently interoperability between programming languages and tools. One of its weaker points is data integrity though. The format has no way to declare data types or additional metadata other … Continue reading

Posted in best practices | Tagged , , , | 3 Comments