Web 2.0 Interfaces for R

Títol del curs: Web 2.0 Interfaces for R

Impartit per: Xavier de Pedro, Vall d'Hebron Research Institute (VHIR).

Llengua del curs: Castellà.

Dates i horaris del curs: 6, 9 i 10 de setembre. El 6 i el 9, de 9-12 h, i el 10 de setembre de 9 a 13.

Lloc: Per definir

Tipus d'activitat i càrrega lectiva: Curs de 10 hores.

Reconeixement acadèmic: 1,5 ECTS com a assignatura optativa per als estudiants del MEIO UPC-UB, com a assignaturas de lliure  elecció per a estudiants de màster, grau i llicenciatura i com a crèdits de doctorat.

Data de matrícula: del 29 d'abril al 10 de maig.

Continguts: It's easy to find people with intermediate level in the use of R, which talk about their code in blogs or other websites, but they usually do not know how to create a dynamic web interface to their programs in R so that their potential users can test their application directly online. There are some tools to create simple html reports from R (R2HTML, HTMLReport, among others), but they frequently do not allow users to change parameters and re- generate these graphs, tables or reports with new data chosen by the user through of the website itself. And those recent packages that allow to create web interfaces, such as CGIwithR or Shiny, they are not designed to allow custom usage of Web 2.0 features in their interfaces, to collect discussion in associated forums, promote an easy documentation based on wiki or wysiwyg pages from its users, beyond the R community of package developers, etc. Some other approaches involve complex setups server side (Bergsma & Smith 2012) that might be suited for another target population with more knowledge on server administration. In recent user meetings such as R-es'2011, UseR!2011, or R-es'2012, we could find that many users have knowledge gaps regarding Apache, PHP, MySQL (for example), and powerful web programs that can be installed easily and run in them, using FLOSS tools already mature and at no extra cost than the web server access (De Pedro 2012, De Pedro & Sanchez 2010, 2011).

Objectius:

In this workshop attendees will get an overview of everything needed to create web interfaces to their programs in R using some free/libre open source software (FLOSS) tools. This way, at the end of the workshop they will have seen and eventually learned:
  • what is a web server (like Apache), a database (like MySQL), web programming language (like PHP)
  • how to use PhpMyAdmin: a manager MySQL databases via website
  • how to install a PHP-MySQL application called "Tiki" on a server, allowing them to create and use dynamic Web 2.0 pages made with FLOSS.
  • how to install the PluginR in Tiki, to communicate with R on the server.
  • how to apply the configuration profile Tiki "R tests" and/or "R Heatmaps" or similar, to have a real and functional web interface as an example
  • how to modify the example to create a first draft of web interface to the program of interest for the attendant.
  • how to export the Mysql database in order to migrate to the web server hired by the attendants or their institutions.
We plan to use an ad-hoc "Live USB disk" with everything needed to follow the workshop: GNU/Linux, Apache Web server, PHP Programing Language, Mysql Database engine, Tiki, and R trunk (updatable both of them by means of subversion) in case any person needs the latest version of R (or eventually Tiki) for their package, tests, etc.

 

Programa:

  • 1h: Introduction
    • Explain workshop goals
    • Web 2.0
    • Introduction to Tiki
    • Introduction to PluginR
  • 3h: Tasks to be performed by each attendant
    • Boot your Live USB Disk in your computer
    • Login as admin in the default brand new Tiki available there
    • Apply configuration profile "R_test" (if online connection allows)
    • Apply configuration profile "R_HeatMaps" (if online connection allows)
    • Create from scratch a new web interface for a simple application (Power of Test, for the R package "pwr")
    • Tracker
    • Tracker fields
    • Web page as interface to allow inserting data
    • Web page to display a table of runs performed
    • Web page to display custom output from each run and its output
    • Design feedback mechanisms from users to your web application
  • 30': Exporting,
    • How to reuse the Live USB Disk with personal storage data
    • How to export the database and files (PHPMyadmin or command line)
  • 30': Further Help and Concluding remarks
    • Where get further help and additional resources to learn more
    • Concluding remarks

Prerequisits:


  • Basic skills with a computer laptop.
  • Ability to boot your laptop from USB or CD.

Adreçat a:

Anyone interested to learn how to create simple (yet powerful) web interfaces easily to run R scripts server side in real time, while keeping server safety under control. Even more interested potentially will be those willing to create communities around their web applications (running R in the backend), and designing effective mechanisms to collect feedback from their users and enhance the interaction, discussion, documentation from the community around your R package.

Materials del curs: Related Links

 

Avaluació: Durante el curso los alumnos realizarán una interfaz cuya calidad y funcionamiento se evaluarán finalmente.

contingut del curs