<?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: Yalda Khoshpey </title>
    <description>The latest articles on Forem by Yalda Khoshpey  (@yaldakhoshpey).</description>
    <link>https://forem.com/yaldakhoshpey</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%2F3258516%2F42f3d1f4-b795-45b9-8825-9291adb14668.jpg</url>
      <title>Forem: Yalda Khoshpey </title>
      <link>https://forem.com/yaldakhoshpey</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/yaldakhoshpey"/>
    <language>en</language>
    <item>
      <title>“What I Learned Building Real Projects with Node.js &amp; Next.js in 2026</title>
      <dc:creator>Yalda Khoshpey </dc:creator>
      <pubDate>Sun, 08 Feb 2026 10:46:53 +0000</pubDate>
      <link>https://forem.com/yaldakhoshpey/what-i-learned-building-real-projects-with-nodejs-nextjs-in-2026-46bj</link>
      <guid>https://forem.com/yaldakhoshpey/what-i-learned-building-real-projects-with-nodejs-nextjs-in-2026-46bj</guid>
      <description>&lt;p&gt;I’ve been playing with Node.js and Next.js for a while now, and here’s the thing: building apps isn’t just about writing code it’s about making your life easier and your users happy.&lt;br&gt;
Here are a few things I’ve learned the hard way:&lt;br&gt;
Serverless isn’t scary. Using Next.js API routes changed the way I think about backend. Sometimes, less setup = more productivity.&lt;br&gt;
Performance wins everything. Even small tweaks in Node.js‌ like caching responses or optimizing middleware can make a huge difference.&lt;br&gt;
The right tools save sanity. Using SWR, React Query, or even plain fetch strategically made my apps faster and my dev workflow smoother.&lt;br&gt;
Keep it readable. I’ve seen too many projects with spaghetti code. Next.js + Node.js lets you structure things neatly use it.&lt;br&gt;
Experiment constantly. New features come every year. Don’t be afraid to try ISR, Edge Middleware, or new Node APIs.&lt;br&gt;
Building web apps in 2026 is exciting. And if you focus on clarity, performance, and learning, Node.js + Next.js can make you look like a magician in front of your users. ✨&lt;br&gt;
What’s the biggest lesson you’ve learned building apps this year? Let’s swap stories! 👇&lt;/p&gt;

</description>
      <category>node</category>
      <category>nextjs</category>
      <category>fullstack</category>
      <category>programming</category>
    </item>
    <item>
      <title>Building a 3D Virtual Portfolio Room🏠</title>
      <dc:creator>Yalda Khoshpey </dc:creator>
      <pubDate>Mon, 24 Nov 2025 14:54:51 +0000</pubDate>
      <link>https://forem.com/yaldakhoshpey/building-a-3d-virtual-portfolio-room-18kp</link>
      <guid>https://forem.com/yaldakhoshpey/building-a-3d-virtual-portfolio-room-18kp</guid>
      <description>&lt;h2&gt;
  
  
  Building a 3D Interactive Portfolio Room — Looking for Collaborators!
&lt;/h2&gt;

&lt;p&gt;Hi everyone — I’d like to share a creative side project that I’ve been working on:&lt;br&gt;&lt;br&gt;
a &lt;strong&gt;3D interactive room portfolio&lt;/strong&gt;, built purely with &lt;strong&gt;HTML, CSS, and JavaScript&lt;/strong&gt;, where certificates hang on the walls like art in a gallery.&lt;/p&gt;

&lt;p&gt;👉 &lt;strong&gt;Repo:&lt;/strong&gt; &lt;a href="https://github.com/YALDAKHOSHPEY/3D_Room_certificates.git" rel="noopener noreferrer"&gt;Repo&lt;/a&gt;&lt;br&gt;&lt;br&gt;
👉 &lt;strong&gt;Live Demo:&lt;/strong&gt; &lt;a href="https://yaldakhoshpey.github.io/3D_Room_certificates/" rel="noopener noreferrer"&gt;Live Demo&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  🎨 What Is This Project?
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;It’s an &lt;strong&gt;experimental portfolio template&lt;/strong&gt; (not a finished product) — you can walk around a room, rotate your view, zoom in and out, and click on certificates to view them in full.
&lt;/li&gt;
&lt;li&gt;Everything is done using &lt;strong&gt;CSS 3D transforms&lt;/strong&gt;, so there’s no heavy graphics engine — just creative use of basic web technologies.
&lt;/li&gt;
&lt;li&gt;Includes &lt;strong&gt;ambient sound effects&lt;/strong&gt;, smooth animations (like an opening door), and keyboard interactions (&lt;code&gt;+&lt;/code&gt;/&lt;code&gt;-&lt;/code&gt; to zoom, &lt;code&gt;Enter&lt;/code&gt; to open door, &lt;code&gt;0&lt;/code&gt; to reset view).
&lt;/li&gt;
&lt;li&gt;Fully &lt;strong&gt;responsive&lt;/strong&gt;, working on both desktop and mobile.
&lt;/li&gt;
&lt;li&gt;Licensed under &lt;strong&gt;MIT&lt;/strong&gt;, so it’s completely open for collaboration.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🌱 Why I Built It
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;I wanted a &lt;strong&gt;unique way to present certificates&lt;/strong&gt; — something immersive instead of a typical flat layout.
&lt;/li&gt;
&lt;li&gt;It began as a &lt;strong&gt;mock portfolio&lt;/strong&gt;, but I plan to expand it into something more complete and practical.
&lt;/li&gt;
&lt;li&gt;It’s also a fun area to experiment with &lt;strong&gt;3D on the web&lt;/strong&gt; using nothing more than CSS + JS — no WebGL or Three.js.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🧩 What’s Still Missing (and Where I Need Help)
&lt;/h2&gt;

&lt;p&gt;Since this is currently a mock portfolio, several parts feel unfinished. Here’s where collaboration would be amazing:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Dynamic content:&lt;/strong&gt; certificates are static for now; a JSON-driven setup would make it easier to update.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;CMS integration:&lt;/strong&gt; ideally users could manage certificates and content through an admin panel.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Performance improvements:&lt;/strong&gt; heavy 3D transforms can lag on low-end devices.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Design polish:&lt;/strong&gt; smoother UX, improved interactions, better mobile layout.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Room extensibility:&lt;/strong&gt; more room types, more layouts, custom themes.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Accessibility:&lt;/strong&gt; better screen-reader support, ARIA roles, improved keyboard flow.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🤝 Why You Should Join Me
&lt;/h2&gt;

