November 05, 2024

Development time for programming a video game

 

Comparing programming languages is traditional measured in machine performance. The overall question is how small the binary file is, how fast its run on hardware. Sometimes, its asked how well the source code looks, but this depends on individual preferences.
A more practical approach is to compare how long it takes to program the same software in different languages. A rough estimation for coding a pong like videogame including graphics is:
  • Assembly language, 14 days
  • Forth language, 7 days
  • C language, 3 days
  • Python, 1 day
Such a table might explain why a certain language is popular while other not. In the 1980s the first two languages on the list were very popular. For many 8bit computers there was no alternative available over Assembly and Forth. Both languages need only a small amount of RAM and are working fine without any hard drive. In the 1990s the C language has become the standard for programming. Not because C is better than Assembly but because it takes a shorter amount of time to write a program. A good starting point to create a pong like video game in C is to use existing graphics libraries like SDL, this allows to finish the project in around 3 days. Since the year 2010 the python programming has become more popular. This might be a surprise from a technical perspective, because Python is known for its slow performance, especially in game development.
Nevertheless, Python allows to create complex software in a smaller amount of time. Finding bugs in a python program is much faster, and the sourcecode is dramatically shorter than the C counterpart. Its not very hard to predict which sort of programming language will replace python in 10 years, which are of course large language model which require only a text prompt as input and can generate the game by itself. This will reduce the time until a new game was programmed further down to hours.