<?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: Tabassum Khanum</title>
    <description>The latest articles on Forem by Tabassum Khanum (@codewithtee).</description>
    <link>https://forem.com/codewithtee</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%2F599284%2F0c33d459-d1af-4d21-a6ad-b3ced2d6aee0.jpg</url>
      <title>Forem: Tabassum Khanum</title>
      <link>https://forem.com/codewithtee</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/codewithtee"/>
    <language>en</language>
    <item>
      <title>Day 0/30 — My Journey from Developer to Product Management (and learning AI along the way)</title>
      <dc:creator>Tabassum Khanum</dc:creator>
      <pubDate>Sat, 14 Mar 2026 20:28:26 +0000</pubDate>
      <link>https://forem.com/codewithtee/day-030-my-journey-from-developer-to-product-management-and-learning-ai-along-the-way-nfl</link>
      <guid>https://forem.com/codewithtee/day-030-my-journey-from-developer-to-product-management-and-learning-ai-along-the-way-nfl</guid>
      <description>&lt;p&gt;For the past few years, I’ve been working as an Application Developer.&lt;/p&gt;

&lt;p&gt;While building software and working on different systems, I started noticing something interesting — AI is slowly becoming part of almost every product we use today.&lt;/p&gt;

&lt;p&gt;From recommendation systems to chatbots and automation, AI is no longer something futuristic. It’s already shaping the products people interact with daily.&lt;/p&gt;

&lt;p&gt;At the same time, I’ve been exploring a transition into &lt;strong&gt;Product Management&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;And during this process, I realized something important: if I want to work on building meaningful products in the future, I need to understand &lt;strong&gt;how AI actually works&lt;/strong&gt;, not just use the tools.&lt;/p&gt;

&lt;p&gt;So I decided to start a small learning experiment.&lt;/p&gt;

&lt;p&gt;For the next &lt;strong&gt;30 days&lt;/strong&gt;, I’ll document what I’m learning about:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Artificial Intelligence&lt;/li&gt;
&lt;li&gt;Machine Learning&lt;/li&gt;
&lt;li&gt;Large Language Models (LLMs)&lt;/li&gt;
&lt;li&gt;How AI-powered features are built into products&lt;/li&gt;
&lt;li&gt;How technical knowledge can help in Product Management&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I’m not writing this as an expert.&lt;/p&gt;

&lt;p&gt;I’m writing this as someone who is &lt;strong&gt;learning step by step&lt;/strong&gt; and trying to simplify these concepts so others can understand them too.&lt;/p&gt;

&lt;p&gt;My goal is simple:&lt;br&gt;
to break down AI concepts in a way that makes sense even if you’re new to the topic.&lt;/p&gt;

&lt;p&gt;If you're also curious about &lt;strong&gt;AI, product management, or transitioning roles in tech&lt;/strong&gt;, maybe this series will be useful for you as well.&lt;/p&gt;

&lt;p&gt;This is &lt;strong&gt;Day 0 of a 30-day journey&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Next topic:&lt;br&gt;
&lt;strong&gt;What exactly is Artificial Intelligence?&lt;/strong&gt;&lt;/p&gt;




&lt;p&gt;If you’re also learning AI or transitioning into product roles, I’d love to hear about your journey as well.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>product</category>
      <category>management</category>
      <category>machinelearning</category>
    </item>
    <item>
      <title>Thrashing - One Byte Explainer</title>
      <dc:creator>Tabassum Khanum</dc:creator>
      <pubDate>Fri, 14 Jun 2024 11:32:29 +0000</pubDate>
      <link>https://forem.com/codewithtee/thrashing-one-byte-explainer-323i</link>
      <guid>https://forem.com/codewithtee/thrashing-one-byte-explainer-323i</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for &lt;a href="https://dev.to/challenges/cs"&gt;DEV Computer Science Challenge v24.06.12: One Byte Explainer&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Explainer
&lt;/h2&gt;

&lt;p&gt;Thrashing happens when too many processes are sent to the CPU, causing high utilization at first. However, as more processes keep coming, the CPU gets overwhelmed, and its efficiency drops sharply, sometimes even down to zero.&lt;/p&gt;

&lt;h2&gt;
  
  
  Additional Context
&lt;/h2&gt;

&lt;p&gt;References - &lt;a href="https://takeuforward.org/operating-system/why-does-thrashing-occur/"&gt;https://takeuforward.org/operating-system/why-does-thrashing-occur/&lt;/a&gt;&lt;br&gt;
&lt;a href="https://stackoverflow.com/questions/19031902/what-is-thrashing-why-does-it-occur"&gt;https://stackoverflow.com/questions/19031902/what-is-thrashing-why-does-it-occur&lt;/a&gt;&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>cschallenge</category>
      <category>computerscience</category>
      <category>beginners</category>
    </item>
    <item>
      <title>June Frontend Challenge: Birthday Month</title>
      <dc:creator>Tabassum Khanum</dc:creator>
      <pubDate>Sat, 08 Jun 2024 18:19:39 +0000</pubDate>
      <link>https://forem.com/codewithtee/june-frontend-challenge-birthday-month-2boi</link>
      <guid>https://forem.com/codewithtee/june-frontend-challenge-birthday-month-2boi</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for &lt;a href="https://dev.to/challenges/frontend-2024-05-29"&gt;Frontend Challenge v24.04.17&lt;/a&gt;, CSS Art: June.&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Inspiration
&lt;/h2&gt;

&lt;p&gt;June brings memories of my baby brother’s birthday; he turns 25 this year, no longer the little one he used to be.&lt;/p&gt;

&lt;h2&gt;
  
  
  Demo
&lt;/h2&gt;

&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/tabassum2507/embed/qBGXXBM?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;h2&gt;
  
  
  Journey
