proglibrary | Технологии

Telegram-канал proglibrary - Библиотека программиста | программирование, кодинг, разработка

77043

Все самое полезное для программиста в одном канале. Список наших каналов: https://t.me/proglibrary/9197 Учиться у нас: https://proglib.io/w/a32a0d94 Обратная связь: @proglibrary_feedback_bot По рекламе: @proglib_adv Прайс: @proglib_advertising

Подписаться на канал

Библиотека программиста | программирование, кодинг, разработка

🐧 Подборка шпаргалок по Linux: на заметку разработчику

#шпаргалки

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

🎉 Всех причастных с праздником!

#назлобудня

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

🍉 Подборка лучших статей «Библиотеки программиста» за сентябрь: сохраняй в заметки, чтобы не пропустить #самыйсок

😮 SQL: от Тетриса до ИИ — неожиданные возможности языка баз данных
⚛️🔄 Улучшенная обработка асинхронных операций в React 19
🔟🏩 ТОП-10 перспективных студий разработки: лучшие компании для вашего карьерного роста
🏗 3 основных шаблона событийно-ориентированной архитектуры
🐘🔧 Расширение pg_variables: мощная альтернатива временным таблицам в PostgreSQL
👍 25 полезных HTML тегов, элементов и атрибутов, которые должен знать каждый фронтендер
🚀 Продвинутый TypeScript: 15 приемов для создания надежного кода
🛠 Сага: эффективный шаблон микросервисной архитектуры
🏃 Самоучитель по Go для начинающих. Часть 16. Тестирование кода и его виды. Table-driven подход. Параллельные тесты
💡🎨 Источники вдохновения для UI/UX-дизайнеров и фронтендеров: 50 полезных ресурсов

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

Помянем пиратские APK: Google начал блокировать пиратские приложения, которые установлены не из Play Market.

Самое обидное, что у школьников перестал работать Minecraft. Но есть выход — не обновляться до последней ОС. Тогда есть шанс ненадолго остаться «пиратом».

На форумах уже вовсю идёт поиск, как обойти блокировку.

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

Российские компании начали активно нанимать программистов из Африки

Наши компании массово набирают дешевых кодеров из Африки, чтобы сбить зарплаты российских специалистов. Количество вакансий для африканских разработчиков выросло в 10 раз, преимущественно для специалистов из Зимбабве, Камеруна и Кении. Российские бизнесы предпочитают платить зарубежным сотрудникам гораздо меньше.

Конечно, есть сомнения по качеству таких сотрудников


👉 Ссылка на новость

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

💻🔍💼 Кризис IT-рынка: как джуны и кадровый голод меняют правила игры

В условиях нехватки опытных специалистов и наплыва джунов, IT-компании вынуждены искать нестандартные подходы к найму. Рассмотрим основные тренды и стратегии адаптации рынка.

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

#почитать

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

😮 SQL: от Тетриса до ИИ — неожиданные возможности языка баз данных

Долгое время SQL использовали лишь для запросов и изменения записей в базах данных — для полноценного программирования в привычном смысле слова он не подходил. Однако добавление рекурсивных общих табличных выражений (CTE) сделало SQL полным по Тьюрингу. Рекурсивные CTE состоят из двух частей:

• Нерекурсивная часть (базовый случай) — создает начальные данные.
• Рекурсивная часть — может выполняться много раз, каждый раз используя результат предыдущего шага.

Благодаря CTE на SQL можно при желании реализовать любой алгоритм. Энтузиасты уже сделали:

Визуализацию множества Мандельброта с помощью ASCII-графики.
pallada-92/sql-3d-engine">3D-движок для рисования объемных фигур.
GPT на 500 строках SQL-кода. Подробная статья о реализации этого проекта опубликована здесь.
Трассировку лучей (это метод создания реалистичных изображений).

На прошлой неделе коллекция крутых SQL-проектов пополнилась еще одной интересной разработкой — версией «Тетриса».

