<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Abemelek Samson</title>
    <description>The latest articles on DEV Community by Abemelek Samson (@abemelek_samson_540ffb3e3).</description>
    <link>https://dev.to/abemelek_samson_540ffb3e3</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4062856%2Fb9306253-6a24-4599-90c4-9866d65c4822.png</url>
      <title>DEV Community: Abemelek Samson</title>
      <link>https://dev.to/abemelek_samson_540ffb3e3</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/abemelek_samson_540ffb3e3"/>
    <language>en</language>
    <item>
      <title>Is Learning Syntax Still Worth It in the Age of AI?</title>
      <dc:creator>Abemelek Samson</dc:creator>
      <pubDate>Tue, 04 Aug 2026 16:57:18 +0000</pubDate>
      <link>https://dev.to/abemelek_samson_540ffb3e3/is-learning-syntax-still-worth-it-in-the-age-of-ai-1476</link>
      <guid>https://dev.to/abemelek_samson_540ffb3e3/is-learning-syntax-still-worth-it-in-the-age-of-ai-1476</guid>
      <description>&lt;p&gt;For the past few months, I have been thinking about a question that I honestly did not know how to answer:&lt;/p&gt;

&lt;p&gt;Am I wasting my time learning how to code?&lt;/p&gt;

&lt;p&gt;Not learning software engineering. Not learning how systems work.&lt;/p&gt;

&lt;p&gt;Specifically, learning syntax.&lt;/p&gt;

&lt;p&gt;Learning the rules of a programming language. Memorizing APIs. Understanding how TypeScript, Python, Rust, Go, and other languages are structured.&lt;/p&gt;

&lt;p&gt;Because everywhere I looked, I kept seeing the same prediction:&lt;/p&gt;

&lt;p&gt;"Syntax is dead."&lt;/p&gt;

&lt;p&gt;The argument sounds logical.&lt;/p&gt;

&lt;p&gt;AI can already generate code from natural language. Developers can describe what they want, and tools can create components, APIs, database schemas, and entire applications.&lt;/p&gt;

&lt;p&gt;People like Andrej Karpathy have described a future where natural language becomes a new programming interface, often referred to as "Software 3.0." The idea is that instead of humans translating ideas into programming languages, humans express intent and AI systems handle the implementation.&lt;/p&gt;

&lt;p&gt;And honestly, when you see what modern AI tools can do, it is hard not to question the old path.&lt;/p&gt;

&lt;p&gt;Why spend years learning syntax when AI can produce it instantly?&lt;/p&gt;

&lt;p&gt;Why memorize frameworks when AI can search and generate examples?&lt;/p&gt;

&lt;p&gt;Why become fluent in a programming language when the machine can translate your intentions directly into code?&lt;/p&gt;

&lt;p&gt;I have read arguments on both sides.&lt;/p&gt;

&lt;p&gt;I have watched demos, read discussions, followed engineers debating whether software engineering is fundamentally changing, and asked myself a more personal question:&lt;/p&gt;

&lt;p&gt;If AI can write the code, what exactly am I learning when I learn to write code?&lt;/p&gt;

&lt;p&gt;After thinking about it for months, this is the conclusion I reached.&lt;/p&gt;

&lt;p&gt;I might still be wrong.&lt;/p&gt;

&lt;p&gt;But I think the conversation has been focused on the wrong thing.&lt;/p&gt;

&lt;p&gt;The question is not whether humans will continue typing every line of code.&lt;/p&gt;

&lt;p&gt;The question is whether humans will still need to understand the representation through which software behavior is expressed.&lt;/p&gt;

&lt;p&gt;And right now, that representation is code.&lt;br&gt;
The Argument That Syntax Is Becoming Obsolete&lt;/p&gt;

&lt;p&gt;The argument against learning syntax is not completely unreasonable.&lt;/p&gt;

&lt;p&gt;Technology has always moved upward through abstraction layers.&lt;/p&gt;

&lt;p&gt;Early programmers worked directly with machine instructions.&lt;/p&gt;

&lt;p&gt;Then assembly languages appeared.&lt;/p&gt;

&lt;p&gt;Then higher-level languages.&lt;/p&gt;

&lt;p&gt;Then frameworks, libraries, and managed platforms.&lt;/p&gt;

&lt;p&gt;At every stage, humans moved further away from the machine.&lt;/p&gt;

&lt;p&gt;Today, most developers do not think about CPU instructions, memory addresses, or hardware interrupts.&lt;/p&gt;

&lt;p&gt;They work with abstractions.&lt;/p&gt;

&lt;p&gt;So why would source code be different?&lt;/p&gt;

&lt;p&gt;Maybe programming languages are simply another layer that will eventually disappear.&lt;/p&gt;

&lt;p&gt;Maybe the future looks like this:&lt;/p&gt;

&lt;p&gt;Human:&lt;/p&gt;

&lt;p&gt;"Build a payment system that supports subscriptions, refunds, and international currencies."&lt;/p&gt;

&lt;p&gt;AI:&lt;/p&gt;

&lt;p&gt;"Done."&lt;/p&gt;

&lt;p&gt;No Python.&lt;/p&gt;

