<?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: Charles Wang</title>
    <description>The latest articles on DEV Community by Charles Wang (@charles_wang888).</description>
    <link>https://dev.to/charles_wang888</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%2F4166509%2F58d51852-4f92-4f8f-888a-9dcd0aec0350.png</url>
      <title>DEV Community: Charles Wang</title>
      <link>https://dev.to/charles_wang888</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/charles_wang888"/>
    <language>en</language>
    <item>
      <title>The Hotel Pricing Mistake That Quietly Costs You a Fortune</title>
      <dc:creator>Charles Wang</dc:creator>
      <pubDate>Fri, 09 Oct 2026 09:15:58 +0000</pubDate>
      <link>https://dev.to/charles_wang888/the-hotel-pricing-mistake-that-quietly-costs-you-a-fortune-22de</link>
      <guid>https://dev.to/charles_wang888/the-hotel-pricing-mistake-that-quietly-costs-you-a-fortune-22de</guid>
      <description>&lt;p&gt;Most hotels treat pricing as a math problem. Load last year's data, run a model, push a number live. Done.&lt;/p&gt;

&lt;p&gt;Occupancy looks fine. Profit quietly bleeds.&lt;/p&gt;

&lt;p&gt;Pricing isn't one number. It's four conversations happening at the same time.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;With time&lt;/strong&gt;. Last year happened — same property, same week, twelve months ago. If you were 92% last Labor Day weekend, you already know what this Labor Day is going to do. Holiday demand is inelastic. Don't test discount. Most days rhyme with last year. Price off the rhyme.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;With competitors&lt;/strong&gt;. You're pricing against 10 to 15 hotels watching the same signals. Watch them — but don't copy them. Watch the comp set as a band, not a single dot. The leader drops 30% on a soft Tuesday? Let them bleed. You don't need to bleed with them.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;With your own inventory&lt;/strong&gt;. At 7 days out, less than 30% sold? Hold. The market hasn't decided. At 3 days out, still under 30%? Drop meaningfully, or accept you'll undersell. Half-measures don't move a Tuesday in February. And 7 days out, only 20% left? Opposite — scarcity. Don't drop. Raise. You were already selling too cheap.&lt;/p&gt;

&lt;p&gt;Hotels panic too early. They drop at day 14, demand doesn't come, and they're still discounting through arrival. By the time check-in hits, you've trained the customer to wait.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;With the channels&lt;/strong&gt;. Same room, different buyers, different doors. Some price-sensitive and comparison-driven. Some business-intent, loyalty-driven. Some impulse, 90-second decisions. They behave nothing like each other. Flash promotions without a hard use-by node just generate bookings that never show up. Your direct channel needs a reason, not a matching number. Treat each channel as a different conversation, and pricing stops being a single number and starts being a portfolio.&lt;/p&gt;

&lt;p&gt;And then there's the floor.&lt;/p&gt;

&lt;p&gt;When a guest sees your hotel at ¥299 on a Saturday, that number gets locked into their head. Three months later you push to ¥899 and they think: &lt;em&gt;wait, I just stayed there for ¥299.&lt;/em&gt; They book somewhere else for ¥799 instead.&lt;/p&gt;

&lt;p&gt;You can't un-anchor a price. Once a guest learns your room is worth ¥299, that's their reference point forever.&lt;/p&gt;

&lt;p&gt;Three rules hold the floor: never go below last year's same-period lowest. Never run a flash promotion longer than 48 hours. Never let direct headline above what third-party channels show. Break any of these and the engine becomes a discount machine.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>hotel</category>
    </item>
    <item>
      <title>Building an AI-Native Hotel PMS for Southeast Asia Boutique Hotels</title>
      <dc:creator>Charles Wang</dc:creator>
      <pubDate>Wed, 07 Oct 2026 13:43:49 +0000</pubDate>
      <link>https://dev.to/charles_wang888/building-an-ai-native-hotel-pms-for-southeast-asia-boutique-hotels-3hfl</link>
      <guid>https://dev.to/charles_wang888/building-an-ai-native-hotel-pms-for-southeast-asia-boutique-hotels-3hfl</guid>
      <description>&lt;p&gt;Last year I sat in a 38-room hotel in Chiang Mai at 23:40.&lt;/p&gt;

&lt;p&gt;Night audit was three Excel tabs, an OTA export, and a front-desk kid who also answered LINE. The “proper” PMS demo from a vendor had taken forty minutes and still couldn’t answer: &lt;em&gt;where did Tuesday’s cash float go?&lt;/em&gt; Their AI slide deck had a chatbot. The chatbot had never seen a folio.&lt;/p&gt;