Эта реализация демонстрирует несколько нестандартных SQL-техник, о которых стоит знать, даже если вы используете SQL только по прямому назначению:

Игровой цикл. В основе игры – рекурсивное общее табличное выражение (CTE). Оно создает бесконечный цикл, который инициализирует состояние игры, обновляет его на основе ввода пользователя и отрисовывает игру. Цикл продолжается, пока игра не закончится.
Вывод игры. Поскольку SQL-запрос обычно возвращает результат только после завершения, для отображения игры в реальном времени используется команда RAISE NOTICE. Эта команда выводит информацию в стандартный вывод, позволяя отображать игровое поле и другую информацию в процессе игры.
Пользовательский ввод. Обработка пользовательского ввода реализована через отдельную таблицу в базе данных. Эта таблица служит коммуникационной шиной между игрой и пользователем. Пользователь добавляет команды в эту таблицу, а игра их считывает.
Решение проблемы изоляции данных. Чтобы игра могла видеть новые команды, добавленные в таблицу ввода во время выполнения запроса, используется расширение dblink. Оно позволяет создавать новое подключение к базе данных с новым снимком данных, что дает возможность считывать самые последние команды пользователя.
Предотвращение кэширования. Чтобы PostgreSQL не кэшировал результаты запроса к таблице ввода, к запросу добавляется уникальный идентификатор итерации. Это заставляет базу данных выполнять запрос заново на каждой итерации игрового цикла.

Для управления состоянием игры и обработки игровых событий используются подзапросы и агрегатные функции.

• Подзапросы позволяют вычислить новое состояние игры после каждого хода, включая позицию фигуры, состояние поля, счет и т. д. К примеру, рекурсивный подзапрос используется для вычисления максимального количества линий, на которые может упасть текущая фигура.
• Агрегации применяются для подсчета очищенных линий, выбора фигуры с наименьшим рангом, обновления счета и уровня игры. Например, BOOL_OR() применяется для определения, есть ли хотя бы одно столкновение между фигурой и занятыми клетками на поле.

🔗 Подробнее читайте в статье
🔗 Зеркало

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

🤖 Напоминаем, что у нас есть еженедельная email-рассылка, посвященная последним новостям и тенденциям в мире искусственного интеллекта.

В ней:
● Новости о прорывных исследованиях в области машинного обучения и нейросетей
● Материалы о применении ИИ в разных сферах
● Статьи об этических аспектах развития технологий
● Подборки лучших онлайн-курсов и лекций по машинному обучению
● Обзоры инструментов и библиотек для разработки нейронных сетей
● Ссылки на репозитории с открытым исходным кодом ИИ-проектов
● Фильмы, сериалы и книги

👉Подписаться👈

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

⚛️🔄 Улучшенная обработка асинхронных операций в React 19

Новая функциональность в React 19 направлена, прежде всего, на улучшение:
☑️ Управления состоянием.
☑️ Обработки ошибок.
☑️ Работы с асинхронными операциями.

👉 Рассмотрим ключевые улучшения подробнее:
▪️ Actions предназначены для обработки асинхронных запросов и автоматизации управления отложенными состояниями, ошибками и оптимистичными обновлениями. Фронтендеры теперь могут работать с асинхронными операциями более интуитивно, сохраняя пользовательский интерфейс отзывчивым в любое время — даже когда запросы выполняются в реальном времени.
▪️ Улучшенная работа с формами: в React 19 появился новый хук useActionState, который предоставляет разработчикам встроенную поддержку для обработки состояний и отправки формы.
▪️ Оптимистические обновления — способ мгновенно показать пользователю предполагаемый финальный результат в интерфейсе, даже если в фоновом режиме продолжается обработка данных. Это делает приложение более отзывчивым, особенно в случаях плохого соединения или долгих запросов. Если при выполнении возникает ошибка, интерфейс возвращается к исходному состоянию.
▪️ В React 19 появилась новая возможность — использовать API use для работы с ресурсами, такими как промисы и контексты, прямо внутри функции рендеринга. Это позволяет использовать use даже в условных конструкциях, что ранее было невозможно с хуками.
▪️ Server Components в React 19 — новый способ рендеринга компонентов: рендеринг происходит заранее, либо один раз во время сборки, либо при каждом запросе на сервере, который отделен от клиентской части приложения. Похожим образом реализован серверный рендеринг в Next.js.
▪️ Server Actions — новая функция в React, позволяющая компонентам на клиенте вызывать асинхронные функции, выполняемые на сервере.

