Coding Challenge #36 - Pong

Coding Challenge #36 - Pong

For as long as I have been interested in programming, programmers have been learning by building computer games. Many of us start with Pong and over time progress to either copying other more complex games, building our own from scratch or customising existing games.

I certainly spent a lot of my childhood cloning Sensible Soccer and Alien Breed before moving on to writing ‘AI’ based bots for Quake, Quake 2 and Quake 4.

A first step on the journey however is to build a simple game like Pong.


Ad: Jordan Cutler reached senior software engineer in just two years, now he’s teaching you how to do it too on his course Mid-level to Senior for high-growth engineers.


The Challenge - Building Pong

If somehow you’ve never heard of Pong, it is a table tennis-themed game that Atari originally released in 1972. It was apparently the first commercially successful computer game and a key part of establishing the computer gaming industry.

It has simple graphics, with each player controlling a paddle and a ball that bounces across the screen between the players. If a player misses the ball, a point is scored against them.

An early photo of Pong - the computer gaming scene looked a bit different back then!

Step Zero

In this step you decide which programming language and development environment you’re going to use. This would be a great project to try a frontend stack if you’re a backend developer and vice versa.

If you’re from a data engineering or site-reliability engineering background you could leverage your knowledge of Python with PyGame or Go with Ebitenegine. Rustaceans can check out are we game yet for useful crates. In short as Pong is relatively simple and as such, it’s a great platform for learning a new technology, or programming language.

Step 1

In this step your goal is to create program and draw the ‘table’, usually it’s quite a simple table with a vertical line down the middle. Something as simple as this will do:

An empty Pong 'table'

Continued...

You can find Step 2 and beyond on the?Coding Challenges?website as write your own Pong.


Or if you'd rather get the whole challenge delivered to you inbox every week, you can subscribe on the?Coding Challenges Substack.


When you’re ready, there are 4 ways I can help you:

  1. I write another FREE newsletter?Developing Skills?that helps you level up the other skills you need to be a great software developer.
  2. I have a course Become a Better Software Developer by Building Your Own Redis Server (Python Edition) which guides you through solving the Redis Coding Challenge in Python.
  3. I occasionally run a cohort based course:?Coding Challenges Live: Redis Edition!
  4. Promote your business to 60,000+ subscribers by sponsoring this newsletter.



Pothuraju Sri Ram

Senior Associate | VueJS | NuxtJS

1 年

Thanks for sharing, I will try previous challenges and then will make my own Pong??

Shailesh Singh

AI Engineer ( つ??ω??)つ

1 年

Thank you for the post. These little applications are perfect in my journey to Fullstack + DevOps. ??

Rhett North

Computer Science & IT Professional | ITIL | Full-Stack Web Developer | WGU BS in IT ??

1 年

Definitely checking this one out later down the line!

Sweta Upadhyay

SDE-I @Amazon | UX Design Specialization @Google | 18K+ @LinkedIn | B.Tech CSE'22 (Gold Medalist) | Milestone Achiever @GCR | Dean's List Awardee '21 | 1600+ @Leetcode

1 年

Wow, building a Pong game sounds like a fun challenge! I've been following your coding challenges for a while now, John, and they have really helped me level up my skills. Can't wait to give this one a try! Thanks for sharing.

要查看或添加评论,请登录

John Crickett的更多文章

  • Coding Challenge #86 - Strace

    Coding Challenge #86 - Strace

    This challenge is to build your own version of Linux tool strace. It’s a useful tool to debug programs that you don’t…

    8 条评论
  • From The Challenges - Memcached Server

    From The Challenges - Memcached Server

    ?? ?? Happy Birthday Coding Challenges - Two Years Old! ?? ?? Coding Challenges is turning two this week! To celebrate…

    13 条评论
  • Coding Challenge #85 - Time Zone Converter

    Coding Challenge #85 - Time Zone Converter

    Coding Challenge #85 - Time Zone Converter This challenge is to build your own Time Zone Converter. That is a tool to…

    12 条评论
  • From The Challenges - IRC Client

    From The Challenges - IRC Client

    Welcome To Coding Challenges - From The Challenges! In this Coding Challenges “from the challenges” newsletter I’m…

    5 条评论
  • Coding Challenge #84 - Mandelbrot Set Explorer

    Coding Challenge #84 - Mandelbrot Set Explorer

    This challenge is to build your own Mandelbrot set explorer. The Mandelbrot set is a set of fractals that exhibit great…

    4 条评论
  • From The Challenges - Cat

    From The Challenges - Cat

    Welcome To Coding Challenges - From The Challenges! In this Coding Challenges “from the challenges” newsletter I’m…

    7 条评论
  • Coding Challenge #83 - Markdown Presentation Tool

    Coding Challenge #83 - Markdown Presentation Tool

    Coding Challenge #83 - Markdown Presentation Tool This challenge is to build your own version of Go’s Present or…

    3 条评论
  • From The Challenges - Shell

    From The Challenges - Shell

    Welcome To Coding Challenges - From The Challenges! In this Coding Challenges “from the challenges” newsletter I’m…

    3 条评论
  • Coding Challenge #82 - Markdown To PDF Editor

    Coding Challenge #82 - Markdown To PDF Editor

    Coding Challenge #82 - Markdown To PDF Editor This challenge is to build your own tool to convert markdown to PDF. It…

    14 条评论
  • From The Challenges - Diff

    From The Challenges - Diff

    Welcome To Coding Challenges - From The Challenges! In this Coding Challenges “from the challenges” newsletter I’m…

    7 条评论

社区洞察

其他会员也浏览了