<?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: Akshay Kant</title>
    <description>The latest articles on DEV Community by Akshay Kant (@kantakshay).</description>
    <link>https://dev.to/kantakshay</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%2F951947%2F97cbb100-a62c-4dde-906b-ce37fca47bc2.png</url>
      <title>DEV Community: Akshay Kant</title>
      <link>https://dev.to/kantakshay</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/kantakshay"/>
    <language>en</language>
    <item>
      <title>How ChatGPT Understands Your Questions?</title>
      <dc:creator>Akshay Kant</dc:creator>
      <pubDate>Wed, 01 Jul 2026 17:42:40 +0000</pubDate>
      <link>https://dev.to/kantakshay/how-chatgpt-understands-your-questions-2ij6</link>
      <guid>https://dev.to/kantakshay/how-chatgpt-understands-your-questions-2ij6</guid>
      <description>&lt;p&gt;When you ask &lt;strong&gt;ChatGPT&lt;/strong&gt; a question, it may seem like it's thinking like a human. In reality, it uses a powerful AI model trained to understand patterns in language and predict the most likely next token (a word or part of a word). To understand how this works, let's first look at three important terms: &lt;strong&gt;ChatGPT&lt;/strong&gt;, &lt;strong&gt;GPT&lt;/strong&gt;, and &lt;strong&gt;LLM&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is ChatGPT?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;ChatGPT&lt;/strong&gt; is the chat application you are using. It uses a &lt;strong&gt;GPT&lt;/strong&gt; model underneath and adds conversation features.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is GPT?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;GPT (Generative Pre-trained Transformer)&lt;/strong&gt; is a &lt;strong&gt;Transformer-based Large Language Model (LLM)&lt;/strong&gt; that generates text by predicting the next token based on the previous context.&lt;/p&gt;

