Diomidis Spinellis (http://www.dmst.aueb.gr/dds) is a Professor of Software Engineering in the Department of Management Science and Technology at the Athens University of Economics and Business, Greece and a Professor of Software Analytics in the Department of Software Technology at the Delft Technical University in the Netherlands (part-time appointment). In 2013 he worked as a site reliability engineering senior software engineer for Google, while from 2009 to 2011 he served as the Secretary General for Information Systems at the Greek Ministry of Finance. His research interests include software engineering, IT security, big-data processing, and cloud computing. He holds an MEng in Software Engineering and a PhD in Computer Science both from Imperial College London.
Spinellis has published two books in Addison-Wesley’s “Effective Programming Series”: Code Reading: the Open Source Perspective, which received a Software Development Productivity Award in and has been translated into six other languages, and Code Quality: the Open Source Perspective, which also received a Software Development Productivity Award. His most recent book is Effective Debugging: 66 Specific Ways to Debug Software and Systems. Spinellis has also published more than 300 technical papers in journals and refereed conference proceedings, which have received more than 12000 citations. His article on the Greek wiretapping case made the front page of the IEEE flagship publication Spectrum. His work has also appeared in other flagship magazines, such as the Communications of the ACM and IEEE Computer. He has also contributed a chapter to the bestselling book Beautiful Code: Leading Programmers Explain How They Think (O’Reilly). He served for a decade as a member of the IEEE Software editorial board, authoring the regular “Tools of the Trade” column, and as the magazine's Editor-in-Chief over the period 2015–2018.
Spinellis is the author of many open-source software packages, libraries, and tools. His implementation of the Unix sed stream editor is part of Apple’s macOS and all BSD Unix distributions. Other tools he has developed include the Alexandria3k system for reproducible publication research, the UMLGraph declarative UML drawing engine, the CScout refactoring editor for large systems written in C, the ckjm tool for calculating Chidamber and Kemerer object-oriented metrics in Java programs, the git-issue Git-based command-line ticket management system, and the dgsh and socketpipe directed graph and network plumbing utilities. He is senior member of the ACM and the IEEE, an ACM Distinguished Speaker, and a member of the Usenix association. From 2013 until 2015 he served as an elected member of the IEEE Computer Society Board of Governors and is currently chairing the Society’s Magazine Operations Committee. He is four times winner of the International Obfuscated C Code Contest and a member of the crew listed in the Usenix Association 1993 Lifetime Achievement Award.
- Organizating Committee Chair in two ACM-sponsored conferences:
- 29th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (FSE 2021)
- 21st IEEE/ACM International Conference on Mining Software Repositories (MSR 2024)
To request a single lecture/event, click on the desired lecture and complete the Request Lecture Form.
Engineering Software Analytics Studies
Performing quantitative software analytics studies can be an immensely rewarding activity for scientists performing empirical research. However, such studies often pose numerous engineering...
Locating and Addressing Performance Issues
Performance is resurfacing as a problem for developers. In this session we will see how we can locate the source of performance problems and ways to solve them. We will work top-down,...
Researching the world's knowledge on your laptop
Considerable scientific work involves locating, analyzing, systematizing, and synthesizing other publications. Its results end up in a paper's "background" section or in standalone...
The Antikythera Mechanism: Hacking with Gears
The Mechanism of Antikythera is an astronomical calculator from the first century B.C. Its currently agreed-on model consists of 35 gears. Its back face contains four dials tracing a luni-solar...
The Triumph of the New Jersey Style: How Architectural Elegance, Components, and Reuse Shaped the Evolution of Unix
Unix has evolved for almost five decades, shaping modern operating systems, key software technologies, and development practices. Studying the evolution of this remarkable system from an...
Working with open-source software: Selecting, using, adapting, and contributing back
Software components, such as the zlib compression library, the SQLite relational database engine, and the JPEG and PNG reference implementations, are deployed in billions of devices. Thanks to...
To request a tour with this speaker, please complete this online form.
If you are not requesting a tour, click on the desired lecture and complete the Request this Lecture form.
All requests will be sent to ACM headquarters for review.