Introducing Pong - The Classic: A personal journey into mobile game development and local multiplayer
March 3, 2025
Introducing Pong - The Classic: A personal journey into mobile game development and local multiplayer

As a CTO, it’s easy to get consumed by leadership, strategy, and management responsibilities. However, I believe it’s critical to stay sharp with real-world, hands-on experience — not just to keep technical instincts alive, but also to better understand emerging platforms, user expectations, and technical challenges.

This mindset led me to embark on a personal project: Pong - The Classic, a mobile game built entirely in Swift for iOS. What started as a small experiment quickly evolved into a full-fledged game, combining nostalgia with modern technology — and tackling some interesting engineering problems along the way.

A timeless game

Pong - The Classic captures the simplicity and addictiveness of the original arcade game but adds thoughtful features tailored for today’s mobile users:

  • 🎮 1 vs 1 on the Same Screen
    Challenge a friend by sitting face-to-face and sharing the same device. Perfect for a quick game at a café, on a plane, or during a break.
  • 🤖 1 vs Computer
    Practice your reflexes against a simple AI opponent. Great for honing your skills when no one else is around.
  • 📡 Local Multiplayer via Bluetooth
    Play against friends without needing any internet connection! Using MultipeerConnectivity, players nearby can instantly connect over Bluetooth or Wi-Fi Direct, making it easy to start a match anytime, anywhere.

Technical highlights: Solving local multiplayer latency

One of the goals of this project was to dive deep into local multiplayer mechanics, especially under unreliable network conditions such as weak Bluetooth links. Instead of relying solely on constant state synchronization, I implemented a prediction algorithm:

  • 🏓 The game estimates the ball’s trajectory between updates.
  • 🔮 This prediction keeps the ball moving smoothly on both the host and client screens, even if packets are delayed or dropped momentarily.
  • ⚡ The result: A fluid gameplay experience that feels responsive and fair, despite the natural latencies inherent in wireless communication.

This experimentation with synchronization prediction opened the door to techniques commonly used in competitive real-time games — and served as an exciting personal learning journey.

Why this matters

While this project was a technical exercise, it’s also a reminder that building simple things well is a craft.

  • Getting latency right.
  • Designing intuitive multiplayer flows.
  • Keeping gameplay fast, fun, and fair.

It was an opportunity to get back to basics, sharpen my Swift skills, and test creative ways to solve engineering challenges — exactly what I encourage teams and developers to keep doing throughout their careers.

If you have an iPhone and a friend nearby, I invite you to download Pong – The Classic

Future-proof your business digital transformation?
Home Image
Home Image
Home Image
Home Image