Petricek, Tomas (2017) Miscomputation in software: Learning to live with errors. The Art, Science, and Engineering of Programming, 1 (2). Article Number 14. ISSN 2473-7321. E-ISSN 2473-7321. (doi:10.22152/programming-journal.org/2017/1/14) (KAR id:67145)
PDF
Publisher pdf
Language: English
This work is licensed under a Creative Commons Attribution 4.0 International License.
|
|
Download this file (PDF/625kB) |
Preview |
Request a format suitable for use with assistive technology e.g. a screenreader | |
Official URL: https://doi.org/10.22152/programming-journal.org/2... |
Abstract
Computer programs do not always work as expected. In fact, ominous warnings about the desperate state of the software industry continue to be released with almost ritualistic regularity. In this paper, we look at the 60 years history of programming and at the different practical methods that software community developed to live with programming errors.
We do so by observing a class of students discussing different approaches to programming errors. While learning about the different methods for dealing with errors, we uncover basic assumptions that proponents of different paradigms follow. We learn about the mathematical attempt to eliminate errors through formal methods, scientific method based on testing, a way of building reliable systems through engineering methods, as well as an artistic approach to live coding that accepts errors as a creative inspiration.
This way, we can explore the differences and similarities among the different paradigms. By inviting proponents of different methods into a single discussion, we hope to open potential for new thinking about errors. When should we use which of the approaches? And what can software development learn from mathematics, science, engineering and art?
When programming or studying programming, we are often enclosed in small communities and we take our basic assumptions for granted. Through the discussion in this paper, we attempt to map the large and rich space of programming ideas and provide reference points for exploring, perhaps foreign, ideas that can challenge some of our assumptions.
Item Type: | Article |
---|---|
DOI/Identification number: | 10.22152/programming-journal.org/2017/1/14 |
Uncontrolled keywords: | Miscomputation, errors, philosophy, paradigms |
Subjects: |
Q Science > QA Mathematics (inc Computing science) > QA 75 Electronic computers. Computer science Q Science > QA Mathematics (inc Computing science) > QA 76 Software, computer programming, > QA76.17 History of computing |
Divisions: | Divisions > Division of Computing, Engineering and Mathematical Sciences > School of Computing |
Depositing User: | Tomas Petricek |
Date Deposited: | 27 May 2018 21:29 UTC |
Last Modified: | 05 Nov 2024 11:07 UTC |
Resource URI: | https://kar.kent.ac.uk/id/eprint/67145 (The current URI for this page, for reference purposes) |
- Link to SensusAccess
- Export to:
- RefWorks
- EPrints3 XML
- BibTeX
- CSV
- Depositors only (login required):