Как стать автором
Обновить
14
0

Пользователь

Отправить сообщение

И ещё раз о безопасности сайта Умного голосования и слив персональных данных Яндексу

Время на прочтение5 мин
Количество просмотров46K

Уже было описание уязвимости на сайте Умного голосования. Владислав Здольников на своём канале в Телеграм рассказывает очевидные вещи про прозрачность банковских платежей. И вот вчера Дмитрий Зворыкин заспорил с Леонидом Волковым, а Волков начал хамить в ответ будто Дима троль какой-то, а не ИТ-профессионал. Диму знаю 20+ лет ещё со студенческих времён в МИЭМ, потом мы вместе работали в избирательной кампании Навального 2013 года, и мне лично очень неприятно подобное отношение политиков к гражданам. Даже если бы Дима был не прав, то Волков как публичное лицо не имеет права так неуважительно общаться и позорить в том числе и Навального. И в результате, возможно увидев, что народ лайкает Диму, а не его, Волков просто забанил Диму. Типа проблемы нет. Но она есть.

Дима прав по сути.

Этот вопрос уже был рассмотрен на хабре. Дима лишь убедился что проблема осталась на том же самом месте.

На сайте Умного голосования инициализируется Яндекс.Метрика.

Читать далее
Всего голосов 114: ↑92 и ↓22+70
Комментарии458

Компоненты авторизации и регистрации в CMS 1C-Bitrix

Время на прочтение10 мин
Количество просмотров90K
В CMS 1C-Bitrix вниманию разработчикам представлено четыре системных компонента для реализации функционалов авторизации, смены пароля и регистрации рядовых пользователей системы (system.auth.*), но отсутствует официальная документация оных. В этой статье вы узнаете ограничения и недостатки использования этих компонентов, почему следует использовать именно их, каким образом лучше их использовать и, возможно, сделаете некоторые выводы о том, почему документации нет.
Читать дальше →
Всего голосов 16: ↑13 и ↓3+10
Комментарии9

Знакомство с gitolite

Время на прочтение4 мин
Количество просмотров60K
gitolite — это средство для создания централизованных репозиториев для совместной разработки через git.

Зачем оно нужно?


Родные средства git для этой задачи на сегодня явно недостаточны: родной git-протокол не содержит каких-либо средств авторизации, а для работы через ssh потребуется завести полноценного юзера в ОС (с шеллом), что далеко не всегда уместно и желательно.
gitolite же позволит вам заводить пользователей независимо от наличия аккаунта в ОС и гибко раздавать права.
Читать дальше →
Всего голосов 37: ↑34 и ↓3+31
Комментарии22

Установка gitolite на сервер Centos

Время на прочтение2 мин
Количество просмотров6.5K
Убил пару дней на установку Gitolite. Вроде куча инструкций в интернете, и процесс-то глобально не сложный. Но ни в одной статье нет полного порядка команд, которые надо проделать, чтобы все это дело заработало без проблем.

Подразумевается, что читатель понимает, что такое git и gitolite и умеет с ними работать, рассматривается только вопрос установки.
Читать дальше →
Всего голосов 9: ↑4 и ↓5-1
Комментарии13

Дурацкие идиомы английского языка, которые не имеют смысла (на первый взгляд)

Время на прочтение6 мин
Количество просмотров109K

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

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

Читать далее
Всего голосов 58: ↑54 и ↓4+50
Комментарии146

Preload, prefetch и другие теги

Время на прочтение9 мин
Количество просмотров134K
Есть много способов повышения веб-производительности. Один из них — предзагрузка контента, который понадобится позже. Префетчинг CSS, предварительный рендеринг полной страницы или резолвинг доменного имени. Делаем всё заранее, а потом мгновенно отображаем результат! Звучит круто.

Ещё круче, что это очень просто реализовано. Пять тегов <link rel> дают браузеру команду на предварительные действия:

<link rel="prefetch" href="/style.css" as="style" />
<link rel="preload" href="/style.css" as="style" />

<link rel="preconnect" href="https://example.com" />
<link rel="dns-prefetch" href="https://example.com" />

<link rel="prerender" href="https://example.com/about.html" />
Читать дальше →
Всего голосов 33: ↑33 и ↓0+33
Комментарии1

Проверка б/у макбука перед покупкой — чек-лист

