Other Programming Languages

Every book needs a short chapter—this is mine. It presents an example of how to proceed with programming.

  • PDF / 151,601 Bytes
  • 2 Pages / 439.37 x 666.142 pts Page_size
  • 31 Downloads / 216 Views

DOWNLOAD

REPORT


Other Programming Languages

Every book needs a short chapter—this is mine. It presents an example of how to proceed with programming. To put it straight: this book is written with the intention to show you how to deal with large datasets. My intention is not to teach you hardcore programming. Though you might happen to end-up in a situation or position to decide how to develop data processing and visualization in a professional setup. At that point, AWK scripts running in the terminal may not be sufficient or satisfying anymore. During my professional career, I rolled out a number of small (affecting some people) to large (affecting several dozen people) programs. All large projects were programmed either in Java or PHP by computer scientists. These guys know how to create stable and scalable software. “Real” programming is going far beyond data processing with one-liners or small scripts. Apart from different programming philosophies, you should remember that Java programs run on the client computer, while PHP programs run on a server. Thus, CPU power has to be delivered either by you or your customer. However, a frequent situation I saw myself confronted with this is: a pure experimentalist asks me if I can help out in solving a data processing and visualization problem. Yes, this is the common answer, because I love problem solving. And now comes the point: the pure experimentalist happens to like my solution (which might involve a combination of AWK and R scripts bundled in a Bash shell script and involving MySQL database queries) and wants to run it on his or her computer—uhhhh. What I do then is wrapping my solution in PHP and HTML (the latter being the HyperText Markup Language, which web browsers can read).   So I create a web page with a data input form and a Process button. The result is then visualized in the browser, or is provided as a downloadable PDF (an example is shown in Fig. 15.1). Okay, I neither teach you PHP and HTML in this book, nor do I show you how to administrate an Apache server, which ultimately provides the web page. Though if you worked through this book you are well prepared to do so. The keyword for

R. Wünschiers, Computational Biology, DOI: 10.1007/978-3-642-34749-8_15, © Springer-Verlag Berlin Heidelberg 2013

291

292

15 Other Programming Languages

Fig. 15.1 Front-end to Shell Scripts. The import form shown in the left panel produces the HTML output shown in the right panel. The user is only confronted with the web browser. On the server, not visible to the user, run number-crunching scripts. The tool shown here allocates and annotates BAC end sequences

the next step is setting up a LAMP server (Linux-Apache-MySQL-PHP)—take your time and have fun, you are becoming a web administrator!