Библиотека программиста | программирование, кодинг, разработка
88.4K subscribers
3.14K photos
148 videos
88 files
6.36K links
Все самое полезное для программиста в одном канале.

Список наших каналов: https://tttttt.me/proglibrary/9197
Учиться у нас: https://proglib.io/w/a32a0d94

Обратная связь: @proglibrary_feedback_bot

По рекламе: @proglib_adv
Прайс: @proglib_advertising
Download Telegram
💬 Что такое транзакции и какие бывают уровни изоляции транзакций в контексте баз данных?

👉 Транзакции — это последовательность операций, которые либо полностью выполняются, либо не выполняются вовсе, обеспечивая свойства ACID (атомарность, согласованность, изоляция, долговечность).

👉 Выбор уровня изоляции зависит от требований к консистентности данных и допустимости параллелизма транзакций.

📌 Проблемы параллельного доступа с использованием транзакций:

🔸 Потерянное обновление (англ. lost update) — при одновременном изменении одного блока данных разными транзакциями теряются все изменения, кроме последнего.
🔸 «Грязное» чтение (англ. dirty read) — чтение данных, добавленных или изменённых транзакцией, которая впоследствии не подтвердится (откатится).
🔸 Неповторяющееся чтение (англ. non-repeatable read) — при повторном чтении в рамках одной транзакции ранее прочитанные данные оказываются изменёнными.
🔸 Фантомное чтение (англ. phantom reads) — одна транзакция в ходе своего выполнения несколько раз выбирает множество строк по одним и тем же критериям.

📌 Уровни изоляции транзакций определяют, как данные видны другим транзакциям и как они защищены от одновременных изменений. Уровни включают:

1. Read uncommitted: наименьший уровень изоляции, позволяет читать незафиксированные данные, что может привести «грязному» чтению.
2. Read committed: позволяет избежать «грязного» чтения, но не устраняет феномены неповторяемого чтения и фантомного чтения.
3. Repeatable read: предотвращает неповторяемые чтения, но может не предотвратить фантомное чтение.
4. Serializable: самый высокий уровень изоляции, который предотвращает фантомное чтение, но может снижать производительность из-за блокировок.

#вопросы_с_собесов
🧨 Из грязи в князи: вкатился с нуля в IT за границей

Мы ищем тех, кто начинал карьеру в IT за границей без опыта и специальной подготовки. Хотим услышать ваши истории успеха и препятствий, с которыми вы столкнулись.

📝 Если вы готовы рассказать свою историю — напишите нам на hello@proglib.io
🧰 IntelliJ Developer Tools Plugin — аналог CyberChef, но для продуктов JetBrains. Это универсальный набор инструментов на все случаи жизни внутри IDE, которые могут пригодиться разработчику.

👉 GitHub
⚡️Итоги недели в мире ИИ и обзоры новых сервисов

У нас вышла очередная статья на 📰 по мотивам еженедельной рассылки про последние новости и тенденции в мире ИИ.

Ниже — небольшая выдержка из статьи, а целиком читайте здесь 👈

💬Новости

▫️ Создан новый тест для ИИ — WMDP (Weapons of Mass Destruction Proxy), который будет проверять модели на знание:
- способов создания и применения всех видов оружия массового поражения;
- методов взлома систем кибербезопасности.
▫️Глава OpenAI Сэм Альтман обнародовал переписку с Илоном Маском, в которой последний указывает на то, что ожидает от OpenAI прибыли. Это противоречит недавним заявлениям Маска.

🛠 Инструменты

▫️Corgea — находит и автоматически исправляет уязвимости в коде.
▫️GenWebBilder — делает полнофункциональные веб-сайты по скетчам и скриншотам.
▫️Framedrop AI — автоматически конвертирует длинные видео, влоги и стримы в рилсы и короткие клипы для X и TikTok.
▫️Vocalo AI — личный репетитор, который научит свободно говорить по-английски.

👍 Робототехника

Профессор Кен Голдберг из Университета Беркли поделился соображениями по поводу технических, этических и экономических проблем, которые препятствуют широкому внедрению ИИ-роботов на данном этапе.

➡️ Вы можете подписаться на email-рассылку здесь
Please open Telegram to view this post
VIEW IN TELEGRAM
🧑‍💻 Статьи для IT: как объяснять и распространять значимые идеи

Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.

Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.

Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.

👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
🏃 Самоучитель по Go для начинающих. Часть 10. Введение в ООП. Наследование, абстракция, полиморфизм, инкапсуляция

В этой части самоучителя разберем основные понятия и принципы объектно-ориентированного программирования, а также рассмотрим примеры их реализации в языке Go. В конце статьи применим изученный материал на практике, решив 2 интересные задачи.

👉 Читать гайд

📌 Остальные части в серии:

1. Особенности и сфера применения Go, установка, настройка
2. Ресурсы для изучения Go с нуля
3. Организация кода. Пакеты, импорты, модули. Ввод-вывод текста.
4. Переменные. Типы данных и их преобразования. Основные операторы
5. Условные конструкции if-else и switch-case. Цикл for. Вложенные и бесконечные циклы
6. Функции и аргументы. Области видимости. Рекурсия. Defer
7. Массивы и слайсы. Append и сopy. Пакет slices
8. Строки, руны, байты. Пакет strings. Хеш-таблица (map)
9. Структуры и методы. Интерфейсы. Указатели. Основы ООП
📚 Напоминаем про наш полный курс «Самоучитель по 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
Please open Telegram to view this post
VIEW IN TELEGRAM
🆕 GeForce RTX 5080, возможно, получит 12 228 CUDA-ядер и 256-битную шину

До появления видеокарт Nvidia поколения Blackwell ещё довольно много времени, однако в сети начинают появляться новые подробности о предстоящих решениях. Сейчас стало известно, какую шину получат карты среднего уровня.

🔗Подробнее
🎙️В гостях у подкаста «Мы обречены» интересный гость с темами, которые связаны не только с ИТ: темные зависимости, отцы, дети, и страшное запутанное время пост-правды, когда все кругом кишит айтишными мошенниками.

📺 Смотреть

#подкасты
👩‍💻 14 талантливых женщин, сделавших неоценимый вклад в ИТ

Дочь распутного поэта, католическая монахиня, голливудская звезда и контр-адмирал — что может их объединять? Вклад в развитие ИТ!

👉 Читать статью
👉 Зеркало
💬 Что такое индексы и составные индексы в контексте баз данных (например, MySQL)? Для чего используется инструкция EXPLAIN?

Индексы являются инструментом для оптимизации SQL-запросов. Они ускоряют доступ к данным, сокращая количество операций чтения и сравнения.

🔸 Индексы — это отсортированные наборы значений для конкретных колонок. Они позволяют базе данных быстрее находить строки, соответствующие условиям запроса, особенно в больших таблицах.

🔸 Составные индексы — это индексы, построенные на нескольких колонках. Они полезны для запросов, которые используют несколько колонок в условиях WHERE, JOIN или ORDER BY. Порядок колонок в составном индексе важен, так как он влияет на эффективность индекса.

🔸 EXPLAIN в MySQL используется для анализа того, как выполняются SQL-запросы. Она показывает, какие индексы используются, сколько строк должно быть прочитано, и помогает определить, как можно оптимизировать запросы.

👉 Подробнее

#вопросы_с_собесов
🆕 Midjourney V6 может генерировать одинаковых персонажей в разных позах

Character Reference — это инструмент в Midjourney, позволяющий генерировать изображения одного и того же персонажа с различных ракурсов на основе
заданного эталонного изображения.

🔗Подробнее
👨‍💻 12 ИТ-профессий, не требующих умения программировать

IT-профессионалы — это не только программисты, QA-тестировщики и DevOps-инженеры. В айтишном закулисье занято множество специалистов, которые не задействованы в написании кода и поддержке приложений — они работают рекрутерами, дизайнерами, маркетологами, техническими писателями, бизнес-аналитиками и менеджерами по продажам.

Работа этих вспомогательных специалистов — неотъемлемая часть успеха любой ИТ-компании.

Подробнее о том, чем занимаются такие специалисты, читайте в нашем материале.

👉 Читать статью
🆕 Две руки, две ноги и GPT-4: OpenAI внедрили ИИ в робота

Основанная в 2022 году, Figure AI разработала универсального робота под названием Figure 01, который имитирует человеческий облик и движения.

🔗Подробнее
⛓️🗄️ Соединения в SQL. Часть 1. Типы соединений и простые примеры

Соединения — это способ получения данных из нескольких таблиц с помощью SQL. В первой части статьи мы расскажем о типах соединений и рассмотрим несколько базовых примеров.

🔗Читать статью