Подборка Telegram каналов для программистов
Системное администрирование 📌
https://t.me/sysadmin_girl Девочка Сисадмин
https://t.me/srv_admin_linux Админские угодья
https://t.me/linux_srv Типичный Сисадмин
https://t.me/linux_odmin Linux: Системный администратор
https://t.me/devops_star DevOps Star (Звезда Девопса)
https://t.me/i_linux Системный администратор
https://t.me/linuxchmod Linux
https://t.me/sys_adminos Системный Администратор
https://t.me/tipsysdmin Типичный Сисадмин (фото железа, было/стало)
https://t.me/sysadminof Книги для админов, полезные материалы
https://t.me/i_odmin Все для системного администратора
https://t.me/i_odmin_book Библиотека Системного Администратора
https://t.me/i_odmin_chat Чат системных администраторов
https://t.me/i_DevOps DevOps: Пишем о Docker, Kubernetes и др.
https://t.me/sysadminoff Новости Линукс Linux
1C разработка 📌
https://t.me/odin1C_rus Cтатьи, курсы, советы, шаблоны кода 1С
Программирование C++📌
https://t.me/cpp_lib Библиотека C/C++ разработчика
https://t.me/cpp_knigi Книги для программистов C/C++
https://t.me/cpp_geek Учим C/C++ на примерах
Программирование Python 📌
https://t.me/pythonofff Python академия. Учи Python быстро и легко🐍
https://t.me/BookPython Библиотека Python разработчика
https://t.me/python_real Python подборки на русском и английском
https://t.me/python_360 Книги по Python Rus
Java разработка 📌
https://t.me/BookJava Библиотека Java разработчика
https://t.me/java_360 Книги по Java Rus
https://t.me/java_geek Учим Java на примерах
GitHub Сообщество 📌
https://t.me/Githublib Интересное из GitHub
Базы данных (Data Base) 📌
https://t.me/database_info Все про базы данных
Мобильная разработка: iOS, Android 📌
https://t.me/developer_mobila Мобильная разработка
https://t.me/kotlin_lib Подборки полезного материала по Kotlin
Фронтенд разработка 📌
https://t.me/frontend_1 Подборки для frontend разработчиков
https://t.me/frontend_sovet Frontend советы, примеры и практика!
https://t.me/React_lib Подборки по React js и все что с ним связано
Разработка игр 📌
https://t.me/game_devv Все о разработке игр
Библиотеки 📌
https://t.me/book_for_dev Книги для программистов Rus
https://t.me/programmist_of Книги по программированию
https://t.me/proglb Библиотека программиста
https://t.me/bfbook Книги для программистов
https://t.me/books_reserv Книги для программистов
БигДата, машинное обучение 📌
https://t.me/bigdata_1 Data Science, Big Data, Machine Learning, Deep Learning
Программирование 📌
https://t.me/bookflow Лекции, видеоуроки, доклады с IT конференций
https://t.me/coddy_academy Полезные советы по программированию
https://t.me/rust_lib Полезный контент по программированию на Rust
https://t.me/golang_lib Библиотека Go (Golang) разработчика
https://t.me/itmozg Программисты, дизайнеры, новости из мира IT
https://t.me/php_lib Библиотека PHP программиста 👨🏼💻👩💻
https://t.me/nodejs_lib Подборки по Node js и все что с ним связано
https://t.me/ruby_lib Библиотека Ruby программиста
QA, тестирование 📌
https://t.me/testlab_qa Библиотека тестировщика
Шутки программистов 📌
https://t.me/itumor Шутки программистов
Защита, взлом, безопасность 📌
https://t.me/thehaking Канал о кибербезопасности
https://t.me/xakep_1 Статьи из "Хакера"
Книги, статьи для дизайнеров 📌
https://t.me/ux_web Статьи, книги для дизайнеров
Английский 📌
https://t.me/UchuEnglish Английский с нуля
Математика 📌
https://t.me/Pomatematike Канал по математике
https://t.me/phis_mat Обучающие видео, книги по Физике и Математике
Excel лайфхак📌
https://t.me/Excel_lifehack
https://t.me/tikon_1 Новости высоких технологий, науки и техники💡
https://t.me/mir_teh Мир технологий (Technology World)
Вакансии 📌
https://t.me/sysadmin_rabota Системный Администратор
https://t.me/progjob Вакансии в IT
Системное администрирование 📌
https://t.me/sysadmin_girl Девочка Сисадмин
https://t.me/srv_admin_linux Админские угодья
https://t.me/linux_srv Типичный Сисадмин
https://t.me/linux_odmin Linux: Системный администратор
https://t.me/devops_star DevOps Star (Звезда Девопса)
https://t.me/i_linux Системный администратор
https://t.me/linuxchmod Linux
https://t.me/sys_adminos Системный Администратор
https://t.me/tipsysdmin Типичный Сисадмин (фото железа, было/стало)
https://t.me/sysadminof Книги для админов, полезные материалы
https://t.me/i_odmin Все для системного администратора
https://t.me/i_odmin_book Библиотека Системного Администратора
https://t.me/i_odmin_chat Чат системных администраторов
https://t.me/i_DevOps DevOps: Пишем о Docker, Kubernetes и др.
https://t.me/sysadminoff Новости Линукс Linux
1C разработка 📌
https://t.me/odin1C_rus Cтатьи, курсы, советы, шаблоны кода 1С
Программирование C++📌
https://t.me/cpp_lib Библиотека C/C++ разработчика
https://t.me/cpp_knigi Книги для программистов C/C++
https://t.me/cpp_geek Учим C/C++ на примерах
Программирование Python 📌
https://t.me/pythonofff Python академия. Учи Python быстро и легко🐍
https://t.me/BookPython Библиотека Python разработчика
https://t.me/python_real Python подборки на русском и английском
https://t.me/python_360 Книги по Python Rus
Java разработка 📌
https://t.me/BookJava Библиотека Java разработчика
https://t.me/java_360 Книги по Java Rus
https://t.me/java_geek Учим Java на примерах
GitHub Сообщество 📌
https://t.me/Githublib Интересное из GitHub
Базы данных (Data Base) 📌
https://t.me/database_info Все про базы данных
Мобильная разработка: iOS, Android 📌
https://t.me/developer_mobila Мобильная разработка
https://t.me/kotlin_lib Подборки полезного материала по Kotlin
Фронтенд разработка 📌
https://t.me/frontend_1 Подборки для frontend разработчиков
https://t.me/frontend_sovet Frontend советы, примеры и практика!
https://t.me/React_lib Подборки по React js и все что с ним связано
Разработка игр 📌
https://t.me/game_devv Все о разработке игр
Библиотеки 📌
https://t.me/book_for_dev Книги для программистов Rus
https://t.me/programmist_of Книги по программированию
https://t.me/proglb Библиотека программиста
https://t.me/bfbook Книги для программистов
https://t.me/books_reserv Книги для программистов
БигДата, машинное обучение 📌
https://t.me/bigdata_1 Data Science, Big Data, Machine Learning, Deep Learning
Программирование 📌
https://t.me/bookflow Лекции, видеоуроки, доклады с IT конференций
https://t.me/coddy_academy Полезные советы по программированию
https://t.me/rust_lib Полезный контент по программированию на Rust
https://t.me/golang_lib Библиотека Go (Golang) разработчика
https://t.me/itmozg Программисты, дизайнеры, новости из мира IT
https://t.me/php_lib Библиотека PHP программиста 👨🏼💻👩💻
https://t.me/nodejs_lib Подборки по Node js и все что с ним связано
https://t.me/ruby_lib Библиотека Ruby программиста
QA, тестирование 📌
https://t.me/testlab_qa Библиотека тестировщика
Шутки программистов 📌
https://t.me/itumor Шутки программистов
Защита, взлом, безопасность 📌
https://t.me/thehaking Канал о кибербезопасности
https://t.me/xakep_1 Статьи из "Хакера"
Книги, статьи для дизайнеров 📌
https://t.me/ux_web Статьи, книги для дизайнеров
Английский 📌
https://t.me/UchuEnglish Английский с нуля
Математика 📌
https://t.me/Pomatematike Канал по математике
https://t.me/phis_mat Обучающие видео, книги по Физике и Математике
Excel лайфхак📌
https://t.me/Excel_lifehack
https://t.me/tikon_1 Новости высоких технологий, науки и техники💡
https://t.me/mir_teh Мир технологий (Technology World)
Вакансии 📌
https://t.me/sysadmin_rabota Системный Администратор
https://t.me/progjob Вакансии в IT
Telegram
Девочка Сисадмин
Канал по системному администрированию, который ведет девочка админ. Все о Linux, Windows и т.д.
По всем вопросам : @Sofiia_artamonova
По всем вопросам : @Sofiia_artamonova
👍2
Путеводитель C++ программиста по неопределенному поведению
Все начинается просто и незатейливо: обычный десятиклассник увлекается программированием, знакомится с алгоритмическими задачками, решения которых должны быть быстрыми. Узнает о языке C++, учит минимальный синтаксис, основные конструкции, контейнеры, решает задачи с предопределенным и всегда корректным форматом ввода и вывода, и горя не знает...
В это же время, где-то в большом мире, матерые разработчики каждый день ругают то одни языки программирования, то другие. По самым разным причинам: не удобно, нет какой-то возможности, много лишних букв писать, ошибки в стандартной библиотеке... Но есть язык, который ругают за все и особенно за такую непонятную и таинственную вещь как неопределенное поведение (undefined behavior, UB).
Спустя лет пять или шесть наш простой десятиклассник, горя не видавший в море оторванных от реальности программ, внезапно узнает, что тем самым горячо нелюбимым языком всегда был, остается и будет его C++.
А потом еще в течение нескольких лет он наткнется на самые кошмарные и невероятные ужасы, поджидающие программистов на C++ почти на каждом шагу. Так и появится эта серия заметок, собирающая наиболее отвратительные примеры, на которые очень легко наткнуться при решении повседневных задач.
Важно: этот сборник не является учебным пособием по языку и рассчитан на тех, кто уже знаком с программированием, с C++, и понимает основные его конструкции.
https://github.com/Nekrolm/ubbook
#cpp@bookflow
👉 @Bookflow
Все начинается просто и незатейливо: обычный десятиклассник увлекается программированием, знакомится с алгоритмическими задачками, решения которых должны быть быстрыми. Узнает о языке C++, учит минимальный синтаксис, основные конструкции, контейнеры, решает задачи с предопределенным и всегда корректным форматом ввода и вывода, и горя не знает...
В это же время, где-то в большом мире, матерые разработчики каждый день ругают то одни языки программирования, то другие. По самым разным причинам: не удобно, нет какой-то возможности, много лишних букв писать, ошибки в стандартной библиотеке... Но есть язык, который ругают за все и особенно за такую непонятную и таинственную вещь как неопределенное поведение (undefined behavior, UB).
Спустя лет пять или шесть наш простой десятиклассник, горя не видавший в море оторванных от реальности программ, внезапно узнает, что тем самым горячо нелюбимым языком всегда был, остается и будет его C++.
А потом еще в течение нескольких лет он наткнется на самые кошмарные и невероятные ужасы, поджидающие программистов на C++ почти на каждом шагу. Так и появится эта серия заметок, собирающая наиболее отвратительные примеры, на которые очень легко наткнуться при решении повседневных задач.
Важно: этот сборник не является учебным пособием по языку и рассчитан на тех, кто уже знаком с программированием, с C++, и понимает основные его конструкции.
https://github.com/Nekrolm/ubbook
#cpp@bookflow
👉 @Bookflow
🎉2👍1
Шпаргалка по разрешениям файлов в Linux (разрешения SUID, SGID и Stick Bit)
#linux@bookflow
👉 @Bookflow
#linux@bookflow
👉 @Bookflow
👍2
This media is not supported in your browser
VIEW IN TELEGRAM
Совет💡: Chrome DevTools позволяет переопределять содержимое Fetch/XHR-запросов! Это полезно для мокирования API без необходимости ждать изменений на стороне бэкенда.
#Tools@bookflow
👉 @Bookflow
#Tools@bookflow
👉 @Bookflow
👍8
Внутреннее устройство Linux - доступно, но всерьез.
Уроки по Linux от Дмитрия Кетова для самостоятельного обучаения.
https://www.youtube.com/c/DmitryKetov/playlists
#linux@bookflow
👉 @Bookflow
Уроки по Linux от Дмитрия Кетова для самостоятельного обучаения.
https://www.youtube.com/c/DmitryKetov/playlists
#linux@bookflow
👉 @Bookflow
🔥6👍4
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Dangerous Dave
Серия видеороликов, показывающих начинающим программистам, как воссоздать Dangerous Dave с помощью C и SDL (2 часа)
источник
#cpp@bookflow
👉 @Bookflow
Серия видеороликов, показывающих начинающим программистам, как воссоздать Dangerous Dave с помощью C и SDL (2 часа)
источник
#cpp@bookflow
👉 @Bookflow
👍3😁2
Forwarded from Жизнь программиста
Как правильно писать комментарии в коде, чтобы не бесить коллег?
Когда-то давно я думал, что комментарии — это зло. «Хороший код говорит сам за себя!» — говорил я. Потом пришел кода в большой проект и потратил три часа на разбор функции processData(), которая делала… что-то.
📝 Главное правило: комментарии нужны не для очевидных вещей, а для объяснения сложных решений и бизнес-логики.
✅ Пишите почему, а не что
❌ // Уменьшаем баланс пользователя
✅ // Списываем сумму только после проверки, чтобы избежать дублей
✅ Избегайте очевидных комментариев
❌ // Устанавливаем X в 10
int x = 10;
✅ Объясняйте магию
Если формула или алгоритм нетривиальны, объясните, почему они такие.
✅ Следите за актуальностью
Старые, нерелевантные комментарии хуже, чем их отсутствие. Они вводят в заблуждение.
Какой самый худший комментарий вам встречался? 😅
🔔 @lifeproger
Когда-то давно я думал, что комментарии — это зло. «Хороший код говорит сам за себя!» — говорил я. Потом пришел кода в большой проект и потратил три часа на разбор функции processData(), которая делала… что-то.
📝 Главное правило: комментарии нужны не для очевидных вещей, а для объяснения сложных решений и бизнес-логики.
✅ Пишите почему, а не что
❌ // Уменьшаем баланс пользователя
✅ // Списываем сумму только после проверки, чтобы избежать дублей
✅ Избегайте очевидных комментариев
❌ // Устанавливаем X в 10
int x = 10;
✅ Объясняйте магию
Если формула или алгоритм нетривиальны, объясните, почему они такие.
// Используем формулу Гаусса для быстрого вычисления суммы от 1 до N
return (n * (n + 1)) / 2;✅ Следите за актуальностью
Старые, нерелевантные комментарии хуже, чем их отсутствие. Они вводят в заблуждение.
Какой самый худший комментарий вам встречался? 😅
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
🚀 Как выбрать идеальный стек технологий?
Каждый программист хоть раз задавался вопросом: на каком стеке писать проект? Кто-то гонится за хайпом, кто-то выбирает проверенные решения, а кто-то берёт первое, что пришло в голову. Давай разберёмся, как выбрать технологии правильно.
1️⃣ Определи цели проекта
Если тебе нужно быстро запустить MVP – смотри в сторону фреймворков с богатой экосистемой (Django, Laravel, Next.js).
Если важна масштабируемость – обрати внимание на микросервисную архитектуру и язык, который лучше всего подходит для этих целей (Golang, Java, Node.js).
2️⃣ Посмотри на рынок
Выбрал язык? Отлично! Теперь узнай:
- Насколько востребованы специалисты?
- Есть ли хорошие библиотеки и фреймворки?
- Как развиваются технологии?
💡 Пример: Python – крутой язык, но если пишешь highload-систему, лучше глянуть на Rust или C++.
3️⃣ Проверь документацию и комьюнити
Хорошая документация = меньше боли. Если у технологии дохлый форум и обновления раз в три года – беги оттуда.
4️⃣ Экспериментируй
Лучший способ проверить стек – сделать pet-проект. Так ты поймёшь, удобно ли тебе работать с этими инструментами.
👉 @Bookflow
Каждый программист хоть раз задавался вопросом: на каком стеке писать проект? Кто-то гонится за хайпом, кто-то выбирает проверенные решения, а кто-то берёт первое, что пришло в голову. Давай разберёмся, как выбрать технологии правильно.
1️⃣ Определи цели проекта
Если тебе нужно быстро запустить MVP – смотри в сторону фреймворков с богатой экосистемой (Django, Laravel, Next.js).
Если важна масштабируемость – обрати внимание на микросервисную архитектуру и язык, который лучше всего подходит для этих целей (Golang, Java, Node.js).
2️⃣ Посмотри на рынок
Выбрал язык? Отлично! Теперь узнай:
- Насколько востребованы специалисты?
- Есть ли хорошие библиотеки и фреймворки?
- Как развиваются технологии?
💡 Пример: Python – крутой язык, но если пишешь highload-систему, лучше глянуть на Rust или C++.
3️⃣ Проверь документацию и комьюнити
Хорошая документация = меньше боли. Если у технологии дохлый форум и обновления раз в три года – беги оттуда.
4️⃣ Экспериментируй
Лучший способ проверить стек – сделать pet-проект. Так ты поймёшь, удобно ли тебе работать с этими инструментами.
👉 @Bookflow
👍2❤1
🔥 Разбираемся с
Сегодня разберём мощный инструмент из стандартной библиотеки —
📌 Что такое
✅ Обычные функции
✅ Лямбды
✅ Функторы
✅ Указатели на методы и данные
🔹 Пример использования:
🔥 Чем
✅ Универсальность: избавляет от необходимости писать отдельные
✅ Чистый код: особенно полезен в шаблонных алгоритмах, где callable передаётся как параметр.
👉 @Bookflow
std::invoke в C++ 🔥 Сегодня разберём мощный инструмент из стандартной библиотеки —
std::invoke. Многие его игнорируют, но он может упростить вызов функций и методов, особенно в шаблонном коде. 📌 Что такое
std::invoke? std::invoke — это универсальный механизм вызова вызываемых объектов (callable). Он может вызывать: ✅ Обычные функции
✅ Лямбды
✅ Функторы
✅ Указатели на методы и данные
🔹 Пример использования:
#include <iostream>
#include <functional>
struct Foo {
void method(int x) {
std::cout << "Method called with " << x << '\n';
}
};
void function(int x) {
std::cout << "Function called with " << x << '\n';
}
int main() {
Foo foo;
// Вызов обычной функции
std::invoke(function, 42);
// Вызов метода класса через объект
std::invoke(&Foo::method, foo, 24);
// Вызов метода через указатель на объект
Foo* ptr = &foo;
std::invoke(&Foo::method, ptr, 77);
return 0;
}
🔥 Чем
std::invoke полезен? ✅ Универсальность: избавляет от необходимости писать отдельные
if constexpr для разных callable объектов. ✅ Чистый код: особенно полезен в шаблонных алгоритмах, где callable передаётся как параметр.
👉 @Bookflow
👍4
Ни одна реализация элементарных функций не соответствует стандарту IEEE 754
Введённый в 1985 году стандарт IEEE-754 для чисел с плавающей запятой был предназначен для решения проблемы разнородности реализаций чисел с плавающей запятой, мешавших портируемости кода, а также для повышения стабильности между платформами.
Он получил широкое применение и многократно пересматривался в течение прошедших лет. Если вы когда-нибудь работали с любыми вещественными числами в своих приложениях, то они, вероятно, отвечали этому стандарту.
Моя работа в течение последнего года заключалась в анализе погрешности различных математических функций, накопления этой погрешности и способов её уменьшения при помощи различных программных паттернов. Одной из исследованных мной тем были базовые математические функции, используемые в функциях активации нейронных сетей, а также способы их аппроксимации для повышения производительности. В процессе работы нам пришлось столкнуться с противодействием со стороны людей, активно стремящихся к корректной реализации математических функций и к соответствию их стандартам, в частности, к соблюдению обеспечения корректности одной наименее значимой единицы измерения (unit in last place, ULP) для элементарных функций.
https://habr.com/ru/hubs/algorithms/articles/
👉 @Bookflow
Введённый в 1985 году стандарт IEEE-754 для чисел с плавающей запятой был предназначен для решения проблемы разнородности реализаций чисел с плавающей запятой, мешавших портируемости кода, а также для повышения стабильности между платформами.
Он получил широкое применение и многократно пересматривался в течение прошедших лет. Если вы когда-нибудь работали с любыми вещественными числами в своих приложениях, то они, вероятно, отвечали этому стандарту.
Моя работа в течение последнего года заключалась в анализе погрешности различных математических функций, накопления этой погрешности и способов её уменьшения при помощи различных программных паттернов. Одной из исследованных мной тем были базовые математические функции, используемые в функциях активации нейронных сетей, а также способы их аппроксимации для повышения производительности. В процессе работы нам пришлось столкнуться с противодействием со стороны людей, активно стремящихся к корректной реализации математических функций и к соответствию их стандартам, в частности, к соблюдению обеспечения корректности одной наименее значимой единицы измерения (unit in last place, ULP) для элементарных функций.
https://habr.com/ru/hubs/algorithms/articles/
👉 @Bookflow
👍8🤷♂2🤔1
Forwarded from Жизнь программиста
🚀 Тёмные стороны фриланса: что не рассказывают новички
Фриланс — это свобода, деньги и работа в пижаме… Но давайте честно: не всё так радужно. Вот тёмные стороны удалёнки, о которых редко говорят:
🔴 Нет стабильности
Один месяц ты купаешься в деньгах, другой – считаешь копейки. Нужно либо иметь "финансовую подушку", либо выстраивать поток заказов.
🔴 Клиенты-ужасы
ТЗ меняется на ходу, дедлайны горят, а оплата "вот-вот придёт". Учись фильтровать заказчиков и заключать договоры (или хотя бы брать предоплату).
🔴 Бесконечная работа
Фрилансер — это не только кодинг, но и маркетинг, переговоры, бухучёт и даже психология. Не готов? Придётся научиться.
🔴 Нет коллег – нет общения
Скучаешь по офлайн-тимбилдингам и офисным мемам? Добро пожаловать в мир Slack-чатов и созвонов, где ты сам себе HR и тимлид.
Фриланс — это круто, но только если ты понимаешь риски и умеешь ими управлять. Готов ли ты к такому формату работы? 🤔
🔔 @lifeproger
Фриланс — это свобода, деньги и работа в пижаме… Но давайте честно: не всё так радужно. Вот тёмные стороны удалёнки, о которых редко говорят:
🔴 Нет стабильности
Один месяц ты купаешься в деньгах, другой – считаешь копейки. Нужно либо иметь "финансовую подушку", либо выстраивать поток заказов.
🔴 Клиенты-ужасы
ТЗ меняется на ходу, дедлайны горят, а оплата "вот-вот придёт". Учись фильтровать заказчиков и заключать договоры (или хотя бы брать предоплату).
🔴 Бесконечная работа
Фрилансер — это не только кодинг, но и маркетинг, переговоры, бухучёт и даже психология. Не готов? Придётся научиться.
🔴 Нет коллег – нет общения
Скучаешь по офлайн-тимбилдингам и офисным мемам? Добро пожаловать в мир Slack-чатов и созвонов, где ты сам себе HR и тимлид.
Фриланс — это круто, но только если ты понимаешь риски и умеешь ими управлять. Готов ли ты к такому формату работы? 🤔
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3😱1🤣1😈1
std::exception — это базовый класс для всех стандартных исключений в C++Почему стоит наследоваться от std::exception?
• Единообразие в обработке исключений: Когда вы наследуетесь от
std::exception, ваш класс исключения приобретает интерфейс, который делает его совместимым с другими стандартными исключениями•
what() метод: std::exception предоставляет важный метод what(), который возвращает строковое представление исключения. Это позволяет вам предоставлять информативные сообщения об ошибке при обработке исключений• Легкость в поддержке кода: Если вы используете сторонние библиотеки или фреймворки, они также могут ожидать обработку исключений, производных от
std::exception• Стандартные типы исключений:
std::exception имеет несколько стандартных подклассов, таких как std::runtime_error, std::logic_error и другие. Вы можете использовать эти подклассы вместо базового std::exception, чтобы более точно определить характер ошибки#cpp
👉 @Bookflow
🔥4👍2💊1