recentpopularlog in

some_hren : tips   842

« earlier  
1С и Linux: Твердотельные накопители для ЦОД
sudo su postgres
psql -c "CREATE DATABASE example;"
pgbench -i -s 2000 example
pgbench -U postgres -j 32 -c 32 -T 120 -v -P 5 example
....
Не берите SSD с интерфейсом SATA под БД. При работе с 1С они не раскроются - ограничения и по полосе и по работе с очередью запросов к накопителю. Берите только NVME (PCI или m2).

intel p4500 4TB PCI
intel p4510 2TB 2.5 U2
ранее брали P3600 и P3520, но первые два наиболее выгодны
postgress  storage  benchmark  ssd  nvme  tips 
24 days ago by some_hren
Old CSS, new CSS / fuzzy notepad
In fact, let me just list everything that I can think of that you can do in CSS now. This isn’t a guide to all possible uses of styling, but if your CSS knowledge hasn’t been updated since 2008, I hope this whets your appetite. And this stuff is just CSS! So many things that used to be impossible or painful or require clumsy plugins are now natively supported — audio, video, custom drawing, 3D rendering… not to mention the vast ergonomic improvements to JavaScript.

A grid container can do pretty much anything tables can do, and more, including automatically determining how many columns will fit. It’s fucking amazing. More on that below.

A flexbox container lays out its children in a row or column, allowing each child to declare its “default” size and what proportion of leftover space it wants to consume. Flexboxes can wrap, rearrange children without changing source order, and align children in a number of ways.

Columns will pour text into, well, multiple columns.
web-design  css  tips 
28 days ago by some_hren
DNS-поиск в Kubernetes / Блог компании Флант / Хабр
Разрешение имен DNS настраивается в кластере Kubernetes с помощью CoreDNS. Kubelet прописывает pod с CoreDNS в качестве сервера имен в файлах /etc/resolv.conf всех pod'ов. Если посмотреть на содержимое /etc/resolv.conf любого pod'а, оно будет выглядеть примерно следующим образом:
kubernetes  tips  dns 
4 weeks ago by some_hren
Артемий Рябинков (Avito): Graceful Shutdown в Go-сервисах и как подружить его с Kubernetes / Блог компании ua-hosting.company / Хабр
Какой план?

Слушаем сигнал ОС.
Просим потоки завершиться. У нас, скорее всего, поточное приложение, поэтому для его завершения необходимо завершить все потоки приложения.
Когда дождались завершения этих потоков, мы просто завершаем процесс. Всё просто.
...
Почему так? Нам нужно какое-то время, чтобы кластер обновился до требуемого состояния. Давайте 5 секунд подождём – наверное, этого хватит. И на самом деле – да, этого стало хватать!
Sleep5 – это решение ваших проблем, связанных с «Кубернетесом», притом это официальное решение. Вот, пожалуйста – есть даже Issues с обсуждением этих проблем:

https://github.com/kubernetes-retired/contrib/issues/1140
И действительно, контрибьютор «Кубернететеса» предлагает: «Дождитесь пяти секунд перед тем как завершаться».

Как это реализовать в конфигурациях «Кубернетеса»? Чтобы дать указание «Кубернетесу» подождать перед завершением, можно поставить такой хук – preStop:
Что он сделает? При получении сигнала (от мастер-ноды) о необходимости завершить работу сервиса, он ответит: «5 секунд подожду и только потом отправлю сигнал операционной системы».
Когда мы внедрили этот подход (вместе с Graceful Shutdown), время ответа снизилось (слева – до, справа – после):
golang  programming  development  tips  docker  kubernetes 
4 weeks ago by some_hren
Latacora | Careers
How We Hire
We don’t care about your resume, like, at all. We hire almost resume-blind (if you send us a resume, we’ll read it, but we’ll probably forget about it before we get on the phone).

We don’t believe in interviews. We’ll interview you, at the end of our process, but by the time we do we’ll be pretty sure we want to hire you.

Rather than your work history, educational background, Github pages, Twitter profile, or your ability to write code on a whiteboard, we’re interested in your aptitude and enthusiasm for the problems we work on. The way we figure that out is with work-sample tests.

We give our candidates a series of challenges, time-calibrated to take about the same amount of time as a reasonable startup interview loop. Our challenges are designed to be scored on an “objective” rubric.

Our Process, Step By Step
We’re going to get on a call, and tell you more than you want to know about the company and our hiring process. You’ll get a name and a voice and contact information that you can use for the rest of our hiring process.
We’ll prep you for challenges. For instance: everyone (regardless of role) get a basic software security test. We’ll try our best to make sure you’re ready for it; there are books we like for boning up on this stuff, and we’re happy to send them. We have a practice version of the challenge you can take your time with. We don’t want to surprise you; we want to see you in the best possible light.
You’ll do challenges. On your couch, or in the park, or whatever. We’ve calibrated each challenge to take a certain amount of time; we did that to respect your time, not to make you work against a clock. If you want to noodle on a challenge for awhile, you can; we do our best to make sure you don’t have to do that to qualify.
If there’s a good fit right now, our challenge-review robuts have ascertained that. We’ll ask you to come out and meet us in person; when we do that, you’ll know we’ve tech’ed you out and want to find a way to hire you, which we hope makes that last interview pretty laid back.
If all has gone well, we’ll get you an offer and figure out when you can start.

If you want to move quick, we can wrap this up inside of 2 weeks. If you want to take your time, you can do that too. We’re almost always hiring and don’t do ruthless recruiter things to speed candidates up or lock them in.
job  interview  security  talks  tips 
5 weeks ago by some_hren
Как Хабр взаимодействует с госорганами и другими заявителями. Transparency report за все года / Блог компании Хабр / Хабр
ложено.
ОК НЕ ОК
Выполнен на бумажном носителе и:

Содержит собственноручную подпись;
Заверен оригинальным оттиском печати;

либо выполнен в электронной форме и:

заверен усиленной квалифицированной электронной подписью (соответствующей подписанту);
отправлен с официального адреса электронной почты органа.

Официальный адрес электронной почты предусмотрен только в документах РКН, но там же установлено и требование об использовании КЭП. Все остальные запросы не считаются надлежащими.
...
Текст ответа, вдруг кому пригодится. Только дословно не списывайте
По результату рассмотрения запроса, изложенного в письме №12/3456 от 24.10.2019 г. (далее также — запрос), было вынесено решение об отказе в предоставлении запрашиваемой информации в связи с отсутствием или недостаточностью обоснования запроса.

Как следует из приведенных в запросе ссылок на нормы п.4. ст. 10, п. 10 ч. 1 ст. 13 Федерального закона Российской Федерации от 07.02.2011 № 3-ФЗ «О полиции» и ст. 6, ст. 15 Федерального закона РФ от 12.0.199 № 144-ФЗ «Об оперативно-розыскной деятельности», данный запрос направляется в рамках осуществления оперативно-розыскной деятельности, т.е. проведения оперативно-розыскного мероприятия.

Перечень оперативно-розыскных мероприятий установлен в ст. 6 Федерального закона РФ от 12.0.199 № 144-ФЗ «Об оперативно-розыскной деятельности» и является закрытым.

Перечень оснований для проведения оперативно-розыскных мероприятий установлен в ст. 7 Федерального закона РФ от 12.0.199 № 144-ФЗ «Об оперативно-розыскной деятельности» и также является закрытым. В полученном запросе не указано, в рамках какого именно оперативно-розыскного мероприятия направляется данный запрос, а также не указано основание для проведения такого оперативно-розыскного мероприятия. Таким образом, письмо №12/3456 от 24.10.2019 г. невозможно квалифицировать как законное и обоснованное требование о предоставлении информации. Просьба дополнить запрос недостающей информацией и направить на повторное рассмотрение.
...
Помимо алгоритма, в документе есть шаблонные ответы для типовых историй. Так, например, выглядит самый частый шаблон отказа (из-за отправки скана на электронную почту):
...
Первый наш публичный отчёт по обращениям появился в сентябре 2018 года, о чём мы сделали отдельную публикацию. Тогда мы ещё сами не понимали, в каком виде его лучше делать, но всё же решили поставить пользователей в известность о том, что иногда к нам обращаются, а заявителей — о том, что факт их обращения будет известен пользователям. Публиковать сами запросы пока не планируем, хотя иногда хочется — хотя бы по блокировкам, хотя бы в виде строчки типа такой: РКН — Блокировка статьи «Как ООО заплатить в 133 раза меньше налогов» по решению Андроповского районного суда Ставропольского края. Но пару примеров всё же рассмотрим чуть ниже.
https://habr.com/ru/info/transparency/
...
Часть запросов отклоняется из-за некорректного заявления и повторно они не приходят. Если же запрос оформлен корректно, то почти всегда там запрашивают абстрактные «регистрационные данные» по аккаунту: дату/время регистрации и последнего входа, номер телефона (кхе) указанный при регистрации, ФИО и т.д. — ощущение, что бездумно копируют из методички, составленной для других проектов. В таком случае прямо на фирменном бланке печатаем дату/время регистрации и последнего входа, почту и указанное в профиле имя, IP-адреса — практически всё то, что в большинстве случаев и без нас можно увидеть в профиле пользователя. И уж совсем редко (было раза два или три) запрашивают «журналы посещений» пользователя за некий период. В таком случае приходится делать выгрузку данных из логов сервера и печатать её мелким шрифтом. Если пользователь метался по сайту как раненый сайгак, то речь про пачку бумаги. В таком документе содержится лишь информация вида «дата-ip-урл», без текстов статей, комментариев и уж тем более личных сообщений. Визуально это чтиво чем-то похоже на логи веб-сервера. Уж не знаю, насколько это помогает в борьбе с чем/кем-либо, но, как говорится, «какое ТЗ...».
...
РКН

Что больше всего бесит, так это признание информации запрещённой к распространению, то есть «письма счастья» от Роскомнадзора. Просто приходит письмо: такой-то урл по решению такого-то суда попал в реестр запрещённой информации, не скроете — заблокируем. Приходится сначала исполнять это постановление (скрывать пост или удалять картинку), а уже потом разбираться что да почему. Каждый раз мы изучаем контекст, в том числе для поиска ответа «Ээ, но зачем?» и почти никогда не находим ответа. В основном под раздачу попадают посты многолетней давности, которые «давно отшумели» и расползлись по сети, но которые, видимо, нашлись по каким-то ключевым словам — от «налогов» до «напечатали пистолет на 3д-принтере». Хотя однажды РКН всё же принёс пользу — запретил аккаунт с названием казино в логине и сео-спамом в профиле, который мы бы и без судебных заседаний заблокировали.

Чего-то реально опасного или вредного в списке заблокированного (на данный момент) мы не видим, поэтому поступаем так:

Связываемся с авторами заблокированных публикаций и стараемся оказать им юридическую помощь в оспаривании постановления (так как почти всегда они идут с нарушениями, например, без нашего участия в судебных заседаниях). Обычно авторы не горят желанием тратить на это время, именно поэтому в Transparency report напротив РКН почти везде «Удовлетворено» и лишь несколько «Оспорено». Во втором случае у нас было несколько успешных историй — вот, например, одна из них.
Планируем доработать механизм скрытия заблокированных публикаций, выдавая ошибку … [more]
russian  government  internet  censorship  copyright  law  tips 
5 weeks ago by some_hren
Что делать, если вам подбросили наркотики? Инструкция — Meduza
Подкинуть наркотики в России ничего не стоит — ведь полицейские знают, что их наверняка поддержит суд. Судьи традиционно считают так: раз наркотики нашли у задержанного — значит, ему они и принадлежат. Если вам подбросили наркотики, ваша задача сделать все, чтобы дело потом было проще развалить. В большинстве случаев вы сможете рассчитывать только на себя, поэтому важно знать, как действовать. «Медуза» публикует инструкцию адвоката Максима Никонова.

## Запомните, что не нужно делать

# Ни в коем случае не давайте признательные показания
Первые показания — самые важные, поскольку именно на них потом будет опираться судья. Даже показания, которые вы будете давать в суде, волнуют судью меньше. Поэтому важно, чтобы вы сразу отрицали вину. После признания вам может не поверить даже Европейский суд по правам человека.
Важно понимать: если вы признались, что наркотики ваши, шанса получить оправдательный приговор почти нет. Не поддавайтесь на обещания оперативников, которые часто уговаривают признаться в обмен на мягкий приговор или подписку о невыезде вместо заключения под стражу. Полицейским нельзя верить: главная задача оперативников — добиться признания. Помочь вам у них цели нет.

# Ничего не доставайте из карманов или сумки сами
Пусть полицейские все достают сами. Вам важно не оставить свои отпечатки пальцев и следы пота на том, что они подбросили.

# Не отказывайтесь подписывать протоколы

Это не имеет смысла. Напротив, имеет смысл зафиксировать в нем все нарушения. Протокол — главный документ, где можно это указать.

# Не оставляйте без присмотра и не выпускайте из рук личные вещи

Если с вашими вещами проводили какие-либо манипуляции, подробно фиксируйте это в протоколах.

## Запомните, что делать нужно

# Сразу требуйте адвоката

Адвокат вам положен сразу: неважно, задержали вас на улице или пришли с обыском. Полицейские часто врут, что пока можно обойтись без адвоката. Это не так. Конституционный суд России еще в 2000 году четко сказал: право на адвоката у человека появляется сразу, как только ограничена его свобода. Если вам отказали в адвокате, обязательно напишите об этом в протоколе.
Помните, адвокат по назначению часто не будет вашим союзником, а может работать на руку следствию, поэтому лучше заранее найти своего адвоката. Его телефон в идеале нужно знать наизусть.

# Если вас досмотрели не сразу — обязательно напишите об этом в протоколе

Бывает так, что человека задерживают, привозят в отделение — и долго не досматривают. Ему подбрасывают наркотики, после чего приглашают понятых и проводят досмотр. В этом случае важно указать это в протоколе, поскольку ЕСПЧ считает задержку в проведении досмотра подозрительной, а собранные в итоге доказательства — некачественными. Это можно будет использовать в суде.

# Если требуют взятку — вступайте в переговоры, это позволит выиграть время

При таком сценарии все, что вам нужно — на какое-то время выйти из-под контроля силовиков. Можно, например, сказать полицейским, что вам необходимо время, чтобы собрать деньги. Как только вас выпустят, сразу звоните по телефону 112, либо по другим известным телефонам правоохранительных органов и детально рассказывайте о случившемся. Если попросят поучаствовать в задержании вымогателей, соглашайтесь. Этот случай — самый простой для защиты.

# Если вы не употребляете наркотики — требуйте проведения медицинского освидетельствования

Освидетельствование проводится в диспансере. Чистые результаты будут вам только на руку. Также требуйте сделать смыв с рук и срезы ногтевых пластин, а еще взять образцы волос для проведения экспертиз. До этого не берите ничего, что дают вам сотрудники полиции: ни воду, ни еду, ни салфетки, ничего.

После задержания не следует слишком упирать на то, что вы не принимаете наркотики. Если у вас нашли несколько расфасованных доз или большой вес, а вы говорите, что не употребляете, следователь и суд могут усмотреть не хранение наркотиков, а более тяжкое преступление — покушение на их сбыт. В такой ситуации особенно важно сначала обсудить с адвокатом, что и как говорить в показаниях.

По статье за хранение (часть 1 или часть 2 статьи 228 УК РФ) при правильной защите есть хорошие шансы получить условный срок или даже более мягкое наказание. Если же вменяется сбыт или покушение на сбыт (статья 228.1 УК), шансы на условное осуждение минимальны, а по более тяжким частям этой статьи назначают реальное лишение свободы на длительные сроки.

# При обыске или досмотре следите за обстановкой и фиксируйте нарушения

