-
Notifications
You must be signed in to change notification settings - Fork 1
Home
Anton edited this page Dec 7, 2021
·
12 revisions
Качество и скорость разработки - наши главные приоритеты. Следуя прагматичному перфекционизму: из плохого, хорошего и идеального решения выбираем то, что за минимальные деньги решит задачи заказчика прямо сейчас и останется рабочим без значительных изменений в ближайшие 6 месяцев.
В первую очередь, мы решаем бизнес-задачи заказчика — об этом должен помнить каждый член нашей команды.
- http://just-work.org
- hello@just-work.org — по вопросам сотрудничества и партнерства
- hr@just-work.org — для подрядчиков
- Там, где я писал, что книгу нужно прочитать целиком, лучше пересиливать себя и читать до просветления или до последней страницы.
- Там, где читать выборочно, то можно выбирать главы, которые отвечают основным задачам конкретного пункта программы.
- Если в главе, которую нужно прочитать, всё или что-то непонятно, то искать более простой материал в инете. Если не помогает, спрашивать меня.
- Если объяснения основаны на знаниях, которых нет, искать источник этих знаний потом читать главу заново. Не забивать, когда непонятно.
- Всегда, если что-то не понятно и разобраться не получается, спрашивать у меня. Но сначала самому «рыть землю»! Если при таких обращениях за помощью, я не увижу под ногтями земли, я расстроюсь и вряд ли буду помогать в следующий раз.
- Естественно, то, что хорошо знаешь, можно не изучать. Но часто, читая даже знакомый материал, узнаешь что-нибудь новое.
- «Программист-прагматик. Путь от подмастерья к мастеру» Эндрю Хант, Дэвид Томас.
- «Джоэл о программировании» Джоэл Спольски.
- «Джоэл: и снова о программировании» Джоэл Спольски.
- Чему я научился на своём горьком опыте (за 30 лет в разработке ПО)
Задача:
- Понимать основы теории информации и алгоритмов.
Литература:
- «Дискретная математика для программистов» - Новиков (библиотека)
- «Алгоритмы. Просто как 2x2» Красиков (библиотека)
- «Мат. Основы информатики», Андреева и др. (библиотека) - главы 3,4,5.
Задача:
- Понять принципы ООП без приложения к языку
- Проникнуться духом ООП.
Литература:
- «Объектно-Ориентированный подход» Мэтт Вайсфельд (библиотека)
- «Object-Oriented Analysis and Design with Applications». Grady Booch Addison-Wesley ISBN 0-201-89551-X. - Если сможешь добыть и осилить - книга сложная, но хорошая. Кажется есть на русском. М.б. позже обязательно читать.
- Паттерны проектирования и рефакторинг
Задача:
- понять, основы баз данных и реляционной теории
- изучить SQL.
Литература:
- «SQL и Реляционная теория» К. Дейт (i-библиотека, дир. SQL) — сначала лучше прочитать эту книгу, а то что кажется непонятным или хочется углубить, искать во второй.
- «Основы баз данных» Кузнецов (http://citforum.ru/database/osbd/contents.shtml) Также есть на торрентах учебник от intuit (http://rutracker.org/forum/viewtopic.php?t=909641). - Это более фкндаментальная книга, здесь лучше объясняются некоторые моменты. К ней можно обращаться за некоторыми главами. При желании, прочитать целиком.
- Как работает реляционная БД — https://habrahabr.ru/company/mailru/blog/266811/
Задача:
- Понять философию, возможности.
- Изучить синтаксис.
- Изучить реализацию ООП.
- Особое внимание уделить: классам и объектам, итераторам, генераторам, lamda-функциям.
Литература:
- «Изучаем Pyhton, 4-е издание» М. Лутц (i-библиотека, Pyhton с мышкой на обложке) — Прочитать полностью!
- «Программируем на Python» М. Лутц, 2 тома (i-библиотека, Pyhton, со змеёй на обложке) — Знать содержания, прочитать главы связанные с web. Желательно прочитать всё, пропуская то, что не близко.
Задача:
- Понять как работает JS в браузерах и DOM-модель.
- Изучить базовые возможности в JS (работа с массивами, объектами, строками, датами) и синтаксис.
- Понять, как устроено ОПП в JS, что такое прототип объекта (prototype — не путать с фреймворком).
Литература:
- «Javascript» Флэнаган (i-библиотека, Javascript, с носорогом) — Желательно целиком.
- «JavaScript. Сильные стороны» Дуглас Крокфорд.
Задача:
- Изучить устройство и принципы разработки web-приложений на Django.
- Освоить Django ORM.
Литература:
- http://www.djangobook.com/ — Руководство по погружению в Django. Не всё актуально, поэтому сверяться со вторым источник. Этот рассматривать как сценарий освоения, актуальные сведения брать из доки.
- https://docs.djangoproject.com/en/ - Документация стабильной на текущем момент версии Django. Практиковаться на Django на примерах из django-book.
Задача:
- Понять для чего нужны NOSQL БД.
- Почему сейчас они набирают популярность.
- Изучить возможности Redis DB.
Литература:
- Порыть и почитать статьи в интернете (массово) для выяснения первых двух пунктов. Составить на их основе собственное обобщённое мнение. Заодно, запомнить побольше разных названий и терминов из этой области.
- «The Little Redis Book» K. Seguin (i-библиотека, NOSQL)
- Документация на сайте http://redis.io
Задача:
- Научится читать и писать регулярные выражения.
Литература:
- «Регулярные выражение, 3-е издание» J. Friedl
Задача:
- Понять как происходит обмен даными в сетях. (Стек ОSI)
- Понять, что такое socket и что с ним можно делать.
- Понять неблокирующий ввод/вывод.
- Принципы работы HTTP: структура запроса/ответа, кодирование данных, основные заголовки, особенности и назначение методов GET, POST, PUT, DELETE.
Литература:
- «Компьютерные сети» Олифер (библиотека) — Выборочно про протоколы OSI.
- «UNIX. Разработка сетевых приложений» Стивенс (библиотека) — Выборочно про сокеты и работу с ними.
- Про HTTP искать на хабре и в Инете.
- «The Tangled Web» Михаил Залевский (скачать)
Задача:
- Понять принципы обработки данных в распределённых системах.
- Познакомится со способами распараллеливания основных алгоритмов.
- Узнать, что такое клиент-серверная архитектура.
- Понять как работают web-приложения.
- Знать, на каких компонентах строятся современные web-приложения и как эти компоненты взаимодействуют между собой.
Литература:
- «Теория и практика параллельных вычислений» Гергель (библиотека) — Полезно прочитать целиком, не погружаясь в MPI, а рассматривая алгоритмику.
- «Распределённые системы» Таненбаум (библиотека) — Читать строго выборочно!
- «UNIX. Разработка сетевых приложений» Стивенс (библиотека) — Есть про клиент-серверную архитектуру и в целом много интересного. Читать выборочно. При желании прочитать целиком — очень полезно будет.
- «Разработка высоконагруженных системы» Олег Бунин (библиотека) — конспекты докладов по hl++. В основном начало, про принципы. Тематические доклады по желанию.
- «Параллельные вычисления» Воеводин
- «Deadline. Роман об управлении проектами» Том Демарко
- «Человеческий фактор. Успешные проекты и команды» Том Демарко, Тимоти Листер.
- «Getting Real» 37signals (библиотека)
- «Remote. Офис не обязателен» 37signals (библиотека)
- «Мифический человеко-месяц» Фредерик Брукс (библиотека)
- в процессе )))