🐍 У нас есть еженедельная email-рассылка, посвященная последним открытиям и тенденциям в мире Python.
В ней:
● Новые возможности в последних версиях Python
● Работа с базами данных и SQL в Python
● Веб-разработка на Django и Flask
● Машинное обучение и анализ данных с помощью Python
● Автоматизация и работа с API на Python
● Тестирование и отладка кода на Python
● Задачи для новичков с решениями
👉Подписаться👈
Предновогодний митап Frontend Night by Sber!⚡
Уже в понедельник, 11 декабря, Frontend-команда Сбера приглашает всех фронтендеров на свой заключительный митап в этом году. В программе:
✔️ Антон Непша — Senior Frontend-разработчик департамента IT-блока «Транзакционный банкинг B2C» — расскажет о том, как продать бизнесу рефакторинг и использовать простые решения для масштабных результатов.
✔️ Роман Ганин — Senior Frontend-разработчик команды «Салют В2В» — поделится секретами о важности тегов и их влиянии на работу сайтов.
✔️ Алексей Охрименко — TechLead Yandex Cloud — рассмотрит статистический анализ кода и покажет, как применить этот подход на практике.
А еще: много нетворкинга, игры и подарки.
Подключайтесь онлайн или приходите офлайн по адресу: г. Москва, ул. Маросейка, 7/8, FotoFaktura.
Важно: для участия в любом формате необходима регистрация.
Зачем проводить CTF для разработчиков, и как сделать его интересным
Пока команда безопасности внедряет SAST, DAST и WAF, чтобы сделать продукт безопасным, то упускает, что эти инструменты выявят уязвимости в уже написанном коде. Но сделать продукт изначально безопасным могут только те, кто делает этот продукт — сами разработчики.
Важно, чтобы они умели писать защищенный код, и один из инструментов, который их сможет заинтересовать в развитии этого навыка — CTF.
🔗 Читать статью
Реклама, ООО «Антифишинг» , ИНН: 6950191442
Erid: 2VtzqvVLdSA
📯Внимание всем отважным героям и искателям приключений!
«Библиотеки Программиста» с гордостью представляет новую захватывающую игру — «Битва с Драконом». Выберите своих персонажей и сразитесь с древним Крылатым Ужасом Бурлопиворогом в эпическом поединке!
Мы предлагаем вам взять под свой контроль хитроумного изобретателя или ловкого вора.
💎Победителей ждет почет, уважение и награда! Итак, кто осмелится бросить вызов Бурлопиворогу? Начните свою «Битву с Драконом»!
🧑💻 Статьи для IT: как объяснять и распространять значимые идеи
Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.
Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.
Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.
👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
🔂 Наиболее популярные стратегии снижения рисков деплоя или обновления сервисов: наглядная демонстрация от ByteByteGo (Alex Xu)
🔧 Мульти-сервисный деплой: одновременное обновление нескольких сервисов. Просто в реализации, но сложно управлять зависимостями и откатывать изменения.
🔧 Сине-зеленый деплой: подразумевает два одинаковых среды — стейджинг (синяя) и продакшен (зеленая). После тестирования в стейджинге, пользователи переключаются на нее, и она становится продакшеном. Удобна для отката, но может быть «дорогостоящей».
🔧 Канареечный деплой: постепенное обновление сервисов для небольших групп пользователей. Более экономична и легко откатывается, но требует тестирования в продакшене и мониторинга.
🔧 A/B тестирование: разные версии сервисов работают в продакшене для разных групп пользователей. Эффективно для тестирования новых функций, но требует контроля, чтобы избежать случайного деплоя функций.
#вопросы_с_собесов
📚 Напоминаем про наш полный курс «Самоучитель по Python для начинающих»
Мы написали и собрали для вас в одну подборку все 25 глав и 230 практических заданий!
🐍 Часть 1: Особенности, сферы применения, установка, онлайн IDE
🐍 Часть 2: Все, что нужно для изучения Python с нуля — книги, сайты, каналы и курсы
🐍 Часть 3: Типы данных: преобразование и базовые операции
🐍 Часть 4: Методы работы со строками
🐍 Часть 5: Методы работы со списками и списковыми включениями
🐍 Часть 6: Методы работы со словарями и генераторами словарей
🐍 Часть 7: Методы работы с кортежами
🐍 Часть 8: Методы работы со множествами
🐍 Часть 9: Особенности цикла for
🐍 Часть 10: Условный цикл while
🐍 Часть 11: Функции с позиционными и именованными аргументами
🐍 Часть 12: Анонимные функции
🐍 Часть 13: Рекурсивные функции
🐍 Часть 14: Функции высшего порядка, замыкания и декораторы
🐍 Часть 15: Методы работы с файлами и файловой системой
🐍 Часть 16: Регулярные выражения
🐍 Часть 17: Основы скрапинга и парсинга
🐍 Часть 18: Основы ООП — инкапсуляция и наследование
🐍 Часть 19: Основы ООП — абстракция и полиморфизм
🐍 Часть 20: Графический интерфейс на Tkinter
🐍 Часть 21: Основы разработки игр на Pygame
🐍 Часть 22: Основы работы с SQLite
🐍 Часть 23: Основы веб-разработки на Flask
🐍 Часть 24: Основы работы с NumPy
🐍 Часть 25: Основы анализа данных с Pandas
Напоминаем про два новых канала для Python-разработчиков 👨🏫
В них мы:
🔸тренируемся на практических задачах
🔸отвечаем на популярные вопросы с собеседований
🔸проверяем свои знания
Подписывайтесь:
👉Библиотека собеса по Python — тут мы готовимся к интервью
👉Библиотека задач по Python — тут решаем задачи, проходим тесты и изучаем код
💡Развитие протоколов API в 2023 году: по мотивам статьи Alex Xu в блоге Postman
В PDF-файле — обзорная демонстрация, а в статье вас ждет подробный взгляд на шесть самых популярных протоколов API с акцентом на преимущества и проблемы каждого:
1️⃣ REST
2️⃣ Webhooks
3️⃣ GraphQL
4️⃣ SOAP
5️⃣ WebSocket
6️⃣ gRPC
💬 Какой используется в вашем проекте? Делитесь в комментариях мыслями по данной теме👇
#проектирование_систем
🤔 Размышления о 18 годах работы в Google
Google давно ушла от своей миссии «Упорядочить мировую информацию и сделать ее универсально доступной и полезной» к погоне за краткосрочными колебаниями курса акций.
Почему так произошло и можно ли это исправить? Читайте перевод статьи-откровения Ian Hickson, который проработал в Google 18 лет.
Pattern Guru - канал по паттернам программирования.
Знаешь как работает Singleton?
Используешь шаблон Fabrica?
Можешь сам написать Decorator?
Понимаешь что такое Best Practices?
Всё это и не только мы разбираем у нас в канале.
Подписывайся: @highloadmicro
Реклама. Киренкина Марина Дмитриевна, ИНН 345702417736. Erid 2VtzqvSLi6D
🔂 4 наиболее часто используемых типов очередей на одной диаграмме: наглядная иллюстрация от ByteByteGo (Alex Xu)
1️⃣Простая очередь FIFO. Следует принципу First In First Out — первым пришел, первым ушел. Все новые элементы добавляются в конец очереди. Когда элемент удаляется из очереди, удаляется элемент, который находится в начале очереди, то есть добавленный первым.
💡Применение: отправка уведомления по электронной почте пользователям каждый раз, когда получаем ответ о платеже. Письма будут отправляться в том же порядке, в котором поступили ответы о платежах.
2️⃣Круговая очередь или кольцевой буфер. Ее последний элемент связан с первым элементом. Вставка происходит в начале очереди, а удаление — в конце.
💡Применение: управление аудиоданными в реальном времени, где кольцевой буфер может использоваться для временного хранения аудиоданных перед их обработкой.
3️⃣Очередь с приоритетами. Каждый элемент имеет определенный приоритет, и элементы обрабатываются в порядке их приоритета, а не в порядке их добавления.
💡Применение: система управления задачами в компании. Задачи могут иметь различный уровень срочности, и мы хотим, чтобы более срочные задачи обрабатывались в первую очередь.
4️⃣ Двухсторонняя очередь. Вставка и удаление могут происходить как в начале, так и в конце очереди. Двухсторонняя очередь поддерживает как FIFO, так и LIFO (Last In First Out — последним пришел, первым ушел), поэтому мы можем использовать ее для реализации структуры данных стека.
💡Применение: навигация в веб-браузере. Пользователь переходит по различным веб-страницам, и браузер должен запоминать историю этих переходов, чтобы пользователь мог вернуться на предыдущие страницы или перейти обратно вперед.
#вопросы_с_собесов
🛠 Обзор GitHub на некоторые из наиболее интересных функций и изменений Git (обзор от OpenNET)
▫️В команду git repack
добавлены опции "--filter
" и "--filter-to
", позволяющие выполнить переупаковку репозитория c учётом заданного фильтра объектов, и при необходимости перенести в отдельное место объекты, не удовлетворяющие заданному фильтру.
▫️Например для оставления в репозитории блобов, размером менее 1 МБ, и выносом в отдельный репозиторий остальных крупных объектов, можно выполнить:
$ git init --bare ../backup.git
$ git repack -ad --filter='blob:limit=1m' \
--filter-to=../backup.git/objects/pack/pack
$ git clone --filter=tree:0 git@github.com:git/git.git
git repack --max-cruft-size
) с несколькими pack-файлами с информацией о недостижимых объектах (cruft packs), на которые в репозитории отсутствуют ссылки (не ссылаются ветки или теги).git revert
и учёт этого факта при формировании сообщения об отмене$ git revert --no-edit HEAD >/dev/null
$ git revert --no-edit HEAD >/dev/null
$ git log --oneline
a300922 (HEAD -> main) Reapply "fix bug"
0050730 Revert "fix bug"
b290810 fix bug
--rfc
" и "--subject-prefix
". Например, для формирования письма с префиксом "[RFC PATCH bpf-next]
" в теме сообщения можно указать:$ git format-patch --subject-prefix="PATCH bpf-next" --rfc
git log
разрешено указание заполнителя "%(decorate)
" для показа имён связанных веток при определении формата при помощи опции "--format
", например:$ git log --format='%cr%(decorate) (%h) %s'
📌 То, что зацепило на это неделе:
🤯 Как сооснователя Сэма Альтмана уволили с поста СЕО, а затем вернули обратно: разбор истории.
🤩 Dota 2 стала образовательной дисциплиной по стратегии в Филиппинском университете.
🤩 DALL-E 3 заработала в Paint для всех пользователей Windows 11.
🔸 Опубликован выпуск IDE Qt Creator 12.0, предназначенной для создания кроссплатформенных приложений с использованием Qt.
🔸 Представлен релиз PHP 8.3. Новая ветка включает ряд новых возможностей, а также несколько изменений, нарушающих совместимость.
🔸 Доступен выпуск Git 2.43. О новых фичах на русском читайте здесь.
🔸 Состоялся релиз Firefox 120. Новый выпуск поддерживает операцию Copy Link Without Site Tracking, позволяющую скопировать URL выбранной ссылки, предварительно вырезав из него опции, которые используются для отслеживания переходов. Читайте подробнее об этой и многих других фичах на русском.
🔸 В репозитории PyPI выявлено около 5000 оставленных в коде секретов и 8 вредоносных обфускаторов.
#чтопроисходит
🤩 Ребята из Honeypot продолжают снимать замечательные доки про языки программирования, популярные технологии, библиотеки и инструменты. Из последнего — Ruby on Rails.
Ruby on Rails (Rails) — один из самых обсуждаемых полнофункциональных фреймворков, который за 20 лет превратился из «сумасшедшей идеи» в ключевой инструмент в мире веб-разработки. Основатель Rails, датский программист Давид Хейнемейер Ханссон, известный как DHH, является одной из самых спорных и влиятельных фигур в сообществе. Он рассказывает о том, как Rails развивался и менялся.
Вас ждут интервью с ключевыми фигурами Rails, которые делятся историей языка и фреймворка, страстью, противостоянием и зрелостью, наступившей после выпуска Rails 3.0.
📌 Другие доки:
📺 React.js
📺 Prometheus
📺 Kubernetes: часть 1 & часть 2
📺 Vue.js
📺 GraphQL
📺 Elixir
📺 Ember.js
💡10 архитектурных стилей ПО и их паттерны: шпаргалка для разработчика
Архитектурные паттерны более конкретны и специфичны для определенной проблемы или модуля в системе, в отличие от архитектурного стиля.
📌 Основные характеристики архитектурных стилей и примеры паттернов:
1️⃣ Многослойный: разделяет систему на слои с четко определенными ролями и зависимостями. Каждый слой выполняет определенную функцию.
📝 «N-уровневая архитектура», «Чистая архитектура».
2️⃣ Компонентно-ориентированный: фокусируется на разделении системы на отдельные, взаимозаменяемые компоненты, каждый из которых имеет четко определенный интерфейс.
📝 «Микроядро», «Плагин».
3️⃣ Сервисно-ориентированный: состоит из независимых сервисов, которые общаются друг с другом.
📝 SOA, Broker, «Микросервисы», FaaS.
4️⃣ Распределенная система: включает системы, распределенные по различным сетевым узлам для улучшения масштабируемости и надежности.
📝 Space-Based, «Одноранговая сеть».
5️⃣ Предметно-ориентированный: подход, сосредоточенный на моделировании домена и бизнес-логики, и акцентирующий внимание на сложных бизнес-правилах.
📝 Шестигранный паттерн, DDD.
6️⃣ Событийно-ориентированный: архитектура, основанная на обработке событий, где компоненты системы реагируют на события.
📝 CQRS, Pub-Sub.
7️⃣ Разделения ответственности: фокусируется на разделении системы на части, каждая из которых решает отдельную задачу.
📝 MVVP, MVP.
8️⃣ Интерпретатор: используется в кейсах, где требуется гибкость и возможность обработки разнообразных языковых структур.
📝 «Интерпретатор».
9️⃣ Конкурентность: ориентирован на разработку систем, которые одновременно выполняют несколько операций, улучшая производительность и отзывчивость.
📝 «Оркестрация», Choreography, Primary-Secondary, Pipeline.
🔟 Ориентированный на данные: архитектура, в которой данные играют ключевую роль, и все компоненты системы ориентированы на обработку данных.
📝 CQRS, Event Sourcing, Kappa, Lambda.
👉 Источник
👉 Читать на русском
#проектирование_систем
🏃 Самоучитель по Go для начинающих. Часть 1. Особенности и сфера применения Go, установка, настройка
В этой статье разберем основные особенности Go, его преимущества и недостатки, а также настроим рабочее пространство для комфортной разработки.
🔗 Читать статью
🔗 Зеркало
Присоединяйтесь к SberAutoTech — компании, создающей будущее в области беспилотного транспорта.
Наши автомобили находятся на дорогах с декабря 2020 года: проходят тестирование в условиях плотного городского трафика, с учётом различных погодных условий и времени суток. Кроме легковых, мы активно развиваем технологию на грузовых автомобилях, а в июне запустили коммерческие автономные грузоперевозки вместе с компанией-партнёром.
Для развития автономной транспортной системы нам нужны амбициозные и перспективные специалисты, разделяющие нашу веру в беспилотное будущее.
Вместе мы сможем решать самые смелые задачи, затрагивающие:
•разработку универсальной технологии автономного вождения и беспилотных транспортных средств;
•автомобильную ОС для комфортных и безопасных поездок;
•экосистему сервисов для автономного транспорта.
Давайте создавать будущее индустрии вместе. Присоединяйтесь к команде!
🔤 Азбука SQL в примерах. Часть 1. Создаем базу данных и первую таблицу
С помощью этого короткого руководства в трех частях вы создадите базу данных, добавите в неё записи, а затем выполните несколько запросов для их обработки. В первой части мы узнаем, что скрывается за тремя буквами SQL и начнем двигаться к поставленной цели.
🔗 Читать статью
🔗 Зеркало
📰❌ 10 признаков фейковой вакансии
Как понять, что с вакансией что-то не так? Разбираемся в этой статье!
Читать статью
#почитать
⚛️ 45 вопросов для подготовки к собеседованию по React
Чтобы успешно пройти собеседование на позицию React-разработчика, важно хорошо понимать основные концепции, принципы и смежные технологии этой библиотеки.
В статье невозможно охватить все вопросы, которые могут задать на собеседовании, однако мы рассмотрим ответы на наиболее распространенные из них.
🔗 Читать статью
🔗 Зеркало
👨🎨 Искусство промтинга: введение в Midjourney
📝 Сейчас мало просто уметь писать правильные промты, но важно также знать некоторые хитрости каждого ИИ-помощника. Markus Wallén из 14islands подготовил подробное руководство по Midjourney, в котором рассказал, как начать работу и как создать идеальный промт, чтобы максимально использовать возможности нейросети.
🧰 В статье он разобрал структуру промтов и их атрибуты, а также показал примеры сгенерированных картинок. Прочитав статью, вы научитесь контролировать стилизацию или реализм изображения, а также соотношение сторон, разнообразие генерируемых композиций и многое другое.
🤔 Уже лет 50, со времен выхода первого издания «Языка программирования Си» Кернигана и Ритчи, известно, что «числа с плавающей запятой» одинарной точности имеют размер 32 бита, а числа двойной точности — 64 бита. Существуют ещё и 80-битные числа расширенной точности типа «long double».
🧰 Эти типы данных покрывали почти все нужды обработки вещественных чисел. Но в последние несколько лет, с наступлением эпохи больших нейросетевых моделей, у разработчиков появилась потребность в типах данных, которые не «больше», а «меньше» существующих, потребность в том, чтобы как можно сильнее «сжать» типы данных, представляющие числа с плавающей запятой.
👨💻 Лучший способ разобраться в деталях — самостоятельно поработать с такими числами. Автор исследует самые популярные форматы чисел с плавающей запятой, создает с использованием некоторых из них простую нейронную сеть и наблюдает за тем, как она работает.
Подборка лучших статей «Библиотеки программиста» за ноябрь: сохраняй в заметки, чтобы не пропустить #самыйсок
🗺️ Дорожная карта Go-разработчика в 2023 году
🧑💻 6 карьерных советов программисту
⚖️ 25 курсов, книг и подкастов для развития критического мышления
🐍🎨 Генерация красивых QR-кодов с помощью Python
🔈16+ лучших нейронок для синтеза речи
⭐ FAQ по трудоустройству: разбираем самые популярные вопросы
👨💻 7 типов «сложных» разработчиков
∞ Дорожная карта DevOps-инженера в 2023 году
❤️🙏 Путь к мечте: как инвалидность не помешала стать разработчиком и продолжить борьбу за здоровье
👀 6 способов привлечь внимание работодателя
🤖📜 Искусственный интеллект: краткая история
🔤 Азбука SQL в примерах (часть 1 + часть 2)
🔢 Как научиться решать сложные задачи
🏆 Самые популярные языки программирования 2023
📰❌ 10 признаков фейковой вакансии
🏃 Самоучитель по Go для начинающих (часть 1 + часть 2)
⚛️ 45 вопросов для подготовки к собеседованию по React
🐍 5 задач для подготовки к собеседованию по Python
🐍🤖✍️ Документирование кода и проектов на Python с помощью ChatGPT
🏆 Самые популярные языки программирования 2023
Популярность ЯП зависит от нескольких факторов. Мы разобрались с ними, составили сводный рейтинг и обсудили особенности, преимущества, недостатки и причины популярности каждого языка. Заходите и читайте👇
🔗 Читать статью
🔗 Зеркало
🧠Полезные каналы по Data Science
Напоминаем про наши каналы по Data Science, в которых мы готовимся к собеседованиям проверяем себя на практических задачках — специально для специалистов по Data Science и тех, кто хочет ими стать👨🏫
Подписывайтесь:
👉Библиотека собеса по Data Science — тут мы готовимся к интервью
👉Библиотека задач по Data Science — тут решаем задачи, проходим тесты и изучаем код
Чёрная Пятница в Практикуме заканчивается 30 ноября. Выберите любой курс до 30.11 и учитесь на 20% дешевле. На курсах вас будут ждать:
— YandexGPT, который объяснит всё в любое время дня и ночи;
— интерактивный учебник, собранный на основе реальных задач специальности;
— команда сопровождения, которая поможет, подбодрит и увлечёт.
Чёрная Пятница в Практикуме — время карьерных перспектив!
→ Выбрать курс
👨🏫Полезные каналы по Go
Напоминаем, что «Библиотека программиста» запустила два канала специально для Go-разработчиков и тех, кто хочет ими стать.
Подписывайтесь:
👉Библиотека собеса по Go — тут мы готовимся к интервью
👉Библиотека задач по Go — тут решаем задачи, проходим тесты и изучаем код
❗️Мы запускаем серию исследований — и вы можете нам в этом помочь!
«Библиотека программиста» выпустит несколько статей, в которых мы проведем полноценные исследования.
Помогите нам выбрать интересные темы: может быть, вы давно хотели узнать, как изменилась зарплата у тех, кто релоцировался? Или гадаете, сколько лет нужно, чтобы стать миддлом?
Присылайте интересующие вас темы в комментарии — интересные мы возьмем в работу и поделимся с вами результатами 💙
🥷Это путь воина
Напоминаем, что «Библиотека программиста» запустила два новых канала специально для специалистов по C++ и тех, кто хочет ими стать👨🏫
Подписывайтесь:
👉Библиотека собеса по C++ — тут мы готовимся к интервью
👉Библиотека задач по C++ — тут решаем задачи, проходим тесты и изучаем код