| Előszó | 11 |
| Bevezetés | 15 |
| Javaslat tanfolyami felhasználásra | 17 |
| A programozás mint emberi tevékenység | 19 |
| Programok olvasása | 23 |
| Egy példa | 24 |
| A számítógépek korlátai | 25 |
| A programnyelvek korlátai | 26 |
| A programozók korlátai | 28 |
| Történeti előzmények | 28 |
| Programspecifikációk | 30 |
| Összefoglalás | 30 |
| Kérdések | 31 |
| Irodalomjegyzék | 32 |
| Mikor jó egy program? | 33 |
| Specifikációk | 35 |
| Határidő | 37 |
| Felhasználhatóság | 38 |
| Hatékonyság | 41 |
| Összefoglalás | 44 |
| Kérdések | 44 |
| Irodalomjegyzék | 45 |
| Hogyan tanulmányozhatjuk a programozást? | 46 |
| Önmegfigyelés | 47 |
| Mások megfigyelése | 49 |
| Kísérletezés | 51 |
| Pszichológiai mérések | 55 |
| A viselkedéstudományi adatok felhasználása | 57 |
| Összefoglalás | 59 |
| Kérdések | 60 |
| Irodalomjegyzék | 61 |
| A programozás mint társas tevékenység | 63 |
| A programozó csoport | 67 |
| Formális és nem formális szervezet | 67 |
| Fizikai környezet és szociális szervezet | 70 |
| A hiba és az "Én" | 72 |
| Az önzetlen programozás | 76 |
| A programozói környezet megteremtése és fenntartása | 80 |
| Összefoglalás | 84 |
| Kérdések | 85 |
| Irodalomjegyzék | 86 |
| A programozó team | 88 |
| Hogyan alakul ki egy team? | 88 |
| Célok kitűzése és elfogadása | 93 |
| Team-vezetés és team-vezetők | 99 |
| A team válságban | 105 |
| Összefoglalás | 111 |
| Kérdések | 113 |
| Irodalomjegyzék | 114 |
| Nagy rendszerek programozása | 116 |
| Stabilitás változtatás segítségével | 116 |
| A teljesítmény mérése | 120 |
| A nagy rendszerek struktúrája | 127 |
| Nagy rendszerek közös szociális problémái | 130 |
| Összefoglalás | 133 |
| Kérdések | 135 |
| Irodalomjegyzék | 136 |
| A programozás mint egyéni tevékenység | 139 |
| A programozási feladatok közötti különbségek | 143 |
| Tapasztalt, illetve kezdő programozók | 143 |
| Amit a programozó el akar érni | 147 |
| A programozói munka szakaszai | 154 |
| Összefoglalás | 159 |
| Kérdések | 160 |
| Irodalomjegyzék | 161 |
| Személyiségjegyek | 163 |
| Az őrült bombázó | 163 |
| A személyiség változásai | 165 |
| A személyiség állandó jellemzői | 167 |
| A személyiség kritikus tulajdonságai | 170 |
| Személyiségvizsgálatok | 174 |
| A programozók személyiségvizsgálata | 178 |
| Összefoglalás | 180 |
| Kérdések | 180 |
| Irodalomjegyzék | 181 |
| Intelligencia vagy problémamegoldó képesség | 183 |
| A pszichológiai beállítódás | 183 |
| A sproblémamegoldás néhány dimenziója | 186 |
| A programozói intelligencia megnyilvánulásai | 188 |
| Alkalmasságvizsgálatok | 192 |
| Programozók alkalmasságvizsgálata | 193 |
| Összefoglalás | 198 |
| Kérdések | 199 |
| Irodalomjegyzék | 200 |
| Motiváció, gyakorlás és tapasztalat | 202 |
| Motiváció | 203 |
| Képzés, oktatás és nevelés | 206 |
| A tanulás ellen ható erők | 210 |
| Hogyan tanuljunk programozni? | 215 |
| Összefoglalás | 220 |
| Kérdések | 221 |
| Irodalomjegyzék | 221 |
| A programozás eszközei | 223 |
| Programnyelvek | 227 |
| A programnyelvek és a természetes nyelvek | 228 |
| Programnyelvek tervezése | 232 |
| Összefoglalás | 236 |
| Kérdések | 237 |
| Irodalomjegyzék | 237 |
| A programnyelvek tervezésének néhány elve | 239 |
| Egységesség | 239 |
| Tömörség | 246 |
| Térbeli és időbeli gondolkodás | 251 |
| Tradició és újítás | 255 |
| Különleges célú, több célú és játéknyelvek | 260 |
| Összefoglalás | 264 |
| Kérdések | 265 |
| Irodalomjegyzék | 266 |
| A programozás további eszközei | 269 |
| Programpróba-eszközök | 269 |
| Operációs rendszerek | 274 |
| Időmegosztásos, illetve kötegelt feldolgozás | 282 |
| Dokumentálás | 286 |
| Összefoglalás | 294 |
| Kérdések | 295 |
| irodalomjegyzék | 296 |
| Utószó | 301 |