Famabara

Posts of user: dima


Может ли россиянин позволить себе квартиру в Москве?

dima
2 mo. ago
Согласно данным Росстата в 2023 году среднемесячная номинальная начисленная заработная плата работников в Москве была 138882 рублей.

Для сравнения:
Ростовская область - 52100 руб.
Краснодарский край - 58256 руб.
Волгоградская область - 51833 руб.
Средняя по всей России - 74854 руб.

Согласно данным Циана в 2023 года стоимость среднего московского квадратного метра в новостройке была 291000 рублей.

Теперь предположим, что у нас семья из 4 человек - мама, папа, двое детей. Оба родителя работают (хотя часто один не работает, но, ладно, пусть работают оба). Такая семья должна жить в человеческих условиях, а не в однушках или в "студиях", прости-господи. Адекватная (!) минимальная площадь квартиры должна быть от 60 м2 для 4 человек, т.е. каждому хотя бы по 15 м2.

Таким образом, чтобы купить такую квартиру им нужно 60 * 2910000 = 17,46 млн рублей.

Давайте теперь считать - сколько месяцев должны работать родители, причем не есть, не пить, не платить коммуналку, не покупать одежду и прочее, чтобы накопить на такую московскую квартиру.

Ростовская область: 17460000 / (52100 * 2) = 167 месяцев = 13,9 лет.
Краснодарский край: 17460000 / (58256 * 2) = 150 месяцев = 12,5 лет.
Волгоградская область: 17460000 / (51833 * 2) = 168 месяцев = 14 лет.
"Средняя" Россия: 17460000 / (74854 * 2) = 116 месяцев = 9,7 лет.
Москва: 17460000 / (138882 * 2) = 63 месяца = 5,2 лет.

Разумеется, это нереалистично-оптимистичные подсчёты. Людям надо чем-то питаться, им придётся платить за электричество и проезд в общественном транспорте все эти годы. Поэтому все эти числа можно смело умножать на 2. Те, у кого есть дети, знают насколько "бьёт" по карману содержание детей.

По факту получается, что рядовой российской семье квартира в Москве никогда не светит. В противном родителям придётся более 20 лет работать, чтобы уже ближе к старости получить эти убогие 60 квадратных метров в муравейнике.

Квартиры в Москве доступны... только москвичам. Какой-то заколдованный круг.
+5
85

Ford Focus 3: не заводится, делает чик-чик-чик, когда пытаешься завести

dima
2 mo. ago
Пишу, может кому поможет.
Дано авто: Форд Фокус 3 2013 года выпуска (дорестайлинговая версия), двигатель 1,6 л, 125 лс.
Сажусь в машину, завожу ключом, но машина лишь издаёт "чик-чик-чик" и гаснет экран. Сразу мысль на аккумулятор - я его не менял с момента покупки авто, а уже прошло 11 лет. Вообще, это мегарекорд для обычного автомобильного аккумулятора, обычно они 3-7 лет служат.

Нахожу на Авито объявление "прикурить/заменить" аккум. Звоню, выбираю аккум, через полчаса приезжает человек, меняет аккумулятор. Делов на 10 минут.

Кстати, на ютубе есть ролик, где человек на Фокусе 3 меняет аккумулятор и сначала снимают плюсовую клемму. Так вот это небезопасно, может долбануть током!

Вообще, до этого у меня был Ford Focus 2 и там была похожая проблема на пробеге в 100 тысяч, только машина делала при повороте ключа не "чик-чик-чик", а "пзиууу" и тоже не заводилась. Там проблема оказалась в бендиксе стартера. Но в нынешней проблеме обошлось минимальными трудностями, а я терпеть не могу по автосервисам ездить и тратить на них своё время.

Человек, который менял на моём Форде АКБ тоже удивился, когда узнал, что батарея родная за более чем 11 лет, в его опыте это тоже рекорд службы. На российских фордах тогда ставили вроде бы немецкие Варты, как теперь видно очень хорошая фирма оказалась.

Любопытно, что у меня даже в ключе стоит до сих пор родная батарейка. Разобрал ключ - CR 2032 3V Panasonic. Во раньше качество делали!
+3
42

Стоит ли идти в Исторический музей на Красной площади

dima
3 mo. ago
Государственный исторический музей - замечательное место, обязательно стоит пойти.
Есть масса интересных исторических экспонатов.

Личный автомобиль Ленина? Пожалуйста!
Бивни мамонта с берегов Енисея.
Show full...
+3
15

Передача по ссылке и передача по значению в JavaScript

