Are Problems the Next Programming Language?

Are Problems the Next Programming Language?

I’m not a data scientist, but after years of working on AI-driven solutions in healthcare, security, data management, and beyond, I can tell when patterns are shifting. “History doesn’t repeat, but it rhymes.” Today, we’re witnessing a transformation that will fundamentally change how we think about technology itself. Could the future of programming language be problem definition and not a new abstract code?

For most of its history, programming has advanced in generational steps—each one pushing us a bit further from machine-level, hardware-specific instructions toward higher abstraction. Machine language, the first generation, allowed us to directly communicate with computers but demanded knowledge of hardware and binary code. Assembly language, in the second generation, improved readability with symbolic mnemonics like MOV and ADD, making programming slightly more human-accessible.

This shift isn’t something I’m only seeing now. David West, President of Scrum.org, and I have been discussing the importance of problem definition in programming for more than a decade. (Thank you David for the software history lesson!) Problem definition, he pointed out, is central to software development as it aligns what we want to solve with how it will be solved, using precise language and clear objectives.

How Did We Get Here? A Brief History of Generations

Reflecting on the trajectory of programming languages helps us understand this potential shift. The generational model has shown that each stage provides more accessibility and abstraction:

1. Machine Language (1GL): Binary code that directly communicates with hardware—tedious, but foundational.

2. Assembly Language (2GL): Introduced symbolic language for machine instructions—better, but still highly specialized.

3. High-Level Languages (3GL): FORTRAN, COBOL, C—languages that opened programming to a wider audience by focusing on functions, data structures, and more.

4. Domain-Specific and Declarative Languages (4GL): SQL, MATLAB—let users focus on tasks, not implementations.

5. Problem-Solving Languages (5GL): Prolog, LISP—geared toward AI, where users describe the “what,” and the system figures out the “how.”

Each generation made programming more approachable. But what if the sixth generation made it accessible to nearly everyone by shifting the focus entirely to problem definition?

Why Problem-Focused Programming Makes Sense

As we look to the sixth generation, problem-focused programming offers advantages beyond accessibility. It invites us to think about technology development as an interplay between human creativity and AI problem-solving. Rather than spending time on coding minutiae, developers could become “Problem Designers” or “Strategic Thinkers,” defining complex challenges and goals for AI to interpret. This shift would free humans to focus on creativity and big-picture strategy—high-value areas where AI’s capabilities complement human insight.

The benefits are substantial. AI’s iterative capabilities enable continuous improvement, so solutions adapt to new information and conditions. AI can analyze real-time data, making quick adjustments and refining solutions as problems evolve. Moreover, this aligns well with current trends in no-code and low-code platforms, which are already empowering non-technical users to build applications with minimal coding.

One reason we created the Kendall Framework was to address this growing need for a structured language for communicating with AI. Recognizing that AI requires precise, well-articulated problem definitions, the Kendall Framework provides a template to break down complex issues into components AI can process—roles, specific objectives, and desired outcomes. It gives businesses a way to turn strategic challenges into inputs AI can interpret and execute on, bridging business goals with technical execution in a way that feels intuitive and structured.

As Fei-Fei Li, co-director of Stanford’s Human-Centered AI Institute, said, “AI’s future lies in augmenting human capabilities, not just replicating them.” Problem-focused programming could embody that principle by letting AI handle the details while humans focus on defining the goals and constraints.

Challenges and Ethical Considerations

While promising, this shift comes with challenges. How do we ensure AI understands the nuances of a complex problem statement? Ambiguity can lead to unintended results, and defining problems in ways that avoid misinterpretation will be critical. The quality of AI’s output also heavily depends on data quality; if the data AI uses is biased or incomplete, the resulting solutions will be too.

Furthermore, automated code generation raises accountability questions. Who is responsible for errors if AI-generated code fails? As AI continues to evolve, ensuring transparency and ethical accountability will be essential, as highlighted by experts like Timnit Gebru, who has emphasized the importance of ethical frameworks in AI development.

Moving Forward: The Future of Problem Definition

Leading organizations such as OpenAI and DeepMind, alongside research institutions like MIT, are exploring ways to help AI interpret complex human tasks and solve real-world problems. The path forward points toward defining what needs to be solved, not how to solve it.

A problem-driven approach would redefine the human role in technology development. Instead of seeing ourselves as coders, we’d become the architects of intelligent solutions, describing complex problem spaces that AI can interpret and address. History shows us that when we redefine how we interact with technology, we expand the range of who can contribute and what can be achieved. This evolution could redefine what it means to “program,” making technology development more inclusive, adaptive, and impactful for generations to come.

要查看或添加评论,请登录

Brendan McSheffrey的更多文章

社区洞察

其他会员也浏览了