ASCOM, in software development terms, is an Interface.
It's a contract that defines a set of methods and properties that software developers can use to target a wide range of hardware from different manufacturers without having to write unique code for each and every one separately.
ASCOM is good for astronomy because it means the developer only has to call a single function like -- in the case of a camera -- StartExposure() and it will behave the same way regardless of manufacturer or model, so long as that manufacturer provides an ASCOM driver.
Write once, run on many.
Having to support each device and manufacturer separately without a standard like ASCOM not only means much more work, but it also makes it difficult to effectively maintain software if manufacturers change their drivers in any way.
Synonymous to this is the PC graphics card. In the 1990's, 3D graphics cards became available for the PC and there was no single standard programming interface, so you had OpenGL, Glide, DirectX and a couple of others. Games programmers, in order to reach the whole market, had to target all of these. After much ado, DirectX remains the dominant standard for Windows and OpenGL for other platforms.
|