&lt;p&gt;If you enjoy &lt;strong&gt;creative UI&lt;/strong&gt;, &lt;strong&gt;web design&lt;/strong&gt;, or &lt;strong&gt;3D experiments&lt;/strong&gt;, this project can be a fun playground:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Hands-on experience with &lt;strong&gt;CSS 3D transforms&lt;/strong&gt; and animation.
&lt;/li&gt;
&lt;li&gt;A chance to collaborate on an open-source project with real potential.
&lt;/li&gt;
&lt;li&gt;A unique opportunity to rethink portfolio presentation visually.
&lt;/li&gt;
&lt;li&gt;Meaningful GitHub contributions through new features, refactors, or optimizations.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🚀 How to Contribute
&lt;/h2&gt;

&lt;p&gt;Here are ways you can get involved:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Fork the repo&lt;/strong&gt; and explore the code.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Open issues&lt;/strong&gt; for bugs, ideas, or needed improvements.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Submit pull requests&lt;/strong&gt; — from dynamic loading to accessibility updates.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;UI/UX design contributions:&lt;/strong&gt; mockups, themes, layouts, visual ideas.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;General feedback:&lt;/strong&gt; try the live demo and tell me what feels off or what could be better.&lt;/li&gt;
&lt;/ol&gt;




&lt;h2&gt;
  
  
  🔭 Next Steps (My Vision)
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Make the room fully &lt;strong&gt;data-driven&lt;/strong&gt; (JSON or API).
&lt;/li&gt;
&lt;li&gt;Add an &lt;strong&gt;admin panel&lt;/strong&gt; for managing certificates.
&lt;/li&gt;
&lt;li&gt;Offer multiple &lt;strong&gt;room themes&lt;/strong&gt; (gallery, studio, minimalist, etc.).
&lt;/li&gt;
&lt;li&gt;Smooth out animations and interactions for a more polished experience.
&lt;/li&gt;
&lt;li&gt;Turn the project into a reusable &lt;strong&gt;portfolio template&lt;/strong&gt; anyone can adopt.&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;If you made it this far — thank you! 🙏&lt;br&gt;&lt;br&gt;
I’d be excited to team up with developers, designers, or anyone curious to help grow this project.&lt;br&gt;&lt;br&gt;
Drop a comment, open an issue, or send a PR.  &lt;/p&gt;

&lt;p&gt;Let’s turn this &lt;strong&gt;mock portfolio&lt;/strong&gt; into a fully polished, collaborative web experience.&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>css</category>
      <category>html</category>
      <category>programming</category>
    </item>
    <item>
      <title>The Psychology of Code: Why Users Fall in Love with Certain UIs😃</title>
      <dc:creator>Yalda Khoshpey </dc:creator>
      <pubDate>Thu, 30 Oct 2025 14:01:31 +0000</pubDate>
      <link>https://forem.com/yaldakhoshpey/the-psychology-of-code-why-users-fall-in-love-with-certain-uis-4l4i</link>
      <guid>https://forem.com/yaldakhoshpey/the-psychology-of-code-why-users-fall-in-love-with-certain-uis-4l4i</guid>
      <description>&lt;p&gt;Ever wonder why some applications feel like magic while others just... don't? It's not just about fancy animations or beautiful colors. There's actual psychology behind why users emotionally connect with certain interfaces.&lt;/p&gt;

&lt;p&gt;The Love at First Sight Effect&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;// It's not just about clean code - it's about emotional impact&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;firstImpression&lt;/span&gt; &lt;span class="o"&gt;=&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="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;loadingTime&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;getLoadingTime&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt; &lt;span class="c1"&gt;// Should be &amp;lt; 3 seconds&lt;/span&gt;
  &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;visualHierarchy&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;establishVisualHierarchy&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt; &lt;span class="c1"&gt;// Guides user attention&lt;/span&gt;
  &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;emotionalTrigger&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;usePositiveEmotions&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt; &lt;span class="c1"&gt;// Colors, images, micro-interactions&lt;/span&gt;

  &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;loadingTime&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="mi"&gt;3000&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class="nx"&gt;visualHierarchy&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class="nx"&gt;emotionalTrigger&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;p&gt;Psychological Principles in Action&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Hick's Law in Navigation&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Less choices = Faster decisions&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight css"&gt;&lt;code&gt;&lt;span class="c"&gt;/* Good: Progressive disclosure */&lt;/span&gt;
&lt;span class="nc"&gt;.primary-nav&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nl"&gt;display&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;flex&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="py"&gt;gap&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;var&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;--space-md&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="nc"&gt;.secondary-nav&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nl"&gt;display&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;none&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="c"&gt;/* Revealed when needed */&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="nc"&gt;.primary-nav&lt;/span&gt;&lt;span class="nd"&gt;:hover&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="nc"&gt;.secondary-nav&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nl"&gt;display&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;flex&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="c"&gt;/* Contextual appearance */&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ol&gt;
&lt;li&gt;The Zeigarnik Effect&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Users remember incomplete tasks&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight jsx"&gt;&lt;code&gt;&lt;span class="c1"&gt;// Progress indicators create psychological engagement&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;OnboardingFlow&lt;/span&gt; &lt;span class="o"&gt;=&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="kd"&gt;const&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;currentStep&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;setCurrentStep&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;useState&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;0&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;totalSteps&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

  &lt;span class="k"&gt;return &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;div&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
      &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nc"&gt;ProgressBar&lt;/span&gt; 
        &lt;span class="na"&gt;current&lt;/span&gt;&lt;span class="p"&gt;=&lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;currentStep&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt; 
        &lt;span class="na"&gt;total&lt;/span&gt;&lt;span class="p"&gt;=&lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;totalSteps&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt; 
        &lt;span class="c1"&gt;// Creates psychological urge to complete&lt;/span&gt;
      &lt;span class="p"&gt;/&amp;gt;&lt;/span&gt;
      &lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="cm"&gt;/* Step content */&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;
    &lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;div&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&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;p&gt;Case Study: Why Everyone Loves These Apps&lt;/p&gt;

