Skip to main content
Pixel art timeline LEFT to RIGHT: 1960s programmer with punch cards, 1980s green-screen terminal, 2010s modern IDE, 2025 AI pair programming, and a glowing question mark for the unknown future. Tagline: The Hard Part Was Never the Typing.

CS 3100: Program Design and Implementation II

Lecture 38: The Future of Programming

©2026 Jonathan Bell, CC-BY-SA

Learning Objectives

After this lecture, you will be able to:

  1. Analyze what AI coding tools actually change about software engineering — and what they do not
  2. Evaluate the real-world evidence on AI-assisted development and identify when AI helps vs. hinders
  3. Identify durable skills and concrete next steps for continuous learning

Arc 1: What Does AI Actually Change?

Open Poll Everywhere.

Every Generation Says "That's Not Real Programming"

L1 callback: Grace Hopper built one of the first compilers. The response?

"I kept getting told that I couldn't do that, because a computer could only do arithmetic. They couldn't write programs."

DecadeNew abstraction"That's not real programming"
1950sCompilers"Real programmers write machine code"
1970sStructured programming"Real programmers use GOTO"
1990sGarbage collection"Real programmers manage their own memory"
2010sFrameworks, low-code"Real programmers write everything from scratch"
2020sAI coding assistants"Real programmers write their own code"

The pattern repeats: a tool automates part of the work. The definition of "programming" shifts upward to the work the tool cannot do.

The Hard Part Was Never the Typing

Iceberg diagram: above the waterline (warm orange), small items labeled Boilerplate, Syntax, API Lookups — things AI removes. Below the waterline (cool purple, much larger), heavy blocks labeled Understanding Requirements, Architectural Tradeoffs, Edge Case Reasoning — things that remain. Robot arm sweeps away the top items. Waterline labeled Brooks Line 1986.

Fred Brooks (1986): AI is spectacularly effective above the waterline. Everything below it is what you are paid for.

The Productivity Gain Is Real — It Is Just Invisible

EraToolsWhat "a web app" meant
2000Hand-written HTML, CGI scriptsStatic pages with a form
2008Rails, Django, jQueryDynamic CRUD app with a database
2015React, Docker, microservicesReal-time SPA with mobile support, CI/CD, monitoring
2020Kubernetes, serverless, design systemsMulti-platform, accessible, globally distributed, auto-scaling
2026AI-assisted developmentAll of the above, plus AI features, built by a smaller team

Each generation's tools made the previous generation's software trivial to build. But nobody used the tools to build last generation's software faster — they used them to build this generation's software at all.

