This course provides a basic programming background sufficient to begin a career in computational molecular biology and bioinformatics. It is also useful for those who want to develop their own programs for simulation or analysis in ecology, evolutionary biology, genetics or molecular biology. The Java language is used as a platform for presenting the concepts of data types, structures, flow control, and input/output. Programming assignments will be biologically oriented. In addition to Java, scripting languages such as Python or Perl will be presented for the control of batch processes, file filtering, and simple data analysis.