Постарайтесь уследить за всем: как и куда упаковывают полицейские изъятые наркотики, видят ли понятые, что происходит. Понятым нужно четко говорить, если вы замечаете что-то странное. Например, внимание понятых стоит обратить на то, если вас досматривают не первый раз. Полицейские могут сперва досмотреть вас «неформально» и «обнаружить» наркотики, а потом провести уже досмотр с понятыми. Об этом обязательно нужно сказать понятым и указать в протоколе. Если у вас нашли что-то при таком «неформальном» досмотре, постарайтесь запомнить, где было дело: возможно, все попало на уличные камеры.

Во время осмотра или обыска в квартире обращайте внимание понятых на те случаи, когда сотрудник полиции выпадает из их поля зрения. Если вместо понятых используется видеосъемка — требуйте, чтобы она велась непрерывно с момента проникновения полицейских в квартиру и на запись попадали действия всех сотрудников. Если кто-то из сотрудников отошел в другую комнату, выпал из кадра — громко обратите внимание на это, чтобы замечание попало на запись.
russian  drugs  law  tips 
6 weeks ago by some_hren
«60 тысяч одних курьеров». Петербургский Фонд капремонта несет мировым судьям десятки тысяч заявлений на должников - ЖКХ - Новости Санкт-Пет
Цифра внушительная, понятен и тезис про отпуска: для вынесения судебного приказа не требуется вызов сторон, и о том, что мировой судья поддерживает истца, гражданин узнает только при получении документа. Хотя для того, чтобы оспорить приказ, предполагаемому должнику не требуется даже особенных обоснований, достаточно указать, что не согласен. Но сделать это надо в течение 10 дней со дня его получения, иначе с вашего счета просто будет списана требуемая сумма. Судебная практика показывает, что этот срок можно восстановить, если удастся доказать, что гражданин не был извещен о почтовой корреспонденции должным образом. Но не каждый будет готов этим заниматься из-за сравнительно небольших денег, вернувшись через 2 недели с дачного участка.

За первый день новой рабочей недели база пополнилась еще сотней заявлений, и все же дело не в отпускном сезоне.

В плане обращения к мировым судьям Фонд капремонта ускорился еще в начале года, а летом, можно сказать, отдыхает со всеми вместе. По данным организации, всего в этом году подано почти 60 тысяч заявлений, так что на дачный период приходится лишь около 6%. Для сравнения: в 2018 году заявлений было 26 758.

Известна и причина активизации фонда: организация пытается по максимуму использовать возможность штамповать заявления в упрощенном порядке. «В декабре 2018 года были внесены изменения в ст. 124 ГПК РФ «Форма и содержание заявления о вынесении судебного приказа» и расширен перечень данных о должнике для подачи судебного приказа, – рассказали в фонде «Фонтанке». – Ожидается, что изменения вступят в силу в сентябре 2019 года: таким образом, для подготовки судебных приказов будет требоваться больше времени».

Сейчас статья 125 ГПК гласит, что для подачи заявления требуется «наименование должника, его место жительства или место нахождения, а для гражданина-должника также дата и место рождения, место работы (если они известны)».

С сентября все заметно усложнится: потребуется один из идентификаторов (СНИЛС, ИНН, серия и номер паспорта или водительских прав, основной регистрационный номер индивидуального предпринимателя, серия и номер свидетельства о регистрации транспортного средства). Доступ к необходимым базам у фонда так или иначе будет, так что он не должен оказаться в положении КРТИ и Центра управления парковками, которые не имеют возможности адресным образом наказывать водителей-неплательщиков. Но работу все это замедлит принципиально: элементарно вырастет объем бумажных материалов, которые относят в суд. «Дело не в пошлинах, этот вопрос более или менее решен, – говорит собеседник, близкий к фонду. – И фонд заплатил бы необходимые пошлины по всем заявлениям. Но в отличие от арбитража, здесь нет возможности подавать заявление в электронном виде, растет нагрузка на судей, это огромный объем».

«Фонтанка» не призывает бегать от добросовестно начисленных долгов, но поводов для оспаривания судебного приказа может быть несколько – от несвоевременной доставки квитанций до превышения трехлетнего срока исковой давности. В прошлом году, напомним, большую огласку получила история с «долгами из прошлого», которые жильцам начали предъявлять управляющие организации. На квитанциях значились десятки тысяч, набежавшие по оплате жилого помещения и коммунальных услуг аж с 2006 года. В случае упорства жильцам грозили ограничением ресурсов, а также судом с последующим запретом на выезд из страны и продажей квартиры. Расчет, насколько можно было судить, был на самых совестливых и пугливых: взыскать в суде долги более чем за 3 года при должной внимательности ответчика не выйдет. В итоге обещанные жилищниками кары небесные впечатлили некоторое количество горожан, которые от греха подальше заплатили, сколько было сказано, а также прокуратуру, которая инициировала проверку в отношении управляющих организаций.
russian  spb  law  tips 
8 weeks ago by some_hren
Методики уменьшения размеров образов Docker / Блог компании RUVDS.com / Хабр
Исследуем образ с помощью dive: https://github.com/wagoodman/dive
...
Доводилось ли вам когда-нибудь видеть файлы Dockerfile, содержащие очень длинные директивы RUN, в которых множество команд оболочки объединены с помощью &&? Это и есть слияние результатов работы команд.

Пользуясь этим методом, мы создаём, на основе результатов работы единственной длинной команды, лишь один слой. Так как в образе не будет слоёв, содержащих файлы, удалённые в следующих слоях, итоговый образ не будет включать в себя такие «файлы-призраки». Рассмотрим это на примере, приведя вышеприведённый Dockerfile к такому состоянию:

FROM alpine
RUN wget http://xcal1.vodafone.co.uk/10MB.zip -P /tmp && rm /tmp/10MB.zip

Применение опции --squash

В тех случаях, когда пользуются чужими файлами Dockerfile, которые не хочется или невозможно изменить, альтернативой слиянию команд может стать сборка образа с использованием опции --squash.

Современные версии Docker (начиная с 1.13) позволяют сводить все слои в один слой, избавляясь тем самым от «призрачных ресурсов». При этом можно пользоваться исходным неизменённым Dockerfile, содержащим множество отдельных команд. Но собирать образ нужно с использованием опции --squash:

docker build --squash .

Образ, получающийся в итоге, тоже оказывается оптимизированным на 100%:

Удаляйте кэши и временные файлы

При контейнеризации приложений часто складывается такая ситуация, когда вместе с ними нужно поместить в образ дополнительные инструменты, библиотеки, утилиты. Это делается с помощью пакетных менеджеров вроде apk, yum, apt.

Для того чтобы удалить кэши, создаваемые тремя вышеупомянутыми популярными пакетными менеджерами, в конец агрегированной команды (то есть такой, выполнение которой приводит к созданию одного слоя) можно добавить следующее:

APK: ... && rm -rf /etc/apk/cache
YUM: ... && rm -rf /var/cache/yum
APT: ... && rm -rf /var/cache/apt

Рассмотрите возможность создания образа, в котором нет базового образа

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

Здесь вам может пригодиться образ Scratch. Из его описания можно узнать о том, что он специально сделан пустым и рассчитан на построение образов, если «говорить» языком Dockerfile, «FROM scratch», то есть — «с нуля». Этот образ особенно полезен при создании базовых образов (таких, как образы debian и busybox) или предельно минималистичных образов (тех, которые содержат единственный бинарный файл и то, что требуется для его работы, скажем, это нечто вроде hello-world). Использование этого образа в качестве основы образа, описываемого Dockerfile, аналогично применению в некоей программе «пустой операции». Применение образа scratch не приведёт к созданию в готовом образе дополнительного слоя.

В результате, если ваше приложение представляет собой самодостаточные исполняемые файлы, которые могут работать сами по себе, выбор базового образа scratch позволит вам до предела минимизировать размер контейнера.

Используйте многоэтапные сборки

Многоэтапные сборки были в центре внимания после выхода Docker 17.05. Это была возможность, которую ждали уже давно. Она позволяет сборщикам образов отказаться от собственных скриптов для сборки образов и реализовать всё что нужно, используя хорошо известный формат Dockerfile.

В общих чертах многоэтапную сборку можно представить себе в виде объединения нескольких Dockerfile, или в виде Dockerfile, в котором имеется несколько инструкций FROM.

Многоэтапные сборки позволяют отделить фазы создания и подготовки материалов проектов от окружения, в котором выполняется код проектов.

При этом для описания полного процесса сборки проекта достаточно единственного Dockerfile. Но теперь можно копировать материала из одного этапа в другой и избавляться от ненужных данных.

Многоэтапные сборки позволяют создавать кросс-платформенные сборки, которыми можно пользоваться многократно без применения собственных сборочных скриптов, написанных под конкретную операционную систему. Итоговый размер образа может быть сведён к минимуму благодаря возможности избирательного включения в него материалов, сгенерированных на предыдущих этапах процесса сборки образа.
docker  performance  sysadm  optimization  tips 
8 weeks ago by some_hren
Актрису Наталью Бочкареву поймали с кокаином, но даже не осудили. Что, так можно было? — Meduza
20 января Преображенский суд Москвы назначил актрисе Наталье Бочкаревой («Счастливы вместе») судебный штраф 30 тысяч рублей по делу о хранении 0,69 грамма кокаина. Суд прекратил уголовное дело, возбужденное по статье о незаконном хранении наркотиков без цели сбыта (часть 1 статьи 228 Уголовного кодекса). После выплаты штрафа у Бочкаревой не будет судимости.

Почему дело прекратили?
Об этом попросил дознаватель, подав ходатайство об освобождении Бочкаревой от уголовной ответственности. Он объяснил, что подсудимая признала вину, ее действия не причинили вреда, а само преступление относится к категории небольшой тяжести. Представитель следствия также отметил, что актриса «загладила свою вину путем систематических переводов денежных средств в благотворительный фонд». Baza писала, что Бочкарева перевела в фонд «Воскресение» 50 тысяч рублей.

Достаточно для уголовного наказания. Правительство относит 0,69 грамма кокаина, обнаруженные у Бочкаревой, к значительному размеру наркотических средств. Согласно части 1 статьи 228 Уголовного кодекса, за хранение наркотиков в значительном размере предусмотрены разные виды наказания: штраф до 40 тысяч рублей, обязательные работы на срок до 480 часов, исправительные работы на срок до двух лет, ограничение или лишение свободы на срок до трех лет.

Постойте, значительный размер — это много?
Зависит от вида наркотика. Значительный размер кокаина или героина начинается с 0,5 грамма, марихуаны — с шести граммов, гашиша — с двух граммов, амфетамина — с 0,2 грамма, метамфетамина — с 0,3 грамма, MDMA — с 0,6 грамма, псилоцибина — с 0,05 грамма, а LSD-25 — с 0,0001 грамма (100 микрограммов). За покупку, хранение или изготовление наркотиков, вес которых меньше значительного размера, предусмотрена административная ответственность — штраф от четырех до пяти тысяч рублей или арест до 15 суток. Такое же административное наказание грозит за употребление наркотиков.

Так почему актрису не осудили?
Потому что Уголовный кодекс позволяет так поступить. Суд руководствовался статьей 76.2 УК, которая разрешает освободить человека от уголовной ответственности и назначить судебный штраф. Подобное возможно, если речь идет о преступлении небольшой и средней тяжести, совершенном впервые, а подсудимый возместил ущерб «или иным образом загладил причиненный преступлением вред».

Получается, пожертвования в благотворительный фонд помогли?
Похоже, что да. В делах о наркотиках нет конкретных потерпевших, поэтому считается, что вред был причинен в целом обществу, говорит адвокат «Агоры» Максим Никонов, вместе с которым мы подготовили эти карточки. Верховный суд уточнил в 2019 году, что вред от преступления «может быть возмещен в любой форме, позволяющей компенсировать негативные изменения, причиненные преступлением». Поэтому если нет конкретного потерпевшего, вред можно возместить, в том числе переводя деньги в благотворительный фонд.

А часто штрафуют обвиняемых в хранении наркотиков?
Вполне. Но только тех, кого обвиняли в приобретении или хранении наркотиков в значительном размере. В 2018 году, согласно статистике судебного департамента Верховного суда РФ, к штрафу приговорили каждого третьего (32%) из 39 160 обвиняемых по части 1 статьи 228 УК. Это около 12,5 тысячи человек. Судебный штраф назначали редко — за год его получили 403 человека, проходившие обвиняемыми по всем статьям 25-й главы Уголовного кодекса, в которую входят статьи о наркотиках.

Еще треть (29%) обвиняемых по части 1 статьи 228 приговорили к условному сроку, 16% — к реальному, остальным назначили иное наказание. Суды оправдали четырех человек, в отношении еще пяти дела прекратили по реабилитирующим обстоятельствам.

Понятно. Что насчет обвиняемых по более жестким статьям?
Их не штрафуют, а приговаривают к реальным или условным срокам заключения. По статистике судебного департамента Верховного суда, в 2018 году по обвинению в приобретении или хранении наркотиков в крупном размере (часть 2 статьи 228 УК РФ) осудили 30 212 человек. Из них 58% приговорили к условному сроку, остальных — к реальному. Оправдали 11 человек.

А кого судят чаще — потребителей или распространителей?
Потребителей. То есть тех, кого обвиняли в хранении или покупке наркотиков (статья 228 УК). В 2018 году по всем частям этой статьи осудили 75 540 человек. По обвинению в незаконном изготовлении или сбыте наркотиков (все части статьи 228.1 УК) за год осудили 22 032 человека.

И что делать, если обвиняют в хранении наркотиков?
Добиваться прекращения дела. Суд может прекратить уголовное преследование и назначить судебный штраф, если выполнены все необходимые условия: это первое преступление, оно относится к категории небольшой или средней тяжести, а ущерб возмещен.
Формально других оснований для прекращения дела с назначением судебного штрафа нет.

Все условия выполнены. С чего начать?
Для начала подать ходатайство о прекращении дела с назначением судебного штрафа. Его можно подать и следователю, и при поступлении дела в суд. По мнению адвоката Никонова, следует использовать обе возможности: во-первых, иногда следователи поддерживают ходатайства, во-вторых, даже если следователь откажет, суд может принять иное решение и прекратить дело.
Указать в ходатайстве, что все три условия для прекращения дела выполнены. Приложить к нему документы: они должны подтверждать, что вред возмещен (это могут быть документы о переводе пожертвований в благотворительный фонд), а для оплаты штрафа, если его назначат, есть необходимые деньги (справка из банка о состоянии счета).
В ходе выступления в суде обосновать ходатайство: указать, что все три условия выполнены, и рассказать о дополнительных обстоятельствах, например, о положительных характеристиках.
Если суд удовлетворил ходатайство, оплатить штраф в установленный срок.
Если суд отклонил ходатайство, это решение можно обжаловать.
russian  drugs  law  tips 
9 weeks ago by some_hren
Index Engineering | Oracle Scratchpad
tl;dr
For very special cases it’s really amazing what you can (sometimes) do – if you can modify the code – with carefully engineered indexes to minimise the work done by a query AND the work done maintaining the infrastructure needed for that query. Virtual columns are a fantastic aid, especially now that 12c allows them to be invisible.
...

The (massaged) problem statement is as follows:

I have a table of more than 200 million rows that is used for inserts, updates and queries. I have a query on this table and want to know what index I could create to speed up the query.

The first thing to point out is the bitmap index tbl_i3 is almost certainly a bad idea – bitmaps and transactional activity do not mix. It seems quite likely that the OP in this case had read one of the many Internet notes that makes the “not totally wrong” but very misleading statement “bitmap indexes are good when you have a small number of distinct values”, and appled the principle to a column that looks like a “status” column holding only a few distisnct values.

