Un videogioco è un sistema di codici complessi che vengono inseriti nel gioco da un programmatore e poi interpretati e visualizzati da un personal computer o sistema di videogiochi. Sistemi di videogiochi, spesso chiamati console, tutti hanno hardware diversi e richiedono codici diversi per funzionare. Di conseguenza, i programmatori devono programmare i giochi per ogni console in modo diverso.
Gli sviluppatori di videogiochi sono limitati in ciò che è consentito includere in un videogioco basato sulla potenza della console. Man mano che le console avanzano al potere, i programmatori di libertà hanno sviluppato giochi in espansione. I programmatori sono inoltre limitati dalla quantità di spazio disponibile sul supporto leggibile utilizzato dalle console. Questo è stato un grosso problema durante l'era dei sistemi basati su cartucce, come il Super Nintendo Entertainment System, e persino nelle prime fasi delle console di lettura dei dischi, come la prima PlayStation.
I giochi sviluppati per console sembrano sempre al meglio alla fine della vita di una console. Ciò è dovuto al fatto che i programmatori hanno avuto più tempo per imparare a sviluppare videogiochi per quella specifica console. Ogni volta che viene rilasciata una nuova console, c'è una curva di apprendimento che gli sviluppatori devono affrontare nella creazione di videogiochi per la nuova console.