Search
Write a publication
Pull to refresh
58
0
Serge @snp

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

Send message

Emacs Starter Kit

Reading time8 min
Views16K
Emacs. Большая и сложная программа. Ему как ничему другому подходит это определение. Эмакс был создан очень давно в лаборатории искуственного интллекта MIT, он несет в себе гены очень своеобразной культуры лисп-хакеров былых времен. С тех пор он не раз переписывался, улучшался, дополнялся и обрастал тысячами расширений в течение десятков лет. Эмакс, если и был когда-то мощным текстовым редактором, сейчас стал некоей универсальной программой, в нём можно делать абсолютно всё что угодно, если это хотя бы немного затрагивает собой задачу отображения или редактирования текста, и даже больше. Людям знающим универсальность играет на руку, ведь одной программой можно делать тысячу разных дел, при этом не прилагая усилий для переучивания к разным интерфейсам. Людей, впервые запустивших эмакс подобная универсальность и непривычный интерфейс поначалу пугает. Научиться пользоваться эмаксом, понять его идею и проникнуться ею задача непростая, трудоемкая и долгая (как говорится, пологая кривая обучаемости).
Читать дальше →

Объединение браузеров в непотопляемый трекер

Reading time6 min
Views4.2K
vseisk-p2p Одноранговые сети стали мощнейшей силой в современном интернете. Клиентские программы p2p-сетей объединяют компьютеры в гигантские сетевые «организмы», причем создают, поддерживают и контролируют эти сети сами конечные пользователи. Сегодня на каждом компьютере практически всегда открыт браузер. Объединяя браузеры в p2p-сеть получаем распределенную систему, которая всегда под рукой и которая может быть полезна для решения многих насущных задач.

Недавно я рассказывал о расширении Firefox, которое объединяет браузеры в p2p-поисковую сеть Всеиск. Теперь эта сеть освоила дополнительные функции: публикация/поиск торрентов и трекер для BitTorrent. Прежде чем перейти к подробному описанию, я в двух словах поясню постановку задачи.

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

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

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

Отложенный перезапуск Firefox: интерактивный и автоматические способы

Reading time4 min
Views3.2K
Бывают случаи, когда Firefox приходится оставлять надолго без присмотра (например, в нём работает расширение, собирающее критические новости, или встроенный торрент-клиент, или даже мини-сервер). Не секрет, что со временем работы браузера растёт потребление памяти. Рано или поздно система может почувствовать дискомфорт. Поэтому хорошо бы иметь возможность задавать браузеру отложенные задания на перезапуск. Возможны как минимум три вида таких заданий.
Читать дальше →

HabraRate — расширение для фильтра комментариев Хабра

Reading time2 min
Views829
Задумывались как вы читаете комментарии к топикам на Хабре? У топиков, способных меня научить чему-то новому я читаю все комментарии. Если топик развлекательный или не очень нуждается в комментировании, то чтению подлежат первые 10-20 комментариев, затем взгляд начинает искать заплюсованные и заминусованные комментарии. Их и дискуссию вокруг них я обычно и читаю.

Чтобы это было легче делать, я написал расширение к Google Chrome — HabraRate. Оно позволяет с помощью двух ползунков задать фильтр комментариев по рейтингу.

Пол катом линк и скрины работы расширения.
Читать дальше →

Привычки полезные каждому веб-программисту

Reading time2 min
Views1.7K
У веб-программистов со временем вырабатываются привычки, которые въедаются в рабочий процесс на уровне рефлексов. Взять хотя бы данные из формы — каждый толковый программист, как только встречает их, тут же обрабатывает на предмет корректности. Порою даже сам не замечает.

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

Количество элементов на одной странице

Разбиваете список на страницы? Как будет выглядеть вторая страница для списка из 101 элемента, если ваше волшебное число 100?

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

Экономим деньги — покупаем в США

Reading time5 min
Views54K
Это первый наш пост в новоиспечённом корпоративном блоге компании Ebaytoday, так что ежели где что не так – милостиво просим, как говорится «не пинать сильно ногами».

Итак – представляем уважаемым читателям Хабра наше детище – проект EbayToday.ru. Этот сервис уже более 2-х лет помогает жителям России и СНГ с лёгкостью совершать покупки не где-нибудь, а в самих Соединённых Штатах Америки.

image


Чем именно мы занимаемся:
1) помогаем в приобретении товаров на аукционе eBay,
2) помогаем совершать покупки в любых американских интернет-магазинах,
3) предоставляем услуги мейлфорвардинга.

На Хабре мы планируем цикл постов, в которых подробно расскажем обо всех тонкостях работы нашего сервиса, поделимся ценным опытом, дадим полезные советы и рекомендации.

Ну что? Поехали?

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

Подробнее о Google Maps или о том, как google шпионит за нами

Reading time2 min
Views12K
image
Пocлe oчepeднoгo cкaндaлa вoкpyг кoмпaнии Google и ee cбopa инфopмaции o тoчкax дocтyпa Wi-Fi и я peшил пocмoтpeть чтo из ceбя пpeдcтaвляeт ee пpoдyкт Google Maps, a кoнкpeтнo мeня зaинтepecoвaли мoбильныe кapты.
Я хотел yзнaть кaкиe имeннo дaнныe пepeдaeт иx пpoгpaммa.
Уcтaнoвил coфт нa cмapтфoн, paбoтaющий пoд Symbian 9.2.

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

