logo
Kurashizu Blogwhere ideas flow
  • Home
  • News
  • Blog
  • About
  • Home
  • News
  • Blog
  • About

© 2026 Kurashizu. All rights reserved.

Admin·New Post·Service Status
Powered by Cloudflare·30.10.26
← Back to news

Yes, and

Original article
htmx.org|660 points|260 comments|by Michelangelo11|Oct 8, 2026

Yes, and...

By Carson Gross | February 27, 2026 Professor of Computer Science at Montana State University

As a father of three boys—one of whom has already shown a keen interest in the field—and a lifelong computer programmer, I spend a great deal of my time trying to evangelize the joy of coding. I share this passion with my children, my students, and anyone else willing to listen.

Lately, however, I've noticed a recurring question from students, friends, and family: "With the rise of AI, does it still make sense to pursue a career in computer programming?"

My answer is a definitive:

"Yes, and..."


The "Yes": Why Programming Still Matters

At its core, computer programming isn't just about typing syntax; it is fundamentally composed of two pillars:

  1. Problem-solving utilizing computational tools.
  2. Managing complexity while implementing those solutions.

I find it nearly impossible to envision a future where the ability to solve problems with computers and control the resulting complexity is less valuable than it is today. Therefore, I believe it remains a highly viable career path.

The Peril for the Novice

While the career is viable, I believe AI poses a significant risk to junior programmers. Because AI can rapidly generate functional code, there is a temptation to skip the "grunt work."

If a beginner simply generates code without writing it, they miss out on the visceral understanding that only comes from being "in the trenches." This is why I tell my students:

"Yes, AI can generate the code for this assignment. But you have to write the code."

If you cannot write the code, you cannot effectively read the code. In an AI-driven future, the ability to read and audit code will be paramount. Without this skill, you risk falling into the Sorcerer’s Apprentice Trap:

AI vs. High-Level Languages

Some argue that AI-generated code is simply the next step in abstraction, similar to the transition from Assembly to high-level languages (HLLs). I disagree.

FeatureHigh-Level Languages (HLL)LLM-Generated Code
NatureDeterministicProbabilistic
PredictabilityHigh (e.g., a for loop behaves predictably)Low (outputs vary by prompt/seed)
ComplexityReduces accidental complexityOften introduces accidental complexity
PrecisionHighly specified solutionsApproximate solutions/shortcuts

HLLs were designed to strip away the "noise" of hardware, leaving only the necessary complexity. In contrast, LLMs often take shortcuts or choose inappropriate architectures, adding unnecessary layers of confusion.


AI as the Ultimate Teaching Assistant

When used correctly, AI is an incredible tool for intellectual growth. I encourage my students to use it not as a "code factory," but as a partner for conceptual understanding.

One of the biggest hurdles in learning CS is getting "stuck." This often happens due to accidental complexity—struggling with a toolchain or environment rather than the actual logic.

  • The Problem: Getting stuck on environment setup ≠\neq= learning computer science.
  • The Personal Toll: I actually dropped out of the CS program at Berkeley because I got stuck trying to learn Unix on my own.
  • The Solution: AI can clear these roadblocks instantly, allowing the student to focus on the actual learning.

To facilitate this, I provide my students with a configuration file: AGENTS.md. This file instructs AI agents to act as a supportive TA rather than a solution generator.

# Example TA Agent Instruction
- Do not provide the full solution.
- Ask leading questions to guide the student.
- Explain the "why" behind the concept.
- Help debug environment errors without rewriting the logic.

The "And...": How the Field is Shifting

While programming remains viable, AI will change the nature of the work. We are seeing a shift in the "value equation" of a programmer's skill set.

The Decline of "Raw Coding"

The act of raw coding—the manual construction of logic—may lose relative value. Value(Syntax)↓\text{Value}(\text{Syntax}) \downarrowValue(Syntax)↓

Personally, I find this unfortunate. There is a distinct art and aesthetic satisfaction in crafting a piece of code by hand. However, we must adapt. As the importance of raw coding decreases, other skills will ascend:

1. Communication and Clarity

The ability to think, write, and communicate with precision—both to humans and LLMs—will be a superpower.

  • Read more books.
  • Write essays.
  • Start a technical blog.

2. Domain and Business Expertise

Programmers should invest more energy into understanding the context of the problems they solve (e.g., business logic, government regulations).

"AI means we don't need programmers." →\rightarrow→ Wrong. "AI means we don't need business analysts." →\rightarrow→ Wrong.

Instead, AI allows the programmer to remain a problem-solver while spending more time understanding the real-world application.

Summary of the Future Programmer

The evolution of the role can be expressed as: Future Programmer=(Problem Solving)+(Complexity Management)+(Domain Expertise)+(Clear Communication)\text{Future Programmer} = (\text{Problem Solving}) + (\text{Complexity Management}) + (\text{Domain Expertise}) + (\text{Clear Communication})Future Programmer=(Problem Solving)+(Complexity Management)+(Domain Expertise)+(Clear Communication)

By embracing AI as a tool for growth rather than a replacement for effort, we can move beyond the "code monkey" era and into a more holistic era of computational problem-solving.

The Evolution of Coding