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

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

77043

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

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

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

🤔 А у нас традиционная рубрика #жиза. Сеньор уверенно пофиксил баг на проде, но что-то пошло не так…

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

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

👀 Итоги недели в мире ИИ и обзоры новых сервисов: новый чип LPU от Groq в 12.5 раз быстрее GPU от NVIDIA

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

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

💬Новости

▫️ Выяснилось, что генерация одной минуты видео нашумевшей моделью Sora (OpenAI) занимает более одного часа.
▫️Компания Groq выпустила новый чип LPU (Language Processing Unit), который обеспечивает феноменально высокую скорость работы с большими языковыми моделями. Так, чат-бот Groq, работающий на собственном железе, генерирует в среднем 500 токенов в секунду, а ChatGPT-3.5 на GPU — не больше 40.
▫️ИИ-генератор кода, разрабатываемый стартапом Magic, теперь поддерживает контекст до 3,5 млн токенов и демонстрирует недоступный ранее уровень логики.

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

▫️Zenfetch Personal AI — создаёт ИИ-ассистента и личную интерактивную базу знаний на основе любого сохранённого из веба контента — статей, PDF-файлов, фото и YouTube-видео.
▫️AdGen — генератор рекламных креативов.
▫️Sheet Savvy AI — ассистент для работы с данными в таблицах Google Sheets.
▫️Swizzle — браузерный ИИ-конструктор фуллстек-приложений: сделает бэкенд, фронтенд, авторизацию и базу данных.

Сделай сам

Статья о том, как создать NotesGPT — веб-приложение для работы с голосовыми заметками и сделанными на их основе списками дел.

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

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

⚡️Свершилось: канал с книгами только по Java

Мы создали для вас канал с самыми полезными книгами по Java — подписывайтесь!

👉Книги для джавистов | Java

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

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

Коллеги, сворачиваем лавочку

🤨 Дженсен Хуанг, основатель и гендир Nvidia, на саммите World Government Summit в Дубае высказался о будущем мира в новой реальности ИИ и его влиянии на нашу с вами карьеру. По словам Хуанга, доминировавший в течение последних 10-15 лет призыв учиться программированию или обучать этому детей, а также стремиться к карьере в области компьютерных наук, теперь устарел.

🗣 Основатель Nvidia утверждает, что благодаря достижениям в области ИТ потребность в технических специалистах и количество технических рабочих мест в долгосрочной перспективе сократятся. Он говорит, что задача создателей компьютерных технологий — сделать так, чтобы никому не пришлось программировать, и чтобы языком программирования был человеческий язык. Таким образом, каждый человек в мире теперь является программистом, что является чудом ИИ.

📌 Главный совет — специализироваться в конкретных областях, включая науку, производство, с/х, строительство, образование, инженерия и т.д. При этом важно понимать проблемы в этих областях и использовать автономные интеллектуальные технологии для их решения, без необходимости тратить месяцы или годы на разработку необходимого софта вручную.

🤯 Хуанг также отмечает, что совет «учиться программированию» всегда казался ему неправильным, т. к. у всех нас ограниченное количество времени, и если мы тратим его на одно направление, мы автоматически не можем инвестировать его во что-то другое. Другими словами, он советует не учиться программированию, а учиться быть отличным в чем-то полезном, чем бы это ни было. ИИ всегда будет помогать в этом.

#назлобудня

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

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

💬 Представьте ситуацию, что вы можете стабильно получать одинаковые деньги как в стартапе, так и в большой компании. Что бы вы выбрали?

🤩 — стартап, горящие глаза и вот это всё
👍 — большую компанию! Там можно быстрее набраться коммерческого опыта
🤔 — свой вариант (напишу в комментариях)

#холивар

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

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

🧑‍💻 Статьи для IT: как объяснять и распространять значимые идеи

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

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

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

👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.

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

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

🐱🎨🙏🤖 10 самых странных языков программирования, о которых вы никогда не слышали

