Tools of the Trade Icon

Welcome to Tools of the Trade

This podcast of an ongoing IEEE Software column explores the interplay between you, the software practitioner, and the tools you apply to the development problems you face. Skilled craftsmen set themselves apart from amateurs by the tools they use and the way they employ them. As a professional, I feel I'm getting a tremendous boost in my productivity by appropriately applying tools to the software construction problems I face every day. I also often find myself developing new tools, both for my personal use and for wider distribution. Column installments will discuss specific software construction activities from the standpoint of the tools we can employ — the tools of our trade. Future topics include editing, compiling, documentation, debugging, testing, configuration management, issue tracking, the development environment, tool building, and domain-specific tools. Of course, your suggestions are always welcome; email me at dds@aueb.gr. Diomidis Spinellis

This podcast is brought to you by IEEE Software.

Subscribe iTunes | Google | RSS

Entries with tag declarative programming.

The Importance of Being Declarative

A declarative programming style focuses on what you want your program to do rather than how to perform the task. By avoiding implementation details, well-written declarative code is easier to understand, modify, and maintain. The code you write in a declarative style is often so readable that you can share it with your project's domain experts. Furthermore, once you start working with declarative code, you can automatically process it to verify properties of its operation, generate test cases, or create parts of the system’s documentation. Small choices, such as the naming of your methods and variables, matter. If you’re coding an algorithm, have your code match the algorithm’s published description. Other approaches to consider include table-driven programming, the implementation of a domain-specific language, or the use of task-specific libraries. When you have the choice, pick the highest level language you can afford and that’s suitable for the task at hand.

Listen:

Showing 1 result.

About the Speaker

Diomidis SpinellisDiomidis Spinellis is a professor in the Department of Management Science and Technology at the Athens University of Economics and Business and the author of Code Quality: The Open Source Perspective (Addison-Wesley, 2006). Contact him at dds@aueb.gr.