Практика использования arp-spoofing

Reading time4 min
Views66K
В данной статье я расскажу как, используя пакет утилит arp-sk в операционной системе GNU/Linux реализовать атаку man-in-the-middle на протокол arp.
image

Для чего вообще нужна такая атака:
На хабре достаточно много статей например для взлома Wi-Fi. Но что делать после того, как ключ взломан? Тут можно увидеть один из вариантов действий.
Читать дальше →

Практическая атака на беспроводную сеть с WEP шифрованием

Reading time7 min
Views26K
Теорию и процесс атаки хорошо описал юзер n3m0 в статьях «Атаки на беспроводные сети». Но практика там описана достаточно слабо.

В данной статье будет описан практический процесс атаки на беспроводную сеть с шифрованием WEP, используя пакет aircrack-ng и операционную систему OpenSuse.
image image
Читать дальше →

Замена шнура у зарядника ноута на компактный аналог

Reading time1 min
Views26K
Я наверное не открою америку, когда скажу, что современный ноут потребляет из розетки энергии не больше чем настольная лампа. Однако производители с маникальным упорством делают у зарядника шнур питания таким, что через него не грех и сварочный трансформатор подключить. Наверное с терроризмом борются, чтобы каждый обладатель ноута мог с легкостью этим шнуром задушить любого попавшегося на его пути террориста, предварительно оглушив его ударом вилки по голове.
Всех это бесит, но ситуация не меняется из года в год.
Решение простое — покупаем в радиотоварах обычный кабель для маломощной аппаратуры. Вот такой:


Критерий выбора прост — штекер должен быть из отлит из мягкой резины (можно и из твердой, но резать будет сложней).

А дальше все просто:
Выгрызаем любым острым ножиком у этого разъема сердцевину. Вставляем его на место родного

И радуемся жизни.

Средний штырь, что висит в воздухе, это заземление. Встречается в розетках редко, а если есть то далеко не всегда подключено. А если и подключено, то далеко не всегда правильно. Так что не критично :)

З.Ы.
А еще я рекомендую перепаять Г-образный выходной штеккер на прямой. Т.к. если рвануть за шнур, то Г-образный зацепится и разворотит разъем/утащит ноут со стола, а прямой просто выскочит. В этом отношении магнитная защелка шнура питальника яблочных ноутов вне конкуренции, но она наглухо запатентована.

10 способов облажаться в программировании

Reading time5 min
Views7.5K
10ways
Недавно по наследству от грязного, вонючего контрактора (который утверждал, что его знания и умения так хороши, чтоб не трогать его пока, он не закончит проект) мне досталось веб-приложение. К сожалению, мы поверили ему на слово. На первый взгляд большинство функционала веб-приложения работало как надо. Однако, как только клиент начал использовать приложение в реальных условиях, – весна показала, кто где срал оно начало барахлить. Контрактор исчез после оплаты (умри репутация!), а я остался, чтобы попытаться починить то, с чем пока мучился клиент.
Я решил описать некоторые из тех ошибок, с которыми столкнулся. Это ошибки, которые, каждый хороший программист давно уже должен уметь избегать… но, очевидно, что некоторым людям нужно о них напоминанать.

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

10 хитростей Google Analytics

Reading time4 min
Views37K
Казалось бы, установка и настройка счетчика Google Analytics — задачи простые. На деле, эта «простота» скрывает за собой множество подводных камней. Мы постоянно сталкиваемся с тонкостями, неочевидными особенностями подсчета и глубоко спрятавшимися ошибками (конечно, обычно виноваты мы сами:).

На базе нашего опыта я сформулировал 10 советов, которые пригодятся большинству пользователей Analytics – когда-то это были и наши грабли! Некоторые темы заслуживают отдельных статей, но пока расскажу о более-менее очевидных и простых технических хитростях.

Проверка регулярных выражений при установке целей

Достаточно часто при указании адреса цели приходится использовать регулярные выражения: например, если искомый фрагмент адреса окружен другими частями. Регулярные выражения – тонкая материя, а ждать обновления данных для проверки правильности написания не хочется. Проверить правильность выражения можно мгновенно, перейдя в раздел «Содержание – Самое популярное содержание» и введя в поле фильтра выражение. Содержимое сразу же отфильтруется, а вы сможете убедиться в корректности кода.
Читать дальше →

Быстрый старт с openID

Reading time3 min
Views15K
Добрый день, друзья.

Сегодня я хочу поделиться своим опытом внедрения авторизации по openID на своем книжном сайте «Мои книги». Статья рассчитана на начинающих, поэтому вряд ли заинтересует тех, кто уже знает все нюансы этой технологии. Основная ее цель – ответить на вопрос: «да, это удобно, но как же мне сделать такое в моем проекте?!!»

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

Не совсем обычное VPN соединение обычными средствами

