Search
Write a publication
Pull to refresh
92
0
Сергей @SkyManPHP

User

Send message

Как работает reCAPTCHA?

Reading time3 min
Views65K
В обсуждении моего недавнего перевода замечательнейшей статьи про CAPTCHA несколько раз появлялись вопросы насчет reCAPTCHA, а именно как же эта система работает. Под катом я в общих чертах объясню суть reCAPTCHA, наглядно покажу как она работает и каким же образом она цифрует книжки.
Читать дальше →

Основы LibCanvas — практика

Reading time5 min
Views10K


Это продолжение статьи про основы LibCanvas. Если первая часть затрагивала теоретические засады, то в этой части мы перейдём к практике и постараемся реализовать совсем базовые и простые вещи. Цель статьи — осилить самые основы LibCanvas, мы напишем очень простые скрипты, малопригодные для использования в реальной жизни, но вы их можете развить во что-то великое.

Читать дальше →

Основы LibCanvas — теория

Reading time8 min
Views15K


Добрый день. Один из самых частых вопросов про LibCanvas сейчас — «С чего начать?». Согласен, порог вхождения в эту библиотеку чуть выше, чем в более простые canvas-библиотеки, потому в этом топике я раскрою основы LibCanvas — базовые понятия и принципы, отрисовка примитивных фигур, события мыши, клавиатуры, анимация, расширенный контекст, поведения. Постараюсь описать всё это с множеством примеров и максимально доступным языком.

Надеюсь, статья даст ответы на вопросы: Что такое LibCanvas? Зачем он нужен и какие его преимущества? С чего начать?

В этой статье будет только теория, а как применить эти знания на практике раскрыто в следующей статье
Читать дальше →

Локализация html-страницы средствами CSS

Reading time3 min
Views9.3K
Люди по-разному относятся к CSS. Кто-то ворчит, что раньше и таблицы были зеленее, кто-то горячится, мол, дайте мне ваши таблицы, уж я их озеленю. Лично я довольно давно воспринимаю CSS-файлы как совего рода конфиги для внешнего вида веб-страницы. По сути ведь так и есть. У хорошего верстальщика HTML используется для того, чтобы создать структуру документа, у которой затем с помощью CSS настраивается внешнее отображение.

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

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

Читать дальше →

Задаём виртуальной машине IP по MAC без использования DHCP

Reading time9 min
Views36K

В статье рассказывается о использовании скриптов для CentOS и Windows XP, которые устанавливают IP в соответствии с MAC сетевого интерфейса VM, а также о сложностях управления сетевым интерфейсом в Windows

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

Конечно, в момент запуска каждая виртуальная машина идентична шаблонной. В том числе наследуются и установленные параметры сети. Все виртуальные машины работают в одной подсети, а значит, они не должны пользоваться тем статическим IP, который достался им от шаблонной машины — иначе будут возникать конфликты. То есть каждая машина должна получить собственный IP. Казалось бы, решение очень простое — использовать DHCP сервер и динамические IP.

Однако, есть и другой вариант, о котором я расскажу в этой статье.
Читать дальше →

Использование макросов в LibreOffice

Reading time4 min
Views88K
Хабравчане, хочу вам представить перевод от юзера rze. Его ещё нет на Хабрахабре, но он не отказался бы от инвайта. Отправить можно на почту mail@worze.org.

АПД: спасибо Mithgol, инвайт получен. :)

Привет, хабражители!
Сегодня я хочу Вам рассказать об использовании макросов в LibreOffice.

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

Web-аутентификация с помощью USB-токенов

Reading time2 min
Views26K
Развивая тему, начатую здесь и здесь, расскажу еще об одном механизме аутентификации на web-ресурсах. Механизм прост, в его основе лежит использование ЭЦП, для хранения ключей при этом используется USB-токен.

image
Читать дальше →

ejabberd: общие списки

Reading time2 min
Views17K
image
Предыдущие заметки про настройку ejabberd 1, 2 и 3.

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

Sikuli — program ANYTHING using GUI screenshoots

Reading time5 min
Views15K

Сказка


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

К счастью, транспортная компания (которая не удосужилась составить четкого расписание) содержит сайт, на котором в реальном времени с помощью Google Maps можно узнать, где сейчас находится тот или иной автобус. И вот в один прекрасный день Ваше терпение лопается и Вы садитесь писать скрипт, который будет отправлять ту желанную SMS-ку. Но все не так просто. Придется долго повозиться, чтобы по карте и маленькому кружочку на ней оценить скорость и время прибытия реального транспортного средства на Вашу остановку. Вы ведь не можете просто написать: «хочу получать SMS, когда вот эта точка попадет вот в этот прямоугольник на карте». Или все-таки можете?