&lt;p&gt;✨ Duolingo's Gamification&lt;/p&gt;

&lt;p&gt;· Variable rewards (unexpected bonuses)&lt;br&gt;
· Progress visualization (streaks, levels)&lt;br&gt;
· Loss aversion (don't break the streak!)&lt;/p&gt;

&lt;p&gt;✨ Notion's Empowerment&lt;/p&gt;

&lt;p&gt;· Sense of control (customizable everything)&lt;br&gt;
· Cognitive ease (familiar metaphors)&lt;br&gt;
· Achievement (checkboxes, databases)&lt;/p&gt;

&lt;p&gt;✨ Linear's Flow State&lt;/p&gt;

&lt;p&gt;· Reduced cognitive load (minimal interface)&lt;br&gt;
· Instant feedback (quick actions)&lt;br&gt;
· Predictable patterns (muscle memory)&lt;/p&gt;

&lt;p&gt;Practical Psychological Patterns You Can Implement Today&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;The "IKEA Effect" - Love Through Labor
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight jsx"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;CustomizableDashboard&lt;/span&gt; &lt;span class="o"&gt;=&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="kd"&gt;const&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;userCustomizations&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;setUserCustomizations&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;useState&lt;/span&gt;&lt;span class="p"&gt;({});&lt;/span&gt;

  &lt;span class="c1"&gt;// Users value what they help create&lt;/span&gt;
  &lt;span class="k"&gt;return &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nc"&gt;DraggableWidgets&lt;/span&gt; 
      &lt;span class="na"&gt;onRearrange&lt;/span&gt;&lt;span class="p"&gt;=&lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;newLayout&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="nf"&gt;setUserCustomizations&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;newLayout&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
        &lt;span class="c1"&gt;// Users feel ownership = emotional attachment&lt;/span&gt;
      &lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;
    &lt;span class="p"&gt;/&amp;gt;&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;ol&gt;
&lt;li&gt;Social Proof - The Bandwagon Effect
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight jsx"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;SocialValidation&lt;/span&gt; &lt;span class="o"&gt;=&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="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;div&lt;/span&gt; &lt;span class="na"&gt;className&lt;/span&gt;&lt;span class="p"&gt;=&lt;/span&gt;&lt;span class="s"&gt;"social-proof"&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;span&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;📊 Join 15,238 developers who love this tool&lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;span&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nc"&gt;RecentActivity&lt;/span&gt; 
      &lt;span class="na"&gt;users&lt;/span&gt;&lt;span class="p"&gt;=&lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Sarah&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Mike&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Alex&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt; 
      &lt;span class="na"&gt;action&lt;/span&gt;&lt;span class="p"&gt;=&lt;/span&gt;&lt;span class="s"&gt;"just customized their workspace"&lt;/span&gt;
    &lt;span class="p"&gt;/&amp;gt;&lt;/span&gt;
  &lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;div&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;ol&gt;
&lt;li&gt;Scarcity &amp;amp; Urgency
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight jsx"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;LimitedFeature&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;({&lt;/span&gt; &lt;span class="nx"&gt;availableSpots&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="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;div&lt;/span&gt; &lt;span class="na"&gt;className&lt;/span&gt;&lt;span class="p"&gt;=&lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="s2"&gt;`feature-card &lt;/span&gt;&lt;span class="p"&gt;${&lt;/span&gt;&lt;span class="nx"&gt;availableSpots&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="mi"&gt;10&lt;/span&gt; &lt;span class="p"&gt;?&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;urgent&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt; &lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;''&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;`&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;h3&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;Early Access Feature&lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;h3&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;p&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;Only &lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;availableSpots&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt; spots remaining&lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;p&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="cm"&gt;/* Triggers FOMO (Fear Of Missing Out) */&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;
  &lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;div&lt;/span&gt;&lt;span class="p"&gt;&amp;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 Dark Patterns to Avoid 🚫&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;// Don't be this person&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;darkPatterns&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="na"&gt;forcedContinuity&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="c1"&gt;// Hard to cancel subscriptions&lt;/span&gt;
  &lt;span class="na"&gt;confirmShaming&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;   &lt;span class="c1"&gt;// "No thanks, I hate saving money"&lt;/span&gt;
  &lt;span class="na"&gt;hiddenCosts&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;      &lt;span class="c1"&gt;// Surprise fees at checkout&lt;/span&gt;
  &lt;span class="na"&gt;misdirection&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt;      &lt;span class="c1"&gt;// Tricking users into actions&lt;/span&gt;
&lt;span class="p"&gt;};&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Measuring Emotional Response&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;// Beyond traditional analytics&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;measureUserHappiness&lt;/span&gt; &lt;span class="o"&gt;=&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="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;metrics&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="na"&gt;timeToSmile&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nf"&gt;measureFirstPositiveReaction&lt;/span&gt;&lt;span class="p"&gt;(),&lt;/span&gt;
    &lt;span class="na"&gt;frustrationClicks&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nf"&gt;countRapidClicks&lt;/span&gt;&lt;span class="p"&gt;(),&lt;/span&gt;
    &lt;span class="na"&gt;returnFrequency&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nf"&gt;trackVoluntaryReturns&lt;/span&gt;&lt;span class="p"&gt;(),&lt;/span&gt;
    &lt;span class="na"&gt;featureAdoption&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nf"&gt;measureOrganicUsageGrowth&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
  &lt;span class="p"&gt;};&lt;/span&gt;

  &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nf"&gt;calculateHappinessScore&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;metrics&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;p&gt;Key Takeaways 🎯&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Users don't buy features - they buy better versions of themselves&lt;/li&gt;
&lt;li&gt;Emotional design &amp;gt; Perfect pixels&lt;/li&gt;
&lt;li&gt;Psychological principles are your secret weapon&lt;/li&gt;
&lt;li&gt;Test for emotional response, not just functionality&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Your Turn!&lt;/p&gt;

