The question might best be broken down into more specific issues, such as present requirements, future goals, and programming expertise. The data acquisition application usually determines hardware, which influences the choice of software and operating system. Be sure the intended hardware and programming environment are fully compatible and support the desired result. Dedicated data acquisition packages such as LabVIEW , DasyLab, SnapMaster, and Labtech Notebook represent 'closed architectures.' At one time, such packages were considered the simplest method for hardware communication, data logging, graphing, or analysis. However, they are frequently hardware-specific and less portable from one operating system to another. Language-based packages have become simpler to use, while offering much greater versatility and power. A recent survey shows use of dedicated packages lagging far behind language-based acquisition. The survey shows that the vast majority of data acquisition users prefer 'open architectures': Microsoft-based tools under a Windows 95/98/NT environment. Visual Basic or Visual C/C++ have emerged as the clear leaders for general acquisition, as well as specialized hardware control, data analysis, and user interfacing. Visual BASIC is the preferred language because it is cost-effective, relatively easy to learn, and powerful enough to satisfy most data acquisition requirements. Visual C/C++ is a more advanced language with powerful, virtually unlimited development tools (all software drivers operating under Windows are developed using Visual C/C++). Other popular high-level languages include Delphi and C++ Builder. Effective use of a language requires programming expertise, but the investment can yield custom applications that extract maximum performance from the hardware.