&lt;p&gt;Let's break down:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Generative&lt;/em&gt;&lt;/strong&gt; - &lt;em&gt;It generates new content such as text, code, or summaries.&lt;/em&gt;&lt;br&gt;
&lt;strong&gt;&lt;em&gt;Pre-trained&lt;/em&gt;&lt;/strong&gt; - &lt;em&gt;It is first trained on a massive collection of text before being used for specific tasks.&lt;/em&gt;&lt;br&gt;
&lt;strong&gt;&lt;em&gt;Transformer&lt;/em&gt;&lt;/strong&gt; - It uses the Transformer neural network architecture, which helps it understand relationships between words and context efficiently.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is LLM?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;An &lt;strong&gt;LLM (Large Language Model)&lt;/strong&gt; is a very large AI model trained on huge amounts of data that understands and generates human language by predicting the next token based on the context.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What does LLM stand for?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;LLM (Large Language Model&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Large&lt;/em&gt;&lt;/strong&gt; - &lt;em&gt;Trained on massive dataset.&lt;/em&gt;&lt;br&gt;
&lt;strong&gt;&lt;em&gt;Language&lt;/em&gt;&lt;/strong&gt; - &lt;em&gt;Designed to understand and generate human language.&lt;/em&gt;&lt;br&gt;
&lt;strong&gt;&lt;em&gt;Model&lt;/em&gt;&lt;/strong&gt; - &lt;em&gt;A trained neural network that has learned patterns from data.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What problems LLMs solve?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;It automate or assist with tasks that involve language and reasoning, such as:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Answering questions&lt;/li&gt;
&lt;li&gt;Writing emails, reports, and articles&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;There are some Popular LLM's we use in our daily life examples include GPT, Llama, Gemini, Claude, and DeepSeek. LLMs are widely used in chatbots, writing assistants, coding tools, education, customer support, and search assistants.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What Happens When You Send a Message to ChatGPT?&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fhp84xne9len1v8uid9dv.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fhp84xne9len1v8uid9dv.png" alt=" " width="800" height="251"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Typing a prompt&lt;/strong&gt; - You type a question or request in the chatGPT UI and hit enter.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Processing your message&lt;/strong&gt; - Your message is sent to the server processed by the GPT model. It analyzes the text, understand the context, and prepare to generate a response.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Generating a response&lt;/strong&gt; - The model predicts the next &lt;em&gt;token&lt;/em&gt; based on the context. This happens one token at a time until a complete response is formed.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Response Delivered&lt;/strong&gt; - The final response is sent back to chatGPT and displayed in the UI.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;em&gt;&lt;strong&gt;ChatGPT&lt;/strong&gt; does not copy and paste answer from the internet(by default). It generates response based on patterns learned training on enormous amount of text data (no live internet browsing)&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why Computers Don't Understand Human Language&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Computers don't understand human language because they only process mathematical probabilities and binary code, not actual meaning. While humans use shared context, emotion, and life experience to easily grasp nuance, machines rely on statistical pattern matching to predict which words should come next.&lt;/p&gt;

&lt;p&gt;Computers translate human-readable text and numbers into binary (strings of 0s and 1s) so electrical circuits can process them. Because computer hardware only understands "on" (1) and "off" (0), all data is stored as combinations of these digits&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is token?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A &lt;strong&gt;token&lt;/strong&gt; is the basic unit of text that an LLM processes. Before generating a response, the model breaks your input into tokens, converts those tokens into numerical representations.&lt;/p&gt;

&lt;p&gt;Before a sentence can be understood by the model, it must first be broken into smaller pieces called tokens.&lt;br&gt;
So, for LLM we uses tokens. tokens are actually numbers as LLM can not understand the text.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is Tokenization?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Tokenization is nothing but conversation of Natural language(human language) to numbers or token.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fh6p5izngze04zc4jr4a1.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fh6p5izngze04zc4jr4a1.png" alt=" " width="392" height="433"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why tokenization is needed?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Machine learning models (like LLMs, text classifiers, and translators) cannot directly process raw letters or words. Tokenization bridges this gap through two main functions:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Structuring&lt;/strong&gt; - it divides a continuous stream of text into manageable pieces.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Numerical Mapping&lt;/strong&gt; - It translates those pieces into a vocabulary of numerical IDs, allowing models to process language using linear algebra and probability.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Type of Tokenization&lt;/strong&gt; &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Word Tokenization&lt;/strong&gt; - Splits text by word boundaries (e.g., "Machine learning is fun" becomes ["Machine", "learning", "is", "fun"]).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Sub-Word Tokenization&lt;/strong&gt; - Breaks down complex words into smaller, frequently occurring units (e.g., "unhappiness" into ["un", "happi", "ness"]).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Character Tokenization&lt;/strong&gt; - Splits text into individual letters/symbols. It is useful for heavily misspelled data or character-level language modeling. &lt;/p&gt;&lt;/li&gt;
&lt;/ol&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fgs4wvl1mi7cf0i7ttpn5.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fgs4wvl1mi7cf0i7ttpn5.png" alt=" " width="800" height="361"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is Transformers&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Transformers: The Technology Behind Modern LLMs&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;By now, we've seen how your text is broken into &lt;strong&gt;tokens&lt;/strong&gt; and converted into numbers that a computer can process. But a new question arises:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How does the model understand the relationship between these tokens and generate meaningful responses?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A &lt;strong&gt;Transformer&lt;/strong&gt; is a deep learning architecture introduced by researchers at Google in 2017 in the paper &lt;strong&gt;"Attention Is All You Need."&lt;/strong&gt;&lt;br&gt;
It understands the relationships between tokens using a mechanism called self-attention, allowing it to process language efficiently and generate context-aware responses.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How Does a Transformer Understand Language?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The secret behind the Transformer is a mechanism called &lt;strong&gt;Self-Attention&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Self-attention allows every token to determine which other tokens are important for understanding the current context.&lt;/p&gt;

&lt;p&gt;Consider the sentence:&lt;/p&gt;

&lt;p&gt;&lt;em&gt;&lt;strong&gt;"The animal didn't cross the street because it was tired."&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;When processing the word &lt;strong&gt;"it"&lt;/strong&gt;, the Transformer learns that &lt;strong&gt;"it"&lt;/strong&gt; refers to &lt;strong&gt;"the animal"&lt;/strong&gt;, not &lt;strong&gt;"the street."&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why Almost Every Modern LLM Uses Transformers?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Today's leading language models all rely on the Transformer architecture because it offers several major advantages over older approaches.&lt;br&gt;
one of them is:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Better Context Understanding&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Transformers can learn relationships between words that are far apart in a sentence.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;"The book that I bought last week was surprisingly interesting."&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Even though &lt;strong&gt;"book"&lt;/strong&gt; and ** "interesting"** are separated by several words, the Transformer can still understand their relationship.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Conclusion&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Understanding how &lt;strong&gt;ChatGPT&lt;/strong&gt; works doesn't require a deep background in &lt;strong&gt;Artificial Intelligence&lt;/strong&gt;. At a high level, the process is surprisingly systematic. When you send a prompt, your text is broken into tokens, converted into numerical representations, processed by a &lt;strong&gt;Transformer-based Large Language Model (LLM)&lt;/strong&gt;, and used to predict the next token repeatedly until a complete response is generated.&lt;/p&gt;

&lt;p&gt;Throughout this article, we explored the building blocks behind this process—from understanding what LLMs are and the problems they solve, to why computers need text converted into numbers, how tokenization works, and why the Transformer architecture became the foundation of modern AI systems.&lt;/p&gt;

&lt;p&gt;While we've covered the high-level workflow, there's still much more happening behind the scenes. Concepts like &lt;strong&gt;embeddings, self-attention, positional encoding,&lt;/strong&gt; and &lt;strong&gt;next-token prediction&lt;/strong&gt; are what enable these models to understand context and generate remarkably human-like responses.&lt;/p&gt;

&lt;p&gt;I hope this article gave you a solid foundation for understanding how ChatGPT works. The next time you ask ChatGPT a question, you'll know that behind every answer is a fascinating pipeline of tokens, mathematical computations, and Transformer layers working together to generate a response—one token at a time.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>How Can Primitive Values Use Methods in JavaScript?</title>
      <dc:creator>Akshay Kant</dc:creator>
      <pubDate>Tue, 23 Jan 2024 18:52:35 +0000</pubDate>
      <link>https://dev.to/kantakshay/how-can-we-use-methods-in-primitive-types-in-javascript-5c05</link>
      <guid>https://dev.to/kantakshay/how-can-we-use-methods-in-primitive-types-in-javascript-5c05</guid>
      <description>&lt;p&gt;&lt;strong&gt;There are two types of data types in Javascript&lt;/strong&gt;&lt;br&gt;
1) Primitive types&lt;br&gt;
2) Non-primitive types (object references)&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Primitive types:&lt;/strong&gt; Primitives are known as being immutable data types because there is no way to change a primitive value once it gets created.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Non-primitive types:&lt;/strong&gt; Non-primitive values are mutable data types. Objects can store data, and collections of their properties are mutable.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Let's first understand what a method is.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Methods:&lt;/strong&gt; Methods are functions stored as properties of objects. Primitive values don't directly contain methods, but JavaScript temporarily wraps most primitives in corresponding object wrappers when property access occurs.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Did you notice something...&lt;/em&gt;&lt;br&gt;
&lt;em&gt;Primitives are immutable, while methods are typically associated with objects.&lt;/em&gt;&lt;br&gt;
&lt;em&gt;But even then we have built-in methods in javascript for primitive data types.&lt;/em&gt;&lt;br&gt;
&lt;em&gt;So how does it work? Let's find out..&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;All &lt;strong&gt;primitive types&lt;/strong&gt;, except &lt;code&gt;null&lt;/code&gt; and &lt;code&gt;undefined&lt;/code&gt;, have their corresponding &lt;strong&gt;object wrapper&lt;/strong&gt; types, which provide useful methods for working with the &lt;strong&gt;primitive values&lt;/strong&gt;. &lt;/p&gt;

