Библиотека программиста | программирование, кодинг, разработка
82.9K subscribers
3.84K photos
178 videos
89 files
6.89K links
Все самое полезное для программиста в одном канале.

По рекламе: @proglib_adv

Курс по ML: https://clc.to/eLH_zQ

Для обратной связи: @proglibrary_feeedback_bot

РКН: https://gosuslugi.ru/snet/67a5ba2901234b69883a4d46
Download Telegram
👨‍💻 Большая библиотека Open-Source проектов

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

Выбираете нужную категорию или инструмент, и OpenAlternative предложит вам список альтернативных решений с подробными описаниями. Каждый инструмент оценивается по активности на GitHub, количеству звезд и форков.

➡️ Ссылка на ресурс

🐸 Библиотека программиста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
💯143😁2🙏1
🖼️ Обновление JetBrains AI: новый тариф, поддержка MCP и поиск в Интернете

Разработчики JetBrains представили обновление нейросетевого помощника.

Что нового:

– Редактирование нескольких файлов: теперь ассистент может вносить изменения одновременно в несколько файлов проекта, что упрощает работу с кодом.​

– Вставка кода из чата: появилась кнопка «Применить», позволяющая напрямую переносить предложенные фрагменты кода из чата в файлы проекта без необходимости копирования и вставки.​

– Поддержка MCP: добавлена возможность предоставлять ассистенту дополнительный контекст из других инструментов или API, улучшая качество предлагаемых решений.​

– Поиск в Интернете: в чат встроена команда /web, позволяющая искать информацию в Интернете прямо из IDE.​

– Новые языковые модели: JetBrains AI теперь поддерживает модели OpenAI GPT-4.1, Gemini 2.5 Pro и Claude 3.7 Sonnet.

Исключение файлов из контекста: пользователи могут исключать определённые файлы или директории из анализа ассистента, редактируя файл .aiignore, что помогает защитить конфиденциальные данные.​

🐸 Библиотека программиста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11👾2🥱1
🎨 pad ws — бесконечная доска для программистов со встроенным редактором кода и терминалом

Инструмент предлагает привычные элементы онлайн-досок: текст, фигуры, рисунки от руки и стикеры. Отличие — поддержка инструментов для разработчиков: можно добавлять окна редактора (например, Visual Studio Code, Cursor) и терминал. Это превращает доску в полноценную среду для разработки и мозговых штурмов.

➡️ Для желающих доступна бесплатная демо-версия.
➡️ Также можно развернуть на собственном сервере (пока проект готов к локальному запуску через docker-compose, но требует доработки для продакшена).

🐸 Библиотека программиста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
🙏10👍52
📊 Rybbit Analytics — альтернатива Google Analytics

Проект, по заверению разработчиков, в 10 раз более интуитивный, а настройка системы занимает всего пару минут. Исходный код решения написан на TypeScript и JavaScript и опубликован на GitHub под лицензией GNU Affero General Public License v3.0.

Возможности Rybbit Analytics:

– Все ключевые показатели веб-аналитики, включая сеансы, уникальных пользователей, просмотры страниц, показатель отказов и продолжительность сеанса.
– Никаких файлов cookie или отслеживания пользователей (соответствие GDPR и CCPA).
– Настраиваемые цели, данные по удержанию, пути пользователя и панели мониторинга.
– Расширенная фильтрация с более чем 15 измерениями.
– Пользовательские события.
– Трехуровневое отслеживание местоположения (страна -> регион -> город) с визуализацией на карте.
– Поддержка работы неограниченного количества сайтов.

➡️ Github проекта.
➡️ Демо-версия, анализирующая данные с реального сайта.

🐸 Библиотека программиста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥12👍82
🏌️Text-to-SQL: делаем работу с данными проще

Google написал гайд, как больше не мучаться с огромными SQL-запросами, а передать всю работу ИИ. В статье Google Cloud выделяют ключевые методы повышения качества text-to-SQL:

– Десятки техник превращения человеческого текста в SQL-запросы.
– Примеры к каждому блоку теории.
– Задачи на отработку и закрепление навыков.
– Готовые инструменты и промпты для работы.

➡️ Ссылка на гайд

🐸 Библиотека программиста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
😁10👍5👾21
Оптимизация производительности с помощью профилирования

Проблема: выявление узких мест в производительности приложения может быть сложной задачей без надлежащих инструментов профилирования.

Решение: в книге Code Like a Pro in Rust (2024) рассматривается использование инструментов профилирования, таких как perf и cargo bench, для анализа и оптимизации производительности Rust-приложений.

Пример кода:

fn compute() -> u64 {
(1..=1_000_000).sum()
}

fn main() {
let result = compute();
println!(«Result: {}», result);
}

Для профилирования можно использовать команду:

cargo bench

Преимущества:

— Выявление и устранение узких мест в производительности.
— Повышение эффективности и скорости приложения.
— Интеграция с существующими инструментами разработки.

➡️ Больше полезных книг — в нашем канале @progbook

🐸 Библиотека программиста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👍151
📊 Анализируем вилки зарплат IT вакансий

VILKY — это бесплатный сервис, который анализирует зарплатные вилки по открытым IT-вакансиям и помогает найти работу мечты. Данные регулярно обновляются с вакансий России и СНГ, предоставляя подробную информацию о стоимости каждой должности, грейда и навыка на рынке.

➡️ Сохраняем и ищем работу мечты.

🐸 Библиотека программиста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
😁31
⌨️ Git команды которые должен знать каждый разработчик.

Сохраняем и не теряем.

🐸 Библиотека программиста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
18👍11
🎮 Быстрая сортировка (QuickSort) с использованием рекурсии

Проблема: cортировка больших массивов может быть неэффективной при использовании простых алгоритмов, таких как сортировка пузырьком или вставками.

Решение: Автор в книге Algorithms and Data Structures for OOP With C
демонстрирует реализацию QuickSort — одного из самых эффективных алгоритмов сортировки на практике, с рекурсивным разбиением массива.

Пример кода:

public class QuickSortExample
{
public void QuickSort(int[] arr, int low, int high)
{
if (low < high)
{
int pi = Partition(arr, low, high);

QuickSort(arr, low, pi - 1);
QuickSort(arr, pi + 1, high);
}
}

private int Partition(int[] arr, int low, int high)
{
int pivot = arr[high];
int i = (low - 1);

for (int j = low; j < high; j++)
{
if (arr[j] < pivot)
{
i++;
(arr[i], arr[j]) = (arr[j], arr[i]);
}
}

(arr[i + 1], arr[high]) = (arr[high], arr[i + 1]);
return i + 1;
}
}

Преимущества:
— Быстрая сортировка даже больших наборов данных
— Средняя сложность O(n log n)
— Эффективное использование памяти за счет рекурсии

➡️ Больше полезных книг — в нашем канале @progbook

🐸 Библиотека программиста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
🤩6👍52🥱1
😎 Прогрессивный JSON

Знаете, что такое прогрессивный JPEG? Если нет, вот краткое объяснение. В прогрессивных JPEG-изображениях картинка загружается сначала размытым изображением, а затем постепенно становится чёткой по мере поступления данных. Что если применить тот же принцип к JSON?

➡️ В статье подробно рассмотрен этот подход, включая сравнение с прогрессивными изображениями, потоковой передачей данных и возможностями React Server Components.

🐸 Библиотека программиста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
😁15👍2👾1
👨🏻‍🎨 drawDB — инструмент для проектирования баз данных

Редактор диаграмм, работающий прямо в браузере. С помощью drawDB можно всего за несколько кликов создавать схемы, экспортировать SQL-сценарии и настраивать интерфейс под свои задачи.

Инструмент поддерживает:
– MySQL
– PostgreSQL
– SQLite
– MariaDB
– SQL Server.

➡️ Github проекта.

🐸 Библиотека программиста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
10👏2🤔2
Что такое алгоритмы и какими они бывают

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

🎯 Для чего нужны алгоритмы и кто их использует:

Алгоритмы нужны для того, чтобы решать задачи, получать предсказуемый результат и выявлять ошибки в работе, если результат оказался неожиданным.

Примеры применения:

Программисты — структурируют логику программ.
Data Scientists — анализируют данные и делают прогнозы.
DevOps-инженеры — автоматизируют процессы развертывания и доставки ПО.
Тестировщики — создают алгоритмы для поиска ошибок.
Менеджеры проектов — следуют методологиям (Scrum, Agile) как алгоритмам работы.
Продажники — используют скрипты и воронки как алгоритмы общения с клиентами.

🧬 Основные свойства алгоритмов:

Конечность — должен завершаться.
Предсказуемость — одинаковые входные данные → одинаковый результат.
Дискретность — делится на отдельные шаги.
Понятность — должен быть понятен исполнителю.
Определённость — шаги не допускают двусмысленного толкования.

🧩 Виды алгоритмов:

1. Линейный
Последовательные действия.
Пример: расчёт площади трапеции.

2. Ветвящийся (разветвлённый)
Действия зависят от условий (if/else).
Пример: поведение пешехода в разных странах.

3. Циклический
Повторяющиеся действия до выполнения условия (while, for).
Пример: поиск значения в списке.

4. Рекурсивный
Алгоритм вызывает сам себя.
Пример: проверка палиндрома.

🐸 Библиотека программиста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥105🤔3😢2👍1
📚 Основы алгоритмов на одной шпаргалке

Хочешь разобраться, чем массив отличается от хеш-таблицы? Этот шпаргалка — для тебя.

