- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
IT Оффтоп #51
#1: https://govnokod.ru/18142 https://govnokod.xyz/_18142
#2: https://govnokod.ru/18378 https://govnokod.xyz/_18378
#3: https://govnokod.ru/19667 https://govnokod.xyz/_19667
#4: https://govnokod.ru/21160 https://govnokod.xyz/_21160
#5: https://govnokod.ru/21772 https://govnokod.xyz/_21772
#6: (vanished) https://govnokod.xyz/_24063
#7: https://govnokod.ru/24538 https://govnokod.xyz/_24538
#8: (vanished) https://govnokod.xyz/_24815
#9: https://govnokod.ru/24867 https://govnokod.xyz/_24867
#10: https://govnokod.ru/25328 https://govnokod.xyz/_25328
#11: (vanished) https://govnokod.xyz/_25436
#12: (vanished) https://govnokod.xyz/_25471
#13: (vanished) https://govnokod.xyz/_25590
#14: https://govnokod.ru/25684 https://govnokod.xyz/_25684
#15: https://govnokod.ru/25694 https://govnokod.xyz/_25694
#16: https://govnokod.ru/25725 https://govnokod.xyz/_25725
#17: https://govnokod.ru/25731 https://govnokod.xyz/_25731
#18: https://govnokod.ru/25762 https://govnokod.xyz/_25762
#19: https://govnokod.ru/25767 https://govnokod.xyz/_25767
#20: https://govnokod.ru/25776 https://govnokod.xyz/_25776
#21: https://govnokod.ru/25798 https://govnokod.xyz/_25798
#22: https://govnokod.ru/25811 https://govnokod.xyz/_25811
#23: https://govnokod.ru/25863 https://govnokod.xyz/_25863
https://govnokod.ru/26809#comment560788
А то они совсем скучные стали. Вореативность на нуле.
Может ангуляром скрывать дубли или сплющивать их до одного сообщения.
там всё как мы любим, это стадия отрицания, судя по всему
Я тоже так считаю.
Дуров не будет сливать их данные.
Они давно уже слиты.
Чтобы он рандомно (не слишком часто) отвечал привычными overused-фразочками: «Именно поэтому я за...», «Какой багор )))» и то что сейчас форсят гости.
Фразы форсов вполне тривиально детектятся алгоритмически проходом стока и подсчётом повторяющихся комментариев.
Пора вернуть в юзер-скрипты фильтр
а) ты пишешь лишпушню
б) тащишься от какого-то конкретного пакета, например, magit (риальне охуене)
Так ты лет через 25 дойдёшь до NPP, а ко второй половине столетия и до VSCode
- поделись инсайдом, что там впереди? Стоит ли уже или тщётно?
А так VSCode.
Акции яббл и гугл будут и дальше расти.
Рубль и дальше будет девальвировать.
>результаты футбольных матчей
Российская сборная опять обосрётся.
Лалки опять забанят Царя.
На говнокод опять набигут спаммеры.
Наверное, правильнее говорить, не опять, а вспять, или какое-то другое слово наворецить.
Скриптообезьяна яростно набросилась на фреймворк, который отнимает у неё бананы.
TLDR: Тильда — это рак, постепенно поглощающий здоровый рунет (и в гораздо меньших масштабах весь остальной интернет). Тильда забирает работу у разработчиков и дизайнеров и даёт её людям, которые справляются гораздо хуже. Она поспособствовала появлению целого пласта «специалистов», которые ничего не умеют, кроме визуальной верстки, но позиционируют и продают себя как крутых дизайнеров/разработчиков. Она генерирует более тяжелые страницы, чем вордпресс!
Tilda — это визуальный редактор, возведенный в абсолют. В нём можно мышкой набросать статическую страницу произвольной длины и сложности, добавить туда немного динамического функционала, доступного из коробки, и в пару кликов всё это опубликовать. Это очень просто. Слишком просто.
>>> tl;dr: если вам нужно сделать лендос или простой магазин, не делайте это за 750р в месяц, а наймите фрилансеров за 100500++, которые сделают то же самое, только с багами, и добавление поля будет занимать не минуту, а неделю.
Каждый раз когда очередная технология безжалостно выдавливает бездарное быдлецо с рынка, оно начинает истошно вопить про пирформанс и о необходимости «дорогих, крутых профессионалов».
Там первые два коммента исчёрпывающие:
Почему тильда зло, а средней руки веб-сайт с ангуляро-реактами на 20 мегабайт — добро? Оба зло.
Пишите хороший html, без лишнего мусора, и будет вам счастье. Но нет, надо траспилять через три языка и два фреймворка, так, чтобы никто никогда не понял, что там написано.
eternum
29 июня 2020 в 18:06
0 Да бросьте, сам веб по себе бесконечное добро. Люди которые на десктопных фреймворках пол жизни сидели, при входе в веб крестятся. Количество «секретов css» для создания чего-то смехотворного простого зашкаливает. Хороший html — мёртвый html. Количество мусора которые генерируют все ВИЗИВИГи это не злая шутка и не кривые руки, это необходимость. Ровно как и все раздутые фреймворки и транспиляторы — попытка смести под ковёр то, как оно будет выполняться в браузере.
там не так давно сделали трехмерную модельку и пустили её в вебкам. естественно, ее пихнули на главную страницу, и все двачеры побежали с обычных стримов смотреть на чудо чудное. среди тёлок, которые нихуя не умели, кроме как просить донаты, поднялся невероятный вой - они ж «работают», у них же душа, а это просто машина, что за дискриминация.
https://pbs.twimg.com/media/EQWGthvWkAE57ON.jpg
гуглить projekt melody, если что
Деградация кругом.
Даже двачеры испоганились. Реальные посоны всегда котировали джвумерных няшек из китайских порномультиков.
Уже начинаю ностальгировать по старым-добрым анонам с их «3Д тян не нужны».
Ждём вой таксистов, которые возят пасажира «с душой» и у которых начнут отбирать работу пездушные автопилоты.
Таксисты — это крайне агрессивная система, похожая на мафию. Попытки отпиздить конкурента с более низкими ценами — это для них совершенно нормально. Так что когда завезут автопеилоты, зрелище будет эпичным.
https://auto.informpskov.ru/news/246917.html
>>> Отметим, ранее сообщалось, что в ряде российских регионов машины «Яндекс.Такси» становились объектами нападений со стороны конкурентов, обвинявших сервис в демпинге.
>>> в первые три дня работы «Яндекс.Такси» в Пскове было отмечено большое количество ложных вызовов. Он предположил, что искусственное создание ложных заказов связано с недоброкачественной конкуренцией и оно продолжается.
Правда, мне кажется, там подобные произведения больше появлялись в рамках квазихристианского диспута о том, волен ли человек порождать новые формы жизни и отбирать работу у боженьки. Остров доктора Моро, Парк Юрского периода, вот это всё.
Но он, если мне не изменяет память, показывал, что много людей потеряли работу из-за автоматизации и вроде описывал бунты.
Убер, при всех его приколах, здорово дал им просраться.
С другой стороны, даже те Ъ-таксисты, которые презрительно отзываются про "подвозил", отмечают, что работать в режиме убера без диспетчера лучше.
Можно найти и дешевле, но понятно, что там с вероятностью в 98% приедет классика "не бита, не крашена, первый хозяин" с запахом перегара и картошкой в багажнике.
Убер дал возможность людям ещё в одном месте отказаться от нала. Убер дал возможность убрать один муторный шаг при заказе в виде диспетчера. Убер дал относительно качественную софтварную поддержку.
За такое можно даже и дороже платить.
> Ubuntu 18.04
https://habr.com/ru/company/ruvds/blog/510860/#comment_21846100
Основное отличие любого VNC от любого RDP — это потребляемые ресурсы. Первые очень прожорливы и требуют широкого канала для комфортной работы, всё что меньше 100 Mbit будет неприятно ощутимо. При включении компресии и прочих фишек для оптимизации ощутимо повышается нагрузка со стороны сервера (если это "недорогой" VPS).
Если на сервере только текстовые окна, терминалы там и прочее — то всё ещё более-менее, но про графику и тем более видео без сжатия (и соответственно ощутимой потери качества) можно забыть если у вас меньше чем 1Gbit канал.
Интересно, какой у него канал, чтобы смотреть стримы на ютубе? GPON на 2.5гбит?
PS, спокойно смотрю 4К-видео с «Ютуба» через «OpenVPN» на дешёвой впске со стамегабитным каналом (полнодуплексным). Неужели этого мало?
Здоровые люди его используют для починки виртуалок, когда на них ОС не грузится (недавно на ГК обсуждали).
А в статье долбоёбы занимаются какой-то хуйнёй.
>> А в статье долбоёбы занимаются какой-то хуйнёй.
другого сетевого опыта у него очевидно не было.
Я хостера подбирал с нормальным ToS, специально под личный «VPN».
Он, конечно, не очень скилловый, и иногда ложится поспать, но зато явно разрешает «VPN» и находится в более-менее интернет-свободных странах (как физически, так и юридически). Я через него даже торренты гоняю.
(Правда, до этой впски у меня пинг порядка 250-ти миллисекунд, и работа в «SSH» на ней весьма… увлекательна.)
Ага, я понял. У меня из дома всё печальнее.
Ну у Fike 60 — это сначала от дома до впски, а потом от впски до какого-то сервера «Спидтеста». У «8.8.8.8» всё явно гораздо лучше с маршрутизацией (именно поэтому я за «anycast»).
потом я круглым глазами смотрел на пинг, который скакал с 10 до 30 мс и обратно
потом я узнал, что в общем-то по-хорошему трафик и должен через какую-то францию туда идти, просто мне иногда везло и он как-то пробирался напрямую
из города трафик попадает в область. на границе города и области пинг взмывает от пяти миллисекунд до пятидесяти.
какой ростелеком )))
На втором хопе задержка (якобы) 16 миллисекунд, при этом пинг до 8.8.8.8 — чуть больше одной.
Wtf?
https://www.bitwizard.nl/mtr/screenshots.html
> libcups2
Только почистишься от этого говна, а оно опять лезет.
Да, для broadcast-multicast-anycast и прочей странной питушни раньше были зарезервированы IPv4-адреса с первым октетом 224 и выше (класс «D», класс «E»). Но потом классовое общество обоссали и стали лепить эту питушню во всех диапазонах.
К чему это я? При трассировке на разных шагах на 8.8.8.8 могут откликаться разные физические сервера, поэтому и задержка скачет.
Вряд ли у меня маршруты перестраиваются каждую секунду. К тому же, сам пинг до 8.8.8.8 не меняется, как и маршрут.
mihmig 15 июля 2020 в 09:15
Буфер обмена не работает…
zacisco сегодня в 13:42
а ничего, что в той же бунте есть remote desktop, зачем ещё что-то ставить и городить огород?
UPD: А, она уже отправлена… Какой багор )))
7. Код нужно писать без багов.
error: stray ‘@’ in program
Это что-то про микроконтроллеры?
Python 2.7.2
Именно поэтому я за «PHP».
Насколько я помню такие конторки — это они имеют в виду отдельные сайты, с раздельными доменными именами и раздельными же файлами. Ну типа как «sites-enabled» в «Nginx».
> Можно сделать 400 сайтов на одном адресе?
Ну да, шареды так и работают.
>>>
Какой 2008-й )))
Одно это бесценно.
Где можно скачать «Ajax»?
Хочу попробовать поставить «Ajax» на localhost.
- работал как-то с одним qa, который умничал, что все должны перейти на один git-клиент, разумеется, такой, каким он пользуется.
Так что могу согласиться только по поводу сore toolchain.
Ну чтобы уж точно все заметили, что нужно запустить приложение с id=313877526.
Такая же питушня и для «Ведра»:
https://developers.facebook.com/docs/applinks/metadata-reference/
https://stackoverflow.com/questions/8201724/how-to-register-a-custom-app-opening-url-scheme-with-xcode-4
https://developer.apple.com/library/archive/documentation/Carbon/Conceptual/LaunchServicesConcepts/LSCConcepts/LSCConcepts.html#//apple_ref/doc/uid/TP30000999-CH202-SW11
Зарегистрировать можно схему — то, что находится перед двоеточием, например, yandexmaps:
На первоначальный вопрос Desktop не ответил.
Ставишь в onLoad страницы или как там ивент называется запрос на URL c кастомной схемой, если в системе есть приложение, которое умеет открывать такую схему, то оно и откроется. В plist клиенту схемы ничего прописывать не нужно, это уже должны были сделать разработчкики Яндекс.Карт.
Теперь понятно?
Правда, такого кода конкретно на странице «Яндекс.Карт» я найти не смог.
> такого кода конкретно на странице «Яндекс.Карт» я найти не смог
- та может там какой-то хитрый запрос сначала с редиректом, надо смотреть лог сетки.
https://qna.habr.com/q/173757
Переменные окружения сойдут?
Я лалку не оправдываю.
С другой стороны их можно подменить через env. Однако это переменные, и глобальные. Хотя опять же для юзера. А не ОС в целом.
Так что даже глупость "переменная уровня операционной системы", я могу оправдать лишь с большой натяжкой.
Остальное — дичь несусветная.
> Старший инженер-проектировщик Dyson — о новых пылесосах, не взлетевших продуктах и R&D
Какой & )))
А я тупанул, на швабре изначально и было R&D.
Какой багор (((
Прощайте, капитан О'Генри!
> Помогите решить задачку, никак не пойму
> Дан массив целых чисел. Найдите сумму всех элементов массива до элемента со значением 0.
> $array = [10, 5, 8, -1, 7, 0, 9]; //данные в массиве получены пользователем с консоли
> У меня получается только обрезать массив до 0, а дальше как не пойму, или я уже не правильно делаю?
Блядь, как же жалко человека: его первым языком программирования стал «PHP». Отвратительно.
>>> itertools.accumulate(iterable[, func, *, initial=None])
>>> itertools.takewhile(predicate, iterable)
Какая консистентность )))
1. Сканируем несколько первых элементов в поиске нуля.
2. Копируем элементы, пройденные на первом шаге, в слайс (ага, жрём память).
3. В третий раз пробегаем циклом по тем же элементам, но уже для того, чтобы посчитать сумму.
Кстати, в «PHP» появились так называемые «генераторы», которые позволяют и не жрать память, и не делать лишних проходов, но при этом писать в «функциональном» стиле:
https://www.php.net/manual/ru/language.generators.overview.php
Генератор — это функция, у которой оператор yield внутри цикла вместо return в конце. При вызове генератора из внешнего цикла он останавливается на операторе yield, на следующей итерации выполнение генератора продолжается с точки останова. Таким образом, вложенный цикл вместе с внешним циклом превращаются в один цикл.
Ну это примерно как range в «Python 3» или xrange в «Python 2».
Именно поэтому я против «борланд паскаля».
Учиться нужно от простого к сложному.
Чем раньше программист поймёт сильные и слабые стороны скриптухи, тем лучше.
>Заучит три ссаные команды как мартышка, будет всю жизнь потом писать на пхп
Будто если мартышку учить «Паскалю» она не будет всю жизнь потом писать на «ПХП».
>>произвольного императивного языка
>>ты за SCIP с лиспом-схемой что-ли
Пожалуй да. За «SKIP с лиспом-схемой»
"(произвольного И императивного языка) == Плохо" => "НЕ (произвольного И императивного языка) == НЕ Плохо" => "(НЕ произвольного ИЛИ НЕ императивного языка) == НЕ Плохо".
Когда я сказал что:
>адекватный человек может начинать изучать программирование с произвольного императивного языка
Похоже обучение программированию нужно начинать не с ЯВУ, а с логики и дискретной математики.
И никакой тут «Паскаль» не поможет.
>Из твоего выражения следует, что обучение программированию следует начинать либо с непроизвольного императивного языка, либо с произвольного не императивного, либо с непроизвольного не императивного.
Какое следствие )))
Тут вот ма-те-ма-ти-ки пишут прямо противоречащие друг другу статьи.
https://habr.com/ru/post/511556/
У тебя ошибка в том, что ты считаешь «произвольный» характеристикой языка, в то время как в утверждении ПИ это квантор.
Именно поэтому я против первоочередного изучения «Паскаля» и за изучение «основ логики».
Вот если он из очень строгого и явного языка с постоянными begin/end и объявлениями пельменных в начале функции перейдёт в неявную скриптуху — тогда да, тогда он сможет осознать и прелести неявной/слабой типизации, и багры с "[object Object]".
Багры с неявной типизацией.
Багры вроде скопинга var в js.
>если ему попросту не с чем будет сравнивать?
Не нужно представлять себе сферических программистов в вакууме.
У всех есть интернет и возможность самообразовываться.
Человек разумный, при желании, рано или поздно придёт к пониманию вещей.
Выполняю в сбербанковском банкомате некоторые операции (кстати, карта «Моментум», на которой моё имя не написано). Подходит сотрудник «Сбербанка» с электронным планшетом:
–— [имя и отчество удалено цензурой], мы заметили, что Вы подключили «Сбербанк-онлайн», но не пользуетесь мобильным приложением. Вам нужна помощь в его установке?
—– Спасибо, мобильное приложение я в состоянии установить без посторонней помощи.
–— Хорошо, но если Вам понадобится помощь в установке приложения, Вы всегда можете к нам обратиться.
Держался, как мог, чтобы не заржать. Девочки и мальчики, работающие в «Сбербанке», всерьёз думают, что я тупой?
– TEH3OPHblu_nemyx , мы заметили, что Вы подключили «Сбербанк-онлайн», но не пользуетесь мобильным приложением. Вам нужна помощь в его установке?
Держался, как мог, чтобы не заржать.
Ну они же не знают, что ты на «ГК» сидишь.
А вообще — это у них работа такая, ничего необычного.
А если серьёзно, нафига АСУ сообщает сотрудникам личные данные владельцев карт, вставленных в банкоматы?
Потому что в дивном новом мире личные данные уже не личные. Продажа, покупка и тщательная обработка любых крупиц «личных» данных — это уже давно прибыльный и эффективный бизнес.
Девочки и мальчики заёбывают людей вопросами про установку приложения не потому, что людям нужна помощь, а потому, что Греф сказал, что надо всех перевести на мобильный банкинг. Который в итоге бОльшую часть таких девочек и мальчиков работы-то и лишит.
Их, кстати, сократят в любом случае, вне зависимости от их усердия.
Что это могло быть?
> Что это могло быть?
Ебанутая, скорее всего. На мошенницу не похоже, смысла мало.
Плюс клиент сразу будет знать, что его карту спиздили, и сможет позвонить в банк.
С другой стороны, воруют же у людей айфоны с паролем, которые хуй разблочишь. Чисто на запчасти выходит.
Не помню точно, но, кажется, то ли «Стим», то ли «Paypal» могут снимать деньги в обход двухфакторки, только по данным с самой карты. Другое дело, что так нагло пиздить карту возле банкомата кажется бесполезным: на самом банкомате обычно пишут номера банков и вообще куда звонить, если что-то пошло не так. Если клиент позвонит и скажет, что карту у него спиздили — её моментально заблокируют.
Хотя вот мой банк позволяет выпускать виртуальные карты, типа специально для оплаты в интернете, мол, физически же её нет, значит, не спиздят.
Так вот одна тётка забыла взять чек, и её не выпустил турникет. Она на стрессе бегала от терминала к терминалу, дёргала у всех чеки и повторяла: «Нет, не мой. Где ж мне его искать?» Хотя проблема решалась проще: охранники могли позвать старшего кассира или дежурного администратора, чтобы по примерному времени покупки и списку товаров найти в базе эту покупку и проверить факт оплаты (турникет фиксирует приложенный к нему чек, так что вынести на дурачка те же покупки, если она врёт, не получится). В конечном итоге к этому и свелось.
Какой антураж )))
https://www.youtube.com/watch?v=3Nu6C-Ci7_Q
Фотка со сжатием вышла в 44кб.
Можно сохранить в битмап, тогда да, только одна влезет.
Какая технология)))
Если я правильно понял, то это адаптер в габаритах флоппи-диска, в который можно вставлять карточку Memory Stick. Он имитирует магнитное поле дискеты, чтобы Memory Stick можно было читать обычным дисководом на компе без картридера.
В своё время были для автомагнитол «кассетные адаптеры»: адаптер в габаритах аудиокассеты, к которому тонким кабелем подключались внешние девайсы. Адаптер имитировал магнитное поле аудиокассеты, чтобы использовать автомагнитолу в качестве усилителя звука, если у неё нет входов.
Боже, какую хуйню придумывали в 90-е!
Какие нанотехнологии )))
Впечатляет, на самом деле. Как это делалось, интересно?..
https://en.wikipedia.org/wiki/FlashPath
«FlashPath» требовал наличия специального драйвера. Возможно, этот драйвер устанавливал головку на определённую дорожку.
https://www.sony.ru/electronics/support/res/manuals/3868/38683262M.pdf
https://www.youtube.com/watch?v=QEZEVy6aIww
- уже упомянутый ЭЛТ-монитор с резистивным тачем из 1991-го
https://www.youtube.com/watch?v=olmM3tNqHys
- беспроводная клавиатура 1984-го года выпуска
https://www.youtube.com/watch?v=fCWLaAwr3sM
- формат виниловых видеодисков
https://www.youtube.com/watch?v=hXk1AjRT2Pk
- эквалайзер, который вставлялся в разъём флоппика. Абсолютно ненужная хуета, которую я при этом емнип когда-то даже встречал в реальной жизни.
На закуску узнал, что есть Википедия на упрощённом английском:
https://simple.wikipedia.org/wiki/Main_Page
Моя радоваться. Моя улыбаться.
> When your video is 10 minutes or longer, Youtube gives you the option to place more than one ad on whichever part of the video you want, completely manually.
> Consequently, airing more than one ads on the same video gets you more Adsense money.
25:49
30:05
REACTIONS on EATING APPLES
35:03
Какой багор )))
- задрочился, бедняга
Какой #include <functional> )))
>> 2. человек нетрадиционной ориентации, ведущий активную половую жизнь с разными партнёрами.
Ни разу не слышал, чтобы это слово употреблялось во втором значении. Автор заметки это сам придумал?
У нас декан в институте любил попиздеть про разницу функционала и функциональности, в общем, это, наверное, было самое толковое, что он мог из себя выдавить на любую тему.
Похоже, функционал у вашего декана был так себе.
Ну, видимо, обеды кОмплексные, а числа комплЕксные, хотя я так их никогда не называл.
В общем, есть разница и так: кОмплекс, но комплЕкт. Явно зависит от того, из какого языка пришло слово.
АвтоВАЗ.
Мужской половой хуй.
Совет Федерации Федерального Собрания Российской Федерации.
> бессмысленно употребляющий непонятные ему слова человек выставляет свою глупость напоказ.
Сразу видно, что он сноб. Он догматичен.
Язык действительно вещь гибкая и динамичная, излишняя узость ему не поможет.
Но некоторое время, например, пошла мода говорить "выиграть кого-то" в значении "победить кого-то", и за такие естественные изменения языка мне хочется убивать этих колхозников
Пиздец. Придумали неудобное говно, а потом костыли ставят.
обозначить конец дня, и «12:01 a.m.»
- я правильно понимаю, что 00:00 в этом случае не относится ни к какому дню в принципе?
Кстати, в 24-часовом формате эта проблема тоже есть, но не настолько абсурдна: «21 июля, 00:00» — это когда? Ночь с 20-го на 21-е, или с 21-го на 22-е?
https://habr.com/post/441022/
> было
> до твоего поста
Какой багор )))
Представь, что там ещё есть миллисекунды, например. А они есть, хоть мы ими и не оперируем в общем случае. А, если есть миллисекунды, то 21-е июля уже наступило, но это именно 21-е число, потому что оно и указано.
Зима 2020-го года уже прошла или ещё только будет, например?
Именно поэтому я за «лето».
Поскольку оно выступает единицей времени: 10 лет. А не 10 зим.
Именно поэтому я против «Вестероса».
Acknowledged.
Ку-ка-ре-ку-у-у-у!!!
https://imgur.com/bs7TRcE
https://zen.yandex.ru/media/knigajivotih/v-chem-otlichie-svini-ot-kabana-tonkaia-neochevidnaia-gran-5ede036c1394a14a1cc55cbd
Однако, приготовься, читатель, сейчас будет шок-контент: свинья и кабан — это буквально одно и тоже!
Кеп с хабра сбежал
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2013/n3662.html#Builtin
Вопрос.
А чем крестовый dynarray лучше сишных VLA?
Есть какой-то способ в С++ аллоцировать VLA на стеке?
alloca().
Синтаксис не тот. «VLA» — это когда «int x = rand(); int arr[x];».
https://gcc.godbolt.org/z/rK1Px3
В случае нормальной аллокации на стеке всё в порядке: конпелятор спокойно аллоцирует и деаллоцирует нужное место и вызывает соответствующие конструкторы-деструкторы (а без них вызов foo() просто на nop заменяет). А вот с alloca() получается описанный дядей Пи багор:
Вот это вот длинное дерьмо с умножениями-делениями (насколько я понял, это оно так выравнивает rsp по 16-ти байтам) — и есть вызов заинлайненной функции с alloca(). И на каждой итерации от rsp просто отнимается очередной гигабайт. Какой багор )))
Выходит сколько лет прошло, а вот по-прежнему, если gcc попросить хорошенько, то он с радостью распидорасит стек.
Тем более ошибка может не проявляться вплоть до инлайна.
Я был прав: чистит один раз. Не в конце цикла, а в конце всей функции main.
Причём его не в Стандарт завезли, а как какое-то нестандартное говно. Подозреваю, именно поэтому оно и говно.
А, ну да. Если объявить переменную со static, то она снаружи будет не видна, в отличие от глобальных, однако, лежать будет не в стеке, а там же, где глобальные.
Т. е. нужно область видимости и место хранения отмечать отдельно.
Посоны, я вам сразу сообщил что в некоторых компилерах багры.
>GCC:
>A memory block allocated with alloca exists only until the function that calls alloca returns or exits abruptly.
Наебалово же. inline всё портит. И он существует до выхода из функции, которая вызввала функцию.
А как это обработали в «VLA»? Запретили инлайнить функции с ним?
Не помню.
gcc vla не упомнинает. Хотя раньше что-то такое было. И про alloca есть.
Может компилер стал достаточно умён чтобы менять esp между итерациями.
.
>придёт mov esp, ebp и почистит стек вилкой
https://govnokod.ru/26809#comment561148
А вот «Шланг» оказался гораздо умнее: https://gcc.godbolt.org/z/PjEKPz.
Я добавил использование питушни:
И получил:
Как видно, стек не распидорашивается, «Шланг» сумел понять, как мы используем «alloca()», и выделил только один гигабайт, в самом начале «other_func()».
Код, правда, всё равно дерьмо: нахрена держать счётчик цикла в памяти, если у тебя rcx свободен, долбоёб?!
Красиво. Счётчик цикла в самом низу под гигабайтом.
Кстати, гигабайт помещается в 32 бита, поэтому влезло в одну инструкцию. А если выделить не гигабайт, а чуть больше четырёх гигов, то в рахитектуре x86_64 в непосредственную константу не влезет (напомню, что 64-битные константы может использовать единственная инструкция: mov reg, imm).
Попробуй создать объект на 5 гигов и посмотри ассемблерный выхлоп.
У рискухов, где все инструкции по 4 бата, туда не влезут даже 32-битные константы.
Листинг:
В четырёх батах (03D18DE2) закодирована и инструкция add sp, sp, константа (трёхместная инструкция, кстати), и число 1024uL*1024*1024.
Похоже, что у «ARM» есть инструкции, принимающие «круглые» числа.
Компилятор должен округлить выделяемую память. Результат:
Значит, округляет до восьми.
В инструкции изменилось два бата: вместо 03 стало 21, а вместо 4D стало 8D.
Стоп! была инструкция add с отрицательным числом, а стала sub с положительным.
Вообще не понял, как «ARM» кодирует аргумент.
да в тайланде вечно всякая хуйня происходит
В процессоре ARM есть специальная схема “barrel shifter” которая позволяет один из операндов сдвинуть или развернуть на заданное число бит перед любой арифметической или логической операцией.
Но сто́ит только попытаться записа́ть большую некруглую константу, как ассемблер обламывается:
Выдаёт:
Т. е. операцию добавления некруглой константы к регистру приходится разбивать на несколько подряд идущих add. Причём ассемблер за тебя это не сделает, это надо сделать явно.
Проверь. Там 8 бит на значение и 4 бита на смещение. Редкостное говно.
P. S. Доброе утро.
P. P. S. Не заметил https://govnokod.ru/26809#comment561192. Ладно, похуй.
Откопал заметку с более интересными примерами:
А ещё вот это:
«Кроме логического сдвига влево lsl есть еще логический сдвиг вправо lsr и арифметический сдвиг вправо asr (сдвиг с сохранением знака числа, старший бит размножается слева одновременно со сдвигом).
Еще есть ротация бит ror – биты выдвигаются вправо и те, что выдвинуты - задвигаются слева.
Есть сдвиг на один бит через флаг C – это команда rrx. Значение регистра сдвигается вправо на один бит. Слева в старший разряд регистра загружается флаг C.»
На самом деле не так уж и плохо.
>умножение на 15 – это умножение на 16 минус число
Именно поэтому я за «x86 и lea».
Подтверждаю. Годная команда.
> путем сдвига влево на 3 бита плюс еще число
lea rsi, [rbx + 8*rbx + 42] ; ещё и константу прибавили
> умножение на 15 – это умножение на 16 минус число
>rsb r0, r1, r1, lsl #4 @ r0= (r1<<4)-r1 = r1*15
Так lea уже не умеет.
Но на этот случай есть imul eax,ebx,15.
Короче странно упрекать x64 в наличи 64-битного mov, при том что у конкурентов даже нельзя нормально 32-битную константу загрузить.
Но такой трюк проходит только с инструкцией ldr (аналог mov). Если мы попытаемся сделать то же самое с инструкцией add, нас пошлют, потому что прибавлять можно только содержимое регистра или immediate, а из памяти константу нужно предварительно загрузить в ненужный регистр инструкцией ldr. Обратим внимание на = вместо #. Результат: Он прямо в код (после инструкции разврата из подпрограммы bx lr) насрал константу, а в инструкцию ldr насрал её относительный адрес.
Интересно как оно её кеширует для ldr. Код же по идее лежит в l1i, а не в l1d.
>инструкцией add, нас пошлют, потому что прибавлять можно только содержимое регистра или immediate
Ничего удивительного. Это всё-таки RISC.
У АРМа вроде есть. Они ведь тоже уязвимы ко всяким «spectre».
Но там же безусловный разврат.
Если бы не было, хрен бы они Штеуд по пирформансу догнали.
https://www.techrepublic.com/article/spectre-and-meltdown-explained-a-comprehensive-guide-for-professionals/
Как раз высокопирфомансные «уязвимые» чипы использую branch prediction и OoO.
Правда АРМ не рискуха в классическом понимании. От рискухи там только фиксированная длина команды, много регистров и всякие тупые ограничения.
Меня ещё тогда насторожила https://govnokod.ru/26687#comment552172
Говнище, почище лалоки.
Собрал с -fomit-frame-pointer и обосрался.
Разве lallocу в Стандарт привезли?
Неа.
Выходит Сишка действительно быстрее чем С++, т.к. там я могу из коробки, кроссплатформенно размещать на стеке небольшие массивы.
Потому gost зелёным написал.
Короче, ясно
Кресто-аллки опять слились божественной Сишке.
github.com/id-Software/DOOM
Бывает D&D.
А бывает R&R. А теперь слайды.
Какие магические коньстанты )))
Вроде всё понятно по названию. 5 таблиц для гаммы.
В каждой яркость x => y.
Фаулеру с Мартином нужно в взять чистый/совершенный/идеальный код, вместо Йажа-питушни.
Это как таблицы квантайзеров в кодеках. Минимально знающему предметную область всё понятно.
Эта чуть темнее.
>{1,2,3,4,5,6,7,8,9
Эта ярче.
>{2,4,5,7,8,10,11
Ну их то вообще нереально самому вывести и заполнить, только хардкодить и остаётся?
Для низких битрейтов одни, для высоких другие более равномерные.
>их то вообще нереально самому вывести и заполнить
Реально. Но обычно тупо используют те что в референсном кодеке MPEG сделал.
https://aomedia.googlesource.com/aom/+/master/aom/aomcx.h
На самом деле, не сложене тех же гамма-таблиц.
Два примера нечитаемых портянок. Может, это таблица неизданных синглов группы Gamma Ray и тогда ты обосрался.
Heal me
Любимая песня крестовиков
Какой аукцион )))
Анус себе удалите.
https://i.ytimg.com/vi/twGphG3VOfQ/hqdefault.jpg
нужно: алиасы/группы, до двадцати ящиков на домен, кетч-олл, фильтры-правила, подписи-хуёдписи и прочий spf
желательно: веб-админка на всякий, плата не за каждого юзера, а за тарифный план, отсутствие подзалупной перхоти и вообще за пределами рф
может быть чисто имейловое решение типа zoho, может хоть шаред хостинг с поддержкой имейлов в придачу. не хочу тратить до пизды денег (привет, gsuite) и хочу не прикидывать, а четко знать, сколько у меня уйдет денег, если я опять переебу структуру ящиков и их окажется в два раза больше. так надо
https://gsuite.google.com/pricing.html
А, извините, я юзера перепутал
Я знаю, знаю, просто в рифму
На одной из предыдущих работ была система управления прости господи персоналом от Зохо.
С другой стороны, Zoho Corporation Private Limited is an Indian software development company, то есть, пока слоны танцуют, можно и почту успеть настроить, и тостер перепрошить, и брата застрелить.
Я почту настраивал же. Чтобы я мог читать её со своего компа, а не лазить в терминал впски на другой стороне планеты. Ну и чтобы уведомления приходили, конечно.
Сертификаты для «IMAPS».
Перепутал с «IMAPS».
> Еще небось и spamassasin?
Нет, до такого не дошло.
> А почему не пересылать почту себе на gmail через .forward или правилом?
А обратно как?
Ну либо личная гуглопочта, либо яндексопочта, либо вообще мейлру.
Кстати, с учётом алиасов гуглопочты ([email protected] == [email protected]) можно даже организовать автоматическое складирование всех пересланных сообщений в отдельную папку.
> Ну если эти проблемы реально стоят настройки IMAP, то ок.
Наверное. Если когда-нибудь опять ебанусь и решу проверить — скажу.
- ого, почти 400 баксов. Надеюсь, за эту цену дяди уже поебались со всем, чем можно, за меня.
Охуеть.
Впрочем, понятно: копрпоративное ПО, крупный бизнес, все дела.
А щас у них ещё и Teams!
Короче, есть где разгуляться. Но да, тут нужно держать целый отдел
А где «SMTPS»? В 2020-м году гонять по сети нешифрованные данные — моветон.
>>> At the "may" TLS security level, TLS encryption is opportunistic. The SMTP transaction is encrypted if the STARTTLS ESMTP feature is supported by the server. Otherwise, messages are sent in the clear. Opportunistic TLS can be configured by setting "smtp_tls_security_level = may". For LMTP, use the corresponding "lmtp_" parameter.
>>> With opportunistic TLS, mail delivery continues even if the server certificate is untrusted or bears the wrong name. When the TLS handshake fails for an opportunistic TLS session, rather than give up on mail delivery, the Postfix SMTP client retries the transaction with TLS disabled. Trying an unencrypted connection makes it possible to deliver mail to sites with non-interoperable server TLS implementations.
http://www.postfix.org/TLS_README.html
Пойду спать, спокойной ночи всем в этом чяте.
Вот щас пытался вспомнить, сколько стоят проприетарные лицензии на liblinphone и pjsip, а хуй.
Но там тоже в килобаксах.
Я надеюсь, это не твой блог? Зачем ты его притащил вообще? Ну гамно ж
https://www.youtube.com/watch?v=zr_R4KAmaAg&t=1m34s
> Комиссар SEC назвала запрет на выпуск Gram ошибкой
Какой багор )))
Йозеф, доставайте инструменты, будем измерять
Что такое модель SAFT?
Что подразумевается под покупкой токенов в спекулятивных целях? Перепродажа фантиков по бОльшей цене? Этот фактор сразу приравнивает криптоговно к ценным бумагам?
«Я не поддерживаю мнение о том, что распределение токенов подразумевает под собой сделку с ценными бумагами» - что такое распределение токенов и бывает ли крипта без него?
Howey Test та ещё забавная шняга, кстати
https://www.investopedia.com/terms/h/howey-test.asp
А я за «lynx».
https://i.imgur.com/y4rSJ1K.png
https://i.imgur.com/xteAHys.png
Держите ещё порцию говна.
Поправки, принятые в федеральный закон о защите озера Байкал, разрешают проведение сплошных рубок.
Параллельно к рассмотрению в первом чтении в Госдуме готовят законопроект, позволяющий правительству России изменять границы национальных парков. Поправки внесены в Госдуму группой депутатов и сенаторов, представляющих «Единую Россию». Отсутствие такого механизма мешало реализации крупномасштабных проектов вроде прокладки дублёра Щёлковского шоссе через «Лосиный остров» в Москве, изъятие месторождения золота из «Югыд ва» в Республике Коми или расширение горнолыжных курортов в Сочинском нацпарке. Экологи опасаются, что поправки «девальвируют борьбу за целостность нацпарков, которая велась последние десять лет».
Какая защита природных ресурсов )))
«Все животные равны, но одно животное равнее других».
https://sun9-17.userapi.com/c853520/v853520002/25065f/pYTmfE7jLpQ.jpg
https://steamuserimages-a.akamaihd.net/ugc/394427869408679415/EA624A89B867F52E831E6E2B69F23D09631FE552/
Кстати, какие конпеляторы умеют получать байткод «Дальвика» напрямую?
dx умеет class-файлы переводить в «Дальвик».
А чем ты получил class-файлы — это твоё дело. Можешь получить из «Йажи», можешь из «Коко», можешь из какого-нибудь «MIDletPascal» (если библиотеку допилишь).
https://govnokod.ru/26817 https://govnokod.xyz/_26817