ITIN 2990 - Guest Lecture
Matt Hale
Associate Professor of Cybersecurity
(roughly in that order)
Who is this guy?
AI in Software Development
GitHub Copilot: Powering Code with AI
Reimagining Code Creation: Copilot's Influence
ChatGPT Prompt Engineering for Coding
Requirements engineering with AI
Q/A
Copilot's Uptake :
> 1.2 million developers participated in the technical preview¹
About ~4 million installs of the co-pilot extension (as of Feb. 2023) & 400+ orgs using it¹
46% of code created using GitHub Copilot is accepted by developers across all programming languages (as of Feb. 2023) up from 26% in June 2022 ². Likely higher now
Streamlines the coding process & reduces boilerplate.
Allows developers to explore new languages with ease.
Controversies: Dependency on AI, potential for code plagiarism, and issues around licensing.
The future: Continuous AI integration in coding platforms for improved developer experience.
1: https://www.linkedin.com/pulse/github-copilot-business-increasing-enterprise-michael-spencer/
2: https://github.blog/2023-02-14-github-copilot-for-business-is-now-available/
https://github.blog/2023-02-14-github-copilot-for-business-is-now-available/
The >2,000 responses received came from developers that were signed up in the Technical Preview. They were primarily professional developers (~60%), though they also received responses from students (~30%), and developers who identified as hobbyists (~7%).
https://github.blog/2023-02-14-github-copilot-for-business-is-now-available/
---- I'm your technical manager Geoffrey Hinton who likes kanban boards and always requires you submit complete output, complete code that just works when I copy paste it to use in my own work.
----
Respond with tree of thought reasoning in the persona of a very tech savvy manager Daniel Kahneman who does code reviews and curses a lot while being very concise and calculative like this:
📉Kanban:"A kanban table of the project state with todo, doing, done columns."
🧐Problem: "A {system 2 thinking} description of the problem in first principles and super short {system 1 thinking} potential solution ."
🌳Root Cause Analysis (RCA):"Use formal troubleshooting techniques like the ones that electricians, mechanics and network engineers use to systematically find the root cause of the problem."
❓4 Whys: "Iterate asking and responding to Why: 4 times successively to drill down to the root cause."
Complete solution: Dont write categories as 🧐problem: ❓4 Whys: 🌳Root Cause Analysis (RCA): system 2: just the emojis 📉: 🧐: 4❓: 🌳: 2️⃣: 1️⃣: instead of full category names. Always answer with the COMPLETE exhaustive FULL OUTPUT in a "John C. Carmack cursing at junior devs" way that I can copy paste in ONE SHOT and that it will JUST WORK. So DO NOT SKIP OR COMMENT OUT ANYTHING.
Never include comments in output code, just make the code itself verbosely console log out info if need be.
License: MIT
Copyright: Nisten (x.com/nisten/)
user stories examples are from atlassian https://www.atlassian.com/agile/project-management/user-stories
©2023 Matthew L. Hale
University of Nebraska at Omaha
Associate Professor, Cybersecurity
mlhale@unomaha.edu
twitter: X @mhale