dima
3 mo. ago
Насколько хорошо вы знаете JavaScript?
Как в JS передаются значения - по ссылке или по значению? Не спешите, подумайте даже если вы "мидл" или синьор-помидор.
let str1 = 'Famabara';
let str2 = str1; // Тут копия или новая строка?

let obj1 = { name: 'Famabara' };
let obj2 = obj1; // Тут копия или новый объект?

Можете в опросе ответить:
Как передаются значения при присвоении в переменную или в свойство объекта?
Теперь посмотрим, что нам говорит learn.javascript.ru - очень популярный в рунете учебник JavaScript:
А теперь давайте запустим в NodeJS такой код:
const arr = [];

for (let i = 0; i < 1200200; i++) {
  arr.push('0123456789'.repeat(1000 * 1000));
}

while (true) {
}

После запуска смотриим программой top потребление ресурсов:
39858 dima      20   0 2026180   1,0g  37824 R 100,0   3,2   0:21.44 node 
На моей Кубунте сожрано 1 Гб оперативки. Ух ты.

Теперь изменим немного код:
const arr = [];
const text = '0123456789'.repeat(1000 * 1000);

for (let i = 0; i < 1200200; i++) {
  arr.push(text);
}

while (true) {
}

Смотрим ещё раз через top:
40267 dima      20   0 1066148  73796  37440 R  99,7   0,2   0:12.27 node

Программа потребила всего 73 Мб вместо 1 Гб. Согласно популярной теории о копировании примитивов такого быть не должно. ;)

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

Кстати, на ноде в Windows 10 аналогичное поведение - около 1 Гб потребление против менее 100.

Ну, а теперь главный секрет! :)
В JavaScript всё передаётся/копируется по ссылке!
Show full...
+4
27

Популярность Vue.js в 2024

dima
3 mo. ago
Это перевод моего англоязычного поста - https://famabara.com/posts/108

Попытаюсь измерить попурлярность Vue.JS. Я очень люблю этот фреймворк, поэтому всецело за его популяризацию :)

Сначала давайте посмотри на статистику скачиваний на NPM.
Сейчас и год назад:
vue - 4,868,119 - 3,746,361
@angular/core - 3,416,382 - 3,015,855
react - 23,763,131 - 20,548,838

Как видно, по абсолютным значенияем React на первом месте. Ну, а VueJS занимает только второе место.

А теперь посмотрим на относительный рост в процентах по отношению к прошлому году.
vue +29,9%
angular +13,3%
react +15,6%
Ура! Популярность Вью растёт быстрее, чем у остальных из "большой троицы".

Ну а теперь пройдусь по сайтам из топа Гугла и посмотрим, какие там используются фреймворки.
В качесте тестового запроса взял англоязычный запрос "rent car".
Юзал Wappalyzer - это расширение для браузера, чтобы детектить используемые технологии.

Вот список сайтов; NF - означает "нет фреймворка из большой троицы".
rentalcars.com - NF
enterprise.com - NF
kayak.com - React
avis.com - NF (есть старый AngularJS)
localrent.com - Vue
hertz.com - NF (есть старый BackboneJS)
sixt.com - React
budget.com - NF (есть старый AngularJS)
zipcar.com - NF
turo.com - React
autoeurope.eu - NF
alamo.com - React
rent.toyota.co.jp - NF
booking.com - React
costcotravel.com - React
borent.nl - NF
europcar.com - Vue
turo.com - React
vipcars.com - NF
skyscanner.net - React
tripadvisor.com - NF
timescar-rental.com - NF
klook.com - Vue
wiberrentacar.com - Vue
uber.com - NF
dollar.com - React
edreams.com - Vue
nationalcar.com - NF
thrifty.com - NF

Ну что, всё очень неплохо для Vue.JS! Он постепенно захватывает англоязычные сайты.
Show full...
+4
12

Мел Брукс получил почётный Оскар

dima
3 mo. ago
Мел Брукс один из моих любимых режиссёров, очень нравятся его пародии. Оказывается, в этом году он получил почётный Оскар - "Премия за выдающиеся заслуги в кинематографе". Это как бы отдельная премия вне "текущего сезона", ею награждают видных кинодеятелей.
Автор фото: KEVIN WINTER/GETTY

Оскар вполне заслуженный, он классный пародийный режиссёр.

Мы с женой очень любим пересматривать "Дракула: Мёртвый и довольный" (Dracula: Dead and Loving It). Комедия особенно хороша в переводе Сербина.
Show full...
+2
17

Как я сражался на сервере с вирусом-криптомайнером, маскирующимся под PostgreSQL

dima
3 mo. ago
Целая детективная история разыгралась на моём сервере.