&lt;p&gt;What's the most emotionally engaging UI you've ever used? Share your examples and let's discuss what psychological principles they're leveraging!&lt;/p&gt;

&lt;p&gt;Have you intentionally used psychology in your designs? I'd love to hear about your experiences in the comments below! 💬&lt;/p&gt;

</description>
      <category>programming</category>
      <category>discuss</category>
      <category>css</category>
      <category>frontend</category>
    </item>
    <item>
      <title>help us with Django</title>
      <dc:creator>Yalda Khoshpey </dc:creator>
      <pubDate>Thu, 23 Oct 2025 17:52:56 +0000</pubDate>
      <link>https://forem.com/yaldakhoshpey/help-us-with-django-1an1</link>
      <guid>https://forem.com/yaldakhoshpey/help-us-with-django-1an1</guid>
      <description>&lt;p&gt;

&lt;/p&gt;
&lt;div class="ltag__link--embedded"&gt;
  &lt;div class="crayons-story "&gt;
  &lt;a href="https://dev.to/vidakhoshpey22/help-needed-review-deploy-my-django-project-ready-aim-learn-2hhh" class="crayons-story__hidden-navigation-link"&gt;🚀 Help Needed: Review &amp;amp; Deploy My Django Project (Ready-Aim-Learn)&lt;/a&gt;


  &lt;div class="crayons-story__body crayons-story__body-full_post"&gt;
    &lt;div class="crayons-story__top"&gt;
      &lt;div class="crayons-story__meta"&gt;
        &lt;div class="crayons-story__author-pic"&gt;

          &lt;a href="/vidakhoshpey22" class="crayons-avatar  crayons-avatar--l  "&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%2Fuser%2Fprofile_image%2F3254595%2Fd1101e89-4fe3-4c29-b764-a38df88ad54c.jpeg" alt="vidakhoshpey22 profile" class="crayons-avatar__image"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
        &lt;div&gt;
          &lt;div&gt;
            &lt;a href="/vidakhoshpey22" class="crayons-story__secondary fw-medium m:hidden"&gt;
              Vida Khoshpey 
            &lt;/a&gt;
            &lt;div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"&gt;
              
                Vida Khoshpey 
                
              
              &lt;div id="story-author-preview-content-2953945" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0"&gt;
                &lt;div class="gap-4 grid"&gt;
                  &lt;div class="-mt-4"&gt;
                    &lt;a href="/vidakhoshpey22" class="flex"&gt;
                      &lt;span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"&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%2Fuser%2Fprofile_image%2F3254595%2Fd1101e89-4fe3-4c29-b764-a38df88ad54c.jpeg" class="crayons-avatar__image" alt=""&gt;
                      &lt;/span&gt;
                      &lt;span class="crayons-link crayons-subtitle-2 mt-5"&gt;Vida Khoshpey &lt;/span&gt;
                    &lt;/a&gt;
                  &lt;/div&gt;
                  &lt;div class="print-hidden"&gt;
                    
                      Follow
                    
                  &lt;/div&gt;
                  &lt;div class="author-preview-metadata-container"&gt;&lt;/div&gt;
                &lt;/div&gt;
              &lt;/div&gt;
            &lt;/div&gt;

          &lt;/div&gt;
          &lt;a href="https://dev.to/vidakhoshpey22/help-needed-review-deploy-my-django-project-ready-aim-learn-2hhh" class="crayons-story__tertiary fs-xs"&gt;&lt;time&gt;Oct 23 '25&lt;/time&gt;&lt;span class="time-ago-indicator-initial-placeholder"&gt;&lt;/span&gt;&lt;/a&gt;
        &lt;/div&gt;
      &lt;/div&gt;

    &lt;/div&gt;

    &lt;div class="crayons-story__indention"&gt;
      &lt;h2 class="crayons-story__title crayons-story__title-full_post"&gt;
        &lt;a href="https://dev.to/vidakhoshpey22/help-needed-review-deploy-my-django-project-ready-aim-learn-2hhh" id="article-link-2953945"&gt;
          🚀 Help Needed: Review &amp;amp; Deploy My Django Project (Ready-Aim-Learn)
        &lt;/a&gt;
      &lt;/h2&gt;
        &lt;div class="crayons-story__tags"&gt;
            &lt;a class="crayons-tag crayons-tag--filled  " href="/t/help"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;help&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/django"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;django&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/webdev"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;webdev&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/python"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;python&lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="crayons-story__bottom"&gt;
        &lt;div class="crayons-story__details"&gt;
          &lt;a href="https://dev.to/vidakhoshpey22/help-needed-review-deploy-my-django-project-ready-aim-learn-2hhh" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left"&gt;
            &lt;div class="multiple_reactions_aggregate"&gt;
              &lt;span class="multiple_reactions_icons_container"&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/exploding-head-daceb38d627e6ae9b730f36a1e390fca556a4289d5a41abb2c35068ad3e2c4b5.svg" width="18" height="18"&gt;
                  &lt;/span&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/multi-unicorn-b44d6f8c23cdd00964192bedc38af3e82463978aa611b4365bd33a0f1f4f3e97.svg" width="18" height="18"&gt;
                  &lt;/span&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="18" height="18"&gt;
                  &lt;/span&gt;
              &lt;/span&gt;
              &lt;span class="aggregate_reactions_counter"&gt;20&lt;span class="hidden s:inline"&gt; reactions&lt;/span&gt;&lt;/span&gt;
            &lt;/div&gt;
          &lt;/a&gt;
            &lt;a href="https://dev.to/vidakhoshpey22/help-needed-review-deploy-my-django-project-ready-aim-learn-2hhh#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center"&gt;
              Comments


              11&lt;span class="hidden s:inline"&gt; comments&lt;/span&gt;
            &lt;/a&gt;
        &lt;/div&gt;
        &lt;div class="crayons-story__save"&gt;
          &lt;small class="crayons-story__tertiary fs-xs mr-2"&gt;
            2 min read
          &lt;/small&gt;
            
              &lt;span class="bm-initial"&gt;
                

              &lt;/span&gt;
              &lt;span class="bm-success"&gt;
                

              &lt;/span&gt;
            
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;/div&gt;