Эзотерические языки разрабатывают в концептуальных, экспериментальных и развлекательных целях. Их общая черта — максимально запутанный и странный синтаксис, понятный только посвященным. В этой подборке — языки, которые выбрали бы Ходор, доктор Лектер, Малевич, Джеймс Бонд, Терминатор и Луи Армстронг, если бы решили войти в айти.

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

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

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

🔍 Скрытые коммиты GitHub и где они обитают

🤔 Было у вас такое, когда вы закоммитили то, что не должно было попасть в публичный репозиторий? Ну «секреты» там всякие, или еще что! «А в чем проблема?» — спросите вы. Дело в том, что перезаписать историю коммитов GitHub-репозитория можно, но старые коммиты физически не удаляются с серверов GitHub. Это означает, что хотя эти коммиты не отображаются в обычной истории коммитов и не клонируются с репозиторием, они все еще доступны через API.

🛠 GitHub API предоставляет информацию о различных событиях в репозитории, включая PushEvent. Даже если коммит был удален из истории, событие PushEvent, связанное с этим коммитом, все еще может быть доступно через API. Это позволяет определить хеш удаленного коммита и обратиться к нему. Читайте подробнее исследование на эту тему или воспользуйтесь Python-скриптом Github Secrets, чтобы проверить свои репозитории.

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

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

🤔 Вычислительная сложность алгоритмов: удобная шпаргалка

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

❓Что это такое?

Вычислительная сложность пытается ответить: как изменятся время исполнения алгоритма и объём занятой памяти в зависимости от размера входных данных? Тут вводится понятие асимптотической сложности. Это математическая модель, описывающая поведение ограничений на ресурсы (например, время выполнения или использование памяти) в пределе, когда размер входных данных стремится к бесконечности. Алгоритм с меньшей асимптотической сложностью является более эффективным для всех входных данных.

 Для асимптотической сложности алгоритма используется следующая нотация: 𝑂
(«О»-большое), которое описывает верхнюю границу времени. 

✍️ Категории алгоритмической сложности в 𝑂-нотации:

- Постоянное время: 𝑂(1)
Время выполнения не зависит от количества элементов во входном наборе данных.
- Линейное время: 𝑂(𝑁)
Время выполнения пропорционально количеству элементов в наборе.
- Логарифмическое время: 𝑂(log𝑁)
Время выполнения пропорционально логарифму от количества элементов в наборе.
- Линейно-логарифмическое время: 𝑂(𝑁log𝑁)
Время выполнения больше чем, линейное, но меньше квадратичного.
- Квадратичное время: 𝑂(𝑁^2)
Время выполнения пропорционально квадрату количества элементов в наборе.

🔗 Ссылка на отличную шпаргалку

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

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

🤩 Подборка случайных докладов на недавних конференциях (и не только) от известных специалистов в индустрии:

📺 Heisenbug: «AI: конкурент или помощник?» / Артем Ерошенко
📺 C++ Russia 2022: «Голый Rust» / Роман Проскуряков
📺 HolyJS 2023 Spring: «Telegram Web Apps: веб-приложения внутри Telegram» / Владислав Кибенко
📺 DotNext 2022 Autumn: «Best practices для разработки Application Layer» / Максим Аршинов, Андрей Парамонов, Андрей Цветцих, Денис Цветцих
📺 HighLoad++: «Авито Автозагрузка: как качать миллионы фотографий в сутки» / Евгений Толмачев

#матчасть

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

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

🏃 Самоучитель по Go для начинающих. Часть 8. Строки, руны, байты. Пакет strings. Хеш-таблица (map)

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

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

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

1. Особенности и сфера применения Go, установка, настройка
2. Ресурсы для изучения Go с нуля
3. Организация кода. Пакеты, импорты, модули. Ввод-вывод текста.
4. Переменные. Типы данных и их преобразования. Основные операторы
5. Условные конструкции if-else и switch-case. Цикл for. Вложенные и бесконечные циклы
6. Функции и аргументы. Области видимости. Рекурсия. Defer
7. Массивы и слайсы. Append и сopy. Пакет slices

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

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

☕️📦 10 Java-библиотек, которые изменят твой код навсегда