Дано: небольшой арендуемый у хостера сервер с Debian 12 и последней PostgreSQL 16. Постгрес стоит без всяких докеров.

Месяц назад начал тормозить сервак. Думаю, что за ерунда, захожу по SSH, ввожу:
top
и вверху поверх всякой мелочи вижу это:
 PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
2251 postgres  20   0 2445140   2,3g      4 S 400,7  14,7   6:20.66 kswapd0
Жрёт все ресурсы, процессор загружен полностью.
Зарождается слабая мысль о криптомайнерах, но пока не понимаю, как вирус проник на сервер. Пароль у рута сложный, да и тут про постгрес написано.

В общем, думаю - ну, заглючил PostgreSQL, наверное. Убиваю процесс и перезагружаю сервак (это всегда полезно):
kill 2251
reboot
Захожу по SSH снова - чисто. Ну, думаю, всё ок.

Потом опять тормоза через некоторое время. Смотрю - эта хрень опять запущена. И странно как-то всё, причём тут юзер postgres?

Полез гуглить. Про этот kswapd и нагрузку на проц много разрозненных сообщений. Народ про него пишет и 2013, и в 2017, а у меня вообще-то 2024 на дворе, а ведь в те годы не было ещё криптовалют.
Может это не криптомайнер, а что-то другое?
Пытаюсь понять, кто запускает процесс. Делаю:
ls -l /proc/2251/exe
выводит:
lrwxrwxrwx 1 postgres postgres 0 июл 23 13:12 /proc/2251/exe -> /var/lib/postgresql/.configrc5/a/kswapd0
Такс... Находится в каталоге postgresql. А вдруг это важная часть сервера базы данных? Названо ведь так "по-умному" - configrc5.

Решаю просто переименовать каталог:
kill 2251
cd /var/lib/postgresql
mv .configrc5 _renamed_.configrc5
reboot
После этого всё хорошо... но только пару недель :)

Через эти пару недель опять веселуха с загрузкой всех ядер процессора.
Смотрю - каталог снова создан. Значит точно криптовалютный вирус. Но как зараза проникла на сервер?

Наконец-то до моей глупой головы дошло посмотреть логи SSH:
journalctl -t sshd
Опытные линуксоиды знают, что так смотреть не имеет смысла. Там толпы кул-хацкеров пытаются подключиться к серверу, но обламываются.
Фильтрую только логи успешного входа по SSH:
journalctl -t sshd --since "2024-08-01" --until "2024-08-16 10:00:00" | grep "Accepted "
И там среди моих заходов вижу эту падлюку:
Jul 06 11:40:07 debian sshd[589266]: Accepted password for postgres from 103.94.113.2 port 33482 ssh2
Jul 10 08:18:00 debian sshd[723300]: Accepted publickey for postgres from 162.217.64.26 port 60366 ssh2: RSA SHA256:MkYY9qiVsFGBC5WkjoClCkwEFW5iSjcGQF7m4n4H7Cw
Aug 02 07:45:44 debian sshd[258599]: Accepted publickey for postgres from 206.189.36.236 port 47140 ssh2: RSA SHA256:MkYY9qiVsFGBC5WkjoClCkwEFW5iSjcGQF7m4n4H7Cw
Aug 02 07:50:53 debian sshd[258915]: Accepted publickey for postgres from 157.245.42.37 port 50478 ssh2: RSA SHA256:MkYY9qiVsFGBC5WkjoClCkwEFW5iSjcGQF7m4n4H7Cw
Aug 14 10:23:08 debian sshd[99132]: Accepted publickey for postgres from 82.165.79.77 port 40086 ssh2: RSA SHA256:MkYY9qiVsFGBC5WkjoClCkwEFW5iSjcGQF7m4n4H7Cw
Aug 14 10:47:37 debian sshd[99723]: Accepted publickey for postgres from 103.146.52.138 port 55110 ssh2: RSA SHA256:MkYY9qiVsFGBC5WkjoClCkwEFW5iSjcGQF7m4n4H7Cw
Ёлы-палы! Сначала чувак вошёл по паролю, а потом уже входил по ключу.

Ради интереса проверил айпишники:
103.94.113.2 - India
162.217.64.26 - USA
206.189.36.236 - Singapore
103.146.52.138 - Hong Kong
Целый ботнет. Или VPN-ы. Не знаю, да и это не важно.

Начинаю вспоминать, что когда ставил PostgreSQL, создавал примитивный пароль. Или вообще не задавал его - точно не помню.

Срочно меняю пароль юзеру postgres:
passwd postgres
и ставлю запрет входа SSH для определённых юзеров:
nano /etc/ssh/sshd_config
DenyUsers postgres no-reply blah
В идеале, конечно вообще всем запретить, а оставить только для разрешённых.

