I. Алгоритмы и структуры данных
Курсы
-
MIT
Introduction to Computer Science and Programming. 2008, 2011
Structure and Interpretation of Computer Programs
Mathematics for Computer Science
Introduction to Algorithms (SMA 5503)
Performance Engineering of Software Systems
Dynamic Programming and Stochastic Control
-
Stanford
Математические основы Computer Science
Сложность вычислений и основы криптографии
Видеолекции «Школы Анализа Данных» Яндекса
Книги
Томас Кормен «Алгоритмы. Построение и анализ»
Брайан Керниган, Деннис Ритчи «Язык программирования C»
Харольд Абельсон, Джеральд Джей Сассман «Структура и Интерпретация Компьютерных Программ»
Генри Уоррен «Алгоритмические трюки для программистов»
Никлаус Вирт «Алгоритмы и структуры данных»
Альфред Ахо, Джон Хопкрофт, Джеффри Ульман «Структуры данных и алгоритмы»
Дональд Кнут «Искусство программирования. Основные алгоритмы». Том 1, Том 2, Том 3, Том 4
II. Общие вопросы разработки ПО
Грэди Буч «Объектно - ориентированный анализ и проектирование с примерами приложений на С++»
Стив Макконелл «Совершенный код»
Роберт Мартин «Чистый код: создание, анализ и рефакторинг»
Эндрю Хант, Дэвид Томас «Программист-прагматик. Путь от подмастерья к мастеру»
Фредерик Брукс «Мифический человеко-месяц, или Как создаются программные системы»
Чад Фаулер «Программист-фанатик»
Мартин Фаулер «Шаблоны корпоративных приложений»
Кент Бек, Мартин Фаулер «Экстремальное программирование: планирование»
Майкл Ховард, Дэвид Лебланк «Защищенный код»
Чарльз Петцольд «Код. Тайный язык информатики»
Джон Бентли «Жемчужины программирования»
Том ДеМарко, Тимоти Листер «Человеческий фактор. Успешные проекты и команды»
Питер Сейбел «Кодеры за работой. Размышления о ремесле программиста»
Кент Бек «Экстремальное программирование: разработка через тестирование»
Ричард Фейнман «Вы, конечно, шутите, мистер Фейнман!»
Линус Торвальдс, Дэвид Даймонд «Just for Fun. Рассказ нечаянного революционера»
III. Отдельные технологии
-
.NET
-
JavaScript
Дуглас Крокфорд «JavaScript: сильные стороны»
Addy Osmani «Learning JavaScript Design Patterns»
Nicholas Zakas «Maintainable JavaScript»
Читайте на Rusbase:
-
Какой язык программирования учить первым (если вы в России)?
-
Подтяни бигдату. Курсы и полезные ссылки по теме data science
Несмотря на то, что в список вошло огромное количество материалов, он не может претендовать на полноту. Поэтому, если у вас есть что-то интересное по теме, что мы пропустили – ждем вас в комментариях.
Мы надеемся, что подборка окажется вам полезной.
Фото на обложке: Shutterstock.