Разни

Криптография

Всеки съвременен човек трябва да знае как може да обменя информация без тя да става достояние до трети лица (което е много лесно осъществимо в Интернет) и как може да удостоверява източника на информацията. За тези, който разбират английски препоръчвам този документ. Останалите могат да погледнат статията за криптографията на български в Wikipedia, както и тази за електронния подпис. Препоръчвам ви използването на свободен софтуер, като Gpg4win. За свободните хора -> Наръчникът на GNU. За mail клиента Thunderbird (или още по-добре Icedove) може да ползвате Enigmail приставката, с която с едно щракване подписвате писмото, а с още едно го криптирате. Ако пък си проверявате пощата само през web, може да ползвате приставката за Firefox FireGPG.
И запомнете едно: най-сигурният начин да размените публичните си ключове е като се срещнете на живо.

Транслатори и асемблер

Транслаторът, който писах (на Perl) беше всъщност компилатор за езика Simple Pascal до асемблерен език за NASM (x86). Много ми помогна книгата PC Assembly Language от Paul A. Carter.

Операционни системи

Препоръчвам ви книгата Modern Operating Systems от Andrew Tanenbaum (това копие е в непопулярния chm формат, който под UNIX базирани ОС може да разчетете с xCHM).
Всеки информатик трябва да знае какво е Unix, какво е POSIX, какво е Linux, какво е GNU и да прави разлика между тях.

Java и ООП

Тук може да прочетете какво представлява Java или направо да почнете с езика.
А това е документацията. Както за C++ така и за Java има много книги, но според мен горните връзки ще са ви най-полезни, поне като за начало. След това може да прочетете книгата Object-Oriented Software Construction на Bertrand Meyer, създателят на езика Eiffel.

Компютърна графика

Ето подробно ръководство за създаване на програма за работа с векторна графика, използвайки Java и NetBeans.
Такава програма може да създадете и използвайки OpenGL и Java.
Червената книга е ръководство за OpenGL.
Синята книга е справочник с командите за OpenGL.
Уроците на NeHe могат да ви бъдат много полезни.

Ето примерна програмка на C++, която чертае фигурите от долното изображение. За да я компилирате под Debian, след като си инсталирате пакетите freeglut3-dev и mesa-common-dev, ползвайте -lglut: gcc -o star star.cpp -lglut

opengl-figuri

За тези от вас, които възнамеряват да правят игри с библиотеката SDL, колегата Янко Петров препоръчва този сайт.

Компютърни симулации