Прості програми можуть бути складені за кілька годин, більш складні програми можуть вимагати більше року роботи, тоді як інші ніколи не вважаються «завершеними», а скоріше постійно вдосконалюються до тих пір, поки вони залишаються у користуванні. У більшості випадків кілька програмістів працюють разом як команда під наглядом старшого програміста.