🎉 Розыгрыш от Proglib Academy и DigitalRazor!
С 27 ноября по 27 декабря у вас есть шанс не только прокачать свои навыки, но и выиграть ПК при покупке любого курса Академии!
🎁 Призы для участников акции:
– Игровой ПК DigitalRazor ProGaming
– VIP-пакет курса Proglib Academy
💡 Как принять участие?
Купите любой курс Proglib Academy с 27 ноября по 27 декабря и получите шанс выиграть мощный ПК.
Приобретите технику DigitalRazor — участвуйте в розыгрыше VIP курса.
📅 Вместе с DigitalRazor мы создали спецпредложение -50% на курсы до 30 ноября, чтобы вы могли начать обучение на более выгодных условиях.
Выбрать курс
С 27 ноября по 27 декабря у вас есть шанс не только прокачать свои навыки, но и выиграть ПК при покупке любого курса Академии!
🎁 Призы для участников акции:
– Игровой ПК DigitalRazor ProGaming
– VIP-пакет курса Proglib Academy
💡 Как принять участие?
Купите любой курс Proglib Academy с 27 ноября по 27 декабря и получите шанс выиграть мощный ПК.
Приобретите технику DigitalRazor — участвуйте в розыгрыше VIP курса.
📅 Вместе с DigitalRazor мы создали спецпредложение -50% на курсы до 30 ноября, чтобы вы могли начать обучение на более выгодных условиях.
Выбрать курс
💼🔀 «Хочу уволиться, но боюсь»: что делать
«Завтра напишу заявление об увольнении» — фраза, которую многие повторяют каждый понедельник, но так и не решаются на перемены. Сегодня поговорим о том, как перестать саботировать собственную карьеру и научиться управлять страхом перемен. Спойлер: дело не в лени и не в комфортной зарплате.
👉 Читать статью
👉 Зеркало
«Завтра напишу заявление об увольнении» — фраза, которую многие повторяют каждый понедельник, но так и не решаются на перемены. Сегодня поговорим о том, как перестать саботировать собственную карьеру и научиться управлять страхом перемен. Спойлер: дело не в лени и не в комфортной зарплате.
👉 Читать статью
👉 Зеркало
😒 Что такое дополнительный код?
Дополнительный код — это способ представления отрицательных чисел в компьютерах, который используется для упрощения операций с ними.
В основе лежит принцип, где отрицательное число представляется как его модуль, инвертированный побитово, и к результату добавляется единица.
Например, в 8-битной системе число -5 в дополнительном коде выглядит как
5 = 0b00000101
~5 = 0b11111010
-5 = 0b11111011.
Этот подход позволяет использовать одни и те же алгоритмы для сложения и вычитания, устраняя необходимость раздельной обработки знаков чисел.
❗Дополнительный код делает арифметику в компьютерах эффективнее и быстрее, поэтому он стал стандартом практически во всех современных архитектурах.
🧑💻 Статьи для IT: как объяснять и распространять значимые идеи
Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.
Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.
Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.
👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.
Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.
Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.
👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
Forwarded from Библиотека Go-разработчика | Golang
📈 Кадровый голод в IT: почему компании готовы платить на 13% больше
Несмотря на экономическую нестабильность и сокращения в некоторых секторах, компании готовы платить рекордные зарплаты, чтобы привлечь и удержать талантливых специалистов. В статье, по ссылке ниже, мы разбираемся, почему в IT наблюдается дефицит кадров, какие навыки сейчас востребованы, и как работодатели борются за внимание лучших профессионалов, предлагая условия, о которых еще недавно можно было только мечтать.
Если вам интересно, как кадровый рынок в IT адаптируется к новым вызовам, и что это значит для вас как для разработчика или работодателя, читайте дальше!
📎 Читать статью
Несмотря на экономическую нестабильность и сокращения в некоторых секторах, компании готовы платить рекордные зарплаты, чтобы привлечь и удержать талантливых специалистов. В статье, по ссылке ниже, мы разбираемся, почему в IT наблюдается дефицит кадров, какие навыки сейчас востребованы, и как работодатели борются за внимание лучших профессионалов, предлагая условия, о которых еще недавно можно было только мечтать.
Если вам интересно, как кадровый рынок в IT адаптируется к новым вызовам, и что это значит для вас как для разработчика или работодателя, читайте дальше!
📎 Читать статью
Forwarded from Библиотека разработчика игр | Gamedev, Unity, Unreal Engine
Существует мнение, что высшего образования в сфере разработки игр в России нет, но это не так. В этой большой статье я подробно и честно расскажу о своем опыте обучения на разработчика игр в одном из московских университетов.
👉 Статья
👉 Статья
Что нужно сделать, чтобы приведение работало адекватно (b == 42.0)?
Anonymous Quiz
8%
Использовать std::bit_cast
65%
Использовать static_cast
27%
Ничего. Всё и так будет работать
Что выведет код?
Anonymous Quiz
6%
rvalue rvalue
7%
rvalue lvalue
77%
lvalue rvalue
10%
lvalue lvalue
В видео рассматриваются принципы объектно-ориентированного программирования (ООП) — абстракцию, наследование, инкапсуляцию и полиморфизм — используя популярную игру Factorio в качестве наглядного примера.
В видео вы узнайте, как абстракция помогает упрощать сложные системы, наследование позволяет расширять функциональность, инкапсуляция обеспечивает безопасность и порядок, а полиморфизм предоставляет гибкость в использовании компонентов. Это видео станет отличным ресурсом как для любителей Factorio, так и для тех, кто хочет глубже понять ООП через интересные и доступные примеры.
👉 Видео
В видео вы узнайте, как абстракция помогает упрощать сложные системы, наследование позволяет расширять функциональность, инкапсуляция обеспечивает безопасность и порядок, а полиморфизм предоставляет гибкость в использовании компонентов. Это видео станет отличным ресурсом как для любителей Factorio, так и для тех, кто хочет глубже понять ООП через интересные и доступные примеры.
👉 Видео
Forwarded from Библиотека C/C++ разработчика | cpp, boost, qt
Вторая часть рассказа про получение высшего образования в сфере разработки видеоигр. Еще больше подробностей о процессе обучения, разработке студенческих проектов, защите дипломных работ и ответе на главный вопрос: «А стоило ли оно того?»
👉 Статья
👉 Статья
Почему использование std::endl может быть менее эффективным, чем \n в некоторых случаях?
Всё дело в буферизации вывода
- std::endl не только добавляет символ новой строки (\n) в поток, но и явно сбрасывает (flushes) буфер вывода. Это означает, что данные из буфера немедленно отправляются в устройство вывода (например, на экран или в файл).
- \n, напротив, просто добавляет символ новой строки в поток без принудительного сброса буфера. Буферизация остаётся управляемой самой стандартной библиотекой, и данные выводятся только тогда, когда буфер заполняется или программа явно вызывает std::flush.
В результате выполния кода будет заметно, что время вывода с \n будет меньше.
- std::endl не только добавляет символ новой строки (\n) в поток, но и явно сбрасывает (flushes) буфер вывода. Это означает, что данные из буфера немедленно отправляются в устройство вывода (например, на экран или в файл).
- \n, напротив, просто добавляет символ новой строки в поток без принудительного сброса буфера. Буферизация остаётся управляемой самой стандартной библиотекой, и данные выводятся только тогда, когда буфер заполняется или программа явно вызывает std::flush.
#include <iostream>
#include <chrono>
int main() {
auto start = std::chrono::high_resolution_clock::now();
for (int i = 0; i < 10000; ++i) {
std::cout << "Hello, World!" << std::endl; // Принудительный сброс после каждой строки
}
auto middle = std::chrono::high_resolution_clock::now();
for (int i = 0; i < 10000; ++i) {
std::cout << "Hello, World!\n"; // Буферизация, меньше операций I/O
}
auto end = std::chrono::high_resolution_clock::now();
std::cout << "Time with std::endl: "
<< std::chrono::duration_cast<std::chrono::milliseconds>(middle - start).count()
<< " ms\n";
std::cout << "Time with \\n: "
<< std::chrono::duration_cast<std::chrono::milliseconds>(end - middle).count()
<< " ms\n";
return 0;
}
В результате выполния кода будет заметно, что время вывода с \n будет меньше.
Подготовься к собеседованию на позицию Data Scientist!
Профессия Data Scientist становится все более востребованной, и компании ищут специалистов, способных превращать данные в ценные инсайты. Но как успешно пройти техническое собеседование?
Мы собрали 10 типичных задач, которые могут встретиться на собеседовании, и эффективные подходы к их решению:
1. Внешнее и тензорное произведение
2. One-hot кодировка
3. Мониторинг осадков
4. Симуляция бросков кубиков в «Монополии»
5. Бурение скважин для добычи золота
6. Вычисление свертки
7. Бэктестинг торговой стратегии
8. Прогноз оттока клиентов с помощью логистической регрессии
9. Обнаружение спама с использованием дерева решений
10. Предсказание цен на квартиры с помощью линейной регрессии
Чтобы начать решать задачи, достаточно ответить на четыре простых вопроса по этой ссылке и получить доступ к вводным занятиям курса Математика для Data Science и 10 задачам.
Профессия Data Scientist становится все более востребованной, и компании ищут специалистов, способных превращать данные в ценные инсайты. Но как успешно пройти техническое собеседование?
Мы собрали 10 типичных задач, которые могут встретиться на собеседовании, и эффективные подходы к их решению:
1. Внешнее и тензорное произведение
2. One-hot кодировка
3. Мониторинг осадков
4. Симуляция бросков кубиков в «Монополии»
5. Бурение скважин для добычи золота
6. Вычисление свертки
7. Бэктестинг торговой стратегии
8. Прогноз оттока клиентов с помощью логистической регрессии
9. Обнаружение спама с использованием дерева решений
10. Предсказание цен на квартиры с помощью линейной регрессии
Чтобы начать решать задачи, достаточно ответить на четыре простых вопроса по этой ссылке и получить доступ к вводным занятиям курса Математика для Data Science и 10 задачам.
😞 Для чего нужна using?
using Func = int(); — это объявление псевдонима типа в C++ с использованием ключевого слова using. Оно определяет псевдоним Func как тип функции, которая не принимает никаких аргументов и возвращает int.
❗️ using — современный способ создания псевдонимов типов, введённый в стандарте C++11. Это альтернатива старому синтаксису с typedef.
Что означает принцип RAII (Resource Acquisition Is Initialization) в C++?
Что означает принцип RAII (Resource Acquisition Is Initialization) в C++?
Anonymous Quiz
19%
Ресурсы выделяются в начале программы.
70%
Объекты освобождают ресурсы автоматически в деструкторе.
8%
Ресурсы могут быть выделены только динамически.
3%
Используется только в многопоточном программировании.
Мы запустили свежий канал, где делимся идеями для дизайна интерфейсов. Всё самое стильное, оригинальное и вдохновляющее теперь в одном месте.
📌 Чем полезен канал?
→ Идеи для дизайна интерфейсов.
→ Анимации, которые можно повторить или адаптировать.
→ Лёгкий способ искать вдохновение перед новым проектом.
👉 Подписывайтесь и вдохновляйтесь: UX in GIF
Please open Telegram to view this post
VIEW IN TELEGRAM