&lt;p&gt;That night stuck. Boutique hotels in Southeast Asia don’t fail because they lack software. They drown in &lt;em&gt;almost&lt;/em&gt; software—channel tools, sheets, chat apps, and a cloud PMS priced like they run a chain HQ.&lt;/p&gt;

&lt;p&gt;So we built the boring middle thing. Then we open-sourced it.&lt;/p&gt;

&lt;p&gt;👉 &lt;strong&gt;&lt;a href="https://github.com/sensepraxis/fangmanle-ai-native-pms" rel="noopener noreferrer"&gt;Fangmanle PMS on GitHub&lt;/a&gt;&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
🎮 &lt;strong&gt;&lt;a href="https://pms.sensepraxis.com/" rel="noopener noreferrer"&gt;Click around the demo&lt;/a&gt;&lt;/strong&gt; — &lt;code&gt;admin&lt;/code&gt; / &lt;code&gt;admin123&lt;/code&gt;&lt;/p&gt;


&lt;h2&gt;
  
  
  The shape of the mess
&lt;/h2&gt;

&lt;p&gt;If you’ve hung around independents in SG / TH / ID / VN, you’ve seen the pattern:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Booking.com pays the bills
&lt;/li&gt;
&lt;li&gt;WhatsApp / LINE / WeCom is where the &lt;em&gt;good&lt;/em&gt; guests actually live
&lt;/li&gt;
&lt;li&gt;Shift handover is sacred and still written on paper
&lt;/li&gt;
&lt;li&gt;“AI insights” is a separate login that doesn’t know your rooms are dirty
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Nobody wants another multi-tenant SaaS with a six-month onboarding. They want &lt;strong&gt;this building’s&lt;/strong&gt; rooms, rates, and night float to stop lying to each other.&lt;/p&gt;
&lt;h2&gt;
  
  
  Steal this
&lt;/h2&gt;


&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;git clone https://github.com/sensepraxis/fangmanle-ai-native-pms
&lt;span class="nb"&gt;cd &lt;/span&gt;fangmanle-ai-native-pms
bash deploy/dev/start.sh demo-sg
&lt;span class="c"&gt;# → http://127.0.0.1:8081/  admin / admin123&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;Or the seed stack with Postgres:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;docker compose &lt;span class="nt"&gt;-f&lt;/span&gt; deploy/docker/docker-compose.seed.yml up &lt;span class="nt"&gt;-d&lt;/span&gt; &lt;span class="nt"&gt;--build&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Star it if the night-audit story felt familiar. Open an issue if you break it on a real property—that feedback beats any roadmap PDF.&lt;/p&gt;

&lt;p&gt;Repo again, so you don’t scroll up:&lt;br&gt;&lt;br&gt;
&lt;strong&gt;&lt;a href="https://github.com/sensepraxis/fangmanle-ai-native-pms" rel="noopener noreferrer"&gt;https://github.com/sensepraxis/fangmanle-ai-native-pms&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Docs if you like reading: &lt;a href="https://sensepraxis.github.io/fangmanle-ai-native-pms/" rel="noopener noreferrer"&gt;sensepraxis.github.io/fangmanle-ai-native-pms&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fph-files.imgix.net%2Fa73c3197-4d89-49c2-80cf-c17e9193a41e.png%3Fauto%3Dcompress%2Cformat%26codec%3Dmozjpeg%26cs%3Dstrip%26fit%3Dcrop%26h%3D80%26w%3D80" class="article-body-image-wrapper"&gt;&lt;img alt="Fangmanle — AI Native Hotel PMS" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fph-files.imgix.net%2Fa73c3197-4d89-49c2-80cf-c17e9193a41e.png%3Fauto%3Dcompress%2Cformat%26codec%3Dmozjpeg%26cs%3Dstrip%26fit%3Dcrop%26h%3D80%26w%3D80" width="80" height="80"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;Fangmanle — AI Native Hotel PMS&lt;/h3&gt;
&lt;p&gt;Self-hosted AI-native hotel PMS for boutique hotels&lt;/p&gt;
&lt;a href="https://www.producthunt.com/products/fangmanle-ai-native-hotel-pms?embed=true&amp;amp;utm_source=embed&amp;amp;utm_medium=post_embed" rel="noopener noreferrer"&gt;Check it out on Product Hunt →&lt;/a&gt;

</description>
      <category>ai</category>
      <category>opensource</category>
      <category>hospitality</category>
      <category>fastapi</category>
    </item>
  </channel>
</rss>
