<?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: Odai Athamneh</title>
    <description>The latest articles on DEV Community by Odai Athamneh (@heyodai).</description>
    <link>https://dev.to/heyodai</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%2F857129%2Ff2dc7e6a-1a8c-4716-a4d4-4827a057db77.jpeg</url>
      <title>DEV Community: Odai Athamneh</title>
      <link>https://dev.to/heyodai</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/heyodai"/>
    <language>en</language>
    <item>
      <title>The Hydra of Machine Learning: Understanding Multi-headed Attention</title>
      <dc:creator>Odai Athamneh</dc:creator>
      <pubDate>Fri, 27 Oct 2023 19:18:31 +0000</pubDate>
      <link>https://dev.to/heyodai/the-hydra-of-machine-learning-understanding-multi-headed-attention-1cp7</link>
      <guid>https://dev.to/heyodai/the-hydra-of-machine-learning-understanding-multi-headed-attention-1cp7</guid>
      <description>&lt;h2&gt;
  
  
  🚩 TL;DR
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Multi-headed attention (MTA) is revolutionizing many fields in machine learning.&lt;/li&gt;
&lt;li&gt;The architecture uses multiple "heads", allowing the model to examine different parts of the data at the same time.&lt;/li&gt;
&lt;li&gt;Many cutting edge AI products, like ChatGPT, are made possible by MTA.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  📖 Introduction
&lt;/h2&gt;

&lt;p&gt;Picture yourself trying to focus on a gripping mystery novel, but your mind keeps wandering to the pile of dishes in the sink, the email you have to send, or the news notification that just popped up on your phone. Wouldn't it be great if you could pay attention to all these different aspects simultaneously and in varying degrees?&lt;/p&gt;

&lt;p&gt;Welcome to the world of multi-headed attention (MTA) in machine learning! This innovative approach allows machines to focus on various parts of data all at once, just like you wish your mind could. &lt;/p&gt;

&lt;p&gt;But why is understanding this concept so crucial? Because MTA is revolutionizing fields like natural language processing, computer vision, and many more. It's the secret sauce that powers everything from chatbots to self-driving cars.&lt;/p&gt;

&lt;h2&gt;
  
  
  🐉 Enter the Hydra
&lt;/h2&gt;

&lt;p&gt;Remember the mythical creature Hydra from Greek mythology, the multi-headed serpent that regrows two heads for every one cut off? Think of MTA as the Hydra of machine learning. Just like Hydra's multiple heads can focus on different threats simultaneously, the "heads" in MTA allow the machine to pay attention to various parts of the data at the same time.&lt;/p&gt;

&lt;p&gt;In simpler terms, each "head" in this mechanism specializes in focusing on different aspects of the data. This enables a more comprehensive and nuanced understanding, much like how the Hydra's many heads give it an advantage in battle.&lt;/p&gt;

&lt;h2&gt;
  
  
  🔩 The Nuts and Bolts
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--PaKkM2E9--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/z3n7it8d7wck2imfr9jh.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--PaKkM2E9--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/z3n7it8d7wck2imfr9jh.png" alt="Diagram contrasting scaled-dot product and MTA architecture" width="462" height="257"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;First introduced in the groundbreaking paper "&lt;a href="https://arxiv.org/abs/1706.03762"&gt;Attention Is All You Need&lt;/a&gt;" by Vaswani et al., this architecture forms the backbone of Transformer models. The above image, from that paper, contrasts it with more traditional architectures.&lt;/p&gt;

&lt;p&gt;Here's a (very simplified) overview of how Transformers work:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Input Data&lt;/strong&gt;: MTA starts by taking an input, like a sentence, and breaking it down into smaller parts, called &lt;a href="https://platform.openai.com/tokenizer"&gt;tokens&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Creating Heads&lt;/strong&gt;: These parts are then distributed across different "heads" for parallel processing.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Weighting Mechanism&lt;/strong&gt;: Each head assigns different weights to these parts based on their importance.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Aggregation&lt;/strong&gt;: After each head has done its job, their findings are aggregated to form a cohesive understanding of the data.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Output&lt;/strong&gt;: The final processed data is then used for various tasks like language translation, text summarization, and more.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Even though the mechanism involves complex mathematics and algorithms, the gist is that MTA allows machines to better understand context, relationships, and nuances, making them smarter and more efficient.&lt;/p&gt;

&lt;h2&gt;
  
  
  🪄 Real-world Applications
&lt;/h2&gt;

&lt;p&gt;The MTA mechanism is the foundation of the Transformer ML architecture. Transformers are powering some of the most cutting-edge applications in today's tech world, such as ChatGPT and DALLE.&lt;/p&gt;

