<?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: kelsey-d</title>
    <description>The latest articles on Forem by kelsey-d (@kelsey-d).</description>
    <link>https://forem.com/kelsey-d</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%2F1279997%2F235e0eae-7881-47f8-83ce-d1b52795082e.jpg</url>
      <title>Forem: kelsey-d</title>
      <link>https://forem.com/kelsey-d</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/kelsey-d"/>
    <language>en</language>
    <item>
      <title>It's Nightmare on ElmStreet and Guess who's playing Freddie</title>
      <dc:creator>kelsey-d</dc:creator>
      <pubDate>Sun, 09 Nov 2025 17:59:42 +0000</pubDate>
      <link>https://forem.com/kelsey-d/its-nightmare-on-elmstreet-and-guess-whos-playing-jason-590c</link>
      <guid>https://forem.com/kelsey-d/its-nightmare-on-elmstreet-and-guess-whos-playing-jason-590c</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for &lt;a href="https://dev.to/challenges/frontend-2025-10-15"&gt;Frontend Challenge - Halloween Edition, Perfect Landing&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What I Built
&lt;/h2&gt;

&lt;p&gt;Earlier this year I went through the harrowing experience of purchasing a home for the first time. I'd browse Zillow for hours at a time any time searching for homes that would fit my criteria. I still find myself opening up the site out of habit, even after the fact. &lt;/p&gt;

&lt;p&gt;That chokehold inspired me to make a real estate landing page. I think the housing market is scary enough but to really sell the Halloween theme it's specifically for haunted estates.&lt;/p&gt;

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

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5wmcdredijzd4ojr7115.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%2F5wmcdredijzd4ojr7115.png" alt="Screen grab of ElmStreet landing page" width="800" height="439"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://elm-street.vercel.app/" rel="noopener noreferrer"&gt;⚡ ElmStreet Live Demo ⚡&lt;/a&gt;&lt;/p&gt;

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

&lt;p&gt;My process began in FigJam where I quickly doodled the UI. Since there was a deadline and I tried to go for some of the first ideas I came up with.&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%2Frkjwrqq5u1ppuknk30ib.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%2Frkjwrqq5u1ppuknk30ib.png" alt="FigJam doodles" width="800" height="555"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Then I moved into a Figma Design file to create the high fidelity mock-up in both desktop and mobile screens. &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%2Fysydqf80qhk5t0nce5iu.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%2Fysydqf80qhk5t0nce5iu.png" alt="High fidelity Figma design" width="800" height="939"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Next I dropped the design into Figma Make to generate some code. I find that Make is not to good with overlapping elements but it was a huge help in discovering improvements in positioning.&lt;/p&gt;

&lt;p&gt;Lastly I moved the coding to Nextjs. I ended up using only the dot navigation directly from the Make code which was a bummer because my intention was to to have the components 99% of the way done with Make. Next time I'll spend more time in Figma to create a component library. &lt;/p&gt;

&lt;p&gt;Additional use of AI was generating the house images with Google Gemini and debugging/polishing with Copilot. Two of the images were houses from a YouTube video entitled &lt;a href="https://youtu.be/ceuOzKJlYjc?si=hMi0fhGfRmp9L0_O" rel="noopener noreferrer"&gt;Mansions No One Wants to Buy at any Price&lt;/a&gt;. &lt;/p&gt;

&lt;h3&gt;
  
  
  What I learned
&lt;/h3&gt;

&lt;p&gt;I had no clue prior to working on this that there was an HTML &lt;code&gt;&amp;lt;dialog&amp;gt;&lt;/code&gt; tag. Using semantic HTML solves a good number of accessibility issues so I always strive to use proper tags but for dialogs I'd been writing additional code to manage focus. The dialog tag handles that out of the box, saving lines of code. &lt;/p&gt;

&lt;h3&gt;
  
  
  What's next?
&lt;/h3&gt;

&lt;p&gt;A quick improvement would be enhancing the quality of the images, and the auto navigating through the featured houses. In terms of functionality I would implement proper search features and a database of haunted houses to pull from.&lt;/p&gt;

&lt;h2&gt;
  
  
  Thank you!
&lt;/h2&gt;

&lt;p&gt;Feel free to &lt;a href="https://github.com/kelsey-d/elm-street" rel="noopener noreferrer"&gt;check out the code on Github&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>frontendchallenge</category>
      <category>webdev</category>
      <category>javascript</category>
    </item>
    <item>
      <title>Let i =</title>
      <dc:creator>kelsey-d</dc:creator>
      <pubDate>Sun, 02 Feb 2025 08:11:19 +0000</pubDate>
      <link>https://forem.com/kelsey-d/let-i--3jc7</link>
      <guid>https://forem.com/kelsey-d/let-i--3jc7</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/newyear"&gt;2025 New Year Writing challenge&lt;/a&gt;: Retro’ing and Debugging 2024.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Towards the end of 2023, my department underwent a sudden change in management. I expected a journey in professional growth. Instead, what ensued throughout 2024 were relentless battles with identity, isolation, and indetermination.&lt;/p&gt;

&lt;h2&gt;
  
  
  Indetermination - being uncertain or undecided
&lt;/h2&gt;

&lt;p&gt;Management changes are common in many careers. Sometimes you can see them on the horizon and sometimes they come as a complete surprise. &lt;/p&gt;

&lt;p&gt;I had barely reached my first year. A year in gives you a pretty good lay of the land even if there are still many unknowns. I was certain of our operations and how my job function fit within them...and then I wasn't. I asked numerous questions, scrambling to find the path forward. &lt;/p&gt;

&lt;p&gt;No matter how many questions I asked, I would never get the answer I was searching for.&lt;/p&gt;

