Что из следующего вернет новый элемент в конце контейнера?
Anonymous Quiz
31%
push_back
4%
front
37%
back
27%
pop_back
❗️Мы запускаем серию исследований — и вы можете нам в этом помочь!
«Библиотека программиста» выпустит несколько статей, в которых мы проведем полноценные исследования.
Помогите нам выбрать интересные темы: может быть, вы давно хотели узнать, как изменилась зарплата у тех, кто релоцировался? Или гадаете, сколько лет нужно, чтобы стать миддлом?
Присылайте интересующие вас темы в комментарии — интересные мы возьмем в работу и поделимся с вами результатами💙
«Библиотека программиста» выпустит несколько статей, в которых мы проведем полноценные исследования.
Помогите нам выбрать интересные темы: может быть, вы давно хотели узнать, как изменилась зарплата у тех, кто релоцировался? Или гадаете, сколько лет нужно, чтобы стать миддлом?
Присылайте интересующие вас темы в комментарии — интересные мы возьмем в работу и поделимся с вами результатами
Please open Telegram to view this post
VIEW IN TELEGRAM
Друзья, мы хотим делать для вас самый лучший контент — и для этого нам нужно узнать вас получше.
Пожалуйста, ответьте на несколько вопросов — это поможет нам делать более полезные и интересные посты!
Первая часть опроса 👇
Please open Telegram to view this post
VIEW IN TELEGRAM
Ваш возраст:
Anonymous Poll
10%
Менее 18 лет
33%
18-24 года
27%
25-34 года
18%
35-44 года
8%
45-54 года
1%
55-64 года
2%
65 лет и старше
В каком городе вы живете последние 3 месяца?
Anonymous Poll
24%
Москва
11%
Санкт-Петербург
2%
Краснодар
3%
Нижний Новгород
5%
Минск
2%
Екатеринбург
3%
Киев
1%
Львов
2%
Алматы
48%
Другое
Потоки могут быть на удивление медленными. Например, если вы хотите анализировать числа, то эта процедура C++ близка к наихудшему возможному выбору с точки зрения производительности:
std::stringstream in(mystring);
while(in >> x) {
sum += x;
}
return sum;
Проведем эксперимент — возьмем строки, содержащие символ «%», и создадим новые, в которых символ % заменен на %25, но остальная часть строки остается неизменной.
Простая конструкция строки выглядит следующим образом:
std::string string_escape(const std::string_view file_path) {
std::string escaped_file_path;
for (size_t i = 0; i < file_path.length(); ++i) {
escaped_file_path += file_path[i];
if (file_path[i] == '%')
escaped_file_path += «25»;
}
return escaped_file_path;
}
Оптимизированная версия с использованием потоков выглядит следующим образом:
std::string stream_escape(const std::string_view file_path) {
std::ostringstream escaped_file_path;
for (size_t i = 0; i < file_path.length(); ++i) {
escaped_file_path << file_path[i];
if (file_path[i] == '%')
escaped_file_path << «25»;
}
return escaped_file_path.str();
}
Продолжить изучение
#гайд
Please open Telegram to view this post
VIEW IN TELEGRAM
🚶♂️🚏 Embox отправляется на Vostok
Эта статья — своеобразный (расширенный) анонс того, что Embox перенесен на микроконтроллеры еще одного производителя микроэлектроники в РФ. Речь идет о платформе Vostok базирующейся на микроконтроллерах ГК «Элемент».
«Восток» базируется на идее построения экосистемы вокруг отечественной электроники через предоставление пользователям готовых программно-аппаратных решений. Причем эти решения ориентированы на очень широкий класс пользователей: от обучения школьников робототехнике (уже разработан аналог ARDUINO) и до промышленной автоматики и роботов.
Embox:
🔹 открытый проект,
🔹 позволяет пользоваться экосистемой Linux,
🔹 позволяет привычно разрабатывать,
🔹 позволяет получить оптимизированную под конкретные цели систему,
🔹 имеет поддержку в РФ.
Читать статью
#почитать
Эта статья — своеобразный (расширенный) анонс того, что Embox перенесен на микроконтроллеры еще одного производителя микроэлектроники в РФ. Речь идет о платформе Vostok базирующейся на микроконтроллерах ГК «Элемент».
«Восток» базируется на идее построения экосистемы вокруг отечественной электроники через предоставление пользователям готовых программно-аппаратных решений. Причем эти решения ориентированы на очень широкий класс пользователей: от обучения школьников робототехнике (уже разработан аналог ARDUINO) и до промышленной автоматики и роботов.
Embox:
🔹 открытый проект,
🔹 позволяет пользоваться экосистемой Linux,
🔹 позволяет привычно разрабатывать,
🔹 позволяет получить оптимизированную под конкретные цели систему,
🔹 имеет поддержку в РФ.
Читать статью
#почитать
🚏🐕 Вышел начальный релиз ядра БМПОС (Базовая Модульная Платформа Операционных Систем) 0.1.231
Вышел начальный релиз ядра БМПОС (Базовая Модульная Платформа Операционных Систем) 0.1.231 в рамках разработки обучающей платформы для системных программистов. Открытый проект БМПОС задуман и создаётся сообществом как обучающее пособие по разработке операционных систем с развитой теоретической и практической базой. Это отечественное программное обеспечение, созданное при поддержке Синапс ОС на языке программирования C.
Разработка проекта нацелена на получение обучающимися знаний по минимально необходимой кодовой базе, формирование навыков постройки простой и понятной архитектуры и максимального упрощения кода.
БМПОС имеет небольшой размер бинарных файлов, что способствует достижению высокой надёжности и упрощению процессов сборки и тестирования.
Проект БМПОС не ставит перед собой цели использования вне виртуальных машин. Там поддерживается только модульная сборка со встраиваемыми на этапе компиляции модулями. В феврале 2024 года планируется полноценный релиз платформы БМПОС с полным набором драйверов, включая гостевые расширения QEMU и VirtualBox.
Продолжение здесь
#новость
Вышел начальный релиз ядра БМПОС (Базовая Модульная Платформа Операционных Систем) 0.1.231 в рамках разработки обучающей платформы для системных программистов. Открытый проект БМПОС задуман и создаётся сообществом как обучающее пособие по разработке операционных систем с развитой теоретической и практической базой. Это отечественное программное обеспечение, созданное при поддержке Синапс ОС на языке программирования C.
Разработка проекта нацелена на получение обучающимися знаний по минимально необходимой кодовой базе, формирование навыков постройки простой и понятной архитектуры и максимального упрощения кода.
БМПОС имеет небольшой размер бинарных файлов, что способствует достижению высокой надёжности и упрощению процессов сборки и тестирования.
Проект БМПОС не ставит перед собой цели использования вне виртуальных машин. Там поддерживается только модульная сборка со встраиваемыми на этапе компиляции модулями. В феврале 2024 года планируется полноценный релиз платформы БМПОС с полным набором драйверов, включая гостевые расширения QEMU и VirtualBox.
Продолжение здесь
#новость
Библиотека C/C++ разработчика | cpp, boost, qt
Продолжаем наш опрос — вторая часть👇
В какой стране вы живете последние 3 месяца?
Anonymous Poll
67%
Россия
6%
Украина
6%
Беларусь
2%
Казахстан
1%
Польша
1%
Кыргызстан
2%
Узбекистан
1%
США
1%
Грузия
12%
Другое
Ваш доход в месяц после налогов:
Anonymous Poll
28%
до $500
9%
от $501 до $800
11%
от $801 до $1100
18%
от $1101 до $2000
12%
от $2001 до $3000
7%
от $3001 до $4000
5%
от $4001 до $5001
2%
от $5001 до $6000
8%
от $6001
Какой у вас коммерческий опыт работы в IT?
Anonymous Poll
26%
от 6 лет
15%
от 3 до 6 лет включительно
16%
от 1 до 3 лет включительно
10%
до 1 года
34%
нет опыта
#вопросы_с_собеседования
Расскажите о системах автоматизации билд-процесса
Системы автоматизации билд-процесса — это инструменты, которые автоматизируют процесс создания программного обеспечения, включая компиляцию исходного кода в бинарный код, упаковку бинарного кода и запуск автоматических тестов². Эти системы позволяют ускорить и упростить процесс сборки программного обеспечения, а также повысить его надежность и воспроизводимость.
Существует множество систем автоматизации билд-процесса, которые отличаются по функциональности, поддерживаемым языкам программирования и платформам. Некоторые из популярных систем автоматизации билд-процесса:
Make: классический инструмент для автоматизации сборки программного обеспечения, использующий Makefile для описания зависимостей между файлами и правил сборки.
CMake: кроссплатформенная система для автоматизации сборки программного обеспечения, которая генерирует файлы сборки для различных систем сборки, таких как Make, Ninja и Visual Studio.
MSBuild: система сборки от Microsoft, используемая в Visual Studio для сборки проектов на языках C++, C# и других.
Ant: система сборки для Java, использующая XML-файлы для описания зависимостей и правил сборки.
Maven: система сборки и управления зависимостями для Java, которая автоматически загружает необходимые библиотеки и плагины.
Gradle: гибкая система сборки для Java, Groovy и Kotlin, которая поддерживает скрипты на Groovy и Kotlin для описания процесса сборки.
Расскажите о системах автоматизации билд-процесса
❤️🙏 Путь к мечте: как инвалидность не помешала стать разработчиком и продолжить борьбу за здоровье
Автор «Библиотеки программиста» Станислав Герасимов, инвалид с детства, делится жизненной историей становления профессиональным разработчиком.
В жизни Стаса было всё, но, возможно, именно путь к мечте помог справиться со всеми жизненными трудностями и добиться поставленной цели.
🔗 Читать статью
🔗 Зеркало
Автор «Библиотеки программиста» Станислав Герасимов, инвалид с детства, делится жизненной историей становления профессиональным разработчиком.
В жизни Стаса было всё, но, возможно, именно путь к мечте помог справиться со всеми жизненными трудностями и добиться поставленной цели.
🔗 Читать статью
🔗 Зеркало
Библиотека C/C++ разработчика | cpp, boost, qt
Продолжаем наш опрос — вторая часть👇
Продолжаем наш опрос — последняя, третья часть👇
На каком языке программирования вы пишете больше всего?
Anonymous Poll
9%
Python
2%
Go
2%
Java
1%
JavaScript
1%
TypeScript
74%
C/C++
4%
С#
1%
Swift/Kotlin
1%
PHP
4%
Другой
Какая ваша специализация в IT?
Anonymous Poll
29%
Backend
2%
Frontend
9%
Fullstack
3%
Mobile
17%
Desktop
2%
DevOps/Sysadmin
1%
QA
4%
Data Science
6%
Кибербезопасность
27%
Другое
Какой грейд у вас на работе?
Anonymous Poll
12%
Стажер
14%
Джуниор
25%
Миддл
16%
Сеньор
6%
Тимлид
3%
Архитектор
3%
СТО
22%
я не в IT
This media is not supported in your browser
VIEW IN TELEGRAM
🤔 очередной #дайджест по С++
🔼 Память как у пингвина — работа памяти в Linux
🔼 Toggle Builder — о дополнении, которым можно было бы снабдить builder-классы
🔼 С алгоритмами в духе LeetCode на собеседованиях пора кончать — или не тратьте впустую ценное время кандидатов
🔼 Запускаем управление файлами метаданных — о распространении метаданных с помощью conan
🔼 Не нужно блокировать кнопки — почему разработчики так делают, почему это не работает и что нужно делать вместо этого
🔼 Память как у пингвина — работа памяти в Linux
🔼 Toggle Builder — о дополнении, которым можно было бы снабдить builder-классы
🔼 С алгоритмами в духе LeetCode на собеседованиях пора кончать — или не тратьте впустую ценное время кандидатов
🔼 Запускаем управление файлами метаданных — о распространении метаданных с помощью conan
🔼 Не нужно блокировать кнопки — почему разработчики так делают, почему это не работает и что нужно делать вместо этого