RSEConUK 2019 has ended
The Fourth Conference of Research Software Engineering was held at the University of Birmingham.

Content from all sessions is licensed under a Creative Commons Attribution 2.0 UK: England & Wales License.
Thursday, September 19 • 11:00 - 12:30
#6W2b - GUIs for Python - improving the accessibility of scientific software (part 2)

Log in to save this to your schedule and see who's attending!

Part 2 of this workshop. You should have attended Part 1 to make the most of this one!

Research software has been a driving force behind the birth and rapid growth of informatics, but it was the appearance of graphical user interfaces (GUI) in the 1980s that made computers accessible to everyone. A GUI helps to reduce the learning curve for using software, increases the base of potential users and can ultimately increase citations and impact. Moreover, a well-designed GUI can perform validation and increase the robustness and reproducibility of the results, productively decoupling developers from users. 

This workshop will have three parts. In the first one, we will give an introduction to GUIs and review three of the most common Python packages to create them: Tkinter for the desktop, Jupyter Widgets for web and Kivy for mobile devices (45 min). The second part will be a hands-on session where attendees will explore a complete GUI built with the framework of their choice and go through a range of exercises to learn the basics of GUI development (90 min). The last part will provide guidance on how to plan and implement a GUI, considering the target users, their objectives, accessibility, providing contextual help, etc. Finally, organised into groups and building on the user-centric concepts of GUI development covered in the previous sections of the workshop, the attendees will design a GUI for the well known command line software: Git. (45 min). 


Parts 1 and 3 of the workshop can benefit anyone interested in GUIs, and no specific knowledge in programing is required. The hands-on session, Part 2, is specific about implementing GUIs in Python and therefore experience using this language will be essential.

Using the Workshop Virtual Machine

A remote server has been set up with all the Python packages, libraries and examples required for the workshop pre-installed. Connection details will be provided on arrival at the workshop. The server will be accessible via remote desktop client software:

- Windows: It should include Remote Desktop already
- MacOS: Microsoft Remote Desktop is available in the App Store (free)
- Linux: Tested using Remmina. It comes with Ubuntu and should be available in most Linux distributions.

Local installation

If you prefer to setup your own laptop for the workshop, please follow the instructions available in the workshop repository for your operative system.

VirtualBox VM

If neither of the above works for you, we have prepared a VirtualBox VM with Lubuntu 19.04 and all the packages for the workshop pre-installed. It is a pretty big download (~2.5 Gb), so use it only as a last resort and preferably before the workshop starts!

avatar for Diego Alonso Álvarez

Diego Alonso Álvarez

Research Software Engineer, Imperial College London
I'm a physicist with 13 years of research experience in academia, including a PhD in semiconductor nanostructures and postdoctoral research on novel solar energy concepts and solar cells. During this time my work has consistently involved software development: for simulation, instrument... Read More →

Thursday September 19, 2019 11:00 - 12:30
2. Aston Webb C Block Lecture Theatre Aston Webb Building