&lt;p&gt;Transformers are also seeing use in many mundane use-cases, such as automatic translation, voice assistants, and recommendation algorithms.&lt;/p&gt;

&lt;p&gt;However, every hero has its limitations. While the Transformer architecture is undeniably powerful, it's not always the go-to choice:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Low-Resource Scenarios:&lt;/strong&gt; Transformers are resource-hungry. In situations where computational power is scarce, like on mobile devices, these models might be overkill.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Real-Time Processing:&lt;/strong&gt; For tasks that demand split-second decisions, the complex computations of transformers might introduce latency. &lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  🔚 Conclusion
&lt;/h2&gt;

&lt;p&gt;By now, you should have a better grasp of this marvelous technology that's quietly transforming our world. Understanding MTA isn't just for tech geeks or machine learning enthusiasts; it's for anyone curious about the technological advancements that are shaping our future.&lt;/p&gt;

&lt;p&gt;So, the next time you talk to your virtual assistant, use a translation app, or even get a medical diagnosis, remember that there's a Hydra-like mechanism working behind the scenes, making all these advancements possible. &lt;/p&gt;

&lt;h2&gt;
  
  
  🛄 Footnotes
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Feedback is always welcome! If there are inaccuracies or areas of improvement, please share.&lt;/li&gt;
&lt;li&gt;The illustrations were crafted using DALLE, and the content was proofread with the assistance of ChatGPT.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>machinelearning</category>
      <category>transformers</category>
      <category>architecture</category>
    </item>
    <item>
      <title>Declarative vs Imperative - Vader Buys a Cake</title>
      <dc:creator>Odai Athamneh</dc:creator>
      <pubDate>Sun, 08 May 2022 22:56:37 +0000</pubDate>
      <link>https://dev.to/heyodai/declarative-vs-imperative-vader-buys-a-cake-8kb</link>
      <guid>https://dev.to/heyodai/declarative-vs-imperative-vader-buys-a-cake-8kb</guid>
      <description>&lt;p&gt;&lt;em&gt;Photo by &lt;a href="https://unsplash.com/photos/n6cUGwvxygA?utm_source=unsplash&amp;amp;utm_medium=referral&amp;amp;utm_content=creditShareLink"&gt;TOMMY VAN KESSEL&lt;/a&gt; on Unsplash&lt;/em&gt;&lt;/p&gt;




&lt;p&gt;There are 2 main programming paradigms:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Declarative.&lt;/strong&gt; What to do. Think SQL.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Imperative.&lt;/strong&gt; How to do it. Think C++.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  🎂 Vader Buys A Cake
&lt;/h2&gt;

&lt;p&gt;As a memory trick, let's imagine buying a chocolate cake with each approach.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Declarative: You go to the bakery and declare you want one. You don't care &lt;em&gt;how&lt;/em&gt; it gets done, you just want the final product.&lt;/li&gt;
&lt;li&gt;Imperative: You stand over the baker and tell him exactly what to do. The &lt;a href="https://www.youtube.com/watch?v=B_iFRoJJLzc"&gt;imperial march&lt;/a&gt; plays in the background.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Other Paradigms
&lt;/h2&gt;

&lt;p&gt;Here's how a few other common approaches can be categorized:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;📢 Declarative&lt;/th&gt;
&lt;th&gt;🎂 Cake&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Procedural Programming&lt;/td&gt;
&lt;td&gt;Logical Programming&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Object Oriented&lt;/td&gt;
&lt;td&gt;Functional Programming&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Parallel Processing&lt;/td&gt;
&lt;td&gt;Database Queries&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

</description>
      <category>umkc</category>
      <category>cs441</category>
    </item>
    <item>
      <title>Static vs Dynamic Typing</title>
      <dc:creator>Odai Athamneh</dc:creator>
      <pubDate>Sun, 08 May 2022 19:33:58 +0000</pubDate>
      <link>https://dev.to/heyodai/static-vs-dynamic-typing-40fe</link>
      <guid>https://dev.to/heyodai/static-vs-dynamic-typing-40fe</guid>
      <description>&lt;p&gt;&lt;em&gt;Photo by &lt;a href="https://unsplash.com/photos/ImcUkZ72oUs?utm_source=unsplash&amp;amp;utm_medium=referral&amp;amp;utm_content=creditShareLink"&gt;israel palacio&lt;/a&gt; on Unsplash&lt;/em&gt;&lt;/p&gt;




