
Нет, это не шутка, вородор действительно сошёл с ума, и теперь ему срочно нужны люди шарящие за сетевое программирование, которые окончательно ухудшат его клиническую картину.

Вы охуительный программист, вы шарите в сетевое программирование на плюсах, ну так у вородора таки есть на что потратить ваше время.

Не будемте ходить вокруг да около, суть такова: вородор сошёл с ума и пишет сервер на плюсах. В чём проблема? Он вообще не ебёт как кодить на си. И если книжку «С++ для самых маленьких чайничков и свежеиспечённых хлебушков» он ещё может прочитать, то вот как подступиться к сетевой магии вообще в душе не ведает, а надо, ибо на ней родной всё и завязано. Казалось бы, ну возьми рандомный мануал, а вот херушки, если урождённый перфекцихуизм ещё можно затолкать куда поглыбьше, то с конкретикой хрен разберёшься. Конкретно — в каждой грёбаной обучалке реализацию предлагают через свои библиотеки, и фиг поймёшь какой вариант подходит. Вроде на winsock'е не сложно, но так он вроде под виндовс, а серверную часть нужно делать под линукс. Нахрена? А хрен его знает, но вроде все сервера стоят на линухе, а громоздить ниипических размеров архитектуру под винду, что бы потом всё переделывать, ну его нафиг. Ещё и фиг поймёшь на что ставить, одни «экперты» кричат убунта наше всё, другие мол она ужо морально устарела — дорогу молодым, а вородору вот нифига не хочется по десять раз всё переделывать и переустанавливать. Через asio вроде и на линухе и на винде работать должно, но фиг его знает, может это всё фигня, а труъ программисты через какой-нибудь ACE всё делают ибо остальное не кошерно.

