Building Reliable Software for the Web, IoT and Beyond


Building Reliable Software for the Web, IoT and Beyond

Prof. Karthik Pattabiraman, Ph. D., University of British Columbia, Canada

13.06.2018, 11:00 Uhr | TU Darmstadt, Gebäude S4|14, Mornewegstr. 30, Raum 4.3.01

Veranstalter: Fachbereich Informatik, Fachgebiet Software Lab


JavaScript started out as a simple scripting language for web applications to provide interactive capabilities, but has matured into something far more complex than its initial mandate. Today, JavaScript is used in a wide range of domains, from building large, complex web applications, to powering Internet of Things (IoT) devices.

However, JavaScript is notorious for its difficult-to-analyze constructs and „laissez-faire“ programming style, which makes it challenging to build robust and reliable applications. Unfortunately, the reasons for JavaScript code’s lack of reliability and its consequences have not been well studied, and this has resulted in many misconceptions among both researchers and practitioners.

In this talk, I will present some of the work we have been doing in my group on understanding the sources of errors in modern web applications, and mitigating them through static and dynamic analysis techniques. I will then talk about some of our recent work on using JavaScript to program IoT systems, and the reliability challenges that arise in doing so.

This is joint work with my students, industry collaborators and faculty colleagues at UBC.


Karthik Pattabiraman received his M.S and PhD. degrees from the University of Illinois at Urbana-Champaign (UIUC) in 2004 and 2009 respectively. After a post-doctoral stint at Microsoft Research (MSR), Karthik joined the University of British Columbia (UBC) in 2010, where he is now an associate professor of electrical and computer engineering.

Karthik's research interests are in building error-resilient software systems, and in software engineering and security. Karthik has won distinguished paper/runner up awards at the IEEE/IFIP International Conference on Dependable Systems and Networks (DSN), 2008, the IEEE International Conference on Software Testing (ICST), 2013, the IEEE/ACM International Conference on Software Engineering (ICSE), 2014, and the European Dependable Computing Conference (EDCC), 2015, 2016.

He is a recipient of the NSERC Discovery Accelerator Supplement (DAS) award in 2015, and the 2016 Killam Faculty Research Fellowship at UBC. Karthik is a senior member of the IEEE, and a member of the IFIP Working Group on Dependable Computing (10.4). Find out more about him at:

zur Liste