&lt;p&gt;There are 2 separate concepts to understand:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Strong vs Weak&lt;/strong&gt; - Can variables change type?

&lt;ul&gt;
&lt;li&gt;Strong says no.&lt;/li&gt;
&lt;li&gt;Weak says yes.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Static vs Dynamic&lt;/strong&gt; - When do we check variable type?

&lt;ul&gt;
&lt;li&gt;Static checks at compile time.&lt;/li&gt;
&lt;li&gt;Dynamic checks at runtime.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Examples
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;/th&gt;
&lt;th&gt;💪 Strong&lt;/th&gt;
&lt;th&gt;😖 Weak&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;🥶 Static&lt;/td&gt;
&lt;td&gt;Java, C++&lt;/td&gt;
&lt;td&gt;?&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;👟 Dynamic&lt;/td&gt;
&lt;td&gt;Python, Ruby&lt;/td&gt;
&lt;td&gt;JavaScript, PHP&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

</description>
      <category>umkc</category>
      <category>cs441</category>
    </item>
    <item>
      <title>Normal vs Applicative Evaluation</title>
      <dc:creator>Odai Athamneh</dc:creator>
      <pubDate>Sun, 08 May 2022 18:38:33 +0000</pubDate>
      <link>https://dev.to/heyodai/normal-vs-applicative-evaluation-2j91</link>
      <guid>https://dev.to/heyodai/normal-vs-applicative-evaluation-2j91</guid>
      <description>&lt;p&gt;These are 2 types of parameter evaluation. In a nutshell:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Normal = left-to-right&lt;/li&gt;
&lt;li&gt;Applicative = inside-out&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;So for a lambda operation, &lt;code&gt;(double (average 2 4))&lt;/code&gt;:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--u_aw-MMB--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bxidjv7lq092rki6i2mf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--u_aw-MMB--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bxidjv7lq092rki6i2mf.png" alt="equation" width="829" height="467"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Further Reading
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://sookocheff.com/post/fp/evaluating-lambda-expressions/"&gt;https://sookocheff.com/post/fp/evaluating-lambda-expressions/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>umkc</category>
      <category>cs441</category>
    </item>
    <item>
      <title>Scheme: eqv? vs equal?</title>
      <dc:creator>Odai Athamneh</dc:creator>
      <pubDate>Fri, 06 May 2022 23:36:21 +0000</pubDate>
      <link>https://dev.to/heyodai/scheme-eqv-vs-equal-870</link>
      <guid>https://dev.to/heyodai/scheme-eqv-vs-equal-870</guid>
      <description>&lt;p&gt;&lt;em&gt;Photo by &lt;a href="https://unsplash.com/photos/98MbUldcDJY?utm_source=unsplash&amp;amp;utm_medium=referral&amp;amp;utm_content=creditShareLink"&gt;Piret Ilver&lt;/a&gt; on Unsplash&lt;/em&gt;&lt;/p&gt;




&lt;p&gt;You can read a few lengthy explanations &lt;a href="https://stackoverflow.com/questions/16299246/what-is-the-difference-between-eq-eqv-equal-and-in-scheme"&gt;on Stack Overflow&lt;/a&gt;, but in a nutshell:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;equal?&lt;/code&gt; returns true if its arguments have the same structure. This is comparable to &lt;code&gt;==&lt;/code&gt; in most languages.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;eqv?&lt;/code&gt; is a pointer comparison. It looks at memory addresses.

&lt;ul&gt;
&lt;li&gt;The exception is numbers. &lt;/li&gt;
&lt;li&gt;Unlike &lt;code&gt;eq?&lt;/code&gt;, it will compare numeric data instead of addresses.&lt;/li&gt;
&lt;li&gt;However, it won't convert between &lt;code&gt;int&lt;/code&gt; and &lt;code&gt;float&lt;/code&gt; data.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Further Reading
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://stackoverflow.com/questions/16299246/what-is-the-difference-between-eq-eqv-equal-and-in-scheme"&gt;Stack Overflow question&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://courses.cs.washington.edu/courses/cse341/03wi/scheme/basics.html"&gt;Washington University page&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>umkc</category>
      <category>cs441</category>
    </item>
    <item>
      <title>On Concurrency</title>
      <dc:creator>Odai Athamneh</dc:creator>
      <pubDate>Fri, 06 May 2022 22:47:50 +0000</pubDate>
      <link>https://dev.to/heyodai/on-concurrency-377</link>
      <guid>https://dev.to/heyodai/on-concurrency-377</guid>
      <description>&lt;p&gt;&lt;em&gt;Photo by &lt;a href="https://unsplash.com/photos/4yOgRb_b_i4?utm_source=unsplash&amp;amp;utm_medium=referral&amp;amp;utm_content=creditShareLink"&gt;Jørgen Håland&lt;/a&gt; on Unsplash&lt;/em&gt;&lt;/p&gt;