Having got that error out of the way we can start to think about the query. It’s using the (fairly new) “Fetch first N rows” syntax, which means we may have to find a lot of data and sort it before returning a subset: performance issues can be very deceptive in cases like this because we might want a small result set but have to do a large amount of work to get it.

In this case we’re after the first 1,000 rows – which makes you think that maybe there will be a lot of data satisfying the query. So we have two targets to meet to optimise the query:

acquire the data we need as efficiently as possible
post-process the data we acquire to derive the 1,000 rows as efficiently as possible
The query is just a single table access – which means we’re either going to do a full tablescan or find a good indexed access path, we don’t have to worry about join strategies. So the first thing to consider is the volume (and scatter) of data that matches the predicates. If there’s only a “small” amount of data where “c_status in (‘N’,’F’) and cnt <= 5” then an index on – or starting with – (c_status, cnt) may be very helpful. (Note how I’ve specified the column with the equality predicate first – that’s part of a generic strategy for creating multi-column indexes.)

This, though, raises several questions that need to be answered:

How small is “small” ? In the context of 200 million rows, 100,000 is small; but if you had to visit 100,000 different blocks in the table and do 100,000 real single block reads from disc that might still be a very bad thing.
How many rows have status ‘N’, how many have status ‘F’, how many have cnt <= 5 ? Maybe a really tiny number of rows have cnt<=5 and lots have c_status in (‘N’,’F’) which could make this a case where ignoring the generic column-ordering strategy would be very effective. Maybe the number of rows satisfying the individual conditions is high but the number satisfying the combination is very low.
Is this the ONLY combination of c_status and cnt that is of interest, or (for example) was 5 just the number that was picked as an example, Would different c_status values be of interest, would some required combinations of c_status and cnt have to use completley different execution paths for the best performance.
I’m going to make some decisions in order to proceed – they may be totally wrong as far as the OP is concerned – so remember that this note is just for discussion purposes. Let’s assume that the common query is always exactly as stated. Perhaps it’s a query that runs every few minutes to clear up some outstanding work with the expectation that new rows matching the query keep appearing while older rows are processed, change status, and disappear from the result set. Let’s also assume that the result set is always “small”, and that it’s small because ‘N’ and ‘F’ are rare (even if the total number of rows with cnt <= 5 is large).

With these assumptions we could start by creating an index on (c_status, cnt), which gets us to exactly the rows we want from the table with no “throwaway” after visiting the table. Here’s the excution plan if that’s our choice of index (running on 12.2.0.1, and with an index() hint to force the use of the index when necessary):

I’ve enabled rowsource_execution_statistics (alter session set statistics_level = all) and pulled my execution plan from memory. As you can see from the A-rows for the index range scan and table access by index rowid, I’ve identified and acquired exactly the rows from the table that might be relevant (all 13,142 of them), then I’ve done a sort group by of all that data, sorting in a way that means the rows will be produced in exactly the order I need for the windowing function that Oracle will use to select the 1,000 rows I want.

If you’re curious, here (courtesy of dbms_utility.expand_sql_text() but cosmetically enhanced) is the transformed SQL that was actually optimised and executed:

There are three main drawbacks to this choice of index.

I’ve acquired all the rows in the table that match the predicate even though I only really needed a subset
I’ve done a massive sort
I’ve created an index that includes every row in the table
Remember that the OP has a table of 200M rows, and we are assuming (pretending) that only a very small fraction of them match the initial predicates. Creating an index on 200M rows because we’re interested in only a few tens of thousands is wasteful of space and (given we have a “status” column) probably wasteful of processing resources as the status moves through several values. So I’m going to address that issue first. Let’s create a “function-based” index that ignores most of the data, and change the code to take advantage of that index – but since this is 12c, let’s do it by adding a virtual column and indexing that column.

alter table tbl add nf_r_creation_dt invisible
generated always as (
case
when c_status in ('N','F') and cnt <= 5
then r_creation_dt
end
) virtual
/

create index tbl_i2 on tbl(nf_r_creation_dt)
/

The plan shows an index full scan on the new index. Since the index holds only those rows that might be interesting this isn’t a threat. However we still have to visit all the matching rows in the table – and that might result in more random I/O than we like. So the next step in enhancing performance is to consider adding all the columns we want to the index. There’s a little problem with that: if we add the columns as they are we will go back to having an index entry for every single row in the table so we need to use the same CASE mechanism to create more virtual columns:

It looks like a bit of a pain to go through all this rigmarole to get all those columns that are null most of the time but echo the original values when the rows match our original predicate; and then we have to modify the query to match, But the big payoff comes from the execution plan:

Notice how the SORT GROUP BY operation is a NOSORT, and the WINDOW operation is both NOSORT and STOPKEY ?

We’ve got the smallest index possible that only gets modified as rows move into, or out of, the interesting state, and when we run the query Oracle does a full scan of the index maintaining “running totals” but stop as soon as it’s aggregated enough results.
oracle  performance  dba  tutorial  tips 
9 weeks ago by some_hren
Как работает бесплатный возврат Aliexpress: ammo1 — LiveJournal
Если вы получили товар с бесплатным возвратом и он вам не понравился, необходимо сделать следующее:

Заходите в "Мой профиль" - "Мои заказы", находите нужный товар и нажимаете "Открыть спор". Появится карточка заказа, в которой ещё раз нужно нажать "Открыть спор".

Открывается окно спора. В поле "Ожидаемое решение" нужно выбрать "Возврат товара и денег", в поле "Возникшая проблема" - "Безусловный возврат", в поле "Сумма возврата" нужно вести максимальную сумму, которую предлагает система, в поле "Пожалуйста предоставьте подробную информацию о вашем запросе" нужно кратко написать, что не понравилось в товаре. Нажимаете кнопку "Запрос на местный возврат".

Через некоторое время (обычно в тот же день) в диспуте появится информация для возврата - адрес пункта возврата и слово бесплатного возврата.

Товар можно упаковать в обычный непрозрачный полиэтиленовый пакет без надписей и отнести его на почту. Там будут предлагать купить у них почтовый пакет, смело отказываетесь и говорите, что и в этом отлично дойдёт. Сообщаете, что нужно сделать бесплатный возврат Aliexpress (они же "лёгкий возврат", он же "возврат СДТ"). Вам дают квитанцию, на которой нужно написать адрес, который дал Aliexpress, и слово возврата вместо имени получателя.

Как только вы сдадите посылку на почту, статус спора изменится на "В ожидании подтверждения получения от склад".

Когда посылка доберётся до склада (в моём случае это заняло четыре дня) статус сменится на "склад confirm получил".

В тот же день деньги зачисляются на карту.
internet  shopping  tips  aliexpress 
december 2019 by some_hren
1С. Удаление журнала регистрации на сервере - Guesto.ru
# /etc/init.d/srv1cv83 stop
# rm <path>/1Cv8Log/1Cv8.lgd
# /etc/init.d/srv1cv83 start
  sysadm  tips 
december 2019 by some_hren
Бег — идеальный спорт для удаленщика. Часть 2: физика и матчасть / Блог компании Флант / Хабр
Основа же беговых тренировок — лёгкий бег трусцой (jogging), а основное условие правильности его выполнения — комфорт. Вам должно быть так же удобно, как дома на диване, а выделяющийся при беге дофамин должен поднимать настроение и вызывать лёгкую эйфорию: вы просто толкаете планету назад с ощущением, что гравитация — бессердечная дама — над вами не властна.

Основной способ добиться этого состояния — постепенное увеличение нагрузки. Возможно, на первых порах вам придётся сперва просто быстро ходить, чтобы подготовить организм. И главным показателем силы нагрузки является пульс (см. пульсовые зоны). Я начинал бегать с темпом 7 минут на километр, взяв за порог пульс 148 ударов в минуту. Первый год занятий бегом всецело был посвящен наработке аэробной базы, кардиореспираторной выносливости. Вчера мой темп при пульсе 148 составлял уже 5:30/км — теперь такой темп стал для меня лёгким.
https://nogibogi.com/heart-rate/
Кардиореспираторную выносливость нужно развивать постепенно и правильно. Для этого обычно практикуется продолжительная работа на низких пульсах в аэробной зоне, с систематическими, но редкими визитами в анаэробную (см. правило 80/20). Хороший пульсометр — вторая основная необходимая инвестиция в бег.
...
Плоскостопие даёт некоторое количество нюансов в занятии бегом, но они прекрасно нивелируются выбором правильных беговых кроссовок (см. пункт про выбор кроссовок ниже) и специальными упражнениями для укрепления свода стопы (например, скакалка).

Допустим, я вас убедил и вы решили заняться бегом. Каковы должны быть следующие шаги?..

Что нужно сделать для того, чтобы победить? Нужно поставить себя в условия, когда проигрыш невозможен:

Первый и самый важный шаг — определиться с целью. Желательно, чтобы это была конкретная цель с определёнными сроками. Например, пробежать 10 км на забеге через три месяца, полумарафон через полгода, выбежать полумарафон из 1:40 и купить слоты на нужные мероприятия (чтобы меньше было путей к отступлению). Цели вида «бегать каждый день хотя бы по пять километров для здоровья» часто работают плохо.
Второй этап — составление плана тренировок. На ранних этапах подготовки я пользовался веб-калькулятором от ASICS, который сейчас затянули в приложение Runkeeper. Он давал забавные рекомендации по поводу темпа и расстояния, при этом совершенно не учитывал пульсовые зоны и прочее. Возможно, сейчас что-то изменилось в лучшую сторону.

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

К ультрамарафонам я готовился по планам, найденным в книге Хэла Кернера и Адама Чейза «Руководство ультрамарафонца. От 50 километров до 100 миль». Многие критикуют эти планы за большие объёмы и пренебрежение интервальными и силовыми тренировками, но именно этому плану я обязан уверенным преодолением всех дистанций с результатами выше ожидаемых.

Для подготовки к московскому марафону я решил увеличить интенсивность тренировок, чтобы показать лучшие скоростные результаты, и обратился к услугам тренера, который строил еженедельный план в соответствии с текущими показателями физического состояния, следил за его соблюдением и давал рекомендации относительно тренировок.
Третий ключевой этап: чтение документации. Чтобы тренироваться эффективнее (да что там — хотя бы просто понимать, что происходит…), нужен определённый объём теории. Поэтому делаем то, что каждый IT'шник должен уметь делать хорошо: открываем поисковик и ищем информацию о технике бега, пульсовых зонах, правильной разминке, заминке, растяжке, суставной гимнастике, специальных беговых упражнениях (СБУ), каденсе, ошибках при беге (выхлест ноги, «втыкание»), пороге анаэробного обмена, закрытии углеводного окна, марафонской «стене» (и почему полумарафон считается простой дистанцией, а марафон — нет) и прочем, прочем… Прорабатываем все интересующие вопросы, от: правил похудения при беге до обзора беговых методик (например, естественный бег, правило 80/20).


Следующий этап — выбор беговых кроссовок. Это важнейшая часть экипировки атлета, от которой зависит в том числе здоровье коленей и спины. Для новичков рекомендуются беговые кроссовки с высоким уровнем амортизации. Их рекомендуется тщательно примерять, отказываясь от покупки при малейших ощущениях дискомфорта. Также важная рекомендация — брать кроссовки на полразмера / размер больше (с учетом отёка ноги при беге).

Ещё существенный момент — учет типа пронации стопы (завал внутрь или наружу) и плоскостопия. Есть модели беговые кроссовок и спортивных ортопедических стелек, которые могут это скорректировать (однако для подбора ортопедически правильной обуви нужна определённая квалификация — рекомендуется обратиться в специализированные центры по подбору кроссовок).

Для начала стоит выбрать кроссовки для бега по асфальту. Одной из основных задач на первом этапе будет постановка правильной техники бега — это стоит делать на ровной поверхности. Для бега зимой не обязательно покупать специализированные зимние кроссовки со стальными шипами (хотя есть и такие), в большинстве случаев достаточно «трейловых» кроссовок с плотным верхом, либо водонепроницаемой мембраной.

Моими первыми «марафонками» были Asics GT1000 — лёгкие мягкие кроссовки с нейтральной пронацией, которые прошли около полутора тысяч километров и сейчас используются в качестве повседневных.

Лидером по амортизации считаются кроссовки Hoka. Прошедшее лето я бегал в модели Gaviota 2… [more]
running  sport  health  tips 
december 2019 by some_hren
The Most Important Productivity Lesson I Ever Learned | Daniel Miessler
Prime Directive.

Never let tasks or ideas sit in your mind without being captured.
Capture them. Immediately.

Summary
GTD is an awesome system, but you don’t need to do the whole thing.
The most important concept is that the subconscious captures any task that you didn’t properly capture, and then it occupies your mental resouces trying to process and remind you about them.
The way to deal with this is by never letting your subconsious play that role, which you do by capturing everything yourself.
This tells your subconscious to chill—because you have it handled.
This in turn lets you have laser focus when you sit down to do a given task, and you get way more done.
...

in -> actionable ? no-> trash
yes-> ?> 2min? no-> do it!
yes-> defer (next actions, calendar)
or delegate (wait for it)
or file to projects (if > 2 actions)
gtd  productivity  tips 
december 2019 by some_hren
Moments in time
import qualified Data.Time as T
import qualified Data.Time.Clock.POSIX as T

timeToString format time =
T.formatTime T.defaultTimeLocale format time

stringToTime format string =
T.parseTimeM acceptExtraWhitespace
T.defaultTimeLocale format string
where
acceptExtraWhitespace = False

main =
do
(now_utc :: T.UTCTime) <- T.getCurrentTime
putStrLn ("Now (UTC): " ++ show now_utc)
haskell  tips 
december 2019 by some_hren
Парсинг флагов и аргументов в языке Go | Записки программиста
В этой небольшой заметке мы поговорим о том, как парсить флаги и аргументы командной строки в языке Go. Казалось бы, в стандартной библиотеке есть пакет flag — берешь и используешь. Но он плох тем, что заставляет пользователя указывать флаги в стиле -config, вместо всем привычных -c и --config. То есть, когда два знака минус используются для полного имени флага, и один знак для короткого. Кроме того, pflag не помогает обрабатывать сложные команды вроде тех, что использует утилита kubectl — get nodes, describe pods, и так далее.

Поэтому вместо стандартного pflag многие используют spf13/pflag:

Библиотека предельно проста в использовании, поэтому не будем подробно на ней останавливаться. Стоит только отметить, что в ней нет понятия «обязательного аргумента». Дело в том, что библиотека работает с флагами, а все флаги по определению опциональны. Зато в spf13/pflag есть проверка множества разных форматов. Например, можно убедиться, что пользователь указал правильный IP-адрес, и всякое в таком духе.

Аргументы часто парсятся с помощью spf13/cobra. Cobra позиционируется как фреймворк для написания CLI с интерфейсом в стиле kubectl get pods. Пример использования:
golang  library  shell  cli  tips 
november 2019 by some_hren
Некоторые тонкости управления зависимостями в Go | Записки программиста
За последние десять лет подход к управлению зависимостями в Go несколько раз переосмыслялся. Все начиналось с «просто используйте go get и никогда не ломайте обратную совместимость». Как ни странно, это не работало. Потом было «Вы все не так поняли — мы не говорили, что менеджер зависимостей не нужен, мы просто не знали, как его сделать! Попробуйте dep ensure». Dep работал уже почти хорошо. Иногда он сыпал непонятными ошибками, но обычно эти ошибки проходили с удалением файла Gopkg.lock и каталога vendor. Сейчас же на смену dep, носившему статус «официального эксперимента», пришел go mod. Это уже совсем настоящий, не экспериментальный, менеджер зависимостей. Вот о паре нюансов, связанных с использованием go mod, мне и хотелось бы рассказать.