🔗 Читать статью полностью
🔗 Зеркало

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

Компания Tidelift провела опрос более 400 мэйнтейнеров опенсорсных проектов. Ниже — краткие выводы, а подробнее читайте в статье на OpenNET или в оригинале.

▪️60% мэйнтейнеров не получают оплату за свою работу, но 44% из них были бы не против её получить, а 24% связывают с этим часть дохода.
▪️Мэйнтейнеры тратят 11% времени на задачи по безопасности (против 4% в 2021 году), 50% — на рутину и 35% — на разработку новых возможностей.
▪️71% используют двухфакторную аутентификацию, а 48% мэйнтейнеров считают свою работу недооценённой.
▪️После инцидента с бэкдором в библиотеке xz 66% стали меньше доверять pull-запросам.
▪️45% мэйнтейнеров негативно относятся к ИИ-инструментам, и только 9% оценивают их положительно.

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

🔥 Релиз СУБД PostgreSQL 17

После года разработки опубликована новая стабильная ветка СУБД PostgreSQL 17, а PostgreSQL 12.x перестанут поддерживать уже 14 ноября.

📌 Что нового добавлено?

🔸 VACUUM: используется новая структура данных, которая потребляет до 20 раз меньше памяти, ускоряя работу и снижая нагрузку на ресурсы.
🔸 I/O: оптимизация кода WAL повысила пропускную способность записи до 2 раз. Новый интерфейс потокового ввода/вывода ускоряет перебор данных и обновление статистики.
🔸 Оптимизация запросов: ускорены запросы с IN, улучшена работа с индексами BRIN и CTE, а также использованы SIMD-инструкции для ускорения вычислений.
🔸 JSON: добавлена поддержка SQL/JSON, включая JSON-TABLE, jsonpath, и функции для работы с JSON, такие как JSON_EXISTS и JSON_QUERY.
🔸 SQL MERGE: расширены возможности для объединения INSERT, UPDATE и DELETE, добавлена поддержка выражения RETURNING и обновления представлений.
🔸 Загрузка данных: увеличена скорость экспорта данных в команде COPY, добавлена опция ON_ERROR для продолжения импорта после ошибок.
🔸 Секционированные таблицы: добавлена поддержка уникальных идентификаторов и техники оптимизации Constraint exclusion.
🔸 Foreign Data Wrapper: поддержка передачи подзапросов EXISTS и IN на внешний сервер.
🔸 Collation: встроенный движок для обработки локали обеспечивает единое поведение сортировки и сопоставления символов на всех платформах.
🔸 Логическая репликация: упрощён переход на новый релиз без удаления слотов, добавлена поддержка failover и утилита pg_createsubscriber.
🔸 TLS: новая опция sslnegotiation для настройки защищённых TLS-соединений через ALPN.
🔸 Резервное копирование: поддержка инкрементальных бэкапов и новая утилита pg_combinebackup для их объединения. В pg_dump добавлена опция --filter.
🔸 EXPLAIN: добавлены новые опции для вывода информации о времени чтения/записи и использовании памяти.
🔸 Прогресс VACUUM: добавлен индикатор прогресса при работе с индексами.
🔸 pg_wait_events: новое системное представление для анализа причин ожидания сеансов в сочетании с pg_stat_activity.

👉 Новость на OpenNET & Официальный анонс

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

Привет, друзья! 👋