Из этой статьи вы узнаете о ключевых возможностях 10 популярных библиотек для Java: работа с коллекциями, строками, JSON, логами, датами и временем и многое другое.

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

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

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

🎙️ Как выдержать критику от других разрабов? Чужие мнения и своя самооценка

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

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

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

#подкасты #айтипсихология

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

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

Я и моя команда DevOps пытаемся устранить неполадки кластера Kubernetes в продакшене

#жиза

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

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

🐣Скоро начинается сезон праздников, а к ним лучше готовиться заранее

Именно поэтому мы запустили электронные подарочные сертификаты на курсы proglib academy:

🎁 Выбирайте удобные номиналы от 1 000 до 10 000 руб;

🎁 Отправляйте получателю сразу или в конкретную дату;

🎁 Сертификат действует в течении года с момента покупки.

🙌 Дарите друзьям, сотрудникам, коллегам или партнёрам возможность получить новые знания и возможность профессионального роста в IT-сфере – https://proglib.io/w/d831f55d

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

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

🧰 Наглядная классификация баз данных: на заметку разработчик и не только

👉 Источник

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

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

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

🧰 Как Uber обслуживает более 40 млн rps с помощью встроенного кэша

Docstore — распределенная база данных Uber, построенная на основе MySQL. Храня десятки ПБ данных и обслуживая десятки миллионов запросов в секунду, это один из крупнейших механизмов базы данных в Uber, используемый микросервисами из всех бизнес-вертикалей.

С момента ее создания в 2020 году количество пользователей и юзкейсов Docstore значительно выросло. Проблема ясна — надо масштабироваться. В качестве решения команда Uber написала систему для кэширования CacheFront. Впечатляющие результаты внедрения и полезные практические наработки — под катом.

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

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

🧠 Знания — сила! Что должен изучить каждый программист?

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

Мы проведем анализ ответов и составим ТОП-лист навыков, которые не помешают освоить каждому программисту и разработчику для успешного карьерного роста!

👉 Пройти опрос

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

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

🧰 GitButler — инструмент управления ветками Git, созданный для современных workflow (работает пока только на macOS/Linux). Это Git-клиент, который позволяет быстро организовывать изменения файлов в отдельные ветки, сохраняя при этом их применение к вашей рабочей директории.

☑️ Основные особенности включают управление несколькими ветками одновременно с помощью «виртуальных веток», удобное управление коммитами (например, отмена, изменение, слияние), интеграцию с GitHub и, конечно же, функции ИИ.

💡 Короче говоря, это более гибкая версия git add -p и git rebase -i, позволяющая эффективно работать с несколькими ветками.

👉 GitHub
👉 Сайт

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

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

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

🔎 Пошаговый разбор работы базового поискового движка

1️⃣ Crawling
2️⃣ Indexing
3️⃣ Ranking
4️⃣ Querying

👉 Источник

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

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

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

🔥 На прошлой неделе представлена версия Git 2.44

📌 По традиции публикуем мини-обзор новых фич:

1️⃣ Быстрое создание пакетов: Git 2.44 включает оптимизацию для ускорения процесса клонирования и отправки изменений в репозитории, позволяя переиспользовать существующие пакеты данных, что сокращает время обработки.

2️⃣ Быстрые перебазирования с git replay: новая команда предлагает альтернативу git rebase, обеспечивая более высокую производительность и возможность работы в bare-репозиториях, а также обработку нескольких веток одновременно.

3️⃣ Автоматическое слияние с --autosquash в неинтерактивных перебазированиях: в новой версии, функция autosquash теперь работает и в неинтерактивных режимах перебазирования, позволяя автоматически применять изменения fixup! и squash! без необходимости вручную редактировать список задач.

4️⃣ Улучшенные подсказки и новые возможности сортировки: Git 2.44 предлагает улучшенные подсказки для пользователей и новые опции для сортировки в командах, таких как git for-each-ref.

5️⃣ Расширенные возможности работы с путями и файлами: в новой версии добавлены новые атрибуты для работы с путями файлов, позволяя более гибко управлять добавлением файлов в индекс.

👉 Подробнее

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

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