&lt;/h2&gt;

&lt;p&gt;Creating this CSS animation was a rewarding challenge that required a detailed understanding of various CSS properties and techniques. The process involved layering multiple elements to simulate a birthday cake with intricate shadow effects and a gift box animation.&lt;/p&gt;

&lt;h3&gt;
  
  
  Process:
&lt;/h3&gt;

&lt;p&gt;Setup and Layout:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Used flex for centering the main elements on the screen.&lt;/li&gt;
&lt;li&gt;Defined the base structure for the cake and the gift using basic CSS properties.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Cake Design:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Utilized the box-shadow property creatively to add multiple layers to the cake.&lt;/li&gt;
&lt;li&gt;Applied pseudo-elements (::before and ::after) to add decorative parts like the white shadow and the number on the cake.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Gift Box Animation:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Implemented a checkbox hack to control the animation state.&lt;/li&gt;
&lt;li&gt;Positioned the gift box and designed the ribbon using ::before and ::after.&lt;/li&gt;
&lt;li&gt;Used transition and transform properties to animate the gift opening effect.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Sparkles Animation:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Created sparkles using small, circular elements with animated @keyframes to simulate a burst effect.&lt;/li&gt;
&lt;li&gt;Combined opacity, transform, and color animations for dynamic visual effects.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>frontendchallenge</category>
      <category>devchallenge</category>
      <category>css</category>
    </item>
    <item>
      <title>WebRTC in Just One Byte</title>
      <dc:creator>Tabassum Khanum</dc:creator>
      <pubDate>Mon, 01 Apr 2024 18:20:13 +0000</pubDate>
      <link>https://forem.com/codewithtee/webrtc-in-just-one-byte-25l6</link>
      <guid>https://forem.com/codewithtee/webrtc-in-just-one-byte-25l6</guid>
      <description>&lt;p&gt;This is a submission for DEV Challenge v24.03.20, One Byte Explainer: Browser API or Feature.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Explainer&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;WebRTC is a web technology that allows browsers to communicate directly with each other in real-time, enabling features like video chat and file sharing without needing plugins or external software. It provides APIs for developers to easily integrate these capabilities into their web applications.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Additional Context&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Check out these links for a deeper explanation - &lt;a href="https://webrtc.org/"&gt;https://webrtc.org/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.techtarget.com/searchunifiedcommunications/definition/WebRTC-Web-Real-Time-Communications#:%7E:text=WebRTC%20provides%20software%20developers%20with,%2D%20or%20text%2Dbased%20content"&gt;https://www.techtarget.com/searchunifiedcommunications/definition/WebRTC-Web-Real-Time-Communications#:~:text=WebRTC%20provides%20software%20developers%20with,%2D%20or%20text%2Dbased%20content&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://developer.mozilla.org/en-US/docs/Web/API/WebRTC_API"&gt;https://developer.mozilla.org/en-US/docs/Web/API/WebRTC_API&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.geeksforgeeks.org/introduction-to-webrtc/"&gt;https://www.geeksforgeeks.org/introduction-to-webrtc/&lt;/a&gt;&lt;/p&gt;

</description>
      <category>frontendchallenge</category>
      <category>devchallenge</category>
      <category>javascript</category>
      <category>beginners</category>
    </item>
    <item>
      <title>She Coded, He Coded, We Coded - Celebrating Diversity in Tech!</title>
      <dc:creator>Tabassum Khanum</dc:creator>
      <pubDate>Thu, 28 Mar 2024 20:03:01 +0000</pubDate>
      <link>https://forem.com/codewithtee/she-coded-he-coded-we-coded-celebrating-diversity-in-tech-2ahd</link>
      <guid>https://forem.com/codewithtee/she-coded-he-coded-we-coded-celebrating-diversity-in-tech-2ahd</guid>
      <description>&lt;h2&gt;
  
  
  How can we actively embrace equality in the tech industry?
&lt;/h2&gt;

&lt;p&gt;To make the tech industry fairer, companies should welcome everyone and celebrate differences. They should have fair rules and include people from all backgrounds, genders, and age groups. Offering good policies, being open to diverse ideas, and making sure everyone is represented properly can help a lot. Also, teaching people about equality, hosting events, and being careful not to let biases affect hiring can make a big difference. By doing these things, the tech world can become a better place for everyone.&lt;/p&gt;

&lt;h2&gt;
  
  
  What do you perceive as the primary obstacles to achieving gender equity in tech?
&lt;/h2&gt;

&lt;p&gt;Gender equality in tech is hindered by biases in hiring and promotions, male-dominated cultures, and few women in leadership roles. Women, especially mothers, struggle to balance work and family due to societal expectations and stereotypes. Society often undervalues working mothers and wives, viewing them as less committed to family. Even if they work, they're still expected to manage household chores. To address these issues, we must challenge societal norms, support working mothers, promote shared responsibilities at home, and create work environments that accommodate family needs. This will help create a more equitable and supportive tech industry for all genders.&lt;/p&gt;

&lt;h2&gt;
  
  
  Reflect on a moment at work that affirmed the importance of gender equity to you.
&lt;/h2&gt;

&lt;h2&gt;
  
  
  Looking ahead, what are your hopes and aspirations for gender equity in tech?
&lt;/h2&gt;

&lt;p&gt;I hope that the future of tech will be better for women. They're getting stronger and speaking up against unfair treatment. More women are joining the industry, which is great. We need to stop discrimination and harassment. Everyone should have the chance to do well in tech, no matter their gender. My dream is for tech to be a place where everyone feels welcome and respected, and where we can all work together to make cool stuff for the world.&lt;/p&gt;