Примечание: Для повторения описанных далее шагов вам понадобится Go версии 1.11 или старше. Крайне желательно использовать последнюю на данный момент версию 1.13, так как кое-какие детали меняются между релизами.
...
Как нужно делать на самом деле
Вендоринг (vendoring) — это когда вы складываете все зависимости приложения в каталог vendor и коммитите их прямо в свой репозиторий. Больше никаких хождений по сети. Зависимости больше не могут никуда пропасть. Жизнь стала простой и понятной. Конечно, репозиторий при этом немного разрастется. Но поскольку мы не храним историю всех изменений для зависимостей, это не так страшно.

Инициируем модуль как обычно:

go mod init github.com/afiskon/go-rest-service-example
git add go.mod

Модуль может находиться в любом каталоге. Наконец-то можно забыть про $GOPATH. Если, тем не менее, по каким-то причинам вы продолжаете держать проекты в $GOPATH, для повторения описанных далее шагов вам понадобится переменная окружения GO111MODULE=on.

Код нашего исполняемого файла будет лежать здесь:

mkdir -p cmd/rest-service-example
touch cmd/rest-service-example/main.go
Сам код:

package main

import (
"github.com/sirupsen/logrus"
)

func main() {
logrus.Infof("Hello!")
}
Тянем зависимости:

go mod vendor
git add vendor
git add go.sum
Для сборки проекта воспользуемся небольшим скриптом:

#!/bin/sh

set -e
export GOFLAGS="-mod=vendor"

go build -o bin/rest-service-example cmd/rest-service-example/main.go
Собираем приложение:

chmod u+x build.sh
./build.sh
Наконец, пушим все, включая каталог vendor, в репозиторий:

git commit -am 'Initial commit'
git push origin HEAD
Для сборки проекта с нуля достаточно склонировать репозиторий и запустить build.sh. Этот способ работает, и работает очень хорошо. Проверено.

Заключение
Используйте правильную терминологию и храните все зависимости вашего приложения в каталоге vendor, прямо в репозитории. Всегда найдутся люди, которые скажут, что такой подход ранит их чувство прекрасного. Но тут каждый сам для себя решает, что важнее — красивый код, который не компилируется и которым никто не пользуется, или рабочий продукт, приносящий радость пользователям и деньги бизнесу.
golang  tips 
november 2019 by some_hren
Некоторые подводные грабли в языке Go | Записки программиста
Все приведенные примеры можно запустить на play.golang.org.

- Когда nil не равен nil: https://golang.org/doc/faq#nil_error
- На nil можно вызывать методы: «методы» в Go — вовсе никакие не методы, а всего лишь синтаксический сахар над обычными процедурами.
- Тонкости работы defer: это не «своеобразный вызов деструктора», как о нем хотелось бы думать. Defer ничего не знает ни о каких скоупах, и указанный после него вызов всегда происходит при выходе из функции. Если defer’ов в коде было несколько, соответствующий вызовы осуществляются в обратном порядке.
...
golang  talks  tips 
november 2019 by some_hren
ШВЕЙЦАРИЯ: четыре похода и одно катание (окончание): lucas_v_leyden — LiveJournal
Тем же вечером мы переехали в Монтре. На другой день мне предстояла давно задуманная попытка объехать за один присест Женевское озеро, оно же Lac Lеman. Это весьма популярный велосипедный маршрут (входит в список главных европейских велопоходов за № 46), но рекомендации по темпу его прохождения сильно варьируются: на ежегодных официальных соревнованиях (Cyclotour de Leman) спортсмены показывают время от 4 до 9 часов, а любители едут очень по-разному: я встречал советы проезжать маршрут за два, три, а то и за пять дней (в последнем случае проще уж идти пешком, мне кажется). Дистанция эта около 170 километров с набором более 1000 метров высоты: дорога не всегда идет по берегу, а иногда забирается на близлежащие холмы.
Везти велосипед из дома смысла не было, поскольку основная часть наших занятий была все-таки горной, но в Швейцарии есть очень удобная штука - велопрокат, аффилированный с местной сетью железных дорог. В отличие от обычных городских велопрокатов с их чугунными монстрами, здесь можно заранее забронировать себе нужный тип и даже размер велосипеда - детский, городской, электрический и т.п. Шоссеров, увы, нет - но есть горный алюминиевый с 27 скоростями, который я и выбрал. Выдают их прямо на вокзалах. Поскольку я не был уверен, что впишусь в часы открытия проката, я заказал байк на два дня с тем, чтобы, если опоздаю, припарковать его где-нибудь в отельном гараже и вернуть на следующий день.
Конечно, для того, чтобы провести в седле весь день, мне нужно было взять с собой кое-какое оборудование - помимо очевидной велоодежды, я захватил из Москвы:

Полностью заряженную мощную фару;
Сигнальный задний фонарь;
Шлем;
Держатель для телефона-навигатора;
Подрулевую сумочку с аккумулятором и комплектом шнурков;
Колонку и держатель для нее;
Набор инструментов (мультитул);
Насос;
Запасную камеру на 26;
Ремкомплект;
Гидратор;
Набор гелей и шоколадных батончиков;
Аптечку.

Забегая вперед, скажу, что из всего взятого "про запас" понадобился только мультитул, но понадобился крепко - примерно на пятом километре подо мной разболталось седло, так что, будь я беззаботный евротурист, мне пришлось бы или возвращаться или голосовать на шоссе перед собратьями, а так я спешился и за пять секунд его закрепил.
...
Я сейчас в сравнительно нормальной форме (тьфу-тьфу-тьфу) - бегаю по 8-10 километров два-три раза в неделю, да и до последнего похолодания катался регулярно, так что судорог не было, даже мышцы не болели. Но устал конкретно. Вечером еле доплелся до целебной пиццы с восстанавливающим пивом.
...
На самом деле самое любимое швейцарское вино - тичинское Tre Terre, но в Вале мы закупились Porte de Novembre. Поскольку швейцарцы выпивают 97% своего вина сами, а экспортируют жалкие крохи, то приходится много экспериментировать прямо на месте:)
bike  travel  switzerland  equipment  tips 
november 2019 by some_hren
Работа с PostgreSQL на Python с помощью psycopg2 | Записки программиста
Недавно мне понадобилось сходить в PostgreSQL из скрипта на Python. Была предпринята попытка воспользоваться для этого библиотекой py-postgresql, поскольку я успешно использовал ее в прошлом. Но оказалось, что py-postgresql не работает с последними версиями постгреса. В моем случае использовался PostgreSQL 11. Ну что же, тогда не будем выпендриваться, и возьмем используемый всеми psycopg2. Поскольку интерфейс psycopg2 заметно отличается от интерфейса py-postgresql, было решено написать небольшую памятку по использованию данной библиотеки.

Как обычно в мире Python, библиотека устанавливается через pip и при желании изолируется от других проектов с помощью virtualenv:

pip3 install psycopg2-binary
В MacOS вполне достаточно этой одной команды. В Linux может потребоваться вручную подтянуть библиотеку libpq, поскольку psycopg2 построен на ее базе:

sudo apt install libpq-dev
python  postgress  howto  tips 
november 2019 by some_hren
В России вышел срок регистрации дронов. Что делать, если вы свой не зарегистрировали? - UAVDoc
В понедельник, 28 октября истекает месячный срок, отведенный правительством России для регистрации всех дронов, которые находились на руках у населения. Что будет с теми, кто не зарегистрирует беспилотник до понедельника?

Короткий ответ: ничего.

Постановление правительства не предусматривает никакого наказания для тех, кто этого не сделает, сказали Би-би-си в Федеральном агентстве воздушного транспорта России.

Но регистрация дрона — лишь полдела. Чтобы поднять любой аппарат в воздух, придется зарегистрировать владельца, согласовывать с властями каждый полет и всякий раз проходить многодневную процедуру сбора разрешений. Иначе — штраф.

За неделю до истечения срока в России были зарегистрированы 1562 дрона; отказано в регистрации, в основном, из-за ошибок в документах, 31. Всего подано заявок — 3197.

Для тех, кто опоздал, фактически действует амнистия: подтверждения покупки не требуется, и чиновники не смогут определить, когда куплен аппарат — до или после дня окончания регистрации существующих дронов.
russian  rc  drone  law  fail  tips 
october 2019 by some_hren
Downloading macOS installers with updated signing certificates on macOS Catalina | Der Flounder
As a follow-up to last week’s expiration of the certificate used to sign previously-released macOS installers, Apple has released re-signed macOS installers with the new certificate which is good until April 2029.

For those who archive older macOS installers, this means that the macOS installers in question will need to be re-downloaded. macOS Catalina has added some new functionality to the softwareupdate tool which can assist with this. For more details, please see below the jump.


To download the latest installer for macOS Catalina, which is currently at version 10.15.0, please run the command below with root privileges:

1
softwareupdate --fetch-full-installer --full-installer-version 10.15
Note: Normally the version is specified as 10.x.x, but Apple has historically listed a .0 release as 10.x. So in this case, the softwareupdate command uses 10.15 for macOS 10.15.0.

You should receive a message that the the installer is downloading and installing. In this context, the message refers to installing the macOS Installer app into the /Applications directory on the Mac.
apple  macos  install  tips 
october 2019 by some_hren
Как обойти блокировку Telegram
Как быть с t.me?
Внутри приложения ссылки вида t.me и telegram.me будут работать без проблем. Чтобы воспользоваться ей вне приложения, замените в адресе t.me на tele.gs.

Пример: tele.gs/stickroom.

Это не официальный сервис, поддерживается энтузиастами.
telegram  proxy  tips 
october 2019 by some_hren
Звонят коллекторы - что делать? | Инструкция от юриста
Как вести себя, если Вам звонят коллекторы по кредиту
Когда коллекторское агентство начало свою атаку, важно помнить: обычно методы, к которым оно прибегает, не соответствуют закону. Требование отдать деньги может быть расценено как вымогательство, а попытки дозвониться в ночное время, как хулиганство. Естественно, коллекторы это знают. Просто они пытаются давить на тех, кто не очень хорошо знаком с законом. Поэтому первый совет при общении со сборщиками долгов – знайте свои права.

Ниже представлена небольшая инструкция от юриста, которая поможет повернуть разговор в нужное русло:

Коллектора следует предупредить, что вы будете записывать разговор на диктофон. Большинство телефонов сегодня имеют такую функцию (узнать, как она работает лучше заранее). Обычно это вынуждает сборщиков долгов разговаривать вежливо и корректно;
Обязательно попросите звонящего представиться. Запишите полную информацию: ФИО и должность собеседника, название, адрес и контактные телефона агентства, сотрудником которого он является;
Далее следует уточнить, на каких основаниях действует коллектор, записать дату и номер договора между ним и вашим банком;
Осталось выяснить требования сборщика долгов – какую сумму и на каких условиях он желает получить.

Что делать, если звонят коллекторы дальше? Необходимо определиться, будет ли погашаться предъявляемый к оплате долг. Не спешите с ответом. Лучше всего собраться с мыслями, взвесить все за и против. Для этого желательно взять таймаут. Поэтому коллектору стоит сказать, что вам нужно подумать и попросить перезвонить завтра.

Чаще всего условия возврата, которые предлагают сборщики долгов, невыгодны заемщику. Поэтому обычно принимается решение не платить. В этом случае нужно с уверенностью заявить об этом, сказав, что вас не устраивают условия коллектора. Дальше следует сказать, что общаться с ними вы согласны только в суде. Напоследок следует попросить не беспокоить вас, пригрозив обратиться в полицейский участок, прокуратуру, а также Центробанк.

Специалисты не рекомендуют лицам, не имеющим юридического образования, вступать в споры. Если звонят коллекторы по кредиту, лучше всего упрямо повторять, что разговаривать с вами они могут только в суде. Если сборщики долгов упорно продолжают звонить, после 7-8 звонков нужно приступать к написанию и рассылке заявлений о вымогательстве.

Что делать, если звонят коллекторы по чужому кредиту
Как разговаривать с коллекторами, когда поступивший звонок касается чужого кредита? Тут все во многом зависит от того, почему именно звонят вам. Это возможно в следующих случаях:

Вы числитесь поручителем в кредитном договоре, но заемщик отказывается платить. В этом случае звонки сборщиков долгов вполне законны (если они не нарушают ваших прав). Лучший выход – если это возможно, найти заемщика и самостоятельно попросит его оплатить долг.
В попавшем в руки сборщика долгов договоре имеются сведения о вас как о контактном лице. Требовать что-либо в этом случае коллекторы не имеют права. Можно пригрозить подать в суд за вымогательство. Кроме того, на банк, который продал договор с вашими данными сборщику долгов, можно написать заявление за разглашение персональных данных.
Если долг, по которому звонят, к вам не имеет никакого отношения, следует собрать о нем максимум информации. Необходимо уточнить, кто является заемщиком, в каком банке оформлен кредит. Если о таком человеке вам ничего не известно, стоит обратиться в банк в попытке выяснить, как контактные данные попали в информацию о кредите. Желательно взять официальную справку, подтверждающую, что у вас долгов в этом кредитном учреждении нет, и вы не имеете к нему никакого отношения. Этот документ направляется коллекторам с заявлением о том, что ваши данные используются ошибочно.
russian  banks  law  phone  talks  tips 
october 2019 by some_hren
Статья 152.1 ГК РФ. Охрана изображения гражданина
Статья 152.1 ГК РФ. Охрана изображения гражданина (действующая редакция)
1. Обнародование и дальнейшее использование изображения гражданина (в том числе его фотографии, а также видеозаписи или произведения изобразительного искусства, в которых он изображен) допускаются только с согласия этого гражданина. После смерти гражданина его изображение может использоваться только с согласия детей и пережившего супруга, а при их отсутствии - с согласия родителей. Такое согласие не требуется в случаях, когда:

1) использование изображения осуществляется в государственных, общественных или иных публичных интересах;

2) изображение гражданина получено при съемке, которая проводится в местах, открытых для свободного посещения, или на публичных мероприятиях (собраниях, съездах, конференциях, концертах, представлениях, спортивных соревнованиях и подобных мероприятиях), за исключением случаев, когда такое изображение является основным объектом использования;

3) гражданин позировал за плату.

2. Изготовленные в целях введения в гражданский оборот, а также находящиеся в обороте экземпляры материальных носителей, содержащих изображение гражданина, полученное или используемое с нарушением пункта 1 настоящей статьи, подлежат на основании судебного решения изъятию из оборота и уничтожению без какой бы то ни было компенсации.

3. Если изображение гражданина, полученное или используемое с нарушением пункта 1 настоящей статьи, распространено в сети "Интернет", гражданин вправе требовать удаления этого изображения, а также пресечения или запрещения дальнейшего его распространения.
russian  photo  law  tips 
october 2019 by some_hren
Что делать, если ваши личные данные опубликовали в интернете Инструкция «Апологии протеста» — Meduza
Вечером 9 августа в телеграме появилась база с личными данными более трех тысяч россиян. Там обнаружили сведения о многих участниках протестных акций в Москве 27 июля и 3 августа, которых задерживала полиция. В базе в том числе присутствовала информация о журналистах, освещавших акции — не всех из них задерживали, у некоторых полиция просто требовала данные для предостережения о недопущении незаконных действий перед акциями. Известен как минимум один случай, указывающий на то, что информацию для этой базы взяли из данных полиции: задержанный сообщил полицейским вымышленный адрес регистрации — он и был записан в базу. Правозащитники из «Апологии протеста» подготовили инструкцию для тех, кто обнаружил себя в этой базе и хочет добиться расследования случившегося.

Если предположить, что действительно опубликована база данных задержанных, в этом усматриваются признаки преступлений, предусмотренных статьями 272 (Неправомерный доступ к компьютерной информации), 274 (Нарушение правил эксплуатации средств хранения, обработки или передачи компьютерной информации и информационно-телекоммуникационных сетей) и 137 (Нарушение неприкосновенности частной жизни), а если это сделано с умыслом, то и 286 (превышение должностных полномочий) Уголовного кодекса.