✍️ 9 ключевых структур данных:
🟢 Массив
🟢 Стек
🟢 Очередь и дек
🟢 Хеш-таблица
🟢 Связанный список
🟢 Двоичное дерево поиска
🟢 Граф

✔️ Для каждой:
🟢 Простое объяснение
🟢 Примеры
🟢 Основные задачи и особенности

🐸 Библиотека программиста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11👾62🤔1
⌨️ Создаём полноценные базы данных c помощью Database Build

Внутри встроено несколько ИИ, которые делают из запроса готовую БД с таблицами и диаграммами.

Более того: в таблицах можно генерировать данные, импортировать их в SQL или грузить на сервер.

Пробуем бесплатно здесь.

🐸 Библиотека программиста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
😁122🤔1
👋Большая шпаргалка по командам Linux на русском языке

В одном месте собраны все основные команды и консольные утилиты Linux.

➡️ Ссылка на шпаргалку.
➡️ Скачать в PDF

🐸 Библиотека программиста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🥰8👍7🤔21
🎮 Реактивность и вычисляемые свойства для фильтрации данных

Проблема: необходимо динамически обновлять интерфейс в зависимости от ввода пользователя, например, при фильтрации списка элементов.

Решение: в книге «Building Real-World Web Applications with Vue.js 3» автор показывает, как эффективно использовать реактивные данные и вычисляемые свойства для реализации фильтрации в реальном времени.

Пример кода:

<template>
<div>
<input v-model="searchQuery" placeholder="Поиск..." />
<ul>
<li v-for="item in filteredItems" :key="item.id">{{ item.name }}</li>
</ul>
</div>
</template>

<script setup>
import { ref, computed } from 'vue';

const items = ref([
{ id: 1, name: 'Яблоко' },
{ id: 2, name: 'Банан' },
{ id: 3, name: 'Вишня' },
]);

const searchQuery = ref('');

const filteredItems = computed(() => {
return items.value.filter(item =>
item.name.toLowerCase().includes(searchQuery.value.toLowerCase())
);
});
</script>

Преимущества:

— Автоматическое обновление интерфейса без явных манипуляций с DOM.
— Легкость в реализации фильтрации для больших списков.
— Удобное и понятное API для работы с реактивностью.

➡️ Больше полезных книг — в нашем канале @progbook

🐸 Библиотека программиста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔64🥱1👾1
😱 Тренажёр для понимания кода

Работает всё просто: есть фрагменты кода, а вы должны понять, что он должен вывести. Есть примеры из JS, C++, Java, Python и JavaScript и другие.

Пользуемся здесь.

🐸 Библиотека программиста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9😁53
🔐 10 хакерских скриптов на Python

Как насчёт того, чтобы заглянуть по ту сторону Python-разработки?

📌 В этом разборе — настоящие боевые техники, которые используют:
— самомодифицирующийся код
— перехват нажатий клавиш (keylogger)
— скрытые скриншоты экрана
— исполнение из RAM — без следов на диске
— маскировка под легитимные процессы
— обход антивирусов и мониторинга

⚠️ Всё — в образовательных целях. Эти приёмы помогают понять, как думает атакующий, и прокачать навыки кибербезопасности и защиты приложений.

👉 Подробнее в нашей новой статье: https://proglib.io/sh/Eu3Dm2GYbh

Библиотека питониста
#буст
8👍5🥱3😢2👾1
📖 Небольшая шпаргалка по SQL

Прописаны все виды команд JOIN, а также их визуал.

Крайне полезная штука — сохраняем.

🐸 Библиотека программиста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👍311🤔1🤩1👾1
🎮 Управление состоянием с использованием useReducer

Проблема: управление сложным состоянием в React-приложении может стать трудным и запутанным, особенно при наличии множества состояний и действий.

Решение: в книге «Learn React Hooks, 2nd Edition» автор предлагает использовать хук useReducer для централизованного управления состоянием. Это позволяет более эффективно обрабатывать сложные состояния и действия.

Пример кода:

import React, { useReducer } from 'react';

const initialState = { count: 0 };

function reducer(state, action) {
switch (action.type) {
case 'increment':
return { count: state.count + 1 };
case 'decrement':
return { count: state.count - 1 };
default:
throw new Error();
}
}

function Counter() {
const [state, dispatch] = useReducer(reducer, initialState);

return (
<>
<p>Count: {state.count}</p>
<button onClick={() => dispatch({ type: 'increment' })}>Increment</button>
<button onClick={() => dispatch({ type: 'decrement' })}>Decrement</button>
</>
);
}


Преимущества:

— Централизованное управление состоянием.
— Лёгкость в добавлении новых состояний и действий.
— Чистота и предсказуемость кода.

➡️ Больше полезных книг — в нашем канале @progbook

🐸 Библиотека программиста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
9👍4🤔3