&lt;h2&gt;
  
  
  What effective strategies do you employ to advocate for gender equity and diversity in your workplace or community?
&lt;/h2&gt;

&lt;p&gt;In advocating for gender equity and diversity, I support more female representation by mentoring and uplifting women in my workplace and community. I believe empathy goes a long way in understanding others' experiences and fostering inclusivity. Always encourage others to never stay silent against harassment or discrimination, speaking up for fairness and respect. &lt;/p&gt;

&lt;h2&gt;
  
  
  Have you faced instances of bias or discrimination at work? If so, what was the experience like?
&lt;/h2&gt;

&lt;p&gt;Yes, I've faced bias at work. Women still get paid less than men for the same job. Some people say things that make women feel like they're only good at certain jobs, like designing or managing, not developing. They also make jokes that are mean and make the workplace uncomfortable. When hiring, questions are asked like if you're married or planning to have kids, which can be hard to answer sometimes. These experiences can make you feel bad and affect how you feel about your job. &lt;/p&gt;

</description>
      <category>wecoded</category>
      <category>womenintech</category>
      <category>stem</category>
    </item>
    <item>
      <title>Frontend CSS Art Challenge- Orange Candy Ice Cream</title>
      <dc:creator>Tabassum Khanum</dc:creator>
      <pubDate>Thu, 28 Mar 2024 17:00:03 +0000</pubDate>
      <link>https://forem.com/codewithtee/frontend-css-art-challenge-orange-candy-ice-cream-55d3</link>
      <guid>https://forem.com/codewithtee/frontend-css-art-challenge-orange-candy-ice-cream-55d3</guid>
      <description>&lt;p&gt;This is a submission for DEV Challenge v24.03.20, CSS Art: Favorite Snack.&lt;/p&gt;

&lt;h2&gt;
  
  
  Inspiration
&lt;/h2&gt;

&lt;p&gt;Orange Candy holds a special place in our hearts as a nostalgic snack, often enjoyed after a hot day at school during summer. Its sweet and tangy flavor, coupled with the refreshing chill of the ice, brings back memories of carefree childhood days. To pay homage to this beloved treat, I've transformed it into a minimalist CSS art piece, capturing the essence of those cherished moments.&lt;/p&gt;

&lt;h2&gt;
  
  
  Demo
&lt;/h2&gt;

&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/tabassum2507/embed/RwOZzKG?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;h2&gt;
  
  
  Journey
&lt;/h2&gt;

&lt;p&gt;My CSS Art inspiration image : &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fga0g8sophniecsomoky9.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fga0g8sophniecsomoky9.jpg" alt="Image description" width="250" height="250"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Planning the Layout&lt;/strong&gt;: I started by planning the layout using flexbox to center the candy vertically and horizontally within the browser window.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Creating the Candy Shape&lt;/strong&gt;: I created the main orange candy shape using CSS, applying border-radius to give it a rounded appearance and setting the background color to orange (#FF9800).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Adding Details&lt;/strong&gt;: To add depth and realism, I used pseudo-elements :before and :after to create the curved ends of the candy, styling them with appropriate colors and box-shadows.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Designing the Stick&lt;/strong&gt;: For the stick, I created another div inside the candy div and styled it to resemble a stick, using a lighter shade of brown (#decba0) and inset box-shadows to create a 3D effect.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Final Touches&lt;/strong&gt;: Lastly, I adjusted positioning and dimensions to ensure everything looked cohesive and used margin and positioning properties to fine-tune the placement of each element within the candy wrapper.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>frontendchallenge</category>
      <category>devchallenge</category>
      <category>css</category>
    </item>
    <item>
      <title>Day 5: Apni Canteen-Food Delivery App Using React Native And Sanity</title>
      <dc:creator>Tabassum Khanum</dc:creator>
      <pubDate>Wed, 15 Nov 2023 08:15:02 +0000</pubDate>
      <link>https://forem.com/codewithtee/day-5-apni-canteen-food-delivery-app-using-react-native-and-sanity-4n0d</link>
      <guid>https://forem.com/codewithtee/day-5-apni-canteen-food-delivery-app-using-react-native-and-sanity-4n0d</guid>
      <description>&lt;p&gt;👋 Today, I am excited to share my progress on my #100daysofcodechallenge journey.&lt;/p&gt;

&lt;p&gt;⏳ On day 5, I started building ApniCanteen a Food Delivery App Using React Native And Sanity. Here are the steps I got done today:&lt;/p&gt;

&lt;p&gt;✅ Used React Native Expo to start building the UI&lt;br&gt;
✅ Configured Tailwind CSS to the project by using NativeWind&lt;br&gt;
✅ Implemented navigation using React Native Navigation &lt;br&gt;
✅ Created the SearchBar and Categories component&lt;br&gt;
✅ Using React Native Feather Icons for icons&lt;/p&gt;

&lt;p&gt;⚛️ Tech Stack: React Native, Tailwind CSS, MapView, Redux Toolkit, Sanity.io&lt;br&gt;
⚛️ Github: &lt;a href="https://github.com/tabassum2507/Apni_Canteen" rel="noopener noreferrer"&gt;https://github.com/tabassum2507/Apni_Canteen&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;🔥Doing the #100daysofcodechallenge to brush up on my coding skills and build confidence in coding publicly! Join me on this journey! Share your feedback, suggestions, and experiences in the comments. Let's code, learn, and grow together! 💻🌱 &lt;/p&gt;

&lt;h1&gt;
  
  
  100DaysOfCode #CodingCommunity 🚀
&lt;/h1&gt;

&lt;h1&gt;
  
  
  reactnative #react #reduxtoolkit #redux #tailwindcss
&lt;/h1&gt;

