{"slug": "ai-just-changed-who-gets-to-be-a-programmer", "title": "AI Just Changed Who Gets to Be a Programmer", "summary": "AI coding agents are shifting the most important programming skill from writing code to precisely describing software requirements in natural language, according to GitHub's 2025 State of the Octoverse and the Stack Overflow Developer Survey. TypeScript overtook Python and JavaScript to become the most-used language on GitHub by contributor count in August 2025, while Python adoption rose by seven percentage points between 2024 and 2025. Tools like GitHub Copilot's agent mode, Claude Code, and OpenAI Codex now let humans instruct agents in English, making the quality of the instruction more influential than syntax knowledge.", "body_md": "For years, learning to code meant choosing a programming language.\n\nPython was often the first recommendation. It has readable syntax, a large collection of libraries, and strong support for automation, data science, and AI development.\n\nPython is still useful. Its popularity is not disappearing.\n\nBut the most important programming skill is beginning to move one level higher.\n\nAI coding agents can now read a repository, edit several files, run tests, inspect errors, and revise their work. The human does not always write the code directly. The human explains what the software should do.\n\nThat explanation is usually written in English.\n\nA vague instruction produces vague software. A missing requirement becomes a missing feature. An unclear definition of “done” gives the agent permission to stop at the wrong point.\n\nThe person who can describe a system precisely may now have more control over the result than the person who simply remembers the most syntax.\n\nPython remains one of the most widely used programming languages.\n\nThe Stack Overflow Developer Survey reported that Python adoption increased by seven percentage points between 2024 and 2025. It continues to be widely used for AI, data science, automation, and back-end development.\n\nGitHub’s data tells a slightly different story.\n\nAccording to the 2025 State of the Octoverse, TypeScript overtook Python and JavaScript to become the most-used language on GitHub by contributor count in August 2025.\n\nPython still added roughly 850,000 contributors during the measured period and remained the leading language for AI and data science projects.\n\nSo Python is not dying.\n\nWhat has changed is the point where many people enter the programming process.\n\nInstead of opening a blank file and writing Python, they open an AI coding tool and describe the feature they want.\n\nThe agent decides which files to inspect, what code to write, and which commands to run.\n\nThe first language used is no longer Python.\n\nIt is the language of the request.\n\nTraditional programming has a clear sequence:\n\nAI agents add another layer:\n\nTools such as GitHub Copilot’s agent mode, Claude Code, and OpenAI Codex already work this way.\n\nGitHub describes Copilot agent mode as a system that receives natural-language instructions, examines a codebase, edits files, runs commands, checks errors, and revises its solution.\n\nOpenAI’s Codex can also read and edit repository files, run test suites, use linters, and submit changes for review.\n\nThis is different from asking a chatbot to produce a small code snippet.\n\nA coding agent may work across an entire project. It can make dozens of decisions based on a few paragraphs of human instruction.\n\nThat gives the original instruction much more influence.\n\nEnglish is not executable in the same way as Python.\n\nA Python statement follows defined syntax. The interpreter does not guess what a variable “probably” means. It either processes the instruction or returns an error.\n\nNatural language is more flexible.\n\nIf you tell a person to “make the page load faster,” they may ask what currently feels slow. They may check performance data, identify the main delay, and discuss what can safely be changed.\n\nAn AI agent may choose one interpretation and start editing.\n\nThe phrase “make it faster” could mean:\n\nEach interpretation can produce different code.\n\nWhen English controls an agent, ordinary words begin carrying technical consequences. Requirements, exceptions, permissions, and success conditions all affect what the agent builds.\n\nEnglish does not replace code at the machine level. It becomes the instruction layer above it.\n\nA prompt asks for something.\n\nA specification defines what should happen.\n\nConsider this request:\n\nAdd a login page to my app.\n\nThe agent still needs to make many decisions.\n\nShould users log in with an email address or username? Does the app already have an authentication system? What happens after three failed attempts? Where should users be redirected? Does the page need password recovery?\n\nA more useful request would be:\n\nAdd an email and password login page using the authentication service already configured in the repository. Place the page at /login. Validate the email format before submission and display the existing API error message when authentication fails. After a successful login, redirect the user to /dashboard. Do not add social login or change the database schema. Add tests for successful login, invalid email, and rejected credentials.\n\nThis instruction gives the agent:\n\nThe second request is longer, but length is not what makes it useful.\n\nIt removes decisions the agent should not make alone.\n\nPeople often judge an AI coding tool by the code it produces.\n\nThe real problem may have started before the code existed.\n\nIf the instruction says, “Build a clean dashboard,” the agent has to guess what “clean” means.\n\nIt may remove controls the user needs. It may hide data behind extra clicks. It may choose colors that do not meet accessibility requirements.\n\nWords such as “simple,” “modern,” “secure,” and “user-friendly” sound clear until someone has to turn them into behavior.\n\nReplace those words with conditions that can be checked.\n\nInstead of:\n\nMake the checkout more user-friendly.\n\nTry:\n\nKeep the checkout on one page. Preserve the customer’s entered information when payment fails. Show shipping costs before the payment step. Display validation errors beside the relevant field. Support keyboard navigation and keep existing mobile behavior unchanged.\n\nThe improved version gives the agent less room to create an attractive solution that fails the actual task.\n\nNatural language has a serious weakness: it allows ambiguity.\n\nThe same sentence can mean different things to different people. A requirement can sound complete while hiding several assumptions.\n\nCode is stricter.\n\nA function has defined inputs. A type system can reject the wrong value. A test can check whether an expected result occurred. A compiler can catch mistakes that a paragraph cannot.\n\nThis is one reason typed languages may become more useful as AI writes more code.\n\nGitHub has argued that type systems provide a safety layer for code a developer did not write personally. Types can expose mismatched inputs, unexpected outputs, and incorrect assumptions before the application runs.\n\nAI agents may reduce the need to type every line manually. They increase the need for systems that can verify those lines.\n\nEnglish can describe the goal.\n\nIt cannot prove that the implementation is correct.\n\nAI coding agents make it easier to produce software without remembering every command.\n\nThey do not remove the need to understand software.\n\nYou still need enough knowledge to recognize:\n\nAn agent can produce code that runs while still creating a security problem or a future maintenance issue.\n\nIt may catch the visible error and miss the assumption behind it.\n\nThis is why AI coding can feel easy at the beginning and difficult near the end. Producing the first version takes minutes. Deciding whether that version is safe to release requires judgment.\n\nThe required skill is moving from code production toward code direction and review.\n\nThe presence of an agent does not guarantee a productivity gain.\n\nMETR conducted a randomized study involving 16 experienced developers completing 246 tasks in large open-source projects. In that setting, developers using AI tools took 19 percent longer to finish their assigned work.\n\nThe developers expected AI to make them faster. Even after completing the study, they believed it had saved time.\n\nThe researchers carefully limited their conclusion. The result does not show that AI slows every developer or every type of project. It applies to experienced contributors working on repositories they already understood well.\n\nYou can read the full METR report here.\n\nThe study highlights an important cost of agent-assisted coding.\n\nGenerated code still needs to be read, tested, corrected, and understood. A weak instruction can create more review work than writing the change manually.\n\nEnglish becomes valuable when it reduces uncertainty.\n\nMore prompting alone does not improve the process.\n\nA coding agent needs a way to know whether it succeeded.\n\n“Make sure it works” is not a useful test.\n\nA clear acceptance criterion gives the agent something it can check:\n\nTests turn part of the English request into an observable result.\n\nThey also help when the agent misunderstands you.\n\nIf the implementation violates a test, the failure creates immediate feedback. Without tests, a mistake may look acceptable until a user encounters it.\n\nOpenAI’s Codex documentation recommends configured development environments, clear project documentation, and reliable tests. Codex can run test suites and type checkers, but only if the repository provides them.\n\nThe agent can use a safety net.\n\nSomeone still has to build it.\n\nA strong agent request usually answers six questions.\n\nDescribe the current behavior.\n\nThe profile form loses all entered values when the server rejects the image upload.\n\nDefine the desired behavior.\n\nPreserve the text fields and show the upload error above the image selector.\n\nPoint it toward the relevant part of the project.\n\nThe form is in src/components/ProfileForm.tsx, and the upload request is handled by src/api/profile.ts.\n\nProtect unrelated behavior.\n\nDo not change the API contract, route names, or existing validation messages.\n\nGive the agent acceptance criteria.\n\nAdd a test that submits valid profile text with an oversized image. Confirm that the text remains in the form and the upload error appears.\n\nRequest information needed for review.\n\nSummarize the files changed, explain the cause of the bug, and include the test command and result.\n\nThese details make the work easier to review.\n\nThey also reduce the chance that the agent fixes the visible symptom by changing something unrelated.\n\nCoding agents learn about a project by reading it.\n\nThey inspect README files, tests, type definitions, configuration, comments, issue descriptions, and repository instructions.\n\nSome tools support dedicated instruction files. OpenAI Codex can use AGENTS.md files that explain the project structure, testing commands, and development rules.\n\nGitHub Copilot supports repository instructions for similar reasons.\n\nThis changes the value of documentation.\n\nDocumentation used to help the next developer understand the project. It now also affects how an agent edits that project.\n\nA poorly documented codebase forces the agent to infer more. Those guesses can appear in every change it makes.\n\nClear documentation becomes operational. It shapes generated code.\n\nBeginners should still learn a programming language.\n\nPython remains a strong place to start because its syntax is readable and it allows new programmers to build useful projects quickly.\n\nBut learning syntax alone is no longer enough.\n\nA beginner working with AI should also learn how to:\n\nDo not measure progress by how much code the agent produced.\n\nMeasure it by how much of the result you can explain.\n\nIf the agent creates 2,000 lines and you cannot describe the flow of the application, you do not control the project yet.\n\nPython communicates with an interpreter.\n\nEnglish communicates intent to people and agents.\n\nBoth can fail, but they fail in different ways. Python usually fails when its rules are broken. English can fail while sounding completely reasonable.\n\nThat makes precise communication part of technical work.\n\nThe strongest AI-assisted developers will not simply write the longest prompts. They will define problems clearly, place limits around the solution, provide relevant context, and create checks that expose wrong assumptions.\n\nThey will know when to let an agent work and when to open the code themselves.\n\nPython is still important.\n\nBut in a workflow where agents write more of the implementation, the first program may be the instruction you give them.\n\nAnd that program is written in English.\n\n[AI Just Changed Who Gets to Be a Programmer](https://blog.stackademic.com/ai-just-changed-who-gets-to-be-a-programmer-34f34d9a0440) was originally published in [Stackademic](https://blog.stackademic.com) on Medium, where people are continuing the conversation by highlighting and responding to this story.", "url": "https://wpnews.pro/news/ai-just-changed-who-gets-to-be-a-programmer", "canonical_source": "https://blog.stackademic.com/ai-just-changed-who-gets-to-be-a-programmer-34f34d9a0440?source=rss----d1baaa8417a4---4", "published_at": "2026-08-11 04:11:34+00:00", "updated_at": "2026-08-11 04:35:39.854474+00:00", "lang": "en", "topics": ["artificial-intelligence", "ai-agents", "developer-tools", "generative-ai"], "entities": ["GitHub", "Stack Overflow", "TypeScript", "Python", "GitHub Copilot", "Claude Code", "OpenAI Codex"], "alternates": {"html": "https://wpnews.pro/news/ai-just-changed-who-gets-to-be-a-programmer", "markdown": "https://wpnews.pro/news/ai-just-changed-who-gets-to-be-a-programmer.md", "text": "https://wpnews.pro/news/ai-just-changed-who-gets-to-be-a-programmer.txt", "jsonld": "https://wpnews.pro/news/ai-just-changed-who-gets-to-be-a-programmer.jsonld"}}