@inproceedings{39ab35fd0aa042a985410dd5b3a7b9ca,
title = "CS1 with a Side of AI: Teaching Software Verification for Secure Code in the Era of Generative AI",
abstract = "As AI-generated code promises to become an increasingly relied upon tool for software developers, there is a temptation to call for significant changes to early computer science curricula. A move from syntax-focused topics in CS1 toward abstraction and high-level application design seems motivated by the new large language models (LLMs) recently made available. In this position paper however, we advocate for an approach more informed by the AI itself - teaching early CS learners not only how to use the tools but also how to better understand them. Novice programmers leveraging AI-code-generation without proper understanding of syntax or logic can create {"}black box{"}code with significant security vulnerabilities. We outline methods for integrating basic AI knowledge and traditional software verification steps into CS1 along with LLMs, which will better prepare students for software development in professional settings.",
keywords = "ai, artificial intelligence, code generation, copilot, cs1, gpt-4, introductory programming, large language model, llm, machine learning, novice programmers, programming, prompt engineering, secure code, software verification",
author = "Fernandez, \{Amanda S.\} and Cornell, \{Kimberly A.\}",
note = "Publisher Copyright: {\textcopyright} 2024 Owner/Author.; 55th ACM Technical Symposium on Computer Science Education, SIGCSE 2024 ; Conference date: 20-03-2024 Through 23-03-2024",
year = "2024",
month = mar,
day = "7",
doi = "10.1145/3626252.3630817",
language = "English",
series = "SIGCSE 2024 - Proceedings of the 55th ACM Technical Symposium on Computer Science Education",
publisher = "Association for Computing Machinery, Inc",
pages = "345--351",
booktitle = "SIGCSE 2024 - Proceedings of the 55th ACM Technical Symposium on Computer Science Education",
}