Чтобы добиться проверки, необходимо подать сообщение о преступлении в Следственный комитет России. Самый простой шаблон обращения выглядит так:
...
В создании базы персональных данных задержанных и ее распространение в сети интернет усматриваются признаки преступлений, предусмотренных статьями 137, 272, 274 и 286 УК.

На основании вышеизложенного,

1. Прошу организовать проверку в порядке статьи 144-145 УПК по основаниям, указанным в сообщении.
russian  government  protest  repressions  militia  privacy  fail  law  tips 
october 2019 by some_hren
Resumable | Oracle Scratchpad
There are two questions about temporary space that appear fairly regularly on the various Oracle forums. One is of the form:

From time to time my temporary tablespace grows enormously (and has to be shrunk), how do I find what’s making this happen?

The other follows the more basic pattern:

My process sometimes crashes with Oracle error: “ORA-01652: unable to extend temp segment by %n in tablespace %s” how do I stop this happening?

Before moving on to the topic of the blog, it’s worth pointing out two things about the second question:

First, it’s too easy to get stuck at the word temp and leap to the conclusion that the problem is about the temporary tablespace without noticing that the error message includes the specific tablespace that’s raised the problem. If, for example, you rebuild an index in a nominated tablespace Oracle first creates the index as a temporary segment (with a name like {starting_file_number}.{starting_block_number}) in that tablespace then renames it to match the original index name once the rebuild is complete and drops the old index.
Secondly a process that raises ORA-01652 isn’t necessarily the guilty party – it may be the victim of some other process hogging all the available space when it shouldn’t. Moreover that other process may have completed and released its space by the time you start looking for the problem – causing extra confusion because your process seems to have crashed without a cause. Taking my example of an index rebuild – your index rebuild may fail because someone else was rebuilding a different index at the same time in the same tablespace; but when you check the tablespace all the space from their original index is now free as their rebuild completed in the interim.
So, before you start chasing something that you think is a problem with your code, pause a moment to double-check the error message and think about whether you could have been the victim of some concurrent, but now complete, activity.

I’ve listed the two questions as variants on the same theme because the workaround to one of them introduces the risk of the other – if you want to avoid ORA-01652 you could make all your data files and temp files “autoextensible”, but then there may be occasions when they extend far too much and you need to shrink them down again (and that’s not necessarily easy if it’s not the temporary tablespace). Conversely, if you think your data or temp files randomly explode to ludicrous sizes you could decide on a maximum size for your files and disable autoextension – then handle the complaints when a user reports an ORA-01652.

There are various ways you could monitor your system in near real time to spot the threat as it builds, of course; and there are various ways to identify potentially guilty SQL after the event. You could keep an eye on various v$ dynamic performance views or dba_ administrative views to try and intercept a problem; you could set event 1652 to dump an errorstack (or even systemstate) for post-crash analysis to see what that reported. Neither is an ideal solution – one requires you to pay excessive attention to the system, the other is designed to let the problem happen then leave you to clean up afterwards. There is, however, a strategy that may stop the problem from appearing without requiring constant monitoring. The strategy is to enable (selectively) resumable operations.

If a resumable operation needs to allocate space but is unable to do so – i.e. it would normally be about to raise ORA-01652 – it will suspend itself for a while going into the wait state “statement suspended, wait error to be cleared” which will show up as the event in v$session_wait, timing out every 2 seconds The session will also be reporting its current action in the view v$resumable or, for slightly more information, dba_resumable. As it suspends the session will also write a message to the alert log but you can also create an “after suspend” database trigger to alert you that a problem has occurred.

If you set the resumable timeout to a suitable value then you may find:

the problem goes away of its own accord and the session resumes before the timeout is reached
or

you receive a warning and have some time to identify the source of the problem and take the minimum action needed to allow the session to resume
Implementation
The parameter resumable_timeout is a general control for resumable sessions if you don’t handle the feature at a more granular level than the system.

By default this parameter is set to zero which translates into a default value of 7,200 seconds but that default doesn’t come into effect unless a session declares itself resumable. If you set the parameter to a non-zero value all session will automatically be operating as resumable sessions – and you’ll soon hear why you don’t want to do that.

The second enabling feature for resumable sessions is the resumable privilege – a session can’t control it’s own resumability unless the schema has been granted the resumable privilege – which may be granted through a role. If a session has the privilege it may set its own resumable_timeout, even if the system value is zero.

Assume we have set resumable_timeout to 10 (seconds) through the instance parameter file and restarted the instance. If we now issue (for example) the following ‘create table’ statement:

1
2
3
4
5
6
7
8
9
create table t1 (n1, v1 )
pctfree 90 pctused 10
tablespace tiny
as
select
rownum, cast(lpad('x',800) as varchar2(1000))
from all_objects
where rownum <= 20000
/
This will attempt to allocate 1 row per block for 20,000 blocks (plus about 1.5% for bitmap space management blocks) – and tablespace tiny lives up (or down) to its name, consisting of a single file of only 10,000 Oracle blocks. Shortly after starting, the session will hit Oracle error “ORA-01652: unable to extend temp segment by 128 in tablespace TINY”, but it won’t report it; instead it will suspend itself for 10 seconds before failing and reporting the error. This will happen whether or not the session has the resumable privilege – in this case the behaviour is dictated by our setting the system parameter. If you look in the alert log after the session finally errors out you will find text like the following:

1
2
3
4
5
6
2019-10-04T14:01:11.847943+01:00
ORCL(3):ORA-1652: unable to extend temp segment by 128 in tablespace TINY [ORCL]
ORCL(3):statement in resumable session 'User TEST_USER(138), Session 373, Instance 1' was suspended due to
ORCL(3): ORA-01652: unable to extend temp segment by 128 in tablespace TINY
2019-10-04T14:01:23.957586+01:00
ORCL(3):statement in resumable session 'User TEST_USER(138), Session 373, Instance 1' was timed out
Note that there’s a 10 (plus a couple) second gap between the point where the session reports that it is suspending itself and the point where it fails with a timeout. The two-extra seconds appear because the session polls every 2 seconds to see whether the problem is still present or whether it has spontaneously disappeared so allowing the session to resume.

Let’s change the game slightly; let’s try to create the table again, but this time execute the following statement first:

1
alter session enable resumable timeout 60 name 'Help I''m stuck';
The initial response to this will be Oracle error “ORA-01031: insufficient privileges” because the session doesn’t have the resumable privilege, but after granting resumable to the user (or a relevant role) we try again and find we will be allowed a little extra time before the CTAS times out. Our session now overrides the system timeout and will wait 60 seconds (plus a bit) before failing.The “timeout” clause is optional and if we omit it the session will use the system value, similarly the “name” clause is optional though there’s no default for it, it’s just a message that will get into various views and reports.
oracle  sql  dba  troubleshoot  tips 
october 2019 by some_hren
Gathering information to troubleshoot site issues – Cloudflare Support
A HTTP Archive (HAR) records all web browser requests including the request and response headers, the body content, and the page load time.

A HAR file can include sensitive details such as passwords, payment information, and private keys. Manually remove sensitive information from a HAR file via a text editor before providing to Cloudflare Support.
Currently, only Chrome and Firefox can access the HAR feature by default. Other browsers either require a browser extension or cannot generate a HAR. When installing a browser extension, follow the instructions from the extension provider.

▼ In Chrome
1. In a browser page, right-click anywhere and select Inspect Element.
2. The developer tools either appear at the bottom or left side of the browser. Click the Network tab. 
3. Check Preserve log.
4. Click record.
5. Browse to the URL that causes issues. Once the issue is experienced, right click on any of the items within the Network tab and select Save all as HAR with Content.
6. Attach the HAR file to your support ticket.
web-development  browser  troubleshoot  tips 
september 2019 by some_hren
Общие инструкции по электоральному поведению: _niece — LiveJournal
некоторые общие инструкции по электоральному поведению.

1. Не существует никакой единой тактики, пригодной для любых выборов в любой политический момент. Метафора, которая вам понравилась - "я не играю с шулерами" или "я лягушка, взбивающая из молока масло" - это не принцип, а попытка, подумав о%D
russian  government  election  tips  talks 
september 2019 by some_hren
"Как ясен Август, нежный и спокойный, / Сознавший мимолетность красоты": lucas_v_leyden — LiveJournal
тистику, рассудили, что большая часть покупателей таких велосипедов проезжает 100-200 километров за сезон, так что нечего ради них и стараться. В результате велосипед требует частого техобслуживания, которое в основном сводится к замене отслуживших деталей: так, в июле мы заменили цепь, кассету, передние звезды, перебрали обе втулки - и, кажется, цепь уже снова намекает, что как бы пора. При этом он, как и любая машина, тесно взаимодействующая с человеком, представляет собой уже не столько механизм, сколько организм, так что часть возникающих симптомов склонна к самоизлечению или врачуется немедицинскими методами. Так, например, иногда он любит поскрипеть откуда-то снизу (велосипед - штука сложнорезонирующая, так что определить источник скрипа непросто). Звук этот как появляется, так и исчезает - и, пока доедешь до мастерской, предъявить уже оказывается нечего. Но опытным путем выяснилось, что звук этот убирается проездом по луже, хотя бы самой маленькой, причем даже медленным, без брызг: Монтэгю не то, чтобы нуждается во влажной смазке, а ему просто хочется катнуть по мокренькому - и он немедленно перестает скрипеть.
...
По сравнению с заводским вариантом в мой экземпляр внесены некоторые изменения, каждое из которых, как в компьютерной игре, добавляет несколько процентов к умениям (или скиллам, как говорили в старину) героя. Вот наиболее важные из них.
1. Резина (+ 10 % к скорости, + 10 % к силе, + 10 % к дистанции). Все горные велосипеды комплектуются на заводе брутальной шипастой резиной, назначение которой - подчеркивать мужественность его владельца (или - по контрасту - женственность владелицы). В практическом смысле нужна она только в тот редкий миг, когда грунтовку еще развезло, но ехать еще можно: обычно это 100-200 метров, после чего вам все равно придется тащить велосипед на руках. Поэтому я без тени сожаления поменял грубые издательские покрышки на полуслики Schwalbe Hurricane - легкие, бесшумные, с отличным накатом по асфальту и предсказуемым поведением на грунте. Накачиваю я их почти до верхней границы, чтоб лучше катили - хотя на гравии из-за этого сильно трясет.
2. Грипсы, сиречь держалки (+ 10 % к комфорту). В принципе, велосипедист обычно парит в воздухе, касаясь грешной земли лишь в пяти местах, и то опосредованно - и все эти пять точек опоры склонны к физическому страданию. На заводе обычно ставят самые простые резиновые грипсы, которые неудобны и нехороши: я заменил их на толстенькие кожаные хваталки Brooks, от которых рука не мерзнет и не затекает. Впрочем, дело это на любителя - есть много разных форм и вкусов; я же полностью доволен имеющимися.
3. Седло (+ 200 % к комфорту). У кожаного седла Brooks множество недостатков: оно дорогое, боится дождя, нуждается в смазке особым кремом, поскрипывает, марает светлую одежду и т.д. - но оно единственное из известных мне, которое позволит вам проехать на велосипеде двенадцать часов, не испытав в том месте, которым вы к нему повернуты, ни малейшего недомогания. Я использую модель Flyer, которая оборудована дополнительными пружинками, но бывают они самыми разнообразными (и даже пластиковыми для вегетарианцев). Сзади на седле укреплен один красный отражатель и маленький красный же фонарик, склепанный заботливыми китайскими безымянными руками. В темноте он один будет представительствовать за вашу сумрачную фигуру перед попутными водителями.
4. Контактные педали (+ 20 % к силе, + 10 % к скорости, + 10 % к дистанции). Взгляните на бедро Афродиты Книдской (или ее любого земного воплощения, которое окажется неподалеку). Вы с интересом увидите, что мышцы, заведующие разгибанием ноги (т.е. те, от которых зависит прежде всего движение бегуна, ходока или велосипедиста) зрительно намного меньше, чем те, которые занимаются сгибанием (и на которых приходится самая ничтожная часть нагрузки). Сделано это так, вероятно, для красоты, как и многое в окружающем мире - но контактные педали позволяют использовать это обстоятельство в практических целях, поскольку накрепко зацепляют облаченную в специальный ботинок ногу. Таким образом, прикладываемая к педалям нагрузка равномернее распределяется между всеми наличными мышцами, что существенно экономит силы. Главный их недостаток - надо все время помнить, что ноги приделаны к велосипеду намертво и не забывать выщелкнуться перед остановкой, а иначе можно свалиться. В городе, где много всего отвлекающего и куча светофоров, я обычно их не использую, но на длинных дистанциях они очень кстати.
5. Впереди на руле висит маленькая сумочка Deuter, в которой лежит полностью заряженный power bank на 20 000 и два (основной и запасной) зарядных провода для айфона. Справа от нее прицеплена держалка для телефона: даже такую элементарную вещь не очень просто подобрать: одна не прикручивается в нужном положении, другой экземпляр норовит выронить телефон при тряске, третья стоит как автомобиль… В результате я остановился на безымянном экземпляре, который держит телефон двумя боковыми клешнями и четырьмя резинками - только это гарантирует, что при скоростном спуске с горы он не вырвется и не улетит. В нем укреплен старый смартфон с узкой специализацией - на него закачана прорва оффлайновых карт и много доброй хорошей музыки, так что в основном он работает в режиме навигатора и фонотеки. Второй (основной) телефон едет в кармане и используется как фотоаппарат. Вообще вопрос навигации, почти избыточный в цивилизованных местах, на лесных грунтовых тропах приобретает первостепенное значение: весь север Лапландии изрезан сеткой лесовозных дорог, почти полностью безлюдных и лишенных указателей: здесь вполне нормально за шесть часов и … [more]
finland  bike  equipment  tips  velo 
september 2019 by some_hren
Алгоритм спасения DJI Phantom / Mavic / Inspire в сильный ветер - Дневники - RC Форум
1. Если уж, вопреки здравому смыслу, вы взлетели в сильный ветер, постоянно контролируем горизонтальную скорость и положение коптера на карте. Особенно нужно помнить, что на разных высотах разный по силе ветер, а в горах сила и направление ветра может резко поменяться.
2. Если вы заметили, что даже в спорт режиме (для фантома 3 в Atti) стик тангажа (питч, движение вперед) наклонен до упора, а коптер очень медленно летит или даже летит назад (это видно по значению горизонтальной скорости и положению на карте) или вы бросили все стики и коптер должен держать точку, а он дрейфует в режиме P, - ваш коптер в опасности и его надо спасать.
3. Ни в коем случае не включаем RTH, вы только потеряете время и повысите шансы потерять коптер! Первым делом снижаем высоту полета до чуть выше уровня препятствий (строений, деревьев). Как правило, чем ниже к поверхности, тем слабее ветер. Но помним, ру фантома/мавика требует прямой видимости, иначе включится возврат домой RTH. Если ветер очень сильный на любой высоте, как на видео, коптер в режиме RTH на точку Дом не вернется, его будет сносить и в итоге вы его потеряете. Если внизу ветер заметно тише, то можно попробывать нажать RTH, перевести дыхание и следить за перемещением коптера.
4. Если коптер лететь не может (его сносит), но точку держит, его можно завесить в этой точке и немедленно отправится к нему. Для этого возможно придется включить в настройках DJI go: general settings - advanced settings - failsafe mode - режим HOVER. Его ни кто не украдет, вы его сможете посадить когда доберетесь до него. Но для этого варианта есть всего несколько минут, в зависимости от заряда батареи. Если коптер в километре и более от вас, в неизвестной местности, то этот вариант неподходит.
5. Если коптер лететь не может, и даже не держит точку, и он далеко от вас, то ничего не остается делать как искать место экстренной посадки и сажать коптер. Итак, вы осмотрелись, нашли место посадки, зависли над ней. Сесть вы там просто так не сможете, при посадке наверняка пропадет РУ и включится возврат домой. Чтобы коптер сел, нужно
- или задать новую точку Дом в текущем местоположении коптера (пару кликов по экрану DJI Go, значек "треугольник"), и сразу опустить вниз стик газа, чтобы посадить коптер. Здесь главное, чтобы коптер не вылетел из круга, радиусом 20м, иначе он не пойдет на посадку, а начнет выполнять RTH с подьемом до высоты возврата, его еще дальше унесет и прости прощай.
- или самый надежный способ: включить в настройках DJI go: general settings - advanced settings - failsafe mode - режим LANDING. И сажать коптер до потери связи, дальше он сам аккуратно сядет в этом месте.
6. Делаем скриншот экрана смартфона/планшета с картой в Dji go на всякий случай, и не выключая пульт и смартфон/планшет незамедлительно направляемся к месту экстренной посадки коптера. На карте DJI Go видно где вы находитесь и последнее местоположение коптера.