&lt;p&gt;No TypeScript.&lt;/p&gt;

&lt;p&gt;No database queries.&lt;/p&gt;

&lt;p&gt;No implementation details.&lt;/p&gt;

&lt;p&gt;Just intent.&lt;/p&gt;

&lt;p&gt;And if that happens, spending years memorizing syntax might look like learning assembly after compilers already existed.&lt;br&gt;
But What Problem Did Syntax Actually Solve?&lt;/p&gt;

&lt;p&gt;The more I thought about this, the more I realized something important:&lt;/p&gt;

&lt;p&gt;Syntax was never really about communicating with computers.&lt;/p&gt;

&lt;p&gt;Computers do not care about syntax.&lt;/p&gt;

&lt;p&gt;They execute instructions.&lt;/p&gt;

&lt;p&gt;Syntax exists because humans need a way to reason about complex systems.&lt;/p&gt;

&lt;p&gt;A programming language is not just a list of keywords.&lt;/p&gt;

&lt;p&gt;It is a structured representation of behavior.&lt;/p&gt;

&lt;p&gt;When an engineer reads:&lt;/p&gt;

&lt;p&gt;async def process_payment():&lt;/p&gt;

&lt;p&gt;they are not simply reading punctuation.&lt;/p&gt;

&lt;p&gt;They are thinking:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;this operation may not complete immediately,&lt;/li&gt;
&lt;li&gt;there may be concurrency involved,&lt;/li&gt;
&lt;li&gt;failures may happen independently,&lt;/li&gt;
&lt;li&gt;execution order matters,&lt;/li&gt;
&lt;li&gt;state changes need to be controlled.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The syntax is the surface.&lt;/p&gt;

&lt;p&gt;The deeper value is the mental model behind it.&lt;/p&gt;

&lt;p&gt;This is why experienced engineers can move between languages.&lt;/p&gt;

&lt;p&gt;A senior Python developer can learn Go or Rust relatively quickly because they are not memorizing keywords.&lt;/p&gt;

&lt;p&gt;They understand concepts:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;memory,&lt;/li&gt;
&lt;li&gt;state,&lt;/li&gt;
&lt;li&gt;data flow,&lt;/li&gt;
&lt;li&gt;abstraction,&lt;/li&gt;
&lt;li&gt;concurrency,&lt;/li&gt;
&lt;li&gt;failure handling.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Syntax is the doorway through which those concepts are accessed.&lt;br&gt;
The Real Question: If AI Writes Code, Who Verifies It?&lt;/p&gt;

&lt;p&gt;This is where I think the debate changes.&lt;/p&gt;

&lt;p&gt;The argument is often:&lt;/p&gt;

&lt;p&gt;"AI can write code, therefore humans don't need to learn code."&lt;/p&gt;

&lt;p&gt;But that assumes generation is the difficult part.&lt;/p&gt;

&lt;p&gt;What happens after generation?&lt;/p&gt;

&lt;p&gt;Imagine an AI creates a backend system.&lt;/p&gt;

&lt;p&gt;The application works.&lt;/p&gt;

&lt;p&gt;The tests pass.&lt;/p&gt;

&lt;p&gt;Then three weeks later:&lt;/p&gt;

&lt;p&gt;A customer reports duplicate payments.&lt;/p&gt;

&lt;p&gt;A security vulnerability appears.&lt;/p&gt;

&lt;p&gt;The system crashes under unexpected traffic.&lt;/p&gt;

&lt;p&gt;A database migration corrupts data.&lt;/p&gt;

&lt;p&gt;Now the problem is not:&lt;/p&gt;

&lt;p&gt;"Can someone write code?"&lt;/p&gt;

&lt;p&gt;The problem is:&lt;/p&gt;

&lt;p&gt;"Can someone understand what this system is doing?"&lt;/p&gt;

&lt;p&gt;Someone has to investigate:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Why did this state transition happen?&lt;/li&gt;
&lt;li&gt;Where did this assumption fail?&lt;/li&gt;
&lt;li&gt;Which component created this behavior?&lt;/li&gt;
&lt;li&gt;Is the fix actually safe?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;At that moment, understanding the representation becomes essential.&lt;/p&gt;

&lt;p&gt;You cannot reliably verify a system you cannot read.&lt;br&gt;
But Could AI Become the Verifier Too?&lt;/p&gt;

&lt;p&gt;This is the strongest argument against my own position.&lt;/p&gt;

&lt;p&gt;What if AI becomes good enough?&lt;/p&gt;

&lt;p&gt;What if future systems can: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;understand entire codebases,&lt;/li&gt;
&lt;li&gt;detect vulnerabilities,&lt;/li&gt;
&lt;li&gt;prove correctness,&lt;/li&gt;
&lt;li&gt;design architectures,&lt;/li&gt;
&lt;li&gt;debug production issues?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Then maybe humans really do not need to understand source code.&lt;/p&gt;

&lt;p&gt;This is where I think the answer becomes less obvious.&lt;/p&gt;

&lt;p&gt;Because maybe the future is not:&lt;/p&gt;

