<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Diya Nagdev</title>
    <description>The latest articles on DEV Community by Diya Nagdev (@diya_nagdev).</description>
    <link>https://dev.to/diya_nagdev</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4092540%2F30a50024-69c1-4435-a3dc-34f31fb1ee1a.png</url>
      <title>DEV Community: Diya Nagdev</title>
      <link>https://dev.to/diya_nagdev</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/diya_nagdev"/>
    <language>en</language>
    <item>
      <title>What I Learnt Building UrbanLease (Draft 1)</title>
      <dc:creator>Diya Nagdev</dc:creator>
      <pubDate>Mon, 24 Aug 2026 19:19:20 +0000</pubDate>
      <link>https://dev.to/diya_nagdev/what-i-learnt-building-urbanlease-draft-1-622</link>
      <guid>https://dev.to/diya_nagdev/what-i-learnt-building-urbanlease-draft-1-622</guid>
      <description>&lt;p&gt;When I started building UrbanLease, I had a pretty straightforward idea in mind- a website where people could rent appliances instead of buying them. I wanted users to be able to browse appliances, check prices, choose a rental duration and place a rental request. I also added things like rent vs. buy comparison, rental history, payments and separate user/vendor portals.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;A few things I had to fix first:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;One of the first technical changes I made was moving from SQLite to MySQL. SQLite was fine when I was just testing the basic version, but as I started adding more users, rental-related data and different parts of the system, I wanted a proper database setup that I could work with more comfortably.&lt;/p&gt;

&lt;p&gt;The migration itself wasn't as simple as changing one line. I had to make sure the existing tables, columns and relationships were working correctly, and I also had to fix some issues caused by the difference between the two databases. And some other tech issues.&lt;br&gt;
But those weren't the biggest problem.&lt;/p&gt;

&lt;p&gt;At first, I was actually happy with how it was coming together. The website worked, the pages were connected, and I had a proper backend behind it. But after using it for a while, I started feeling that something was missing.&lt;/p&gt;

&lt;p&gt;The problem wasn't that the website didn't work. It was that the idea wasn't different enough. If I removed the name UrbanLease, it could easily look like another appliance rental website. I wanted to build something where the features actually solved problems instead of just adding more pages.&lt;/p&gt;

&lt;p&gt;That's when I decided to work on two features that weren't part of my original idea:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Smart Appliance Recommendation&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Instead of making users scroll through a list of products and figure everything out themselves, I wanted the website to help them choose.&lt;/p&gt;

&lt;p&gt;So I built a chatbot-like rule-based recommendation system. The user can give inputs such as:&lt;/p&gt;

&lt;p&gt;Their preferred Budget, Rental duration, Appliance type, electricity usage etc. The system then filters the available appliances and ranks them according to the user's requirements.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Appliance Condition History&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The second feature came from another question I had: "If I'm renting a used appliance, how do I know what I'm actually getting?"&lt;/p&gt;

&lt;p&gt;So I started working on an appliance history system where information such as previous rentals, maintenance records, service history and things like AC gas changes can be shown.&lt;/p&gt;

&lt;p&gt;This makes the product more than just a name, price and picture. The idea is to give the renter some idea of the appliance's actual history before choosing it.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What I learned while building it-&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The biggest thing I learned from UrbanLease is that getting a website to work is only one part of building a project.&lt;/p&gt;

&lt;p&gt;I spent a lot of time fixing things that I never thought about when I started. Sometimes I would change the database structure and then have to update the backend. Sometimes a backend change would break something on the frontend. And sometimes the problem was something as small as a wrong column name.&lt;/p&gt;

&lt;p&gt;I also realised that adding features just for the sake of having more features doesn't really improve a project. I had to first understand what was missing and then build something around it.&lt;/p&gt;

&lt;p&gt;There are still things I want to improve. I would like to make the recommendation system more personalised, improve the appliance history, and eventually explore technologies that can make the recommendations smarter. I haven't figured out all of that yet, so this is just the first draft of UrbanLease so far.&lt;/p&gt;

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