Goal abandoned
The author does not write in the goal 11 years 3 months
Стать программистом
С детства увлекалась техникой и в частности компьютерами, мечтала стать программистом. Но поступить на факультет информационных технологий благодаря череде случайных факторов не удалось, в итоге корочки по технической специальности, с большим уклоном в химию. Текущая работа - нечто среднее, между тем, чего хотела добиться и чего добилась: программирование станков с чпу. Примитивная и монотонная. Хочется кардинально сменить сферу деятельности, оставить коллектив, состоящий из людей предпенсионного и пенсионного возрастов, уйти от неадекватного начальства и грошевой зарплаты.
Goal Accomplishment Criteria
Поверхностно изучить основные языки программирования, чтобы понять какой из них по душе и углубленно осваивать уже непосредственно его. Разобраться в алгоритмах, архитектуре компьютера, операционных системах, парадигмах программирования.
-
Основы
Подготовить почву для дальнейшей работы - Sicp, "Конкретная математика" Кнута, любой учебник по информатике. -
Попробовать подступиться к языкам программирования
С, С++ по Дейтелам, а также Java по Эйкелю или Dive into Python на выбор. После лиспа должно быть не так сложно. Пишу с десяток программ на каждом из выбранных языков. Тематика программ свободная, что взбредет в голову. -
Немного математики
А именно дискретной: множества, алгебры, отображения, логика, графы. Разбираться как можно тщательней, не отлынивать. -
Базы данных
К. Дж. Дейт: Введение в системы баз данных. Из него уяснить: транзакции, нормальные формы, ER-модель, реляционное счисление, отображение из ER-модели в реляционное счисление. Далее SQL. По завершению написать любое приложение, использующее базы данных. -
Архитектура ЭВМ
Таненбаум. Должно быть легко, своего рода передышка. -
Алгоритмы
Вирт, Ахо, попробовать почитать Кнута. Уяснить как работает процессор, как оценивается скорость алгоритма, как выбрать нужный алгоритм. -
Операционные системы
Алгоритмы для многозадачности, потоки, процессы, нити, планирование ресурсов, файловые системы, микроядра, параллельное программирование. Из книг - Дейтелы, Таненбаум. Написать сложную многопоточную программу. -
Формальные языки и теория трансляции
Понимать: грамматики, языки, регулярные выражения, текстовые анализаторы — компиляторы, трансляторы, интерпретаторы, стадии компиляции, оптимизации.
- 1754
- 05 February 2013, 18:55
Don't miss new posts!
Subscribe for the Goal and follow through to its completion