&lt;p&gt;This is a high-level overview of concurrency in programming languages. I'm writing it for my own review purposes, but maybe you'll find it useful too.&lt;/p&gt;

&lt;h2&gt;
  
  
  Motivations
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;🤔 &lt;strong&gt;Logic.&lt;/strong&gt; Some problems are naturally concurrent so it makes sense to handle them this way. Think web servers, graphics, AI.&lt;/li&gt;
&lt;li&gt;🏎️ &lt;strong&gt;Speed.&lt;/strong&gt; Concurrency lets us fully use multiple processors or cores to maximize computational speed.&lt;/li&gt;
&lt;li&gt;📡 &lt;strong&gt;Distribution.&lt;/strong&gt; Machines that work across the internet are inherently concurrent. Writing concurrent software helps to address their unique needs. &lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Types of Concurrency
&lt;/h2&gt;

&lt;p&gt;There are a few different types of concurrency to be aware of:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--uW7ezxAS--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5lv8lyiq7nlhvuhindl7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--uW7ezxAS--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5lv8lyiq7nlhvuhindl7.png" alt="venn diagram of concurrency types" width="880" height="495"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Note that &lt;strong&gt;coroutines&lt;/strong&gt; are off to the side. Since they switch between tasks at defined points (not arbitrarily), they aren't &lt;em&gt;truly&lt;/em&gt; considered concurrent.&lt;/p&gt;

&lt;h2&gt;
  
  
  Levels of Concurrency
&lt;/h2&gt;

&lt;p&gt;Going from most atomic (smallest divisions) to least atomic (biggest divisions):&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;🦐 &lt;strong&gt;Instruction-Level.&lt;/strong&gt; Multiple instructions executing at once. Mostly hardware. Focus of research for 40+ years, but physical limits have been reached.&lt;/li&gt;
&lt;li&gt;🪓 &lt;strong&gt;Vector-Level.&lt;/strong&gt; Split up large datasets. Big usage in GPUs. Only benefits certain types of programs.&lt;/li&gt;
&lt;li&gt;🐫 &lt;strong&gt;Thread-Level.&lt;/strong&gt; Current focus. Needed for multiple cores. Requires programs to be specially written to take advantage.&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>umkc</category>
      <category>cs441</category>
    </item>
    <item>
      <title>What is Scripting?</title>
      <dc:creator>Odai Athamneh</dc:creator>
      <pubDate>Fri, 06 May 2022 22:02:21 +0000</pubDate>
      <link>https://dev.to/heyodai/what-is-scripting-45ab</link>
      <guid>https://dev.to/heyodai/what-is-scripting-45ab</guid>
      <description>&lt;p&gt;&lt;em&gt;Photo by &lt;a href="https://unsplash.com/photos/WAchuh1Gc-0?utm_source=unsplash&amp;amp;utm_medium=referral&amp;amp;utm_content=creditShareLink"&gt;Waldemar Brandt&lt;/a&gt; on Unsplash&lt;/em&gt;&lt;/p&gt;




&lt;p&gt;Scripting is making a robot do boring stuff we don't want to do. 🤖&lt;/p&gt;

&lt;p&gt;That might be seen as an overly simple definition, and it probably is. But most definitions I've read online are overly formal and hard to grok. &lt;/p&gt;

&lt;h2&gt;
  
  
  Examples
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;👨🏻‍💻 IT guy writes a bash script to update user groups&lt;/li&gt;
&lt;li&gt;📊 Manager uses a VBA script to crunch data in Excel&lt;/li&gt;
&lt;li&gt;📂 Programmer uses Python to rename a bunch of folders&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Comparison
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;/th&gt;
&lt;th&gt;Scripting&lt;/th&gt;
&lt;th&gt;Programming&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;😤 &lt;strong&gt;Difficulty&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;Easy to learn and use&lt;/td&gt;
&lt;td&gt;Challenging&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;🏭 &lt;strong&gt;Compilation&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;Usually interpreted&lt;/td&gt;
&lt;td&gt;Usually compiled&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;🏎️ &lt;strong&gt;Performance&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;Slower, more memory&lt;/td&gt;
&lt;td&gt;Faster, less memory&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

</description>
      <category>umkc</category>
      <category>cs441</category>
    </item>
  </channel>
</rss>