&lt;p&gt;When a property or method is accessed on a primitive value, JavaScript automatically wraps the value into the corresponding wrapper object and accesses the property on the object instead.&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%2Fm1gzwb5uw39hcmwxi7bx.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%2Fm1gzwb5uw39hcmwxi7bx.png" alt="object wrapper types" width="782" height="391"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Here's how JavaScript handles methods for primitive values using object wrapper types:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. Primitive Value Handling:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;When you try to call a method on a primitive value directly, JavaScript recognizes the attempt to use a method on a value that doesn't inherently have methods.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;To provide the necessary functionality, it performs a temporary conversion of the primitive value into its corresponding object wrapper type.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;This conversion happens behind the scenes, without you explicitly creating the wrapper object yourself.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;2. Wrapper Object Creation:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;JavaScript creates a wrapper object that encapsulates the primitive value.&lt;/li&gt;
&lt;li&gt;This wrapper object has the same value as the primitive but belongs to the object wrapper type (e.g., Number, String, Boolean, BigInt, Symbol).
&lt;code&gt;null&lt;/code&gt; and &lt;code&gt;undefined&lt;/code&gt; are the only primitive values that do not have object wrappers.&lt;/li&gt;
&lt;li&gt;The wrapper object has the methods associated with its type, allowing you to perform operations on the primitive value.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;3. Method Execution:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The method you called is then executed on the wrapper object.
The method can read the primitive value and return a derived result. Since primitives are immutable, the original value is never modified.&lt;/li&gt;
&lt;li&gt;Once the method finishes execution, the wrapper object is discarded.&lt;/li&gt;
&lt;li&gt;The original primitive value remains unchanged, as it was never directly modified.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;name&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;akshay&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;myName&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;name&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;toUpperCase&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt; &lt;span class="c1"&gt;// Calls toUpperCase() on the primitive string "akshay"&lt;/span&gt;

&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;myName&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="c1"&gt;// Output: "AKSHAY"&lt;/span&gt;
&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;name&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="c1"&gt;// Output: "akshay"&lt;/span&gt;
&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;typeof&lt;/span&gt; &lt;span class="nx"&gt;name&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;  &lt;span class="c1"&gt;// Output: "string" (still a primitive)&lt;/span&gt;


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
      <category>javascript</category>
      <category>webdev</category>
      <category>programming</category>
      <category>frontend</category>
    </item>
  </channel>
</rss>
