🚀 История девятимесячного пути к горизонтальному шардированию стека Postgres Figma и ключ к открытию (почти) бесконечной масштабируемости: по мотивам статьи из блога Figma
Стек базы данных Postgres, с ростом пользовательской базы на 200% с 2018 года до 3 миллионов пользователей в месяц, вырос почти в 100 раз.
📌 Как команде это удалось?
🔷 Вертикальное масштабирование и репликация: они обновили базу до крупнейшего инстанса Amazon RDS и создали несколько реплик для масштабирования чтения, используя PgBouncer для управления соединениями.
🔷 Вертикальное разделение: перенесли высоконагруженные таблицы в отдельные базы данных, управляемые несколькими PgBouncer.
🔷 Горизонтальное шардирование: для больших таблиц внедрили горизонтальное шардирование, создавая новый сервис DBProxy для маршрутизации и выполнения запросов.
👉 Подробнее
👉 Источник
#проектирование_систем #инфографика
🧐Нашли или написали код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру. Внутри — говнокод на любой вкус.
Читать полностью…🧑💻 Статьи для IT: как объяснять и распространять значимые идеи
Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.
Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.
Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.
👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
😮 Исторический момент: ChatGPT доказал, что обладает человеческим интеллектом.
В рамках эксперимента, проведенного учеными, 500 случайно выбранных людей общались с четырьмя собеседниками. Среди них были GPT-4, GPT-3.5, ELIZA (первая известная программа, имитирующая общение человека) и один настоящий человек. Все нейросети должны были вести себя как обычные подростки, включая несерьезное отношение к беседе и допущение опечаток.
Результаты эксперимента:
🔵 В 54% случаев участники идентифицировали GPT-4 как человека
🔵 33% людей ошибочно приняли реального человека за одну из нейросетей
🔵 GPT-3.5 был признан человеком в 50% случаев
🔵 Даже ELIZA, созданная десятилетия назад, получила 22% голосов за "человечность"
Эти результаты демонстрируют значительный прогресс в области искусственного интеллекта. Ученые пришли к выводу, что с развитием технологий отличить будущие версии ChatGPT от настоящих людей станет невозможно.
🤖 Итоги недели в мире ИИ и обзоры новых сервисов: как обойти цензуру ИИ-модели
У нас вышла новая статья на VC по мотивам еженедельной рассылки про последние новости и тенденции в мире ИИ.
Ниже — небольшая выдержка из статьи, а целиком читайте здесь 👈
💬 Новости
• Американский режиссер Гэри Хаствит выпустил короткометражку, которая сама себя переписывает при каждом просмотре.
• В Лондоне отменили премьеру фильма «Последний сценарист», созданного при помощи ChatGPT — из-за недовольства публики, не желающей смотреть ИИ-продукцию.
• Dell, Nvidia и Super Micro Computer объединили усилия в процессе создания грандиозного ИИ-суперкомпьютера для xAI Илона Маска.
• Илья Суцкевер, бывший главный научный сотрудник OpenAI, основал компанию Safe Superintelligence Inc, которая будет заниматься обеспечением безопасности искусственного суперинтеллекта.
🛠 Инструменты
• AutoKT — автоматически пишет и поддерживает подробную документацию для любого проекта.
• Т-Ж опубликовал подборку из 10 лучших нейронок для генерации аватарок в стиле аниме.
• Sourcery — код-ревьюер, интегрируется с GitHub и GitLab, проверяет каждый запрос на вытягивание.
👾 Как «разцензурить» модель
Современные языковые модели обучены отказываться от выполнения потенциально вредных или неэтичных запросов. Хотя это важно для безопасности, это ограничивает гибкость моделей. Максим Лабонн представил технику под названием «аблитерация» (ablation + obliteration), которая позволяет «разцензурить» языковые модели без переобучения.
➡ Вы можете подписаться на email-рассылку здесь
🏃 Самоучитель по Go для начинающих. Часть 13. Работа с датой и временем. Пакет time
В этой части самоучителя изучим способы работы с датами и временем в языке Go, разберем полезные функции пакета time и в заключение решим парочку интересных задач.
👉 Читать гайд
📌 Остальные части в серии:
1. Особенности и сфера применения Go, установка, настройка
2. Ресурсы для изучения Go с нуля
3. Организация кода. Пакеты, импорты, модули. Ввод-вывод текста.
4. Переменные. Типы данных и их преобразования. Основные операторы
5. Условные конструкции if-else и switch-case. Цикл for. Вложенные и бесконечные циклы
6. Функции и аргументы. Области видимости. Рекурсия. Defer
7. Массивы и слайсы. Append и сopy. Пакет slices
8. Строки, руны, байты. Пакет strings. Хеш-таблица (map)
9. Структуры и методы. Интерфейсы. Указатели. Основы ООП
10. Введение в ООП. Наследование, абстракция, полиморфизм, инкапсуляция
11. Обработка ошибок. Паника. Восстановление. Логирование
12. Обобщенное программирование. Дженерики
🐍📦 Ваш код достоин PyPI: как правильно опубликовать Python-пакет
Это краткая инструкция по публикации Python-пакетов на PyPI. Узнайте, как структурировать проект, настроить метаданные и загрузить свой пакет в репозиторий.
🔗 Читать статью
🔗 Зеркало
📧 Отклик на вакансию по email: как сделать так, чтобы ваше письмо выделялось
Вы отправляете десятки откликов на вакансии, но не получаете ответа? Возможно, дело в том, как вы пишете свои письма. Узнайте, какие ошибки могут стоить вам работы мечты и как их избежать.
👉 Статья
🛠 Технический стек Netflix: обзор инструментов CI/CD пайплайна
☑️ Планирование работы: Jira + Confluence
☑️ Разработка: Java + другие языки для различных юзкейсов
☑️ Сборка: Gradle + Gradle-плагины
☑️ Packaging: Amazon Machine Image
☑️ Хаос-тестирование
☑️ Деплой: Spinnaker для Canary rollout deployment
☑️ Мониторинг: Atlas + Kayenta
☑️ Инциденты: PagerDuty
👉 Источник
#инфографика
🐍🕵 5 лучших Python инструментов для специалистов по кибербезопасности
В данной статье представлен обзор пяти высокоэффективных инструментов на базе языка Python, применяемых в сфере информационной безопасности. Рассматриваются их ключевые функции и области применения.
🔗 Читать статью
🔗 Зеркало
⚒️ 10 незаменимых плагинов для VS Code в 2024 году
Огромная популярность Visual Studio Code во многом связана с его расширяемостью: функциональность редактора можно существенно нарастить за счет установки дополнительных плагинов.
В этой статье мы рассмотрим 10 суперполезных расширений, которые значительно упростят работу с кодом и повысят вашу продуктивность.
🔗 Читать статью
🔗 Зеркало
⚡️ Мини-курс по Vim от Andrew Brown
Изучите основы, необходимые для работы с Vim в качестве предпочтительного инструмента разработчика. Можете смело начинать с момента 2:13:38, если не хотите слушать длинное теоретическое введение.
📺 Смотреть полностью
🐍 У нас есть еженедельная email-рассылка, посвященная последним открытиям и тенденциям в мире Python.
В ней:
● Новые возможности в последних версиях Python
● Работа с базами данных и SQL в Python
● Веб-разработка на Django и Flask
● Машинное обучение и анализ данных с помощью Python
● Автоматизация и работа с API на Python
● Тестирование и отладка кода на Python
● Задачи для новичков с решениями
👉Подписаться👈
Привет, друзья! 👋
Мы готовим статью о типичных ошибках начинающих разработчиков. И нам очень нужна ваша помощь! 🙏
Поделитесь своим опытом и мнением в комментариях:
❓С какими сложностями вы сталкивались в начале своего пути в разработке?
❓Какие ошибки допускали и как их исправляли?
❓Что помогло вам быстрее расти профессионально?
Самые интересные и полезные советы мы обязательно включим в статью, а их авторов упомянем в публикации! 😊
🔒 Блокировки баз данных: ключевые различия
Блокировка — временное ограничение на выполнение некоторых операций обработки данных. Она предотвращают одновременный доступ к данным для обеспечения целостности и консистентности данных.
📌 Основные типы блокировок:
🔷 Shared Lock: позволяет нескольким транзакциям одновременно читать ресурс, но не модифицировать его
🔷 Exclusive Lock: позволяет транзакции как читать, так и модифицировать ресурс
🔷 Update Lock: используется для предотвращения взаимоблокировки, когда транзакция намеревается обновить ресурс
🔷 Schema Lock: используется для защиты структуры объектов базы данных
🔷 Bulk Update Lock: используется во время массовых вставок
🔷 Key-Range Lock: используется в индексированных данных для предотвращения фантомных чтений
🔷 Row-Level Lock: блокирует конкретную строку в таблице
🔷 Page-Level Lock: блокирует конкретную страницу (фиксированный блок данных) в базе данных
🔷 Table-Level Lock: блокирует всю таблицу
👉 Источник
#инфографика
❗️Вакансии «Библиотеки программиста» — ждем вас в команде!
Мы постоянно растем и развиваемся, поэтому создали отдельную страницу, на которой будут размещены наши актуальные вакансии. Сейчас мы ищем:
👉авторов в наше медиа proglib.io
👉контент-менеджеров для ведения телеграм-каналов
Подробности тут.
Мы предлагаем частичную занятость и полностью удаленный формат работы — можно совмещать с основной и находиться в любом месте🌴
Ждем ваших откликов 👾
🍑 Подборка лучших статей «Библиотеки программиста» за июнь: сохраняй в заметки, чтобы не пропустить #самыйсок
💻⌛ 8 причин участвовать в хакатонах
✉️❌ Как завалить собеседование, даже не начав его: 8 ошибок в сопроводительных письмах
🦅⚡ Делаем нативное мобильное приложение с ИИ и бэкендом
🤖👨💻 Пишем Telegram-бота для подготовки к собеседованию на Frontend-разработчика
💵 ТОП-15 самых востребованных профессий в ИТ: куда все катится в 2024 году
🈺 Как перевести все ваши iOS-приложения на 20 языков за 5 минут
🏆👁️ Топовая задачка на Stack Overflow: как найти k пропущенных чисел в потоке данных
🐍🤖💬 Создаём бота-автоответчика для Telegram на ChatGPT и Aiogram 3: пошаговое руководство
🤖🎙️ S.T.A.R.K. — первый фреймворк для создания голосового ассистента
😌 5 техник для снятия стресса на работе
🐍🎓 5 задач для подготовки к собеседованию по Python
⚛️ 6 самых важных шаблонов проектирования в React
💠 Пишем свою нейросеть: пошаговое руководство
🐍🏗️ Основы архитектуры для джунов: построение масштабируемых и чистых приложений на Python
💡 Кем работать в IT, если ты гуманитарий: 10 альтернативных профессий
🎓 Продвинутый SQL: секреты профессионалов
👶 Новичок в компании: 18 советов, как быстро адаптироваться и освоить новые навыки
🛠️ Set в JavaScript: теперь с новыми суперспособностями
⚒️ 10 незаменимых плагинов для VS Code в 2024 году
🐍🕵 5 лучших Python инструментов для специалистов по кибербезопасности
📧 Отклик на вакансию по email: как сделать так, чтобы ваше письмо выделялось
🐍📦 Ваш код достоин PyPI: как правильно опубликовать Python-пакет
🏃 Самоучитель по Go для начинающих. Часть 13. Работа с датой и временем. Пакет time
👋 Slack уходит из России: чем заменить зарубежный сервис
🗣️ «Иногда решение не в изменении системы, а в изменении отношения заказчика». Интервью с системным аналитиком
🚀 8 ключевых стратегий масштабирования систем:
☑️ Проектирование stateless сервисов, которые не зависят от данных конкретного сервера и проще масштабируются
☑️ Расширение количества серверов для распределения нагрузки
☑️ Использование балансировщика нагрузки для равномерного распределения входящих запросов по серверам
☑️ Автоматическое масштабирование для автоматической корректировки ресурсов в реальном времени
☑️ Кэширование для уменьшения нагрузки на базу данных и обработки повторяющихся запросов
☑️ Репликация данных на нескольких узлах для масштабирования операций чтения и повышения отказоустойчивости
☑️ Распределение данных по нескольким инстансам для масштабирования операций записи и чтения
☑️ Перенос трудоемких задач на фоновые рабочие процессы с использованием асинхронной обработки
👉 Источник
#инфографика
В России появилась среда разработки – встречайте GIGA IDE
На главной технологической конференции лета GigaConf 2024 СберТех представил российскую среду разработки GIGA IDE со встроенным AI-ассистентом*.
Среда позволяет вести разработку на популярных языках программирования, обеспечивает совместимость с востребованными плагинами, а также привычный пользовательский опыт. Встроенный в среду AI-ассистент GIGA CODE анализирует контекст, предлагает полные конструкции функций и других элементов, что позволяет писать код до 25% быстрее.
• GIGA IDE Desktop – это интегрированная среда разработки, которая включает 70 инструментов для облегчения задач разработки, автоматизации тестирования и администрирования приложений. Разработчики уже могут скачать GIGA IDE Desktop на платформе GitVerse.
• GIGA IDE Cloud позволит вести разработку в облаке, расширив возможности устройства дополнительными облачными ресурсами. Публичный релиз среды запланирован на осень 2024 года. Чтобы первыми получить доступ к GIGA IDE Cloud – регистрируйтесь на платформе GitVerse на раннее тестирование.
*AI (Artificial Intelligence) - «искусственный интеллект»
💡 Кстати, у Visual Studio Code есть свой YouTube-канал с обновляемой коллекцией обучающих видеогайдов. На нем вы найдете как простые руководства по настройке окружения для разработки на конкретном языке программирования, так и гайды с советами по повышению эффективности работы в редакторе.
🎥 code/videos">Смотреть
🥷 Ходите стать профи в отладке контейнеров? Ловите мини-курс от Ивана Величко, в котором сложный материал объясняется на простых иллюстрациях:
🔷 Docker: How To Debug Distroless And Slim Containers
🔷 Kubernetes Ephemeral Containers and kubectl debug Command
🔷 Containers 101: attach vs. exec — what's the difference?
🔷 Why and How to Use containerd From Command Line
🔷 Docker: How To Extract Image Filesystem Without Running Any Containers
🔷 KiND — How I Wasted a Day Loading Local Docker Images
#инфографика
В нейросети GigaChat появился новый персонаж - Контент-мейкер.
Теперь большинство ваших задач вы можете поручить ему — он подробно расспросит о деталях задачи, уточнит, какая ЦА креатива, поможет с генерацией разного рода контента - и многое другое.
Контент-мейкер может:
🔹Помочь с написанием SMM-стратегии
🔹Решить проблему "белого листа" и нагенерить креативов
🔹Разработать контент-план
🔹Разработать УТП для вашего бренда
🔹Сформировать тональность коммуникации для вашего сообщества
Персонаж Контент-мейкер в GigaChat отлично справится с каждой из этих задач. Попробуй пообщаться с ним уже сейчас!
🖥 доступен в веб-версии и в боте Telegram
🖥 находится в разделе «Персонажи» или «Выбрать персонажа GigaChat»
🆘 — Контент-мейкер, придумай смешную подпись к этому посту
📝 — надо было попросить Контент-мейкера придумать смешную подпись к посту
Узнайте, как сделать ваш сайт быстрее и безопаснее, на бесплатном курсе Base cloudfort
Вас ждут 8 уроков с теорией и практикой, где опытные эксперты поделятся своими кейсами и реальными примерами. Обучение будет проходить в формате видеолекций и общения с преподавателями в чате, так что у вас всегда будет поддержка и ответы на вопросы.
Что вы изучите:
— Ускорение сайтов и защиту от DDoS-атак.
— Основы CDN и методы балансировки нагрузки.
— Принципы работы с медиахранилищем и адаптацией медиаконтента.
— Как запустить онлайн-трансляцию без лишних затрат.
Участники также получат бесплатный доступ к новому продукту cloudfort для защиты и ускорения сайтов. Сервис позволяет создавать S3-хранилища, ускорять веб-ресурсы и включать защиту от кибератак.
Регистрируйтесь на курс по ссылке.
Реклама ПАО «ВымпелКом», beeline.ru
erid: LjN8K9NV5
📑 Пагинация страниц при проектировании API: основные методы
🔹 На основе смещения:GET /orders?offset=0&limit=3
🔹 На основе курсора:GET /orders?cursor=xxx
🔹 На основе страницы:GET /items?page=2&size=3
🔹 На основе ключа:GET /items?after_id=102&limit=3
🔹 На основе времени:GET /items?start_time=xxx&end_time=yyy
🔹 Гибридная пагинация:GET /items?cursor=abc&start_time=xxx&end_time=yyy
👉 Читать подробнее о достоинствах и недостатках
#проектирование_систем #инфографика
Раскатили фан на полную. Т-Банк устраивает ИТ-пикник 17 августа и зовет вас на отдых с друзьями и близкими. Будет больше 17-ти ИТ-партнеров фестиваля. В программе воркшопы, лекции от спикеров известных компаний, нетворкинг, выступления топовых музыкантов и детская зона.
Успейте зарегистрироваться
erid:2VtzquvNr47
Реклама. АО "Тинькофф Банк", ИНН 7710140679, лицензия ЦБ РФ № 2673
👾 Дуэт для старта в Data Science
Когда все казалось потерянным и надежда на карьеру в DS и аналитики исчезала. Он часами изучал возможности, но так и не находил выхода.
Но появилась она, с предложением, которое изменит всё…
...до 30 июня курс по математике за полцены и курс по Machine Learning в подарок
🛍14 990 ₽ (вместо 29 990 ₽)🛍
Что ждёт вас на курсе:
⭐️Полугодовая программа от преподавателей ВМК МГУ
⭐️47 видеолекций и 150 практических заданий
⭐️Бессрочный доступ ко всем материалам курса
⭐️Развернутая обратная связь по всем домашним заданиям и ссылки на полезные дополнительные материалы
🫶 Воспользуйтесь шансом, чтобы начать свой путь в Data Science – https://proglib.io/w/6c870a16
👋 Slack уходит из России: чем заменить зарубежный сервис
15 июня стало известно, что корпоративный мессенджер Slack уходит из России. Мы подготовили коллекцию аналогов Slack и других зарубежных сервисов, которые больше недоступны в России. Сохраняйте в заметки!
#новости
Начните обучение в магистратуре в Центральном университете уже на 3-м курсе бакалавриата!
Центральный университет — современный вуз, созданный вместе с ведущими ИТ-компаниями: Т-Банком, Авито и другими.
Учебу реально совместить с последними курсами бакалавриата или действующей работой. Обучение занимает 20 часов в неделю в вечернее время в первый год, а занятия проводят в центре Москвы профессоры из МГУ, МФТИ, РЭШ и практики из индустрии. Обучение в университете построено по принципам ИТ-компаний, со средой, способствующей росту и развитию.
У каждого студента будет:
- личный ментор по траектории обучения;
- доступ к карьерному центру с коучами и консультантами;
- опыт работы в проектах 30+ компаний-партнеров уже во время обучения;
- диплом гособразца.
Участвуйте в онлайн-отборе, чтобы выиграть грант на обучение до 1,2 млн рублей. Больше подробностей про университет и конкурс грантов по ссылке!
erid:2VtzqvQUvo9
Реклама, АНО ВО «Центральный университет», ИНН 7743418023
🛠️ Set в JavaScript: теперь с новыми суперспособностями
Узнайте о грядущих обновлениях Set в JavaScript, включая новые методы union, intersection, difference и другие. Подробный обзор и примеры использования.
🔗 Читать статью
🔗 Зеркало