&lt;p&gt;&lt;a href="https://media.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%2Fyvlpcv4ax978hi0d742x.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.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%2Fyvlpcv4ax978hi0d742x.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>reactn</category>
      <category>javascript</category>
      <category>react</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Day 4: React Native Onboarding UI using Lottie Animations</title>
      <dc:creator>Tabassum Khanum</dc:creator>
      <pubDate>Mon, 13 Nov 2023 11:00:34 +0000</pubDate>
      <link>https://forem.com/codewithtee/day-4-react-native-onboarding-ui-using-lottie-animations-2366</link>
      <guid>https://forem.com/codewithtee/day-4-react-native-onboarding-ui-using-lottie-animations-2366</guid>
      <description>&lt;p&gt;👋 Today, I am excited to share my progress on my&lt;/p&gt;

&lt;h1&gt;
  
  
  100daysofcodechallenge journey.
&lt;/h1&gt;

&lt;p&gt;⏳ On day 4, I solved 2 DSA questions and made this React Native Onboarding UI by completing the following steps:&lt;/p&gt;

&lt;p&gt;✅ Used React Native Expo to build the Onboarding UI&lt;br&gt;
✅ For slider used - react-native-onboarding-swiper library&lt;br&gt;
✅ Implemented Lottie Animations to enhance the look of the app&lt;br&gt;
✅ Implemented Async Storage to maintain the state of onboarding&lt;/p&gt;

&lt;p&gt;⚛️ Tech Stack: React Native, Lottie Animations&lt;br&gt;
⚛️ Github: &lt;a href="https://github.com/tabassum2507/Onbaording_React_Native_UI" rel="noopener noreferrer"&gt;https://github.com/tabassum2507/Onbaording_React_Native_UI&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;🔥Doing the #100daysofcodechallenge to brush up on my coding skills and build confidence in coding publicly! Join me on this journey! Share your feedback, suggestions, and experiences in the comments. Let's code, learn, and grow together! 💻🌱 #100DaysOfCode #CodingCommunity 🚀&lt;br&gt;
&lt;a href="https://media.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%2Fx0wwzoyc1n5jnt8zorrb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.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%2Fx0wwzoyc1n5jnt8zorrb.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>reactnative</category>
      <category>react</category>
      <category>javascript</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Day 3: Wrote an Article on Computer Networking</title>
      <dc:creator>Tabassum Khanum</dc:creator>
      <pubDate>Sat, 11 Nov 2023 22:06:54 +0000</pubDate>
      <link>https://forem.com/codewithtee/day-3-wrote-an-article-on-computer-networking-34ad</link>
      <guid>https://forem.com/codewithtee/day-3-wrote-an-article-on-computer-networking-34ad</guid>
      <description>&lt;p&gt;👋 Today, I am excited to share my progress on my #100daysofcodechallenge journey.&lt;/p&gt;

&lt;p&gt;⏳ On day 3, I solved 2 array problems on Leetcode to begin practicing data structures and algorithms in JavaScript. I learned more about computer networks by studying the OSI model, TCP/IP models, and protocols. &lt;/p&gt;

&lt;p&gt;⚛️ I shared what I learned today on my blog. Feel free to take a look! - &lt;a href="https://dev.to/codewithtee/understanding-computer-networking-part-1-the-osi-model-25m0"&gt;https://dev.to/codewithtee/understanding-computer-networking-part-1-the-osi-model-25m0&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;🔥Doing the #100daysofcodechallenge to brush up on my coding skills and build confidence in coding publicly! Join me on this journey! Share your feedback, suggestions, and experiences in the comments. Let's code, learn, and grow together! 💻🌱&lt;/p&gt;

&lt;h1&gt;
  
  
  100DaysOfCode
&lt;/h1&gt;

&lt;h1&gt;
  
  
  CodingCommunity 🚀
&lt;/h1&gt;

</description>
      <category>computerscience</category>
      <category>dsa</category>
      <category>leetcode</category>
      <category>100daysofcode</category>
    </item>
    <item>
      <title>Understanding Computer Networking: Part 1 - The OSI Model✨</title>
      <dc:creator>Tabassum Khanum</dc:creator>
      <pubDate>Sat, 11 Nov 2023 19:01:29 +0000</pubDate>
      <link>https://forem.com/codewithtee/understanding-computer-networking-part-1-the-osi-model-25m0</link>
      <guid>https://forem.com/codewithtee/understanding-computer-networking-part-1-the-osi-model-25m0</guid>
      <description>&lt;p&gt;Hey Coders!&lt;br&gt;
In this article, we're diving into a super important topic in Computer Science and programming - the OSI model. When I say it's important, I really mean it! Understanding this model is like unlocking the secrets of how data moves between computers and how networking actually works. Plus, it's a hot topic in interviews.&lt;/p&gt;

&lt;p&gt;I remember struggling with this concept back in High School, and it even came up in my college viva and interviews. I asked questions, tried to grasp it, and finally got why it's so important.&lt;/p&gt;

&lt;p&gt;So, let's get ready to unravel the mysteries of the OSI model together! 🚀&lt;/p&gt;

&lt;h3&gt;
  
  
  Understanding the OSI Model
&lt;/h3&gt;

&lt;p&gt;OSI stands for Open Systems Interconnection. It's like a blueprint for how computers talk to each other. Imagine it as a tower with seven floors. Each floor, or layer, has its own job, working together to make sure information travels between computers smoothly and reliably. This way, the whole communication process becomes organized and efficient.&lt;/p&gt;

&lt;p&gt;The OSI model has defined the common terminology used in networking discussions and documentation. The model is important as :&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;It makes fixing problems easier and lets us find potential issues in all parts of the communication process. &lt;/li&gt;
&lt;li&gt;The OSI model encourages companies that make computer parts to create products that can easily communicate to each other on a network. &lt;/li&gt;
&lt;li&gt;It's like having a guidebook that breaks down a big job into smaller, manageable tasks.&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  The Seven Layers
&lt;/h3&gt;

