Впервые в своей истории JUG.ru вышел обеими ногами в онлайн и представил вам новый формат: разбор доклада с экспертами. Вашему вниманию мы представили живой разбор доклада Баруха Садогурского «DevOps для разработчиков (или против них?!)». В разборе участвовали:
— Барух Садогурский (https://twitter.com/jbaruch), Developer Advocate в компании JFrog, автор доклада, евангелист DevOps и любимец публики;
— Антон Кекс (https://twitter.com/antonkeks), основатель компании Codeborne, гуру методологии XP, практикующий разработчик и настоящий Software Craftsman;
— Олег Анастасьев (https://twitter.com/m0nstermind), ведущий разработчик в Одноклассниках, гуру распределенных систем и облачных решений;
— Алексей Федоров (https://twitter.com/23derevo), продюсер в JUG Ru Group, лидер питерского JUG и организатор Java-конференций Joker и JPoint;
— Леонид Игольник, Angel Investor, Startup Mentor and Advisor из Кремниевой Долины.
****
Спонсоры митапа: ALM Works, Infobip
ALM Works
Ребята делают офигенный плагин Structure for JIRA: almworks.com/structure/overview.html
Узнать о карьерных возможностях в ALM Works:
careers@almworks.com
Друзья, в этом видео я расскажу вам о том, что такое Git, зачем он нужен, как его использовать и как с его помощью оптимизировать и упростить работу в команде. Мы поговорим обо всех особенностях использования этого инструмента и я наглядно покажу как с ним работать.
Что такое git?
Git — это система контроля версий, а если сказать простым языком то это программа, инструмент, которая позволяет нам фиксировать наши изменения в коде, а также благодаря этой фиксации позволяет нескольким людям или даже командам вместе слажено и параллельно работать над каким-то программным продуктом.
Представьте что вы пишите программу и у вас есть какая-то функция, которая допустим сохраняет информацию информацию о пользователе в базу данных, и для этого сохранения вам естественно нужна логика которая собственно это сохранение будет делать. Вот вы написали код, все круто все работает. Как сделать своего рода сохранение как в компьютерной игре которое сможет зафиксировать прогресс?
Git — это как раз такая программа, такая система, которая позволяет эти сохранения создавать и потом управлять ими, менять, возвращаться к ним, удалять и переписывать их, такая фиксация в терминах Git-а называется `commit`
Проще всего гит представлять по аналогии либо с компьютерной игрой и ее сохранениями либо с таким роботом-фотографом, который в любой момент который вы ему скажете сделает так сказать фотографию ваших файлов с которыми вы работаете, зафиксирует их состояние на текущий момент, и затем любой момент может вам сказать поменялось ли что-то в этих файлов с момента прошлой «фиксации».
Git собственно так и делает, вы говорите ему команду, он запоминает состояние ваших файлов на текущий момент присваивая ему специальный номер вот это снимка, там называемый `commit hash`.
Commit hash — набор символов которые уникально идентифицируют сохранение состояния файлов в конкретный момент времени;
Что такое ветки в гите и как их использовать?
В git также используется так называемая система веток, представьте себе что ветка, так называемая branch — это маршрут по которому едет поезд, а каждая его остановка, сохранение состояния это коммит. То есть когда мы начинаем разрабатывать какую-то задачу, пишем код нам нужно идти с точки А в точку Б, у нас скажем пустой файл, а потом постепенно наш код начинает эволюционировать и он со временем начинает что-то внятное делать.
Так вот этот процесс разработки можно представить по той же аналогии с поездом, поездвыезжает с точки А и ему нужно доехать до точки Б, и этот маршрут он будет ехать по своему пути (в нашем случае это и будет ветка нашего git), а также по пути ему надо останавливаться чтобы фиксировать свой прогресс по маршруту, это и будут коммиты в нашем случае, то есть мы пишем код в рамках ветки и делаем коммиты, для того чтобы сохранять наш прогресс внутри метки.
Как его используют команды?
Как такой подход позволяет нам распараллелить работу разных людей и команд и сделать их более продуктивными? Все дело в том что когда мы работаем над каким-то проектом и нескольоко людей пишут код они во 1 могут одновременно менять одни и те же файлы.
Так вот фишка гита в том что каждый разработчик может сам себе создать такую ветку, уникальный маршрут поезда на пути которого будут свои уникальные остановки, то есть свои уникальные коммиты этого разработчика, и эта ветка она будет скажем так принадлежать одному человеку и там он будет фиксировать все свои изменения, делать коммиты.
И все сводится к достаточно простой логике, у нас есть какой-то код который нам надо написать, мы сделали новую ветку, по пути того как мы разрабатываем мы в этом ветке делаем коммиты чтобы зафиксировать изменения, как только мы понимаем что у нас все готово, нам нужно объединится с другими разработчиками, скажем так сделать так чтобы наши изменения ехали по общему маршруту, то мы просто сливаем все наши коммиты из нашей ветки в общую. По аналогии с поездами можно представить что у нас есть какая-то главный поездной маршрут в котором есть все наши остановки, коммиты из всех веток. Таким образом все довольно просто, сделали ветку, написали код попутно фиксируя изменения коммитами, после того как закончили, слили все наши изменения в общую ветку чтобы эти коммиты, эти изменения были доступны всем другим разработчикам.
00:00 Начало
1:03 — Git — что это?
2:52 — Что такое Git commit
4:09 — Ветки или «branch» что это такое?
5:27 — Как команды используют Git?
7:49 — Как применять Git в работе. Практика.
7:57 — Новый репозиторий. (Git init)
9:17 — Создание файла и коммита. (Git commit)
11:46 — Сохранение файлов (Git commit -m)
12:46 — Как работают с ветками и какими они бывают.
14:51 — Создание develop ветки, и ветки для работы ( Git checkout -b feature)
17:06 — Как новый файл добавляется в Git
19:39 — Откат к коммиту (Git reset)
20:44 — Слив на одну ветку (Git merge)
Путь в IT. От пользователя к DevOps. С чего начать и что делать дальше. Основные темы IT.
Изучение IT Сферы. С чего начать изучение. Что стоит изучать дальше.
Путь в ИТ от простого пользователь к DevOps.
Что отличает Системного администратора (SysAdmin) и DevOps.
! НЕ СТОИТ ВОСПРИНИМАТЬ ДАННОЕ ВИДЕО КАК ПРАВИЛО, это всего лиш один из вариантов последовательности изучения.
Содержание урока:
00:00 Что такое React
00:50 Как установить React
02:12 Обзор структуры проекта
05:22 Запуск приложения
09:13 Компоненты
12:24 Стили
17:38 Передача параметров в компонент
18:20 Циклы
22:10 PropTypes
26:30 Работа с JSX
31:30 События
36:18 Работа со state (useState)
39:20 Динамические css классы
41:30 React Context
45:39 useContext
48:10 Условные операторы в JSX
50:00 Работа с формой
55:34 Создание кастомного хука для input
1:00:06 useEffect (работа с севером)
1:03:07 Создание Loader
1:07:26 React.Suspense (React.lazy)
1:11:11 React.Component (создание модального окна)
1:13:30 React.Fragment
1:16:52 Полезен был контент?
Лекция читается в рамках образовательного проекта «Техносфера Mail.ru Group» при МГУ им. М.В. Ломоносова.
Цель курса — получить знания в области управления продуктами и проектами на примере Mail.Ru Group, понять роль менеджера продукта и проекта, узнать перспективы развития и особенности управления продуктом и проектом в крупной компании.
В курсе рассмотрены теория и практика по управлению продуктом и всем, что есть внутри (или рядом с ним): процессами, требованиями, метриками, сроками, запусками и, конечно — про людей и как с ними общаться.
Смотрите также:
► Курс «Углубленное программирование на C\C » — goo.gl/5ygiCg
► Курс «Многопоточный C » — goo.gl/TpR2SW
___
ТЕХНОСТРИМ — образовательный канал для IT специалистов.
___
ПОДПИСЫВАЙСЯ, ЕСЛИ ТЕБЕ ИНТЕРЕСНО УЗНАТЬ:
✔ как наши преподаватели – топовые специалисты Mail.Ru Group руководят разработкой в таких проектах, как Почта, ВКонтакте, Облако, Maps.me, Одноклассники, и решают сложные задачи каждый день
✔ реальные примеры из практики с анализом их достоинств и недостатков
✔ современные технологии, которые применяются в проектах-лидера Рунета
✔ о митапах, мастер-классах, вебинарах и других мероприятиях, которые проводятся на базе вузов и Mail.Ru Group.
Все наши лекции проходят в ведущих вузах страны: МГУ, МГТУ, МФТИ, МИФИ, СПбПУ.
___
ТЫ СТУДЕНТ?
Вступай в наши образовательные проекты и участвуй в чемпионатах. Лучшие студенты получают возможность стажировки в Mail.Ru Group. Отбор — каждые полгода!
На семинаре вы познакомитесь с продвинутыми техниками анализа безопасности системы. Увидите на практическом примере взлома контроллера домена реализацию различных сценариев:
— как выполняется начальное проникновение;
— как выполняется перечисление по протоколу SMB;
— как может быть атакован файловый сервер;
— как используются сертификаты в процессе взлома;
— какие существуют эксплойты для перехвата хэшей;
— как происходит уклонение от систем защиты;
— как выполнить атаку Pass-the-Hash;
— как устранять неполадки, возникающие в процессе использования инструментов.
Семинар будет интересен слушателям, прошедшим или планирующим прохождение курсов:
Сегодня будем строить компактную шагающую машину которая будет сама наводиться на свою жертву и идти к ней. А по ходу дела покажу вам разные простые механизмы которые имитируют шаги живых существ, и программу в которой можно смоделировать нужный профиль шага.
Если вы захотите собрать такого же робота, то вот ссылки на комплектующие, которые я использовал для проекта.