Время на прочтение6 мин
Количество просмотров223K
Статья доработана с учетом ценных комментариев, дополнен список источников.
Данный чек-лист — компиляция нескольких источников, я его делал для себя, когда в конце 2019 года покупал 13" б/у макбук 2015 года, последний из имевших нормальную клавиатуру и набор портов, перед тем как Apple перешла на клавиатуру-бабочку и usb-с порты.

Какую модель б/у макбука стоит брать? Вместо введения


На этот вопрос нет однозначного ответа, поскольку все зависит от ваших задач. Для начала 2020 года и задач «офисной» работы и серфинга я бы сформулировал ответ так — можно брать любой мак от 2014 и более позднего года выпуска, на полноценном процессоре (m5 и m7 брать скорее нежелательно). Macbook pro таким образом предпочтительнее macbook air, поскольку у последних процессор и система охлаждения обычно проигрывает в сравнении.

Оптимальный выбор, который проработает еще несколько лет без проблем — это модели с четырехядерным процессором (не путать с четырехпоточным!), такие ставили обычно в 15" модели. Оперативки не менее 8 Гб, SSD лучше 256 Гб и больше, хотя на 128 с определенными неудобствами жить тоже можно. Батарея оптимально с менее чем 500 циклами перезарядки.

Стоимость 13" макбуков 2014-2016 годов колеблется от 40 до 55 тыс. рублей, причем варианты в хорошем состоянии около 40-45 тыс. мне кажутся наиболее выгодными с точки зрения дилеммы «взять б/у или доложить и взять новый».

Надо иметь ввиду, что все модели 2013-2015 года включительно очень ограничены с точки зрения апгрейда, а апгрейд моделей с 2016 и более поздних вовсе невозможен, поэтому берите сразу конфигурацию, которой вам хватит на ближайшие 2-3 года.

Моделей с клавиатурой-бабочкой (2016-2019 гг) не то что бы надо избегать, но надо отдавать себе отчет, что они требуют радикально более бережного к себе отношения, чтобы клавиатура проработала дольше. Сейчас полно предложений продажи mac mini — это тоже хороший вариант, особенно если он базируется на нормальном четырехядерном процессоре.
Читать дальше →
Всего голосов 76: ↑70 и ↓6+64
Комментарии67

Что такое SPF

Время на прочтение5 мин
Количество просмотров51K
Думаю, никому не нужно объяснять, какой проблемой является спам в наше время. Борьба с этим злом — дело не простое, и если хочется приблизится к идеалу, требующее сочетания нескольких элементов. Одним из этих элементов является протокол SPF. Будучи опубликованным в апреле 2006 года в RFC 2006 года к настоящему времени протокол имеет статус «экспериментальный», и достаточно неплохую распространенность.

SPF взят на вооружение такими гигантами, как Google, Яндекс, Mail.Ru, Microsoft, Рамблер. Yahoo не поддерживает SPF, а пытается продвигать свою разработку DKIM, к слову, не слишком успешно.

Итак — как же работает SPF?
Читать дальше →
Всего голосов 51: ↑50 и ↓1+49
Комментарии43

Похек Wi-Fi встроенными средствами macOS

Время на прочтение13 мин
Количество просмотров62K


TL;DR Встроенные средства macOS позволяют выполнить некоторые атаки на Wi-Fi-сети. В статье описывается, как с помощью встроенного в Macbook Wi-Fi адаптера AirPort и macOS похекать Wi-Fi.

Обычно для аудита безопасности Wi-Fi-сетей используется классическая связка: виртуалка с Kali Linux + внешний USB адаптер типа Alfa AWU-blabla1337. Но оказывается, что с помощью macOS и встроенного адаптера Broadcom тоже можно делать грязь.

Содержимое статьи:

  • Мониторный режим на встроенном адаптере
  • Расшифровываем WPA трафик
  • Ловим хендшейки и PMKID
  • Собираем под макось пацанские тулзы: hcxtools, hashcat, bettercap
  • Брутим хеши на онлайн-фермах и локально

Йоу, камон мазафака
Всего голосов 63: ↑62 и ↓1+61
Комментарии29

Битрикс в связке Nginx+PHP-FPM, настройка ЧПУ, а так же композитный кэш с отдачей через nginx. Доработанная конфигурация