&lt;p&gt;All 7 layer plays a distinct role, contributing to the overall efficiency and reliability of data transfer.&lt;/p&gt;

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

&lt;h3&gt;
  
  
  The Host Layers or Upper Layer
&lt;/h3&gt;

&lt;p&gt;The upper layers, also known as host layers, in the OSI model, are responsible for managing tasks related to software, applications, and user interactions. These layers focus on how data is presented to users and how communication is established between different software applications. There are three upper layers in the OSI model:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. Application Layer (Layer 7):&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This is the only layer that directly interacts with data from the user. Software applications like web browsers and email clients rely on the application layer to initiate communication.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Provides services directly to end-users or applications&lt;/li&gt;
&lt;li&gt;Deals with application-specific protocols such as HTTP, SMTP, FTP, Telnet, etc.&lt;/li&gt;
&lt;li&gt;Provides services such as file transfer&lt;/li&gt;
&lt;li&gt;Ensures an application can effectively communicate with other applications on different computer systems and networks&lt;/li&gt;
&lt;li&gt;Specifies the shared communications protocols and interface methods used by hosts in a communications network&lt;/li&gt;
&lt;li&gt;Defines the format of the data on the network&lt;/li&gt;
&lt;li&gt;Provides reliable and efficient communication between two or more devices&lt;/li&gt;
&lt;li&gt;Is mainly responsible for the unique identification of each device that resides on a local network.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;2. Presentation Layer (Layer 6):&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The Presentation layer is involved in translating data between the application layer and the lower layers. It handles tasks such as data encryption, compression, and formatting. Its goal is to ensure that data sent from one system can be understood by the application layer of another system.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Translates one data format into another data format&lt;/li&gt;
&lt;li&gt;Establishes context between application-layer entities&lt;/li&gt;
&lt;li&gt;Formats data so that data representation in the application layer and across the system is acceptable and compatible&lt;/li&gt;
&lt;li&gt;Ensures that communications that pass through it are in the appropriate form for the recipient application&lt;/li&gt;
&lt;li&gt;Serializes complex data structures into flat byte-strings&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The presentation layer's functions include: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Translation&lt;/li&gt;
&lt;li&gt;Encryption &amp;amp; decryption&lt;/li&gt;
&lt;li&gt;Compression &amp;amp; decompression&lt;/li&gt;
&lt;li&gt;Structure representation&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Two common examples of the presentation layer are: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Objects in object-oriented programming&lt;/li&gt;
&lt;li&gt;The exact way that streaming video is transmitted&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;3. Session Layer (Layer 5):&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The Session layer manages the establishment, maintenance, and termination of communication sessions between different applications. It coordinates the communication exchange between devices, making sure that data is exchanged smoothly. This layer is particularly important in scenarios involving multiple communication channels.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Establishing, maintaining, synchronizing, and terminating sessions between end-user applications&lt;/li&gt;
&lt;li&gt;Controlling and maintaining connections between systems to share data&lt;/li&gt;
&lt;li&gt;Allowing the systems to communicate in either half-duplex or full-duplex mode of communication&lt;/li&gt;
&lt;li&gt;Helping a protocol to be more consistent and reliable&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;The Lower Layers or Media Layers&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The lower layers, also known as the media layers, in the OSI model, handle the more fundamental aspects of network communication, primarily focusing on the physical transmission of data and the reliable transfer of information between adjacent nodes. These layers ensure that data can be sent and received accurately across the physical network infrastructure. There are four lower layers in the OSI model:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. Transport Layer (Layer 4):&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The Transport layer ensures end-to-end communication reliability. It manages issues like segmentation and reassembly of data, flow control, and error recovery. Protocols like TCP (Transmission Control Protocol) operate at this layer, providing reliable and ordered delivery of data.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Managing network traffic between hosts and end systems&lt;/li&gt;
&lt;li&gt;Ensuring complete data transfers&lt;/li&gt;
&lt;li&gt;Controlling the volume of data, where it is sent, and at what rate&lt;/li&gt;
&lt;li&gt;Providing reliable data transfer services to the upper layers&lt;/li&gt;
&lt;li&gt;Controlling the reliability of a given link through flow control, segmentation and desegmentation, and error control&lt;/li&gt;
&lt;li&gt;Ensuring that the data packets arrive accurately and reliably between sender and receiver&lt;/li&gt;
&lt;li&gt;Delivering an entire message from an application program on the source device to a similar application program on the destination device&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;2. Network Layer (Layer 3):&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The Network layer is responsible for routing and forwarding data across interconnected networks. It deals with logical addressing, such as IP addresses, and determines the best path for data to travel from the source to the destination. Routers operate at this layer, making decisions about the most efficient route for data transmission.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The network layer handles service requests from the transport layer and forwards them to the data link layer.&lt;/li&gt;
&lt;li&gt;The network layer translates logical addresses into physical addresses.&lt;/li&gt;
&lt;li&gt;The network layer breaks down data segments into data packets and reassembles them on the receiver side.&lt;/li&gt;
&lt;li&gt;The network layer delivers packets from source to destination across multiple links (networks).&lt;/li&gt;
&lt;li&gt;The network layer finds destinations by using logical addresses, such as IP (internet protocol).&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The network layer is composed of two parts: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Logical Link Control (LLC)&lt;br&gt;
Identifies network protocols, performs error checking, and synchronizes frames.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Media Access Control (MAC)&lt;br&gt;
Uses MAC addresses to connect devices and define permissions to transmit and receive data.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The network layer uses several protocols, including: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Internet Protocol (IP)&lt;/li&gt;
&lt;li&gt;Routing&lt;/li&gt;
&lt;li&gt;Testing&lt;/li&gt;
&lt;li&gt;Encryption&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;3. Data Link Layer (Layer 2):&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The Data Link layer creates a reliable link between adjacent nodes in a network. It handles tasks such as framing, error detection, and flow control. Devices like switches and network interface cards operate at this layer, ensuring that data is efficiently and accurately transferred between connected devices.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Encoding, decoding, and organizing data bits&lt;/li&gt;
&lt;li&gt;Hiding the details of underlying hardware&lt;/li&gt;
&lt;li&gt;Detecting errors in transmitted data&lt;/li&gt;
&lt;li&gt;Correcting errors using error detection and correction techniques&lt;/li&gt;
&lt;li&gt;Splitting data into chunks called frames&lt;/li&gt;
&lt;li&gt;Handling each frame separately&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;4. Physical Layer (Layer 1):&lt;/strong&gt;                                                           &lt;/p&gt;

