DEV Community

Md Mijanur Molla
Md Mijanur Molla

Posted on

# I Created a “Typing Indicator” Challenge… And It Showed Users Typing Forever 👻

You’ve seen this before.

Someone is typing…

You wait…

Nothing comes.

Still typing…

Still waiting…

👉 And it never stops.

This is called a ghost typing bug.

So I created a challenge on VibeCode Arena to test how systems handle this.

And honestly… most solutions failed in interesting ways.


🚨 The Problem

At first glance, the logic looks simple:

  • User starts typing → mark as typing
  • User stops typing → remove from list
  • Show active typing users

Seems correct.

But real-world systems don’t behave perfectly.

⚠️ What Can Go Wrong?

In real applications:

• User closes app without sending “stop typing”

• Network delay causes events to arrive late

• “Stop typing” event is never received

• System keeps stale data

And suddenly:

👉 User appears as typing forever

👉 UI becomes confusing

👉 Experience feels broken


🧠 What I Observed

When AI models tried this challenge:

  • Some handled start/stop logic
  • Many ignored missing events
  • Some didn’t handle timeouts
  • Very few handled real-time inconsistencies

The code works.

But the system feels wrong.


🔍 The Real Issue

This is not just about state.

It’s about real-time reliability.

Because:

👉 Events can be lost

👉 Timing is unpredictable

👉 Systems must recover automatically


💡 What a Better System Needs

A proper typing system should:

  • Add automatic timeout (e.g., 3–5 seconds)
  • Handle missing “stop typing” events
  • Refresh state periodically
  • Use real-time communication (WebSockets)
  • Prevent stale indicators

This ensures:

👉 No ghost typing

👉 Clean user experience


🔥 Try My Challenge

I created this challenge to test real-time system thinking.

👉 Try it here:
https://vibecodearena.ai/duel/8e38434c-d1cc-4d98-b1a3-ea9677348050/42915701-2dec-48cd-bc76-cef4ca7bf26d

Can you:

  • Remove ghost typing?
  • Handle missing events?
  • Build a reliable real-time system?

🎯 Final Thought

Typing indicators are not about showing activity.

They’re about showing correct activity.

Because in real-time systems…

👉 Even small delays can create big problems.


Try it and tell me 👇

Did AI fix ghost typing… or leave users typing forever? 👀

Top comments (0)