Мы хотим обсудить важную тему — токсичность в среде разработчиков и значимость поддержки и наставничества. Нам интересно узнать ваше мнение и опыт! Поделитесь своими мыслями, и самые полезные советы мы включим в нашу статью. Вот несколько вопросов для вас:

🤔 Приходилось ли вам сталкиваться с токсичными коллегами на работе? Как вы справлялись с этой ситуацией?

🌟 Какие качества вы считаете важными для хорошего наставника в IT-сфере?

💡 Какие советы вы бы дали тем, кто хочет создать более поддерживающую и позитивную рабочую атмосферу?

Спасибо за ваше участие! Ваши ответы помогут сделать рабочую среду лучше для всех. 🚀

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

IT-индустрия стремительно меняется: миллениалы теряют позиции, на пике популярности — зумеры

Сейчас в IT преобладают специалисты моложе 25 лет. Их число стремительно растет.

И в этой динамике все чаще слышно:

Если тебе за 40, в крупных IT-компаниях может быть непросто.

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

🔟🏩 ТОП-10 перспективных студий разработки: лучшие компании для вашего карьерного роста

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

Однако устраиваться хоть в какую-нибудь студию, каких сейчас много — не лучшее решение, поскольку на старте бывают проблемы с финансированием и ни о какой стабильности не может быть и речи.

🔗 Читать статью
🔗 Зеркало

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

🙌 Хардкорный вышмат для тех, кто интересуется ML, AI, DS

Начать с вводных занятий можно здесь, ответив всего на 4 вопроса – https://proglib.io/w/3077986f

Что будет на демо?

🔹Вводный урок от CPO курса;

🔹Лекции со всеми преподавателями МГУ по темам: теория множеств, непрерывность функции, основные формулы комбинаторики, матрицы и операции над ними, градиентный спуск;

🔹Практические задания и дополнительные материалы!

⚡️Переходите и активируйте – https://proglib.io/w/3077986f

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

Мы часто говорим об AI, но так ли он полезен в работе кодера?

Исследование Uplevel среди 800 программистов выявило неожиданные результаты: использование ИИ-инструментов, таких как GitHub Copilot, не повысило продуктивность и привело к увеличению ошибок в коде на 41%

В ходе двух трёхмесячных периодов программисты сначала работали с традиционными инструментами, а затем с GitHub Copilot.


После этого исследования всё больше убеждаешься, что ИИ — для выполнения простой рутины.

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

OpenAI выпустила новый инструмент — Canvas

Canvas — это визуальный инструмент для ChatGPT. Теперь можно взаимодействовать с моделью, перемещать и редактировать текст, создавать новые документы и анализировать большие объемы данных.

Основные преимущества для кодеров в Canvas:

▪️ Подсказывает, как оптимизировать код
▪️ Добавляет логи для отладки кода
▪️ Держит в голове проект целиком
▪️ Переносит код на другие языки программирования

Доступ будет доступен в ChatGPT

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

Гарвардские студенты создали умные очки с технологией распознавания лиц

На самом деле они использовали Meta Smart Glasses, в которые добавили своего софта. Теперь, когда смотришь через очки на чьё-то лицо, они его идентифицируют, включая их имя, адрес и место работы, но не всегда выдаётся верный результат.

Разработчики приняли решение не публиковать код, так как их целью было продемонстрировать проблему неконтролируемого доступа к личным данным.

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

🤯 Знаете ли вы этот хак на GitHub?

1️⃣ Откройте любой GitHub-репозиторий
2️⃣ Замените .com на .dev
3️⃣ Просмотрите код репозитория в инстансе VS Code!

И да, можно просто на клавиатуре нажать кнопку «.».

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

💡8 ключевых концепций в предметно-ориентированном проектировании (Domain-driven design, DDD): на заметку разработчику

👉 Источник

#инфографика

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

MyLens.ai — нейронка мастхев для ютуба

Нейронка пересказывает видео с ютуба. Может справиться с часовыми видео за пару секунд.