Время на прочтение4 мин
Количество просмотров35K
Цель: Предоставить конфигурацию виртуального сервера Nginx для работы Битрикс-cms в связке Nginx+PHP-FPM. Который в прочем подойдёт и для связки Nginx+Apache2, с небольшими доработками.

Целевая аудитория: Администраторы серверов, продвинутые администраторы сайтов, программисты.

Cтатей на эту тему достаточно, но если смотреть не официальные, то там как правило содержатся ошибки, а в официальных полно if которые в Nginx использовать не желательно. Надеюсь после того как я выложу данный конфиг к связке Nginx+PHP-FPM станут относиться серьёзнее.

Вот официальный конфиг для работы композитного кэша с отдачей через nginx.

Я покажу реализацию отдачи файлового композитного кэша. В целом отдача с memcached делается по аналогии. В конфигурации отдачи файлового кэша я насчитал 11 if, от которых я и избавился переделав их на map.
Читать дальше →
Всего голосов 26: ↑13 и ↓130
Комментарии17

Мы писали, мы писали или что делать когда нас настигает туннельный синдром

Время на прочтение12 мин
Количество просмотров323K
Если вы читаете эти строки, то будет вполне естественно предположить, что вы проводите за компьютером по крайней мере несколько часов в день, а то и больше. Такой режим работы привносит с собой достаточно сильную нагрузку на наши руки, которая может вызвать боли в кистях, запястьях и пальцах. Такие боли вызваны так называемым «туннельным синдромом» (синдромом карпального канала, кистевым туннельный синдром, carpal tunnel syndrome) — хроническим заболеванием.

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

Как развивается туннельный синдром и что мы при этом чувствуем


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

Читать дальше →
Всего голосов 136: ↑131 и ↓5+126
Комментарии112

Радиолюбительская технология: производство печатной платы прототипа на китайской фабрике

Время на прочтение6 мин
Количество просмотров19K

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


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


В этой статье описано: как подготовить и выгрузить из CAD Eagle 7.7.0 задание в формате Gerber RS274X для CAM, расположенной в КНР; как оформить заказ на изготовление печатной платы и её доставку в РФ.

Читать дальше →
Всего голосов 35: ↑26 и ↓9+17
Комментарии37

Сортировка товаров и показ выбранного пользователем количества товаров в 1С-Битрикс

Время на прочтение4 мин
Количество просмотров25K
Исторически так сложилось, что комплексный компонент 1С-Битрикс не позволяет пользователю в публичной части отсортировать товары, хотя бы по цене, дате, наименованию, а также выбрать сколько товаров на странице ему выбрать. Но ни один из интернет-магазинов не обходится без такого функционала, который кстати включен в почти все шаблоны готовых интернет-магазинов в Маркетплэйс. Но для реализовать блоки «Сортировать по: ...» и «Показать по: ...» достаточно просто. Нужно всего-лишь использовать массив $_REQUEST и метод API 1С-Битрикс GetCurPageParam() для передачи данных в этот массив.

Приступим!
Читать дальше →
Всего голосов 14: ↑4 и ↓10-6
Комментарии26

Трассировка печатной платы в KiCAD

Время на прочтение8 мин
Количество просмотров112K


Введение



Одним из критических замечаний к предыдущей статье было следующее: дескать фу таким быть, стрелять из пушки по воробьям да ещё проприетарным софтом за 10000$, к тому же наверняка украденным с торрентов. Оставляя за кадром моральную сторону вопроса, а так же презумпцию невиновности, обратимся к следующему вопросу — а что там у нас имеется в Open Source секторе, пригодное для решения задач проектирования электронной техники. В частности изготовления печатных плат. Наиболее достойной, на мой взгляд, оказалась кроссплатформенная программа KiCAD, распространяемая по лицензии GNU GPL. Имеются версии для Linux, Windows и macOS.

Рассмотрим этот инструмент подробнее применительно к уже решенной мною задаче — трассировке печатной платы для преобразователя уровней на базе MAX232.

Читать дальше →
Всего голосов 39: ↑39 и ↓0+39
Комментарии69

Поиск на сайте своими руками

Время на прочтение15 мин
Количество просмотров189K


