Companion Proceedings of the 4th International Conference on Art, Science, and Engineering of Programming最新文献

筛选
英文 中文
Towards requirements engineering with immersive augmented reality 用沉浸式增强现实实现需求工程
Nitish Patkar, Leonel Merino, Oscar Nierstrasz
{"title":"Towards requirements engineering with immersive augmented reality","authors":"Nitish Patkar, Leonel Merino, Oscar Nierstrasz","doi":"10.1145/3397537.3398472","DOIUrl":"https://doi.org/10.1145/3397537.3398472","url":null,"abstract":"Often, requirements engineering (RE) activities demand project stakeholders to communicate and collaborate with each other towards building a common software product vision. We conjecture that augmented reality (AR) can be a good fit to support such communication and collaboration. In this vision paper, we report on state-of-the-art research at the intersection of AR and RE. We found that requirements elicitation and analysis have been supported by the ability of AR to provision on-the-fly information such as augmented prototypes. We discuss and map the existing challenges in RE to the aspects of AR that can boost the productivity and user experience of existing RE techniques. Finally, we elaborate on various envisioned usage scenarios in which we highlight concrete benefits and challenges of adopting immersive AR to assist project stakeholders in RE activities.","PeriodicalId":373173,"journal":{"name":"Companion Proceedings of the 4th International Conference on Art, Science, and Engineering of Programming","volume":"490 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-03-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116286695","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 3
Towards a pattern language for interactive coding tutorials 面向交互式编码教程的模式语言
Tao Dong, Gale Yang
{"title":"Towards a pattern language for interactive coding tutorials","authors":"Tao Dong, Gale Yang","doi":"10.1145/3397537.3397558","DOIUrl":"https://doi.org/10.1145/3397537.3397558","url":null,"abstract":"Online, text-based coding tutorials are popular among programming learners. Though they are relatively easy to create, it's challenging to ensure their pedagogical effectiveness. Computer Science Education researchers have advocated for interactive tutorials, because they provide learners with opportunities to practice and receive feedback while completing a tutorial. Nonetheless, little guidance exists on how to best leverage interactivity in tutorials. We set out to develop a pattern language for interactive tutorials to fill this gap. Through a human-centered design process, we created and evolved three instructional patterns and their supporting interaction components in a tutorial on asynchronous programming. We describe the preliminary results of our work towards this pattern language in this paper.","PeriodicalId":373173,"journal":{"name":"Companion Proceedings of the 4th International Conference on Art, Science, and Engineering of Programming","volume":"32 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-03-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127341623","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Efficient editing in a tree-oriented projectional editor 有效的编辑在一个面向树的投影编辑器
Tom Beckmann
{"title":"Efficient editing in a tree-oriented projectional editor","authors":"Tom Beckmann","doi":"10.1145/3397537.3398477","DOIUrl":"https://doi.org/10.1145/3397537.3398477","url":null,"abstract":"In contrast to text editors, using projectional editors typically requires users to learn a new editing metaphor. In text-oriented projectional editors, rules may be used to give users the impression of working in a regular text editor. As such, the editing metaphor appears clear to the user, but if the implemented rules do not suffice, users may be confused why certain actions do not work. Block-oriented projectional editors, where the editing metaphors are typically clearer, often present challenges in editing efficiency, as code takes up more space and editing is perceived to be slower. We present a block-oriented projectional editor that tries to address the issues of editing efficiency and space usage. Through a reusable set of commands for tree modifications, a space-efficient AST visualization, and context-aware input we allow users to edit as fast or faster than in a text editor. We provide a first evaluation by comparing the number of keystrokes required to carry out common edit operations.","PeriodicalId":373173,"journal":{"name":"Companion Proceedings of the 4th International Conference on Art, Science, and Engineering of Programming","volume":"66 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-03-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126218900","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 1
Convivial design heuristics for software systems 软件系统的欢乐设计启发式
Stephen Kell
{"title":"Convivial design heuristics for software systems","authors":"Stephen Kell","doi":"10.1145/3397537.3397543","DOIUrl":"https://doi.org/10.1145/3397537.3397543","url":null,"abstract":"Illich's notion of conviviality centres on the balance between individual freedom to act and collective freedom from domination. This balance, or tension, is present in the design of most user-facing computer systems, and especially in the design of programming systems. Software lore has arisen with at best a skewed perspective on such issues, having developed from an industrial viewpoint. In this paper I survey some tentative design principles, extracted from examples of research work or (more often) systems used in practice, which (sometimes by accident) do show some regard for conviviality. Although preliminary, my hope is that these principles may yet develop into a collection of design hints at least equal, and largely countervailing, to the less conviviality-prone ideas circulating in today's software folklore. Relevant topics include language design, information hiding, language virtual machines, portability, classical logic, and layered system design. I also briefly consider the intertwined social and political constructs, such as copyleft, ownership and community responsibility, asking how to evolve or generalise these towards convivial ends.","PeriodicalId":373173,"journal":{"name":"Companion Proceedings of the 4th International Conference on Art, Science, and Engineering of Programming","volume":"40 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-03-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123366042","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 3
ReAD: representational algorithmic design 读:代表性算法设计
Renata Castelo-Branco
{"title":"ReAD: representational algorithmic design","authors":"Renata Castelo-Branco","doi":"10.1145/3397537.3398478","DOIUrl":"https://doi.org/10.1145/3397537.3398478","url":null,"abstract":"Algorithmic Design (AD) is a novel approach to architectural design based on the creation of form through algorithms. The inherent flexibility of AD encourages the exploration of a wider design space, the automation of design tasks, and design optimization, considerably reducing project costs. Nevertheless, current AD uses representation methods that radically differ from those used in architectural practice. This creates a barrier to the adoption of AD, thus, limiting the potential benefits. We propose to address this problem by coupling AD with complementary representation methods that are adequate for designing complex architectural projects and by supporting their synchronization in a dedicated design tool.","PeriodicalId":373173,"journal":{"name":"Companion Proceedings of the 4th International Conference on Art, Science, and Engineering of Programming","volume":"06 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-03-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124469184","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 1
Supporting the composition of domain-specific software via task-specific roles 通过特定于任务的角色支持特定于领域的软件组合
Brigitte Boden, R. Mischke, Alexander Weinert, A. Schreiber
{"title":"Supporting the composition of domain-specific software via task-specific roles","authors":"Brigitte Boden, R. Mischke, Alexander Weinert, A. Schreiber","doi":"10.1145/3397537.3399576","DOIUrl":"https://doi.org/10.1145/3397537.3399576","url":null,"abstract":"Nowadays, complex technical systems are frequently developed by composing discipline-specific tools into an automated high-level workflow. Constructing, executing, and maintaining this workflow together with the infrastructure supporting it involves several distinct roles. We argue that awareness of these roles and providing explicit software support for them accelerates these processes and enables fast iteration on the design of the workflow itself.","PeriodicalId":373173,"journal":{"name":"Companion Proceedings of the 4th International Conference on Art, Science, and Engineering of Programming","volume":"24 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-03-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123269782","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 3
MATLAB doesn't love me: an essay MATLAB不爱我:一篇文章
T. Storm, G. Bakker
{"title":"MATLAB doesn't love me: an essay","authors":"T. Storm, G. Bakker","doi":"10.1145/3397537.3397557","DOIUrl":"https://doi.org/10.1145/3397537.3397557","url":null,"abstract":"Programming is everywhere, and is becoming an increasingly essential component of knowledge work outside the realms of traditional software development. Examples include data journalism, scientific computing, machine control, machine learning, financial management, and others. A key aspect of this trend is that users have to use programming tools, but typically lack programming education, let alone a computer science background. In this short paper we revisit potential assumptions and preconceptions underlying traditional programming system design, from the perspective of practicing scientists using tools like MATLAB, R, Bash, Python, C++, and others. Specifically, we aim to peel off some ingrained assumptions that have informed programming language and system design for decades. Without giving a lot of answers, we hope some of our contrarian observations may turn out to be controversial, and stimulate a meaningful discussion towards a better programmer experience in the domain of science.","PeriodicalId":373173,"journal":{"name":"Companion Proceedings of the 4th International Conference on Art, Science, and Engineering of Programming","volume":"42 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-03-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130084158","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 1
User-defined interface mappings for the GraalVM GraalVM的用户定义接口映射
Alexander Riese, Fabio Niephaus, T. Felgentreff, R. Hirschfeld
{"title":"User-defined interface mappings for the GraalVM","authors":"Alexander Riese, Fabio Niephaus, T. Felgentreff, R. Hirschfeld","doi":"10.1145/3397537.3399577","DOIUrl":"https://doi.org/10.1145/3397537.3399577","url":null,"abstract":"To improve programming productivity, the right tools are crucial. This starts with the choice of the programming language, which often predetermines the libraries and frameworks one can use. Polyglot runtime environments, such as GraalVM, provide mechanisms for exchanging objects and sending messages across language boundaries, which allow developers to combine different languages, libraries, and frameworks with each other. However, polyglot application developers are obligated to properly use the right interfaces for accessing their data and objects from different languages. To reduce the mental complexity for developers and let them focus on the business logic, we introduce user-defined interface mappings - an approach for adapting cross-language messages at run-time to match an expected interface. Thereby, the translation strategies are defined in an exchangeable and easy-to-edit configuration file. Thus, different stakeholders ranging from library and framework developers up to application developers can use and extend these mappings for their needs.","PeriodicalId":373173,"journal":{"name":"Companion Proceedings of the 4th International Conference on Art, Science, and Engineering of Programming","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-03-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130026631","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 3
What it takes to create with domain-appropriate tools: reflections on implementing the “id” system 如何使用适合领域的工具进行创建:关于实现“id”系统的思考
Joel Jakubovic
{"title":"What it takes to create with domain-appropriate tools: reflections on implementing the “id” system","authors":"Joel Jakubovic","doi":"10.1145/3397537.3397549","DOIUrl":"https://doi.org/10.1145/3397537.3397549","url":null,"abstract":"There is a One-Size-Fits-All quality to languages, APIs and even programming itself. Whether you're making a mobile game or a scientific simulation, you will be using a text-based language with similar devices for structuring your code. This is a source of artificial difficulty in creating, understanding, and modifying software systems. No matter the domain, the author's design needs encoding into a form that does not resemble it. This paper describes a vision where software can be built in a programming environment that is closer to the domain of the software itself. By doing so, users of the system can use familiar abstractions and tools for adapting it. A step towards this vision is presented: a Web version of a minimal OOP system, developed as an executable version of the diagrams of its design, in a substrate meant to facilitate this. The experience of creating such a substrate is analysed, and I suggest deficiencies in programming environments that stand in the way of making this practice commonplace, as well as ways to fill in these gaps.","PeriodicalId":373173,"journal":{"name":"Companion Proceedings of the 4th International Conference on Art, Science, and Engineering of Programming","volume":"46 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-03-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127617454","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
An experimental audio-tactile interface for sculpting digital resonance models using modelling clay 一个实验性的音频触觉界面雕刻数字共振模型使用建模粘土
Jack Armitage
{"title":"An experimental audio-tactile interface for sculpting digital resonance models using modelling clay","authors":"Jack Armitage","doi":"10.1145/3397537.3398482","DOIUrl":"https://doi.org/10.1145/3397537.3398482","url":null,"abstract":"Programming interfaces are still monopolised by the typewriter and paper emulator display. This makes programming exclusionary towards anyone for whom such interfaces are unpleasant, unnatural or unusable. Further, this monopoly excludes every other human faculty that might be used to express unexpressed programs through unimagined means. To destablise this status quo, alternative programming models have been sought which are more amenable to a wider range of interfaces. We believe a complimentary approach to be broadening the search for programming interfaces by excluding the need for an explicit programming model at first. We present an experimental audio-tactile interface for sculpting digital resonance models using clay, along with preliminary reflections from a study with 34 musicians, luthiers and other craftspeople. We reflect on how tracing the emergence of tacit and embodied knowledge about an unfamiliar, implicit programming interface could inspire different ideas about programming models and other aspects of programming systems.","PeriodicalId":373173,"journal":{"name":"Companion Proceedings of the 4th International Conference on Art, Science, and Engineering of Programming","volume":"2018 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-03-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121420393","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
相关产品
×
本文献相关产品
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信