Перезагружаем SSH демона:
systemctl restart sshd

Кстати, это зараза прописала SSH-ключ в:
/var/lib/postgresql/.ssh/authorized_keys
ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEArDp4cun2lhr4KUhBGE7VvAcwdli2a8dbnrTOrbMz1+5O73fcBOx8NVbUT0bUanUV9tJ2/9p7+vD0EpZ3Tz/+0kX34uAx1RV/75GVOmNx+9EuWOnvNoaJe0QXxziIg9eLBHpgLMuakb5+BgTFB+rKJAw9u9FSTDengvS8hX1kNFS4Mjux0hJOK8rvcEmPecjdySYMb66nylAKGwCEE6WEQHmd1mUPgHwGQ0hWCwsQk13yCGPK5w6hYp5zYkFnvlC8hGmd4Ww+u97k6pfTGTUbJk14ujvcD9iUKQTTWYYjIIu5PmUux5bsZ0R4WFwdIe6+i6rBLAsPKgAySVKPRK+oRw== mdrfckr
Разумеется это надо сразу удалять.
Show full...
+3
34

Vue.js popularity in 2024

dima
3 mo. ago
Let's try to measure the popularity of Vue.JS. I really like this framework and I am a supporter of its popularization.

First, let's look at the download statistics on NPM.
Now vs year ago:
vue - 4,868,119 - 3,746,361
@angular/core - 3,416,382 - 3,015,855
react - 23,763,131 - 20,548,838

As you can see, React is in the first place in absolute values. And VueJS is only in second place.

And now let's look at the percentage growth relative to last year's values.
vue +29,9%
angular +13,3%
react +15,6%
Hurray! Vue's popularity is growing faster than any of the three!
And now let's go through the sites from the top of Google and see what JS frameworks are used there.

For example, let's take the search query "rent car".
To understand which libraries each site uses, I used Wappalyzer browser extension.
Websites from search results; NF means "there is no framework from the big three".
rentalcars.com - NF
enterprise.com - NF
kayak.com - React
avis.com - NF (old AngularJS)
localrent.com - Vue
hertz.com - NF (old BackboneJS)
sixt.com - React
budget.com - NF (old AngularJS)
zipcar.com - NF
turo.com - React
autoeurope.eu - NF
alamo.com - React
rent.toyota.co.jp - NF
booking.com - React
costcotravel.com - React
borent.nl - NF
europcar.com - Vue
turo.com - React
vipcars.com - NF
skyscanner.net - React
tripadvisor.com - NF
timescar-rental.com - NF
klook.com - Vue
wiberrentacar.com - Vue
uber.com - NF
dollar.com - React
edreams.com - Vue
nationalcar.com - NF
thrifty.com - NF

As you can see, Vue is actively moving forward!
Show full...
+2
29

Яндекс Карты удобнее Google Maps

dima
3 mo. ago
Попользовавшись мобильными Яндекс Картами, а потом перейдя на Гугл Карты, понимаешь насколько у Яндекса удобнее интерфейс.
Show full...
+2
23

Риэлторы и застройщики врут о количестве комнат в квартирах

dima
3 mo. ago
Как же надоели застройщики и риэлтеры, которые врут в своих объявлениях и рекламе. Написано - трёхкомнатная квартира, открываешь страницу, а там двушка. Или пишут двухкомнатная - а там однушка с кухней 15 м2. И вот эта кухня - это типа ещё одна комната по логике этих риэлтеров. Сволочи, задолбали.

Ну почему людей за идиотов держат? Это же только оттлалкивает людей. У покупателей есть голова на плечах, покупатель видит, что кухня - это кухня и никакой дополнительной комнаты нет. Что мешает тогда все кладовки и ванные комнаты записать в обычные комнаты? Теперь это не санузел, теперь это ванная-кабинет! 2 м2 ванная комната и аж 3 м2 кабинет!!!

Ладно, риэлтеры - черт с ними, у тех вообще совести нет, но застройщики-то почему обманывают?
Давайте пройдёмся немного по московским строительным компаниям.

Компания MR Rroup. Выбираю трёшки:
Показывает двушку вместо трёшки:
Show full...
+2
14

Кассы в фастфудных

dima
3 mo. ago
Как хорошо, что современные фастфудные заведения имеют кассы самообслуживания.
Их всегда много, хватает на всех, очереди бывают крайне редко.

Ещё десять лет назад очень утомляли очереди на обычные кассы. Работало максимум два-три кассира, каждый заказ занимал много времени, особенно если много позиций. А теперь потыкал пальцем, оплатил картой и жди, когда твой номер появится на экране.