Наверное, многие когда-нибудь задумывались, как сделать поиск на сайте? Безусловно, для крупных сайтов с большим количеством контента поиск является просто незаменимой вещью. В большинстве случаев пользователь, впервые посетив Ваш сайт в поисках чего-либо важного, не станет разбираться в навигационных панелях, выпадающих меню и прочих элементах навигации, а в спешке попытается найти что-нибудь похожее на поисковую строку. И если такой роскоши на сайте не окажется, либо он не справится с поисковым запросом, то посетитель просто закроет вкладку. Но статья не о значении поиска для сайта и не о психологии посетителей. Я расскажу, как реализовать небольшой алгоритм полнотекстового поиска, который, надеюсь, избавит начинающих разработчиков от головной боли.
Читать дальше →
Всего голосов 54: ↑36 и ↓18+18
Комментарии39

Математики обнаружили идеальный способ перемножения чисел

Время на прочтение5 мин
Количество просмотров144K

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



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

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

«Все думают, что метод умножения, который они учили в школе, наилучший, но на самом деле в этой области идут активные исследования», — говорит Йорис ван дер Хувен, математик из Французского национального центра научных исследований, один из соавторов работы.
Читать дальше →
Всего голосов 183: ↑173 и ↓10+163
Комментарии224

Оптимизация связки Nginx, Apache, PHP, MySql

Время на прочтение9 мин
Количество просмотров80K
Неожиданно поступила задача разобраться почему определенный сайт не работает столь быстро сколь хочется. В основе его CakePHP, в связке с Apache и MySQL. В статье описание процесса поиска узких мест и приведение в порядок на столько, на сколько это возможно.

Название сайта светить не буду — думаю, программисты сами узнают. Скажу лишь, что это приложение для социальной сети нагрузкой 70-150 тысяч посетителей в обычное время. Все усложняется тем, что периодически производится рекламная рассылка, которая привлекает около 200-300 тысяч посетителей за пару часов.

Итак, под катом описание всей борьбы на протяжении 4 дней.
Читать дальше →
Всего голосов 95: ↑79 и ↓16+63
Комментарии108

Управление своими модулями для CMS c использованием composer

Время на прочтение9 мин
Количество просмотров6.2K

Здравствуйте, друзья! Появление популярного менеджера зависимостей в PHP — является одним из важнейших событий в жизни PHP-сообщества. Composer разделил время на "до" — когда наши самописные библиотеки лежали в zip-архивах или просто разбросаны по папкам и копировались "ручками", лишь в единичных случаях, использовался git или PEAR, и "после" — когда мы начали использовать composer. Но что делать если вы работаете с определенной CMS, а она не "знает" что такое composer?

Читать дальше →
Всего голосов 12: ↑12 и ↓0+12
Комментарии10

Улучшаем релевантность поиска в sphinxsearch

Время на прочтение4 мин
Количество просмотров58K
Sphinxsearch является поисковым движком для быстрого fulltextsearch, может получать данные из mysql, oracle и mssql, может выступать сам хранилищем(realtime индексы). Также sphinx имеет режим работы через api и через sphinxql — аналог протокола sql(с некоторыми ограничениями), что позволяет подключить поиск через sphinx на сайте с минимальным изменением кода. Это один из немногих великих, крупных и открытых проектов разработанный в России. На моей жизни я видел как sphinx обрабатывает порядка 100-200 поисковых запросов на 2 миллиона записей из mysql и при этом сервер свободно дышал и его не тошнило, mysql начинает умирать уже на 10 запросах в секунду на аналогичном конфиге.

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

Sphinx содержит две независимые программы indexer и searchd. Первый строит индексы по данным взятым из базы данных, второй производит поиск по построенном индексу. А теперь перейдем к настройкам поиска в sphinx.

morphology

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

Пример нормализации слова стеммингом на русском.
Слова “яблоко”, “яблока”, “яблоку” будут обрезаны в “яблок” и любой поисковый запрос с вариацией слова “яблока” будет тоже нормализован и найдет записи со словами которые были описаны выше.
Читать дальше →
Всего голосов 33: ↑32 и ↓1+31
Комментарии17

Composer для самых маленьких

Время на прочтение8 мин
Количество просмотров320K
Доброго дня.

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

Итак, Composer — менеджер пакетов для PHP.
Читать дальше →
Всего голосов 40: ↑33 и ↓7+26
Комментарии25

Информация

В рейтинге
Не участвует
Откуда
Москва и Московская обл., Россия
Зарегистрирован
Активность