🔼
🔜 Коллектив не без недостатков
Раз литература художественная, то конечно же все повести насквозь пронизаны драмой, проблемами, конфликтами и прочим. Иначе было бы просто скучно. Но и в нашей жизни мы вряд ли найдем коллектив без недостатков:
А если кажется, что у кого-то недостатков совсем нет, то вы их просто плохо искали 😁
Еще заметил у "Санинских" начальников особенное отношение к проступкам своих ребят. Главными виновниками они часто считают не провинившихся, а себя:
Думаю, на этом достаточно. И так слишком много букв со всякой философией 🤓
Держите 👍 все, кто дочитал)
А что вам нравится или не нравится в вашем коллективе?
P.S. Коллектив... Слово то какое, вспомнил же. Кажется, что я его со школы больше и не слышал ни разу.
#КнижнаяПолка
Раз литература художественная, то конечно же все повести насквозь пронизаны драмой, проблемами, конфликтами и прочим. Иначе было бы просто скучно. Но и в нашей жизни мы вряд ли найдем коллектив без недостатков:
Если под идеальным коллективом понимать группу людей, у которых нет недостатков, то такого коллектива нет и быть не может. Человек без недостатков безлик и скучен, как унылый, позабытый людьми заболоченный пруд; соблюдая букву неписаных правил человеческого общежития, он становится не личностью, а эталоном, которому место не в общежитии, а в музее.
Санин В.М. "Трудно отпускает Антарктида"
А если кажется, что у кого-то недостатков совсем нет, то вы их просто плохо искали 😁
... Одно скажу, бойся людей без недостатков: десять к одному, что они ловко их скрывают. Люди же, которые своих недостатков не прячут, по крайней мере честнее...
...
Самое трудное - понять человека, подумал Семенов. В деле ошибся - сам виноват, а если в человеке - значит он что-то от тебя прятал, не всю душу показывал. То есть вина с тебя все равно не снимается, но и человек, заставивший тебя ошибиться, несет свою долю ответственности.
Санин В.М. "За тех, кто в дрейфе"
Еще заметил у "Санинских" начальников особенное отношение к проступкам своих ребят. Главными виновниками они часто считают не провинившихся, а себя:
Железным принципом Пашкова было никогда не корить подчиненных за проступки, совершенные в его присутствии: видел, что водитель разошелся, не унял его - сам виноват.
Санин В.М. "Точка возврата"
Думаю, на этом достаточно. И так слишком много букв со всякой философией 🤓
Держите 👍 все, кто дочитал)
А что вам нравится или не нравится в вашем коллективе?
P.S. Коллектив... Слово то какое, вспомнил же. Кажется, что я его со школы больше и не слышал ни разу.
#КнижнаяПолка
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🔥2
Соцопрос. Как вы реагируете на конструкции с goto в коде C++?
Anonymous Poll
28%
Никак, читаю код дальше
17%
Недопустимо! Срочно переписать!
11%
Безобразие! Кто-то не умеет в best practices...
11%
М-да, с этого проекта надо уходить
6%
О, всё как я люблю!
28%
Не знаю, хочу посмотреть результаты
0%
Другое, напишу в комменты
Кнопки vs сенсорный экран
Поговорим немного про интерфейсы: сначала автомобильные, а потом и для ПК.
Видел пару лет назад исследование, где оценивали как быстро водители могут выполнить некоторые операции на ходу:
Все действия выполнялись на скорости 110 км/ч. Для испытаний был подобран ряд современных автомобилей с преимущественно сенсорными интерфейсами и, как контраргумент, авто с классическими "крутилками"🚗 без сенсоров.
Результаты меня впечатлили. Тачка с "крутилками" оказалась абсолютным рекордсменом. Все действия на ней были выполнены водителем за 10 секунд, когда современные авто могли мучать своего пользователя чуть ли не минуту! Я, конечно, подозревал, что разница будет не в пользу сенсоров, но чтобы настолько...
А дело всего лишь в механической памяти. "Крутилки" можно нащупать не глядя, просто протянув руку. На сенсор же надо бросить взгляд и тыкнуть в неосязаемую кнопочку. Благо в автомобилях они обычно довольно крупные.
Аналогичную ситуацию я вижу и с интерфейсами на ПК. Грамотно выстроенная система горячих клавиш ⌨️ может значительно улучшить производительность пользователя. Вспомните, как шустро вы начинали работать с Midnight Commander или Far Manager, когда освоили хоткеи. Инструмент становится продолжением рук. Сочетания клавиш нажимаются мгновенно, не задумываясь.
Поэтому при разработке своих инструментов рекомендую все таки уделять внимание горячим клавишам. Причем они должны быть не просто назначены на определенные действия, а неразрывно связаны с бизнес-процессом, который обеспечивается инструментом. Тогда действительно можно добиться быстрой и непрерывной работы пользователя.
А вы помните какой-нибудь софт, где вам не хватало хоткеев? Я, кажется, часто с таким сталкиваюсь в веб-приложениях.
#Авто
Поговорим немного про интерфейсы: сначала автомобильные, а потом и для ПК.
Видел пару лет назад исследование, где оценивали как быстро водители могут выполнить некоторые операции на ходу:
- Включение подогрева сиденья, увеличение температуры салона на два градуса и запуск антиобледенителя.
- Включение радио и настройка станции на определённый канал.
- Сброс бортового компьютера.
- Снижение подсветки приборов на самый низкий уровень и выключение центрального дисплея.
Все действия выполнялись на скорости 110 км/ч. Для испытаний был подобран ряд современных автомобилей с преимущественно сенсорными интерфейсами и, как контраргумент, авто с классическими "крутилками"
Результаты меня впечатлили. Тачка с "крутилками" оказалась абсолютным рекордсменом. Все действия на ней были выполнены водителем за 10 секунд, когда современные авто могли мучать своего пользователя чуть ли не минуту! Я, конечно, подозревал, что разница будет не в пользу сенсоров, но чтобы настолько...
А дело всего лишь в механической памяти. "Крутилки" можно нащупать не глядя, просто протянув руку. На сенсор же надо бросить взгляд и тыкнуть в неосязаемую кнопочку. Благо в автомобилях они обычно довольно крупные.
Аналогичную ситуацию я вижу и с интерфейсами на ПК. Грамотно выстроенная система горячих клавиш ⌨️ может значительно улучшить производительность пользователя. Вспомните, как шустро вы начинали работать с Midnight Commander или Far Manager, когда освоили хоткеи. Инструмент становится продолжением рук. Сочетания клавиш нажимаются мгновенно, не задумываясь.
Поэтому при разработке своих инструментов рекомендую все таки уделять внимание горячим клавишам. Причем они должны быть не просто назначены на определенные действия, а неразрывно связаны с бизнес-процессом, который обеспечивается инструментом. Тогда действительно можно добиться быстрой и непрерывной работы пользователя.
А вы помните какой-нибудь софт, где вам не хватало хоткеев? Я, кажется, часто с таким сталкиваюсь в веб-приложениях.
#Авто
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🔥2
#include <iostream>
class Base
{
public:
virtual void print( double x )
{
std::cout << "Base: " << x;
}
};
class Derived : public Base
{
public:
void print( float x ) override
{
std::cout << "Derived: " << x;
}
};
int main()
{
Derived a;
a.print(10);
}
Выше дан код на C++. Какой вывод будет у программы?
Anonymous Quiz
14%
Base: 10
46%
Derived: 10
11%
Base: 10Derived: 10
29%
Никакой. Ошибка компиляции
Практика ООП на C++: Абстракции, классы, наследование
Записал ребятам видео на проектный семинар в университете. Рассматриваем объектно-ориентированное программирование на C++ на примере создания классов и их наследовании, работаем с абстракциями и интерфейсами.
Это исключительно практическое видео. Пересказывать теорию я не хочу, да и в этом нет необходимости. Всё уже отлично рассказано в онлайне и книгах.
Об этом же когда-то говорил физиолог Павлов:
📱 YouTube | 📱 ВКонтакте
Записал ребятам видео на проектный семинар в университете. Рассматриваем объектно-ориентированное программирование на C++ на примере создания классов и их наследовании, работаем с абстракциями и интерфейсами.
Это исключительно практическое видео. Пересказывать теорию я не хочу, да и в этом нет необходимости. Всё уже отлично рассказано в онлайне и книгах.
Об этом же когда-то говорил физиолог Павлов:
Сколько я обращался к своим слушателям, столько я говорил им, что не читаю вам физиологию, я вам показываю. Если бы я читал, вы бы могли меня не слушать, вы могли бы прочесть это по книге, почему я лучше других! Но я вам показываю факты, которых вы в книге не увидите, а потому, чтобы время не пропало даром, возьмите маленький труд. Выберите 5 минут времени и заметьте для памяти после лекции, что вы видели.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2👍2
#include <iostream>
int main(int argc, char* argv[])
{
std::cout << int(argv[argc]) << std::endl;
return 0;
}
Выше дан код на C++. Какой вывод будет у программы?
Anonymous Quiz
25%
0
39%
Неизвестно (неопределенное поведение)
31%
Никакой. Ошибка компиляции
6%
Никакой. Ошибка времени выполнения
🤯6
Хэширование или шифрование
Иногда эти понятия путают, и причина путаницы понятна. При обоих операциях исходный текст превращается в нечитаемый набор символов. Происходит своего рода кодирование информации.
При этом хэширование - это однонаправленная функция. То есть то, что было захэшировано, обратно "расхэшировать" уже нельзя.
Шифрование же - функция двунаправленная. Зашифрованный текст мы можем расшифровать.
#Словарь
Иногда эти понятия путают, и причина путаницы понятна. При обоих операциях исходный текст превращается в нечитаемый набор символов. Происходит своего рода кодирование информации.
При этом хэширование - это однонаправленная функция. То есть то, что было захэшировано, обратно "расхэшировать" уже нельзя.
Шифрование же - функция двунаправленная. Зашифрованный текст мы можем расшифровать.
#Словарь
🔥2😁1
#include <iostream>
int foo()
{
return 1;
}
double foo()
{
return 2.0;
}
int main()
{
std::cout << foo() << " " << foo() << std::endl;
return 0;
}
Выше дан код на C++. Какой вывод будет у программы?
Anonymous Quiz
9%
1 2.0
6%
2.0 1
21%
По-разному. Неопределенное поведение
64%
Никакой. Ошибка сборки
Делай проще, говорили они.
Согласен, конечно. Но делать проще как-то ... сложновато 😐
📍 Career Advice: Simplifiers Go Far, Complexifiers Get Stuck
Согласен, конечно. Но делать проще как-то ... сложновато 😐
📍 Career Advice: Simplifiers Go Far, Complexifiers Get Stuck
😁2
Соискатели
В канун Нового года предлагаю поговорить о действительно важных вещах🤨
Помню, в аспирантуре помимо аспирантов были соискатели. Соискатель - это тот, кто тоже хочет защитить кандидатскую диссертацию, но не учится при этом в аспирантуре.
И меня всегда забавляло это слово, соискатели. Ну есть же, например, слова "сотрудники" и "сослуживцы". Сотрудники совместно трудятся над чем-то, а сослуживцы совместно служат где-то.
Что же тогда совместно ищут соискатели, и, главное, совместно с кем? Диссертации то, по сути, авторские.
Наверное, все ищут научную истину. Только аспиранты делают это в стенах университета, а соискатели - дома за компом. Но тогда и аспиранты тоже должны называться соискателями 🤨!
Но не называются.
Короче, вопрос открыт 🤷♂️
---
А пока вы раздумываете над "соискателями", принимайте поздравление с наступающим Новым годом!
🧦 🎁 🌲
В канун Нового года предлагаю поговорить о действительно важных вещах
Помню, в аспирантуре помимо аспирантов были соискатели. Соискатель - это тот, кто тоже хочет защитить кандидатскую диссертацию, но не учится при этом в аспирантуре.
И меня всегда забавляло это слово, соискатели. Ну есть же, например, слова "сотрудники" и "сослуживцы". Сотрудники совместно трудятся над чем-то, а сослуживцы совместно служат где-то.
Что же тогда совместно ищут соискатели, и, главное, совместно с кем? Диссертации то, по сути, авторские.
Наверное, все ищут научную истину. Только аспиранты делают это в стенах университета, а соискатели - дома за компом. Но тогда и аспиранты тоже должны называться соискателями 🤨!
Но не называются.
Короче, вопрос открыт 🤷♂️
---
А пока вы раздумываете над "соискателями", принимайте поздравление с наступающим Новым годом!
Please open Telegram to view this post
VIEW IN TELEGRAM
🎉9🔥3
#include <iostream>
struct A
{
int a1;
int a2;
void afoo() {}
};
struct B
{
int b1;
int b2;
};
int main()
{
std::cout << (sizeof(A) == sizeof(B)) << std::endl;
return 0;
}
CMake. Подключение внешних библиотек
По просьбетрудящихся учащихся записал видео-инструкцию по подключению внешних библиотек в проектах на CMake.
Рассмотрены 2 способа подключения:
1. С использованием функции find_package(). Способ самый простой и лаконичный.
2. Прямое подключение заголовочных файлов и библиотек с использованием функций target_include_directories(), target_link_directories().
Второй способ подойдет, если библиотека поставляется без конфигурационных файлов вида
В качестве примера подключается библиотека Qt.
В следующий раз рассмотрим организацию проекта на CMake с созданием и подключением собственных библиотек.
📱 YouTube | 📱 ВКонтакте
По просьбе
Рассмотрены 2 способа подключения:
1. С использованием функции find_package(). Способ самый простой и лаконичный.
2. Прямое подключение заголовочных файлов и библиотек с использованием функций target_include_directories(), target_link_directories().
Второй способ подойдет, если библиотека поставляется без конфигурационных файлов вида
*Config.cmake. В остальных случаях лучше использовать первый способ.В качестве примера подключается библиотека Qt.
В следующий раз рассмотрим организацию проекта на CMake с созданием и подключением собственных библиотек.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5
Исключение или код ошибки
В C++ и некоторых других языках программирования обработка ошибок может быть организована как с помощью механизма исключений, так и путем возврата кода ошибки.
И главная проблема - решить, какой из этих способов использовать в своем проекте. А мнений тут не одно и не два 🤭
Я обычно использую и то, и другое, руководствуясь следующим:
🔜 Исключение - для исключительной ситуации, когда ошибка не позволяет продолжить работу программы.
Далее:
🔜 На исключениях не должна строиться логика программы. Тогда лучше использовать статус-коды, которые могут определять как ошибки, так и известные неошибочные состояния.
🔜 Если код ошибки приходится "поднимать" по стеку высоко наверх, то вместо него лучше использовать исключение.
🔜 Напротив, если ошибка должна быть обработана вызывающим элементом, то вместо исключения подойдет код ошибки.
🔜 Исключения C++ не ABI-совместимые и это надо учитывать. Если отдельные компоненты программы собраны разными компиляторами, то исключение, брошенное из одного компонента, не может быть обработано другим компонентом. Тут - только коды ошибок.
И последнее:
🔜 Если на проекте определена стратегия обработки ошибок, то надо просто ей следовать.
А что используете вы?
👍 - исключения,
🔥 - коды ошибок,
🤓 - it depends
В C++ и некоторых других языках программирования обработка ошибок может быть организована как с помощью механизма исключений, так и путем возврата кода ошибки.
И главная проблема - решить, какой из этих способов использовать в своем проекте. А мнений тут не одно и не два 🤭
Я обычно использую и то, и другое, руководствуясь следующим:
Далее:
И последнее:
А что используете вы?
👍 - исключения,
🔥 - коды ошибок,
🤓 - it depends
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥2🤓1
int main()
{
char const* buf = "hello";
++buf; // 1
buf[0] = 'u'; // 2
return 0;
}
Выше дан код на C++. В каком месте будет ошибка компиляции?
Anonymous Quiz
31%
1
31%
2
9%
Ошибок нет
28%
Оба места с ошибкой
Павлов об уме
Прошлым летом я посетил дом Ивана Петровича Павлова в Рязани (на фото). Да, того самого Павлова, который на собаках что-то там исследовал.
По своему обыкновению я приобрел местной литературки со сборником лекций Ивана Петровича. Лекции, конечно, производят впечатление. Особенно зацепили выводы о нашем уме. Именно нашем, не собак. Потому что собаки собаками, а все таки они у Павлова были инструментом познания человека.
Говоря об уме, Павлов выделял несколько его особенностей. Хороших и не очень. Все я здесь приводить не буду, а остановлюсь на сосредоточенности и преимуществах молодого ума.
По Павлову к сосредоточенности "мы не наклонны". Предпочитаем скорее беготню мысли.
Ничего не напоминает? Совещание, митинг, статус, дейлик, ретро - как хотите назовите😵💫
Согласитесь, что хотя бы раз, но вы ловили себя на мысли: "что мы здесь вообще делаем..."
В то же время:
Не знаю как у вас, а у меня с сосредоточенностью ума все в порядке. Я легко могу неожиданно сосредоточиться на какой-нибудь ерунде, совершенно забыв, что вообще должен был сделать 😅
Особняком Павлов выделяет молодой ум.
Поэтому:
Думай головой, пока молодой 😉
Я бы сюда добавил еще один аргумент: свободное время. Чем мы моложе, тем его больше. Надо этим пользоваться.
Короче, читайте лекции Павлова. Среди них есть очень простые, понятные не только физиологам. Как-никак они отражают опыт большого человека и большого ученого.
#КнижнаяПолка
Прошлым летом я посетил дом Ивана Петровича Павлова в Рязани (на фото). Да, того самого Павлова, который на собаках что-то там исследовал.
По своему обыкновению я приобрел местной литературки со сборником лекций Ивана Петровича. Лекции, конечно, производят впечатление. Особенно зацепили выводы о нашем уме. Именно нашем, не собак. Потому что собаки собаками, а все таки они у Павлова были инструментом познания человека.
Уже 18 лет, как я занимаюсь изучением высшей нервной деятельности на одном близком и родном для нас животном, на нашем друге - собаке. И можно себе представить, что то, что в нас сложно, у собаки проще, легче выступает и оценивается.
Говоря об уме, Павлов выделял несколько его особенностей. Хороших и не очень. Все я здесь приводить не буду, а остановлюсь на сосредоточенности и преимуществах молодого ума.
По Павлову к сосредоточенности "мы не наклонны". Предпочитаем скорее беготню мысли.
Возьмем наши заседания. ... До чего заседания длинны, многоречивы и в большинстве случаев безрезультатны и противоречивы! Мы проводим многие часы в бесплодных, ни к чему не ведущих разговорах. Ставится на обсуждение тема, и сначала обыкновенно и благодаря тому, что задача сложная, охотников говорить нет. Но вот выступает один голос, и после этого уже все хотят говорить, говорить без всякого толку, не подумав хорошенько о теме, не уясняя себе, осложняется ли этим решение вопроса или ускоряется.
Ничего не напоминает? Совещание, митинг, статус, дейлик, ретро - как хотите назовите
Согласитесь, что хотя бы раз, но вы ловили себя на мысли: "что мы здесь вообще делаем..."
В то же время:
Возьмите гениальных людей. Ведь они сами говорят, что не видят никакой разницы между собой и другими людьми, кроме одной черты, что могут сосредотачиваться на определенной мысли, как никто. И тогда ясно, что эта сосредоточенность есть сила, а подвижность, беготня мысли есть слабость.
Не знаю как у вас, а у меня с сосредоточенностью ума все в порядке. Я легко могу неожиданно сосредоточиться на какой-нибудь ерунде, совершенно забыв, что вообще должен был сделать 😅
Особняком Павлов выделяет молодой ум.
Молодой ум - ум деятельный. Едва ли можно сомневаться, что в молодости человек читает больше, чем какой-либо записной ученый, весь погруженный в книги. А восторг, когда одолеваешь какую-нибудь трудную задачу. А отчаяние, когда сила новых фактов, идей разрушает твоих старых богов.
Молодой ум - ум философский. ... Молодой ум восприимчивый, свободный, без предрассудков.
Поэтому:
Основной целью молодости - должно приучить себя думать. Думать - это упорно исследовать предмет, иметь его в виду и ныне и завтра, писать и говорить о нем, подходить к нему и с одной и с другой стороны, короче испытать и радость и горе серьезного умственного напряжения, умственного труда.
Думай головой, пока молодой 😉
Я бы сюда добавил еще один аргумент: свободное время. Чем мы моложе, тем его больше. Надо этим пользоваться.
Короче, читайте лекции Павлова. Среди них есть очень простые, понятные не только физиологам. Как-никак они отражают опыт большого человека и большого ученого.
#КнижнаяПолка
Please open Telegram to view this post
VIEW IN TELEGRAM
🤓5❤2
Red Team или Blue Team
Оба термина относятся к информационной безопасности.
Red Team - это команда атакующих, цель которых состоит в нарушении работы информационной системы и кражи данных с помощью кибератак. "Плохие" ребята, так сказать. А иногда "плохие" и без кавычек.
Blue Team - это команда защиты информационной системы, призванная обнаруживать и предотвращать кибератаки.
#Словарь
Оба термина относятся к информационной безопасности.
Red Team - это команда атакующих, цель которых состоит в нарушении работы информационной системы и кражи данных с помощью кибератак. "Плохие" ребята, так сказать. А иногда "плохие" и без кавычек.
Blue Team - это команда защиты информационной системы, призванная обнаруживать и предотвращать кибератаки.
#Словарь
👍3🤓2