А на обычных кассах уже и кассиров часто нет, ибо не нужно никому:
Show full...
+3
17

Очередной старинный дом сгорел в Ростов-на-Дону

dima
3 mo. ago
Старинное здание находится по адресу Серафимовича, 54. Это был доходный дом Ботвинникова, построен в 1910 году. Сегодня , 4 августа 2024 он сгорел.
Воду льют напором с нескольких шлангов. Что не уничтожено пожаром, будет уничтожено водой и дальше плесенью.
Show full...
+2
11

Смотреть шортсы Ютуба как обычные Youtube-видео

dima
3 mo. ago
А вы знали, что можно смотреть шортсы Youtube как обычные видео? Т.е. будет обычный функционал проигрывателя и т.п.

Вот например ссылка на короткое видео:
https://www.youtube.com/shorts/2vGr1VifPyg

В этой ссылке есть id ролика - это "2vGr1VifPyg".
Вставляем эту ссылку в "обычный" ютубовский формат урла:
https://www.youtube.com/watch?v=2vGr1VifPyg
Вуаля, это теперь просто ролик на Youtube.

По факту получается, что технически шортс - это совершенно обычное видео, просто с другим оформлением.
+3
108

Пандорум (2009) - интересные факты о фильме

dima
3 mo. ago
Специально для Famabara перевожу с IMDB интересные факты о фильме "Пандорум" - их почему-то никто ещё не переводил на русский. Сразу предупреждаю - есть небольшие спойлеры.
Фильм должен был быть трилогией, но, увы, не получилось - мало заработано с билетов в кинотеатрах, а продюсеры такое не любят, даже если фильм потом получил хорошие оценки зрителей.
Show full...
+3
19

Пляж Сады морей в Геленджике 2024 - отзыв и обзор

dima
3 mo. ago
Пляж Сады морей считается одним из лучших пляжей в Геленджике. В принципе, я с этим согласен. Говорю как "обычный" человек, который не покупает за много денег лежак. На российском Черном море лежаки и зонты стоят каких-то неадекватных денег, поэтому большинство из них пустуют.
Количество платных лежаков в Геленджике, конечно, многовато. Перебор, раньше их было меньше. Хотя в сочинском Адлере с этим ещё хуже, мы там даже как-то ругались с хамовитыми владельцами этих лежаков. Но "обычного" места хватает; правда, если отдыхающих будет больше, то уже по головам будут ходить. Тут ещё дома на Крымской в ЖК Черноморский построили, стало ещё больше людей, а пляж Сады Морей не резиновый.
Show full...
+3
10

Сириус проектировали кретины

dima
3 mo. ago
Если ваша цель - получить тепловой удар, то добро пожаловать в сочинский Сириус.
Для отдыхающих вообще нет тени. Сириус не идёт ни в какое сравнение с Геленджиком, где вся набережная засажена пышными соснами. В Сириусе подобие тени есть в "старых" кварталах. Но в новых просто ад:
Show full...
+2
13

Может ли трава расти в тени под деревьями?

dima
3 mo. ago
Да, если её поливать:
+2
52

Деревянные окна - редкий гость

dima
3 mo. ago
Гулял по городу, заметил многоквартирный дом, у которого было много деревянных окон.
Деревянные окна, конечно, выглядят красивее пластиковых, но проигрывают по другим параметрам (если сравнивать обычные "старые" деревянные окна).

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

Насколько хорошо вы знаете Москву

dima
3 mo. ago
Как называлась в царское время улица Новый Арбат?
В каком году были открыты первые станции Московского метрополитена?
Если ехать по Кутузовскому проспекту в сторону Кремля, то попадёшь на...
Храм Василия Блаженного также называется...
Кто был первым мэром Москвы в 1991 году?
Show full...
+3
13

Как запустить Elasticsearch из-под рута

dima
3 mo. ago
Elasticsearch не разрешает запускать себя из-под пользователя root, это намеренно сделанное ограничение. Если нужно оставаться под рутом по тем или иным причинам, а запустить Elasticsearch нужно, то есть обходное решение.

Нужно создать пользователя, например, назвав его elastic:
useradd elastic

Далее делаем этого юзера владельцем каталога c Эластиком:
chown -R elastic:elastic ./elasticsearch-8.14.3

И наконец используем программу runuser для запуска Elasticsearch из-под другого юзера:
runuser -u elastic -- /elasticsearch-8.14.3/bin/elasticsearch -d -p pid.txt

Эластиксёрч будет запущен, рут-юзер сможет к нему подключаться.

Напоминаю, что runuser может использоваться только root-пользователем.
+2
50