Alan Kay: „Jakie książki poleciłbyś przeczytać osobie studiującej informatykę?”

Krótko mówiąc, radziłbym przeczytać dużo książek niezwiązanych z informatyką.

Alan Kay: „Jakie książki poleciłbyś przeczytać osobie studiującej informatykę?”

Ważne jest, aby zrozumieć, jakie miejsce zajmuje pojęcie „nauki” w „informatyki” i co oznacza „inżynieria” w „inżynierii oprogramowania”.

Współczesną koncepcję „nauki” można sformułować następująco: jest to próba przełożenia zjawisk na modele, które można mniej lub bardziej łatwo wyjaśnić i przewidzieć. Na ten temat można przeczytać „Sciences of the Artificial” (jedna z ważnych książek Herberta Simona). Można na to spojrzeć tak: jeśli ludzie (zwłaszcza programiści) budują mosty, to naukowcy mogą wyjaśnić te zjawiska tworząc modele. Interesujące jest to, że nauka niemal stale znajduje nowe i lepsze sposoby budowania mostów, więc przyjaźnie między naukowcami i programistami mogą z roku na rok się poprawiać.

Przykład tego ze sfery Computer Science czy John McCarthy myśli o komputerach końca lat 50., czyli o niewiarygodnie szerokim zakresie ich możliwości (być może o sztucznej inteligencji?) i stworzeniu modelu informatyki, który będzie językiem i może służyć jako własny metajęzyk ( Seplenienie). Moją ulubioną książką na ten temat jest Podręcznik Lisp 1.5 wydany przez MIT Press (autor: McCarthy i in.). Pierwsza część tej książki pozostaje klasyką dotyczącą sposobu myślenia w ogóle, a w szczególności technologii informatycznych.

(Później ukazała się książka „Smalltalk: język i jego implementacja”, której autorzy (Adele Goldberg i Dave Robson) inspirowali się tym wszystkim. Zawiera ona także pełny opis praktycznego zastosowania projektu, napisany w książce Sam język Smalltalk itp.).

Bardzo podoba mi się książka „The Art of the Metaobject Protocol” autorstwa Kickzalesa, Bobrowa i Rivery, która ukazała się jeszcze później niż poprzednie. To jedna z tych książek, które można nazwać „poważną informatyką”. Pierwsza część jest szczególnie dobra.

Kolejna praca naukowa z 1970 roku, którą można uznać za poważną Computer Science — „Język definicji kontroli” Dave’a Fishera (Uniwersytet Carnegie Mellon).

Moja ulubiona książka o informatyce może wydawać się odległa od dziedziny IT, ale jest świetna i przyjemna w czytaniu: Computation: Finite and Infinite Machines autorstwa Marvii Minsky (około 1967). Po prostu cudowna książka.

Jeśli potrzebujesz pomocy z „nauką”, zwykle polecam różne książki: Principia Newtona (założycielska książka naukowa i dokument założycielski), The Molecular Biology of the Cell Bruce’a Albertsa itp. Lub na przykład książka z Maxwell’s notatki itp.

Musisz zdać sobie sprawę, że „informatyka” to wciąż aspiracja do osiągnięcia, a nie coś, co zostało osiągnięte.

„Inżynieria” oznacza „projektowanie i konstruowanie rzeczy w sposób specjalistyczny i oparty na zasadach”. Wymagany poziom tej umiejętności jest bardzo wysoki we wszystkich dziedzinach: cywilnej, mechanicznej, elektrycznej, biologicznej itp. Rozwój.

Należy dokładnie przestudiować ten aspekt, aby lepiej zrozumieć, co dokładnie oznacza zaangażowanie się w „inżynierię”.

Jeśli potrzebujesz pomocy z „inżynierią”, spróbuj przeczytać o tworzeniu Empire State Building, Zapora Hoovera, Most złotej bramy i tak dalej. Uwielbiam książkę Teraz można to powiedzieć, napisaną przez generała dywizji Leslie Grovesa (członka honorowego Projektu Manhattan). Jest inżynierem i ta historia absolutnie nie dotyczy projektu POV w Los Alamos (którym także kierował), ale Oak Ridge, Hanford itp. oraz niesamowitego zaangażowania ponad 600 000 ludzi i mnóstwa pieniędzy na jego wykonanie projekt niezbędny do stworzenia niezbędnych materiałów.

Zastanów się także, w jakiej dziedzinie nie ma części „inżynierii oprogramowania” – znowu musisz zrozumieć, że „inżynieria oprogramowania” w jakimkolwiek „inżynierskim” znaczeniu pozostaje w najlepszym przypadku aspiracją do osiągnięcia, a nie osiągnięciem.

Komputery są także swego rodzaju „mediami” i „pośrednikami”, dlatego musimy zrozumieć, co dla nas robią i jak na nas wpływają. Przeczytaj Marshalla McLuhana, Neila Postmana, Innisa, Havelocka itp. Mark Miller (komentarz poniżej) właśnie przypomniał mi, żebym polecił książkę Technika i rozwój człowieka, tom. 1 z cyklu „Mit maszyny” Lewisa Mumforda, wielkiego prekursora zarówno idei medialnych, jak i ważnego aspektu antropologii.

Trudno mi polecić dobrą książkę o antropologii (może ktoś inny to zrobi), ale zrozumienie ludzi jako żywych istot jest najważniejszym aspektem edukacji i należy je dokładnie przestudiować. W jednym z komentarzy poniżej Matt Gabourey polecił Human Universals (myślę, że ma na myśli książkę Donalda Browna). Tę książkę z pewnością należy przeczytać i zrozumieć – nie znajduje się na tej samej półce, co książki specjalistyczne, takie jak Biologia molekularna komórki.

Uwielbiam książki „Informacje o przewidywaniu” Edwarda Tufte’a: przeczytaj je wszystkie.

Książki Bertranda Russella są nadal bardzo przydatne, choćby do głębszego przemyślenia „tego i tamtego” („Historia filozofii zachodniej” jest wciąż zadziwiająca).

Różnorodność punktów widzenia to jedyny sposób na walkę z ludzkim pragnieniem wiary i tworzenia religii, dlatego moją ulubioną książką historyczną jest „Przeklęte przeznaczenie” Tamima Ansariego. Dorastał w Afganistanie, w wieku 16 lat przeprowadził się do Stanów Zjednoczonych i potrafi napisać jasną, pouczającą historię świata od czasów Mahometa z punktu widzenia tego świata i bez zbędnych wezwań do wiary.

*POV (propagacja wariancji) - propagacja sprzeczności w zeznaniach (w przybliżeniu)

Tłumaczenie zostało wykonane przy wsparciu firmy Oprogramowanie EDISONkto jest profesjonalistą pisze oprogramowanie dla IoT na skalę miejskąjak również opracowuje oprogramowanie dla nowych tomografów .

Źródło: www.habr.com

Dodaj komentarz