Где размять мозги программисту? Тренировочный полигон для айтишников

Всем привет! В этот раз расскажу, чем меряться программистам после кружки пива. Вот есть бегун, очевидно, что лучший бегун бежит или быстрее всех, или дальше всех. Или вот стрелок. Лучший конечно же тот, который чаще всего попадает в центр мишени, чем вне её.

А программистам и похвастаться нечем. Они не бегают и стрелять не умеют, а сидят сгорбленные, уставившись красными глазами в монитор и что-то пишут. Чем он занят? Зачем он здесь? Никто не знает.

А работодатель хочет знать как определить сильного программиста. По хиленьким ручкам, красным глазкам, горбатой спине или катышкам на свитере? Ну, допустим, текущему работодателю определить просто — надо брать того, кто не слишком сильно пахнет, а как быть с новым работодателем?

Вот пришёл ты такой красивый на собес и тебе прямо с порога — давай сортировку пузырьком пиши в уме! А ты работаешь в своём НИИ уже пятый десяток и всегда использовал метод sort() из вашей секретной сверхбыстрой библиотеки на Фортране и знать не знаешь что у неё внутри. И библиотека та написана учёным седовласым мужем, чьё имя с отчеством произносятся в конторе с придыханием и пиететом и бюст евоный стоит сразу при входе в холле. И значит это ровно то, что часть мозга, которая отвечает за простейшие алгоритмы атрофировалась за ненадобностью. Потому что все эти вещи пишутся один раз и навсегда, а не каждый день, как полагает потенциальный работодатель. Посему надо держать себя в тонусе. И помогут нам в этом два сайта LeetCode и HackerRank. Оба сайта, в принципе, одинаковые, но работодателя больше возбуждает HackerRank почему-то. Может из-за названия?

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

Кому интересно, мой профиль на LeetCode и HackerRank.

Симуляции жидкости в реальном времени

Всем привет!

Наткнулся на видео о том, как работает симуляции жидкости:

И там же есть полезная ссылка на книгу о симуляции жидкости в реальном времени: Real-Time Fluid Dynamics for Games. Сишного кода в книге на сто строк всего. Безо всякой зубодробительной математики. Любопытно, что книга понятнее, чем видео. Схороню здесь, чтобы не потерять. Давно интересовался этой темой.

И чтоб два раза не вставать, симуляция нетвёрдых тел (типа желе):

Возможно, в будущем, напишу реализацию жидкости/дыма на JavaScript и выложу на сайте с описанием и исходниками.

Сайт для создания и тестирования шейдеров

В поисках Gaussian Blur наткнулся на сайт shadertoy.

Можно менять параметры налету и смотреть что получается. Попробуйте на примере Gaussian Blur. Платформа WebGL 2.0, язык GLSL, рекомендую к ознакомлению.

Также можно встраивать результат на страницу:

Онлайн книжка по неопределённому поведению C++

Всем привет!

Буду краток, товарищ поделился ссылкой (спасибо, Влад!) на труд другого умного товарища.
Эта книга пригодится каждому программисту C++: Путеводитель C++ программиста по неопределенному поведению.

Как избавиться от спам-звонков за два шага

Всем привет, буду краток! Вам понадобится всего две вещи:
1. Антиспам от Касперского: Антиспам: Kaspersky Who Calls
2. Телефонный робот-секретарь от банка Тинькофф: Телефонный секретарь Олег

Первое приложение — показывает насколько полезный звонок. Второй поговорит за вас, если вы всё равно сомневаетесь в звонящем. Всё это бесплатно, то есть даром. Не благодарите. Если возникнут вопросы, спрашивайте в комментариях, всё расскажу.

Инструкция подходит для телефонов Android. Для пользователей техники Apple инструкций нет, потому что богатые должны страдать она точно такая же.