На будущее если коптер не справляется с ветром. Поднимитесь выше и после резко спускаясь летите к себе галсами - елочкой . Аппарат вернете в целостности и сохранности не придется его. искать в полях. Ловил такую фигню на фантике несколько раз, внизу ветер был метров 5 а на высоте уже в 70 метров метров 12 наверное.
dji  mavic  quadrocopter  RC  tips  troubleshoot 
september 2019 by some_hren
Алгоритм поведения пилота квадрокоптера DJI в местах сильных помех РУ и гпс/глонасс - Дневники - RC Форум
Данный алгоритм лишь уменьшит вероятность не потерять дрон в зоне помех!

1. Клеим номер своего телефона на видном месте на дроне. Если есть трекер, активируем его.
2. Выставляем правильную высоту возврата выше самой высокой точки в районе полета
3. Выставляем RTH режим Landing
4. Взлетаем строго над собой и тщательно смотрим на все предупреждения на экране. Если планируем летать на высоте 50метров, на разведку подлетаем в 2 раза выше, потом снижаемся.
5. Если предупреждений нет, то переключаем RTH в return-to-home. Режим hover используем только там, где есть вероятность залететь за какоето очень высокое строение или башню (телебашня, небоскреб и тд) и где нет вероятности глушения сигнала gps.
6. Если на определенной высоте начался вал предупреждений о магнитной интерференции, автопереход в atti, и пропадает сигнал ру - немедленно приземляемся.
7. Летаем строго в пределах прямой видимости, постоянно отслеживая сообщения и предупреждения.
8. В случае появления сообщений достаточно далеко первым делом снижаемся до минимально возможной высоты, летим в сторону точки Дом. Внимательно смотрим на сообщения и качество ру. Иногда лучше зависнуть, выставить rth hover и подойти к дрону самому, чем опять влетать в опасную зону.
9. В крупных городах не пользуемся кнопкой RTH, приводим дрон в точку Дом только в ручную, по карте, по ориентирам.
10. Никогда не выходим на полеты с разряженным пультом или смартфоном.

При любой опасности бегаем за дроном, не стесняемся

В ветренные дни и в особо стремных местах проводим предварительную разведку скорости и направления ветра на рабочей высоте:
- подлетели над собой на рабочую высоту, зависли на 5-10 секунд, приземлились. Синхронизировались с платным аккаунтом на airdata.com и получили точную картину происходящего."
dji  mavic  mavic_air  troubleshoot  tips 
september 2019 by some_hren
Spam In your Calendar? Here’s What to Do. — Krebs on Security
The truth is, all that a spammer needs to add an unwelcome appointment to your calendar is the email address tied to your calendar account. That’s because the calendar applications from Apple, Google and Microsoft are set by default to accept calendar invites from anyone.

Calendar invites from spammers run the gamut from ads for porn or pharmacy sites, to claims of an unexpected financial windfall or “free” items of value, to outright phishing attacks and malware lures. The important thing is that you don’t click on any links embedded in these appointments. And resist the temptation to respond to such invitations by selecting “yes,” “no,” or “maybe,” as doing so may only serve to guarantee you more calendar spam.

Fortunately, the are a few simple steps you can take that should help minimize this nuisance. To stop events from being automatically added to your Google calendar:

-Open the Calendar application, and click the gear icon to get to the Calendar Settings page.
-Under “Event Settings,” change the default setting to “No, only show invitations to which I have responded.”

For Apple calendar users, log in to your iCloud.com account, and select Calendar.

-Click the gear icon in the lower left corner of the Calendar application, and select “Preferences.”
-Click the “Advanced” tab at the top of the box that appears.
-Change the default setting to “Email to [your email here].”
apple  google  calendaring  calendar  spam  tips 
september 2019 by some_hren
Как заставить государство заплатить 10 тысяч евро за задержание на митинге. Инструкция — Meduza
Подготовьте и отправьте жалобу в ЕСПЧ
Жалоба подается в течение полугода после решения суда второй инстанции. В ЕСПЧ можно пожаловаться на нарушение следующих прав, гарантированных Европейской конвенцией о защите прав человека:

права на выражение мнения (статья 10)
права на мирное собрание (статья 11)
права на свободу и личную неприкосновенность (статья 5)
права на справедливое судебное разбирательство (статья 6)
права на запрет бесчеловечного и унижающего достоинство обращения (статья 3)
Подготовку жалобы лучше доверить юристу. Это может стоить несколько сотен тысяч рублей, но правозащитники делают это бесплатно. Можно обратиться в Правозащитный центр «Мемориал», можно в «ОВД-Инфо», можно в другую правозащитную организацию. Само обращение в ЕСПЧ бесплатно.
russian  protest  militia  law  tips 
august 2019 by some_hren
Туризм и фотография
4. Все элементы в кадре должны взаимодействовать

Это нужно постоянно держать в голове. Как только я вспоминаю про эту мантру, я начинаю снимать в пять раз лучше. Это единственный закон композиции, который действительно стоит постоянно помнить и чтить.
photo  tips 
august 2019 by some_hren
Готовимся к расследованию инцидентов / Блог компании Ростелеком-Солар / Хабр
В этой статье мы поделимся типовыми сценариями расследования инцидентов, связанных с вредоносным ПО, расскажем, что искать в логах, и дадим технические рекомендации в отношении того, как настроить средства защиты информации, чтобы повысить шансы на успех расследования.
...
Сценарий 1
У вас есть подозрение, что некритичная система была скомпрометирована вредоносным ПО. Ввиду некритичности системы на проверку отведено совсем немного времени.
Первое, что делают большинство инженеров реагирования, — запускают проверку антивирусом. Однако, как мы знаем, антивирус не так уж сложно обойти. Поэтому стоит сформировать и проработать следующую высоковероятную версию: вредоносное ПО представляет собой отдельный исполняемый файл или службу.

В рамках проработки этой версии следует выполнить три простых действия:

Отфильтровать журнал Security по событию 4688 — так мы получим список всех запускавшихся процессов.
Отфильтровать журнал System по событию 7045 — так мы получим список установок всех служб.
Определить новые процессы и службы, которых раньше в системе не было. Скопировать эти модули и проанализировать их на предмет наличия вредоносного кода (просканировать несколькими антивирусами, проверить действительность цифровой подписи, декомпилировать код и т.п.).
(https://eventlogxp.com/)
В теории это достаточно тривиальный процесс. Однако на практике встречается ряд подводных камней, к которым следует подготовиться.

Во-первых, стандартная настройка аудита Windows не логирует факты запуска процессов (событие 4688), поэтому его надо включить заблаговременно в доменной групповой политике. Если же так получилось, что этот аудит не был включен заранее, можно попробовать получить список исполняемых файлов из других артефактов Windows, например, из реестра Amcache. Извлечь данные из этого файла реестра можно с помощью утилиты AmcaheParser.
https://github.com/EricZimmerman/AmcacheParser
Однако этот метод не очень надежен, поскольку он не дает точной информации о том, когда конкретно и сколько раз запускался процесс.

Еще одна особенность Windows заключается в том, что аудит командной строки запускаемого процесса производится отдельной настройкой доменной групповой политики: Computer Configuration -> Policies -> Administrative Templates -> System -> Audit Process Creation -> Include command line in process creation events. При этом довольно популярная Windows 7/2008 не логирует командную строку без установленного обновления KB3004375, поэтому поставьте его заранее.

Если же так получилось, что вы заранее ничего не настроили или забыли про обновление, можно попытаться узнать расположение скрипта в файлах Prefetch (утилита в помощь). В них содержится информация о всех файлах (в основном DLL), загруженных в процесс в первые 10 секунд жизни. И скрипт, содержащийся в аргументах командной строки интерпретатора, наверняка будет присутствовать там же.
https://www.forensicswiki.org/wiki/Prefetch
https://github.com/EricZimmerman/Prefetch

Но и этот метод совсем не надежен — при очередном запуске процесса кеш Prefetch перезатрется.

Подготовка к расследованию:

Включите расширенный аудит создания и завершения процессов.
Включите логирование аргументов командной строки процессов.
Установите обновление KB3004375 на Windows 7/Server 2008.
forensic  exploit  security  sysadm  windows  tips 
july 2019 by some_hren
Developers don't understand CORS - Chris Foster
So what would a secure implementation of this feature look like? The webserver listening in on localhost:19421 should implement a REST API and set a Access-Control-Allow-Origin header with the value https://zoom.us. This will ensure that only Javascript running on the zoom.us domain can talk to the localhost webserver. Further, to stop pages being able to open Zoom meetings automatically in the background zoom.us should have a Content Security Policy header that blocks rendering within an iframe.
security  tips  rest  web-development 
july 2019 by some_hren
Митинг | Команда 29
12 июня в России пройдут очередные митинги. На акциях 26 марта и 29 апреля людей швыряли в автозаки, не выпускали из ОВД, писали протоколы под копирку или отказывались выписывать их вовсе. Рассказываем, что делать, если вас свинтили на митинге, от момента задержания до жалобы в ЕСПЧ.
russian  protest  law  tips  cheatsheet 
july 2019 by some_hren
«Сгоревшие» сотрудники: есть ли выход? / Блог компании Badoo / Хабр
Итак, выгоревший человек — человек, постоянно находящийся в подавленном состоянии. В его голове крутятся негативные мысли, а когнитивные искажения мешают ему выйти из этого порочного круга негатива:

мозг выгоревшего сотрудника всячески намекает ему, что необходимо менять привычный уклад жизни — отсюда прокрастинация и неприятие своих обязанностей;
такой человек прекрасно вас слышит, но не понимает, потому что у него другие ценности, он воспринимает мир через другую призму;
ему бесполезно говорить: «Улыбайся, солнышко же светит! Всё же хорошо, чего ты!» — такой разговор, наоборот, может ещё глубже погрузить его в негатив, ведь с логикой у него всё в порядке и он помнит, что солнышко и всё остальное раньше его радовали, а теперь — нет;
считается, что такие люди имеют более трезвый взгляд на вещи, поскольку у них нет розовых очков, они прекрасно подмечают весь негатив вокруг вас. В то время как люди, нацеленные на позитив, таких вещей могут просто не замечать.

Есть такой замечательный анекдот. Едет мужик на новой машине мимо психбольницы, и у неё отваливается колесо. Есть запаска, но беда в том, что вместе с колесом улетели в кювет и болты. Мужик стоит и не знает, что делать. На заборе сидят несколько больных. Они ему говорят: «А ты возьми по болту с остальных трёх колёс и прикрути запаску. Не быстро, но всё же доедешь до ближайшего сервиса». Мужик говорит: «Да это же гениально! Что вы все здесь делаете, раз так прекрасно умеете думать?». А они ему отвечают: «Чувак, мы психи, а не дебилы! С логикой у нас всё в порядке». Так вот у наших выгоревших ребят с логикой тоже всё в порядке, не забывайте об этом.

Следует особо отметить, что ставшее сегодня популярным слово «депрессия» — это другое. Депрессивное расстройство личности — вполне себе медицинский диагноз, который может поставить только врач. И когда вам грустно, но после мороженки и ванны со свечами и пеной всё прошло — это не депрессия. Депрессия — это когда вы лежите на диване, понимаете, что уже три дня ничего не ели, в соседней комнате что-то горит, а вам всё равно. Если вы наблюдаете у себя что-то подобное, немедленно обратитесь к врачу!
job  management  burnout  tips  psychology 
july 2019 by some_hren
index on temp table is not parallelized | Oracle mechanics
— т.е. текст запроса форсирует /*+ PARALLEL(8) */, а DBMS_XPLAN.DISPLAY использует DOP 1 because of hint (*) => когнитивный диссонанс detected)

К счастью, ответ легко находится в частичных трейсах оптимизатора:

SQL> alter session force parallel query parallel 8;

Session altered.

SQL> alter session set events 'trace [SQL_Parallel_Optimization.*]';

Session altered.

SQL> alter session set events 'trace [SQL_Parallel_Compilation.*]';

Session altered.

SQL> explain plan for
2 WITH SubQuery_Fact AS
...
21 SELECT /*+ PARALLEL(8) */
...

Explained.

[host trace]$ less OEBS_ora_494.trc
oracle  performance  troubleshoot  dba  tips 
july 2019 by some_hren
DB links | Oracle Scratchpad
rem
rem Script: db_link_usage.sql
rem Author: Jonathan Lewis
rem Dated: July 2019
rem
rem Last tested
rem 12.2.0.1 -> 11.2.0.4
rem

prompt ==================================
prompt SQL*Plus 20,000 rows, arraysize 20
prompt ==================================

set feedback only
set arraysize 20

execute snap_my_stats.start_snap
execute snap_events.start_snap
select * from all_objects@d11g where rownum <= 20000;

set feedback on
execute snap_events.end_snap
execute snap_my_stats.end_snap

prompt ====================================
prompt SQL*Plus 20,000 rows, arraysize 2000
prompt ====================================

set feedback only
set arraysize 2000

execute snap_my_stats.start_snap
execute snap_events.start_snap
select * from all_objects@d11g where rownum <= 20000;

set feedback on
execute snap_events.end_snap
execute snap_my_stats.end_snap