Reading time8 min
Views156K
Искал интересную тему, заслуживающую внимания, чтобы получить инвайт на Хаброхабре и вот нашёл. Такой особенный случай мне пришлось недавно реализовать.

Постановка задачи: Получить доступ к узлам удалённой сети.


Здесь мы будем говорить о двух сетях, которые нужно объединить, одну из которых я буду называть «моя офисная сеть», а другую «удалённая сеть».
Системный администратор удалённой сети отказывается вносить наименьшие изменения, для подключения и единственное что можно сделать — это поместить своё оборудование в удалённой сети. Выход в интернет из этой сетиv4 производится через шлюз, который натит в мир. Нужно построить тоннель, между двумя офисами, чтобы узлы моей офисной сети могли получать доступ к узлам удалённой сети, при минимальных изменениях c обеих сторон.

Для выполнения задачи объединения двух сетей и построения виртуального тоннеля нужно использовать Virtual Private Network. В ходе поиска подходящего варианта подключения, для себя разделил VPN на два вида: клиент-серверный вариант и равноправный. В следующих моментах заключается принципиальное отличие:
  • В равноправном VPN, использующем глобальную сеть интернет, нужно иметь один реальный IP адрес, для каждого из узлов (минимум 2-ва узла). Здесь соединение может быть инициировано каждой из сторон (именно поэтому я так и обозвал его, равноправный), их может быть больше двух.
  • В клиент-серверном варианте, использующем глобальную сеть интернет, нужен только один реальный IP адрес, для сервера. Соединение здесь происходит по требованию клиента, сервер всегда ожидает, клиентов может быть больше одного.

Примечание1: В обоих вариантах должно соблюдается одно из условий (для клиент-серверного варианта, только для сервера):
  • A. VPN peer, должен находится непосредственно на шлюзе (должно быть установлено дополнительное ПО, или устройство должно быть способно устанавливать нужный тип VPN соединений).
  • B. Если же нет возможности запустить VPN peer непосредственно на шлюзе, нужно его сконфигурировать так, чтобы он смог пропускать порт на другое устройство, настроенное как VPN peer.


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

collectd — собираем системную и пользовательскую статистику

Reading time5 min
Views13K

Вопрос номер 0 — зачем?



В посте про pnp4nagios я писал «Nagios/Pnp4Nagios не замена комплексу сбора статистики о состоянии системы». Почему я так думаю? Потому что 1) статистика состояния системы обширна и включает множество показателей 2) не всегда есть смысл их мониторить, точнее генерировать алерты. Например, знать сколько сколько операций ввода-вывода делает диск или происходит переключений контекста неплохо, но почти никогда не критично. Ну и кроме того, Nagios просто не предназначен для этого. В данной статье я не буду делать полное описание системы, ограничусь лишь особенно интересными, с моей точки зрения, моментами.

Вопрос номер 1 — почему collectd?



Основные моменты почему из Munin, Cacti и прочих я выбрал collectd:
  1. Масштабируемость
  2. Легковесность
  3. Концепция — всё есть плагины
  4. Сбор и запись данных разделены
  5. Количество собираемых показателей
  6. Расширяемость


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

Поднятие терминального сервера на примере LTSP и CentOS 5.4

Reading time6 min
Views30K

Интро


Сейчас стала очень популярна идея использования тонких клиентов, а в частности – для организации учебных классов в ВУЗах и не только. Вот и для моего любимого ВУЗа пришлось потрудиться.
Не так давно мне была поставлена задача выбора и настройки терминального сервера на CentOS 5.4. Почему именно CentOS – ума не приложу, но скорее всего это было предпочтение наших системных администраторов, которые в последствии будут поддерживать терминальный сервер. Ну а мне выбирать права предоставлено не было.
Читать дальше →

Кластерная LustreFS или с Миру по нитке

Reading time2 min
Views9.2K
#include

Зачастую, краеугольным камнем производительности работы сервера является скорость работы файловой системы. Её можно увеличить с помощью создания дисковых массивов RAID0 — запись/чтение побитово производится на оба диска, однако рано или поздно слоты под диски заканчиваются, надёжность RAID0 оставляет желать лучшего — при выходе одного из дисков, рушится вся система. RAID10 опять же упираемся в количество дисков.

Как альтернатива, использование сетевых фс. Наибольшее распространение получила NFS, но для боевых задач с её скоростью и неочевидностью настройки прав доступа практически непригодна.
«Сравнивать GPFS и LustreFS — это как сравнивать IBM и SUN.»
Анонимус из интернетов.

В ТОП-300 суперкомпьютеров Мира половина из первых 50 используют LustreFS, которая очень проста в первоначальной настройке.
Читать дальше →

Трудности администрирования прокси серверов в больших компаниях (Часть 2)

Reading time9 min
Views9.5K
В предыдущей статье я описал основные проблемы подстерегающие администраторов в больших компаниях.

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

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

Reading time3 min
Views2.7K
Почти полгода назад я написал на хабре статью о проекте математической поисковой системы uniquation.ru. Тогда была получена конструктивная критика, которая помогла улучшить проект.

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



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

Information

Rating
Does not participate
Registered
Activity