Что почитать и послушать, чтобы погрузиться в IT, прокачать свой код, продвинуться в карьере и почувствовать себя своим в тусовке.
Автор: Чарльз Петцольд
Зачем читать: узнать, как люди создавали компьютер и развивали программирование.
На примере азбуки Морзе, шрифта Брайля, алгебры логики и первых телеграфных машин XIX века автор объясняет, как устроены электронные лампы, транзисторы и интегральные схемы.
Уже три десятка лет эта книга — одна из основных для начинающих кодеров и вообще всех, кто интересуется информатикой. Известный американский программист и IT-блогер Джефф Этвуд назвал ее «любовное письмо компьютеру».
Программист-прагматик. Ваш путь к мастерству
Авторы: Дэвид Томас, Эндрю Хант
Зачем читать: получить общее представление о работе программиста.
Авторы рассказывают про общие принципы и подводные камни работы программиста: от воспитания в себе ответственности до поиска ошибок в алгоритмах и подбора людей в команду. Книга про суть разработки независимо от конкретного языка.
А еще многие любят ее за профессиональный юмор и кучу баек. Так что можно не только узнать азы, но и почувствовать себя своим в индустрии.
Грокаем алгоритмы. Иллюстрированное пособие для программистов и любопытствующих
Автор: Адитья Бхаргава
Зачем читать: понять, что алгоритмы — это просто.
Глагол «грокнуть» (от англ. to grok) означает «всецело разобраться, вникнуть в самую суть». Его придумал фантаст Роберт Хайнлайн в романе «Чужак в чужой стране».
Как устроен рекомендательный алгоритм нетфликса? Каким образом поисковый бот гугла понимает, проиндексирована ли веб-страница? Здесь вам обо всем расскажут на примерах и с картинками. А еще — о бинарном поиске, массивах, связанных списках, структурах данных и рекурсии.
Автор хотел написать нескучную книгу про алгоритмы. Читатели в ответ пишут: «Единственный недостаток книги — после прочтения хочется продолжения по теме в таком же стиле».
Чистый код: создание, анализ и рефакторинг
Автор: Роберт Мартин
Зачем читать: научиться отличать хороший код от плохого и делать плохой — хорошим.
После этой книги вам будет сложно работать, если заранее не продумаете структуру классов или забьете на мелочи вроде имен переменных или комментариев.
В книге три части. В первой дают принципы, паттерны и приемы написания чистого кода и показывают много плохих и хороших примеров (все на Java). Во второй собраны практические сценарии с нарастающей сложностью. Каждый из них — упражнение по чистке или исправлению проблемного кода. Третья часть — выжимка правил и типичных ошибок, или «запахов плохого кода».
Head First. Паттерны проектирования
Авторы: Эрик Фримен, Элизабет Робсон, Кэти Сьерра, Берт Бейтс
Зачем читать: понять пользу шаблонов и начать их применять.
Эту книгу хвалят за простое объяснение сложных концепций.
Авторы рассказывают об основных паттернах проектирования, учат выстраивать архитектуру и соблюдать главные принципы. Например, открывать классы для расширения, но закрывать их для изменения.
Всё объясняют на игровых задачах. Например, как сделать программу для работы с данными метеостанции или написать код для расчета стоимости напитка в кофейне.
Рефакторинг. Улучшение проекта существующего кода
Авторы: Мартин Фаулер, Кент Бек
Зачем читать: разобраться, когда применять рефакторинг и как это делать, чтобы не развалить проект.
Рефакторинг — это переработка исходного кода программы, чтобы он стал более простым и понятным. То есть улучшение проекта после того, как код написан.
Многие программисты ратуют за принцип «Работает — не трогай». Зачем тратить деньги и время на изменение кода, если видимый результат не изменится? Так в проекте накапливается технический долг — кривой код с мелкими недоработками, нарушенными стандартами, написанными на старых фреймворках модулями и прочим мусором, который в будущем усложнит жизнь. Если его вовремя не чистить, со временем проект может встать.
Автор пишет о типичных проблемах в коде и о том, как шаг за шагом их исправить.
Алгоритмы. Построение и анализ
Авторы: Томас Кормен, Чарльз Лейзерсон, Рональд Ривест, Клиффорд Штайн
Зачем читать: разобраться в алгоритмах или, по крайней мере, сделать еще одну попытку.
Слышали про многотомный труд Дональда Кнута «Искусство программирования»? Билл Гейтс сказал про него: «Если вы прочитали все тома, вам точно следует отправить мне свое резюме».
Книга Кормена и компании почти такая же всеобъемлющая — отличный справочник по основным структурам данных и алгоритмам. В ней меньше математики, зато больше практических примеров. А еще «Алгоритмы» универсальнее: знать конкретный язык программирования необязательно — примеры написаны на псевдокоде.
Найдите самое свежее издание: авторы каждый раз обновляют и дополняют материал.
Психбольница в руках пациентов. Алан Купер об интерфейсах
Автор: Алан Купер
Зачем читать: чтобы лучше понимать целевую аудиторию проекта и не ругаться с дизайнерами.
Иногда легко забыть, что код нужен не сам по себе, а для единственной цели — решить задачу потребителя. Можно создать изящные алгоритмы и гибкую архитектуру, но провалиться на том, что пользователь не поймет интерфейс и закроет сайт через пять секунд. Автор подтверждает это множеством историй о провале небольших компаний и даже корпораций.
Да, чтобы таких проблем не было, есть UX/UI-дизайнеры. Они анализируют потребности пользователей, сценарии их работы и проектируют грамотный интерфейс. Но иногда за это отвечают и программисты. И эта книга поможет сделать продукт удобным для пользователей.
Идеальный программист. Как стать профессионалом разработки ПО
Автор: Роберт Мартин
Зачем читать: понять, какие качества и навыки нужны для успешной карьеры.
Автор — легенда программирования и один из создателей манифеста agile. Программисты называют Роберта Мартина просто дядюшкой Бобом.
В этой книге нет технических подробностей. Она о профессионализме. На историях из своей жизни дядюшка Боб объясняет важные вещи: как разговаривать и вести себя с начальником и коллегами, искать выход из кризисной ситуации, делать тесты и рефакторинг, управлять сроками в проекте.
Для кого-то это станет набором банальностей. Для других — кладезем ценных принципов, которые облегчат жизнь: например, как объяснить менеджеру, что нельзя сделать проект за день, когда нужно две недели.
Автор: Лакман Макдауэлл
Зачем читать: подготовиться к устройству на работу, систематизировать знания, увидеть и исправить ошибки, улучшить резюме.
Автор собрал 189 вопросов, которые задавали кандидатам на собеседованиях в Google, Microsoft, Amazon и других крупных IT-компаниях, и ответил на них. Еще он рассказывает про типичные ошибки кандидатов и то, как лучше подготовиться к собеседованию.
Мифический человеко-месяц, или Как создаются программные системы
Автор: Фредерик Брукс
Зачем читать: научиться реалистично оценивать сроки в проекте и соблюдать дедлайны.
Книга поможет программисту точнее оценивать сроки, а менеджеру — составлять адекватные планы. Еще она учит решать проблемы, с которыми сталкиваются проектные команды: нереалистичные оценки, сложности из-за разрастания коллектива и другие.
Книга хоть и старая, но всё еще считается мастридом: основные принципы не устарели. Хотя в 19-й главе последнего издания автор признает, что поменял мнение по некоторым вопросам.
Хронометраж: 18–110 минут
О чём: Андрей Себрант — директор по маркетингу сервисов «Яндекса». Рассказывает, как новые технологии влияют на мир вокруг и наоборот. Получается про людей и жизнь не меньше, чем про технологии. Подкаст нерегулярный: иногда выходят два выпуска с интервалом в неделю, а следующий — через несколько месяцев.
Хронометраж: 15–43 минут
О чём: бывший технический директор «Медузы» и сервиса знакомств Pure Самат общается с хакерами, дата-сайентистами, разработчиками и другими айтишниками. Обсуждают разные технологии и их влияние на повседневную жизнь. Например, каким образом нас догоняет реклама в вебе, почему Россия каждый год выигрывает олимпиаду по программированию или как компьютер научился обыгрывать человека в StarCraft.
Хронометраж: 18–110 минут
О чём: сотрудники «Яндекса» с необычным бэкграундом — следователь, пиарщик, биоинформатик и другие — рассказывают, как стали разработчиками, дата-сайентистами, менеджерами или дизайнерами.
Хронометраж: 18–110 минут
О чём: бородатый программист Лекс общается с людьми из разных сфер IT — не только про работу, но и о жизни. Без цензуры и ярлыков, как пишет автор. Есть темы хайповые, вроде NFT-токенов или кибербезопасности. А есть более прикладные: языки программирования, интерфейсы, карьера, умные вещи.
Хронометраж: 40–142 минуты
О чём: живо и с крепким словцом про работу фронтендером. В одном выпуске могут обсудить десяток тем — от смысла жизни до поиска в Петербурге лучших рабочих мест для старта карьеры.
Хронометраж: 70–90 минут
О чём: ведущие Александр Ванюрихин (Mars) и Антон Мосягин (Rambler Group) обсуждают разные технологии и рабоче-жизненные вопросы. Как организовать комфортную удаленку, выучить английский, устроиться на работу за границей и не только.
Хронометраж: 37–191 минута
О чём: говорят об IT и смежных отраслях с приглашенными профессионалами. Авторы подкаста: Егор Толстой — ведущий менеджер по продуктам Kotlin в JetBrains, Стас Цыганов — руководитель мобильной разработки в «Туту.ру», Екатерина Петрова — руководитель разработки в Avito, Евгений Кателла — руководитель мобильной разработки в «Яндекс.Еде».
Хронометраж: 28–93 минуты
О чём: ведущие обсуждают с известными разработчиками их карьеру и жизнь — истории успеха, увлечения, советы начинающим.
Хронометраж: 37–191 минута
О чём: интервью о фронтенде с профессионалами, но более технические. Авторы называют проект «самый безызвестный подкаст во всём фронтенде».
Хронометраж: 15–189 минут
О чём: разработчики, исследователи, тимлиды, основатели и руководители российских IT-компаний рассказывают о своей работе.
Хронометраж: 41–182 минуты
О чём: авторы вещают из Челябинска, поэтому и название соответствующее. Рассказывают про веб-разработку, UX, фронтенд, а еще про дизайн, архитектуру и урбанистику. Здесь больше технического: тренды, обновления, хаки. И меньше про жизнь.
Хронометраж: 3–5 минут
О чём: последние новости фронтенда. Коротко, только главное.
Хронометраж: 37–110 минут
О чём: снова новости фронтенда за неделю, но подробнее. Меньше личного, больше рабочего.
Хронометраж: 26–60 минут
О чём: подкаст о языке Python от команды курсов Learn Python и организаторов сообщества Moscow Python. Начинающими разработчиками рассказывают об основах Python и его применении в разных сферах — от нефтехимии до банков. А опытным — технические хаки. В названии каждого выпуска указано, для какого уровня он подойдет.
Хронометраж: 5–60 минут
О чём: «Подкаст о PHP, DBA, архитектуре, DevOps», — так пишут авторы. Обсуждают тренды в веб-разработке, работу с инфраструктурой, администрирование Linux и другие темы. Еще часто сравнивают PHP с другими языками программирования: например, Go, Rust или Erlang.
Хронометраж: 21–96 минут
О чём: подкаст для Ruby-разработчиков. Как писать сильный код, разбор инструментов, последних версий языка и так далее.
Хронометраж: 38–68 минут
О чём: о мобильной разработке для новичков и опытных. Новости, тренды, разговоры с разработчиками и дизайнерами из больших компаний: например, «Тинькофф Бизнес», Kaspersky, Atlassian.
Хронометраж: 79–147 минут
О чём: «Мы стараемся человеческим языком рассказать о создании игр людям, которые либо уже делают игры, либо только собираются этим заняться», — говорят о подкасте авторы. Среди гостей подкаста — работники Wargaming, Valve, CD Projekt, PlayStation и Nival.
Хронометраж: 1–4 минуты
О чём: журналисты из Wired рассказывают о последних технологических тенденциях и объясняют, как они влияют на бизнес, развлечения, коммуникации, науку, политику и общество. Коротко и по делу.
Хронометраж: 5–50 минут
О чём: TED — всемирно известная конференция, где обсуждают передовые идеи. В этом подкасте, к примеру: как искусственный интеллект ищет новые рецепты антибиотиков, цифровые инновации сражаются с пандемией, а компьютерные игры помогают справляться с одиночеством.
Хронометраж: 21–92 минуты
О чём: про «нетехнические навыки, которые нужны, чтобы стать большим разработчиком». Авторы отвечают на вопросы слушателей: как найти общий язык с коллегами, решать конфликты, учиться и не гнобить себя за неудачи.
Хронометраж: 48–113 минут
О чём: каждый выпуск посвящен новому языку программирования. Для тех, кому тесно в рамках своей специализации и хочется узнать что-то новенькое.
Рассказываем про «Тинькофф», «Билайн» и другие компании.
Указывайте в отчете только одну ошибку, прикладывайте скрины, сообщения и коды.
Учимся добавлять и изменять элементы, объединять и копировать списки.
Конструкция, чтобы много раз выполнять один и тот же участок кода.
JSON часто применяют, когда разрабатывают API и веб-приложения.
Есть сервисы, платформы и телеграм-каналы с вакансиями по всему миру.
С помощью HTML структурируют страницу на сайте, добавляют картинки, таблицы, списки.
Цикл for используют, когда количество повторов известно заранее.
Есть комьюнити на платформах, под эгидой компаний или самоорганизующиеся.
Обязанности и зарплата аналитика, Python- и Java-разработчиков и не только.
Правильное питание — это не о жестких диетах и полном отказе от любимых продуктов.
Благодаря методу «круга-пирога» увидите свое время и возьмете его под контроль.
Ищите мотивацию, хвалите себя, визуализируйте план и результат.
Лягушки — небольшие, но неприятные дела, слоны — долговременные задачи.
Когда ставите цель, отталкивайтесь от проблемы и конкретизируйте решение.
Этот специалист контролирует все этапы проекта и приводит его к успеху.
Советы всем удаленщикам — больше двигаться, делать зарядку, разминку для глаз.
Junior зарабатывает от 40 000 ₽, Middle от 100 000 ₽, а Senior от 250 000 ₽ и выше.
Совет от героини: сделайте первый шаг, дальше будет проще; учитесь и идите вперед.
Фишки и стоимость Forest, WaterDo, SleepTown, Alarmy, Pomodoro Timer Lite.
Программист fullstack получает до 550 000 ₽, а на тестировщика учатся 4–15 мес.
SQL используют в банках, торговле, перевозках: везде, где много информации.
Сначала поставьте цель: выберите сферу и определите, кем видите себя через 10 лет.
Термины разработки, Scrum, неформального общения, организационных процессов.
Мозг меняется всю жизнь. Мы можем на него влиять: изучать новое, развивать навыки.
Помогает планирование, вера в то, что реально изменить жизнь, поддержка семьи.
С помощью CSS задают цвет, размеры, анимацию, адаптируют сайт под устройства.
Python — самый популярный язык программирования в феврале 2022 года.
Гуманитарию подойдут профессии тестировщика, веб-дизайнера и не только.
Фронтендер создает интерфейс продукта, бэкендер работает с серверной частью.
Обязанности Java-разработчика — писать код, тестировать и улучшать его.
IT-отрасль привлекает удаленкой, карьерным ростом, высоким доходом.
Воспользуйтесь Google Colab, онлайн-интерпретаторами или скачайте Python.
Используйте конструкторы no-code, Java или Kotlin, Android Studio.
Бесплатный сервис позволяет писать тесты, поддерживает разные типы API.
Colab используют, чтобы создавать код на Python прямо в браузере.
Освоить новую профессию реально с нуля в любом возрасте, главное — мотивация.
Не выбирайте по принципу «чем проще, тем лучше» и уважайте желания ребенка.
Важнее опыт и проекты в портфолио, но иногда высшее образование все-таки нужно.
Сегодня удаленка доступна для разных сфер: ИТ, маркетинг, сервис, продажи.
Выбирайте по уровню спроса у работодателей и направлению в программировании.
20 фильмов и сериалов для тех, кому интересен мир информационных технологий.
Frontend-разработчик создает внешнюю — пользовательскую часть веб-ресурса.
Backend-разработчик отвечает за внутреннюю — серверную сторону веб-ресурса.
Спринты используют в долгих проектах и сложных продуктах.
Преимущества Python — понятный синтаксис и читаемость, готовые библиотеки.
Jupyter-ноутбуки применяют для визуализации данных в big data и data science.
Soft skills помогают развивать компетенции, осваивать новые тенденции в работе.
На Java разрабатывают всё: от приложений и ПО до технологий Big Data.