<?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>Forem: Mohamed Isaac</title>
    <description>The latest articles on Forem by Mohamed Isaac (@mohamedisaac).</description>
    <link>https://forem.com/mohamedisaac</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.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3678153%2F4e3c65e6-2ace-4ed3-b929-2713488b68d4.jpg</url>
      <title>Forem: Mohamed Isaac</title>
      <link>https://forem.com/mohamedisaac</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/mohamedisaac"/>
    <language>en</language>
    <item>
      <title>How Microsoft Access and WordPress Secretly Taught Me Programming</title>
      <dc:creator>Mohamed Isaac</dc:creator>
      <pubDate>Thu, 25 Dec 2025 11:06:48 +0000</pubDate>
      <link>https://forem.com/mohamedisaac/how-microsoft-access-and-wordpress-secretly-taught-me-programming-h5o</link>
      <guid>https://forem.com/mohamedisaac/how-microsoft-access-and-wordpress-secretly-taught-me-programming-h5o</guid>
      <description>&lt;p&gt;For a long time, I believed that my programming journey only truly began when I touched JavaScript, React, or Ruby. Looking back now, I realize that’s not true. Long before I wrote my first proper line of code, I was already learning the &lt;em&gt;mental models&lt;/em&gt; of programming—just without knowing their names.&lt;/p&gt;

&lt;p&gt;Two tools in particular shaped my understanding far more than I realized at the time: &lt;strong&gt;Microsoft Access&lt;/strong&gt; and &lt;strong&gt;WordPress&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;At the time, I thought I was just “using software.” In reality, I was learning how systems think.&lt;/p&gt;

&lt;h2&gt;
  
  
  Microsoft Access: My First Programming Teacher (Without Code)
&lt;/h2&gt;

&lt;p&gt;Microsoft Access was my first exposure to structured thinking. I created two tables and connected them. I built queries—some manually, some using small bits of SQL. At the time, it felt like office work. Today, I recognize it as my first lesson in &lt;strong&gt;computer science fundamentals&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6ucvn9o8z9ukbmytilqw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6ucvn9o8z9ukbmytilqw.png" alt=" " width="480" height="360"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;From Access, I learned:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;That data is not stored in one big place, but in &lt;strong&gt;multiple connected tables&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;The idea of &lt;strong&gt;relationships&lt;/strong&gt; between entities with their attributes and Primary/ foriegn keys (This will be later useful when designing database schemas in ER diagrams)&lt;/li&gt;
&lt;li&gt;That data has &lt;strong&gt;types&lt;/strong&gt;: text, numbers, Yes/No (It will be called Boolean in PL data types)&lt;/li&gt;
&lt;li&gt;That text must be wrapped in &lt;strong&gt;quotation marks&lt;/strong&gt;—what programming languages later called &lt;em&gt;strings&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;Why naming matters: avoiding spaces in table names to prevent brackets in queries, and using underscores instead&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Data validation&lt;/strong&gt;, which later clicked for me as type safety&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Data redundancy&lt;/strong&gt;, and why repeating the same information is a problem (later the concept of Dynamic)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;At the time, I had no idea these concepts would reappear years later in programming languages, databases, and frameworks. But when they did, they felt familiar—almost comforting.&lt;/p&gt;

&lt;p&gt;Access quietly trained my brain to think in terms of structure, rules, and relationships.&lt;/p&gt;

&lt;h2&gt;
  
  
  WordPress and Moodle: Learning Systems, Not Just Websites
&lt;/h2&gt;

&lt;p&gt;Later, I started building WordPress websites and Moodle platforms. Again, I didn’t think of this as programming. I thought of it as “setting up websites.”&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7gbghwiko80yki6pxqiy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7gbghwiko80yki6pxqiy.png" alt=" " width="800" height="856"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;But WordPress taught me an entirely different layer of thinking.&lt;/p&gt;

&lt;p&gt;Through it, I learned:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What &lt;strong&gt;domains&lt;/strong&gt; and &lt;strong&gt;hosting&lt;/strong&gt; actually are&lt;/li&gt;
&lt;li&gt;How software lives on servers and is accessed through the web&lt;/li&gt;
&lt;li&gt;The vocabulary of the web: widgets, menus, plugins, themes, design, etc&lt;/li&gt;
&lt;li&gt;Basic SEO concepts&lt;/li&gt;
&lt;li&gt;How systems are extended through plugins instead of rewriting everything&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Most importantly, WordPress gave me a taste of &lt;strong&gt;modularity&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;I could install a plugin to add functionality. I could remove it without breaking the whole system. I could customize layouts, behaviors, and workflows without touching the core engine.&lt;/p&gt;

&lt;p&gt;That’s when something inside me shifted.&lt;/p&gt;

&lt;h2&gt;
  
  
  When Customization Became Curiosity
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F76tvbmk8mrjqtq3s1g9o.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F76tvbmk8mrjqtq3s1g9o.png" alt=" " width="680" height="316"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;At some point, WordPress stopped being enough.&lt;/p&gt;

&lt;p&gt;I didn’t just want to &lt;em&gt;use&lt;/em&gt; plugins anymore—I wanted to understand &lt;strong&gt;how they worked&lt;/strong&gt;. I wanted deeper customization. I wanted control.&lt;/p&gt;

&lt;p&gt;That appetite didn’t come from nowhere. It came from repeatedly interacting with systems that &lt;em&gt;almost&lt;/em&gt; let me express my ideas—but not fully.&lt;/p&gt;

&lt;p&gt;This is an important stage in a learner’s journey:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;First, you accept the tool as-is&lt;/li&gt;
&lt;li&gt;Then, you customize it&lt;/li&gt;
&lt;li&gt;Finally, you want to build it yourself&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;WordPress unknowingly pushed me toward that final stage.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Hidden Lesson: Transferable Thinking
&lt;/h2&gt;

&lt;p&gt;What Microsoft Access and WordPress gave me wasn’t syntax. It was something far more valuable:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Systems thinking&lt;/li&gt;
&lt;li&gt;Abstraction&lt;/li&gt;
&lt;li&gt;Constraints&lt;/li&gt;
&lt;li&gt;Structure&lt;/li&gt;
&lt;li&gt;Cause and effect&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;When I later encountered programming terms like &lt;em&gt;tables, schemas, components, props, validation, modularity,&lt;/em&gt; and &lt;em&gt;reuse&lt;/em&gt;, they didn’t feel alien. They felt like old friends with new names.&lt;/p&gt;

&lt;p&gt;I didn’t realize it then, but I was already preparing my mind for programming—slowly, imperfectly, and unconsciously.&lt;/p&gt;

&lt;h2&gt;
  
  
  Looking Back
&lt;/h2&gt;

&lt;p&gt;It’s easy to dismiss tools like Access or WordPress as “not real programming.” I used to think that way too. Now I see them differently.&lt;/p&gt;

&lt;p&gt;They were my &lt;strong&gt;on-ramp&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;They taught me how computers organize the world. And once that clicked, learning actual programming languages became less about memorizing syntax and more about translating ideas I already understood.&lt;/p&gt;

&lt;p&gt;Sometimes, learning doesn’t look like learning—until years later, when everything suddenly makes sense.&lt;/p&gt;

</description>
      <category>programming</category>
      <category>webdev</category>
      <category>beginners</category>
      <category>discuss</category>
    </item>
  </channel>
</rss>