&lt;p&gt;The Physical layer deals with the physical connection between devices. It includes aspects such as cables, connectors, and the transmission of raw bits over a physical medium like copper wires or optical fibers. This layer is concerned with the actual hardware that enables data transmission.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The setup of physical connection to the network&lt;/li&gt;
&lt;li&gt;Transmission and reception of signals&lt;/li&gt;
&lt;li&gt;Transporting data using electrical, mechanical, or procedural interfaces&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The physical layer consists of various network components such as: Power plugs, Connectors, Receivers, Cable types. &lt;/p&gt;

&lt;p&gt;The physical layer is also responsible for: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Maintaining the data quality by applying necessary protocols&lt;/li&gt;
&lt;li&gt;Maintaining the bit rate through the data transfer using wired and wireless medium&lt;/li&gt;
&lt;li&gt;Converting frames received from the data link layer into bits&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Wrapping Up
&lt;/h3&gt;

&lt;p&gt;I hope you've learned at least a couple of things from this article, thank you for reading till the end! And let me know if I should change or add anything to this article.&lt;br&gt;
For daily web development threads, updates, and content follow me on Twitter.&lt;br&gt;
Happy Coding🌼&lt;/p&gt;

&lt;p&gt;&lt;a href="https://i.giphy.com/media/zOvBKUUEERdNm/giphy.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://i.giphy.com/media/zOvBKUUEERdNm/giphy.gif" alt="gif" width="320" height="180"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>networking</category>
      <category>computerscience</category>
      <category>tutorial</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Day 1-2: React Image Search Application</title>
      <dc:creator>Tabassum Khanum</dc:creator>
      <pubDate>Fri, 10 Nov 2023 10:25:09 +0000</pubDate>
      <link>https://forem.com/codewithtee/day-1-2-react-image-search-application-30pe</link>
      <guid>https://forem.com/codewithtee/day-1-2-react-image-search-application-30pe</guid>
      <description>&lt;p&gt;👋 Today, I am excited to share my progress on my #100daysofcodechallenge journey.&lt;/p&gt;

&lt;p&gt;⏳ On day 1-2, I have made this React Image Search application by completing the following steps:&lt;/p&gt;

&lt;p&gt;✅ Used Unsplash API for getting Images in the application&lt;br&gt;
✅ Made API Calls in different scenarios&lt;br&gt;
✅ Used ESLint to fix application issues&lt;br&gt;
✅ Implemented Pagination in React&lt;/p&gt;

&lt;p&gt;⚛️ Tech Stack: React.js&lt;br&gt;
⚛️ Github: &lt;a href="https://github.com/tabassum2507/ImageSearch_ReactVite_Project"&gt;https://github.com/tabassum2507/ImageSearch_ReactVite_Project&lt;/a&gt;&lt;br&gt;
⚛️ URL: &lt;a href="https://image-search-react-vite-project.vercel.app/"&gt;https://image-search-react-vite-project.vercel.app/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;🔥Doing the #100daysofcodechallenge to brush up on my coding skills and build confidence in coding publicly! Join me on this journey! Share your feedback, suggestions, and experiences in the comments. Let's code, learn, and grow together! 💻🌱 #100DaysOfCode #CodingCommunity 🚀&lt;/p&gt;

</description>
      <category>100daysofcode</category>
      <category>react</category>
      <category>webdev</category>
      <category>javascript</category>
    </item>
    <item>
      <title>JavaScript DOM Manipulation Cheatsheet✨</title>
      <dc:creator>Tabassum Khanum</dc:creator>
      <pubDate>Wed, 01 Mar 2023 17:54:41 +0000</pubDate>
      <link>https://forem.com/codewithtee/javascript-dom-manipulation-cheatsheet-2d18</link>
      <guid>https://forem.com/codewithtee/javascript-dom-manipulation-cheatsheet-2d18</guid>
      <description>&lt;p&gt;Hey Coders!☃&lt;/p&gt;

&lt;p&gt;In this article, we are going to learn about one of the most important topic- DOM Manipulation that newbie JavaScript learners may find overwhelming at the start. It's an important topic in web development because the DOM serves as the initial use of JavaScript in the browser. I’ve tried to put together a super helpful cheat sheet to give you a complete overview of the DOM manipulation methods. So if you are ready, let's jump in!&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%2Foxz1gs8ohobh0q0urqzl.gif" 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%2Foxz1gs8ohobh0q0urqzl.gif" alt="gif" width="245" height="152"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Hello DOM!
&lt;/h3&gt;

&lt;p&gt;One of the most unique and useful abilities of Javascript is to manipulate the DOM. So what exactly is DOM and why is everyone in the industry throwing its term everywhere?&lt;/p&gt;