</description>
      <category>django</category>
      <category>webdev</category>
      <category>python</category>
      <category>help</category>
    </item>
    <item>
      <title>From Tutorial Hell to Clarity: How I Knew I Was Leveling Up as a Developer🚀</title>
      <dc:creator>Yalda Khoshpey </dc:creator>
      <pubDate>Thu, 23 Oct 2025 13:40:00 +0000</pubDate>
      <link>https://forem.com/yaldakhoshpey/from-tutorial-hell-to-clarity-how-i-knew-i-was-leveling-up-as-a-developer-1iab</link>
      <guid>https://forem.com/yaldakhoshpey/from-tutorial-hell-to-clarity-how-i-knew-i-was-leveling-up-as-a-developer-1iab</guid>
      <description>&lt;p&gt;We’ve all been there: stuck in “tutorial hell,” copying code without fully understanding it, and feeling like an imposter. But there comes a point in every developer’s journey when things start to click. Here’s how I realized I was transitioning from a beginner to a proficient developer—and the signs that you might be, too.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;You Focus on the "Why," Not Just the "How"&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Early on, I’d ask, “How do I build this feature?” But as I grew, my questions shifted:&lt;/p&gt;

&lt;p&gt;· Why is this architecture better?&lt;br&gt;
· What are the trade-offs of this library?&lt;br&gt;
· How will this code scale?&lt;/p&gt;

&lt;p&gt;When you start thinking critically about decisions—not just following steps—you’re leveling up.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Debugging Feels Like Detective Work&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I used to panic when I encountered bugs. Now, I get excited. Tracing errors, reading stack traces, and isolating issues became a puzzle to solve—not a nightmare to dread.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;You Embrace the Unknown&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;As a beginner, I wanted clear answers. As a pro, I’m comfortable with ambiguity. Starting a new project without a tutorial? No problem. I’ve learned to research, experiment, and adapt.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;You Care About Maintainability&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I once wrote clever, complex code to show off. Now, I strive for simplicity and readability. Clean code isn’t just a buzzword—it’s a commitment to your future self and your team.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;You Read Code More Than You Write It&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I spend hours reviewing docs, exploring source code, and studying pull requests. Understanding existing code is just as important as writing new code.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;You Take Ownership of Mistakes&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Blaming external factors is easy. Admitting, “I broke this, and I’ll fix it,” is a sign of maturity. Growth happens when you take responsibility.&lt;/p&gt;

&lt;p&gt;Final Thoughts&lt;/p&gt;

&lt;p&gt;Becoming a “pro” isn’t about knowing everything—it’s about building the confidence to learn, adapt, and solve problems efficiently. The journey never truly ends, and that’s what makes it exciting.&lt;/p&gt;




&lt;p&gt;What was your “aha!” moment? Share your story in the comments below😃❤️‍🔥&lt;/p&gt;




</description>
      <category>programming</category>
      <category>discuss</category>
      <category>learning</category>
      <category>coding</category>
    </item>
    <item>
      <title>These 5 Coding Habits Separate a Good Developer from a Great One</title>
      <dc:creator>Yalda Khoshpey </dc:creator>
      <pubDate>Fri, 17 Oct 2025 12:29:49 +0000</pubDate>
      <link>https://forem.com/yaldakhoshpey/these-5-coding-habits-separate-a-good-developer-from-a-great-one-2cg8</link>
      <guid>https://forem.com/yaldakhoshpey/these-5-coding-habits-separate-a-good-developer-from-a-great-one-2cg8</guid>
      <description>&lt;p&gt;Over the years,working across different teams, I've noticed that great developers—beyond mastering frameworks and languages—have these habits ingrained in their DNA:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;🧠 Thinking 'Why' Before 'How'
They take the time to understand why a feature is being built before writing a single line of code. This understanding profoundly influences the architecture and technical choices.&lt;/li&gt;
&lt;li&gt;📚 Documenting as Part of the Coding Process
Not just for others, but for their "future self"! A simple comment, a clear README, or API docs can save the entire team hours of frustration.&lt;/li&gt;
&lt;li&gt;🔍Intentional Code Reviews
When reviewing others' code, they're not just looking for bugs. They're looking for clarity, simplicity, and cohesion with the overall architecture. Their critique is constructive, never personal.&lt;/li&gt;
&lt;li&gt;⏱️ Time-Blocking for Refactoring
They know the first solution isn't always the best one. They proactively block time in their calendar for refactoring and cleaning up code. It's an investment, not a waste of time.&lt;/li&gt;
&lt;li&gt;🎯 Testing for Failure, Not Just Success
Their unit tests don't just cover the happy path; they cover edge cases and failure states. They make it a non-negotiable habit.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;What do you think? Which of these habits is the hardest to develop? Or what other habit would you add to this list? 👇&lt;/p&gt;

</description>
      <category>programming</category>
      <category>discuss</category>
      <category>devops</category>
      <category>developer</category>
    </item>
    <item>
      <title>[Boost]</title>
      <dc:creator>Yalda Khoshpey </dc:creator>
      <pubDate>Sun, 12 Oct 2025 13:38:09 +0000</pubDate>
      <link>https://forem.com/yaldakhoshpey/-3ip9</link>
      <guid>https://forem.com/yaldakhoshpey/-3ip9</guid>
      <description>&lt;div class="ltag__link"&gt;
  &lt;a href="/yaldakhoshpey" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__pic"&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%2Fuser%2Fprofile_image%2F3258516%2F42f3d1f4-b795-45b9-8825-9291adb14668.jpg" alt="yaldakhoshpey"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="https://dev.to/yaldakhoshpey/3-common-frontend-interview-questions-1dhf" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;3 Common Frontend Interview Questions🚀&lt;/h2&gt;
      &lt;h3&gt;Yalda Khoshpey  ・ Oct 12 '25&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#frontend&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#javascript&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#react&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#interview&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;