Doing a little arithmetic (and allowing for a few “metadata” messages that introduce small variations in the numbers), we can see that when we fetched the 20,000 rows with an arraysize of 20 this turned into 1,000 (fetch) calls from SQL*Plus to the server, with a matching 1,000 calls from the local server to the remote server. When the arraysize goes up to 2,000 rows, though, the SDU (session data unit) setting for SQL*Net is too small to hold the whole of a single fetch and we see a single fetch from SQL*Plus turning into one “SQL*Net message to client” accompanied by 7 or 8 “SQ:(Net more data to client” with exactly the same pattern of conversation between the local server and the remote server. You could imagine the conversation as something like:

Client to local server: “give me 2,000 rows”
local server to remote server: “give me 2,000 rows”
remote server to local server: “Here, I can manage 120 rows as the first installment”
local server to client: “Here’s a first installment”
Client to local server: “Got it, where’s the rest?” *** but no message recorded in the session activity stats
Local server to remote server: “Where’s the rest?”
Remote server to local server: “You want more – here’s another 120 rows”
Local server to client: “Here’s a second installment”
Client to local server: “Got it, where’s the rest?” *** but no message recorded in the session activity stats
etc.

In this example the volume of data sent back to the client in each message was limited by the SDU size negotiated between the local server and the remote server as the link opens. In my case I happened to have the default (apparently 8KB) as the SDU_SIZE in the 12c and a non-default 32KB setting in the 11g sqlnet.ora, so the negotiated SDU between servers was 8KB (the lower of the two).

Summary Note
Oracle will use the negotiated SDU to do array fetches across a database link. Since a larger arraysize can (for large volumes of data) reduce the total work load on the remote database and on the network you may want the local server to have a specifically crafted tnsnames.ora entry and the remote server to expose a specific service with matching SDU size to help improve the efficiency of transferring data between two databases.
oracle  performance  tips 
july 2019 by some_hren
Полицейский на улице требует вывернуть карманы и показать переписку в телефоне. Что делать? — Meduza
В каких случаях полицейский может остановить меня на улице?
По закону «О полиции» полицейские могут проверить ваши документы на улице в трех основных случаях:

подозрение в совершении преступления
проверка по базе розыска
проверка на причастность к административному правонарушению
При этом сотрудник полиции обязан представиться и показать удостоверение — если он отказывается это сделать, вы можете не показывать документы — наоборот, звоните по номеру 112 и сообщайте, что какой-то неизвестный человек пытается проверить ваши документы.

Если подозрения не подтвердились, вас должны сразу отпустить — но в некоторых случаях полиция может попытаться все равно отвести вас в отделение. Не стоит сопротивляться, упираться, кричать — это может быть расценено как неповиновение законным требованиям полиции. Напротив, лучше продемонстрировать знание своих прав и законов.

Меня могут обыскать прямо на улице?
Да. По тому же закону «О полиции» полицейские имеют право проводить осмотр и досмотр граждан. Разница между этими процедурами в добровольности.

Осмотр проводят для обеспечения общественной безопасности, например при проходе в места публичных мероприятий или на охраняемые объекты. От проведения осмотра можно отказаться — но в этом случае вас могут не пустить на мероприятие. В законодательстве процедура осмотра сформулирована расплывчато, но если полицейские под этим предлогом пытаются залезть к вам в карманы или заставить открыть багажник, можно считать это попыткой досмотра и требовать понятых и составления протокола.

Досмотреть вас и вашу машину полиция может, если вас подозревают в совершении административного правонарушения или у полиции есть данные, что у вас при себе оружие, наркотики и так далее. Досмотр могут проводить сотрудники МВД и другие правоохранители. Отказаться от досмотра нельзя, проводить его могут где угодно — хоть на улице, хоть в метро, хоть в такси. При досмотре обязательно должны присутствовать понятые, проводить его должен сотрудник вашего пола.

Еще есть понятие личного обыска. Как и обыск жилища, это термин из уголовно-процессуального кодекса, его можно проводить только в отношении тех, у кого официально статус подозреваемого или обвиняемого по уголовному делу. Опять же, обязательно в присутствии понятых с составлением протокола.

Полицейский имеет право потребовать разблокировать телефон?
Нет. В законодательстве не прописана обязанность гражданина предоставлять полицейским пароль от телефона или показывать его содержимое. Более того, закон защищает тайну переписки — право на нее может быть ограничено только по решению суда. Закон можно трактовать так: требование разблокировать телефон — это посягательство на право на тайну переписки, допустимое только с санкции суда, поэтому отказ дать пароль нельзя рассматривать как неповиновение законным требованиям сотрудника полиции.

Но физически отдать телефон все равно придется — в рамках процедуры досмотра полицейский может его осмотреть, но не может разбирать или ломать. В любом случае не помешают сложный пароль на телефоне, выключение функции Face-ID и Touch-ID на айфонах, пароли в мессенджерах. Подробнее о том, как защитить свою переписку, «Команда 29» рассказывала в памятке «Информационная самооборона».

После массовых жалоб на проверку личной переписки в 2018 году МВД подтвердило, что полицейский не имеет права требовать разблокировать телефон, и призвало жаловаться на таких сотрудников в прокуратуру и управление собственной безопасности. Ведомство даже составило памятку о том, как правильно пожаловаться на нарушения, а «Команда 29» объясняла, как правильно составить заявление и добиться, чтобы его приняли.
https://team29.org/keep_privacy/
https://xn--b1aew.xn--p1ai/mvd/structure1/Glavnie_upravlenija/%D0%B3%D1%83%D1%81%D0%B1/%D0%BF%D0%B0%D0%BC%D1%8F%D1%82%D0%BA%D0%B0-%D0%BE-%D0%BF%D0%BE%D1%80%D1%8F%D0%B4%D0%BA%D0%B5-%D0%B4%D0%B5%D0%B9%D1%81%D1%82%D0%B2%D0%B8%D0%B9
https://team29.org/knowhow/crime/
russian  militia  howto  law  tips 
july 2019 by some_hren
Как помочь близкому человеку, которого задержали по статье о наркотиках. Инструкция — Meduza
Статью 228 Уголовного кодекса о незаконном обороте наркотиков называют «народной» — реальные сроки по ней в российских колониях отбывают около 130 тысяч человек, это четверть всех заключенных в стране. Несмотря на случай корреспондента «Медузы» Ивана Голунова, который явно показал, что дела по 228-й могут возбуждать буквально на пустом месте против ничего не совершивших людей, президент Владимир Путин объявил: либерализовать эту статью не будут, «потому что угроза для страны, нации, нашего народа очень велика». Это означает, что никто не застрахован от того, чтобы так или иначе столкнуться со статьей 228. «Медуза» вместе с адвокатом «Правозащиты Открытки» Павлом Ясманом рассказывает, что делать, если близкого человека задержали по подозрению в хранении или распространении наркотиков.
russian  militia  crime  drugs  law  fail  tips 
july 2019 by some_hren
ПУНП - Провод Универсальный Плоский
ПУНП
Что такое ПУНП?
Документы
Комментарии экспертов
Фотографии
Случаи нарушения
Сообщить о нарушении
Новости
О проекте ПУНП.РФ
asasAS
© 2012 RusCable.Ru
Ваши предложения и помощь проекту ПУНП.РФ
продаёшь - рискуешь свободой!

покупаешь - рискуешь жизнью!

Что такое ПУНП?
ПУНП – это Провод Универсальный Плоский.

В аспекте данного проекта четыре буквы ПУНП – это не только марка опасного провода, а скорее – имя нарицательное всей некачественной и просто опасной кабельно-проводниковой продукции, занимающей существенную долю на рынке России.

Цель этого сайта? В первую очередь - борьба за жизнь и имущество потребителя. И во-вторую - неотвратимость наказания!

Ознакомьтесь с информацией, которая может обезопасить Вас при выборе кабельно-проводниковой продукции.

Однако, возвращаясь к аббревиатуре ПУНП можно отметить следующее:
Статистистические данные показывают, что число пожаров, аварий на электростанциях и в электрических сетях энергосистем, аварий на подвижном составе транспорта, произошедших по вине кабельных изделий, составляет 60% от общего числа пожаров и аварий, произошедших от электротехнических изделий. Причинами высокой потенциальной опасности кабелей и проводов зачастую является конструктивное использование с нарушениями требований стандартов, применение несоответствующих материалов, в том числе вторичного сырья. Весьма опасным «образцом» таких кабельных изделий являются провода бытового назначения марок ПУНП, АПУНП, ПБНГ и др. по ТУ 16.К13-020-93.

Нормированное в ТУ электросопротивление жил не соответствует требованиям ГОСТ 22483-77 на жилы, что позволяет выпускать провода с фактическим сечением жил до 30% ниже номинального (указанного на ярлыке) сечения, что при эксплуатации однозначно приводит к аварийным ситуациям. Нормированная в ТУ толщина изоляции и оболочки (не менее 0,3 мм) не соответствует требованиям ГОСТ 23286-78 на нормы толщин, что не обеспечивает требуемой электрической безопасности. Применение для изоляции полиэтилена (ПУНР, ТРБН и др.) не обеспечивает требуемой пожаробезопасности.

Вопрос о необходимости прекращения выпуска этой опасной продукции неоднократно обсуждался.

На одном из общих собраний членов Ассоциации «Электрокабель», принято окончательное решение об аннулировании ТУ 16.К13-020-93 и прекращении выпуска и реализации указанных проводов. В соответствии с поручением в Протоколе No 47 собрания членов Ассоциации «Электрокабель ОАО «ВНИИКП» оформлено извещение К71.786-2007 об аннулировании ТУ 16.К13-020-93 без замены с введением в действие с 01.06.2007 г.
russian  home  countryhouse  electricity  tips  safety  law  fail 
june 2019 by some_hren
Схватка века: ТУ против ГОСТ: ammo1 — LiveJournal
Я купил два пятиметровых мотка провода одного производителя. Первый - 2х2.5 ТУ, второй - 2Х1.5 ГОСТ. Как вы думаете, у какого из них больше реальное сечение? ;)

Я уже не раз писал о том, что в России сложилась удивительная ситуация с кабелями и проводами. Есть "ГОСТовские" кабели и провода, сечение которых согласно ГОСТ 22483 занижено на 7-10% (ammo1.livejournal.com/1054644.html), то есть, к примеру вместо полутора квадратных миллиметров жилы делают сечением чуть меньше 1.4 мм². Но это ещё "цветочки".

"Ягодки" - это кабели и провода "по ТУ". У них сечение иногда занижают и вдвое. В мае я изучал провод ПУГНПбм 2x1.5 Орловского кабельного завода. Его фактическое сечение оказалось вдвое меньше указанного - 0.75 мм² вместо 1.5 (ammo1.livejournal.com/1043045.html).

Провода, которые я купил, сделаны на том же заводе (я бы с удовольствием проверил бы продукцию другого производителя, но и в Леруа Мерлен и в Кастораме почти все кабели орловские). Первый - "Мастер тока" ПУГНПбм 2х2.5 мм 5 м ТУ а 136 рублей, второй - "ГОСТок" ПВСн 2х1.5 мм ГОСТ 5 м за 171 рубль. Если сравнить "на глаз", "ТУшный" 2.5 (слева) явно не толще "ГОСТовского" 1.5 (справа).

Сопротивление пяти метров одного из проводов ПУГНПбм 2х2.5 составило 64 мОм (1 км - 12.8 Ом). Такое сопротивление соответствует сечению медного провода 1.33 мм².

Сопротивление пяти метров одного из проводов ПВСн 2х1.5 составило 65 мОм (1 км - 13 Ом). Такое сопротивление соответствует сечению медного провода 1.31 мм².

По ГОСТ 22483-2012 сопротивление километра медных жил должно быть не более 12.1 Ом для 1.5 мм² и не более 7.41 Ом для 2.5 мм².
Никакими 2.5 мм² в нашем случае и не пахнет, и даже до "заниженных" 1.5 мм² оба провода слегка не дотянули, впрочем измерю ещё и сечение.

Каждая жила ПУГНПбм состоит из 14 проволок. Диаметр одной проволоки - 0.35 мм. Это показывает и микрометр и цифровой штангенциркуль. Сечение одной проволоки 0.096 мм², соответственно, сечение жилы из 14 проволок - 1.344 мм². Расхождение с расчетным сечением по измеренному сопротивлению составило 1%. Напомню, обещали 2.5 мм².

Каждая жила ПВСн состоит из 27 проволок. Диаметр одной проволоки - 0.25 мм. Благодаря тому, что жилы тонкие и их много, провод гораздо мягче. Сечение жилы 0.049 мм², сечение всего проводника из 27 жил - 1.323 мм². Расхождение с расчетным сечением по измеренному сопротивлению также составило 1%.

Сечение проводов "Мастер тока" ПУГНПбм 2х2.5 мм ТУ и "ГОСТок" ПВСн 2х1.5 мм оказалось почти одинаковым - около 1.3 мм². Сечение ТУшного провода меньше указанного почти вдвое, сечение ГОСТовского - меньше указанного на 12%. Выводы делайте сами. :)
home  countryhouse  electricity  tips  law  fail 
june 2019 by some_hren
Как найти хорошего адвоката? — Meduza
Так где же искать подходящего адвоката?
Простой и надежный способ — связаться с какой-либо из правозащитных организаций. К примеру, москвичам удобно будет обратиться в «Русь сидящую», «Протяни руку» или «Общественный вердикт», петербуржцам — в «Гражданский контроль». Такие организации плотно сотрудни�%
russian  spb  militia  law  tips 
june 2019 by some_hren
Мужская харизма : evo_lutio
Я расскажу, как послойно снимать с себя иллюзии, они же патогенные психзащиты, чтобы добраться до кочерыжки.

Самый верхний слой иллюзий - это белое пальто.

Под белым пальто - зеленый виноград - под виноградом - корона - под короной - слияние границ или плохой локус.

Некоторые думают поправить локус, не снимая белого пальто.

Ничего не выйдет.

Снимать с себя защитные иллюзии надо последовательно.

В зависимости от количества слоев обаяние у мужчины либо полностью отсутствует, как факт, либо начинает понемногу появляться, но мало и нестабильно.

Стабильное обаяние появляется, когда нет короны. А когда не остается слияния границ, обаяние начинает превращаться в харизму.

На кого похожи мужчины, носящие белое пальто поверх зеленого винограда и поверх короны?

На унылое зрелище.

Белого пальто без зеленого винограда и короны не бывает, это самый верхний уровень психзащит.

Здесь поток спонтанности не просто скован, не только покрыт толстой скорлупой как грецкий орех, сверху еще фольга, хоть на елку вешай.

Мужчины в белом пальто уверены, что надо быть бессовестным, наглым, грубым и грязным животным, чтобы обладать тем самым мужским сексапилом.

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

В каком-то смысле они мученики, отказываются от удовольствия быть любимыми женщинами, чтобы оставаться хорошими людьми.

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

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

Снять его - это дать себе отчет, что быть спонтанным мешает не доброта, а трусость и неуверенность в себе.

А неуверенность в себе - от неумения и бессилия, и от страха это обнаружить.

Вы боязливы, поэтому напряжены, оглядываетесь все время, как бы чего ни вышло.

Перестать быть трусливым можно, если поправить локус контроля. Но до него мы пока не добрались.

Сначала надо просто признать, что это трусость, а не чистота. Это тревожность и боязливость, а не доброта.

У мужчин, которые сняли белое пальто в вопросе сексапила, сразу же появляется живость во взгляде.

Но дальше идет зеленый виноград. Сразу под белым капюшоном.

Вам неохота. Якобы вам неохота и не нужно, а так бы вы ух.

Чтобы снять зеленый виноград, надо осознать, что вам хотелось бы, но вы не можете, не находите в себе сил, не знаете, куда эти силы правильно прикладывать.

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

Ресурс не может быть не интересен без зеленого винограда. Ресурс - это источник энергии.

Все 12-ть ресурсов очень интересны всем людям, без исключения, но у многих некоторые или все ресурсы фрустрированы и тогда они не интересны, скучны.

Ресурсов имиджа и секса это тоже касается.

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

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

Зеленый виноград его - представление, что надо сначала активно осаждать, и тогда все получишь, если напирать и верить, а ему осаждать и напирать в реальности неохота. Он думает, что мог бы и кубики накачать и девчонок всех вокруг поиметь, но надо много напрягаться, а напрягаться ему лень. Поэтому он лежит толстый и никому не нужный на диване.

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

Вот так думают большинство задротов и дрочеров. Более мягкое их название - мечтатели. Они думают, что успешные в любви мужчины очень много тратят сил. Они не понимают, что любимый ресурс дает силы, а не потребляет, что находясь в потоке прокачанного ресурса, мы получаем энергию. И человек в потоке скорее расслаблен, чем напряжен, при том что не пассивен, а деятелен. Но до прокачки мечтатели даже не доберутся, поскольку вся их спонтанность парализована зеленым виноградом и белым пальто. Сил нет, обаяние нулевое, никому они не нравятся, совсем никому, поэтому и приходится жить в параллельной реальности.

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