&lt;p&gt;Definition in plain English -&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"The DOM(or Document Object Model) is a tree-like representation of the web page that gets loaded into the browser.&lt;br&gt;
It represents the web page using a‌‌ series of objects. The main object is the document object, which in turn houses other objects which also house their own objects, and so on."&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The DOM is a tree-like representation of the contents of a webpage - a tree of “nodes” with different relationships depending on how they’re arranged in the HTML document.&lt;/p&gt;

&lt;p&gt;It has properties and methods which you can use to get information about the document using a rule known as dot notation.&lt;/p&gt;

&lt;h3&gt;
  
  
  DOM Tree Analogy
&lt;/h3&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%2Fvtyqvhelq5bocv3943gd.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%2Fvtyqvhelq5bocv3943gd.png" alt=" " width="674" height="380"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;One of the main reasons for developing the DOM is to maintain a standard programming interface for HTML. Setting and maintaining this standard enables programmers to create or navigate these types of documents and modify their elements predictably, using any type of language or development environment.&lt;/p&gt;

&lt;p&gt;The individual elements in an HTML document are called "nodes" in DOM terms. The relationship between elements in a document is "tree-like", meaning that like a tree has a main trunk, from which stem certain main branches, which in turn branch off into finer branches and so on, so does an HTML document contain certain "key" elements, like the &lt;code&gt;&amp;lt;head&amp;gt;&lt;/code&gt; and &lt;code&gt;&amp;lt;body&amp;gt;&lt;/code&gt;, which in turn contain other elements, like &lt;code&gt;&amp;lt;div&amp;gt;'s&lt;/code&gt;, &lt;code&gt;&amp;lt;p&amp;gt;'s&lt;/code&gt; and others.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;div&lt;/span&gt; &lt;span class="nx"&gt;id&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;container&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;
  &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;div&lt;/span&gt; &lt;span class="kd"&gt;class&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;display&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span class="sr"&gt;/div&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;
&lt;/span&gt;  &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;div&lt;/span&gt; &lt;span class="kd"&gt;class&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;controls&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span class="sr"&gt;/div&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;
&lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="sr"&gt;/div&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;
&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;In the above example, the &lt;code&gt;&amp;lt;div class="display"&amp;gt;&amp;lt;/div&amp;gt;&lt;/code&gt; is a “child” of &lt;code&gt;&amp;lt;div id="container"&amp;gt;&amp;lt;/div&amp;gt;&lt;/code&gt; and a sibling to &lt;code&gt;&amp;lt;div class="controls"&amp;gt;&amp;lt;/div&amp;gt;&lt;/code&gt;. Think of it like a family tree. &lt;code&gt;&amp;lt;div id="container"&amp;gt;&amp;lt;/div&amp;gt;&lt;/code&gt; is a parent, with its children on the next level, each on their own “branch”.&lt;/p&gt;

&lt;h3&gt;
  
  
  Uses of DOM
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;first of all, locating elements in the document by their ID, class, tag name (div, p, etc.), and other characteristics&lt;/li&gt;
&lt;li&gt;adding, removing, or modifying the HTML elements themselves&lt;/li&gt;
&lt;li&gt;modifying any attribute of an HTML element, such as their class, style attributes, and others&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Selecting Element in the DOM
&lt;/h3&gt;

&lt;p&gt;JavaScript provides six methods to select an element from the document.&lt;/p&gt;

&lt;h3&gt;
  
  
  getElementById
&lt;/h3&gt;

&lt;p&gt;– search element by element_id&lt;/p&gt;

&lt;p&gt;The Document method getElementById() returns an Element an object representing the element whose id property matches the specified string. Since element IDs are required to be unique if specified, they're a useful way to get access to a specific element quickly.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;changeColor&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;newColor&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;elem&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;document&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;getElementById&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;para&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="nx"&gt;elem&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;style&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;color&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;newColor&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

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

&lt;/div&gt;



&lt;h3&gt;
  
  
  getElementsByTagName
&lt;/h3&gt;

&lt;p&gt;– search element by tag name (e.g., span, div)&lt;/p&gt;

&lt;p&gt;The Element.getElementsByTagName() method turns a live HTMLCollection of elements with the given tag name.&lt;/p&gt;

&lt;p&gt;When called on an HTML element in an HTML document, getElementsByTagName lower-case the argument before searching for it. This is undesirable when trying to match camel-cased SVG elements (such as &lt;code&gt;&amp;lt;linearGradient&amp;gt;&lt;/code&gt;) in an HTML document. Instead, use Element.getElementsByTagNameNS(), which preserves the capitalization of the tag name.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;table&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;document&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;getElementById&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;forecast-table&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;cells&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;table&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;getElementsByTagName&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;td&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

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

&lt;/div&gt;



&lt;h3&gt;
  
  
  getElementsByClassName
&lt;/h3&gt;

&lt;p&gt;– search element by class name&lt;/p&gt;

&lt;p&gt;The Element method getElementsByClassName() returns a live HTMLCollection which contains every descendant element which has the specified class name or names.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;
&lt;span class="nx"&gt;element&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;getElementsByClassName&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;test&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

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

&lt;/div&gt;



&lt;h3&gt;
  
  
  getElementsByName
&lt;/h3&gt;

&lt;p&gt;– search element by the name attribute&lt;/p&gt;

&lt;p&gt;The getElementsByName() method of the Document object returns a NodeList Collection of elements with a given name attribute in the document.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;up_names&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;document&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;getElementsByName&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;up&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

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

&lt;/div&gt;



&lt;h3&gt;
  
  
  querySelector
&lt;/h3&gt;

&lt;p&gt;– returns the first element that matches the specified selector&lt;/p&gt;

