- 1
Бесконечный оффтоп имени Борманда #3
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
0
Бесконечный оффтоп имени Борманда #3
#1: https://govnokod.ru/25864 https://govnokod.xyz/_25864
#2: https://govnokod.ru/25921 https://govnokod.xyz/_25921
Вот такое вот окошко, в котором в режиме реального времени показывается количество новых ответов в избранных тредах?
https://i.imgur.com/Tv99SuK.png
Кстати, ему незнакомый парень сабвуфер подарил
Кстати, помню, на исходном ГК была питушня. Когда ты писал в тред, ГК отправлял информацию о том, что ты посмотрел его, начиная с момента написания. Так пропадала информация о том, что ты не прочитал новые комментарии, пока писал свой.
Сейчас, если не ошибаюсь, подсветку новых комментариев сломали, поэтому проблема перестала быть актуальной.
Трейсую (кстати прыщеводам рекомендую тулу ``mtr`` -- куда лучше трейсврота).
Траффик идет через сеть Level3 Стокгольм или Франкфурт, как карта ляжет.
На работе три провайдера. Иду в их лукинг-глессы, трейсирую себя.
Вижу, что трафф идет через M9 (московкая IX). Не лучший вариант, но хоть блядь не Франкфурт ам Майн.
От них ко мне хорошо, а от меня к ним плохо.
У меня Корбина, которую купил Билайн. Хожу в лукинг глесс билайна, а он поломанный для моей AS, пишет "bad query".
Зырю на карту связанности https://bgp.he.net/
вижу, что корбинин AS (где я) соединен с билайновой AS, где сука прямо в пирах все мои рабочие провайдеры.
Но у корбины так же в пирах Level3, и эти питухи пускают трафик через нее. Очевидно, AS_PATH там хуже, так что это чисто административное полиси.
При этом на Янд и Вк разумеется все ходит напрямую.
Питухи явно прописали роутинг до популярных сетей, а остальные блядть пустили через Level3.
Админы на работе жалуются провайдерам, провайдеры говорят: "ну от нас траффик идет нормально, нам билайн анонсит префиксы корбины, мы ему тоже анонсим свои, хуй знает, почему билайн на них кладет, пишите в билайн"
Пишу билайну суппорт. Пока не ответили, но чует мое сердце -- посоветуют перезагрузить виндуос.
Витая пара ко мне домой приходит
https://www.fontanka.ru/2020/03/30/69060805/
беглоу сосатб
ЧП может вводить только Верховный главнокомандующий, но он воды в рот набрал.
Так что Собянен и Беглоу могут только сосатб рекомендовать.
за компами всмысле?
https://www.rosminzdrav.ru/search?utf8=✓&q=эпидемия
https://www.rosminzdrav.ru/search?utf8=✓&q=пандемия
Врачам ЗАПРЕЩЕНО ВЕТО ХАРАМ говорить об эпидемии.
https://lenta.ru/news/2020/03/30/straf/
Теперь слово «эпидемия» лучше вообще никому не употреблять, поскольку не было приказа Минздрава.
Воскресли что ли?
Они в такое время должны чуять повышенную нагрузку от разных питухов. Не выгоднее ли им будет не гнать питушню через лишние питухи, чтобы чуть снизить нагрузку?
Обычно эти административные решения связаны с боблом или пиринговыми войнами. Например, провайдер не хочет платить за трафик другому провайдеру по финансово-политическим причинам, и пускает трафик через жопу.
g "пиринговые войны"
Ещё одна говнокомпания, блокирующая транзитный трафик — rascom.ru. Они блокируют даже «Рашу Тудей», которая, если не ошибаюсь, никогда в официальных чёрных списках не значилась. В общем, мамку админа компании «РАСКОМ» в рот ебал.
Охуеть, это же специальная российская госконторка, предназначенная исключительно для вещания российской же пропаганды. Как её заблокировать-то умудрились?
Или у «Раскома» админ решил податься в DIGITAL RESISTANCE и спасти россиян от разлагающего влияния пропагандонов?
https://www.youtube.com/watch?v=SzbM6rPnbdY
Хуестирую.
https://govnokod.xyz/?p=49233
test
test
huest
redacted
0) Работает только для новых комментов, старые парсить потом буду (или, если Иньо сподобится расшарить базу вида (comment_id_xyz, comment_id_ru) — не буду);
1) Работает только с зеркалами комментов на ГК (точно) и комментами гуеста8 (неточно);
2) Комменты гуеста вычисляются эвристикой, по совпадению ID поста и текста комментария (в частности, например, комменты с заменёнными ёбанным «Вордпрессом» смайликами найдены не будут);
3) Хузовские айдишники добавляются асинхронно, через 0-60 секунд после их появления в Стоке.
Для комментов гуестов и других обитателей Хуза установить однозначное соответствие можно только с помощью Иньо: надо добавить куда-нибудь в HTML ID зазеркаленного на ру коммента (а они есть — редактирование-то работает!11).
UPD: да, в качестве побочного эффекта обновлённые комментарии теперь обновляются и в Стоке.
Код: https://github.com/gost-gk/ngk/commit/1b2c0f973325a7f8cb31866d29d14e8dfece6252.
чтобы потом
>re.sub(
может лучше всё таки бютифул суп?
> (<a href="/#!/{{comment.post_id}}#comment{{comment.id} }">NGK</a>,
фу конечно так ссылки генерить, но наверное во фласке иначе ниак
В «lxml» «innerHTML» не завезли, приходится писать такое говно. Благодаря «^» и «$» оно работает устойчиво, в принципе, можно было бы тупо на слайс заменить.
Суп охуенен, но это лишняя прослойка, а в «NGK» парсер и так тормозит.
> фу конечно так ссылки генерить, но наверное во фласке иначе ниак
А как по-другому можно?
UPD: и да, это не фласк, это «AngularJS».
https://docs.djangoproject.com/en/3.0/ref/templates/builtins/#url
https://www.tutorialspoint.com/ru/html/html_fonts.htm
В два часа ночи хуёво говнокодить, ничего не соображаю, поэтому мог накосячить. Я пошёл спать, а вы проверяйте.
* Причём возникла эта идея то ли в 2016-м, то ли в 2018-м году.
03.04.2020: https://mega.nz/file/uRVXjajL#IVp9nPD4Hk9KliPXpW7ytowhNK5fWLs VQeAjaZ2oxkA
04.04.2020: https://mega.nz/file/KVdRlaTZ#rod4-bOnE2VDTiIcp8NbiBiUCDMNyXDM_ZSZOEwRZgk
UPD: https://mega.nz/file/fZlVWDBJ#m56Mm1_nLbVhpUlb-8mInR7iWC-j6LJXYQkmgjtWdOY
Я же тебе сказал по архиву на папку. Там опция для этого есть, можешь не волноваться.
А теперь сравни время извлечения одного файла.
а ZIP у всех сосет конечно: факт
> ZIP у всех сосет
Почему сосёт?
Малось сосет
«RAR» соснул с заглотом.
Как этот zstd можно попробовать?
На венде надо ебаться, оно для прыщей. Я запускал через «7z.exe -ttar a dummy dumps_html -so | zstd.exe -19 --long -o dumps_html.tar.zst» (NB: «7zip» тут не жмёт).
Если это г не умеет разжимать 7zip или winrar то хуево.
Зожал ту же папку с теми же дампами при помощи штатного алгоритма сжатия «7zip» на ультра-настройках, получил архив размером 14 210 516 байт.
Бамп отсосу рароблядей!
Не очень.
В общем, на куче почти-одинаковых дампов «RAR» сосёт у «LZMA2».
Помните тред про зожатие ГК? Я не помню, но там где-то около десяти было.
Погуглим...
https://govnokod.ru/23821#comment402454 - да, десятка - оптимум для ГК.
я скачал солющен отсюда
https://github.com/facebook/zstd
и сбилдил студией по инструкции
Скачал «пакманом» в «msys2»:
> не архиватор
ээээ...
> на ультра-настройках
Маладец, а скорость?
>Бамп отсосу рароблядей!
Они по возможностям уже давно почти идентичны. Вот гуй у 7зип хуйня.
я в душе не ебу какие там у кого гуи
Что «ээээ»? «zstd.exe» — это не архиватор, это реализация алгоритма. Она знать не знает про всякие «папки», «файлы», «атрибуты» и прочую питушню, она берёт набор байт и выдаёт другой набор байт. Поэтому чтобы сжать что-то сложнее одного файла (два файла, например) их необходимо преобразовать в этот самый набор байт и добавить метаданные.
> Маладец, а скорость?
Что «скорость»? Скорость совершенно не важна, пока она не вырождается в мегабайт за сутки. На стандартных размерах словарей и максимальной степени зожатия «7zip» зожимает за 86 секунд, розжимает за 3 секунды, «Rar» — 28 и 4 секунды соответственно.
>Скорость совершенно не важна
Ну если ты так сказал.
Да. И именно поэтому и «zstd», и «gzip» — это не архиваторы. Это утилиты для сжатия данных, не больше.
А вот «tar» — это архиватор, потому что он умеет создавать архивы, только несжатые. Как, например, и «WinRar», и «zip», и «7zip».
Тогда откройте зожатия тред и потестируйте царские архиваторы, которые показывал дяденька ПИ. Скорость у них в большинстве случаев больше мегабайта в день.
https://vk.com/wall-110501497_99122
Rule of thumb такое: если хочется спустить автора комментария в унитаз, смыть воду, и побрызгать освежителем воздуха -- значит это стертор
лолшто
если много мартышек посадить за клавиатуры, и дать им печатать, то через какое-то время они случайно напишут войну и мир
Теперь да.
Юниксоид
Виндузятник:
Да вообще не вопрос
.
Windows. Чтобы не пирдолиться
Ладно, вот тебе еще пример.
Как узнать, кто пытался зайти ко мне на сервер ломился?
виндаус?
Вообще элементарно же!
4625 это ID нужного мне сообщения. 100 выбирает первые сто. Ок, в юниксе это бы был head
* Windows со своими логами
* повершел
Впрочем, PS тут меньшее из говен.
и еще айпишник, во!
https://www.tecmint.com/wp-content/uploads/2017/12/List-All-Failed-SSH-Login-Attempts.png — логины, айпишники: всё, что надо (на реальном примере не могу показать, у меня паролей больше нет).
auth это дебион и его дети, у красношляпых secure (просто настройки syslog другие), но смысл такой же, да.
Почему микрософт два раза обосралось?
"Узнать кто с какого IP к тебе ломился" это такая редкая и ненужная задача?
Нет, но позволять администратору делать что-то просто — это не энтерпрайзно.
если ты сделаеш > hui, то grep увидит, что stdout это не istty, и не будет пихать туда ANSI коды для подсветки
а я думал там HTML
isatty
isatty(1)
Кстати, что мешало сделать это какой-то константой?
Lingua latina non verpa canina est.
etc -- эцетара
что больше никуда не влезло
за 40 лет вырадилось в место для конфига
--Ахалай-махалай, покажи кто ко мне в гости ходит? Какие ошибки бывают?
--Вжжух
--Вижу, мощный ты, махалай, а какие браузеры бывают?
--Вжух
Что не так?
IIS, как ни странно, тоже умеет.
А жаль: было бы лулзовее, если бы он логировал через EWT, и для просмотра имел бы хуево документированную GUI тулу, и всё.
А вообще — «remote_addr» на заголовок прокси заменить — чтобы запросы от «Cloudflare» логгировались с реальными адресами, например.
Вообще в нагруженных сайтах срать логами лучше в elastic logs, субд, или что такое, где можно по-перши привязать отсылку емейла при 50X-й ошибке, во-вторых быстро найти что-то чреез SQLеобразный интерфейс
зы: помню времена, когда все ставили awstats для парсинга логов.
Ебать, я старый...
200+ долларов в месяц :-).
Причём 200 — это только «Business» план, а для доступа к логам надо «Enterprise», цена которого вообще напоказ не выставляется.
> awstats
>>> Первый выпуск: 2 мая 2000 г.; несколько (19) лет назад
Какой багор )))
>>Какой багор
Представляешь, как охуительно было в 2000-м получить вот такую картинку
https://andreyex.ru/wp-content/uploads/2019/12/Kak-ustanovit-i-nastroit-veb-statistiku-Awstats-dlya-WordPress-i-drugih-sajtov.png
А работала она именно потому, что формат логов w3c стандартный, у перла был готовый модуль, и чуваки научились их парсить, агрегировать, и строить картинки и графики
webalizer
Эм, т.е. за 200 можно только собирать логи, но не читать их?
https://www.cloudflare.com/products/cloudflare-logs/
Луникс-питущки постоянно кукарекают про настройки, но не учитывают, что настройка всей питушни до нормального состояния занимает достаточно много времени. Если посчитать зарплату админа за это время, купить нужный софт с адекватными умолчаниями может выйти дешевле. А ведь можно было сразу сделать настройки, которые удовлетворят большинство, но это надо хотя бы чуть-чуть исследовать потребночти людей и попробовать сделать удобно, а не тупо навалить в программу функциональности.
В некоторых случаях дешевле написать свой скрипт, который делает нужное вместо пердолинга с конфигом программы: получится меньше бить по клавишам.
Ты, сука, даже не осилил мой скрипт скопировать.
Что блядь у тебя не работает?
Кстати, я всегда проверяю, перед тем, как написать. Так что в отличие от твоих высеров про разворот в окошка в винде, моим словам можно верить.
Анскиллябка, а если тебе понадобится юзер агент достать?
если мне понадобится браузер, то я напишу ванлайнер
правда, с момомдулем код немного очевиднее
гост и гест тебе показали, как это делать
ты не осилил даже однострочник тупой запустить, ты слишком туп, чтобы дисктуировать на такие темы
Правда, ничего особенного полезного тут не написано:
Я сказа л что их катом не распа рсить . А тепер ь брысь на параш у, бляди на!
кажется чт соснула синхрониация
Он на каждый запрос перекодирует энти энтити в символы.
По-моему это каждый петух знает.
Перекокококококококодировать надо строго перед выводом говна на экран
Зачем что-то ккокококококококдировать в базе или протоколе??
Зато, если в базе сразу хранить закодированное как надо, можно поиметь царский перфоманс. Перекодиловал раз - и всё
Хотя, самый лучший вариант для владельца сервера - хранить как есть, а с перекококодировкой пусть клиент пердолится. Тогда на сервере вообще ничего перекрокодилывать не надо будет.
если очень чешеца пифоманс, то можно кешировать результат перекодировки
Source (unescaped) data -> UI-specific-coder -> Data-encoded-for-certain-UI
как-то так
Так и с неперекодированными саснули, вот иню пересрал не перекодированные энти тити на гк, и ничего без переводчика теперь нипонятно.
Все бразвери знают утф-8 нет смысла тратить вычислительные мощности на этот онанизм. Необходимость послать куда-то или сгенерировать возникает гораздо реже,там и надо ко-ко-кодировать, причём соотвествующим способом.
Впрочем, мы всё равно хотели добавить парсинг оригиналов комментов с «Хуза», поэтому повысили приоритет этой заявки в инженерном отделе (он, правда, немного занят — читает коаны и идёт по пути просветления, ЕВПОЧЯ).
И да, разумеется, Сёма написал хуйню.
кококо
блядь, хуз их перекодировал прямо в таге код, ну что за питухня??
ты меня понял корочи
Не сработает. Там внутри HTML entities пробелы вставлены.
но вообще получается вирбозненько кончно, надо признать что питон соснул у джавасрипта в этом вопросе
> надо признать что питон соснул у джавасрипта в этом вопросе
А мне кажется, наоборот. В питоне нормальная функция для этого. (Хотя, может и в жс есть, а я не знал) И мой код не раскроет популярные на хузе штуки вроде shy.
А я думал это щутка такая. Меня просто всегда смех пробивает, когда в предложении вместо буков всяки спецсимволы и цифры. А когда на конце восклицательный знак у меня вообще истерика случилась.
То ли дело ру-стеры, у нас тут никаких фильтров.
Проверка:
русня, ватник, хуйло, пидарашка, параша.
Кстати, видимо, на хузе ещё тег [quote][/quote] работает и не конвертируется в ">" для ГК.
чичоллина?
Какой отсос!
https://i.imgur.com/oso1zam.png
UPD: да, твоё ПО преобразовало эту строку в «ISO-8859-1». Какой багор )))
Очевидно, что это консоль жс браузера.
А, ну понятно. «1.5» — это какой год? Откуда-то из времён «Windows XP»?
Вру, «1.5» — это 2000-й год, оказывается. «1.6» только в 2005-м вышел.
То ли дело window.decodeURIComponent.
* Сам пользователь, который хочет написать "ма-те-ма-ти-ка", чтобы прошло фильтр?
* хуз, когда встретил какую-то питушню?
ахахаха
https://www.tutorialspoint.com/ru/html/html_formatting.htm
Какой багор )))
Как можно было достигнуть такого уровня питушни? Я понимаю, "текст забастовки". Но как этот сторик Вореций сотворил "Подчеркиванный"?
Кажется что каждое отдельное слово переводил на слух на китайский автоматический переводчик. Затем иероглиф записывался, и переводился на русский
Некоторые характеры зарезервированы в HTML и они имеют специальную смысль при использовании в documemt HTML. Например, вы не можете использовать большой чем и чем знаки или стенные угольники внутри ваш текст HTML потому что браузер обработает их по-разному и попробует нарисовать смысль отнесенную к бирке HTML.
Обработчики HTML должны поддержать следование 5 специальных символов перечисленных в таблице которая следовать.
https://www.tutorialspoint.com/ru/html/html_entities.htm
А помните, раньше использовали document.writeln?
А помните, вместо getElementBy-что-то-там были моссивы элементов?
А помните, код для «IE» и для «Нетшкафа» нужно было писа́ть с нуля?
И "document.all", и <script language="vbscript", и таг "layer" и таг <applet, и microsoft front page, и marquee, и даже bgsound с midi..
https://www.tutorialspoint.com/ru/html/html_layer_tag.htm
Бирка <layer> HTML использована для того чтобы расположить и одушевить (через scripting) элементы в странице. Слой можно думать по мере того как отдельно документ который пребывает na górze главное одного, совсем существующе внутри одно окно.
Эта бирка имеет поддержку в Netscape 4 и более высоких версиях ее.
выявили, что много пользователей встретили проблему мыши. В этом
документе Служба Техничного Упора Microsoft компании сводит вместе всю
полезную информацию о возможных проблемах с мышами и гуртовщиками мыши и
забота-стреляние.
Если вы только что закрепили себе Окна 95, вы можете увидеть, что ваша
мышь плохо себя ведет. Курсор может не двигаться или движение мыши может
проявлять странные следы на поверхности стола, окнах и обоях. Мышь может
неадекватно реагировать на щелчок по почкам. Но не спешите! Это могут
быть физические проблемы, а не клоп Окон 95.
Почистите вашу мышь. Отсоедините ее поводок от компьютера , вытащите
гениталий и промойте его и ролики внутренностей спиртом. Снова зашейте
мышь. Проверьте на переломы поводка. Подсоедините мышь к компьютеру.
Приглядитесь к вашей прокладке (подушке) - она не должна быть источником
мусора и пыли в гениталии и роликах. Поверхность прокладки не должна
стеснять движения мыши.
Может быть вам стоит купить новую мышь. Мы настоятельно рекомендуем
Microsoft мышь. Она эргономично спроектирована, особо сделана под Окна
95 и имеет третью почку в виде колеса, которые могут завивать окна.
Совокупление Microsoft мыши и Окон 95 делает вашу повседневную работу
легко приятной.
Испытайте все это. Если проблемы остались - ваш гуртовщик мыши плохо
стоит под Окнами 95. Его придется убрать.
Вам нужен новый гуртовщик мыши. Если вы пользователь Microsoft мыши
посетите Microsoft Слугу Паутины, где в особом подвале вы сможете
опустить-загрузить самого текущего гуртовщика Microsoft мыши. Если
производитель вашей мыши другой, узнайте о ее гуртовщике. Все основные
производители мыши уже имеют гуртовщиков мыши для Окон 95.
Перед тем как вы будете закреплять гуртовщика мыши, сделайте
заднюю-верхнюю копию ваших досье. Почистить ваш винчестер имеет смысл. У
вас должен быть старт-вверх диск от Окон 95.
проблемы решены. Если они остались, напишите в Службу Техничного Упора
Microsoft, и вашим случаем займется Особый Отдел.
Для эффективной помощи техничного упора, наш инженер должен знать
торговую марку вашей мыши, тип (в-портовая мышь, периодическая мышь,
автобусная мышь, Полицейский Участок /2 мышь, без поводка мышь,
гениталий на гусеничном ходу и т.п.), версию гуртовщика, производителя
компьютера (матери-доски), положение портов и рубильников на
матери-доске (и расклад карт), а также содержимое досье Авто-#####.bat,
config.sys и Сапог-полено.txt.
Кроме того, несколько полезных советов
1) не закрепляйте себе Окна 95 в то же самое место, где у вас закреплены
Окна 3.икс, вы не сможете хорошо делать кое-что привычное.
2) если вы новичок под Окнами 95, привыкните к новым возможностям мыши.
Щелкните по левой почке - выделите пункт, щелкните по правой кнопке меню
с контекстом всплывет, быстро ударьте два раза по левой почке -
запустите повестку в суд.
4) отработайте быстрый двойной удар по почкам мыши с помощью
специального тренажера на пульте управления Окнами 95
6) специалисты Microsoft компании после большого числа опытов выявили,
что наиболее эффективной командой из-под Окон 95 является "Послать на
...", которая доступна в любом времени и месте при ударе по правой почке
мыши. Если вы только что закрепили себе окна 95, вы сумеете послать
только на А (Б) и в специальное место "Мой портфель". Но по мере того
как вы будете закреплять себе новые программы для Окон 95, вы начнете
посылать на все более сложные и интересные места и объекты.
Особую эффективность команда "Послать на ..." приобретет при передачи
посланий через Е-почту и общение с вашими коллегами и друзьями в местной
сети-работе. Попробуйте мощь команды "Послать на ...", и вы быстро
убедитесь, что без нее трудно существовать под Окнами 95.
Пишите нам и помните, что Microsoft компания всегда думает о том, как
вас лучше сделать.
И оказался неправ. Ну, как всегда.
Как понять, что сёма несет хуйню:
Молчит-ли Сёма?
Молчит: Нет, Сёма не несет хуйни
Не молчит: Да, Сёма несет хуйню
https://govnokod.xyz/_26539/#comment-521255
26556 = «IT Оффтоп #39»
>>> Новая нить Бесконечного Стока имени Борманда.
https://govnokod.xyz/_25921/#comment-520584
26544 = «Бесконечный оффтоп имени Борманда #3»
кажется, это сайт админок, и его надо переименовать в "говносеть.ру" или "говносервер.ру"
Почему на первой позиции какой-то нерелевантный петух?
(уже на второй)
Бульмень точный (но не полностью) поиск можно задать кавычками: https://gcode.space/#!/search?q="Иньо" (N.B.: пока что в кавычки можно ставить только весь запрос целиком, точный поиск по отдельным словам не предусмотрен).
Плохо не быть умнее пользователя, а считать, что ты умнее всех пользователей.
Должна быть удобная умнушня по умолчанию, которая будет работать у 90% пользователей в 90% случаев, и возможность работы с остальных случаях в ручном режиме.
https://www.postgresql.org/docs/11/textsearch-dictionaries.html
В кризис можно найти на помойке заедушных архитекторов, которые ранее воротили бы нос от Gost Enterprise Inc.
С текстовым поиском есть ещё беда — скорость выполнения. Как я уже писал, впска «Стока» совсем убитая, поэтому последовательное сканирование а-ля grep будет медленным и жрать слишком много ресурсов. Поэтому и приходится городить какие-то костыли и не очень хорошо работающие индексы.
В постгре он вполне терпимый, но внешний питух лучше, но тогда надо будет это всё как-то правильно синхронизиовать.
Впрочем, есть и альтернативное мнение
https://stackoverflow.com/questions/58812324/postgresqlfull-text-search-vs-elasticsearch
Кстати, читни
https://greenice.net/elasticsearch-vs-solr-vs-sphinx-best-open-source-search-platform-comparison/
UPD: греп был бы полезен в ситуации, когда надо вот прямо точное-точное слово найти. Я его кое-как эмулирую через кавычки (там под капотом говно какое-то с триграммами), но это всё равно немного не то.
UPD: «ИнхоДб» там.
А «%LIKE%» — это тупое сканирование строк. Оно поддерживается всеми движками (но теоретически должно тормозить для бигдаты).
https://www.php.net/manual/ru/refs.search.php
какой анскил
>Мой
какой анскил!!!
Ну дела сделал
Мама ребенку говорит перед прогулкой: "иди дела сделай"
Есть еще такая "деловая газета взгляд", она по этой причине так называется
—– В норме.
--Нормальный
У меня | вовсе вертикальное.
В «TeX'е» у популярных шрифтов составлены лигатуры, заменяющие двойной минус на короткое тире (endash, а тройной минус — на длинное (emdash). Вероятно, в память о пишущих машинках.
https://otzovik.com/review_5392053.html
Это кто такие? Я только бор (баш-орг-ру) знаю.
Комментарии HTML помещены промежуточные <!-... - > признаки. Таким образом, любое содержание поместило в пределах <!-... - > признаки будет рассматривать как комментарий и полностью проигнорирует браузер.
https://www.tutorialspoint.com/ru/html/html_comments.htm
- 'Именно поэтому я за "PHP".' (не забыть все типы кавычек).
- 'Подтверждаю'
- .*#вореции.*
- len(comment) > 300
Спросите ПИ. Он сможет написать скрипт для нормализации вроде того скрипта, который переводит английский текст в "отсканированный" русский.
Строка сначала прогоняется через нормализацию (пробельные заменяются на один пробел, кавычки - на кавычки, скобки, значки убираются, текст лоукейзится, может быть сортируется по словам и т.д.), затем сравнивается с образцом психозы.
https://youtu.be/d_H-BjA7utA
Теперь
Отфильтровать уёбков, отвечающих им и отвечающих отвечающим им - логичный ход. Лучше дать комфорт в пользовании сайтом из коробки. 99.9% людей хотели бы не видеть уёбков, отвечающих им и отвечающих отвечающим им. Пусть остальные 0.1% вручную отключают фильтр.
Поэтому если один (или ограниченное количество) человек решает, кто уёбок, а кто нет — это неизбежно приводит к унылому вахтёрству, загниванию и превращению в эрзац-Пикабу.
И именно для решения этой проблемы и были придуманы локальные списки блокировки. Благодаря им ты можешь сам решать, кто для тебя уёбок, а кто не уёбок, что для тебя помойка, а что не помойка. Не нравится вирус — обеззараживаешь вируса, не нравится Файк — блокируешь Файка, не нравлюсь я — блокируешь меня. И всё!
-----
https://govnokod.ru/25820#comment539070
Со своим корешем тоже спорить будешь?
Поэтому в реальных условиях изучаются предпочтения пользователей и выставляются умолчания, которые устроят бОльшую часть пользователей (в случае платной программы - нормированно на взносы). Умолчания настраиваются так, чтобы целевая аудитория меньше пердолилась. Если 90% пользователей включает флаг X, то лучше его сделать включённым по умолчанию, чтобы напрячь только 10%. Так экономят человекогоды пердолинга с настройками.
> приводит к унылому вахтёрству
> локальные списки блокировки
Вы так говорите, как будто у нас есть либо вариант со неотключаемой фильтрацией по правилам автора сайта, либо локальные списки, пустые по умолчанию. Зачем? Зачем?
> Со своим корешем тоже спорить будешь?
Ну, вообще на ГК завязалась традиция отвечать на конкретные комментарии исходя из своего мнения на момент ответа, а не поддерживать корешей. Комментарий другого человек обдумывается и печатается ответ: "Какой багор )))".
Но вообще, я бы не заморачивался. Новые пользователи не увидят всякий мусор. Какая печаль! На сайт придут новые адекватные люди и останутся больше, чем на пару дней. Просто провал. Только лишняя нагрузка на сервер!
Пусть уж лучше увидят багров, когда попривыкнут к сайту и раскопаю настройки. Как и в жизни, будут вещи, к которым допускают только взрослых и адекватных людей.
Доброе утро.
Чел пришел, и говорит: у меня под рутом одни шрифты, а не под рутом -- другие. Что делать?
Ненужное говно пришло, и говорит: "не сиди под рутом"
Другое говно говорит "зачем сидеть пол рутом?"
Еще штук семь говен пришли со своим полезным советом.
Потом пришел один нормальный чел, и просто кинул ссылку на "fontconfig-user.html", где черным по белому напеисано, что настройки фонтконфига лежат в
~/.fonts.conf.d
~/.fonts.conf
и сразу всё стало понятно. А говны обиделись, что их полезные советы проигнорировали, и засрали ветку.
Форумы не нужны
Немногие недостатки с использованием рамок, поэтому никогда не порекомендованы, что использует рамки в ваших webpages:
Некоторые более малые приборы не могут справляться с рамками часто потому что их экран не большой достаточно быть разделенным вверх.
Иногда ваша страница будет показана по-разному на различных компьютерах должных к различному разрешению экрана.
Браузер назад застегивает не мог работать как упования потребителя.
Все еще немногие браузеры которые не поддерживают технологию рамки.
https://www.tutorialspoint.com/ru/html/html_frames.htm
питухи не могут даже в кроссбраузерную верстку, фу
https://www.b-list.org/weblog/2020/mar/16/no-service/
Отвлёкся. В том месте, докуда я дочитал, автор пишет, что раньше в «Джанге» сервисный слой занимался кокококодогенерацией и сохранял результат в файлах, так? А теперь сервисный слой эвалит, поэтому цари недовольны, так?
В общем, сервисный слой «Джанги» — это энтерпрайзная оверинжиниринговая питушня?
В итоге верстун может написать "<p>{{ pituh.foo }}</p>", а foo может привести к запросу к базе данных. Делать N+1 в джанге легко и приятно.
Авторитетный жабоёб обоссал бы такой паттерн, и сказал бы что:
* доменный объект не должен ничего знать про базу (Data Mapper pattern)
* работать с объетками надо через service layer, который представляет API системы, проверяет пермишены, реализует кеш итд
* полученные объекты должны трансформироваться в viewmodel (спец объекты для отображения)
* и уже они должны попадать в шаблон
Плюсы очевидны:
* верстун может дергать, что хочет: в базу уже никто не пойдет
* все уровни до viewmodel ничего не знают про вывод, так что удобно делать rest api, cli api, что угодно, и все будет работать одинаково в независимости от того, будешь ты результат отдавать в HTML или в конмандую строку.
Джангист ему возразит, что пиздеть про такую хуиту можно до состояния анализис парализис, а сайт нужен уже вчера, так что практишен битс пьюрити.
Но мы отвлеклись, ща продолжу
А если этих {{ pituh.foo }} в шаблоне страницы 100500 штук, то будет 100500 запросов к БД?
Допустим foo это внещний ключ питуха.
Вызов foo приводит к SELECT from Foo where petuh=petuh.id
Вьюшка (контроллер по нормальному) которая связана с этим шаблоном может правильно построить запрос, заставив ORM сделать джойн, и получить один запрос вместо 100500, но об этом надо подумать заранее.
Получается что у верстальщика есть возможность случайно триггернуть запрос к базе (потому что он рендерит Active Record), и эт вот может привести к говну
- аааааааа пиздец.
А потом разговариваешь с чуваками и они начинают: а чееееем mvc отличаешься от mvvm?! а ты такой: ебу, идите нахуй. Ответ правильный, а им не нравится.
Model это модель.
View это функция, которая получает запрос, берет модели, выбирает шаблон, и отдает модели в шаблон
Template это шаблон: HTML файл со вставками.
В общем, надо ИИ препроцессор, который смотрит, какие поля понадобились верстале в шаблоне, и на основе модели генерит оптимальный запрос. Чтобы не думать.
Забавно, что карманный лев не цапнет тебя пока у тебя в базе десять записей. А потом в один день их случайно станет 100500, и все станет колом.
Приходится смотреть на страничку через debug toolbar (есть такая тула в джанге), находить N+1, и добавлять джойны такой вот штукой
https://medium.com/better-programming/django-select-related-and-prefetch-related-f23043fd635d
Товарищ по ссылке говорит, что сервис леер не нужен, а всю логику надо держать в моделях. А еще не надо писать поверх Django ORM обёртку.
Не надо писать
Ок, это понятно, но не понятно куда пихать логику, которая связывает РАЗНЫЕ модели?
Где мне сделать метод "найти всех питухов, у каждого найти всех цыплят, и каждому ципленку насыпать зерна"?
Джангист напишет его прямо во вью (в том, что другие назвали бы контроллером). Однако вью слишком привязано к выводу в HTML, так что переиспользовать его для REST API или CLI может и не получиться.
Тогда джангист сделает файл utils.py и вынесет его туда. А это говно.
Лучше бы сделал сервис леер.
А на самом деле это практически единственный нормальный вариант показать команду.
Текст - говно. Текст не нужен. В текст можно встроить юникодушню, невидимые RTL или какую-то психозу, которая забьёт буфер шелла или выполнится и сделает какую-то пакость.
Вводя с экрана, сложно
* скопировать какую-то RTLушню и тысячи невидимых питушень,
* выполнить rm -pituz на perl,
* скопировать десять-двадцать строк вредоносной психозы.
Копрофил! Сидишь в луже говна, срёшь говном и ешь говно, да ещё и ругаешь говно говном!
P.S. Также было убрано автообновление списка ответов, т.к. инженерный отдел оно бесило.
P.P.S Проверяйте.
Результаты отсортированы по дате последнего ответа на соответствующий комментарий.
Короткий цикл обратной связи (Fine-scale feedback)
Разработка через тестирование (Test-driven development)
Игра в планирование (Planning game)
Заказчик всегда рядом (Whole team, Onsite customer)
Парное программирование (Pair programming)
Непрерывный, а не пакетный процесс
Непрерывная интеграция (Continuous integration)
Рефакторинг (Design improvement, Refactoring)
Частые небольшие релизы (Small releases)
Понимание, разделяемое всеми
Простота проектирования (Simple design)
Метафора системы
Коллективное владение кодом (Collective code ownership) или выбранными шаблонами проектирования (Collective patterns ownership)
Стандарт оформления кода (Coding standard or Coding conventions)
Социальная защищённость программиста (Programmer welfare):
40-часовая рабочая неделя (Sustainable pace, Forty-hour week)
Сахар сладкий
Соль солёная
> 40-часовая рабочая неделя
> сахар сладкий
А в чём экстрим то?
Армейка какая то получалась
Митинги помогают мне чуствовать себя командой. Лучше всего иметь каждодневный получасовой митинг. Раз в неделю нужно делать трехчасовой полный митинг. В конце спринта нужно выделять на митинг весь день.
А раз месяц нужно обсуждать планы и преспективы.
В некоторые дни мне удается принять участие в трех митингах каждый по два часа каждый.
Но проект все равно запаздывает. Очевидно, у нас недостаточно митингов. Нужно больше
подели на 4
Зы: кто помнит анек про шапокляк и $10?
Какая древность )))
курочка_яичко_и_дедушка.txt
For this reason, Real Programmers are reluctant to actually edit a program that is close to working. They find it much easier to just patch the binary object code directly, using a wonderful program called SUPERZAP (or its equivalent on non-IBM machines). This works so well that many working programs on IBM systems bear no relation to the original Fortran code. In many cases, the original source code is no longer available. When it comes time to fix a program like this, no manager would even think of sending anything less than a Real Programmer to do the job-- no Quiche Eating structured programmer would even know where to start. This is called "job security".
Some programming tools NOT used by Real Programmers:
* Source code maintenance systems. A Real Programmer keeps his code locked up in a card file, because it implies that its owner cannot leave his important programs unguarded
>Понимание, разделяемое всеми
Тратить рабочее время чтобы объяснить куче анскильных Люсечек как работает какая-то функция.
>Заказчик всегда рядом
Погонщик всегда рядом.
>Непрерывный, а не пакетный процесс
Постоянные напряги и заёб.
>Парное программирование (Pair programming)
>Непрерывный, а не пакетный процесс
>Непрерывная интеграция (Continuous integration)
>Рефакторинг (Design improvement, Refactoring)
>Частые небольшие релизы (Small releases)
Ну это вообще Agile software development principles под копирку.
Собственно на примере сегодняшней IT-индустрии и софта можно воочию наблюдать результаты поколения Agile.
интересные у тебя отношения с заказчиком
Для многих задротин Agile стал де-факто стандартом разработки софта. Абсолютное большинство даже не пробовали никогда других методологий, но при этом продолжают с пеной у рта защищать свои кайданы и плети и доказывать, что, дескать «Аджайл — это модно, современно, молодежно».
Многим задротам в слове Agile видят лишь одно значение — «гибкий». Ведь хороше же быть гибким и быстро адаптироваться под меняющийся мир, верно? Однако между «гибкий» и «прогибающийся» тонкая грань. «Лучшие умы» на работе обычно только и делают, что прогибаются — под PMов, под клиента, под идиотскую корпоративную политику. Под любую дичь, лишь бы ублажить заказчика.
А заказчик этому и рад — Ах вы прогибаетесь? Вот вам в спринт свежих тасок, да без четких требований и документации. Жрите!
Следующее слово, которое должно было бы вызвать тревогу в голове мамкиного борщехлеба — sprint. Совершенно непонятно, как можно было продвигать идею «спринтов» в массы и самому следовать ей. Может вы думали, что Sprint — это Sprite — вкусненькая зелененькая водичка, пшикающая во рту? Как бы не так. Спринт — это стометровка. Взрывной бег на пределе возможностей. Хотели задротины почувствовать себя великими бегунами — вот и получили постоянный бег. Вот только если спринтер пробежал один раз и отдыхает, то задротина по окончании первого спринта тут же стартует второй. И так до бесконечности — до выгорания или слетания с катушек с последующим прогоном на мороз.
> Вот вам в спринт свежих тасок, да без четких требований и документации. Жрите!
Если задачи на спринт выделает заказчик, и задачи эти принимаются в спринт без обсуждения требований, то это значит, что к аджайлу это не имеет никакого отношения.
лого знаешь что такое?
https://en.wikipedia.org/wiki/Logo_(programming_language)
https://ru.wikipedia.org/wiki/Робик
Можешь по акцесс логу посмотреть есть ли пользователи.
https://govnokod.ru/26838
https://govnokod.xyz/_26838/
Так как опросить всех жителей довольно сложно, я предлагаю выбрать десять случайных жителей.
Если все десять это знают, то скорее всего это общеизвестно.
Нужно спросить теорверпетуха насколько мое предложение валидно
Вся-вся «Одесса» малость велика,
Но вся «Молдаванка» и «Пересыпь»,
Вся-вся знает «Костю-моряка».
гост поехавший
Нормальные люди бухают, гуляют с бабами, или ходят в походы, а он говнокодит для кучки сраных битардов на богом забытом сайте
Ну и нормальные люди не бухают ващето.
ЗОЖ это новомодная хуйня, в мое время такого небыло.