L36 (Jevons' paradox): The 10x gain is real — it is invisible because the baseline keeps moving. 2026 has MORE accidental complexity than 2000, not less.

AI Removes the Accidental — The Essential Remains

AI handles (accidental)

  • Boilerplate and syntax
  • API lookups
  • Routine test generation
  • Code translation
  • Pattern application
  • First-draft documentation

You handle (essential)

  • Understanding what to build (L9)
  • Designing for change (L7)
  • Edge case reasoning (L15)
  • Architectural tradeoffs (L18)
  • Stakeholder evaluation (L9)
  • Professional responsibility (L35)

Every lecture this semester focused on the right column. AI makes the left cheaper. The right is what you are paid for.

Discuss with a Neighbor (3-4 minutes)

Think about your GA1/GA2 experience.

  1. What parts were accidental complexity — boilerplate, setup, syntax — that AI handled or could have handled?
  2. What parts were essential complexity — design decisions, debugging integration issues, understanding user needs — that no tool could bypass?
  3. Do you agree with Brooks that the 10x gain is real but invisible? Or is something genuinely different this time?

Arc 2: Does AI Actually Make Developers Faster?

Open Poll Everywhere.

Feeling Fast Is Not the Same as Being Fast

Multiple controlled studies — they disagree on speed but agree on one thing:

StudyYearNSpeed effectPerception
METR RCT202516 experienced devs19% slowerBelieved 20% faster
Microsoft "Dear Diary"2025200+ engineersNo significant change84% reported positive impact
MIT/MS/Accenture20251,974 devs+26% PR throughput
DORA 20252025Thousands+21% individual tasksOrg delivery flat

The resolution: Individual speed ≠ organizational throughput. DORA and Faros both found: individuals produce more PRs, but PRs are 154% larger with 91% longer review times. The bottleneck shifts from writing to reviewing.

The Quality Evidence Is Less Ambiguous — and Not Good

Good practices
×
AI
=
Better
Bad practices
×
AI
=
Faster bad

DORA 2025: "AI is a multiplier of existing engineering conditions."

StudyKey finding
CodeRabbit1.7x more issues, 2.74x more XSS
Uplevel+41% bug rate
GitClearCode churn doubled
Stanford/BonehLess secure, more confident

L13's review step is not optional — it is where quality comes from.

Discuss with a Neighbor (3-4 minutes)

The evidence says AI makes developers feel faster while producing buggier code.

  1. Have you experienced the perception gap? A moment where AI seemed to help but actually cost you time?
  2. DORA says AI is a "multiplier of existing engineering conditions." What does that imply about the value of what you learned in this course?
  3. Where on the vibe coding spectrum (pure vibe → assisted → AI-informed → manual) should you be working for different kinds of tasks?

Arc 3: What Does This Mean for Your Career?

Open Poll Everywhere.

Learning Debt Compounds Across All Four Dimensions

A bridge labeled Software Industry supported by four cracked pillars: Technical (codebases no one understands), Economic (teams absorb hidden costs), Social (who reviews AI in 5 years?), Environmental (trial-and-error wastes compute at scale). Diverse figures on the bridge depend on the same cracking infrastructure. Base labeled Learning Debt.

The "learning tax" is not just pedagogy. It is a sustainability investment.

The Entry-Level Question + Professional Responsibility

Two career ladders side by side. Left: traditional ladder with bottom 2 rungs (bug fixes, CRUD endpoints) dissolving — developer looks up at the gap. Right: AI-assisted ramp leads up to the Well-specified features rung, which is still solid — developer stands on it with AI helper beside them. All upper rungs intact. Left: pessimistic read. Right: AI changes how you climb, not whether. Quote: Regulate critical software, not AI — Parnas.

Stanford (2025): ~20% drop in software developer employment ages 22-25. The question: are the bottom rungs disappearing, or is the on-ramp changing shape?

Discuss with a Neighbor (3-4 minutes)

Three questions — pick the one that matters most to you:

  1. The jobs question: Which read do you find more convincing — pessimistic or optimistic? What evidence would change your mind? What skills from this course are most relevant to "the roles that remain"?
  2. The learning debt question: Did you accumulate learning debt this semester? Is there a concept you relied on AI for that you couldn't explain? What would it take to pay it down?
  3. The responsibility question: If your AI-generated code had a bug that affected a real user, who is responsible — you, the AI company, or both?

Arc 4: What Endures?

Same Question, 40 Minutes Later

"AI will fundamentally change what it means to be a software engineer within 5 years."

Vote again on Poll Everywhere. Did your position change?

If it changed: what moved you? If it did not: what would it take?

Memory safety as policy: The White House called out C and C++ by name. CISA lists memory-unsafe languages as a "bad practice." 45% of organizations now use Rust in production. Microsoft is rewriting Windows kernel components in Rust. Language choice is becoming a regulatory decision. (L35: safety-by-design embedded in a language.)

Formal verification + AI: Kleppmann argues AI will make formal verification mainstream — not by replacing it, but by making proof generation cheap enough to be practical. If AI generates code we cannot fully review, proving correctness becomes more valuable than testing for it. Extends L15: unit tests → integration → E2E → formal proofs.

WebAssembly beyond the browser: Wasm is quietly becoming a third runtime. Zero cold-start, ~1/10th memory of Node.js. Write in Rust/Go/TypeScript, compile to Wasm, run anywhere. L6 (information hiding) at the runtime level. L21 (sub-millisecond serverless). L36 (10x less energy per request — but Jevons asks: 10x more requests?).

Every Lecture Sustains Something That AI Does Not Replace

Lecture ArcWhat It TaughtWhat It Sustains
L1-L4: Java, contracts, specificationsWrite code that means what it saysCorrectness over time
L5-L8: Readability, coupling, SOLIDWrite code others can changeMaintainability over years
L9, L12: Requirements, domain modelingBuild the right thingValue over project lifetime
L13: AI agentsUse tools without outsourcing judgmentCompetence over career
L15-L16: Testing, testabilityKnow when code is wrongConfidence over every commit
L18-L21: Architecture, networks, serverlessBuild systems that survive changeAdaptability over organizational lifetime
L22-L23: Teams, open sourceWork with humans and communitiesCollaboration over industry lifetime
L28-L30: Accessibility, GUI, MVVMBuild for all usersInclusivity over societal timescale
L31-L33: Concurrency, async, eventsHandle complexity at scaleScalability under load
L34-L36: Performance, safety, sustainabilityDo not harm usersResponsibility over consequences
L37: MapReduceSee it all in one real systemSynthesis
L38: TodayWhat endures when everything else changesLearning agility over career

The Future Is Unwritten — But You Are Not Unprepared

We do not know what programming will look like in 10 years.

What we do know: the people who thrive will be those who can learn what is needed, adapt when things change, work effectively with others, and bring clear thinking to complex problems.

Those are not "soft skills" separate from "real" technical work.

They ARE technical work, viewed over time.

Looking Ahead

L39 (Thursday): Review — exam preparation, course synthesis, your questions.

GA2: Feature Buffet due Thursday April 16. Process over product — a well-documented partial feature scores higher than a complete feature with no documentation.

Final Report due Monday April 20. Written report (architecture, team reflection, sustainability assessment), infographic poster, demo video, individual reflection. Mostly assembling things you've already done — but don't leave it all for the very last moment.

Final Exam: Check the schedule. Covers the full semester, emphasis on final third (architecture through sustainability).

If you are interested in...Take...Why
Distributed systems, consensusCS 4730Formalize L31-L33
Systems programming, memory safetyCS 3650What Java hides — and why Rust exists
Security, supply chainCS 3700Extend L20 to network attacks
AI/ML systems engineeringCS 4100Understand the tools from inside
Open source at scaleCS 4535Apply everything to Pawtograder