▪️ Можно закинуть любое видео
▪️ Саммари появляется мгновенно. Нейросеть создаст план, схемы и выделит ключевые цитаты
▪️ Если загружаете свой собственный ролик — программа даст советы, как сделать контент вирусным

Единственный минус: ограничение на три видео в день

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

📌 Шпаргалка по Linux администрированию

Эта шпаргалка представляет собой краткое руководство по основным темам администрирования Linux для начинающих и мидл+ инженеров DevOps.

Стоит отметить пункты: «Infrastructure as Code» и «Monitoring & Logging»

Что вы считаете полезным?

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

⚙️ Новый редактор профилей в VS Code упрощает управление вашими профилями в одном месте, так что вы можете легко переключаться между различными настройками.

☝️ Посмотрите, как вы можете быстро просмотреть все ваши существующие профили и создать новый профиль + настроить источник его содержимого.

#инструменты

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

Интеграция с Tabby

Tabby
— это самостоятельный помощник по кодированию на основе ИИ, предлагающий альтернативу GitHub Copilot с открытым исходным кодом и локально.

Он может похвастаться несколькими ключевыми функциями:

▪️ Автономный, без необходимости в СУБД или облачном сервисе
▪️ Интерфейс OpenAPI, легко интегрируемый с существующей инфраструктурой (например, Cloud IDE)
▪️ Поддерживает GPUs потребительского уровня

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

⚠️ Что происходит: подборка важных новостей

💗 Создатель онлайн-библиотеки Flibusta Stiver предупредил об окончании работы проекта и своём уходе из жизни

🤖 Проект по анализу использования языка людьми в интернете закрылся, потому что нейросети слишком загрязнили данные

💰 СМИ: Дуров на допросе во Франции заявил, что зарабатывает за год один эмиратский дирхам (25 рублей)

🧑‍💻 В Ижевске выпустили в релиз скульптуру программиста

🏠 «Яндекс Карты» научились строить маршруты внутри зданий

⚛️ Физики только что обнаружили самый редкий распад частиц из наблюдавшихся

🌐 Qualcomm объявила о решении купить Intel полностью, а не часть подразделений

🚗 Китайский производитель электрокаров Zeekr начнёт отключать машины, ввезённые в РФ по «серым» схемам

💡 Учёные наконец разобрались, как статическое электричество возникает от трения

Какие новости пропустили? Поделитесь с нами.

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

Берём на вооружение: разработчик опубликовал скрипт, который клонирует любой сайт

Ситуация принимает интересный оборот: кто-то на основе этого кода создал расширение и продаёт его на Product Hunt за 10$. Весь этот ажиотаж взорвал Twitter — разработчики не остались в стороне и быстро отреагировали, разместив оригинальный скрипт бесплатно на GitHub

Скрипт, полезный особенно бесплатно, так что сохраняем

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

Yandex Cloud ускорит разработку продуктов в облаке при помощи Yandex Serverless Integrations

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

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

Помимо этого, Yandex Serverless Integrations включает в себя инструменты EventRouter для передачи событий между сервисами и API Gateway для создания шлюзов между внешними и облачными сервисами.

Читайте подробнее в статье.

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

💡 Зачем использовать distributed lock: на заметку разработчику

Распределённая блокировка (distributed locking) — это метод координации доступа к общим ресурсам между несколькими процессами или узлами в распределённой системе.

👉 Источник

#инфографика

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

Telegram начнет передавать данные пользователей по запросам властей

В телеграм обновили Terms of Service and Privacy Policy, теперь те, кто нарушает правила сервиса, могут быть раскрыты соответствующим органам в ответ на обоснованные юридические запросы. Эти меры должны отпугнуть преступников

Также обновили Telegram search: с помощью AI он отсеивает весь проблемный контент

➡️ Ссылка на новость

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

🤖 Supermaven — один из самых быстрых ИИ-помощников для разработчика. Доступен в виде расширения для IDE от Jetbrains, VSCode или Neovim.

👉 Скачать

#инструменты

Читать полностью…
Подписаться на канал