После зеленого винограда - корона.

До короны еще надо добраться, видите?

Просто так корону не снять, если она увита зеленым виноградом, а сверху белое пальто.

Но без зеленого винограда, просто в короне, мужчины уже куда живей и спонтанней. Им уже не приходит в голову ни фу, ни бе. У них уже есть энергия.

Где корона у автора того письма?

Вот это вот стремление смотреть на женщин сверху вниз. Хоть он и не себя описывает, а воображаемый образ, но хорошо заметно, кого он представляет. Это Доминант, который царственно взирает, холодно и властно объявляет о своих желаниях, повелевает, рулит.

Вот это корона - стремление отдавать приказания другому. Корона - это априорная уверенность в своем превосходстве.

Чтобы снять корону надо сместить фокус со своего величия на эмоции другого человека, в данном случае - женщины, осознать, что влияние на женщину определяется мерой удовольствия, которое она получает. Удовольствие выращивает вашу фигуру, держит на вас поток ее позитивного внимания, ваша фигура растет и ей открывается все больше влияния.

Надо увидеть в женщинах живых существ: своевольных, сложных, в нормальном смысле эгоистичных, не готовых служить вашим хочу, имеющих свои хочу.

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

Если перед вами - равный вам игрок, то на вас уже нет короны.

Под короной вы все время попадаете впросак, в глупые ситуации.

Посмотрите, автор письма скорее всего никуда не попадает, потому что сидит в винограднике и не вылезает в мир. А если бы раздвинул виноград и вылез в мир, то корона его очень сильно подставила бы. Он стал бы что-то вещать кому-то, кому он совсем не нужен, стал бы пытаться командовать, приказывать или смело рулить. Потом понадевал бы колпачков и стал сливаться, доказывая Бедняше, что ему можно доверять, стал бы метать корм и липнуть как клей, варить из себя уху. Поэтому большинство коронованных так нуждаются в винограде. Там они могут отдохнуть от оскорблений и трат.

А если снять корону, сразу же виден равный соперник. Понятно, что его надо как-то заинтересовать, расположить, увлечь, иначе он даже не повернется в вашу сторону.

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

И только здесь, не раньше, по-настоящему возникает проблема недостаточной смелости и свободы.

Только здесь чувствуется, как любые опасения и вылазки за границы ("а что потом?" "а что она думает?") блокируют поток.

Только здесь можно править границы. Когда короны нет и перед тобой реалистичная задача, становится необходимым быть смелым, независимым и уверенным в себе.

Раньше об этом даже говорить смешно. В белом пальто какая еще смелость?

Смелость вываливать решето?

А в винограднике?

Смелость отказываться от того, чего не предлагали?

Да и в короне вся смелость идет на смелый и решительный слив.

А вот когда короны нет и все возможности и трудности видны ясно, становится нужна смелость, чтобы руки не тряслись и колени, чего бы ни происходило, чтобы не появлялось суеты, когда возникла влюбленность, чтобы не начинались метания, когда непонятна обратная связь и хочется сделать лаз в голову и все наперед понять.

Вот здесь нужна правка локуса. Нужно убрать Ищейку, не лезть никуда, убрать Штурмана, не пытаться рулить, но и за короной не тянуться, особенно за короной равенства, делать нормальные шаги, не пропускать ходов, не суетиться, но и не робеть.

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

Вот так вы получите хороший стабильный поток и преимущество в поле.

Будете расширять свое красное поле и растить свою значимость.

Это само собой происходит, когда у вас есть поток и вы держитесь в границах.

Без короны разделить границы несложно, а корону несложно снять, если нет ЗВ.

Но если вы еще с виноградом не попрощались и тем более с белым пальто, о каком вы поле мне пишете? О какой спонтанности?

Это все равно, что мечтать о денежном потоке, сидя не только в долговой яме, но еще и презирая все виды бизнеса и считая это воровством.

Ну м… [more]
psychology  relationship  life  tips 
june 2019 by some_hren
Нашёл лучшие IP-камеры видеонаблюдения по соотношению цена/качество: ammo1
Камеры называются AZISHN, в них установлен 2.19-мегапиксельный сенсор SONY IMX323, дающий отличную картинку FullHD днём и приемлемую ночью. Металлические герметичные корпуса позволяют использовать их как в помещении, так и на улице.

Купольная камера стоит $24.69 с питанием 12 вольт и $27.78 с питанием POE 48V. Помимо стандартного объектива 3.6 мм (угол обзора 90°) при покупке можно выбрать объективы 2.8 мм (широкий угол), 6 мм, 8 мм (узкий и сверхузкий угол).
video  gadget  camera  tips 
june 2019 by some_hren
Трубы ПНД для дачного водопровода: ammo1
Водопровод сделан на трубах ПНД (полиэтилен низкого давления) 25 мм.
...
Сама труба выдерживает 2-3 заморозки как минимум, потому все-таки сливать и продувать надо. А вот фитинги лопаются за милую душу. Так что предусмотрите таки полный слив с нижней точкой или продув компрессором. Опыт жизни с таким больше 10 лет.
home  countryhouse  tips 
june 2019 by some_hren
Getting the most out of Oracle SQL Monitor | SQLMaria
By default, a SQL statement that either runs in parallel or has consumed at least 5 seconds of combined CPU and I/O time in a single execution will be monitored.
It is also possible to force monitoring to occur for any SQL statement by simply adding the MONITOR hint to the statement.

SELECT /*+ MONITOR */ col1, col2, col3 FROM t1 WHERE col1=5;

If however, you can’t modify the SQL statement because it’s coming for a third part application etc. you can still force monitoring to occur by setting the event “sql_monitor” with a list of SQL_IDs for the statements you want to monitor at the system level.

ALTER SYSTEM SET EVENTS 'sql_monitor [sql: 5hc07qvt8v737|sql: 9ht3ba3arrzt3] force=true';

...

When SQL Monitor was originally introduced in Oracle Database 11g, the information required to generate the reports was only available in the dynamic performance view V$SQL_MONITOR_* (a size-constrained in-memory buffer) and not persisted to disk. So, there were no guarantees that the information would be retained beyond one minute after the statement completed. But in reality it’s often there a lot longer.

If you are on 11g, I strongly recommend you manually save any SQL Monitor reports you are interested in (see details on how below).

In Oracle Database 12c SQL Monitor reports are persisted in the data dictionary table DBA_HIST_REPORTS. By default, Oracle will retain SQL Monitor reports for 8 days.

Sound familiar?

It should, as it’s the AWR retention policy. That’s right the SQL Monitor retention policy is controlled by the AWR policy. In fact, each of the SQL Monitor reports stored in the DBA_HIST_REPORTS table is associated with an AWR SNAP_ID. You can change the retention policy using the DBMS_WORKLOAD_REPOSITORY.MODIFY_SNAPSHOT_SETTINGS procedure.

...

To generate a SQL Monitor report in SQL Developer, go to the tools menu and click on Real-Time SQL Monitor.

You can generate a real-time SQL Monitor report on the command line by calling the PL/SQL function DBMS_SQLTUNE.REPORT_SQL_MONITOR using “active” as the report type as shown below.

SET trimspool ON
SET TRIM ON
SET pages 0
SET linesize 32767
SET LONG 1000000
SET longchunksize 1000000

spool sqlmon_active.html

SELECT dbms_sqltune.Report_sql_monitor(SQL_ID=>’&sql_id’ TYPE=>'active')
FROM dual;

spool OFF

Just remember to edit the resulting sqlmon_active.html file to remove the first line and last line in the file (the spool off). The resulting html file can then be viewed in any browser. The browser must have connectivity to OTN to load the active report code.
...

How do I retrieve a historical SQL Monitor report in Oracle Database 12c?

You can review a historical or archived SQL Monitor report either from Enterprise Manager (EM), EM Database Express, or via the command line.

In EM Database Express, on the Monitored SQL tab of the Performance Hub page, click on the Select Time Period button above the time graph on the upper left hand side of the screen. A popup window will appear; where you can select which time period you want to see SQL Monitor reports from.

To manually generate a persisted SQL Monitor report for a single SQL statement, you will first need to find its REPORT_ID and then use the PL/SQL function DBMS_AUTO_REPORT.REPORT_REPOSITORY_DETAIL to extract the report.

The easiest way to find the REPORT_ID is to query DBA_HIST_REPORTS and supply as much information as you can about the SQL statement and when it was executed.

In DBA_HIST_REPORTS most of the column names are self-explanatory. However, there are two columns KEY1 and KEY2 that warrant some explanation, as you are going to need to use at least one of them in order to find the correct REPORT_ID.

KEY1 is the SQL_ID for the statement
KEY2 is the SQL execution_id for the statement

Here’s an example of the query I used:

SELECT report_id
FROM dba_hist_reports
WHERE dbid = 1954845848
AND component_name = 'sqlmonitor'
AND report_name = 'main'
AND period_start_time BETWEEN
To_date('27/07/2017 11:00:00','DD/MM/YYYY HH:MI:SS')
AND
To_date('27/07/2017 11:15:00','DD/MM/YYYY HH:MI:SS')
AND key1 = 'cvn84bcx7xgp3';

REPORT_ID
=========
42

Once you have the REPORT_ID, you can use the PL/SQL function DBMS_AUTO_REPORT.REPORT_REPOSITORY_DETAIL to generate the SQL Monitor report, as shown below.

SET echo ON
SET trimspool ON
SET TRIM ON
SET pages 0
SET linesize 32767
SET LONG 10000000
SET longchunksize 1000000
spool old_sqlmon.html

SELECT dbms_auto_report.Report_repository_detail(rid=>42, TYPE=>'active')
FROM dual;

spool OFF
Just remember to edit the resulting old_sqlmon.html file to remove the first line and last line in the file (the spool off). The resulting html file can then be viewed in any browser. The browser must have connectivity to OTN to load the active report

...

Is it possible to generate SQL Monitor reports for all of the SQL statements monitored during a given period of time?
Starting in Oracle Database 12c, you can use the perfhubrpt.sql script, in the $ORACLE_HOME/rdbms/admin directory, to generate a PerfHub for a given time period, which will include SQL Monitor reports for all of the monitored SQL statements during that period.

The script will prompt you for the report level (default is typical but I would use all), the database id (default is the database you are on), instance number (default is the instance you are on) and the time period you are interested in.

The output of the perfhubrpt.sql is an html file that is an historical view of the EM performance hub for the specified time period.
oracle  dba  sql  performance  troubleshoot  tips 
june 2019 by some_hren
Мошенники переоформили квартиру в Москве с помощью поддельной цифровой подписи / Хабр
истанционно, подписав документы своей электронной цифровой подписью.

Электронная подпись

Согласно Гражданскому кодексу РФ, квалифицированная электронная подпись является аналогом собственноручной подписи в случаях, предусмотренных законом.

По статье 434 ГК РФ, договор может быть заключён в любой форме, предусмотренной для совершения сделок, если законом для договоров данного вида не установлена определённая форма. Алгоритмы формирования и проверки электронной цифровой подписи описывает российский стандарт «ГОСТ Р 34.10-2012. Информационная технология. Криптографическая защита информации. Процессы формирования и проверки электронной цифровой подписи», вступивший в действие в 2012 году.

Сертификат электронной подписи выдаёт удостоверяющий центр. Правовые условия использования электронной цифровой подписи в электронных документах регламентирует Федеральный закон Российской Федерации от 6 апреля 2011 года № 63-ФЗ «Об электронной подписи». Он определяет три вида электронных подписей: простая, усиленная неквалифицированная и усиленная квалифицированная.

С 1 января 2013 года гражданам выдавалась универсальная электронная карта, в которую была встроена усиленная квалифицированная электронная подпись, но выпуск таких карт прекращён с 1 января 2017 года.

Схема с квартирой

Москвич Роман говорит, что сам недавно оформил квартиру в свою собственность по дарственной от отца, который там и проживает. Но он никогда не оформлял электронную подпись и не получал физический носитель (флэшка с пин-кодом).

Однако это не помешало мошеннику каким-то образом официально зарегистрировать сделку: «Он может теперь (он или кто-то другой), как мне сказали, сейчас опять продавать мою квартиру через интернет. Заказал справки, вот эта выписка из ЕГРН, в которой указано, что 22 октября 2018 года я подарил квартиру этому господину», — говорит Роман.

В Росреестре официально подтвердили: квартиру действительно подарили в октябре прошлого года. Документы подавались в электронном виде с цифровой подписью. Это полностью законно.

Более подробно схему с мошенничеством описала коллега пострадавшего, журналист Светлана Колосова в сообществе «Соседи. Белорусская-Новослободская-Маяковская» на Facebook.

Она пишет, что электронная подпись «была получена через личный кабинет» на портале «Госуслуги». Роман помнит, что осенью его личный кабинет пытались взломать, он написал в техподдержку, и ему ответили, что у них не зафиксировано никаких «аномальных действий».

Переход собственности осуществлён не как купля-продажа, а как «дар» без участия нотариуса. Договор дарения подписан с двух сторон электронными подписями. Что интересно, участник сделки из Уфы утверждает, что тоже не получал ЭЦП и ничего не знает о «подаренной» ему московской квартире.

В полицию подано заявление о мошенничестве. Делом занимается отдел по квартирным мошенничествам московской полиции.

Чтобы не попасть в такую ситуацию, Светлана советует всем сходить в МФЦ и написать заявление, что они запрещают любые действия с их недвижимостью без личного присутствия.

Манипуляции с электронными подписями

За те годы, что в России действует законодательство по электронной цифровой подписи, зарегистрировано несколько способов мошенничества:

Незаконные действия через центры сертификации РФ, в том числе оформление документов без участия гражданина. Выявлены случаи массовой фальсификации ЭЦП путём повторного использования удостоверяющим центром электронной подписи клиента.
Дистанционный выпуск квалифицированного сертификата без личного контакта заявителя и сотрудника регистрационного отдела удостоверяющего центра. В этом случае оформление электронной подписи производится на основании документов заявителя, представленных центру сертификации через интернет. По мнению специалистов правовой системы «Гарант», в этом случае «IT-функции в деятельности УЦ преобладают над его юридической сущностью», а электронная подпись может быть использована недобросовестными третьими лицами.

Возможно, в истории с московской квартирой как раз имел место дистанционный выпуск квалифицированного сертификата, хотя юристы «Гаранта» подчёркивают незаконность такой процедуры. Они пишут, что согласно Закону № 63-ФЗ при выдаче квалифицированного сертификата УЦ обязан (ст. 18 Закона № 63-ФЗ):

Установить личность заявителя — физического лица, обратившегося за получением квалифицированного сертификата.
Получить от заявителя, обратившегося в УЦ от имени другого лица, подтверждение права действовать от его имени.

Для этого заявитель представляет основной документ, удостоверяющий его личность — паспорт гражданина РФ (надлежащим образом заверенную копию), а также доверенность (иной документ), если он действует от имени других физических или юридических лиц.

Поскольку ЭЦП можно получить по доверенности, то мошенник мог использовать и такой вариант.

«Теоретически можно допустить, что там произошёл какой-то сговор с сотрудниками какого-то удостоверяющего центра, их достаточно много, их сотни по России, и что они мошенническим путем как-то завладели копией паспорта на его имя, выдали документы, то тогда эта сделка могла бы произойти», — считает Максим Эмм, эксперт в области информационной безопасности и технологий.

Но если ЭЦП получена, то провести сделку уже не составляет труда: «При электронной регистрации в Росреестр сдаются документы в отсканированном виде, причём скан не содержит фотографии синей подписи, которая ставится рукой. Сканированный файл выглядит как вордовский файл, просто в … [more]
russian  law  fail  crypto  crime  privacy  tips 
june 2019 by some_hren
« earlier      
per page:    204080120160

Copy this bookmark:





to read