</description>
      <category>frontend</category>
      <category>javascript</category>
      <category>react</category>
      <category>interview</category>
    </item>
    <item>
      <title>3 Common Frontend Interview Questions🚀</title>
      <dc:creator>Yalda Khoshpey </dc:creator>
      <pubDate>Sun, 12 Oct 2025 13:38:01 +0000</pubDate>
      <link>https://forem.com/yaldakhoshpey/3-common-frontend-interview-questions-1dhf</link>
      <guid>https://forem.com/yaldakhoshpey/3-common-frontend-interview-questions-1dhf</guid>
      <description>&lt;p&gt;Hey developers! 👋&lt;/p&gt;

&lt;p&gt;Today, let's break down three common frontend interview questions. The goal isn't to memorize answers, but to &lt;strong&gt;deeply understand the concepts&lt;/strong&gt; behind these questions.&lt;/p&gt;

&lt;p&gt;Let's dive in!&lt;/p&gt;




&lt;h3&gt;
  
  
  Question 1: JavaScript | Difference between &lt;code&gt;let&lt;/code&gt;, &lt;code&gt;const&lt;/code&gt;, and &lt;code&gt;var&lt;/code&gt;
&lt;/h3&gt;

&lt;p&gt;This classic question tests your understanding of Scope and Hoisting.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Short Answer:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;var&lt;/code&gt;: Has &lt;strong&gt;Function Scope&lt;/strong&gt;, can be redeclared. (Older, less recommended)&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;let&lt;/code&gt;: Has &lt;strong&gt;Block Scope&lt;/strong&gt;, cannot be redeclared, but its value can be reassigned.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;const&lt;/code&gt;: Has &lt;strong&gt;Block Scope&lt;/strong&gt;, must be initialized during declaration, and its &lt;strong&gt;assignment cannot be changed&lt;/strong&gt; (though the contents of objects/arrays can be modified).&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Detailed Explanation with Code:&lt;/strong&gt;&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;// Example with var (Function Scope)&lt;/span&gt;
&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;varExample&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="k"&gt;if &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="kd"&gt;var&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;Ali&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;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;// "Ali" - because var escapes the if block!&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="nf"&gt;varExample&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;

&lt;span class="c1"&gt;// Example with let and const (Block Scope)&lt;/span&gt;
&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;letConstExample&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="k"&gt;if &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="p"&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;age&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;30&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;city&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Tehran&lt;/span&gt;&lt;span class="dl"&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;age&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="c1"&gt;// 30&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;city&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="c1"&gt;// Tehran&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;
  &lt;span class="c1"&gt;// console.log(age); // Error! age is not defined here&lt;/span&gt;
  &lt;span class="c1"&gt;// console.log(city); // Error! city is not defined here&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="nf"&gt;letConstExample&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;

&lt;span class="c1"&gt;// const with objects and arrays&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;person&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Sarah&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt; &lt;span class="p"&gt;};&lt;/span&gt;
&lt;span class="nx"&gt;person&lt;/span&gt;&lt;span class="p"&gt;.&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;Mona&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="c1"&gt;// ✅ Allowed! We're modifying the content, not reassigning the constant.&lt;/span&gt;
&lt;span class="c1"&gt;// person = { name: "Mona" }; // ❌ Error! Cannot reassign the constant variable.&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;numbers&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;];&lt;/span&gt;
&lt;span class="nx"&gt;numbers&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;push&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="c1"&gt;// ✅ Allowed&lt;/span&gt;
&lt;span class="c1"&gt;// numbers = [4, 5]; // ❌ Error!&lt;/span&gt;

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

&lt;/div&gt;






&lt;p&gt;Why this question is asked:&lt;br&gt;
The interviewer wants to gauge your familiarity with modern ES6 concepts,memory management, and error prevention in code.&lt;/p&gt;

&lt;p&gt;Question 2: React | Class Components vs. Hooks (like useState)&lt;/p&gt;

&lt;p&gt;This question assesses your understanding of React's evolution and the rationale behind introducing Hooks.&lt;/p&gt;

&lt;p&gt;Short Answer:&lt;br&gt;
Hooks were introduced in React 16.8 to give functional components the ability to use state and lifecycle features.This led to reduced complexity, better reusability, and improved code readability.&lt;/p&gt;

&lt;p&gt;Detailed Explanation with Code:&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;// Old way: Class Component&lt;/span&gt;
&lt;span class="kd"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;OldCounter&lt;/span&gt; &lt;span class="kd"&gt;extends&lt;/span&gt; &lt;span class="nc"&gt;React&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;Component&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nf"&gt;constructor&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;props&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="k"&gt;super&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;props&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;state&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;count&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt; &lt;span class="p"&gt;};&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;

  &lt;span class="nx"&gt;increment&lt;/span&gt; &lt;span class="o"&gt;=&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="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;setState&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt; &lt;span class="na"&gt;count&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;state&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;count&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt; &lt;span class="p"&gt;});&lt;/span&gt;
  &lt;span class="p"&gt;};&lt;/span&gt;

  &lt;span class="nf"&gt;render&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="k"&gt;return &lt;/span&gt;&lt;span class="p"&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="o"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;p&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;&lt;span class="nx"&gt;Count&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;state&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;count&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="sr"&gt;/p&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;button&lt;/span&gt; &lt;span class="nx"&gt;onClick&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;increment&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;&lt;span class="nx"&gt;Increment&lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="sr"&gt;/button&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;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="c1"&gt;// Modern way: Functional Component with useState Hook&lt;/span&gt;
&lt;span class="k"&gt;import&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nx"&gt;useState&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;react&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;NewCounter&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="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;count&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;setCount&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;useState&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;0&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;increment&lt;/span&gt; &lt;span class="o"&gt;=&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="nf"&gt;setCount&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;count&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="p"&gt;};&lt;/span&gt;

  &lt;span class="k"&gt;return &lt;/span&gt;&lt;span class="p"&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="o"&gt;&amp;gt;&lt;/span&gt;
      &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;p&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;&lt;span class="nx"&gt;Count&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;count&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="sr"&gt;/p&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;button&lt;/span&gt; &lt;span class="nx"&gt;onClick&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;increment&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;&lt;span class="nx"&gt;Increment&lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="sr"&gt;/button&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;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;p&gt;Advantages of using Hooks:&lt;/p&gt;