И посмотрел бы конечно вородор не спеша всё и сразу, да только времени нет нифига, ещё и с работы не ровен час попрут, так что хотелось бы максимально быстро хотя бы в основах разобраться, что бы можно было нормальное сетевое взаимодействие организовать.
460 комментариев
Я в Крыму живу!!! У нас НЕТ этих ваших юнитёв и анрилов!!!
3060 выдаёт в среднем 80-90 FPS, если тени на дальних ЛОДах поотключать, то и 110
Короче, желаю узбеков в этом деле
Прямо на свою Virtualnuyu Mashinuuu!!
Tepery on programmirovatь kak nastoyashiy Cool-haцker!!!
GTRFMGTRLFS!Не лезь, оно тебя сожрет.
Ты думаешь, что вот пишешь в коде socket.send(cmd) и оно на сервере получается тем же socket.receive?
А вот хренушки там
1) Может прийти двумя-тремя частями, или (в тяжелых случаях) начало строки после конца.
2) Может кусок потеряться, нужна валидация
3) На сервере может быть big endian, на клиенте little endian.
4) Жопа с рогами показывается на этапе сериализации данных и распаковки (с учетом разных размеров типов)
5) В синхронном режиме — можно делать разве что шахматы, в асинхронном — добро пожаловать в мир потоков.
Всё это более или менее учтено в движках, даже в простых библиотеках типа SFML, которые имеют сетевые компоненты, снимающие половину или чуть более проблем. В полноценных системах типа Godot, Unity и Unreal — почти все проблемы решены разработчиками, а те, что не решены — ты сам решить не сможет, просто не хватит квалификации.
Короче, крайне не рекомендую. Сетевая часть — самая сложная, куда более утомительная, чем например, рендер графики или мультиввод «клава-геймпад». Времени оно сожрет прилично, а работать всё равно будет отвратно.
Godot точно есть.
Не пиши на уровне сокетов. Вот список в помощь (украдено)
СписокBoost.Asio is really good.
Asio is also available as a stand-alone library.
ACE is also good, a bit more mature and has a couple of books to support it.
C++ Network Library
POCO
Qt
Raknet
ZeroMQ (C++)
nanomsg (C Library)
nng (C Library)
Berkeley Sockets
libevent
Apache APR
yield
Winsock2(Windows only)
wvstreams
zeroc
libcurl
libuv (Cross-platform C library)
SFML's Network Module
C++ Rest SDK (Casablanca)
RCF
Restbed (HTTP Asynchronous Framework)
SedNL
SDL_net
OpenSplice|DDS
facil.io (C, with optional HTTP and Websockets, Linux / BSD / macOS)
GLib Networking
grpc from Google
GameNetworkingSockets from Valve
CYSockets To do easy things in the easiest way
yojimbo
GGPO
ENet
SLikeNet is a fork of Raknet
netcode
photon is closed source, requires license to use their sdk
crossplatform network — open source non blocking metatemplate framework built on top of boost asio
Лично я работал только с SFML's Network Module и Qt. Там всё хорошо.
Можешь порыться в моих проектах, они почти все на SFML сделаны, и задачи главного цикла с механикой сцен частично решены.
Плюс SFML и SDL2 в целом и другие куски игрухи позволят реализовать достаточно просто (я так поддержку BGM в Taisei Project дописывал на SDL2_mixer, ведь тоха без музыки — это не тоха, это всем известно))
Если не требуется редактор сцен и есть опыт низкого уровня — то да.
Свой движок на C++ это хорошо, это полезно. Главное, понимать, где есть смысл делать самому, а где всё же брать готовое. Если у автора задача
то конечно, С++ это выбор либо очень мощного специалиста, либо плохой.
Как там в анекдоте — «а корабля-то я не вижу»
Нет, серьёзно, это просто какое-то издевательство!
Значит скачал я SFML библиотеку с официального сайта, как положено, под Visual C++ 17 (2022) — 64-bit, вроде на сайте Visual Studio тоже написано что он 22-го года, хотя последнее обновление всего три дня назад было. В общем распаковал я это дело как написано в инструкции, а дальше трэш угар и содомия: на сайте SFML настройка идёт через проекты, которых в моей версии Visual Studio тупо нету, толи это прерогатива платной версии, толи ещё чего, но их тупо нет в меню, на сайте VS вообще чёрт ногу сломит. В итоге нагуглил вроде гайд, где просто добавляется дополнительный Include Path для папки с новыми библиотеками, и вроде как оно даже почти работает, по крайней мере синтаксис подключённой библиотеки VS видит, вот только при попытке скомпилировать экзешник через g++, эта тварь выдаёт фатальную ошибку, мол нема такого файла:
И хрен поймёшь что с ним не так и чего вообще теперь делать. Вроде как в тасках должен появляться дополнительный аргумент после добавления пути, но чёт он нифига не появляется, а вородор в душе не ведает как его добавлять и вообще стоит ли.
Вот и сидит он тяперь пячальный, и грустит что нифигашеньки не работает.
Надо указать включаемый каталог такой, чтобы в нём были эти подкаталоги. И каталог для библиотек, чтобы в нём были эти библиотеки. И добавить линковку библиотек либо через прагму, либо настройки проекта.
Но вообще, если сложности начинаются с подключения библиотек и инклудов, то может, всё-таки посмотреть в сторону более дружелюбных систем? Тот же C# подключает любые библиотеки одной командой.
PS: Я посмотрел, у тебя VSCode, а не Visual Studio. Там нужны великие жертвы, чтобы чего-то настроить.
Выкинь каку и либо возьми бесплатный Visual Studio Community, либо столь же бесплатный MinGW + CodeBlocks.
PPS: И библиотеки у тебя не те — ты скачал для Visual Studio, у тебя же компилятор MinGW.
А с фига ли я тогда код устанавливал???
Этого я не говорил, просто на Visual Studio это делается проще.
Альтернатива, как уже писал — CodeBlocks.
Возможно, чем-то и лучше. Но когда я понял, что не могу создать в ней нужный проект путем нажатия двух кнопок — выкинул её и вернулся к QtCreator.
Вот только НЕТУ там такого файла, в принципе нету!!!
Правильно! Тоже не существует в актуальной версии!
Жопа есть а слова нету.
Есть файл, есть.
В первом же архиве для mingw
Ты точно качаешь официальные сборки от sfml-dev, а не васянские?
Кроме того, это проблема не компиляции, а уже запуска. Компиляция прошла, раз требует dll.
Спойлер
Заголовочные файлы — это .h или .hpp, там указаны декларации функций и классов. Как правило, они не зависят от компилятора и разрядности ОС (но в деталях, немного могут отличаться).
Нужны, чтобы твой компилятор понял, как вызывать функцию или класс.
Линкуемые библиотеки — это .a или .lib, там находятся откомпилированные разработчиками реализации функций, они зависят от компилятора и разрядности ОС (да и от самой ОС тоже).
Нужны, чтобы линковщик мог подставить в бинарник правильные тела функций.
Наконец, динамические библиотеки .dll или .so (для Linux,FreeBSD и Mac) — это уже части исполняемого кода, нужные для запуска полученного exe-файла. В некоторых случаях, без них можно обойтись, используя статическую линковку.
Чтобы вся эта туева хуча файлов работала, нужно либо настроить проекты Visual Studio/CodeBlock (указав все нужные места для нужных архитектур и типов сборки), либо использовать более современные системы типа CMake, либо идти к старым Make-файлам, либо вообще обратиться
козлук пакетной сборке через батники (последнее не рекомендую в большинстве случаев).В общем, по итогу за три дня вородорушек нихренашеньки так и не сделал.
Кроме того, предполагается, что человек, использующий SFML на C++, знаком с принципами подключения библиотек к проекту.
А то всякие winmm.lib и ws2_32.lib у меня даже поисковик винды не находит.
MinGW не знаю, включает ли их. Visual Studio при установке точно включает.
В крайнем случае опять буду табун тиранить своими тупыми вопросами.
>точно никто ничего не закроет
Хорошая шутка
Нажать — это когда ВСЕ версии Windows, установленные на русском наборе IP либо с русской раскладкой по умолчанию, удаляются с дисков, и, возможно, засылают через IOCtl во все диски системы случайный мастер-пароль.
Этого ПОКА не случилось.
Не понял аналогию. Продавец в лице Microsoft при наличии возможности и конкретном виде деятельности (розничной продаже лицензий) должен продать покупателю столько лицензий, сколько есть на складе. Если следовать нашим законам о торговле (помню, как я стебал продавцов в Магните, когда они во время кризиса ограничивали продажи товаров «по пять в руки»).
Я-то занимаюсь разработкой ПО на заказ и второй-третий вопрос, который поднимается на обсуждении — можно ли сделать так, чтобы программы мои отключились по нажатию кнопку в ПУ. Некоторые идут дальше, и спрашивают, можно ли в программу встроить удаление данных на компе и в идеале, повреждение компьютера клиента, если клиента нужно не просто лишить программы, но еще и наказать.
По второму пункту я всегда отвечаю, что это статья и такое делать нельзя (но не все такие порядочные, как я).
По первому — да, пожалуйста, если вы не продаете программу, а передаете во временное пользование, то ваше право её стереть с компа клиента просто так, вот механизм (упрощенный)
if get("http://адрес-панели/{client_id}/secret_url")=="стереть всё к хренам") then begin RecursiveDelete(PROGRAM_PATH) ; ShowMessage("Вы больше не можете пользоваться программой") ; Application.Terminate(1) ; end ;Дурацкая — да. Невыполнимая — не вижу никаких сложностей, кроме того, что зацепит пару приграничных областей и/или пользователей, которые не в РФ, но по работе, используют русскую раскладку (переводчики, например).
Этот механизм будет применен, имхо, только в случае настоящей, горячей, прямой войны между США и страной, где будут отключать. На этом этапе скандалы и юридические вопросы «мы платили» перестанут иметь какое-то значение.
Собственно
а ля гер ком а ля гер. Дружественный огонь, всё такое. Компенсацию выплатят.
Реальный код чуть сложнее, и он учитывает то, что в Windows, в отличии от Linux, нельзя удалить выполняемый сейчас файл, даже от админа. А также учитывается наличие UAC и прочих моментов.
Сам факт его наличия, однако, никуда не девается — любой более-менее крупный закрытый продукт, имхо, имеет эти опции в том или ином виде, если компания или правительство говорит «рубить к хренам».
Я почти уверен, что подобные коды есть, начиная с ранних версий. Причем на уровне ядра, то есть, установить файерволл и сказать «не лезь никуда» не получится.
Понятное дело, что мы не про огонь в прямом смысле, но всё равно — компенсации тут будут такие, что никто так поступать не будет. И это ты ещё не рассмотрел, например, вполне вероятный случай такого сервера на, например, авианосце США, вошедшем в территориальные воды России, из-за чего, к примеру, авианосец потерял управление и был захвачен врагом (т.е. по всем определениям — это сознательная диверсия против вооружённых сил собственной страны). Будь ты на месте Смита, тебе нужны были бы такие проблемы?С чего ты так решил? С того, что ты бы сам так сделал? Таких, как ты — единицы, а если ты при этом не в России — тебе за это может прилететь очень больно. И нет, даже правительство не может сказать «рубить к хренам», оно может подготовить законопроект о введении санкций, проголосовать за него, принять, ввести в действие, и только тогда в течение определённого срока подпадающие под него компании вынуждены будут «рубить к хренам».
И то, максимум, что бывает без особых юридических последствий в не-SaaS-моделях — отключение обновлений. Если у тебя облачная инфраструктура — то отрубить можно, но локальные данные ты при этом всё равно не потеряешь.Я уверен, что таких кодов нет — потому что иначе об этом уже давно знал бы каждый первый security-эксперт. Сколько было воя про телеметрию в Windows 10, а тут ещё более наглая и куда более легко замечаемая вещь. Ну а любого, кто по собственной инициативе вставил такой код — ждёт то же, что и разработчика node-ipc.Это элементарно детектится и режется на вышестоящем маршрутизаторе.
Скорее так:
Слышь, Брэди, у нас тут началась война с Замундой, потому слушай приказ верховного главнокомандующего — вырубай все свои продукты на территории Замунды, а также с замундской локалью. Кхе-кхе, что-то сказал про деловую репутацию? ОК, расстрельная команда уже выехала, законы военного времени — это вам не шутки.
Кому компенсации, правительству страны, с которым идет война, или жителям страны, на которых сейчас падает по 40 килотонн в сутки?
Внимательно читай — не я так делал, а так просили делать практически 100% клиентов — иметь рубильник для вырубания своих программ.
В случае таких систем как ОС — в качестве второго игрока идет еще и правительство, которое очень просит добавить такую опцию. Отказаться конечно, можно, но где гарантии, что ты не лапал на вечеринке в колледже какую-то девку, которая вот как раз сейчас решила подать иск на 10000000000 долларов?
Как? Исходники закрыты, реверсить миллионы байт всяких ntdll.1.2.3 — никто не будет. Вой про телеметрию был, и что? Как пользовали, так и пользуются. Где гарантия, что очередной запрос телеметрии вместо безобидной отправки на сервер параметров твоего ПК — не возвращает к исполнению виндовый аналог rm / -rf?
PS: В начале иввестных событий, на хабре публиковался список компаний, которые ВНЕЗАПНО, буквально за считанные дни, отказались, оборвали, отключили, вырубили и даже в отдельных случаях, отобрали уже купленное. Список был из сотен позиций. Сотен, Карл!
Вот так и вижу, как директор QtGroup с утра просыпается, читает новости — «О, Мамунда напала на Замунду, это непростительно, нужно срочно запретить им качать QtInstaller».
Нет, это, так не работает. Именно что позвонили и велели вырубать. Пока что только вырубать возможность. Но в крайних случаях — позвонят и велят сносить полностью, всё, где есть хоть малейшая закладка — будет отключено и с высокой вероятностью, попортит данные.
А ещё ты забыл, что большая часть компаний, прекративших работу с российскими пользователями, сделали это только после вступления санкционных законов в силу. А некоторые даже не прекратили, потому что нашли способы выйти из-под действия этих законов (например, перенеся свою регистрацию в другую юрисдикцию, и это им до сих пор часто не мешает продавать свои продукты даже в США).Ты, поди, прослушивал все эти разговоры, раз так ответственно заявляешь?Блин, ты как та тётка из КНДР, которая говорила, что «в США просто рай земной, там, говорят, дают не две продуктовые карточки в неделю, а четыре!», и на возражение «в США нет продуктовых карточек» отвечала «да что вы гоните, это невозможно, без продуктовых карточек все бы там давно с голоду поумирали». Если такое принято в России — это не значит, что только так всё работает везде. Если бы такая возможность была, ей бы давно уже воспользовались (это бы позволило ту же Россию, Иран, Сирию, да даже, пусть и с большими экономическими потерями, Китай победить чуть ли не сразу, а всех оставшихся держать в страхе, типа посмеют пикнуть хоть что-то против государства регистрации Microsoft — словят так, что ядерная война покажется конфеткой). Только вот нет такой возможности.
Пока что минусы перевешивают плюсы. Это как пробивание головы кирпичом в деловом споре — использовать можно, но только раз, после этого обязательства, конечно, выполнят, но иметь с тобой дела больше не будут.
Люди везде примерно одинаковые, разница между правительством Замунды и правительством США — примерно как между «спортиком» из Нижнего Хрюкино и главой мафиозного клана Нью-Йорка. Выглядит лучше, не воняет, не бычит, слова излагает без неопределенных артиклей, и даже можно вести какие-то дела с ним — но суть та же самая, при необходимости будут делать «физический урон же, ёпта». Потому что это часть их работы.
Что именно? Отключение по команде отдельной программы или rm / -rf?
Первое — естественно, это законное право владельца программы, выданной во временное пользование.
Второе — нет, конечно, просто сослаться на УК проще, чем затирать заказчику про звездное небо снаружи и моральный закон внутри себя. Ссылка на УК — это уважаемая причина чего-то не делать (для людей вне уголовного мира, конечно), а вот ссылка на какие-то моральные соображения — уже не всегда, могут не понять.
После чего девка внезапно упадет с Золотых Ворот или утонет в миске супа. Потому что просто отказаться делать подставу — это одно, а взять деньги и пойти в суд против нанимателя — за такое кто угодно отломает задницу.
Ну не суть важно, не будет девки, будет пакет конопли, или нож длиннее разрешенного в багажнике.
Способов принудить к сотрудничеству полно, да и пряник никто не отменял — я уверен, что владельцы Телеграмма и Ватсаппа получают тонны нефти от правительств всех стран, это ж фактически прозрачная почта всего мира, не нужно больше внедрять агентов и вести оперативную игру.
И да, там отключали что могли. Например, гражданский канал GPS. А вот винду «отключить» — нет.В том-то и дело, что нет. Людей определяет воспитание и убеждения. Причём даже в рамках одного ресурса они могут быть столь различны, что люди просто не могут иметь возможности понять то, что говорят друг другу (табун этому ярчайший пример).Нет, это не является твоим «законным правом», если это не оговорено в лицензионном договоре, который исключительно определяет все права и обязанности, которые имеют стороны, кроме тех, что регулируются законом. То есть, ты не можешь в договоре этого не упомянуть, а потом удалить эту программу удалённо.Вот только таких случаев полно, но почему-то с более-менее высокими чиновниками — не у нас в стране (ну кроме, пожалуй, Улюкаева).Ты так говоришь, будто сам подкладывал. Есть ли у тебя хоть какая-то статистика по таким делам за рубежом в адекватных странах?То, что ты уверен — ни о чём не говорит. Более того, я не представляю, как такой механизм законно можно организовать. Зато механизм в плане разрешения функционирования в определённой юрисдикции в обмен на соблюдение закона в этой юрисдикции, например, того же «Патриотического акта» (до его истечения) на территории США — механизм вполне законный, и судя по разным сообщениям, применяется и сейчас.
Мы сейчас говорим о США, а это полицейское государство, где тебя спокойно могут отметелить за то, что ты вышел из машины без разрешения — или наделать дыр за слишком резкий взмах рукой.
Много, много денег. Ну елки, посмотри сам — если Телеграмм хотя бы прикрылся фиговым листком премиума (который мало кто покупает, вестимо) — то Whatsapp полностью бесплатен, и только у нас в стране его используют все, от детсадовцев до бабушек.
Расходы на облачную инфраструктуру на 100 млн коннектов сам прикинешь или посчитать по ценам корпоративным (которые в три раза выше обычных)? Кто платит за этот банкет?
Любой лицензионный договор на крупную программу сводится к тому, что владелец программы может всё, а пользователь — ничего, и даже это «ничего» можно отобрать, просто выпустив новую лицензию и уведомив на почту. Здесь проблемы нет.
Слишком мелкий кейс, чтобы применять. После этого полагаться на продукты MS перестанут все, кроме буквально десятка стран.
Но это и есть сложившаяся практика! Много наших эмигрантов попадают в больничку, потому что по привычке начинают выходить из машины, когда их остановили — и ловят пули, ибо надо сидеть на место и держать руки на руле.
Собственно, это и есть полицейское государство, где полиция может всё, а граждане не могут почти ничего. И это у нас фраза «нет оснований не доверять сотруднику полиции» вызывает смех, а у них это вековая практика — если сказали, что ты готовился атаковать, значит, так и было, и ему за шестнадцать дыр в налогоплательщике ничего не будет.
в какой-то момент заканчиваются и люди начинают спрашивать «где деньги». С продажи лицензий Windows — деньги либо есть, либо будут. С бесплатного мессенджера — никогда, а вот жрет он очень, очень много.
Ну собственно, о чём и говорю, только компанию интересует переписка «хочу новый MacPro, но не знаю, где купить», а правительство — «Хочу коктейль Молотова, но не знаю, как собрать».
В обоих случаях, наступают последствия — только в одном случае твоя поисковая выдача захламляется рекламой маков, а в другом случае ты отправляешься на беседу к следователю.
И нет, я не говорил, что мессенджеры — это проект правительства. Но они их однозначно спонсируют и используют, причём безо всякого суда и ордеров.
Ну да, я например, своё публикую под MIT0.
Но если почитать лицензии на крупные корпоративные продукты, там всё, включая «нам пофиг» и «идите нафиг».
И как справедливо замечено, отказаться от Windows нельзя — даже домохозяйке не так-то просто перейти на Linux, а профи вообще вылупится и скажет «Шо?»
Это их проблема, что они не знают то, как себя надо вести в конкретной стране.Абсолютно нет. Полицейское государство — это не то, где полиция имеет много прав (и много связанных обязанностей, кстати), а то, где полиция делает то, что не предусмотрено законом. К слову, в США тоже такие ситуации бывают, но насколько мне кажется, куда меньше, чем в той же России — как минимум по тому факту, что у нас в общественном сознании давно устоялось мнение, что полицейский — враг, и с ним никогда лучше дела не иметь, что для США скорее маргинальная точка зрения (ACAB) у всяких анархистов и прочих подобных личностей. То есть, например, если в США возможны такие вот дела, то в России пресловутая отговорка «нет оснований не доверять сотруднику полиции» и представление о пластиковом стаканчике как о жестоком оружии уже стали мемом.Люди, которые так считают, это те же люди, которые считают, что плохо, что внешний долг США такой большой. Именно потому что долговые и инвестиционные обязательства тоже имеют свою цену, можно достаточно успешно инвестировать даже в проекты, которые не приносят прямой прибыли. Люди начинают спрашивать «где деньги» только в случае, когда всё рухнуло, а такая система не рухнет сама по себе.Вот только это регулируется не взятками, а законами. Если какой-то штат решает, что на его территории разговоры в мессенджерах о коктейлях Молотова наказываются, он издаёт соответствующий закон, и у мессенджера два варианта — либо внести изменения в условия использования и запретить своё использование в этом штате в принципе, либо предоставлять соответствующую информацию правоохранительным органам штата (УК США, раздел 18 ч.1 гл.1 параграф 4), причём бесплатно.Пруфы?
В общем случае, полиция и есть закон, потому что в любой стране при прочих равных слова полицейского «он на меня напал» и слова бедного несчастного нигера из трущоб «нет, это он на меня напал» — имеют разный вес в глазах судьи.
Или упрощая до минималок — ты ничего не можешь сделать полицейскому, а он может сделать всё.
Просто в некоторых странах это «всё» — в основном ограничивается незабываемой экскурсией в обезьянник, а в некоторых — шестнадцатью дырками.
Нет. Люди начинают спрашивать «где деньги», когда например, приходит пора покупать новую яхту или платить за техобслуживание старой. Дремучие работники порта приписки откажутся принимать оплату участием в интересном проекте.
Упрощая опять же до минималок — или проект приносит деньги явно (прямая продажа), или косвенно (парсинг данных пользователей в облаках, к примеру, с целью выцепить, какую рекламу ему совать).
Есть третий вариант — когда проект на инвестиции, вот сейчас только жрет, а через год (пять, десять) — начнет приносить. К мессенджерам это очевидно не относится.
Сумма логических умозаключений.
Забавный факт, к слову — подавляющее большинство серьезных программ являются либо платными по факту установки (например, игры или монтажные системы), либо устроены так, что нужно платить внутри (внутриигровые покупки). Либо жестко загажены рекламой (так что перед нажатием кнопки нужно по 40 раз кликнуть «Не интересует»)
И только 100% мессенджеров являются на 100% бесплатными, без взносов и рекламы, и их старт развития пришелся как раз на тот период, когда в Интернет пошёл кто-то еще, кроме ученых и программистов. Совпадение? Не думаю©
PS: Про борьбу нанайских мальчиков в виде блокировок телеги в курсе, но нахожу её смешной — потому что если нужно получить доступ к сети, то её не блокируют по маскам IP, а отправляют грузовик денег владельцу. Если же грузовик денег не был принят, то следующим едет конверт с ухом или мизинцем ближайших родственников.
И судя по тому, что мессенджер всё еще работает — либо первое, либо второе дошло.
Если человек, который обычно вкладывает деньги в капитализацию различных проектов, планируемые дивиденды, акции и т.п. начинает выводить существенные активы ради покупки яхты — значит, у него что-то всё очень плохо с финансами и это экстренная мера.Это не может и никогда не служит доказательством, потому что ты можешь ошибаться. Более того, в нашем случае твои ошибки очевидно доказываются. Экстраординарные заявления (а заявление типа «власти скрывают, но я-то знаю, как на самом деле» — весьма экстраординарно) требуют не менее экстраординарных доказательств.Ты, кажется, остался в эпохе Delphi, MFC и Turbo Pascal, и это видно по твоим аргументам. Подавляющее большинство современных сервисов широкого круга пользования (не обязательно программ на локальном компьютере) — как раз-таки бесплатны, платными остались, пожалуй, лишь операционки (и те вносят плату за себя часто в покупаемое оборудование), ААА-игры и профессиональные программы. Давно ли ты платил за Google docs, Gmail, Google drive, Youtube, Vk, Zoom, Github, Soundcloud, Aliexpress, Яндекс-карты? Сейчас всё активно переезжает в инет, и там куда удобнее монетизация через рекламу, через подписку ради дополнительных опций, через посредничество, через распространение «в нагрузку» (вспомним яндекс-браузер) и через продажу big data. Мессенджеры прекрасно ложатся в последнюю категорию, хотя нередко используют и другие.Не 100% — telegram, vk, discord имеют премиум-фичи, zoom и skype спамят рекламой. Более того, многие из мессенджеров являются сайд-проектами других компаний (емнип, skype — microsoft, whatsapp — meta, icq — mailru и т.п.), через которые они агрегируют данные пользователей для монетизации через рекламу. Из тех, которые, няз, ничего такого не используют и не получают деньги от инвесторов, я вспоминаю лишь один — Jabber.Вот только тогда 100% мессенджеров как раз были если не перегружены рекламой (именно поэтому для аськи было столько альтернативных клиентов), то платные по подписке (MSN, AOL).Пока не приведёшь ссылку хотя бы на один такой доказанный случай не в стране типа Ирана, КНДР или России (конечно, массовость/общепринятость это не докажет, но хотя бы покажет, что хотя бы у тебя есть, что рассматривать как основу для таких заявлений) — твоё подобное завление не более, чем фантазия.
Я уже немного потерял нить, да и на яхту так не собрать.
Потому только по этому списку отвечу.
Тут половина — шпионский софт с целью как раз спокойно порыться, не пишет ли пользователь, чем он недоволен, и не собирает ли у себя коллекцию лолей с футой. А вторая половина — зарабатывает на рекламе или прямых продажах.
Исключительный случай — github, который, в отличии от gitlab, не продаёт свою коммерческую версию напрямую, а просто предлагает какой-то допсервис за плату (как будто крупный коммерческий проект будет хоститься где-то, кроме собственного сервера).
Какая польза для Microsoft от его поддержки — сказать сложно, возможно, такая же, как и у меня от понных игр — показать, что я не только жадный девелопер, но еще и сообществу пользу даю, как та ласковая корова. С поправкой на масштаб Microsoft Ltd и ИП NTFS, разумеется.
Соответственно, и достоянием общественности это становится крайне редко.
То, что ты бы так сделал (причём незаконно, потому что сделал бы это, когда к тебе пришёл бухой чёл в ментовской форме и сказал «а ну быро сливай мне всё, что твои клиенты пишут», а не когда тебе бы пришло оформленное по всем правилам постановление суда, и у тебя было бы, чем отмахнуться в суде по поводу «а чего это он сливает мои данные») — ещё не значит, что так делают все, и что у них нет строгой процедуры, по которой данные конкретного пользователя, в отношении которого ведутся ОРМ, предоставляются органам.
Ну собственно, примерно так и происходит, только с поправкой на масштаб — приходит не бухой мент, а люди в строгих костюмах и говорят, что для национальной безопасности очень нужно знать, о чём пишут пользователи, и не планируют ли он БУНД.
В обоих случаях реакция на отказ одинаковая — бухой мент протрезвеет и отправит тебя на 15 суток, а люди в строгих костюмах закроют компанию за уклонение от уплаты налогов или за нарушение закона от 1548 года.
В юротдел компании приходит запрос типа «с целью проведения ОРМ в отношении пользователя такого-то во исполнение закона такого-то необходимо предоставить такую-то информацию с его аккаунта таким-то способом». И только тогда компания безо всяких вопросов предоставляет доступ, и все довольны. А если приходят «люди в строгих костюмах» и начинают что-то втирать, то вызывается полиция, которая сначала кладёт этих людей мордой в пол, а потом уже начинает смотреть их корочки, которые в 100% таких случаев оказываются поддельными, этих людей везут за решётку, а фирма продолжает работать как ни в чём ни бывало.
Мораль: при нормальной системе власти телефонное право сложно и ненужно, хватает законных путей получить желаемое.Опять же, в нормальном государстве если компанию можно закрыть за уклонение от уплаты налогов, для этого не нужны никакие «люди в строгих костюмах» — для этого достаточно иска в суд, который, няз, может подать любой акционер, даже реднек из Аризоны, строгий костюм видевший только по ТВ, который получил одну акцию компании, которую ему проспорил его брательник из Чикаго на прошлой семейной сходке.
«Огласите весь список, пожалуйста»©
А то везде хорошо, но если составлять таблички, то выяснится, что до последних событий, родина слонов была чуть ли не лучшей для жизни в мире.
1) Любое место где нет людей.
Расчет окончен.
Таблички, таблички нужны. Выиграть дело против государства — это в плюсик. В минус — шанс был застреленным за резкое движение рукой или потерять работу (а следовательно, и дом) за пост в какой-нибудь сетке типа «бабе место на кухне, негру в шахте, гею — в заповеднике» (пост — дичь, но кому не пофиг?)
По остальным странам (не Сомали каким, а вполне приличным первого-второго мира) тоже можно много чего накопать. Это глядя на статьи можно думать «о как зашибись», а в реальности, в той же Испании ты, уехав на пару дней из дома, можешь вернуться и обнаружить там бомжей, которых без суда никто выкинуть не сможет, а суд длится месяцы.
В стране медведей полиция по заявлению уже через три часа этих бомжей вытащит из моей собственности и закроет за взлом, как минимум.
Составлять полную табличку мне лень, но я изучал этот вопрос и действительно — до известных событий у нас всё было довольно хорошо даже в сравнении с первым миром.
Само собой, я не говорю, что в России _всё_ хуже, чем в других странах (притчей во языцех, например, стал наш мобильный банкинг; для разнообразных немцев, няз, идея о том, что ты можешь зайти в телефон, ткнуть пару кнопок и у твоего друга на карточке другого банка через секунду появятся скинутые тобой десяток евро (причём безо всякой комиссии), выглядит как лютый киберпанк). Но если мы говорим про полицейский произвол — у нас отнюдь не та ситуация, которой можно было бы гордиться.
И я удивлюсь, если администратор при этом не откажет (технически, если он не отказывает, то он нарушает закон, в том числе, как раз, правила регистрационного учёта).И где теперь твоё полицейское государство, лол, если как бы по закону у человека есть полное право находиться в любом уголке Российской Федерации, если он там не проживает, а просто приехал и собирается тем же днём уехать (более того, емнип, регистрация необязательна, если ты там проживаешь менее 3 дней, доказательством чего может быть, допустим, билет).Вот в том и суть, что если ты лебезишь перед ментами — то тебя могут отпустить, даже если ты правда должден быть привлечён к ответственности, а если качаешь права — тебя могут закрыть даже тогда, когда ты полностью прав, и никому никакой ответственности не будет (по крайней мере, я о таких случаях не слышал).
90 дней даже.
Как же ты прав, когда очень похож на известного разыскиваемого преступника, а паспорта с собой, дабы доказать, что ты не он — нету? Ну вот до понедельника подождем, там опознание будет, отпустим.
Паспортное фото, кстати, довольно слабое — меня уже всякий раз при оформлении документов просят фоткаться на месте, ибо я в 40 ну вообще не похож на свои 20, и любой полицейский может сказать «да документ поддельный!»
К слову
ни разу, чаще всего просто общаюсь вежливо и без быкования. Менты внезапно тоже люди, и доброе слово про город, либо погоду им приятно. А когда с ходу начинают сыпать статьями законов, ну так полиция законы знает лучше и закрыть за что — найдет.
Так вот, я к чему: что проблема именно в этом, что если у тебя всё нормально, ты не можешь просто взять и пойти дальше, а вынужден думать, как решать ситуацию, чтобы не попасть в обезьянник. А не в том, что «для человека нормально сидеть в обезьяннике, давайте в школах экскурсии туда устраивать».
Это и есть неповиновение.
Если тебя остановили — значит, нужно дождаться, пока тебя отпустят, отвечать на вопросы по существу и в случае, если сотрудник полиции сомневается — не быковать со ссылками на Конституцию, а пытаться разрешить проблему хотя бы с помощью косвенных доказательств, что ты не террорист, а просто не в том месте и не в то время оказался.
Из самого наглядного — во время олимпиады последней я гулял по лесу в Сочи и вышел с горы прямо на эстакаду, где как раз на патруль и попал. Мужик, выходящий из леса — событие необычное, и его (мужика и событие) решили расследовать. Показал документы, объяснил, что к чему, перетёр насчет того, что западный спуск с горы Большой Ахун — однозначно красивее, чем восточный, ну и после звонка начальству, пошел на электричку, получив просьбу больше так не делать.
Нарушает ли что-то мужик, выходящий из лесу во время олимпиады? Нет.
Могут ли его закрыть на пару суток, если он при этом быкует и неподчиняется? Да, потому что обычно люди не выходят из лесу, это делают либо туристы, либо диверсанты.
PS: Продолжая про полицейский произвол — «мужики мне некогда я пошел» и удаление от полиции без завершения беседы — у нас это обезьянник, в некоторых странах же это 16 дыр. Ну вот подозреваемый пытается скрыться от полиции, открыли огонь на поражение, на камере всё записано.
И звонить кому-то, тем более начальству, они от тебя точно требовать не могли. С хрена по хотелкам каких-то ментов позорных ты должен беспокоить своего начальника? Это уже точно полицейский произвол (не говоря уж о том, что звонок в общем случае — явление не бесплатное, и они, по факту, косвенно заставили тебя откупиться от них, хоть ты заплатил мобильному оператору, а не им на лапу).
Поди, рюкзак ты тоже перед ними покорно выпотрошил, несмотря на то, что не было ни понятых рядом, ни основания для обыска или досмотра?
Ну а они не обязаны на слово верить, что ты не собирался взорвать Большой Сочи. Паритет, так сказать.
Ты учитывай профессиональную деформацию — что в большинстве случаев, полиция общается отнюдь с не мирными понилюбами, топ нарушения которых — пара лишних промилле в крови, а с типами куда как менее приятными, я бы сказал, вообще не приятными.
И как бы да, с ними положено одно общение — «копытом в морду и в загончик, потом посмотрим по базе, чего на нём висит, мелкий криминал, или таки отловили крупную рыбу».
Отсюда и базовый принцип — если не хочешь проводить отпуск за решеткой, будь вежлив с полицией.
дважды
P.S. И похоже, мы опять говорим о разном. Я — о том, как должно быть в идеале и каковы твои права и обязанности по закону. Ты — о том, как выгоднее себя вести в случае, когда полиция такова, с которой мы живём и иногда сама может нарушать закон.
Собственно, о чём и толкую. Заикаться и трясти руками тоже не надо, полиция чует неуверенность как собака косточку — и тогда уже точно закроет. Просто спокойно и вежливо объяснить суть вещей, без излишних подробностей, но и не умалчивая факты.
Презумпция невиновности часто понимается неправильно. Она всего лишь говорит, что ты не можешь быть наказан без доказательств вины, и что бремя доказательств лежит на обвиняющем, а также, что сомнения трактуются в пользу обвиняемого. Всё.
Теперь рассмотрим ситуацию. Ты оказался в ситуации «возможно, ты пытался взорвать Большой Сочи — гулял по лесу во время олимпиады, небрит, лохмат, регистрации нет, в рюкзаке спички и две (!) зажигалки».
Законный вариант действий — «идите в жопу, я ничего доказывать не обязан, обвиняете — докажите сами».
Вариант разумного человека: «Да, я люблю гулять по лесу, олимпиадой не интересуюсь, спички и зажигалка нужны для щепочницы (предъявляю чудо-девайс), остановился у заказчика (звонок заказчику), вот мой телефон, если вдруг что потребуется. Кстати, сотрудникам полиции скидка на чистку системника (на визитке указано)»
В каком из двух вариантов тебя с высокой вероятностью закроют до выяснения?
Напоминаю, что административный арест — это не наказание, это мера пресечения. И она может быть сделана просто на основании подозрений. А как мы уже выяснили — мужик в лесу во время олимпиады это подозрительно.
Вроде сейчас это называется модным словом «софтскиллс». Полезные навыки для жизни, не являющиеся прямыми обязанностями.
Нет, конечно, разумеется, ты можешь по собственному желанию это всё сделать, только потом иногда оказывается, что у тебя в рюкзаке откуда-то появился пакетик с подозрительным белым веществом, а после твоего добровольного распотрошения рюкзака перед ними без фиксации и протокола они тебя тут же тормознули ещё раз и по всем правилам оформили, а ты поехал не на электричку, а в колонию на 10 лет.Это не основание.
Точно такой же риск есть, если начинаешь требовать строго соблюдать закон — только если обычный патруль редко с собой таскает пакетики и планирует «О, вот чувак из леса выходит, давай ему подбросим», то после задержания уже подготовятся лучше — просто из принципа.
Олимпиада к таковым событиям относиться — только не по терроризму, а по повышению безопасности. Гуляешь по лесу во время мирового события? Будь готов к повышенному вниманию полиции.
Во время важных событий — основание.
Навскидку, точно так же трясли всех странных лиц во время Формулы-1 — все на трибунах кричат «Россия!», а один сидит на пустом пляжу и готовит себе жратву на маленьком костре. Может, просто чудак, а может, замыслил чего недоброе.
Понятное дело, вероятность мала, но и повышать её не стоит.
И опять же, я не про то, что надо бычить и качать права на грани оказания сопротивления; я про то, что надо не только права ментов уважать, но и свои.Нет, не основание. Основание — это план проверок «кажущихся подозрительными людей» по случаю подобных событий, подписанный региональным начальником, имеющийся в распоряжении подразделения МВД, к которому относятся эти менты. Это должно быть написано в протоколе досмотра, например (и нет, нет ничего неуважительного по отношению к ментам, когда они говорят «выворачивай рюкзак», сказать им «хорошо, включайте видеозапись/ищите понятых и начинайте заполнять протокол, с копией мне, спасибо», в каковой ты увидишь реквизиты этого документа).
Попробуй это на досмотре сказать на вокзале Краснодар-1 или Туапсе-Главный, я посмотрю на это шоу. Там досматривают просто так, потому что какая-то подозрительная штука не просветилась. Может, просто котелок странной формы, а может, пытаешься просочиться и вокзал снести во славу Лунной Пони.
Я даже знаю, что паспорт в руки передавать нельзя — нужно держать его раскрытым, позволяя читать.
В конечном итоге, всё сводится к тому, что важнее — строгое соблюдение закона, или скорейшее разрешение ситуации, по возможности, без экскурсии в обезьянник.
Это в лучшем случае. В худшем, закинут уже транспортной полиции, которая долго будет выяснять, что же ты такое и почему не хотел показать свой рюкзак. Бонусом идет опоздание на поезд.
Ну и, юрисдикция транспортной полиции — территория ЖД и сопустствующих построек, как ты вышел из вокзала — они уже к тебе прикопаться в принципе не могут.
Если просто отказался от досмотра — то да, не войдешь в вокзал. При условии спокойного варпа. Если в эфире неспокойно (те же олимпиады) — то могут и придержать со словами «капитан, подозрительный тип пытался прорваться на вокзал».
У атса NTFS'а во всех коментах только один посыл, закон всегда идет вторым номером. Первое это «тест на человечность». Этот тест ты проваливаешь в тот самый момент когда ты возмущаешься от того что какой-то никчемный полицейский вообще посмел подумать что, Я (самый частный, самый что ни на есть безгрешный, которого этот мир вообще не заслуживает), в принципе могу что либо нарушить. Они что слепые? Как они не увидел мою ослепительную добродетель законопослушности которая освобождает меня от любой проверки?! Они должны знать что я безупречен, почему эти скотины не знают об этом?
По поводу остального — я говорю совершенно не об этом. Вопрос адекватности закона и необходимости его соблюдения в принципе я не обсуждаю, это слишком обширная тема. Я говорю о применимости закона в конкретном случае — в случае повиновения незаконным требованиям сотрудников полиции.
И опять же, я не говорю о случае ухода от ответственности при реально совершённом правонарушении, я говорю о правах в общем случае.
Начнём с того, что закон как бы в идеале и должен быть человечным. Говоря о том же выселении людей из аварийного жилья — даже такое может быть оправдано, например, в случае, когда сегодня ты их не выселил, а завтра ночью им на головы сложился дом, построенный с нарушением норм, в итоге сотни погибших — а ведь они могли быть живы, пусть и на улице. Так что даже в такой ситуации в законном решении могут быть нотки человечности (не говорю, что всегда есть).
но потом пришли закладчики… это не видно, об этом не трубят, но Россия утопает в наркоте. Последствия этого мы скоро, а может и даже сейчас почувствуем, последствия того как молодежь растворила в веществе весь свой потенциал и будущее.
Еще страшнее то что сейчас… больше всего рабов чем во времена когда рабство было законном. Просто 1 миллиард инфантилов в интернете слишком много перетягивают на себя внимание, пока остальные 7 можно сказать познаю «настоящую» жизнь. С сексуальным рабстовм, болезнями и нищетой. Но с_ка не погулять по своей стране без разрешение. Вот конечно сволочи эти полицаи!
… или это такой способ, чтобы человек бесплатно поработал риэлтором?)
(некропостит) Меж тем, он существует даже для банального векторного редактора.
habr.com/ru/news/808807/
Сделать лицензию, проверяемую через инет, невалидной — в этом никаких сложностей нет, да и применялось задолго до 2022 (таким образом, например, работали САПР Synopsys, для которых должен был быть или лицензионный сервер в сети предприятия с периодическим ручным подтверждением валидности по E-mail, или они должны были обращаться с лицензионному серверу самого Synopsys). Удалить само приложение — в теории тоже, хоть тут уже и могут быть проблемы, для такого необходимо правильно писать EULA (без прямо оговорённого в нём пункта, насколько я знаю, удаление файлов с диска пользователя, инициированное не самим этим пользователем, может быть противозаконно в некоторых юрисдикциях). А вот портить не относящуюся к программе информацию — чревато очень серьёзными проблемами, особенно если случайно задеть того, кто находится в нормальной стране и может через суд местным представителям фирмы здорово попортить жизнь (а репутацию это уже по факту попортит).
Ну и да, ты же видишь, что пострадали только те копии, которые были на компах, подключенных к сети в момент блокировки (и на которых, скорее всего, при этом был запущен какой-нибудь autodesk update agent или как он там называется).
Ты же знаешь про идиому "->вы находитесь здесь?"
Как видим, в удалении оплаченной программы у добросовестного приобретателя ТОЛЬКО лишь на основании мутного гео-IP признака — никаких проблем нет, и я не вижу, чтобы компания разорилась или её репутация как-то пострадала вне конкретного места :-)
А существуют компы, не подключенные к сети? Насколько я знаю, уже на Windows 11 ты даже не сможешь зайти в свой ПК, если он не видит сервер MS, а даже если зайдешь — что делать будешь, раскладывать косынку, или всё же работу работать?
Как уже говорил, любое корпоративное EULA составлено примерно так: «Во-первых, иди нафиг, во-вторых, чего ты мне сделаешь, я в другом городе, за мат извини».
А для конечного пользователя есть разница, удалены ли файлы программы, или просто не может её запустить?
Потому и написал «насколько знаю», может, еще не ввели. Но по отзвукам из варпа, слышал, что локальные учетки или уже отключили, или вот-вот отключат.
Тут уже другой вопрос — если у вас build-процесс завязан на Интернет, по сути, вы зависите от доброго Санты, который однажды отключит вам сервера nuget или getit за то, что вы были плохими мальчиками. Не надо так. Если сорцы нельзя превратить в exe, имея только чистую Windows и набор локальных файлов/дистрибутивов ПО (плюс внутреннюю сеть корпы) — у вас небезопасный процесс.
Тут ключевой вопрос — что это в принципе можно, а за что, уже второй момент. Сегодня за три английские буквы, а завтра за то, что твои уши великоваты.
Запад поднялся вовсе не на грабежах корованов, а как раз на противоположном — что у себя ты можешь делать что угодно, хоть сношать детей и есть собачек, или хуже того, не чистить зубы — но пока ты выполняешь законы, к тебе вопросов нет, работай, привози капитал, заключай сделки.
Напомни, какие законы нарушили пользователи, купившие Автокад за сотни нефти и его потерявшие?
Я переформулирую — если завтра акулы-кабелекрады в звании майора перегрызут кабель между серверами гитлаба и твоим офисом — вы сможете за разумное время (пару-тройку дней) наладить процесс? А они его перегрызут, время, когда не будет пинговаться ни один сервер к западу от Бреста — уже на горизонте.
Здесь как никогда уместна немного быдловатая, но в целом достойная фраза «бьют не по паспорту, а по морде».
Если лицензия была бессрочная, а не с помесячной оплатой, то отзыв её по географическому или территориальному признаку — это натуральный, из палаты мер и весов, ебейший нацизм, когда виноватыми считаются не совершившие какое-то действие, а по принадлежности к группе.
И если бы такое сделали например, во Франции или упомянутых Нидерландах, то принявший решение упал бы спиной на вилки пару раз. У нас с этим немного проще — те, кто роняют на вилки, не воспринимают отключение автокада как злодеяние, а скорее даже, как пользу, меньше зависимости от зарубежных слонов, больше развития собственных Компасов3D.
То есть, весь ваш миллиардный бизнес завязан на хорошее настроение владельцев десятка-другого серверов в условных Нидерландах и предположение, что они никогда не сочтут вас плохишами?
То же говорили про карты банков. Внезапно, выяснилось, что нафиг сервера Визы не нужны, и если не платить за рубежом — то рядовой гречневый мужик разницы и не заметил.
Во-вторых, конечно, ты хорошо попытался, даже не сразу видно, но всё же не смог спрятать argumentum ad defenestratum в своём тезисе. Скажем так, условие «а если такое будет во Франции или Нидерландах» (без уточнения причин, приведших к этому) примерно аналогично «а если все пойдут выпрыгивать из окна?» На всякий случай поясняю: в нормальных условиях никто не прыгает из окна, поэтому такая постановка вопроса бессмысленна. А если условия не нормальные (например, в здании пожар), то если все прыгают из окна (первого/второго этажа) — то, вероятно, не так уж они и неправы, и решение последовать этому совету, скорее всего, верное. Если рассматривать твою ситуацию — то в нормальных условиях в Нидерландах или Фоанции такое произойдеёт. А вот если будут ненормальные (например, в 2027 во Франции придёт к власти ле Пен, окончательно съедет кукушкой и объявит выдворение всех иностранных компаний из Франции) — то Autodesk так же прекрасно такую фишку и во Франции провернёт, и я уверен, никаких проблем с этим не будет.Я тебе просто скажу, что нам 4 года подряд не могут купить пачку USB-кабелей, а сервера для CI мы собираем по принципу «из трёх нерабочих собрать один кое-как рабочий». Теперь можешь подумать, а так ли реально твоё допущение.
Я думаю, если у нас бизнес был бы миллиардный, то у нас были бы просчитаны все варианты, по каким причинам кто-то в условных Нидерландах может счесть конкретно нас плохишами и что с этим делать. Вон, Газпром и Роснефть вроде как и под санкциями, а вроде как и почему-то вполне себе продают свою продукцию много куда.Думаю, любой мужик заметил то, что его колхоз почему-то перестал выплачивать зарплату на карточки и всех вынудил срочно делать себе мир, а когда этот мужик свалил из колхоза и пришёл в свою избушку, то понял, что не может поиграть в танки, потому что у него подписка на стиме отвалилась. То, что он как-то выжил — не значит, что не заметил. И то, на тот момент в России почти всеми внутренними платежами по картам заведовала НСПК, которая свою функцию (проводить внутренние платежи по картам, да) выполняла вполне нормально.
А теперь представь, что будет с гречневым мужиком, когда он не сможет ни ютуб посмотреть, ни почту получить, ни, судя по всему, в телегу или ватсапп зайти. И это я не говорю, что у него на заводе всё производство встанет, а в магазине ничего на кассе не пробивается, потому что весь SSL лёг.
Не-не, это не продажа новых лицензий, это не заключение новых договоров, это именно что отзыв, в просторечии — кража. И никто не мог обязать компанию взять и удалить уже рабочие версии, всегда можно сказать «ну мы закрыли бизнес, больше не торгуем, мы чисты».
Именно что кто-то нажал рубильник и с криком «вот вам, негодяи» удалил. Причем ни один юрист не ответит на вопрос, а как определялась принадлежность лицензии? По паспорту? По геоIP? По расширению домена почты?
Потому что французское правительство в таком случае отправит директора автокада на вилки.
У нас, повторюсь, с этим сложнее — идти жаловаться в западный суд заведомо тухло, пойти к Верховному с просьбой отправить бомбу в Силиконовую долину — а Верховный ответит «я же вам говорил не иметь дел с западом, не послушались, вот вас и прокинули через конский конец, покупайте теперь Компас3D»
Очевидно, ничего. Потому что админы завода, если они не идиоты, уже развернули всё, что нужно, на российских серверах, а кассы крупных магазинов не получают SSL от западных центров сертификации.
Я тоже к этому готов — я понимаю, что при моей жизни я увижу полностью окопанный канавкой Интернет, и попасть на какой-нибудь домен com будет примерно также, как в CCCР в Болгарию — возможно, после согласования в КГБ и в составе организованной группы с сопровождающим. Ну или если ты дипломат/шпион.
Пример того же MS, который не рубит не только винду, но даже не закрывает доступ к гитхабу с визуал студией (и тысячи других компаний, которые переставили продавать, но и не думали отнимать уже купленное) — говорит нам, что это всё фигня из под коня, и дирекция автокада в лучших традициях кидал с толкучки реализовала схему под названием «берем деньги и уходим».
Еула и прочие буквы тут не очень, тебе любой разводила так убедительно с ораторским даром расскажет, почему нужно расстаться с деньгами, что Цицерон от зависти кинется в Тибр.
Но базовые, фундаментальные принципы — не меняются с момента открытия денег. Куплено — пользуемся. Забираем — возвращаем деньги. И нарушителей этих принципов с древнейших времен считают отбросами и подвергают максимальной степени порицания, от игнора до побивания камнями.
По автокаду у меня всё.
Это словесная акробатика в духе тех же кидал с рынка «сами мы не местные». По факту, у людей была оплаченная бессрочная лицензия и её отняли без компенсаций и каких-либо объяснений.
Но даже в этом случае у тебя остаётся возможность пользоваться товаром, если ты убил купленную машину или купил не то лекарство в аптеке — они у тебя остаются. Тут же нет ни сапогов, ни зайца, и никакой непреодолимой силы тут нет — я не помню, чтобы Autocad Lmt объявляло войну ЗАО РФ, это чисто прокидывание через конец в самом общественно порицаемом стиле.
Упреждая — нет, я не считаю, что у нас тут чего-то славное происходит, но по ту сторону за три года сделали всё, чтобы убедить меня и миллионы других людей, что они такие же скотские морды, как и в красном поле, только не имеют смелости прямо сказать «да, мы уху ели, и что?»
Если бы вместе с отъемом лицензии были письма «мы считаем, что дикари не имеют права пользоваться нашими продуктами, права и законы не для вас, вон из песочницы» — это хотя бы было честно :-)
Если кто-то не читает договоры, которые подписывает — это его проблемы, а не того, кто эти договоры предлагает заключить.
Если тебя не устраивало право Autodesk прекратить лицензию, если не сможем выполнять обязательства по ней, то ты был волен эту лицензию не подписывать (и тем самым, разумеется, не получать право пользования AutoCAD).Конечно остаётся. Ты можешь, как я уже говорил, распечатать бинарные файлы и повесить на стенку любоваться. Можешь даже LICENSE.md распечатать (и прочитать, наконец, лол =).
Есть; например, невозможность исполнять финансовые обязательства, наступившая независимо от воли участников договора — как раз обстоятельством такой силы является.Так вот проблема-то в том, что они, как правило, поступают так вполне обоснованно с точки зрения их правовой системы и с точки зрения заключённого с тобой договора.С чего ты решил, что они так считают? Назови хоть одну страну, в которой они могут вести финансовую деятельность, но лицензии тоже прекратили?
Как возможность выполнять финансовые операции связана с возможностью запускать купленную ранее программу, если это не подписка?
Никак. И примеры других компаний говорят, что это возможно, и что нет никакой необходимости выключать доступ по географическому признаку.
Вот я купил еще до известных событий Windows 7 и Windows 10, они у меня спокойно работают на проде и на тестовой машине, с полным выходом в Интернет.
Значит, это не требование регуляторов и рептилоидов, а скотство конкретных людей.
Если бы у тебя было два отдельно заключенных договора на бесплатную услугу по предоставлению права пользования программой и на платную услугу на оказание поддержки, то можно было бы разорвать только второй. Но так никто не делает, поэтому разрывают тот договор, который одновременно даёт и право запускать, и обязанность предоставлять поддержку.А знаешь почему? Потому что у тебя прекратилась фаза платной поддержки семёрки и десятки, и теперь никаких невыполнимых обязательств перед тобой Microsoft не имеет, поэтому имеет возможность не разрывать договор.
Про семерку — ОК, но десятка еще поддерживается.
Я умоляю, корпорации имеют возможность в одностороннем порядке изменить любые условия соглашений и делают это. А тут не могут? Или не хотят?
Я подозреваю, что юристы Autodesk не настолько высокооплачиваемые, как юристы Microsoft, и им рынок таких регионов не настолько интересен. Всё-таки количество заключённых договоров на AutoCAD куда меньше, чем на Windows 10.Не имеют и не делают, если это прямо не прописано в договоре (более того, в некоторых юрисдикциях с континентальным правом, емнип, такие вещи могут быть прямо противозаконны, что автоматически запрещает там распространять такое ПО).
Но по какой-то долбанутой причине, навернули работу их лицензий, не внутри конкретных компаний — а по маске «if (похожеНаРуСегмент()) then FuckOff()»
Так делают только долбодятлы, и теперь весь мир знает, что купленное могут отнять (не надо тут извивов про хекс-распечатку, фактически, отняли) по высосанной из конца причине и без компенсаций.
Думаю, вывод сделают много кто, а не только на северных землях. Каждый город-государство будет заводить свой собственный Автокад, винду и гитхаб.
А вот разорвать договор — не нарушение, а опция, прямо предусмотренная договором.И при этом они должны были свернуть (что они и сделали).Я тебе раза три уже эту причину озвучивал. То, что она тебе не нравится, не значит, что это не единственный законный способ сделать так.Ещё раз, пойми, наконец, что ты не можешь купить программу. Ты получаешь право ей пользоваться, но не получаешь её в собственность.Не будет, потому что нормальные страны знают, что лучше торговать, а не воевать, и не видят в связи с этим никаких проблем от глобализации, а видят наоборот, снижение издержек.
Ну слушай, я с ходу назову десяток продуктов, которые продолжили работу, и если поискать, найду сотню. И что, только у Автокада какая-то уникальная лицензия, в которой написано «если между странами нет финансового оборота — отключаем доступ»?
У Qt, MS, JetBrains, Oracle и прочих титанов — всё пучком, и только одна компания вдруг решила, что пора бы?
А Васян из деревни Хрюково, который купил себе автокад, чтобы сделать проект ремонта своей квартиры, уже воюет с Соединенными Штатами? Он вообще хоть в чём-то виноват, кроме того, что его жоппка находится в координатах, которые решили забанить?
В этих вопросах самое важное не «за что», а «в принципе возможно». В продвинутых странах вроде России этот путь уже прошли, от «смерть буржуям» до «у тебя лишняя корова, вот билет в Казахстан». В отсталых европках еще предстоит узнать, к чему приводит принцип «если очень хочется, то можно».
Хорошо, три Васяна из ПГТ Уроево решили, что в их фирму по ремонту нужен автокад. Я понимаю, что если делать ремонт, вычеркивая на листочках — это точно остановит то, что должно остановить, плюс вызовет любовь к тем, кто заставляет это делать.
Еще раз, тот же github перебанил госов и оборонку (где смог точно связать), но мои понные репы — как были доступны, так и доступны. Для платников, скорее всего, просто отключены функции Enterprise, но базовые операции git — в наличии.
Я уже говорил, что каждый второй клиент, который заказывает мне программу, задаёт второй вопрос — можно ли добавить опцию, чтобы вырубить к хренам программу удаленно. Это скорее норма для любых десктопных решений, тем более говоря о крупных продуктах, а не тулзах от ИП Васян В.В.
Правительство Васяна не запрещало ему пользоваться автокадом.
Специально нашел этот комментарий, чтобы поторопить — из белокаменной этого пока не заметно, но во многих регионах у нас уже полностью огороженный Интернет, причем даже не касательно буржуйских сайтов, а буквально по белым спискам, то есть на ozon и VK зайти можно, а на русские же gitflic и habr — уже нет.
Ложкой мёда является то, что эта благодать пока касается только мобильного Интернет, то есть, кабель-бояре всё еще получают обычные блокировки, а не огорожение. Но это вопрос времени, полгода, может год.
Winter is coming, короче. Если еще не принимал меры, то самое время. Я вот принял и мои терабайты забиты всем, что нужно для работы.
Хм, выкачать себе raspberrypi.org, как я выкачал интересующие меня репы с github и пакеты nuget?
Дроны являются скорее поводом, чем причиной. Любой, кто хоть раз покидал зону сотовой связи, знает, что для работы GPS — мобильный Интернет не нужен, достаточно заранее обновить эфемериды и еще какие-то данные (знал названия, но забыл, гадать не буду), а дальше он показывает всё. В последнем походе я был 4 дня в «режиме полета» и точность моего китайского телефона за 3000 рублей позволяла понять, на каком берегу неширокой горной реки я стою — то есть, ну прям очень точно. У специальных чипов, полагаю, до метров идет значение.
Так что нет, не думаю, что сильно дольше. Ставлю на год, полтора, потом только спецсвязь для тех, кто ровнее, особые каналы для крупного телекома и разрешение на список конкретных сайтов для профильного бизнеса (если докажешь, что тебе нужен гитхаб — пустят на гитхаб).
Пссст. Фау находили Лондон электромеханическими штуками.
Не понимаю, эти твои гречневые мужики такие идиоты, что так считают? О.о
На прошлой неделе в Тамани меня тоже в море определяло. Чем ближе к мосту и Волне, тем навигацию сильнее корежит.
Даже при наличии солнца? Емнип, оно у вас в зените не бывает, так что проблемы с ориентацией быть не должно, конечно, точность не по компасу, но сторону света выбрать не проблема.
Измерь свою скорость обычного шага без напряжения, потом умножай на время. Шаг обычно колеблется в пределах 5-10%, так что точность длины будет от 450 до 550 метров.
Это и есть определение стороны света, сектор 90 градусов. Для ориентирования в городе достаточно, например, чтобы найти поезд, который подают к северной стороне вокзала :-)
А ты не путаешь с машиной? Это там, да, можно ехать полчаса, а можно два. Пеший ход как правило, хорошо предсказуем, тебя замедляют только светофоры, которые редко где бывают дольше двух минут, обычно короче.
Три светофора по две минуты каждый? Ну ОК, в конце концов, не все города добры к пешеходам.
А вот штуки типа «встретимся у северного вестибюля станции метро» встречались куда чаще. К счастью, правда, это уходит в прошлое, потому что транспортники наконец-то догадались пронумеровать выходы из метро, и теперь можно вместо «первый вагон из центра, выход к проспекту такому-то, дальше по переходу налево, затем после третьей лестницы направо два раза и вверх через стеклянные двери два пролёта и выход направо» просто сказать «встречаемся у восьмого выхода».Ахахахахахахахахахах.
Световор в Бутово по 210 секунд красного не хочешь? Светофоры через Ленинский проспект по 140-190 секунд не хочешь? Переходы через улицу, разделённую газоном по 16 секунд длительностью (так что на второй переход ты точно не успеешь) и по 90-100 секунд между соседними пешеходниками не хочешь? А когда таких светофоров штук 5-6 по пути, там минуты могут набегать легко.
А ещё ты можешь быть налегке или с грузом, бодрый или уставший, один или с компанией, спешащий или на чилле, короче, куча факторов.
Да, на Краснодаре-1 так и говорят «поезд 866 посадка на первом пути первой платформы у северной стороны вокзала».
Страшна, вырубай.
Просто путь длиииииииииииииииииинный и там могут быть два состава. Один идет в Горячий ключ, другой в Новороссийск. Не знаешь сторон света — будешь метаться как поросенок и уедешь не туда.
Путь, который вмещает два состава — тоже такая ещё штука, как я понимаю, это тоже редко на станциях бывает…
А потом ты приходишь на условную тверскую и идешь по цыферке «8», проходив минут десять и выйдя на исходную точку маршрута понимаешь что цыферка вела тебя не к восьмому выходу, а к восьмой линии, и где этот выход номер восемь не выйдя наверх — а хрен его знает.
Серьёзно, я даже с картой в телефоне и маршрутом уточняю у прохожих а верно ли я иду), и слава богу ещё ни один меня на север или юг не отправлял))
Навеяно твоим комментом))
К счастью, человеку уже давно не нужно оглядываться на них как на образец для подражания. Это пройденный этап в его эволюции, и обострённое чувство направления ему больше не нужно — его заменили куда как более удобные карты в телефоне.
Недавно понял, что навык найти конкретный дом по сетке улиц у многих тоже утерян, хотя казалось бы, алгоритм знаком с детства — идешь, пока не пересечешь улицу, дальше определяешь четную сторону, вектор роста нумеров и идешь, пока не найдешь нужный номер.
Не-а, люди теряются.
Не говоря уже о конгломератах, типа дома 19к1-19к24, занимающие целый квартал (и я не удивлюсь, если на этой улице есть только этот самый дом 19 и всё).
И вот поэтому нам нужны навыки жителей африканского редколесья :-)
Впрочем что далеко ходить, дом где я живу в одних местах обозначен как просто номер дома, а в других номер дома дробь два. На яндекс картах проблему решили порезав дом пополам, и у одной половины один адрес, а у другой другой. Хотя по факту косяк с номером у всего дома.
— несвежей! Я читала!
Так-то надо будет выкачать и raspberrypi.org, и stackoverflow, и кучу других сайтов, и весь гугл. Это просто физически нереально, не говоря уж о том, что «весь интернет на дискетках» — это возврат в каменный век.Естественно. Но как я и написал выше, являются достаочно правдоподобной причиной, чтобы в неё хотя бы могли кое-как поверить большинство народу.Что ставишь?))
(Ну и какие критерии? Допустим, список сайтов, из которых через полтора года не будут открываться больше 50% без слова из трёх букв?)
На моей памяти это еще была популярная тема, на хорошем Интернет в универе выкачать себе сайт на болванку, а дома спокойно его рыть, свежие разделы подгружая через 9600 бод.
Ничего не ново под Луной, с той лишь разницей, что свежих разделов не будет вплоть до очередной смены общественной формации через 20 или 30 лет.
«White horse» который я в прошлый раз оплачивал, норм зашел? Ну можно его.
Критерии можно продумать. И да, три буквы при белом списке не работают, так что в случае сбытия прогноза, я даже не смогу зайти на Табун и сказать «где моя лошадь», хоть весь обмажусь тремя буквами.
PS:
Дискеты 21-го века
Давай. Ставлю бутылку «Белой лошади» на то, что 13 мая 2027 любой Интернет для физических лиц (хоть кабельный, хоть мобильный) не будет иметь доступа ни к чему, кроме определенного списка сайтов и сервисов. Это логичное развитие ситуации и динамика устойчиво ведет туда.
Первое, Интернет в основном это котики и порно, а нам нужно только самое важное для работы и развлечений. 16 Тб может и не хватит, но большую часть можно спасти.
Второе, нам не нужно жить с этим тысячу лет, как Северной Корее или Афганистану. Россия всегда была технически продвинутой страной, и рано или поздно, станет частью мировой цивилизации. Нужно подождать, пока определенный круг лиц (около 60-80 млн человек, по грубой прикидке) не вымрет естественным образом, дальше пойдут улучшения и изменения.
В контексте спора, это не важно, важен сам факт наличия белого списка, который легко детектируется тем способом, что все трехбуквенные сервисы перестают работать.
То есть, не как сейчас «доступно все, что не запрещено», а конкретно «недоступно всё, что не разрешено».
Естественно, вебу 2.0 в таком случае придет конец, теплый и пушистый.
Элитарист? ОК, оставлю здесь надпись со звуком. :-)
Нафиг нам не нужен интернет ваш.jpg
Но да, составлять списки лучше оставим для Твайлайт, это её фишка. Наша задача — выкачивать Интернет в сундук, каждый день как в последний раз.
Белый список характеризуется тем, что под него попадают, прежде всего, те ресурсы, которые никто бы самостоятельно не подумал бы запрещать.Подобные бабки из мемов и из ШКЯ не влияют на решения, принимаемые правительством. Запреты принимались не из-за их мнения.Если список не составить, то не будет объективного способа проверить результаты спора.
Окей, если ты не хочешь, я могу составить, а ты подтвердишь, что сойдёт, ок?
Не пингуется 8.8.8.8 — значит, активен белый список. На сотовых уже проверено.
Но так сложно, ведь никогда не знаешь, сайт недоступен, потому что запрещен, или потому что белый список работает. Надо подумать еще.
И кстати, сейчас у меня он прекрасно пингуется с мобильного инета, я проверил и на МТС, и на Мегафоне.Именно поэтому я и писал:
… Может использовать хостинг, подсети IP-шников которого давно внесены в какую-нибудь внереестровую блокировку.
a-ivanov.ru
flowerland24.ru
l-garage.ru
Открываются — у нас пока что всё хорошо. Не открываются — добро пожаловать в будущее, сученки, грузите дискетки с последними трендами ютуба в шины.
Вот именно поэтому, кстати, я от тебя и прошу конкретный список: не только, чтобы результат был воспроизводим, но и чтобы понять, что конкретно ты хочешь доказать.
Короче, давай я тебе накатаю список и методологию эксперимента, а ты согласишься или нет.
— Что не будет запрещено к 13 мая 2027 года, если будут введены белые списки:
— Что будет запрещено к 13 мая 2027 года, если будут введены белые списки (для зарубежных сайтов):
Запрещённым считаем такой сайт, который не открывается из России (попытка загрузить его через curl вызывает ошибку), в то же время открывается из-за рубежа. Если из России нет ошибки, то сайт считается незапрещённым (вне зависимости от его доступности из-за рубежа); если при ошибке из России из-за рубежа также есть ошибка, то сайт считается недоступным.
Для проверки гипотезы в период с 13 мая по 20 мая 2027 года (возможен сдвиг сроков по нашему обоюдному согласию при невозможности провести тестирование в этот период) проводится как минимум одно тестирование с использованием любого провайдера проводной связи в России, с отключенными средствами обхода блокировок. Если среди всех проведённых тестирований нет такого, чьи результаты не свидетельствовали бы о ситуации, когда в первом списке соотношение незапрещённых сайтов к запрещённым не менее 4:1, а во втором — не более 1:4, то гипотеза «в России введены белые списки» считается истинной (победил ты), иначе считается ложной (победил я).
Как тебе такие условия?
Вроде как в этом и есть суть белых списков — всё, что в них не находится, является недоступным. Вне зависимости от хостера, локации и технологии. То есть при работающей системе белых списков — ты даже не сможешь достучаться до своего домашнего компьютера с другого, ибо твой IP не входит в белый список.
То есть, говорить о «белых списках для зарубежных сайтов» — бессмысленно, белый список это исключающее условие. Работают три десятка сайтов, а весь остальной Интернет недоступен, как российский, так и зарубежный, включая всякие бездоменные VDS и сайты на микроПК, установленные в подвалах у анонов.
Будущее время здесь неуместно. Они уже введены, по крайней мере, в некоторых регионах, и на мобильном Интернет. То есть, в городе-миллионнике X ты не можешь открыть со своего телефона ни Табун, ни хомяка Васи Пупкина, ни сайт автосервиса Паши, ни цветочный каталог Маши — только Госуслуги, ВК и еще три десятка ресурсов (список немного расширяется).
То есть это даже не Чебурнет, которым нас так пугали псепропальщики (Чебурнет, по сути, это Рунет без кабеля наружу, и если слезть с иглы западных сервисов и накачать себе заранее нужных дистров в оффлайн, то можно пережить) — а полное превращение Интернет в локалку, где крупные/государственные сайты выступают серверами, а все остальные клиентами, без возможности поднять свой сервер в два клика.
А зачем мне это, если сайт всё равно недоступен? Не, конечно, я могу сделать список 9000 сайтов, но ты всегда можешь сказать, что они все запрещены, а вот 9001-ый окажется рабочим, нужно просто его найти.
Ты не понимаешь, что такое белые списки, да?
Блокировка — если сайт входит в список запрещенных ресурсов, на него не пускают.
Белый список — если сайт входит в список разрешенных ресурсов, на него пускают.
Без разделения на зарубежные и российские.
В регионах сейчас именно так и работает, ты можешь открыть ВК, но не можешь гугл и автосервис Паши, они не входят в белые списки. И это прогресс, потому что до этого Интернета с мобильного не было вообще, как явления, люди не могли зайти на любой сайт иначе, как через кабельный Интернет.
В регионах — нет, без разделения. Безобидные сайты в зоне ру тоже не открываются.
Россия не Москва.
И что сделает клиент мобильного оператора, разорвет договор и будет звонить по телефону системы «два стакана, между ними леска»?
Как по мне, это очевидные вещи, которые можно в таком случае сделать.
Надо подумать. Чуть позже к этому вернусь, есть более важные вещи, 486-ой с 66 до 75 МГц сам себя не разгонит :-)
Спойлер
Эх, эта возня с джамперами на мамке)
Нифига себе.
Тогда вам крышка.
Само собой, ловить показательно единицы из них будут, но переловить всех будет столь же невозможно, как переловить все подпольные казино сейчас.
ООО у нас около 3 млн, из них имеют договора на Интернет вряд ли больше миллиона, остальные пользуются Интернетом своих сотрудников, ибо так проще. Согласись, отловить и покарать миллион, имеющий расчетный счет, куда проще, чем 100 миллионов, из которых у половины имущества только зарплатная карточка да бабушкина квартира.
Подпольных казино и того меньше — сотни, ну может, максимум единицы тысяч, однако же под реальные дела попадают единицы. Ёмкость карательной системы намного меньше, чем тебе хотелось бы.
Уже можно посмотреть, как по прибытию в город ночью ты не можешь вызвать такси и начинаешь старые переговоры с водителями из 90-х, где он просит всё золото мира, а ты предлагаешь хвост мертвого осла, в итоге сходитесь на паре тысяч, и ты показываешь дорогу. Да, это не фантазии под травой, это реальность.
GSM скорее всего, рубить не будут, это очень старая и очень стабильная технология, так что связаться с женой и детьми можно и без 27 МГц.
Но да, на старости планирую таки вернуться к забавам с радиодиапазоном, как минимум, соберу универсальную станцию и получу позывной. Всё лучше, чем в стиле деда сидеть на лавке и махать клюкой на молодежь.
Почти правильно, «ебенях» :-)
Десять тысяч любителей мусорить в эфир позывными не на что ни влияют и никому не интересны, если не выходят за пределы разрешенных частот.
Ты можешь не верить, а он не работал, и даже моя тщательная подготовка в виде номера контактного центра дала сбой — я звоню «дайте машину», а мне «как же мы дадим машину, когда у водителей нет Интернета».
Проснись, Нео. За пределами МКАД каменный век для всех, кроме кабель-бояр. Но на вокзал кабель тащить крайне неудобно, дальность витой пары около 400 м.
Какие тебе нужны подтверждения? Собрать пять жителей Краснодарского края, которые на Библии поклянутся, что большую часть времени не могут подключиться ни к одному сайту, кроме ВК, Госуслуг и приравненных к ним?
Люди уже мемы на эту тему рисуют.
Спойлер
Возможно, ты живёшь в чём-то типа прифронтовой территории, а это далеко не вся территория «за пределами МКАД».
Мобильный интернет свободно работает там, где его целенаправленно не глушат (у меня дома всё норм, а вот в универе работает только Яндекс, ВК и ещё, по слухам, МАКС). Сайты также открываются все, которые не заблочены.
Вот за что я тебя и NTFS обожаю, так это за то, что читая ваши диалоги, получаешь больше знаний, чем за все уроки информатики и/или других предметов/дисциплин вместе взятых) И это только в этом топике) (сорян за то, что утрирую, но читать ваши диалоги просто крайне интересно)
Ну да, за это я и люблю табун вообще (и участвую в том, чтобы делать его таким) — он весьма образовательный временами)
По поводу темы вашей беседы:
Мне кажется странным, что в VK, до сих пор есть возможность логиниться с Украинских номеров в аккаунты, хотя как будто такую возможность должны были пресечь)
Кстати, примечательно что тот белый список сайтов который ты скинул NTFS, у меня полностью заблокирован, как и 99.99% всех сайтов, которые заканчивается на ".ru"(Как с мобильного так и с Wi Fi, при чём в мобильном даже табун заблокирован). И с VPN, всё работает без проблем)
Вполне логично: мы говорим о ситуации внутри России; вне её, разумеется, зона .ru может быть вполне выпилена прям полностью, например — и безо всяких белых списков.
Вообще вк оч стараются усидеть на двух стульях — и в законы рф не налететь, и пользователям оставить лазейки. Всякое, что ркн требует запретить по относительно новым требованиям, прячут в недоступность из РФ, но открываемым через впн.
Это, конечно не касается всякой порнографии, наркоты и прочего глобально запрещённого — такой контент выпиливают, а профили банят (но это если кто-то настучит, сами нихера не ищут)
1) Полностью не работает
2) Работают только полные белые списки, никаких исключений, кроме нескольких десятков сервисов. Гугл и автосервис Васи в одной колоде.
Это не ошибка системы, а система, и даже тот же Яндекс в свое такси добавил честную надпись, что в данный момент такси нет, ибо нет Интернета. Я буквально вчера показывал богато одетой и растерянной девочке в холле отеля, как правильно справляться с такой бедой — использовать GSM-вызовы, завести коллекцию номеров местных водил и освоить адресную систему
сегмент-смещениегород-улица-номердома.Ну или обратиться на ресепшн отеля за их такси, x2 к цене, но на самолет доставят.
И абсолютно неважно, почему. Важно, что это возможно и будет распространено на все прочие каналы, кроме отдельных государственных и крупных коммерческих. Finita комедии «васян поднимает свой Интернет-сервер, с… в на работе сраный 486-ой»
Почему в Саратове, Туле и т.п. не так?Ещё раз говорю: крайне сомневаюсь, вот 13 мая 2027 посмотрим.
Врать не буду, в этих городах у меня нет знакомых, а в тех, где есть, картина примерно такая же.
Давай уточним — ты сомневаешься в моей способности определить факт (не)доступности Гугла и сервиса Васи на своём телефоне, или, страшно сказать, полагаешь, что я показываю тебе «ужасные Соломоновы Острова»?
Пять лет назад за упоминание белых списков публично — в дискуссиях тебя могли «избить, обоссать и бросить в канаву»©, а сейчас народ пишет «спасибо Государю, дали Интернет, теперь хотя бы могу такси вызвать и заказ в ПВ Озона забрать».
Оно конечно, экстраполяция по двум точкам — источник анекдота про 100 мужей через 100 дней, но вот мы экстраполируем уже 10 лет, и график вполне четкий.
Разве что тогда была какая-то ненулевая вера в то, что те, кто этим руководят, не совсем идиоты, а значит, вероятность введения такого оценивалась как крайне низкая.Если хочешь, чтобы у такого высказывания была хоть какая-то объективность — то приводи данные, по которым строился график. А то таким образом рискуешь стать Акио.
Нельзя, по нынешним временам, публично рассуждать, где чего по городам — может прилететь, три ха-ха. Поиску в Интернете ты обучен, легко найдешь плач Ярославны по множеству городов.
Пожалуйста.
— Блокировки сайтов по решению суда с соответствующей плашкой при открытии сайта и записью в реестре
— Блокировки сайтов без решения суда, но на основании закона
— Блокировка сайтов по решению органа исполнительной власти и объявлению оной
— Теневая блокировка сайтов без законных оснований и деклараций о блокировке, фиг знает кем и как
— Лютые ограничения на всё, что можно, включая работу мессенджеров и видеохостингов, с задеванием безобидных сервисов и тормозами пакетов, плюс рубка VPN
— Белые списки на мобильный Интернет, VPN бесполезен
(вы находитесь здесь)
— Белые списки на кабельный Интернет, конец истории
Убедительно?
ОК, я сдаюсь. Капибара уходит.
Не, это можно понять. Если смотреть на факты и не думать «авось пронесет», то станет ясно, что есть только три пути:
1) (удалено)
2) учиться жить без Интернет
3) барев дзес, гамарджоба, алейкум ассалам
и все три варианта связаны с чудовищным дискомфортом и трудностями. Проще думать, что если в городе X люди месяцами не могли выйти в Интернет с мобилы — то это байки из склепа, дабы напугать глупых москвичей, пряча тело жирное в утесах.
И это я уже не говорю о том, что это лишь твой собственный личный опыт точечного анализа, без необходимой статистической выборки по всей стране.Во-первых, name your X.
Ну, то есть, камон, назови мне город, в котором такая ситуация стабильно и для всех (хотя бы почти всех) жителей (и при этом город не находится в зоне гуманитарной катастрофы или прифронтовой территории).
Во-вторых, даже тогда ты можешь говорить только про этот город, а не экстраполировать на всё страну.
«Имя, сестра, имя.» :-)
Могу назвать минимум два, где у меня люди, которым нет оснований не доверять. Но ты скажешь
и что мне делать? Ждать, пока столицы тоже накроет?
Или просто говорить: «такие проблемы наблюдаюстся в %городнейм1%, %городнейм2% и %городнейм3%».
Я так жил в начале 2000-х, когда Интернет был на работе и в универе. Потом взял модем.
25 лет эволюции — коню под хвост.
Именно так мы, например, сидим с мобильным инетом у себя на работе.
Ну елки, не веришь мне, сделай один запрос поисковый. Вот легальный ресурс, который я могу цитировать.
t-j.ru/full-whitelist
Или тут, если больше доверяешь техноблогам
habr.com/ru/news/944322/
А так, до введения белых списков, мобильного Интернета не было вообще. Где-то, например, в Краснодаре, его только ночью рубили. Где-то круглые сутки. Подключайся к твоей VDS, лол.
Сейчас механизм «белый список» есть на мобильный и на случай атаки (на самом деле, куда чаще, в Краснодаре на ночь, а в некоторых неназываемых городах — круглосуточно), значит, с высокой степенью вероятности его распространят на кабель и на постоянку.
А еще раз говорю, что нет, «я был там, Гэндальф», и у меня не открывался ни Гугл, ни сайт Васяна, но работал худо-бедно VK и Яндекс.
Но ты можешь себя успокаивать тем, что злобная трехбуквенная организация лично мне такой фильтр поставила, а все остальные 139999999 людей это не затрагивает.
С чего такие выводы? Да и сталкивался я с этими белыми списками. Чёт какие-то они дырявые. Ну то есть через 4g работает только то, что разрешено, да. Но вот стоило мне переключить сеть на 2g, так я и телеграм смог открыть. Скорость естественно низкая, но я сообщения смог прочитать и даже картинки посмотреть. Что мешает и на 2g белый список накинуть если уж всё ограничить хотят?
Ну то есть не всё блокнуто было. Это не было как обычное провайдер отрубил инет так как деньги закончились на счету.
Моё оценочное суждение — вся эта благодать на год-полтора, потом только ведомственный, служебный и корпоративный Интернет, с жесткими ограничениями. С ним, суждением, можно не соглашаться, а можно готовиться, у нас свобода.
Есть хорошая концепция — если кто-то долго и постоянно говорит, что хочет тебя убить, натачивает топор, и следит за тобой от дома до работы — то ему стоит верить.
Вот я верю тем, кто говорит, что ненавидит Интернет и хочет его уничтожить как явление, как троцкистов после 37-го, как буржуазию при коммунизме и как день при Лунной Пони.
Да, думаю, стоит верить, что на этом не остановится
.
Вообще, я буквально с начала этой ветки говорил, что возможность такая есть, она реализована, прекрасно работает, и перекинуть конфиг с мобильных линий на кабельные — дело пары кликов в консоли, или чем там рулят.
Вот такая аналогия более реальна.
Иначе бы он тебе сразу её отрубил, а инет прекратил бы своё существование в РФ целиком сразу 22 февраля 2022.А возможности сделать это резко, при этом не положив вообще всё (включая критические вещи) — нет.
Какие такие критические вещи произойдут, если на кабельных тарифах физлиц и мелких юрлиц введут белые списки?
Недоступность Стима и всяческих GOG ничего серьезно не даст, напротив, сбережет деньги в экономике.
Недоступность всяческих развлекательных ресурсов — опять же, без последствий.
Мелкие компании, недостаточно богатые, чтобы внести себя в белые списки, но ведущие бизнес через Интернет — перестроятся в оффлайн, благо, еще живы люди, которые помнят, как записывали каталог компании на CD и разносили его контрагентам с нескучной оболочкой для поиска.
Вымирающий класс мелких айтишников, этим да, в моменте поплохеет, но их реально мало, а во вторых, они либо перейдут на работы в крупные компании, у которых какой-никакой, но Интернет останется, либо освоят оффлайн-разработку, опять же.
Что еще? Онлайн-кассы мелких ИП и рыночков? первый месяц пойдут по налу, заплатив штраф, потом айпишники серверов внесут в белые списки.
Я не вижу ни одной причины, почему сделав 100+ шагов, вдруг не сделают еще один.
Поедут в офисы, если не хотят остаться без работы.
Мелкие фирмы закроются, и это благо что с позиций гречневого мужика, что больших людей в кабинетах. А безработных есть куда направить.
Тут согласен, это аргумент, потому что после уже нечего будет резать и защищать, только пасти корпоратов и смотреть, не лазят ли сотрудники где не надо.
Подумаю еще немного, тезисы вроде прояснились, но нужна точность.
Можно выбрать опцию «оставить продукты у двери».
— Ха! И найти потом у себя на крыльце разодранную коробку, в которой спит обожравшийся ракун!
Потому что он капибара в душе.
У меня другой вайб)) NTFS — это такой индеец у костра с перьями, а Хомура — ковбой в шляпе))
….Впрочем я долго тупила с утра, ибо в мой ассоциативный ряд с индейцем и ковбоем лесник не лез,
но потом вспомнила про костёр)
… Эй-эй!
Включаю 3 весёлых буквы — нормально скачалось.
Теперь чтобы что-то распечатать, сначала выдёргиваю провод из роутера.
Классическое прокидывание через колено, в лучших традициях менял с платформы Сызрань-Южная образца 1995-го года, отдаешь и зайца, и сапоги.
Как перестали пользоваться услугами менял с полустанков, так и все остальные пойдут лесом.
Правда название в лучших совковых традициях.
— Даздраперма Первомаевна, а ваш то балбес куда работать устроился.
— Дык он пошёл в унижение, вона тяперь объясняет всем в этих ихних тырнетах почему унижение это не хрен собачий, а вообще зашибись.
Не волнуйся, я уже разрабатываю концепт. К 23 октября 2077 года можете ждать реализацию.
Подключение там нужно только если тебе из маркетплейса что-то надо или обновить версию. Так оно работает вполне себе нормально.
Годится либо для прототипирования, либо для проектов без высокой нагрузки (всякие квесты и аркады), либо когда у разработчика непереносимость C++
Спойлер
Значит написал вородорушек вот такую хрень
А оно сцуко берёт и схлопывается!!!
Да чё за хня!?!?!?
Но это не должно влиять на падение, да.
Чем компилируешь, кладешь ли .dll в каталог к бинарнику?
Ничем не компилирую, запускаю через отладку в Visual Studio 2022.
.dll-ки вроде распиханы в x64/Debug, во всяком случае на их отсутствие при запуске не жалуется.
Сбрось весь проект, посмотрю, чего там не так.
… наверное
И да, так делать не нужно — в следующий раз ты про внешний каталог забудешь, или обновишь там версию. Все dll, lib и include должны быть в каталоге проекта. Так 100% надежней.
Ну или по-взрослому — через субмодули git, но это уже следующий этап.
Собственно, технически, оно вроде и открывается.
А закрываться оно само уже не должно.
Спойлер
Переключи сборку на Release — всё заработает.
И лучше добавить хотя бы пустой рендер, тогда окно будет черным.
#include <iostream> #include <SFML/Graphics.hpp> int main() { sf::RenderWindow window(sf::VideoMode(800, 600), "MyWindow"); window.setFramerateLimit(30); while (window.isOpen()) { sf::Event event; while (window.pollEvent(event)) { if (event.type == sf::Event::Closed) window.close(); if (sf::Keyboard::isKeyPressed(sf::Keyboard::Escape)) window.close(); } window.clear(); window.display(); } //setlocale(LC_ALL,"Rus"); return 0; }Ещё и ёбаные библиотеки через такие ёбаные ебея подключаются, что объебёшся блять разбираться как, а главное сука нахуя!!!
В этом есть здравое зерно — чтобы спокойно ковырять код и находить один неправильный байт в тысяче строк, нужен особый склад мозга, который во многом против человеческой природы. Наш внутренний варвар хочет есть, пить и рвать ткань, а не вчитываться в мануалы.
Тогда твой путь лежит в Unity или Godot. На С++ тебе как раз пять лет примерно и понадобится, просто чтобы понять, почему программа будет работать так, а не иначе.
Это ты еще не дошел до загрузки текстур — следующий твой крик души будет «почему спрайт выводится белым», 100%.
Подсказка: потому что загруженная текстура покинула область видимости и освободилась автоматическим вызовом деструктора.
ОК, шаблонное приложение сделаю, как обещал.
…………………… ...
202120232024 с желанием уложиться в несколько месяцев!Я что-то пропустил? Ты вроде только библиотеку для рендера нашел, и то у тебя с ней большие проблемы. Какой движок то?
Унижение же.
Я всё еще говорю, что это плохая идея.
Просто передача объекта как аргумента может приводить к неожиданным последствиям — если например, в деструкторе чего-то освобождается, то оно освободится два раза.
Я впервые Си увидел в 15 лет, и до сих пор натыкаюсь на всякие штуки, хотя кодить приходится на нём чуть ли не каждый месяц.
Не знаю, как ты планируешь всё это разгребать, при том, что я работаю, а ты, если я верно понял, будешь это делать после работы.
Если нужен SFML, ты просто вызываешь в консоли
dotnet add package SFML.Net
и дальше за тебя система сборки всё делает сама, причем без разницы, на какой ОС ты сейчас работаешь.
Правда, сам Macroquad кривой и тормозной, но это уже другая история
Еще один язык учить? Ну нафиг, я тут обнаружил, что в синтаксисе ObjectPascal, на котором почти 25 лет сижу, есть незнакомые трюки.
(не, серьёзно, под линуксом у меня никогда не возникало проблем, что какая-то либа не подцепилась, а если в какой-то хтони и пытались так накосячить, то LD_PRELOAD и LD_LIBRARY_PATH не оставляли им и шанса))
Вот делал мини-проект для теста геймпада. Конфиг на CMake
cmake_minimum_required(VERSION 3.17) project(TestSFMLGamepad) set(SOURCE main.cpp) set(CMAKE_EXE_LINKER_FLAGS "-static-libgcc -static-libstdc++ -static") include_directories(${CMAKE_SOURCE_DIR}/SFML) find_library(SFML_LIB_Window sfml-window "${CMAKE_SOURCE_DIR}/SFML/lib") find_library(SFML_LIB_Graphics sfml-graphics "${CMAKE_SOURCE_DIR}/SFML/lib") find_library(SFML_LIB_System sfml-system "${CMAKE_SOURCE_DIR}/SFML/lib") find_library(SFML_LIB_Audio sfml-audio "${CMAKE_SOURCE_DIR}/SFML/lib") add_executable(TestSFMLGamepad main.cpp) target_link_libraries(TestSFMLGamepad ${SFML_LIB_Window}) target_link_libraries(TestSFMLGamepad ${SFML_LIB_Graphics}) target_link_libraries(TestSFMLGamepad ${SFML_LIB_System}) target_link_libraries(TestSFMLGamepad ${SFML_LIB_Audio})Тот же конфиг на QMake
TEMPLATE = app CONFIG += console c++11 CONFIG -= app_bundle CONFIG -= qt SOURCES += \ main.cpp INCLUDEPATH += SFML DEPENDPATH += SFML LIBS+=-L"$$_PRO_FILE_PWD_/SFML/lib" CONFIG(release, debug|release): LIBS += -lsfml-audio -lsfml-graphics -lsfml-network -lsfml-window -lsfml-systemQMake ничего из этого, няз, не умеет (это просто костыльная надстройка для GNU make, она, емнип, не умеет даже в генерацию для Ninja вместо make).
Конечно, CMake помощнее будет, это для профессиональной разработки на С++
Как только тебе оказываются нужны супброекты, вложенные каталоги, инсталляция, тесты, фоллбэки для зависимостей и т.п. — сразу CMake/meson становятся удобнее некуда. Я пока не видел ни одного проекта больше одного файла исходников размеров, у которого бы CMake/meson были бы менее удобны, чем ручками написанный make-файл (а qmake — это почти он и есть).
Добавил рендер квадрата:
При попытке запуска пишет «There were build errors», предлагает запустить последний удачный билд, но выдаёт ошибку, мол не находит экзешник.
Убираю window.draw(rect); — нормально запускается, но естественно нифига не рисует, возвращаю, опять то же самое.
Наверно, всё-таки такое сообщение?
Дальше уже понятно, что нужно донастроить линкер.
Давай я тебе просто шаблон приложения сделаю со всеми включениями для x64 vs2022, а ты мне при случае пиво поставишь.
А да, есть какая-то такая фигня в оутпуте.
Если бы компиляторы думали за нас, настраивались за нас и делали программы за нас, то я не сидел бы сейчас в уютном офисе, а лежал бы под забором.
Проблема была в директиве SFML_STATIC, замени на SFML_DYNAMIC.
Спойлер
И почитай уже общие принципы разработки многомодульных программ на C++. Линкуешь ты динамические библиотеки, препроцессору же говоришь работать со статикой. Конечно, он сходит с ума.
Это не C#, где достаточно вбить dotnet build и больше ничего. На С++ нужно всё делать самому.
Посмотри на эти файлики — думаешь, они просто так с постфиксами?
Спойлер
s — статическая
s-d — статическая отладочная
Нужно правильно выбирать тип сборки и указывать нужные директивы препроцессору, чтобы всё совпадало.
почему б не сделать два формата либ, .so и .a и не давать линкеру автоматически линковать либо одну, либо другую в зависимости от того, передано ли ему -Wl,-static (или как там это делается — давно ничего статического не собирал)…
А ещё, по слухам, виндовому линкеру зачем-то при динамической линковке нужно и .lib, и .dll (может быть и нет, но первая точно нужна при линковке, а вторая — в рантайме), хотя под линуксами хватает одного .so, интересно, зачем так сложно О.о
Требование наличия .h, .lib/.a и .dll/.so — это фишка сишных систем.
Можно глянуть, чего там лежит в sfml-библиотеках .lib без префикса -s
человек который в жизни не открывал vs был близок к разгадке
ВНИМАНИЕ ВОПРОС:
В документации написано, что:
должен отключать от сети, и вызывать сигнал peer_disconnected на сервере, но на деле нифига подобного. Он просто обнуляет multiplayer_peer на стороне клиента, но сервер продолжает видеть его подключённым и при повторном коннекте возвращает ему тот же id. Реальное отключение от сервера происходит только при закрытии клиента. Конечно это с какой-то стороны даже удобно, и в принципе вородор может прикрутить костыли, но с другой стороны это вот нифига не удобно и вообще ад и израиль, с которым срочно надо что-то делать.
На серверной части просто отключи того кто отключился. Как вариант при дисконекте отправь запрос на кик или проверяй на статус на дисконект каждого пира. вроде должен сигнал на серве при дисконекте пира появляется, но это не точно
Нувыпонели, да? ))Лютая крипота.
Причем, яп, пользующийся успехом в финтехе
Можно взять дотнет, модно взять жаву, у него есть замечатльная вещь, как netty, проблема модет быть с mempry footprint, но можно пофиксить и ускорить даже с помощью graalvm и также сбилдить бинарь native image, и разработка идет на изи
Зачем на плюсах мучиться
Плюсы вечно используют неправильно.
Язык, в котором запись в строке
не вызывает остановку компиляции, не может применяться нигде, кроме жесткой системной разработки.
Ну вот я выше привел, в терминах плюсов это всего лишь Warning, а не Error.
Хотя, конечно, удобство программирования на плюсах сильно зависит от привычки и опыта. Я чуть-чуть попробовал плюсы поковырять, но у меня пробный проект в UE даже в виде исходного шаблона не собрался, выдавая сообщения об отсутствии каких-то файлов. В общем, я забил, понимая, что моего опыта хватает только на разработку на блюпринтах.
При этом его бессмысленность возникает лишь из-за того, что ты используешь два осмысленных поодиночке приёма — оператор сравнения и возможность игнорирования возвращаемого значения.
При таком должен ломаться не компилятор, а кидать ворнинг статический анализатор, потому что такие частные случаи должен отлавливать именно он. А попытки запретить такие конструкции на языковом уровне — продуктивны не более, чем устанавливать с завода на каждой микроволновке защиту от того, чтобы в неё засунули кошку (а потом удивляться «как это мы не предусмотрели», когда кто-то засунет бобра, а не кошку, и защита не сработает).
А что в этом плохого, кроме дополнительной проверки? Ну ведь нет ни одного случая, когда в микроволновке должна быть кошка. А так мы пусть не бобра, но кошку сбережем.
И опять же, как уже говорил — практически все известные мне языки, от древнего Фортран, до модных C# — такое не пропускают. И только C++ даёт лишь warning, и то при -Wall
Навевает на мысли.
Да, есть госрегуляции, которые обязывают сех производителей ставить определённый набор защит, но к огромному счастью, госрегуляции языков программирования пока нет.Лишь потому, что в них оператор сравнения намного менее мощен, чем в С (и С++). И иногда эта мощность нужна (тогда и выбирают С++, например).
Попробуй в этом твоём фортране или чём там ещё написать что-то типа bool save_result = a == 5;
И если говорить о С++, я тебе уже привёл пример, где там эта конструкция будет абсолютно валидной. А если идти по дорожке «в некоторых случаях считать её валидной, а в некоторых — нет» — то это опять искусственное навешивание частных случаев.
Я что-то упускаю, или со времен переход от машкодов к ассемблеру и далее суть средств разработки — дополнительные проверки, облегчающие жизнь
человекапрограммиста?Не говоря уже о том, что средства разработки — не продукт в привычном смысле, это инструмент продвижения конкретной корпорации для коммерческих вещей вроде ОС. Раньше мы шутили, что единственная причина, почему MS не раздает студии даром — это довление от регуляторов. Прошло 10 лет и студию стали раздавать реально даром, без SMS и регистраций :-)
Пишу в Паскале
А вот такое действительно не выйдет
Потому что Вирт, мир его памяти, не был наркоманом и понимал, что в одной строке — место только одному присваиванию.
temp=gen();
res1=f1(temp);
res2=f2(temp);
Выглядит такое, как будто реально какому-то умственно отсталому объясняешь, а не компу.
Ещё скажи, что везде надо писать i = i + 1, а ещё что результат постинкремента или преинкремента использовать нельзя, лол.
Глупо спорить, что один из факторов фееричного успеха Windows — это как раз Visual Studio, когда ты садишься, жмешь New — и через 10 минут имеешь готовый проект, без подношений темным богам линковок, make-файлов и зависимостей.
XCode, кстати, тоже распространяют бесплатно, это уже не совсем про язык, но всё же для популярности MacOS сделало много.
Нормальная запись, легко читается сверху вниз, порядок выполнений понятен без подглядывания в справочник.
В отличии от
например, когда я вижу b=a[i++], я всегда лезу в листочек, чтобы вспомнить, сначала инкремент, потом возврат, или сначала возврат, потом инкремент.
Я вижу разницу между присвоенной неиспользованной переменной (это косяк алгоритма), и путаницей между оператором сравнения/присваивания, приводящий к игнору сравнения вместо ожидаемого присваивания (это косяк языка).
Дело в том, что ты, условно говоря, будучи beginner-ом в C, пытаешься говорить, как следует писать тем, кто в нём fluent. Но проблема в том, что последние «разговаривают» (рассчитывают, что их код будут читать) с теми, кто хотя бы минимум intermediate. Да, конструкции типа f1((x+=f2())==++n), скорее всего, в нормальном коде просто так использовать не будут (это, хоть и понятно, но перегружено), но вот мгновенное понимание смысла выражения a[i++] для продуктивного программирования на С обязательно.Ты, кажется, всё ещё путаешь = и == (ну или := и =), и потому даже не понял, что я хочу написать, лол. Я пишу сравнение и игнорирую результат. Почему мне должно быть это запрещено? (тем более, я тебе уже привёл пример ситуации, когда это имеет смысл).Опять же, она есть только у тех, кто не привык к языку. Условно, я в C путаю == и = не чаще, чем [] и () или < и >.
Потому что вероятность ошибки в программе в данном случае — 99%, а вероятность замысла программиста — 1%?
Проблема в том, что наркоманы сделали сдвоенные конструкции, и если в Паскале если я не пропечатаю первый или второй символ, то будет либо бессмысленный знак :, либо бессмысленное сравнение вне присвоения или условного оператора.
В Си же пропущенный второй = пойдет дальше вплоть до выполнения тестов.
То же && и &, один из которых — битовая операция, а другой — логическая, и по идее, использование одного вместо другого должно быть запрещено, но не запрещено и снова пропущенный знак даёт нам ошибку.
Ну камон, есть же статические анализаторы, которые опечатки с == ловят прям сразу.Интересно, почему есть слова типа mood, loot, soon, teen и т.п.? Ужас ведь, а вдруг второй символ не пропечатают и получится mod, lot, son и ten?
Окей, я не спорю, что использование двойных символов чуть-чуть (!) повышает вероятность ошибки. Но вот только в основном нормальные программисты ошибаются не в правописании операторов (намётанный глаз это видит сразу), а в косяках с бизнес-логикой. Ты же смотришь с точки зрения новичка, для которого разница между & и && — не столь же ясна, как разница между teen и ten.
SHR и SHL меня вполне устраивают, а использование стрелочки -> для обращения к данным в указателе — вызывает конский ржач, так и вижу, как создатель синтаксиса думает «ну у нас же есть только четыре знака, неравенства и амперсант, как впихнуть вообще все операции в них?»
Ты никогда не узнаешь, что означает апмерсант, пока не увидишь всю строку. В то время, как в нормальных языках взятие адреса, логическое И и битовое И — это четыре разных человека.
Слушай, это уже навязчивая идея (не говоря уже о том, что shr/shl не кроссплатформенны, в отличие от << и >>).
Щито.
На мой взгляд, это самый естественный значок, который может для этого подходить.К слову, это тоже могло влиять в своё время, когда были 6-битные кодировки и на System III (емнип) все привыкли не выходить за их символьный набор. Но это уже чисто моя догадка.Щито. Почему я в 99% случаев понимаю, а ты не понимаешь?
Может, просто потому, что ты не умеешь в нормальные языки?
А, а ещё, кстати, нормальные программисты нормально оформляют код, включая имена переменных и пробелы, поэтому в их коде нет никакой проблемы понять, что значит амперсанд в reg_data & BIT_MASK, в check_x() && check_y() и в pdata = &data.
Это официальные ключевые слова Паскаля, так же как и mod / div, в отличии от Си, где ты не узнаешь, целочисленное ли деление перед тобой, или дробное — знак всегда один и это /
Я много пишу на Си, но всякий это это страдание за деньги, в то время, как на Паскале или Бейсике таких проблем нет, Курц и Вирт не курили траву во время работы и их ключевые слова выглядели как ключевые слова, а не как случайное нажатие двух клавиш.
Какое счастье, что паскаль прошёл мимо меня, я бы с таким надругательством над привычными символами работать бы точно не смог)Элементарно, по типу левого аргумента. Что может быть проще?
Или ты из тех, кто путает «1» и «1.0»?Извини, но имхо, когда оператор деления выглядит как ключевое слово — вот это уже забористая трава. Такого нет ни в одном нормальном языке, который я знаю.
getRenderable().Size().X / 2, и что нам вернет тут? В то время как Паскаль при целочисленной структуре прямоугольника (например, если в Renderable текстура или картинка, а не спрайт) — тут скажет «иди нафиг, хочешь целое число — дели нацело».
У меня нескоромный вопрос — ты точно пишешь код? Не время от времени (время от времени сейчас и медведь код пишет), а регулярно, в режиме «просыпаюсь — и пишу код, пью утренний сок и снова пишу код», плюс возвращаясь к старому коду время от времени (от года до пяти лет) и пытаясь его почитать и понять, почему у клиента 45 данная строка завесила прогу на этапе формирования отчета?
Потому что практикующий программист, конечно, зверь странный, но вряд ли будет одобрять неоднозначность операций и возможность словить ошибку из-за пропушенного по причине слабого прожатия второго знака =
Кстати, а если у тебя для int и double в паскале два разных несовместимых оператора деления, то как ты будешь перегружать operator/()?
Или у тебя там у каждого класса может быть и operator/(), и operator div()?Не всегда так, но бывает, что достаточно продолжительными батчами в несколько дней пишу (правда, в режиме «пришёл на работу — пишу код — ушёл с работы — занимаюсь своими делами»).В таких случаях трассировка обычно спасает, а не чтение кода (чтение кода скорее в случае «тут должен формироваться отчёт, интересно, как он тут формируется»).Я не из того поколения, которое пишет код на телефончике, и на нормальных клавах с хорошим ходом клавиш, а не на ноутбучных, прекрасно чувствуется «непрожатие». Плюс, как правило, если ты что-то где-то непрожал, у тебя косяк вылезает сразу (начиная от warning или error при сборке, и заканчивая крайне странным поведением программы, начиная с легко определяемого момента, где можно и посмотреть в это место и понять, что там не так).
К слову, у меня из ошибок в коде примерно 0% из-за перепутывания = и ==, куда чаще бывают, например, из-за неправильного порядка аргументов в функциях или промахов с массивами. Так что твоя тревога по поводу этого обоснована примерно на те же 0%.
Перегрузка базовых операций это по сути немного грязноватые хаки, призванные запутать программиста, который будет код сопровождать. Как и использование DEFINE за пределами констант и директив для компилятора, а то некоторые умельцы аж векторные операции на них реализуют, на горе всем читающим потом код.
Если мы создали тип матрицы, то логично к нему сделать метод AddMatrix(), а не писать a+b. Так мы сразу видим, что это добавление матрицы, а можно сделать метод AddScalar, или даже AddPony, если вдруг захотим натянуть пони на матрицу для каких-то извращенных целей.
Намного понятней код становится.
ОК, если удобно пользоваться компилятором, который тебе не помогает — норм. Но шутки про С++ и выстрелы в ногу не я придумал, они возможно, старше меня.
То есть, например, операторы типа или тебе не очевидны и путают тебя?
Ну эээ. Тут уже вопросы к твоей квалификации и знанию необходимых паттернов.То есть
в сишном коде для тебя уже что-то сложное?Лолшто, зачем, конечно же нелогично, это дико громоздко и выглядит, будто код писал ребёнок. Чёёёёёл, у тебя для этого есть полиморфизм типов, дали, пользуйся,
нет, не хочу, хочу жрать бейсиковские привычки.Абсолютно наоборот. Честно, вот тут я даже не понимаю, как можно в этом сомневаться.Мне удобно прежде всего пользоваться компилятором, который мне не мешает, и мне не нужно из-за него помнить тысячу названий методов, если я хочу просто сложить сущности А и Б и знаю, что у этого действия единственный очевидный смысл, и мне не нужно будет переписывать половину кода, если метод TypeName::AddTypeName() станет зваться вдруг TypeName1::AddTypeName1(). Кстати, нечто подобное бывает в Qt, и ох селестия, удачи тебе при попытке разобраться с 1000+ ворнингов при попытке собрать код с Qt 5.7 под Qt 5.12, например.В любом языке есть новички, которые не понимают азов и из-за этого стреляют себе в ногу. Вон, вспомни, сколько народу бомбило с питоновской иерархии отступами? Ничего, привыкли и все прекрасно пишут, наоборот, даже удобно стало, не надо скобки писать теперь. Заодно и избавились от проблемы tab vs space, даже лучше стало. Соответственно, поскольку С (шутки про выстрел в ногу пошли, вообще-то, из С, а не С++) сравнительно труден для первоначального изучения — то и новичков, совершающих тупые ошибки и бомбящих с = и == (а также прочих мелочей, типа точек с запятой) больше, чем, допустим, в бейсике или паскале (да даже в питоне, питон уровнем сильно выше С).Наверно, всё-таки полиморфизм функций? Это удобно в довольно редких случаях, как раз на базовых типах, вроде чисел и строк. Уже для классов делать функцию с одним именем и разными типами аргументов-классов (не состоящих в отношениях предок-потомок) — не очень хороший паттерн, легко тупануть и передать не то, что хотим передать.
Им дали VMT, а они всё равно используют препроцессор, а потом космические корабли падают :-)
Не, я понимаю, тут архитектурные уже определения, это редкий случай и относительно справедливо. Но даже так лучше бы это в виде директив условных сделать на вызов функции внутри функции, а не менять имя функции препроцессором.
Типа так:
function UniSomeFunc():Integer;
begin
{$IFDEF FAST_IMPL}
Result:=SomeFuncAvx();
{$ELSE}
Result:=SomeFuncLegacy();
{$ENDIF}
end;
И вызывать именно как UniSomeFunc
Ибо трактовка функций как строк — это тоже хак.
(я про сишный код именно поэтому написал, да, чтобы избежать подобного аргумента).Вот, то есть есть случаи, в которых всё-таки можно.
Я это к чему показал: что на любое (практически) правило найдётся контрпример, который показывает, что правило нарушать не только можно, но и нужно. Даже на правило про goto considered harmful. Поэтому незыблемых правил нет, если есть средство языка — им можно пользоваться, важно не уходить в крайности и пользоваться там, где оно действительно нужно, то есть ты можешь хотя бы самому себе объяснить, что такое решение будет логичнее и удобнее любого другого.Зачем? Всё равно у тебя будет ифдеф, только теперь ещё и с лишней обёрткой в виде функции и объектника с ней, который тебе нужно всюду подлинковывать. А так — запихал в два файла, подцепляешь при сборке один или другой, включаешь куда нужно arch_defs.h (где как раз такой ифдеф будет), и пользуешься функцией спокойно.Не как строк, а как идентификаторов. Ну а так-то имена функций и есть идентификаторы.
Вообще, во внутрянке многих библиотек (libc, OpenSSL и т.п.) такое есть, так что С-программисты этот паттерн хорошо знают и с его пониманием ни у кого вопросов обычно не возникает.
Чтобы понимать, вызываешь ты тут некую универсальную функцию, которая внутри себя уже переключается, или же конкретную функцию.
Дело возможно, да, в подходе. Мне важно и спустя 10 лет понимать, что за хрень я тут написал (вот прямо сейчас клиент из 2006 года просит сделать обнову для Windows 11).
Если цель — написать, прогнать тесты и запушить, то конечно, разницы нет. Поддерживать эти хаки будет другой человек, мир ему.
У тебя есть интерфейс к библиотеке: такаяф-то функция. А как она реализована — просто функцией, функцией с подменяемым именем или вообще макросом — тебя, если ты не лезешь внутрь, это обычно не волнует.
А когда волнует — в man-е обычно сказано что-то типа «in some libc implementations this function may be a macro».Не знаю, как ты, а я прекрасно понимаю свой код десятилетней давности. Хотя, конечно, сейчас бы я некоторые вещи сделал по-другому — да, все мы учимся.И именно поэтому надо знать, какие паттерны известны и понятны программисту необходимой квалификации, а не писать, как для нуба, который только перелез с бейсика (что будет нервировать даже продвинутых джунов, не говоря уже о мидлах и сеньорах).
Когда человек приходит на тематический форум / канал с вопросом, а его с ходу посылают в гугл, это выглядит странно: зачем тогда нужен данный канал вообще? Как минимум, могли бы сказать, что именно нужно гуглить