четверг, 1 мая 2025 г.

[life.cinema] Очередной кинообзор (2025/04)

Традиционный отчет о просмотренных фильмах. Традиционно в начале каждого из списков то, что понравилось больше.

Фильмы

Я слежу за тобой (Geunyeoga jukeotta, 2024). Очень даже неплохо. И сюжет интересный, и подача прикольная, и нет чрезмерного кривляния, присущего азиатским фильмам.

Наследство (Inheritance, 2025). Сильно двойственные чувства. С одной стороны, отличный пример того, как задешево снять хорошую историю. С другой стороны, манера съемки меня стала раздражать уже через 10 минут, а к концу откровенно бесила.

Опустошение (Havoc, 2025). Сам по себе фильм средний, но зато динамичный с большим количеством экшОна и кровищи. А вот что его выделяет -- так это обилие компьютерной графики. Если в последние лет пять-шесть в практически во всех боевиках выстрелы из стрелкового оружия нарисованы на компьютере, то здесь пошли еще дальше. У меня сложилось ощущение, что в "Опустошении" даже сцена погони на автомобилях была отрисована полностью посредством компьютерной графики.

Расплата 2 (The Accountant 2, 2025). Если понравилась первая часть, то можно смотреть и вторую. Но, как по мне, вторая была покруче (в том числе и в том, как были сняты перестрелки), хотя и более занудная.

Новокаин (Novocaine, 2025). Простенько, предсказуемо, но динамично и скучать приходится редко. Однако, мне показалось, что это в большей степени кино для подростковой аудитории. Ну и не нужно смотреть его тем, кто не выносит сцен насилия и вида тяжелых травм и увечий на экране.

Денежная игла (Body Brokers, 2020). По качеству средне, и не хорошо, и не плохо. Меня история не зацепила, но может быть тем, кому интересны социальные проблемы США и понравится.

Любовь - боль (Love Hurts, 2025). Досмотреть-то досмотрел, но жалею, что не выключил где-то после 25-30 минут. Вообще после просмотра главный вопрос: для кого вообще это снимают. А как рекомендация: не смотреть и не тратить свое время.

Сериалы

Страх над Невой (первый сезон, 2023). Наверное, можно смотреть тем, кому зашли последние сезоны "Мосгаза". Не могу сказать, что мне понравилось. Во-первых, мы с женой как-то убийцу угадали еще в начале второй серии. Во-вторых, местами это был не столько детектив, сколько сопливая мелодрама про любовные треугольники. Ну и ближе к финалу маразм происходящего стал усиливаться настолько, что это начало откровенно подбешивать. В общем, средней паршивости.

Тихая гавань (Safe Harbor, 2025). Слишком уж скучно, нужно и затянуто. Уместили бы все это в 4 серии, было бы гораздо лучше. Ну и лично для меня в этом сериале не оказалось ни одного персонажа, за которого не то, чтобы хотелось переживать, но вообще хотя бы следить за его судьбой.

Джек Ричер (Reacher, третий сезон, 2025). Если первые два сезона понравились, то можно посмотреть и третий. Но если уже от второго возникло отторжение, то от просмотра очередного сезона лучше воздержаться. В финальной серии, традиционно, какое-то царство победившего маразма.

Хороший человек (первый сезон, 2020). Мне показалась, что это полная муть, да еще и снятая больными на всю голову людьми.

Начинал, но не закончил

Переходный возраст (Adolescence, первый сезон, 2025). Осилил только первую серию. Мне показалось, что это кино для девочек. Начал смотреть только потому, что говорят, что там каждая серия снята одним дублем. Вот и интересно было увидеть, как это выглядит. ИМХО, именно как кино от такого подхода сериал теряет, т.к. при наличии нормального монтажа ту же самую первую серию можно было бы сделать гораздо драматичнее.

Аутсорс (первый сезон, 2025). Меня хватило на первые две серии. Полагаю, что представляю куда все уйдет дальше -- в мрачную социальную драму, где все будут против всех. Продолжать не захотелось, т.к. очень уж сильно сериал напоминает чернушный соцреализм конца 1980-х.

вторник, 29 апреля 2025 г.

[prog.c++] Захотелось тут странного для std::vector

Недавно столкнулся с ситуацией, когда хотелось у std::vector вызвать метод resize для увеличения размера вектора, но без инициализации новых элементов. Что-то вроде:

std::vector<some_value> unpacked;
std::size_t num_items = detect_number_of_items_to_unpack(packed_data);
// Явно указываем, что начального значения нет.
unpacked.resize(num_items, std::keep_uninitialized);
// Просто перезаписываем память, которая уже выделена.
unpack_to(packed_data, unpacked.data());

Т.е. std::vector нужен просто как удобный механизм работы с векторами значений в динамической памяти. А делать resize с какими-то дефолтными значениями только для того, чтобы затем эти значения были затерты... Ну такое себе, лишние траты, которых хотелось бы избежать.

Понимаю, что в std::vector этого не будет никогда, т.к. слишком уж легко ошибиться и после подобного resize обратиться к неинициализированному объекту. Но вот в данном конкретном случае захотелось, чтобы такое в std::vector было.


А еще моя давнишняя мечта иметь в std::vector конструктор, который бы позволял задавать не size, а capacity. Чтобы можно было писать:

std::vector<some_value> unpacked{ std::with_capacity(n) };

вместо:

std::vector<some_value> unpacked;
unpacked.reserve(n);