Начинаем большой плейлист по DevOps (старые плейлисты не бросаю и буду дополнять). Про DevOps хорошо можно прочитать тут: habrahabr.ru/post/303050/
Подходить к DevOps начнем с понятия IaC (Инфраструктура как код), выясним методики и поговорим об инструментах. Хорошее их сравнение тут: habrahabr.ru/post/211306/
Друзья, в этом видео я вам вам пошаговую инструкцию какие проекты делать начинающему программисту. Я расскажу почему их нужно делать, как и когда. Также мы рассмотрим основные моменты на которые стоит обратить внимание.
Почему?
Когда вы рассылаете резюме работодателю, особенно если вы новичок или человек с небольшим кол-вом опыта, то работодателю по сути невозможно понять насколько вы хороший или плохой кандидат, ведь он видит вас в первый раз и о вас нет никакого впечатления. Даже если вас позовут на собеседование, то по сути у них будет всего 1-2 часа для того чтобы оценить ваши знания, это не сильно играет вам на руку, так как обычно на популярные языки типа Java, JS, Python около 10-15 человек на 1 место на Junior.
Нужна более сильная позиция, что-то что выделит вас среди многих других кандидатов, а это как раз и будут ваши проекты в портфолио, которые не только можно и нужно добавить в резюме, но также покажут работодателю ваши скиллы по технологиям, а также стиль написания.
Как?
В первую очередь нужно понять что вы делаете не стартап, а в первую очередь технический проект, чтобы показать свои знания, поэтому направленность и фокус проекта должен быть смещен. Ненужно выбирать какую-то интересную тему, можно взять абсолютно любую. В этом проекте самое главное для разработчика это приобрести опыт написания с какой-то технологией которая востребована на рынке и может быть интересна работодателю.
Когда?
Лучше всего если проекты будут достаточно свежие, допустим полугодичной давности от момента когда вы собираетесь рассылать свое резюме, чтобы там были новые версии технологий, новые подходы (которые вы сможете нагуглить).
Как именно искать проект? Какой алгоритм?
1. Что мы делаем, это находим востребованный стек технологий на нашем языке программирования, это сделать довольно легко, открываем любой сайт поиска работы, находим нашу специальность и проводим незамысловатый анализ. Находим общее между описанием в вакансии и те технологии, которые будут встречаться чаще всего.
2. Важно понимать что проект в первую очередь должен быть нацелен на то, чтобы вы как можно лучше разобрались с технологиями, получив для себя пользу, а также сделали себе техническое резюме, которое потом можно показать работодателю. Тематика проекта на самом деле второстепенна, это может быть хоть сайт по аренде авто, хоть сайт по парсингу курса валют. Старайтесь сделать так, чтобы тема проекта не была черезчур большой и проект можно было бы достаточно быстро довести до логического финиша.
3. Создаем репозиторий в github, попутно учим базовые команды Git, создаем каркас проекта и начинаем писать, не забываем соблюдать качество кода и документацию по всему ходу разработки. Чтобы подсмотреть эталонные варианты проектов, советую вам загуглить в таком ключе Ваша Технология Real World appllication Example github.
4. Когда написали проект, его нужно причесать. На проектах есть так называемый файлик README.md который сразу будет высвечиваться в развернутом виде как описание вашего проекта, как только работодатель или любой другой пользователь зайдет на ваш проект на Github. Сделайте так чтобы ваш проект хотелось посмотреть и скачать, напишите классное описание.
5. И последнее, не забывайте то что вы делаете проект в первую очередь для себя, чтобы научиться, стать опытнее и умнее. Читать теорию, а потом сразу же применять ее на практике, а к тому же еще и решать какие-то реальные проектные проблемы, а не «синтетические», высосанные из пальца, гораздо гораздо эффетивннее.
Подсуммирую, для того чтобы сделать проект себе в портфолио нам нужно:
1. Найти востребованный стек технологий проанализировав вакансии на рынке.
2. Выбрать тематику которая нам нравится, но важно чтобы проект был на слишком большим.
3. Зарегистрироваться и создать репозиторий на github.com, выучить базовые команды git. Прогуглить примеры реальных проектов.
4. Когда написали функционал, причесываем проект, чтобы на него было приятно смотреть.
5. Не забываем про главную мотивацию писать проект, — это в первую очередь инвестирование в себя и улучшение своих профессиональных качеств.
Таймкоды:
00:00 — Начало
00:14 — что такое «pet проекты»?
1:35 — как занять более выгодную позицию, по сравнению с другими кандидатами на должность
1:59 — Github аккаунт. Зачем он нужен?
2:49 — зачем нужны pet проекты?
2:55 — что такое «Stack технологий»
3:41 — какие проекты добавлять к резюме
4:12 — как именно стоит писать pet project? Шаг за шагом.
4:23 — Подбор востребованного стека технологий
5:18 — Выбор тематики
7:21 — Создание репозитория на Github
8:07 — Лайфхак для того, чтобы лучше понять систему написания приложений.
9:42 — Файл-«описание» Вашего проекта
11:42 — Для чего Вы делаете этот проект?
12:45 — Вывод. Что нужно для качественного написания pet проекта?
Очень часто сталкиваюсь с ситуацией, когда люди путают хэш таблицы и радужные таблицы. Не могут сказать чем криптографический хэш отличается от функции формирования ключа. Не понимают как расчитать кост параметры.
В этом видео я попытался собрать всю инфу, которую надо знать для хэширования паролей правильно.
Доклад Дмитрия Разинкова на митапе по веб-разработке, организованном DSR Corporation.
Вы узнаете, какие процессы происходят в браузере при отрисовке веб-страниц, разберетесь со структурой дерева рендеринга, узнаете о наиболее эффективных CSS-селекторах, распространенных браузерных движках, особенностях парсинга HTML/CSS и моделях цикла событий.
Дмитрий поделится действительно работающими хитростями оптимизации производительности веб-приложений и сайтов, проверенными на крупных веб-проектах для международных компаний.
Данный доклад предназначен для тех, кто только начинает изучать гибкие методы разработки программного обеспечения, которые обычно называют Agile.
Я расскажу базовые вещи о ценностях и принципах Agile, на основе которых развиваются современные Agile-методологии Scrum и Kanban. Мы рассмотрим вопрос, почему появилась гибкая разработка (на Западе и у нас), чем она отличается от традиционного подхода к разработке программного обеспечения и почему итеративные методологии стали фактически стандартом дефакто в софтверном мире.
В дополнение к управленческим практикам мы добавим инженерные практики из экстремального программирования, и поймем поймем почему без гибкой архитектуры не бывает гибкой разработки.
Также будет затронута тема внедрения Agile и типичные проблемы, с которыми приходится сталкиваться на этом пути.
Продолжение видеоурока «Удобная работа в Bash».
Данный видеоурок ориентирован на пользователя командной оболочки, который знает азы работы в ней, но хотел бы углубить понимание механизмов работы оболочки, а так же узнать разнообразные приемы, которые помогают более оптимально в ней работать.
1. Подстановка имен файлов {}.
2. history, !-команды.
3. Ctrl-комбинации.
4. Подстановка последнего аргумента предыдущих команд (Alt .)
5. Замена строки в предыдущей команде (^foo^bar^).
6. Использование клавиши TAB и bash_completion.