Проходя, не проходите мимо

Стратегия восстановления поврежденной таблицы в MySQL

Reading time4 min
Views11K
Началось все с того, что в один прекрасный момент ядро прибило демона mysqld и mysql_safe автоматом его перезапустил и все бы хорошо, да только таблицы в БД использовались MyISAM. В итоге пришлось воспользоваться myisamcheck но это совсем другая история. В процессе проверки и починки индексов пострадала одна таблица и было принято решение восстанавливать из бекапов, хорошо, что раз в сутки делаются.

Исходные данные:
  • имеем сервер БД с MySQL на борту;
  • поврежденную таблицу логов(статистики) чего угодно, что постоянно заполняется и может например не использоваться какое-то время;
  • суточный бекап;
  • бинарные логи с последнего суточного(полного) бекапа.

Задача:
  • сервер должен быть доступен для работы;
  • новые данные должны попадать в таблицу;
  • восстановить целостность данных.

Ожидаемый результат:
данные в поврежденной таблицы восстановлены без останова базы дынных;
таблица содержит все данные включая текущие.
Читать дальше →

Делаем из Linux From Scratch свой универсальный дистрибутив

Reading time9 min
Views16K
Так уж случилось, что пару лет назад по долгу службы на команду разработчиков, к которой я отношусь, свалилась неожиданная задача — разработка системы управления оборудованием (в этом-то как-раз неожиданности нет, ибо направление разработок такое) с управляющим PC под Linux.
Разработки линуксовой части велись (да и ведутся) под Ubuntu, в среде Code::Blocks. Но, как показала практика, для качественной работы нужно что-то гораздо более легкое с гарантированным временем отклика. Для работы было достаточно консоли, так как задачи организации пользовательского интерфейса решались на подключаемом по TCP/IP удаленном компьютере.
Тогда и пришла идея использовать дистрибутив Linux собственной сборки, чем (сборкой дистрибутива), собственно, в свободное время я и занялся. Выбор пал на LFS. Про то что такое LFS уже неоднократно писали даже на Хабре, я же опишу решение нескольких дополнительных (кроме простенького Linux'а) задач, вставших передо мной в нашем конкретном случае.
Поначалу такая задача была одна — использовать real-time ядро.
Однако дальше, когда идея USB-флешки с дистрибутивом, пришлась всем по душе, то появились задачи размножения флешек и запуска системы на различных компьютерах (тестовых стендов много, имея свою флешку суешь в карман и иди к любому). Вот тут и появились проблемы — LFS не обладает 100% переносимостью с одного компьютера на другой. Для ее адаптации к конкретному компьютеру нужно править некоторые скрипты, что в условиях команды вчерашних Windows-кодеров проблематично (на виртуалку с Ubuntu некоторые пересели, но консоль и скрипты — это беда). Размножение системы также требует повторения некоторых манипуляций, проделываемых в процессе сборки (тот же GRUB установить).
Читать дальше →

Видеоглазок с минимум затрат

Reading time4 min
Views133K

Добрый день, хабрапользователи.



Я привык с детства смотреть в глазок перед тем, как отрыть дверь в квартиру кому-либо.
Но после переезда так вышло, что в глазок не видно того, кто к тебе в гости просится.
Другими словами надо сделать что-то, что позволит не выходя из квартиры видеть, что же там у лифта происходит.

Примерно вот так:
видео


Сказано — сделано!
Прочитать как сделано

12 заблуждений сетевого администратора

Reading time1 min
Views22K
1. Комментировать изменения в конфигах — не нужно. На память вы не жалуетесь, amiright?
2. QoS — не нужен. Всегда проще купить канал, заведомо превышающий потребности компании.
3. Бессмысленно проверять возможность удаленного управления оборудованием перед отправкой в удаленный офис.
Вы — профессионал и не могли ошибиться в настройке такой элементарной функции.
4. Устная договоренность с сетевиками ISP является полноценной разновидностью SLA.
5. Сертификация — незначима. Экзамены всегда можно сдать с помощью дампов.
6. Прямой доступ через serial к оборудованию — анахронизм. IP-интерфейс — удобнее.
7. С системой мониторинга должен работать соответствующий отдел. Сотрудники там опытные, разберутся, что к чему.
8. Во внутренних маршрутах никогда не будет более 15 хопов.
9. Остановка работы компании из-за разрыва линка со стороны ISP — не ваша вина.
10. Одного гигабитного линка будет достаточно для всех.
11. Никто никогда не соединит 2 сетевые розетки патчкордом. Зачем это делать?
12. Какой смысл ставить 2 маршрутизатора в ядре, если загрузка одного менее 50%?

Обзор свободно доступных и бесплатных IP АТС (Asterisk, FreeSWITCH, SipXecs, Yate)

Reading time15 min
Views202K

Обзор свободно доступных и бесплатных IP АТС: Asterisk, FreeSWITCH, SipXecs, Yate. Приводятся преимущества и недостатки, сравнительный анализ функциональности и сфер применения. Делается вывод о том, что все продукты можно сочетать друг с другом.



Некоторое время назад ко мне обратился товарищ из «Открытых Систем» и попросил сделать обзор открытых IP АТС. Так как он обратился не только ко мне, а еще и к другим экспертам IP телефонии, то в результате в журнал попала компиляция, в которой мало осталось от моего оригинального обзора. Публикую его целиком на Хабре.

Вначале будет теоретическая вставка, для тех, кто не совсем в теме. Если будет скучно — просто пропустите ее! Приятного чтения! А чтобы лучше читалось, главы сопровождаются музыкальными подарками (настоятельно рекомендую наушники :-)

Поехали!

Теория

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

Именно поэтому PBX система необходима любой организации — она позволяет эффективно организовать телефонную связь на предприятии (ну, пока еще нужна ;-)

Читать дальше →

Рендеринг PDF с помощью HTML5 и JavaScript (pdf.js)

Reading time2 min
Views35K
Андреас Гал (Andreas Gal) с коллегами из Mozilla разработали первый нормальный движок pdf.js для отображения PDF средствами HTML5/JavaScript (демо).

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

Внедрение в браузер нативных или open-source плагинов тоже нельзя назвать идеальным решением, потому что это потенциальная брешь в безопасности.
Читать дальше →

Охранная система, проект умный дом (часть 1)

Reading time3 min
Views13K
imageМногие хотели обезопасить свою квартиру от взлома, ведь большинство предлагаемых на рынке систем вряд ли будет многим по карману. Однако имея опыт и знания в электронике и микропроцессорной техники это можно легко сделать самому. Ниже будет рассказано, как из подручных и недорогих средств можно сделать «умный» охранный шлейф с возможностью отображать данные на компьютере, планшете или телефоне, имеющим операционку. 2-ая часть.
Читать дальше →

Свидетельство подлинности вашей Ubuntu, или Linux по-украински

Reading time1 min
Views9K


Уважаемые Хабравчане, моё внимание привлекла услуга компании UALinux которая является, по заявлению на сайте, единственным сертифицированным партнёром по распространению и поддержке Ubuntu на территории стран СНГ.
Да, официальный партнёр и поддержка — это всё замечательно, но…
Читать дальше →

Подбор паролей к WPA/WPA2 с использованием видеокарты

Reading time6 min
Views204K
Привет, Хабр!
Сегодня я расскажу и покажу вам, как можно использовать всю мощность ваших видеокарт для игр перебора паролей к Wi-Fi. Как-то не комильфо в наше время использовать только процессорные мощности под эти задачи (в частности aircrack-ng), когда в 80% компьютеров есть видеокарта. Поэтому разумно использовать всю потенциальную мощность ваших систем. А именно, речь пойдет о замечательной программе pyrit.
Читать дальше →

Личный опыт создания справочно-информационного центра на базе «Kiosk» (или терминала) с сенсорной панелью

Reading time6 min
Views17K
В статье будет рассказано про:
  1. Что и как работает.
  2. Некоторые моменты настройки такого аппарата на OpenSUSE 11.3.
  3. Некоторые моменты связанные с создание интерфейса (web интерфейса).
  4. Моя точка зрение на теме “Почему некоторым системным администраторам, иногда, нужно делать такие вещи, несмотря на то что можно было нанять фирму и “не парится””.

Признаюсь сразу — это все работает через веб-интерфейс.

Читать дальше →

Information

Rating
Does not participate
Location
Украина
Registered
Activity