&lt;p&gt;There is no such thing as a predeterminate path. Paths are created when I decide to build them.&lt;/p&gt;

&lt;p&gt;I started with what I knew, refined my questions and grew my knowledge. With each new discovery, I found myself building a path forward. &lt;/p&gt;

&lt;h2&gt;
  
  
  Isolation - being or feeling alone or apart from others
&lt;/h2&gt;

&lt;p&gt;Amidst the management change, the department gained new members but also lost long-term ones. Not only had the nature of the work changed but also the team dynamic. &lt;/p&gt;

&lt;p&gt;Isolation isn't always about being physically alone. I enjoy time alone and can work independently for long durations. Isolation also happens when there is a disconnect from those around you. &lt;/p&gt;

&lt;p&gt;Challenges at work are plentiful. A supportive environment can help overcome them with minimal stress. Yet, I struggled to find support within my changing department.&lt;/p&gt;

&lt;p&gt;There is no shame in tapping into other networks of support. I joined online communities with people in similar professions and attended networking events where I met others with similar challenges and goals.&lt;/p&gt;

&lt;p&gt;Outside support helped me ease the isolation and discover ways to connect back with my environment and the people in it. &lt;/p&gt;

&lt;h2&gt;
  
  
  Identity - being who you are
&lt;/h2&gt;

&lt;p&gt;Along with a solid support system, a strong sense of identity can help overcome a myriad of challenges. At the same time challenges can drastically shape who we are. &lt;/p&gt;

&lt;p&gt;Naturally, there were adjustments made to adapt to my evolving work environment. It was the expected professional development like brushing up on technical skills. &lt;/p&gt;

&lt;p&gt;Then there were the unexpected developments, such as the aforementioned indetermination and isolation, followed by the subtle loss of identity.&lt;/p&gt;

&lt;p&gt;In hindsight, I see how blind I was to and by my hyper fixation on workplace performance. I thought I needed to be a certain type of person to succeed and became the type of person who believed success is contingent on perfection. &lt;/p&gt;

&lt;p&gt;My challenge was never the change in management. It was the internal changes within me. I never struggled with perfectionism before, so why now? I never cared for salaries and titles so why do I feel awful about my own? I thought I loved design and coding. Why can't I seem to enjoy them now?&lt;/p&gt;

&lt;p&gt;Sometimes you can see these things on the horizon. Change is the only constant after all. How else would I grow and achieve my goals? &lt;/p&gt;

&lt;p&gt;Sometimes, though, they come as a complete surprise, and you miss parts of who you used to be.&lt;/p&gt;

&lt;p&gt;Instead of coming face to face with those sentiments, I focused on my workplace changes and career growth. I assumed adaptability at work would resolve those sentiments, but it didn't.&lt;/p&gt;

&lt;h2&gt;
  
  
  Imperfection -
&lt;/h2&gt;

&lt;p&gt;Due to the management change, I learned a substantial amount in web development, collaboration and leadership. I'm better adjusted to my workplace and approaching greater understanding of the wider field I'm in. &lt;/p&gt;

&lt;p&gt;Going into the new year, I am still struggling with change in sentiments I cannot yet define. I don't plan on strategizing my way out of them though. I will let them be.&lt;/p&gt;

&lt;p&gt;I will allow myself to be unsure, unfit, and whatever other uncomfortable feeling out there. &lt;/p&gt;

&lt;p&gt;I will just be.&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>newyearchallenge</category>
      <category>career</category>
    </item>
    <item>
      <title>Can you find the error in this Nextjs code?</title>
      <dc:creator>kelsey-d</dc:creator>
      <pubDate>Sat, 21 Dec 2024 01:12:23 +0000</pubDate>
      <link>https://forem.com/kelsey-d/can-you-find-the-error-in-this-nextjs-code-249g</link>
      <guid>https://forem.com/kelsey-d/can-you-find-the-error-in-this-nextjs-code-249g</guid>
      <description>&lt;p&gt;Project Repo: &lt;a href="https://github.com/kelsey-d/savings-calculator" rel="noopener noreferrer"&gt;https://github.com/kelsey-d/savings-calculator&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I'm looking to enhance my understanding of React and Next.js through infamous beginner projects. &lt;/p&gt;

&lt;p&gt;This one is a simple calculator that when given a savings goal as a target date it returns the balance at that date or if given as a target balance it will return the date the balance is reached. &lt;/p&gt;

&lt;p&gt;It is a work in progress so please excuse its appearance. I will style it last. Right now I'm working on the logic. I am experiencing a bug. &lt;/p&gt;

&lt;p&gt;Since the calculator has two modes "date" and "balance", I want only the relevant inputs, "Target Month" and "Target Balance" respectively, to show based on the mode chosen.  &lt;/p&gt;

&lt;p&gt;By default the "Target Month" is shown but the user can use the &lt;strong&gt;DATE&lt;/strong&gt; and &lt;strong&gt;BALANCE&lt;/strong&gt; buttons above the input to toggle between the two. However, when &lt;strong&gt;BALANCE&lt;/strong&gt; is clicked the inputs are switched only momentarily before resetting back to "Target Month."&lt;/p&gt;

&lt;p&gt;Can you find the error?&lt;/p&gt;

&lt;p&gt;I can gather from the way I abused the useState hook it was a matter of time before something broke. It might be a re-render is resetting the state but I don't know which one.&lt;/p&gt;

&lt;p&gt;Any feedback is appreciated but I am looking for any explanation of the bug and tips on better organization of state, functions and components.&lt;/p&gt;

&lt;p&gt;Thank you! &lt;/p&gt;

</description>
      <category>webdev</category>
      <category>react</category>
      <category>nextjs</category>
      <category>beginners</category>
    </item>
  </channel>
</rss>