🐍 У нас есть еженедельная email-рассылка, посвященная последним открытиям и тенденциям в мире Python.

В ней:
● Новые возможности в последних версиях Python
● Работа с базами данных и SQL в Python
● Веб-разработка на Django и Flask
● Машинное обучение и анализ данных с помощью Python
● Автоматизация и работа с API на Python
● Тестирование и отладка кода на Python
● Задачи для новичков с решениями

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

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

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

🥤🛡️ Как сделать Flask-приложение неуязвимым: полное руководство по защите от хакерских атак

Лучшие практики по созданию надежного и безопасного Flask-приложения, включая защиту от XSS/CSRF и API, созданных с помощью Flask.

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

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

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

👩‍💻 PGlite — Postgres в WASM

Эта сборка упакована в клиентскую TypeScript-библиотеку, которая позволяет запускать Postgres в браузере, Node.js и Bun без необходимости устанавливать какие-либо другие зависимости. Занимает 3,7 МБ в сжатом виде.

👩‍💻 GitHub
👉 Playground

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

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

🛍 -50% на наш флагманский курс по вышмату + курс по machine learning в подарок

📣 В честь 23 февраля мы решили снизить цену на курс по математике и подарить курс по machine learning в подарок – https://proglib.io/w/7a2b9c4a

14 990 рублей 29 990 рублей до 29 февраля

⭐️ На курсе вы получите все необходимые знания для старта карьеры в DS или аналитике.

Что еще вас ждет на курсе:

🔹 Полугодовая программа от преподавателей ВМК МГУ;

🔹 150 практических заданий и 47 видеолекций;

🔹 Бессрочный доступ ко всем материалам курса;

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

‼️ Переходите на сайт, читайте подробности и заходите на обучение по самым выгодным условиям – https://proglib.io/w/7a2b9c4a

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

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

🤔 Какой язык учить первым?

Если ознакомиться с популярными айтишными ресурсами по этой теме, формируется два вывода:

1️⃣ Первым надо учить Python/JavaScript (пробудить интерес к программированию) или C++ (программирование интересно само по себе и человек хочет развиваться как разработчик).
2️⃣ Первый язык нужен не для того, чтобы писать на нём проекты, а для изучения базовых принципов программирования => поэтому первым должен быть не язык, а учебник программирования.

А язык будет тем, который используется в этом учебнике для объяснения алгоритмов, — удобным именно для начального обучения (на начальном этапе достаточно псевдокода).

💬 А вы как считаете?

#холивар

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

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

💡 GraphQL в деталях

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

GraphQL-сервер находятся между клиентом и бэкендом. Он может объединять несколько запросов в один, позволяет организовать ресурсы в граф, поддерживает мутации (применение изменений данных к ресурсам) и подписки (получение уведомлений об изменениях схемы).

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

🔸 GraphQL более эффективен в получении данных
🔸 GraphQL возвращает более точные результаты
🔸 GraphQL имеет строгую систему типов для управления структурой сущностей, что снижает количество ошибок
🔸 GraphQL подходит для управления сложными микросервисами

➖ Недостатки GraphQL:

🔸 Повышенная сложность
🔸 Избыточное получение данных
🔸 Сложность кэширования

👉 Источник

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

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

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

🏃 Самоучитель по Go для начинающих. Часть 7. Массивы и слайсы. Append и сopy. Пакет slices

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

👉 Читать статью
👉 Часть 1
👉 Часть 2
👉 Часть 3
👉 Часть 4
👉 Часть 5
👉 Часть 6

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

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

🤔 ФП vs. ООП

Дядя Боб считает (перевод), что споры сторонников функционального и объектно-ориентированного подхода не имеют смысла, так как эти парадигмы отлично уживаются вместе.

Более того, система, которая построена на комбинации принципов ООП и ФП максимизирует гибкость, поддерживаемость, тестируемость и простоту. Если убрать одно ради добавления другого, это только ухудшит структуру системы.

💬 А вы что думаете? Похоливарим?

#холивар

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

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

🐍⛓ Цепи Маркова: генерирование читабельной бессмыслицы за 20 строк на Python

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

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

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