This page includes training material. Most of this material has been generated for the education and training of hydrologists, especially for those working in operational hydrology.

Programming in operational hydrology

The operational hydrologist requires multiple skills. The performance of their functions in a hydrological forecasting center requires multiple knowledge and skills, not only in hydrology, but also in other disciplines such as information technology and communications.

Among the recommended skills for an operational hydrologist is computer programming, in such a way that it allows him to avoid repetitive operations that a machine can do. In addition, the programming of the solution to a problem implies a good analysis and level of understanding, that is, a good intellectual exercise. The programming process helps the hydrologist analyze processes, optimize them and streamline many tasks.

Visual Basic for Applications in Hydrology

There are many computer utilities that are commonly used by a hydrologist, but one that we can consider universal, due to its widespread use, is the Microsoft spreadsheet program: Excel. One of the advantages it offers is that it admit programing in a simple language called Visual Basic, which usually has surnames that clarify that it is a version adapted to Microsoft office tools and, specifically, to Excel. In what follows, the language will be recognized by the acronym VBA. It can be a first step in programming

BASES SPH P 2016. Programming bases for hydrological prediction systems

The book Bases SPH P 2016  offers help for beginners in VBA programming.

The download is free and printed copies can be purchased at Bubok ( ):

Bases SPH P 2016 in bubok...

Click on "SPH-P Examples" to access the examples used in the publication.

All material is released under CC BY-NC-SA license

Python in hydrology

The Python language ( ) is very interesting for hydrology.

It is free, free and open source.

There are many utilities that can be programmed with this language and the community offers a large number of solutions. See:

Most of the developments described in these pages have been programmed with this language.

An introduction to Python is included in the course "Computer Basics"

Uses can be seen  more advanced in relation to EDAPHI

Computer bases

There is a set of videos and work material that constitute a course on computer bases or fundamentals, including programming practice lessons in Python

See page ​

Course on EDAPHI

Provides an overview of the environment and is accompanied by an application scenario, with instructions on installing and configuring the environment

See page


Explains the process of defining and characterizing basins with GCuencas and the first version of the MHH hydrological model,  based on Hec-HMS, for analyzes and preliminary studies

See page

Calibration of parameter "a"

A video explains the use of the ADDA module for studies of the relationship of the parameter a (for the antecedent humidity state simulation) as a function of the precipitation in previous days (parameter calibration). The application case is the Yaque del Norte basin, in the Dominican Republic (works under the CREWS-OMM project).

More information about the project at:

It is based on daily data analysis.

DR classroom

Specific site for the case of the Dominican Republic

Aula aforos - ES

Sitio específico para el caso de las actividades formativas en el marco de colaboración de la Dirección General del Agua y Tragsa, en materia de hidrometría