&lt;p&gt;The Document method querySelector() returns the first Element within the document that matches the specified selector, or group of selectors. If no matches are found, null is returned.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;el&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;document&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;querySelector&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;.myclass&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

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

&lt;/div&gt;



&lt;h3&gt;
  
  
  querySelectorAll
&lt;/h3&gt;

&lt;p&gt;– returns elements that match the specified selector&lt;/p&gt;

&lt;p&gt;The Document method querySelectorAll() returns a static (not live) NodeList representing a list of the document's elements that match the specified group of selectors.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;container&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;document&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;querySelector&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;#test&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;matches&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;container&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;querySelectorAll&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;div.highlighted &amp;gt; p&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

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

&lt;/div&gt;



&lt;h3&gt;
  
  
  Styling an Element
&lt;/h3&gt;

&lt;p&gt;You can directly change each CSS property of an element by using the style property, which references the element's inline styles.&lt;/p&gt;

&lt;p&gt;For example, you can change an element color using:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;
&lt;span class="nx"&gt;element&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;style&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;color&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;#fff&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;You can alter the border:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;element&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;style&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;border&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;1px solid black&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;

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

&lt;/div&gt;



&lt;h3&gt;
  
  
  Creating Elements
&lt;/h3&gt;

&lt;p&gt;The Document object provides a method createElement() to create an element and appendChild() method to add it to the HTML DOM.&lt;/p&gt;

&lt;p&gt;The document.createElement() method creates the HTML element specified by tagName.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nf"&gt;createElement&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;tagName&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="nf"&gt;createElement&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;tagName&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;options&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;newDiv&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;document&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;createElement&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;div&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The appendChild() method of the Node interface adds a node to the end of the list of children of a specified parent node. If the given child is a reference to an existing node in the document, appendChild() moves it from its current position to the new position.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="c1"&gt;// Create a new paragraph element, and append it to the end of the document body&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;p&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;document&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;createElement&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;p&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nb"&gt;document&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;body&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;appendChild&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;p&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

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

&lt;/div&gt;



&lt;h3&gt;
  
  
  Modify Text
&lt;/h3&gt;

&lt;p&gt;The easiest way to modify the content of an HTML element is by using the innerHTML property.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;element&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;document&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;getElementById&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;id01&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="nx"&gt;element&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;innerHTML&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;New Heading&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

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

&lt;/div&gt;



&lt;h3&gt;
  
  
  Modifying Element Classes and IDs
&lt;/h3&gt;

&lt;p&gt;The id property sets or returns the value of an element's id attribute.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nb"&gt;document&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;getElementById&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;demo&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nx"&gt;id&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;newid&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

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

&lt;/div&gt;



&lt;p&gt;The className is used as a selector in HTML which helps to give some value to the element attributes. The document.getElementById() method is used to return the element in the document with the “id” attribute and the “className” attribute can be used to change/append the class of the element.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nb"&gt;document&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;getElementById&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;myElement&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nx"&gt;className&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;myclass&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

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

&lt;/div&gt;



&lt;h3&gt;
  
  
  Remove an Element
&lt;/h3&gt;

&lt;p&gt;ES6 provides an easier, simpler way to achieve the same tax: remove(). Call the remove() method on the element you want to remove.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;elem&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;document&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;querySelector&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;#some-element&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nx"&gt;elem&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;remove&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;

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

&lt;/div&gt;



&lt;h3&gt;
  
  
  Traversing the DOM
&lt;/h3&gt;

&lt;p&gt;Read this article to get to know about DOM traversing - &lt;a href="https://medium.com/codex/how-to-traverse-the-dom-in-javascript-7fece4a7751c" rel="noopener noreferrer"&gt;https://medium.com/codex/how-to-traverse-the-dom-in-javascript-7fece4a7751c&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Event Listeners
&lt;/h3&gt;

&lt;p&gt;The JavaScript addEventListener() method allows you to set up functions to be called when a specified event happens, such as when a user clicks a button.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;
&lt;span class="nx"&gt;target&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;addEventListener&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;event&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;useCapture&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;target: the HTML element you wish to add your event handler to. This element exists as part of the Document Object Model (DOM).&lt;/li&gt;
&lt;li&gt;event: a string that specifies the name of the event. We already mentioned load and click events.&lt;/li&gt;
&lt;li&gt;function: specifies the function to run when the event is detected. This is the magic that can allow your web pages to change dynamically.&lt;/li&gt;
&lt;li&gt;useCapture: an optional Boolean value (true or false) that specifies whether the event should be executed in the capturing or bubbling phase.
&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="nx"&gt;button&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;addEventListener&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;click&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;e&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="o"&gt;=&amp;gt;&lt;/span&gt;&lt;span class="p"&gt;{&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;e&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;target&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;id&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="p"&gt;})&lt;/span&gt;

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

&lt;/div&gt;



&lt;h3&gt;
  
  
  Removing Event Handlers
&lt;/h3&gt;

&lt;p&gt;If for some reason you no longer want an event handler to activate, here's how to remove it:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;
&lt;span class="nx"&gt;target&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;removeEventListener&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;event&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;useCapture&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Wrapping Up
&lt;/h3&gt;

&lt;p&gt;I hope you've learned at least a couple of things from this article, thank you for reading till the end! And let me know if I should change or add anything to this article.&lt;br&gt;
For daily web development threads, updates and content follow me on Twitter.&lt;br&gt;
Happy Coding🌼&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%2Frvl7bd6oegz6ilohwewk.gif" 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%2Frvl7bd6oegz6ilohwewk.gif" alt="gif" width="320" height="180"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>codenewbie</category>
      <category>learning</category>
      <category>careeradvice</category>
      <category>productivity</category>
    </item>
  </channel>
</rss>
