В общем, теперь появились скамеры, которые формируют описание своих лотов, исходя из интересов скальперов. Последние запускают в работу ботов, и те выкупают товары, которые соответствуют заданным характеристикам.
Ну это уже не мошенники. Мошенничество всегда связано с обманом или злоупотреблением доверием какого-либо лица. Бот не является лицом, а владелец бота, если бы прочёл объявление, вряд и бы обманулся, т. к. там прямым текстом предупреждение указано.
Мошенники (с натяжкой) тут как раз те кто спекулирует — они то как раз нацелены на других людей.
Проблема в том, что бот не анализирует описание или заголовок, он руководствуется в поиске исключительно ключевыми словами и ценой.
А это — не проблема. Проблема в том что доработать бота на анализ описания никакого труда не представляет, после чего наказывать этих вредителей станет сложнее.
Всегда пишу вторым способом, и никаких сложностей восприятия это не создаёт, наоборот по-моему понятнее. В нём меньше сущностей поддерживается одновременно — это не только процессору хорошо, но и программисту, держащему их в голове. И проще мысленно проверить весь ход его выполнения благодаря отсутствию лишних ветвлений.
Ну и логически он ничуть не хуже первого: мы запоминаем место "сцепки" и пересоединяем её на другой элемент. А в первом варианте запоминается путь к сцепке. Просто многие видимо указатели считают какой-то непонятной магией и даже не пытаются на них навесить высокоуровенвые смысловые ярлыки, от того и проблемы.
У меня сложилось впечатление, что многие пользователи GNU/Linux слабо представляют, из чего сделана эта операционная система, поэтому утверждают, что она сляпана из попавшихся под руку кусков.
Наоборот, как раз хорошо представляют, потому и утверждают. И ваша статья — только подтверждает данное утверждение.
В то же время, архитектура большинства дистрибутивов является устоявшейся
Это не значит что она не сляпана. Да, технология "сляпать из кусков", к сожалению, устоялась.
регламентируется рядом стандартов
Что-то регламентируется, что-то не регламентируется. Где регламентируется — у каждой подсистемы свой стандарт, делавшийся либо без оглядки на остальных, либо, в местах неизбежного соприкосновения, с учётом необходимых костылей для подгона одного к другому. Нет единого плана разработки, да и не может быть с таким подходом — найдём кто что сделал в опенсорсе и как-нить прикостылим к тому что уже есть.
вкладывая на несколько порядков больше денег, чем может себе позволить РФ. Секрет исключительно в объемах финансирования отрасли (включая RnD) и огромном внутреннем рынке.
Не думаю что дело в этом. Скорее в том что у нас политика "можно за границей заказать, зачем напрягаться". Несмотря на декларируемое политиками импортозамещение, у них то ли нет реального интереса к этому, то они нет компетенции оценить процесс, то ли и то и то сразу.
Продукт который стоит избегать почти в любых ситуациях, так же как и сахар.
Ну это конечно совсем не так.
Сейчас пищи и калорийности абсолютный избыток
Надо меньше всякого модного шлака потреблять и больше двигаться, тогда всё будет в норме. Заодно и других проблем со здоровьем избежите. А сахар это хорошо, надо только следить чтобы он в зубах не оставался.
требует наличия родителей и учеников в неком информационном пространстве
Требовать пользоваться интернетом — это превышение полномочий. По-моему разобраться надо в первую очередь с этим.
А что ещё хуже — не просто интернетом, а гос. чиновник требует пользоваться неподконтрольными государству сервисами в нём.
С этим спорить никто и не собирался. Речь была про штатное ущемление свободы передвижения по собственному дому, спровоцированное посторонними людьми.
Ну и "помогать" это какая-то активная деятельность а не "не лезь ты мешаешь".
На статью в стиле "истории из жизни" тянет, а на раскрытие хотя бы заявленного заголовка — нет. Тут нет "как собрать светофор", и вобщем-то тут вообще почти ничего нет — если убрать картинки и воду то останется полстраницы.
Ну, то что ребёнку нашли занятие (сборка светофора) — это конечно хорошо.
А вот применение — печально. По-моему нельзя детей к такому приучать. Ребёнок должен понимать в своём доме он хозяин. Ну, младше родителей, но никакие внешние факторы (в том числе посторонние люди с работы, желающие эксклюзивного внимания его отца) его права так систематически ущемлять не должны.
Без чего нельзя слушать музыку на компьютере? Разумеется, без звуковой карты. Это сейчас звук встраивается прямо в материнские платы
Он всегда встраивался. Нововведение звуковых карт — 8-битный буферизованный ЦАП. Без них — 1-битный небуферизованный, зато с встроенным генератором частоты. Вобщем-то через него очень много всяких звуков проигрывалось, включая музыку, странно что кто-то не знает, рассказывая про DOS.
На Земле думаю железа куда больше имеется чем в этом астероиде. И если бы оно кому-то было нужно в заметно бОльших, чем сейчас имеется на рынке, количествах, то и добычу бы легко увеличили. Добытчики металлов из под земли (если они не драгоценные) хоть и богаты, но их бюджет — крайне малая доля от стоимости произведённых товаров, и больше он не станет.
Ну я помню что при пересборке FreeBSD сначала целый день компилируется clang, а потом за пару часов всё остальное. Но возможно это какие-то особенности системы, сейчас лень выяснять.
Я бы ни на том, ни на другом не писал компилятор, но чем C++ хуже для этих задач, чем C?
Он менее прозрачный и более вероятно подставит какую-то неочевидную проблему. Взамен предлагается более высокий уровень абстракций, которые многим людям легче воспринимать, чем низкоуровневые алгоритмы, таким образом ускоряется разработка. Но компилятор — по-моему не та вещь, где можно такие обмены производить.
Приучайтесь писать код по стандарту.
Стараюсь писать по стандарту, но не следует веровать в его идеальность и безальтернативность. Повторюсь, от unsigned int argc ничего нигде не сломается, и по факту gcc просто поддерживает эту вариацию, не прилагая для этого никаких специальных усилий, а в clang вставили пакостную неотключаемую ошибку, без какой либо вменяемой причины, просто чтобы заставить программистов писать так, как нравится авторам clang'а. А может кто-то использует нестандартное libc и там вообще прототип main другой? Зачем этому мешать, причём так агрессивно? Да, пусть компилятор предупреждает включённым по дефолту варнингом "кажется у этого main нестандартный прототип" (хотя у gcc по дефолту отключено, -Wmain), это и правда с большой вероятностью окажется просто опечатка, но принудительно запрещать это — бред, программист лучше знает что ему нужно. По такой же логике компилятор перед началом работы должен проверять наличие в файловой системе файлов stdio.h и подобных, и аварийно завершаться, если их нет (даже если в компилируемом исходнике нет к ним отсылок) — ведь у этой ОС не соответствующие стандарту инклюды, а значит надо запретить компиляцию под неё.
На всякий случай пояснение: main — это обычная функция, вызываемая из startup-кода в libc, и компилятору в общем случае вообще нет нужды как-то по особому её интерпретировать (кроме синтаксического сахара с необязательным return'ом).
А я не хочу вспоминать, && или || приоритетнее, и требовать это от читателей моего кода. Это хороший, годный ворнинг, повышающий читабельность.
Вам никто не мешает расставлять скобки вокруг &&. Более того, никто не мешает включить это предупреждение там, где по дефолту его нет, если без него вы скобки ставить забываете (хоть и хотите). Но по-моему очень сложно не запомнить порядок основных операций, использующихся в условиях (арифметика -> сравнения -> && -> ||; кстати, насчёт арифметики, в формуле a+b*c тоже надо скобки ставить a+(b*c)?), пользуясь языком чаще чем раз в год, а лишние скобки зрительно засоряют код и тратят площадь экрана, так что вполне вероятно программист не захочет их писать. Ориентировать же дефолтные настройки предупреждений на пользующихся языком раз в год — странно.
Кстати я вот иногда дорабатываю свой же код 10+ летней давности — там везде эти скобки расставлены, убираю их по мере столкновений. Но мне тогда совершенно не требовались варнинги чтобы их ставить.
Ну ладно, тогда можно какие-нить биты поля identifier под это задействовать.
Или, поскольку это всё про TCP — залезть в его заголовок (порты же учитываются значит можно) и использовать urgent pointer (при флаге URG=0) — обычно это поле игнорируется, ну а в тех редчайших случаях, когда оно используется по изначальному назначению, ну будет некоторая рандомизация маршрута, не страшно.
Получится без инкапсуляции.
Про ip/tcp options наверно лучше не вспоминать, думаю с ними хуже чем инкапсуляция выйдет, хотя может и ошибаюсь.
Я допускаю что перенастроить сетевое железо на учёт полей не из какого-то стандартного списка может оказаться затруднительно, а то и вообще невозможно без замены какого-нить чипа с реализацией этих хешей в железе для скорости. Соображения выше в таком случае теоретические — сделать можно, но готовых реализаций нет.
TLDR: после распознанной разовой потери пакета меняем маршрут по каскадным резервированным свитчам, для динамического управления выбором маршрута используем поле flow label из ipv6-заголовка, для ускорения распознавания потерь ставим микроскопический RTO с помощью eBPF.
Услышал ipv6 закрыл доклад =) Нигде кроме как в Яндексе не применимо
В ipv4-заголовке тоже есть подходящее ненужное поле — ToS. У него конечно меньше разрядность, но думаю хватит. Ядро надо будет пропатчить чуть-чуть для такого использования.
Есть некоторое соображение, но видимо несущественное раз всё и так работает: RTO может случиться из-за потери и на обратном маршруте, в итоге отправитель будет зря прыгать по свитчам, хотя это ничему скорее всего не навредит, за исключением небольшой вероятности перепрыгнуть на битый свитч с небитого.
… На фоне всех остальных. Потому что алиас указателей компиляторы C/C++ корректно обрабатывать не умеют.
Умеют, просто надо пользоваться проверенными решениями (gcc) а не этой новомодной ерундой, с которой вечно проблемы. Хотя прямо таких дефектов компиляции я ещё не видел, но:
1) писать компилятор на прикладном с++ вместо системного с
2) компилятор компилируется (сам себя) около суток на обычном компе
3) всякие мелкие педантичные пакости типа запрета unsigned int argc в main (который формально не по стандарту, но по факту не существует систем где оно несовместимо, да и стандарт кажется запрещает int и unsigned int иметь разные представления для положительных чисел) — причём это не варнинг а ошибка, да ещё и неотключаемая
4) включёные по дефолту идиотские варнинги о рекомендации писать (A&&B)||C вместо A&&B||C и ещё какие-то (не помню) — создают впечатление что оно сделано для умственно отсталых
Хотя из этого всего напрямую не следует, что он ещё и компилирует дефективно, но следует что его авторы, мягко говоря, странные люди, и лучше их продукты избегать.
Ну это уже не мошенники. Мошенничество всегда связано с обманом или злоупотреблением доверием какого-либо лица. Бот не является лицом, а владелец бота, если бы прочёл объявление, вряд и бы обманулся, т. к. там прямым текстом предупреждение указано.
Мошенники (с натяжкой) тут как раз те кто спекулирует — они то как раз нацелены на других людей.
А это — не проблема. Проблема в том что доработать бота на анализ описания никакого труда не представляет, после чего наказывать этих вредителей станет сложнее.
Всегда пишу вторым способом, и никаких сложностей восприятия это не создаёт, наоборот по-моему понятнее. В нём меньше сущностей поддерживается одновременно — это не только процессору хорошо, но и программисту, держащему их в голове. И проще мысленно проверить весь ход его выполнения благодаря отсутствию лишних ветвлений.
Ну и логически он ничуть не хуже первого: мы запоминаем место "сцепки" и пересоединяем её на другой элемент. А в первом варианте запоминается путь к сцепке. Просто многие видимо указатели считают какой-то непонятной магией и даже не пытаются на них навесить высокоуровенвые смысловые ярлыки, от того и проблемы.
Наоборот, как раз хорошо представляют, потому и утверждают. И ваша статья — только подтверждает данное утверждение.
Это не значит что она не сляпана. Да, технология "сляпать из кусков", к сожалению, устоялась.
Что-то регламентируется, что-то не регламентируется. Где регламентируется — у каждой подсистемы свой стандарт, делавшийся либо без оглядки на остальных, либо, в местах неизбежного соприкосновения, с учётом необходимых костылей для подгона одного к другому. Нет единого плана разработки, да и не может быть с таким подходом — найдём кто что сделал в опенсорсе и как-нить прикостылим к тому что уже есть.
Не думаю что дело в этом. Скорее в том что у нас политика "можно за границей заказать, зачем напрягаться". Несмотря на декларируемое политиками импортозамещение, у них то ли нет реального интереса к этому, то они нет компетенции оценить процесс, то ли и то и то сразу.
А заказ на производство в какой стране выполняется?
Ну это конечно совсем не так.
Надо меньше всякого модного шлака потреблять и больше двигаться, тогда всё будет в норме. Заодно и других проблем со здоровьем избежите. А сахар это хорошо, надо только следить чтобы он в зубах не оставался.
Требовать пользоваться интернетом — это превышение полномочий. По-моему разобраться надо в первую очередь с этим.
А что ещё хуже — не просто интернетом, а гос. чиновник требует пользоваться неподконтрольными государству сервисами в нём.
С этим спорить никто и не собирался. Речь была про штатное ущемление свободы передвижения по собственному дому, спровоцированное посторонними людьми.
Ну и "помогать" это какая-то активная деятельность а не "не лезь ты мешаешь".
На статью в стиле "истории из жизни" тянет, а на раскрытие хотя бы заявленного заголовка — нет. Тут нет "как собрать светофор", и вобщем-то тут вообще почти ничего нет — если убрать картинки и воду то останется полстраницы.
Ну, то что ребёнку нашли занятие (сборка светофора) — это конечно хорошо.
А вот применение — печально. По-моему нельзя детей к такому приучать. Ребёнок должен понимать в своём доме он хозяин. Ну, младше родителей, но никакие внешние факторы (в том числе посторонние люди с работы, желающие эксклюзивного внимания его отца) его права так систематически ущемлять не должны.
Ферзь неодушевлённый, бактерия одушевлённая.
Скот это альтернативная точка зрения на корову — как на ресурс.
торты́
плю́сы
говорю "си-плюс-плюс" или "си-пэ-пэ"
Ах какие плохие санитарные нормы, мешают бизнесменам зарабатывать.
Надеюсь что их (бизнесменов) пошлют с их хотелками.
Не надо.
Пусть роботы (или те, кто хочет мыслить как роботы) страдают от непонимания или жажды ложного перфекционизма.
Поделом. Напридумывали метрик — получайте метрики.
Он всегда встраивался. Нововведение звуковых карт — 8-битный буферизованный ЦАП. Без них — 1-битный небуферизованный, зато с встроенным генератором частоты. Вобщем-то через него очень много всяких звуков проигрывалось, включая музыку, странно что кто-то не знает, рассказывая про DOS.
На Земле думаю железа куда больше имеется чем в этом астероиде. И если бы оно кому-то было нужно в заметно бОльших, чем сейчас имеется на рынке, количествах, то и добычу бы легко увеличили. Добытчики металлов из под земли (если они не драгоценные) хоть и богаты, но их бюджет — крайне малая доля от стоимости произведённых товаров, и больше он не станет.
Ну я помню что при пересборке FreeBSD сначала целый день компилируется clang, а потом за пару часов всё остальное. Но возможно это какие-то особенности системы, сейчас лень выяснять.
Он менее прозрачный и более вероятно подставит какую-то неочевидную проблему. Взамен предлагается более высокий уровень абстракций, которые многим людям легче воспринимать, чем низкоуровневые алгоритмы, таким образом ускоряется разработка. Но компилятор — по-моему не та вещь, где можно такие обмены производить.
Стараюсь писать по стандарту, но не следует веровать в его идеальность и безальтернативность. Повторюсь, от
unsigned int argc
ничего нигде не сломается, и по факту gcc просто поддерживает эту вариацию, не прилагая для этого никаких специальных усилий, а в clang вставили пакостную неотключаемую ошибку, без какой либо вменяемой причины, просто чтобы заставить программистов писать так, как нравится авторам clang'а. А может кто-то использует нестандартное libc и там вообще прототипmain
другой? Зачем этому мешать, причём так агрессивно? Да, пусть компилятор предупреждает включённым по дефолту варнингом "кажется у этого main нестандартный прототип" (хотя у gcc по дефолту отключено,-Wmain
), это и правда с большой вероятностью окажется просто опечатка, но принудительно запрещать это — бред, программист лучше знает что ему нужно. По такой же логике компилятор перед началом работы должен проверять наличие в файловой системе файлов stdio.h и подобных, и аварийно завершаться, если их нет (даже если в компилируемом исходнике нет к ним отсылок) — ведь у этой ОС не соответствующие стандарту инклюды, а значит надо запретить компиляцию под неё.На всякий случай пояснение:
main
— это обычная функция, вызываемая из startup-кода в libc, и компилятору в общем случае вообще нет нужды как-то по особому её интерпретировать (кроме синтаксического сахара с необязательным return'ом).Вам никто не мешает расставлять скобки вокруг
&&
. Более того, никто не мешает включить это предупреждение там, где по дефолту его нет, если без него вы скобки ставить забываете (хоть и хотите). Но по-моему очень сложно не запомнить порядок основных операций, использующихся в условиях (арифметика -> сравнения ->&&
->||
; кстати, насчёт арифметики, в формулеa+b*c
тоже надо скобки ставитьa+(b*c)
?), пользуясь языком чаще чем раз в год, а лишние скобки зрительно засоряют код и тратят площадь экрана, так что вполне вероятно программист не захочет их писать. Ориентировать же дефолтные настройки предупреждений на пользующихся языком раз в год — странно.Кстати я вот иногда дорабатываю свой же код 10+ летней давности — там везде эти скобки расставлены, убираю их по мере столкновений. Но мне тогда совершенно не требовались варнинги чтобы их ставить.
Ну ладно, тогда можно какие-нить биты поля identifier под это задействовать.
Или, поскольку это всё про TCP — залезть в его заголовок (порты же учитываются значит можно) и использовать urgent pointer (при флаге URG=0) — обычно это поле игнорируется, ну а в тех редчайших случаях, когда оно используется по изначальному назначению, ну будет некоторая рандомизация маршрута, не страшно.
Получится без инкапсуляции.
Про ip/tcp options наверно лучше не вспоминать, думаю с ними хуже чем инкапсуляция выйдет, хотя может и ошибаюсь.
Я допускаю что перенастроить сетевое железо на учёт полей не из какого-то стандартного списка может оказаться затруднительно, а то и вообще невозможно без замены какого-нить чипа с реализацией этих хешей в железе для скорости. Соображения выше в таком случае теоретические — сделать можно, но готовых реализаций нет.
TLDR: после распознанной разовой потери пакета меняем маршрут по каскадным резервированным свитчам, для динамического управления выбором маршрута используем поле flow label из ipv6-заголовка, для ускорения распознавания потерь ставим микроскопический RTO с помощью eBPF.
therb1
В ipv4-заголовке тоже есть подходящее
ненужноеполе — ToS. У него конечно меньше разрядность, но думаю хватит. Ядро надо будет пропатчить чуть-чуть для такого использования.Есть некоторое соображение, но видимо несущественное раз всё и так работает: RTO может случиться из-за потери и на обратном маршруте, в итоге отправитель будет зря прыгать по свитчам, хотя это ничему скорее всего не навредит, за исключением небольшой вероятности перепрыгнуть на битый свитч с небитого.
Умеют, просто надо пользоваться проверенными решениями (gcc) а не этой новомодной ерундой, с которой вечно проблемы. Хотя прямо таких дефектов компиляции я ещё не видел, но:
1) писать компилятор на прикладном с++ вместо системного с
2) компилятор компилируется (сам себя) около суток на обычном компе
3) всякие мелкие педантичные пакости типа запрета
unsigned int argc
вmain
(который формально не по стандарту, но по факту не существует систем где оно несовместимо, да и стандарт кажется запрещаетint
иunsigned int
иметь разные представления для положительных чисел) — причём это не варнинг а ошибка, да ещё и неотключаемая4) включёные по дефолту идиотские варнинги о рекомендации писать
(A&&B)||C
вместоA&&B||C
и ещё какие-то (не помню) — создают впечатление что оно сделано для умственно отсталыхХотя из этого всего напрямую не следует, что он ещё и компилирует дефективно, но следует что его авторы, мягко говоря, странные люди, и лучше их продукты избегать.