Skip to main content

Internet Pong Game

Here's a program I wrote earlier this year in July. It's a two-player pong game that involves communicating over the internet using Firebase. As I wrote this program, I also wrote a JavaScript library to take care of graphics and data communication over the internet. The library took the most work; the pong program just required some math and some creativity to help solve the problems I ran into... such as how the two computers would figure out who gets the top paddle and who gets the bottom paddle.

To play the game, you'll need to send the URL to one of your friends (otherwise you won't have an opponent). Move your paddle (the white one) using the arrow keys, and click "Reset" to start over. The ball will bounce to the left or to the right depending on where it hits the paddle – you can use this to your advantage. And forgive the glitches; the computers are communicating over the internet, so it's not going to be perfect.

Have fun!


New posts every month - subscribe for free!

Comments

Popular posts from this blog

Gravity

Imagine the universe is filled with water. Instead of empty space, every inch of it contains pure water. No planets, no stars, only water. What happens? And what would happen if an air bubble formed? The answer to this question requires a basic understanding of gravity. Gravity is very important. It helps hold matter together, bends light, and distorts space-time (which, incidentally, is how it bends light). It also makes it possible to play football, and as Americans are big football fans, they would certainly agree that we couldn't live without it. Unfortunately, many Americans don't understand how gravity works. Admittedly, scientists haven't figured out a lot of things, but we do understand it well enough to make predictions and model physical events. One of the important things about gravity is that its strength is proportional to the inverse of the square of the distance. In other words, it gets weaker as you get farther away, based on the equation: F = c/d 2 where c ...

Dividing Paper Puzzle

When I was young, I would fold a sheet of letter paper in half, for origami projects. It occurred to me that the two halves looked almost the same as the whole sheet of paper - except they were smaller. I could see they weren't exactly the same shape; they were off by a little bit. But the idea stuck in my head. You can use a pen, instead of scissors, to halve the paper. Those rectangles all have the same shape, but are different sizes. One night when I was 12, I thought about my idea. I wondered if it was possible to have a sheet of paper that could be cut in half, resulting in 2 smaller versions of the same paper. That would be neat, to be able to cut a paper in half and get 2 papers that had the same exact shape. If that were possible, then you could cut  those  papers, too; and the resulting papers would have the same shape as all the other papers. You could keep cutting in half forever, and each paper, no matter how small, would have the same shape as all the ot...

Major Change of Ideas

Edit: April Fool's. The article completely fails to answer for the benefits of math and science (including medicine and natural disaster prediction). It grossly exaggerates the negative aspects of math and science. Incidentally, math and science have made a large positive difference in my life. Good morning, everybody! I decided to write a blog post to say that I will be completely changing the way I view knowledge and the purpose of life. Photo credit: my sister Basically, "higher" knowledge (including logic, science, mathematics, etc.) is completely useless. There is no point in learning these subjects, which is why I have dropped all my college classes and will not be going to school today. Instead, we should go to the fields, with a shovel and a rake, and grow crops. I will therefore end my blog and begin life as a worker at a ranch in Wyoming. Why this sudden change, you might ask? A few days after my last post (which nobody seemed to read), I came upon a realizatio...