&lt;p&gt;Human --&amp;gt; Code --&amp;gt; Software&lt;/p&gt;

&lt;p&gt;Maybe it becomes:&lt;/p&gt;

&lt;p&gt;Human --&amp;gt; Specification --&amp;gt; AI --&amp;gt; Software&lt;/p&gt;

&lt;p&gt;However, there is still a question:&lt;/p&gt;

&lt;p&gt;What is the human-readable representation of that specification?&lt;/p&gt;

&lt;p&gt;Every complex system needs some representation humans can inspect and reason about.&lt;/p&gt;

&lt;p&gt;Today, that representation is code.&lt;/p&gt;

&lt;p&gt;Maybe tomorrow it is something else.&lt;/p&gt;

&lt;p&gt;But we have not found anything better yet.&lt;br&gt;
The History of Replacing Code With Higher-Level Representations&lt;/p&gt;

&lt;p&gt;This idea is not new.&lt;/p&gt;

&lt;p&gt;Many attempts have tried to move humans away from traditional programming: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;visual programming,&lt;/li&gt;
&lt;li&gt;UML diagrams,&lt;/li&gt;
&lt;li&gt;low-code platforms,&lt;/li&gt;
&lt;li&gt;no-code tools.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;They all improved productivity in specific situations.&lt;/p&gt;

&lt;p&gt;But none replaced programming entirely.&lt;/p&gt;

&lt;p&gt;Why?&lt;/p&gt;

&lt;p&gt;Because complex software requires:  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;precision,&lt;/li&gt;
&lt;li&gt;composability,&lt;/li&gt;
&lt;li&gt;version control,&lt;/li&gt;
&lt;li&gt;collaboration,&lt;/li&gt;
&lt;li&gt;debugging,
&lt;/li&gt;
&lt;li&gt;inspection.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Text-based programming languages are incredibly powerful because they provide all of these.&lt;/p&gt;

&lt;p&gt;The challenge is not removing representation.&lt;/p&gt;

&lt;p&gt;The challenge is finding better representations.&lt;br&gt;
So Does Syntax Matter?&lt;/p&gt;

&lt;p&gt;I think the answer depends on what we mean by syntax.&lt;/p&gt;

&lt;p&gt;If syntax means:&lt;/p&gt;

&lt;p&gt;"Memorize every keyword, framework function, and API signature."&lt;/p&gt;

&lt;p&gt;Then yes, AI reduces the value of that.&lt;/p&gt;

&lt;p&gt;You do not need to remember everything anymore.&lt;/p&gt;

&lt;p&gt;But if syntax means:&lt;/p&gt;

&lt;p&gt;"Understand how software concepts are expressed and learn to read programs as systems."&lt;/p&gt;

&lt;p&gt;Then syntax becomes more important, not less.&lt;/p&gt;

&lt;p&gt;Because AI increases the amount of software being produced.&lt;/p&gt;

&lt;p&gt;More software means more things to verify.&lt;/p&gt;

&lt;p&gt;More generated code means more need for people who understand what the generated system actually does.&lt;br&gt;
The Future Is Not About Typing More Code&lt;/p&gt;

&lt;p&gt;I do not think the future engineer is someone who manually writes every line forever.&lt;/p&gt;

&lt;p&gt;AI will absolutely change development.&lt;/p&gt;

&lt;p&gt;Engineers will spend less time on:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;boilerplate,&lt;/li&gt;
&lt;li&gt;repetitive implementation,&lt;/li&gt;
&lt;li&gt;searching documentation.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;They will spend more time on:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;understanding systems,&lt;/li&gt;
&lt;li&gt;reviewing changes,&lt;/li&gt;
&lt;li&gt;debugging failures,&lt;/li&gt;
&lt;li&gt;making architectural decisions.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;But those skills do not appear magically.&lt;/p&gt;

&lt;p&gt;They come from understanding the foundations of software.&lt;br&gt;
Final Thought&lt;/p&gt;

&lt;p&gt;After spending months thinking about this, I do not believe syntax is dead.&lt;/p&gt;

&lt;p&gt;But I also do not believe the future engineer is simply someone who types code faster than everyone else.&lt;/p&gt;

&lt;p&gt;The value of syntax was never the typing itself.&lt;/p&gt;

&lt;p&gt;The value was that syntax gave humans a precise way to express, inspect, and reason about software.&lt;/p&gt;

&lt;p&gt;Maybe one day we will have a better representation.&lt;/p&gt;

&lt;p&gt;Maybe AI will create a new programming paradigm where source code becomes less important.&lt;/p&gt;

&lt;p&gt;But until then, code remains the language humans use to understand the systems they build.&lt;/p&gt;

&lt;p&gt;So if you are learning programming today, I do not think learning syntax is wasted effort.&lt;/p&gt;

&lt;p&gt;The goal is not to memorize a language.&lt;/p&gt;

&lt;p&gt;The goal is to become fluent enough in the language of software that you can understand, question, and verify whatever comes next. &lt;/p&gt;

</description>
      <category>ai</category>
      <category>programming</category>
      <category>softwareengineering</category>
      <category>agents</category>
    </item>
  </channel>
</rss>