&lt;p&gt;· Less and cleaner code: No need for constructor and this binding.&lt;br&gt;
· Reusable logic: You can build your own custom hooks.&lt;br&gt;
· No this confusion: Functional components don't have this.&lt;/p&gt;



&lt;p&gt;Question 3: CSS | Explain different position values (relative, absolute, fixed, sticky)&lt;/p&gt;

&lt;p&gt;This question tests your understanding of Layout and element positioning.&lt;/p&gt;

&lt;p&gt;Short Answer:&lt;/p&gt;

&lt;p&gt;· static: Default. Element flows in normal document order.&lt;br&gt;
· relative: Positioned relative to its normal position.&lt;br&gt;
· absolute: Positioned relative to nearest positioned ancestor (not static).&lt;br&gt;
· fixed: Positioned relative to the viewport (stays on screen during scroll).&lt;br&gt;
· sticky: Hybrid of relative and fixed. Acts relative until a scroll threshold, then acts fixed.&lt;/p&gt;

&lt;p&gt;Detailed Explanation with Code (HTML/CSS):&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"container"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
  &lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"box static"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;Static&lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
  &lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"box relative"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;Relative (top: 10px)&lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
  &lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"box absolute"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;Absolute (top: 50px)&lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
  &lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"box fixed"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;Fixed (bottom: 10px)&lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
  &lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"box sticky"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;Sticky (top: 0)&lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight css"&gt;&lt;code&gt;&lt;span class="nc"&gt;.container&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nl"&gt;position&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;relative&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="c"&gt;/* Becomes the parent for absolute positioning */&lt;/span&gt;
  &lt;span class="nl"&gt;height&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;2000px&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="c"&gt;/* To see fixed and sticky effects */&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="nc"&gt;.box&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nl"&gt;padding&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;10px&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="nl"&gt;margin&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;10px&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="nl"&gt;border&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;1px&lt;/span&gt; &lt;span class="nb"&gt;solid&lt;/span&gt; &lt;span class="no"&gt;black&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="nc"&gt;.static&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nl"&gt;position&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;static&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="nc"&gt;.relative&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nl"&gt;position&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;relative&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="nl"&gt;top&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;10px&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="nl"&gt;left&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;20px&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="nc"&gt;.absolute&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nl"&gt;position&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;absolute&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="nl"&gt;top&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;50px&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="nl"&gt;right&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;0&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="nc"&gt;.fixed&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nl"&gt;position&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;fixed&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="nl"&gt;bottom&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;10px&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="nl"&gt;right&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;10px&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="nc"&gt;.sticky&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nl"&gt;position&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;sticky&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="nl"&gt;top&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;0&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;p&gt;Why this question is asked:&lt;br&gt;
Because mastering element positioning is essential for building any complex layout.&lt;/p&gt;




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

&lt;p&gt;Learning these fundamental concepts is essential not just for interviews, but for writing clean, maintainable code. Always ask "why" behind the concepts.&lt;/p&gt;

&lt;p&gt;Question for you: What's the most interesting interview question you've been asked that taught you something new? Share in the comments! 👇&lt;/p&gt;

</description>
      <category>frontend</category>
      <category>javascript</category>
      <category>react</category>
      <category>interview</category>
    </item>
    <item>
      <title>[Boost]</title>
      <dc:creator>Yalda Khoshpey </dc:creator>
      <pubDate>Tue, 07 Oct 2025 16:00:25 +0000</pubDate>
      <link>https://forem.com/yaldakhoshpey/-398m</link>
      <guid>https://forem.com/yaldakhoshpey/-398m</guid>
      <description>&lt;div class="ltag__link"&gt;
  &lt;a href="/yaldakhoshpey" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__pic"&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%2Fuser%2Fprofile_image%2F3258516%2F42f3d1f4-b795-45b9-8825-9291adb14668.jpg" alt="yaldakhoshpey"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="https://dev.to/yaldakhoshpey/the-ai-revolution-is-here-and-its-changing-everything-147g" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;🤖 The AI Revolution Is Here And It's Changing Everything&lt;/h2&gt;
      &lt;h3&gt;Yalda Khoshpey  ・ Oct 7 '25&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#programming&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#ai&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#discuss&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;


</description>
      <category>programming</category>
      <category>ai</category>
      <category>discuss</category>
    </item>
    <item>
      <title>🤖 The AI Revolution Is Here And It's Changing Everything</title>
      <dc:creator>Yalda Khoshpey </dc:creator>
      <pubDate>Tue, 07 Oct 2025 15:53:59 +0000</pubDate>
      <link>https://forem.com/yaldakhoshpey/the-ai-revolution-is-here-and-its-changing-everything-147g</link>
      <guid>https://forem.com/yaldakhoshpey/the-ai-revolution-is-here-and-its-changing-everything-147g</guid>
      <description>&lt;p&gt;I've been coding for years, but nothing prepared me for how AI would transform my daily workflow. Here's what I've learned:&lt;/p&gt;

&lt;p&gt;🔥 How AI Is Actually Helping Me Code Better&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;From Googling to "Prompt Engineering"&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;· Instead of searching for hours, I now have conversations with AI&lt;br&gt;
· But here's the catch: writing good prompts is the new superpower&lt;br&gt;
· The better my questions, the better the answers&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;AI as My 24/7 Pair Programmer&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;· Instant code reviews and suggestions&lt;br&gt;
· "What edge cases am I missing? - AI actually catches them!&lt;br&gt;
· Learning new frameworks in days instead of weeks&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;The Creativity Multiplier&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;· "Show me 5 different ways to implement this feature"&lt;br&gt;
· "Optimize this algorithm for better performance"&lt;br&gt;
· AI doesn't replace my creativity - it amplifies it&lt;/p&gt;

&lt;p&gt;⚠️ The Dark Side Nobody Talks About&lt;/p&gt;

&lt;p&gt;The Copy-Paste Trap&lt;br&gt;
I've seen developers blindly copy AI code without understanding it.This is dangerous because:&lt;/p&gt;

&lt;p&gt;· You stop learning the "why" behind solutions&lt;br&gt;
· Security vulnerabilities get copied without scrutiny&lt;br&gt;
· When things break, you have no idea how to fix them&lt;/p&gt;

