Небольшой влог с мини обзором — купил MacBook Air на процессоре Apple M1, он же Apple Silicon и ставлю на него необходимый для разработки софт. Проверяем Python, PostgreSQL, Django, Brew, PyCharm, Linux/Unix инструменты htop, tree, tmux, grep и др. Делюсь первыми впечатлениями о новом поколении макбуков.
0:00 Почему решил обновиться на MacBook Air M1?
2:33 Покупка
2:57 Распаковка
4:55 Почему надо покупать у официалов
5:34 Первый взгляд, первая настройка операционки
9:01 Результаты настройки софта, что нового, выводы
/****************** about ******************/
Меня зовут Алексей Голобурдин, я программирую с 2004 года и на этом канале делюсь своим опытом. Я основатель и руководитель компаний:
— Диджитализируй digitalize.team, разрабатываем сложные IT системы для бизнеса;
— Salesbeat salesbeat.pro, комплексный модуль доставки для интернет магазинов.
Если у вас есть проект на разработку, пишите нам на hi@digitalize.team.
С другими предложениями, а также если вам нужна одна или несколько индивидуальных консультаций/уроков по разработке (3000 руб/час), пишите мне на alexey@salesbeat.pro.
Знать:
— Концепция и принципы реляционной модели данных
— Методы проектирования баз данных
– Методику построения запросов
— Подходы к профилированию производительности
– Методику оптимизации запросов к БД MySQL
– Подходы к администрированию хранилища данных на основе БД MySQL
— Основы архитектуры современных СУБД
– Основы и границы применимости реляционной модели
– Основные типы нереляционных баз данных, а также область их применимости при построении хранилищ данных
Уметь:
— Проектировать концептульные и логические схемы для высоконагруженных баз данных
— Строить запросы на выборку и модификацию данных к реляционным СУБД
– Профилировать производительность хранилища данных на основе БД MySQL
— Оптимизировать запросы и структуру реляционной БД в целях повышения производительности
— Выполнять запросы к нереляционной документоориентированной СУБД
— Разрабатывать прикладные программы, осуществляющие взаимодействие с БД
— О КАНАЛЕ:
Официальный канал образовательных проектов Mail.Ru Group
Сегодня хочу рассказать о том, почему мы стратегически выбрали Python как основной язык на ближайшие годы, чем он хорош и чисто технологически, и в проектном плане с точки зрения наличия специалистов и компаний, использующих технологию.
Тема изначально очень холиварная, но у меня нет задачи сказать, что все остальные языки плохие, у каждого ЯП есть свои плюсы и выбирать инструмент надо под задачу. Но! Если вам нужен 1 язык, который вы хотите изучить или с которого хотите начать, я считаю, что Python — лучший выбор.
Поговорим о принципах разработки Python, о продуманной архитектуре Python, его академичности, быстродействии и выразительности.
0:00 О чем будем говорить в видео
1:27 Языки, на которых я писал, и почему выбрал Python
2:31 Причины выбрать тот или иной язык программирования
3:19 Средний PHP vs Python разработчики
4:22 Академичность, лаконичность и красота Python
6:05 Продуманность архитектуры Python на примере len
10:56 Композиция вместо наследования
12:04 Каждый аспект языка распространяется на весь язык
12:59 Python медленный?
14:15 Выводы
Меня зовут Алексей Голобурдин, я программирую с 2004 года и на этом канале делюсь своим опытом. Я основатель и руководитель компаний:
— Диджитализируй digitalize.team, разрабатываем сложные IT системы для бизнеса;
— Salesbeat salesbeat.pro, комплексный модуль доставки для интернет магазинов.
Если у вас есть проект на разработку, пишите нам на hi@digitalize.team.
С другими предложениями, а также если вам нужна одна или несколько индивидуальных консультаций/уроков по разработке (3000 руб/час), пишите мне на alexey@salesbeat.pro.
Уже в октябре 2019 выходит релиз Python 3.8, а значит самое время познакомиться с его новыми фичами! Заодно обсудим уход Гвидо ван Россума с поста Великодушного Пожизненного Диктатора Python, который произошёл в процессе обсуждения новой функциональности версии 3.8.
0:00 Python 3.8 уже здесь!
0:29 Walrus оператор и уход Гвидо
3:00 Строго позиционные аргументы
4:00 Изменения в f-string
4:55 Новые типы в typing — TypedDict
6:06 Декоратор final
7:12 Получение версии библиотек в рантайме
8:07 Итоги
Меня зовут Алексей Голобурдин, я программирую с 2004 года и на этом канале делюсь своим опытом. Я основатель и руководитель компаний:
— Диджитализируй digitalize.team, разрабатываем сложные IT системы для бизнеса;
— Salesbeat salesbeat.pro, комплексный модуль доставки для интернет магазинов.
Если у вас есть проект на разработку, пишите нам на hi@digitalize.team.
С другими предложениями, а также если вам нужна одна или несколько индивидуальных консультаций/уроков по разработке (3000 руб/час), пишите мне на alexey@salesbeat.pro.
Что такое LaTeX? Это потомок и наследник профессиональной издательской системы, разработанной в 1970х Дональдом Кнутом, автором фундаменального труда «Искусство программирования». К слову, «Искусство программирования» было признано одной из 12 лучших физико-математических монографий 20го века наряду с трудами по теории относительности Альберта Эйнштейна.
LaTeX позволяет из простых текстовых файлов с расширением .tex, содержащих несложную семантику наподобие Markdown или даже HTML (с оговорками, конечно), получать PDF с профессиональной типографикой уровня печатной книги из издательства. Круто? Не то слово! Посмотрим на LaTex подробнее.
0:00 О TeX и LaTeX
1:43 Как выглядят PDF, подготовленные в LaTeX?
2:40 Краткая история LaTeX
3:24 Установка необходимых инструментов
5:33 Обзор TeXstudio и синтаксиса LaTeX
7:30 Главы, заголовки, оглавление
8:53 Форматирование текста, списки, изображения
11:41 Ссылки
13:09 Работа c LaTeX в vim и в консоли
14:02 Итоги
/****************** about ******************/
Меня зовут Алексей Голобурдин, я программирую с 2004 года и на этом канале делюсь своим опытом. Я основатель и руководитель компаний:
— Диджитализируй digitalize.team, разрабатываем сложные IT системы для бизнеса;
— Salesbeat salesbeat.pro, комплексный модуль доставки для интернет магазинов.
Если у вас есть проект на разработку, пишите нам на hi@digitalize.team.
С другими предложениями, а также если вам нужна одна или несколько индивидуальных консультаций/уроков по разработке (3000 руб/час), пишите мне на alexey@salesbeat.pro.
20 мыслей об IT бизнесе и предпринимательстве для тех, кто планирует открыть своё дело.
0:00 Вступление
1:38 1. Секретов успеха нет
3:05 2. Бизнес и программирование не связаны
4:47 3. Самозанятость и бизнес
7:51 4. Денег станет меньше
10:36 5. Тренд популяризации бизнеса
12:39 6. Бизнес это сложно и дорого и неуспех почти гарантирован
13:08 7. Варианты бизнеса и стратегий в IT
16:27 8. Партнёрство
17:35 9. Учитесь считать деньги и экономить
19:40 10. Кассовые разрывы
20:54 11. В одном конкретном деле от вас зависит не всё
23:12 12. Начните с клиентов
25:04 13. Не тяните кота за яйца
26:47 14. Прокачивайте конкретные темы
28:28 15. Цели, гипотезы, работа
30:29 16. Главное про тайм менеджмент
31:44. 17. Менеджмент
32:17 18. Работу делаете вы, но иногда руками специалистов
34:04 19. Что ещё почитать
35:34. 20. Главное
35:50 21. Бонус
Меня зовут Алексей Голобурдин, я программирую с 2004 года и на этом канале делюсь своим опытом. Я основатель и руководитель компаний:
— Диджитализируй digitalize.team, разрабатываем сложные IT системы для бизнеса;
— Salesbeat salesbeat.pro, комплексный модуль доставки для интернет магазинов.
Если у вас есть проект на разработку, пишите нам на hi@digitalize.team.
С другими предложениями, а также если вам нужна одна или несколько индивидуальных консультаций/уроков по разработке (3000 руб/час), пишите мне на alexey@salesbeat.pro.
В этом видео мы реализуем Телеграм бота для учёта личных расходов с бюджетом, категориями расходов и базовой статистикой. Использовать будем Python и Aiogram с Asyncio, в качестве базы данных легковесный движок SQLite, а результат работы упакуем в Docker контейнер для быстрого разворачивания на любом сервере.
0:00 Telegram бот для учёта личных финансов
0:43 ТЗ на бота
3:01 Демонстрация работы бота
5:07 Используемые библиотеки и технологии
7:00 Aiogram
7:29 Создание бота, получение токена
8:30 Обход блокировки Telegram
9:40 Инициализация бота
10:36 Добавление расходов
12:27 Модуль expenses
18:22 Работа с категориями
19:15 Структура БД
21:49 Модуль работы с БД
24:01 Продолжение по категориям
25:35 Удаление расхода
26:33 Просмотр расходов
29:00 Статистики
30:30 Docker
33:00 Выводы
/****************** about ******************/
Меня зовут Алексей Голобурдин, я программирую с 2004 года и на этом канале делюсь своим опытом. Я основатель и руководитель компаний:
— Диджитализируй digitalize.team, разрабатываем сложные IT системы для бизнеса;
— Salesbeat salesbeat.pro, комплексный модуль доставки для интернет магазинов.
Если у вас есть проект на разработку, пишите нам на hi@digitalize.team.
С другими предложениями, а также если вам нужна одна или несколько индивидуальных консультаций/уроков по разработке (3000 руб/час), пишите мне на alexey@salesbeat.pro.
Лекция читается в рамках образовательного проекта «Технопарк Mail.ru Group» при МГТУ им.Баумана.
Описание лекции:
Лекция посвящена СУБД MySQL и ее сравнению с PostgreSQL.
Рассматриваются следующие темы:
— Архитектура MySQL
— Подсистемы хранения MySQL
— Репликация в MySQL
— Настройка MySQL
— Проблемы MySQL
— Достоинства MySQL
Хронометраж:
00:00:05 О теме лекции
00:01:09 Архитектура MySQL
00:02:08 Архитектура MySQL: хранилища объектов
00:04:22 Подсистемы хранения: MyISAM
00:06:52 Подсистемы хранения: InnoDB
00:08:30 Подсистемы хранения: Memory
00:09:53 Подсистемы хранения: критерии выбора
00:11:51 Подсистемы хранения: надежность
00:12:05 Другие подсистемы хранения
00:12:57 Подсистемы хранения: когда какую использовать / практические примеры
00:14:42 Проблемы MySQL: не транзакционный DDL
00:16:27 Проблемы MySQL: дорогой ALTER TABLE
00:20:00 Проблемы MySQL: особенности выборки данных
00:23:02 Проблемы MySQL: хранилище и лог транзакций существуют за пределами «движка»
СУБД
00:24:55 Репликация в MySQL: режимы репликации / проблемы репликации в MySQL
00:31:16 Репликация в MySQL: другие особенности
00:33:30 Репликация в MySQL: хрупкая репликация (пример проблемного запроса)
00:35:56 Ответы на вопросы по хранилищам MySQL
00:39:00 Архитектура MySQL: особенности планировщика запросов
00:41:19 Планировщик запросов: гарантированно плохие запросы
00:43:57 Проблемы MySQL: отличие между равенством и конструкцией IN в запросе выборки
00:47:08 Планировщик запросов: DELETE (стандартный / специфичный синтаксисы)
00:49:58 Проблемы MySQL: AUTO_INCREMENT
00:54:09 Проблемы MySQL: TIMESTAMP vs DATETIME
01:00:20 Проблемы MySQL: операция UPDATE не соответствует стандарту SQL92
01:01:33 Проблемы MySQL: lower_case_table_names
01:05:13 Как я познакомился с MySQL
01:08:53 Достоинства MySQL: секционирование
01:11:10 Достоинства MySQL: COLLATIONS
01:17:18 Достоинства MySQL: LIBSLAVE
01:18:52 Настройка MySQL: базовые параметры / кэш MyISAM
01:20:21 Настройка MySQL: размер блока ключей key_cache_block_size
01:21:26 Настройка MySQL: кэш InnoDB
01:27:58 Настройка MySQL: ввод / вывод в MyISAM
01:29:38 Настройка MySQL: ввод / вывод в InnoDB
01:33:33 Критерии выбора СУБД и проблемы миграции
01:36:26 Проблемы MySQL: необычайно долгий дамп
01:37:01 Ответы на вопросы по пройденному материалу: проблемы миграции
01:41:59 Причины миграции с MySQL на PostgreSQL: пример из практики
01:46:33 Проблемы MySQL: MYSQLDUMP
01:51:32 Проблемы MySQL: нелогичное выполнение некоторых запросов — WARNING vs ERROR
02:03:30 Проблемы MySQL: нелогичное выполнение некоторых запросов — TIMESTAMP
02:09:41 Проблемы MySQL: нелогичное выполнение некоторых запросов — GROUP BY
— О КАНАЛЕ:
Официальный канал образовательных проектов Mail.Ru Group
Илья Космодемьянский, эксперт компании PostgreSQL-Consulting.com — Внутреннее устройство PostgreSQL для практикующих инженеров.
Встреча CodeFreeze в Москве, 22.09.2015
Понимание архитектуры используемой СУБД очень важно для правильной эксплуатации, но местами переоценено: администратору, DevOps-специалисту или разработчику прикладных систем вовсе необязательно знать подробности внутреннего устройства B-дерева или тонкости работы легковесных блокировок. Это, конечно, все очень интересно, но существенно загромождает главы Concepts соответствующих руководств или доклады про архитектуру СУБД и оставляет практическим специалистам существенно меньше времени на более важные и насущные с точки зрения повседневной эксплуатации базы данных проблемы.
В рамках данного семинара, мы эту проблему попробовали устранить и рассмотреть несколько жизненно-важных систем PostgreSQL со следующих точек зрения:
теоретические основы;
практическая реализация и суровая практика ежедневной эксплуатации.
Главной основой любой базы данных является транзакционная машина. Как она реализованная в PostgreSQL? Какие алгоритмы и протоколы лежат в основе? Как в PostgreSQL реализованы Undo и Redo? Как устроен Write Ahead Log? Для чего нужен и как работает автовакуум? Какие могут быть проблемы в работе всех этих систем? Их мониторинг и настройка: как найти и исправить проблемы? После семинара слушатели не только узнали теоретические основы работы MVCC в PostgreSQL, но и представили:
как это может сказаться, например, на производительности;
как опознать это на мониторинге;
какими настройками и подходами к написанию приложений ситуацию можно улучшить.
Говоря о каждой системе PostgreSQL мы сравнивали их с другими СУБД, такими как Oracle, IBM DB2 LUW, MS SQL Server — чтобы специалистам, имеющим опыт с другими СУБД было быстрее и проще разобраться.
Начиная разбираться в SQL многие сталкиваются с проблемой сложности понимания различия между разными JOIN-ами в этом языке.
В этом видео уроке я объясняю: 1) Что такое JOIN. 2) Различие между CROSS JOIN, INNER JOIN, LEFT JOIN, RIGHT JOIN, и FULL JOIN. Также показываю как реализовать FULL JOIN в базах данных, которые не предоставляют такую конструкцию.