Denne læreboken gir en grundig innføring i konsepter og teknikker som er nødvendige for å skrive programmer som effektivt håndterer store datamengder. Den er prosjektorientert og testet i klasserom, og presenterer en rekke viktige algoritmer, støttet av relevante eksempler som gir innsikt i problemene programmerere møter. Boken introduserer begrepet beregningskompleksitet, noe som viser hva som kan og ikke kan beregnes effektivt i større skala. Dette gjør det lettere for programmerere å ta informerte valg om hvilke algoritmer de velger å bruke. Teksten er lettfattelig og forutsetter noe grunnleggende erfaring med dataprogrammering og kjennskap til et objektorientert programmeringsspråk, men ikke nødvendigvis med Python. Boken dekker både grunnleggende og avanserte emner innen datatyper og algoritmer, og gir forslag til kapittelsekvenser for henholdsvis innførings- og videregående kurs. I tillegg inneholder hver kapittel læringsmål, oppfølgingsspørsmål og programmeringsoppgaver, samt et uttall av eksempler. For de som kommer fra andre programmeringsspråk, presenteres en introduksjon til Python.