&lt;p&gt;The Skill Erosion Risk&lt;br&gt;
If we let AI do all the heavy lifting,are we still growing as engineers?&lt;/p&gt;




&lt;p&gt;🚀 Here's How I'm Staying Relevant&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Focus on Architecture, Not Implementation&lt;br&gt;
AI writes great functions,but it can't design your entire system (yet!)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Master the Art of Code Review&lt;br&gt;
Now more than ever,we need to critically evaluate AI-generated code&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Double Down on Soft Skills&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;· Understanding business requirements&lt;br&gt;
· Communicating with stakeholders&lt;br&gt;
· Mentoring junior developers&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Become an AI Whisperer
Learning to guide,correct, and collaborate with AI tools&lt;/li&gt;
&lt;/ol&gt;




&lt;p&gt;💭 The Big Question&lt;/p&gt;

&lt;p&gt;Are we becoming AI managers instead of coders? And is that a bad thing?&lt;/p&gt;

&lt;p&gt;I'd love to hear your experience:&lt;/p&gt;

&lt;p&gt;· How has AI changed YOUR coding workflow?&lt;br&gt;
· Are you worried or excited about the future?&lt;br&gt;
· What skills are you focusing on now?&lt;/p&gt;

&lt;p&gt;Let's have an honest conversation about where our profession is heading! 👇&lt;/p&gt;

</description>
      <category>programming</category>
      <category>ai</category>
      <category>discuss</category>
    </item>
    <item>
      <title>Overcoming Challenges in Building an Interactive Web Project ❤️‍🔥</title>
      <dc:creator>Yalda Khoshpey </dc:creator>
      <pubDate>Thu, 02 Oct 2025 10:36:36 +0000</pubDate>
      <link>https://forem.com/yaldakhoshpey/overcoming-challenges-in-building-an-interactive-web-project-ed7</link>
      <guid>https://forem.com/yaldakhoshpey/overcoming-challenges-in-building-an-interactive-web-project-ed7</guid>
      <description>&lt;p&gt;Hey dev community! 👋&lt;br&gt;
I’ve been diving into an exciting web project, and while I won’t spoil the details just yet, I wanted to share some of the technical challenges I faced and the lessons I learned while tackling them. It’s been a journey of debugging, optimizing, and learning! ⭐&lt;br&gt;
Challenges I Encountered:&lt;br&gt;
Responsive Design for Complex Layouts: Adapting a visually intricate layout to work seamlessly on mobile devices was tough. I needed to simplify the design for smaller screens without losing the core experience.&lt;br&gt;
Performance Bottlenecks: Heavy animations and large assets caused lag, especially on lower-end devices, which impacted the smoothness of the user experience.&lt;br&gt;
Cross-Device Interactions: Ensuring consistent click and touch interactions across desktop and mobile was tricky, especially for dynamic elements that needed to feel intuitive.&lt;br&gt;
How I Addressed Them:&lt;br&gt;
Responsive Design: I used CSS Media Queries to streamline the layout for mobile. For example, I disabled resource-heavy effects and adjusted positioning for smaller screens:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;@media (max-width: 500px) {
    .container {
        transform: none !important;
        position: relative;
    }
    .heavy-effect {
        display: none;
    }
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Performance Optimization: To boost performance, I compressed assets using tools like TinyPNG and throttled event listeners to reduce CPU usage. Here’s an example of throttling a mousemove event:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;let lastFrame = 0;
document.addEventListener('mousemove', (e) =&amp;gt; {
    const now = performance.now();
    if (now - lastFrame &amp;lt; 16) return;
    lastFrame = now;
    // Update logic
});
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Unified Interactions: I used jQuery to manage events consistently across devices, preventing duplicate bindings and ensuring smooth interactions:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$('.interactive-element').off('click touchstart').on('click touchstart', (e) =&amp;gt; {
    e.preventDefault();
    // Handle interaction
});
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;What’s Next?&lt;br&gt;
I’m still refining the project, focusing on smoother performance and a polished mobile experience. These challenges have taught me to prioritize optimization and cross-device testing early on.&lt;br&gt;
Have you faced similar hurdles in your projects? Any tips or tricks you’d recommend? Drop them in the comments—I’d love to hear your thoughts! 😍&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>frontend</category>
      <category>challenge</category>
      <category>css</category>
    </item>
    <item>
      <title>Let’s Talk About Our Struggles in Learning and Building Confidence😉</title>
      <dc:creator>Yalda Khoshpey </dc:creator>
      <pubDate>Wed, 24 Sep 2025 14:31:09 +0000</pubDate>
      <link>https://forem.com/yaldakhoshpey/lets-talk-about-our-struggles-in-learning-and-building-confidence-2i4k</link>
      <guid>https://forem.com/yaldakhoshpey/lets-talk-about-our-struggles-in-learning-and-building-confidence-2i4k</guid>
      <description>&lt;p&gt;When we start learning something new — coding, writing, design, or any creative craft — it’s rarely smooth.&lt;br&gt;
For me, one of the hardest moments was dealing with other people’s opinions.&lt;br&gt;
I used to worry about what others might think of my work… until I realized something powerful: I am enough as I am. No one is perfect, and no one has to be.&lt;br&gt;
That shift helped me stop chasing perfection and finally start.&lt;br&gt;
💭 Think about it:&lt;br&gt;
What was your worst memory during your learning journey?&lt;br&gt;
What fears stopped you from starting?&lt;br&gt;
How did you eventually build the confidence to take the first real step?&lt;br&gt;
How do you fight the voice of perfectionism that whispers: “It’s not good enough yet”?&lt;br&gt;
And beyond that — what are your dreams? What do you hope changes in our community, in our industry, or in the way we support each other?&lt;br&gt;
✨ I believe talking openly about these struggles can inspire others who are just starting out.&lt;br&gt;
If you share your story, you might be giving someone else the push they need today.&lt;br&gt;
I’d love to hear your experiences in the comments.&lt;br&gt;
Let’s make this space not only about skills and tools, but also about courage, resilience, and growth.💖&lt;/p&gt;

</description>
      <category>learning</category>
      <category>community</category>
      <category>career</category>
    </item>
  </channel>
</rss>
