VLDB 2026 Research / reviewers in the wild / expert
Michal Moskal
dblp:28/721
· DBLP profile ↗
25ranked-venue papers
4as first author
5since 2021 · last 2024
0000-0001-5791-2228ORCID · verified
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 13 · 2 first-author · 1 since 2021Human-computer interaction and ubiquitous computing · 8 · 1 first-author · 4 since 2021Theory of computation · 4 · 1 first-authorArtificial intelligence and machine learning · 2Systems, architecture and hardware · 1Databases, data management, data science and information retrieval · 1 · 1 first-authorGraphics, computer vision, multimedia, augmented reality and games · 1 · 1 first-author · 1 since 2021Applied, interdisciplinary, general and emerging computing · 1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2024 | Meet MicroCode: a Live and Portable Programming Tool for the BBC micro: bitabstractPhysical computing has emerged as an effective approach to introducing computing and coding to students. One of the most popular enabling tools is the BBC micro:bit, well-known for its positive impact on teaching programming and driving engagement in the classroom. We extend these benefits by developing a new approach to coding with micro:bit: MicroCode. Unlike other experiences, MicroCode couples the micro:bit with a low-cost handheld accessory to enable live and portable programming via an on-device visual programming language; no separate host computer is needed. We present the design of MicroCode and the findings of a study in which we interviewed five primary school teachers and 60 children aged 10-11 working with MicroCode. The outcomes of the study show that MicroCode raised children’s engagement and stimulated the development of a strong sense of agency on coding activities, while teachers felt empowered to adopt situated and cross-curricular learning approaches. Kobi Hartley, Elisa Rubegni, Lorraine Underwood, Joe Finney, Thomas Ball 0001, Steve Hodges 0001, Jonathan de Halleux, James Devine, Michal Moskal |
IDC | 10 |
| 2024 | Jacdac: Service-Based Prototyping of Embedded SystemsabstractThe traditional approach to programming embedded systems is monolithic: firmware on a microcontroller contains both application code and the drivers needed to communicate with sensors and actuators, using low-level protocols such as I2C, SPI, and RS232. In comparison, software development for the cloud has moved to a service-based development and operation paradigm: a service provides a discrete unit of functionality that can be accessed remotely by an application, or other service, but is independently managed and updated. We propose, design, implement, and evaluate a service-based approach to prototyping embedded systems called Jacdac. Jacdac defines a service specification language, designed especially for embedded systems, along with a host of specifications for a variety of sensors and actuators. With Jacdac, each sensor/actuator in a system is paired with a low-cost microcontroller that advertises the services that represent the functionality of the underlying hardware over an efficient and low-cost single-wire bus protocol. A separate microcontroller executes the user's application program, which is a client of the Jacdac services on the bus. Our evaluation shows that Jacdac supports a service-based abstraction for sensors/actuators at low cost and reasonable performance, with many benefits for prototyping: ease of use via the automated discovery of devices and their capabilities, substitution of same-service devices for each other, as well as high-level programming, monitoring, and debugging. We also report on the experience of bringing Jacdac to commercial availability via third-party manufacturers. Thomas Ball 0001, Jonathan de Halleux, James Devine, Steve Hodges 0001, Michal Moskal |
Proc. ACM Program. Lang. | 5 |
| 2022 | ML Blocks: A Block-Based, Graphical User Interface for Creating TinyML ModelsabstractThis paper describes ML Blocks, https://tinyurl.com/ml-blocks, a novel interface for training, evaluating, and deploying Tiny Machine Learning (TinyML) models. TinyML is a fast-growing field that incorporates powerful machine learning algorithms into everyday technologies such as activity trackers and Internet of Things devices. Although TinyML-capable microcontrollers are popular in computer science education, few students have had the opportunity to learn about the field because of a lack of novice-friendly ML interfaces. With ML Blocks, users assemble data sets, define, and train neural network classifiers, within one unified block interface. Users can quickly evaluate their classifiers using built-in visualization tools and then export them for use in microcontroller projects. ML Blocks makes the end-to-end development of TinyML models easier for physical computing students and tinkerers at all levels. Randi Williams, Michal Moskal, Jonathan de Halleux |
VL/HCC | 2 |
| 2021 | Rethinking the Runway: Using Avant-Garde Fashion To Design a System for WearablesabstractTechnology has become increasingly pervasive in the creative and experimental environment of the avant-garde fashion runway, particularly in relation to its garments. However, several disciplines are often necessary when exploring technologies for the construction of expressive garments (e.g. garments that respond to their environment), creating a barrier for fashion designers that has limited their ability to leverage new technologies. To help overcome this barrier, we designed and deployed Brookdale, a prototyping system for wearable technology consisting of new plug-and-play hardware that can be programmed using drag-and-drop software. Brookdale was created using a 24-week participatory design process with 17 novice fashion-tech designers. At the end of the 24 week process, designers showcased their Brookdale-enhanced garment collections at an avant-garde fashion-tech runway show in New York City. We report on the experiences, outcomes, and lessons learned throughout this process, and describe results from interviews with the fashion-tech designers 16 weeks after the fashion show, demonstrating the lasting positive impact of Brookdale. Teddy Seyed, James Devine, Joe Finney, Michal Moskal, Jonathan de Halleux, Steve Hodges 0001, Thomas Ball 0001, Asta Roseway |
CHI | 4 |
| 2021 | Web-based Programming for Low-cost Gaming HandheldsabstractLow-cost microcontroller boards like the BBC micro:bit are used to engage and inspire students worldwide to learn more about computing. Easy-to-use web-based programming environments and low-cost hardware allow novices to build physical computing systems with the micro:bit – systems that sense and respond to the real world. However, devices such as the micro:bit may not capture the attention of every student, as the interests of some may lie in graphic design, animation, or other areas that are not the main focus of physical computing. Michal Moskal, Thomas Ball 0001, Abhijith Chatra, James Devine, Jonathan de Halleux, Steve Hodges 0001, Shannon Kao, Richard Knoll, Galen Nickel, Jacqueline Russell, Joey Wunderlich, Daryl Zuniga |
FDG | 1 |
| 2019 | Static TypeScript: an implementation of a static compiler for the TypeScript languageabstractWhile the programming of microcontroller-based embeddable devices typically is the realm of the C language, such devices are now finding their way into the classroom for CS education, even at the level of middle school. As a result, the use of scripting languages (such as JavaScript and Python) for microcontrollers is on the rise. Thomas Ball 0001, Jonathan de Halleux, Michal Moskal |
MPLR | 3 |
| 2019 | MakeCode and CODAL: Intuitive and efficient embedded systems programming for educationabstractHistorically, embedded systems development has been a specialist skill, requiring knowledge of low-level programming languages, complex compilation toolchains, and specialist hardware, firmware, device drivers and applications. However, it has now become commonplace for a broader range of non-specialists to engage in the making (design and development) of embedded systems - including educators to motivate and excite their students in the classroom. This diversity brings its own set of unique requirements, and the complexities of existing embedded systems development platforms introduce insurmountable barriers to entry. In this paper we present the motivation, requirements, implementation, and evaluation of a new programming platform that enables novice users to create effective and efficient software for embedded systems. The platform has two major components: (1) Microsoft MakeCode (www.makecode.com), a web app that encapsulates an accessible IDE for microcontrollers; and (2) CODAL, an efficient component-oriented C++ runtime for microcontrollers. We show how MakeCode and CODAL combine to provide an accessible, cross-platform, installation-free, high level programming experience for embedded devices without sacrificing performance and efficiency. James Devine, Joe Finney, Jonathan de Halleux, Michal Moskal, Thomas Ball 0001, Steve Hodges 0001 |
J. Syst. Archit. | 4 |
| 2018 | A System-General Model for the Detection of Gaming the System Behavior in CTAT and LearnSphere
Luc Paquette, Ryan Baker 0001, Michal Moskal |
AIED (2) | 3 |
| 2018 | MakeCode and CODAL: intuitive and efficient embedded systems programming for educationabstractAcross the globe, it is now commonplace for educators to engage in the making (design and development) of embedded systems in the classroom to motivate and excite their students. This new domain brings its own set of unique requirements. Historically, embedded systems development requires knowledge of low-level programming languages, local installation of compilation toolchains, device drivers, and applications. For students and educators, these requirements can introduce insurmountable barriers. James Devine, Joe Finney, Jonathan de Halleux, Michal Moskal, Thomas Ball 0001, Steve Hodges 0001 |
LCTES | 4 |
| 2015 | User-aware privacy control via extended static-information-flow analysis
Xusheng Xiao, Nikolai Tillmann, Manuel Fähndrich, Jonathan de Halleux, Michal Moskal, Tao Xie 0001 |
Autom. Softw. Eng. | 5 |
| 2014 | Addressing JavaScript JIT Engines Performance Quirks: A Crowdsourced Adaptive Compiler
Rafael Auler, Edson Borin, Jonathan de Halleux, Michal Moskal, Nikolai Tillmann |
CC | 4 |
| 2014 | Co-induction Simply - Automatic Co-inductive Proofs in a Program Verifier
K. Rustan M. Leino, Michal Moskal |
FM | 2 |
| 2013 | It's alive! continuous feedback in UI programmingabstractLive programming allows programmers to edit the code of a running program and immediately see the effect of the code changes. This tightening of the traditional edit-compile-run cycle reduces the cognitive gap between program code and execution, improving the learning experience of beginning programmers while boosting the productivity of seasoned ones. Unfortunately, live programming is difficult to realize in practice as imperative languages lack well-defined abstraction boundaries that make live programming responsive or its feedback comprehensible. Sebastian Burckhardt, Manuel Fähndrich, Jonathan de Halleux, Sean McDirmid, Michal Moskal, Nikolai Tillmann, Jun Kato 0001 |
PLDI | 5 |
| 2012 | From C to Infinity and Back: Unbounded Auto-active Verification with VCC
Michal Moskal |
CAV | 1 |
| 2012 | Engage Your Students by Teaching Computer Science Using Only Mobile Devices with TouchDevelopabstractWe are experiencing a technology shift: powerful and easy-to-use touchscreen-based mobile devices such as smartphones and tablets are becoming more prevalent than traditional PCs and laptops. Many mobile devices are going to be the first and, in less developed countries, possibly the only computing devices that virtually all people would own and carry with them at all times. We propose to reflect this new reality in how computer science is taught in the classroom. In this tutorial, participants will learn about developing software directly on smartphones without a PC using TouchDevelop on Windows Phone, a novel application-creation environment from Microsoft Research. Its typed, structured programming language is built around the idea of using only a touchscreen as the input device to author code. Easy access to the rich sensor and personal data available on a mobile device results in a fun and engaging programming experience for students. Nikolai Tillmann, Michal Moskal, Jonathan de Halleux, Manuel Fähndrich, Tao Xie 0001 |
CSEE&T | 2 |
| 2012 | The future of teaching programming is on mobile devicesabstractFrom paper to computers, the way that we have been writing down thoughts and performing symbolic computations has been constantly evolving. Teaching methods closely follow this trend, leveraging existing technology to make teaching more effective and preparing students for their later careers with the available technology. Right now, in 2012, we are in the middle of another technology shift: instead of using PCs and laptops, mobile devices are becoming more prevalent for most everyday computing tasks. In fact, never before in human history were incredibly powerful and versatile computing devices such as smartphones available and adopted so broadly. We propose that computer programming, and thus the teaching of programming, can and should be done directly on the mobile devices themselves, without the need for a separate PC or laptop to write code. Programming on smartphones that we carry around with us at all times means instant gratification for students, as they can show their games and applications to their friends, and it means that students can do their homework or additional practicing at all times. We describe TouchDevelop, a novel mobile programming environment, and call out challenges that need to be overcome and opportunities that it creates. Nikolai Tillmann, Michal Moskal, Jonathan de Halleux, Manuel Fähndrich, Judith Bishop, Arjmand Samuel, Tao Xie 0001 |
ITiCSE | 2 |
| 2012 | User-aware privacy control via extended static-information-flow analysisabstractApplications in mobile-marketplaces may leak private user information without notification. Existing mobile platforms provide little information on how applications use private user data, making it difficult for experts to validate applications and for users to grant applications access to their private data. We propose a user-aware privacy control approach, which reveals how private information is used inside applications. We compute static information flows and classify them as safe/unsafe based on a tamper analysis that tracks whether private data is obscured before escaping through output channels. This flow information enables platforms to provide default settings that expose private data only for safe flows, thereby preserving privacy and minimizing decisions required from users. We built our approach into TouchDevelop, an application-creation environment that allows users to write scripts on mobile devices and install scripts published by other users. We evaluate our approach by studying 546 scripts published by 194 users. Xusheng Xiao, Nikolai Tillmann, Manuel Fähndrich, Jonathan de Halleux, Michal Moskal |
ASE | 5 |
| 2012 | Engage your students by teaching programming using only mobile devices with TouchDevelop (abstract only)abstractWe are experiencing a technology shift: Powerful and easy-to-use touchscreen-based mobile devices like smartphones and tablets are becoming more prevalent than traditional PCs and laptops. We propose that computer programming, and thus teaching of programming, can and should be done directly on the mobile devices themselves, without the need for a separate PC or laptop to write code. In this workshop, participants will learn about developing software directly on smartphones without a PC using TouchDevelop, a novel application creation environment on Windows Phone 7 from Microsoft Research (http://touchdevelop.com). Its typed, structured programming language is built around the idea of only using a touchscreen as the input device to author code. A semi-structured code editor makes it easy to navigate between different syntax elements. By inferring types and mining previously written programs, the editor provides highly predictive auto-completion suggestions to the user. The language provides built-in primitives that make it easy to access the rich sensor data available on a mobile device. Programming on mobile devices engages students in new ways, allowing them to access and manipulate programmatically their most personal digital data such as pictures, videos, and music. Programming on smartphones which we carry around with us at all times means instant gratification for students, as they can show their games and applications to their friends, and it means that students can do their homework or additional practicing at all times. For this workshop, a laptop is optional; Windows Phone 7 devices will be provided for exercises. Nikolai Tillmann, Michal Moskal, Jonathan de Halleux, Manuel Fähndrich, Tao Xie 0001 |
SIGCSE | 2 |
| 2012 | TouchDevelop: app development on mobile devicesabstractMobile devices are becoming the prevalent computing platform for most people. TouchDevelop is a new mobile development environment that enables anyone with a Windows Phone to create new apps directly on the smartphone, without a PC or a traditional keyboard. At the core is a new mobile programming language and editor that was designed with the touchscreen as the only input device in mind. Programs written in TouchDevelop can leverage all phone sensors such as GPS, cameras, accelerometer, gyroscope, and stored personal data such as contacts, songs, pictures. Thousands of programs have already been written and published with TouchDevelop. Nikolai Tillmann, Michal Moskal, Jonathan de Halleux, Manuel Fähndrich, Sebastian Burckhardt |
SIGSOFT FSE | 2 |
| 2011 | Heaps and Data Structures: A Challenge for Automated Provers
Sascha Böhme, Michal Moskal |
CADE | 2 |
| 2011 | The role of information fusion in providing analytical rigor for intelligence analysis
Michal Moskal, Moises Sudit, Kedar Sambhoos |
FUSION | 1 |
| 2011 | The Boogie Verification Debugger (Tool Paper)
Claire Le Goues, K. Rustan M. Leino, Michal Moskal |
SEFM | 3 |
| 2010 | Local Verification of Global Invariants in Concurrent Programs
Ernie Cohen, Michal Moskal, Wolfram Schulte, Stephan Tobies |
CAV | 2 |
| 2010 | HOL-Boogie - An Interactive Prover-Backend for the Verifying C Compiler
Sascha Böhme, Michal Moskal, Wolfram Schulte, Burkhart Wolff |
J. Autom. Reason. | 2 |
| 2008 | Rocket-Fast Proof Checking for SMT Solvers
Michal Moskal |
TACAS | 1 |