Захотелось мне странного, автобекапа настроек в /etc/.
marko @marko
Пользователь
Коллекция описаний алгоритмов
1 мин
868Искал способ быстрого поиска строки по нескольким подстрочкам. Наткнулся на сайт с подборкой описаний алгоритмов. Спешу поделиться — думаю многим может пригодиться. Сам завис там на пару часов.
Заодно вопрос к уважаемым Хабражителям: какой бы алгоритм Вы посоветовали бы для быстрого поиска записи (название) по нескольким фрагментам (отрывки слов в названии) расположенным в случайном порядке не так как в искомой записи.
Массив информации — около 1.5 миллионов записей, требуемая скорость — 300-1000 одновременных запросов в секунду на простом железе (не-супер-пупер-многопроцессорный вычислительный комплекс).
Мне пока приходит в голову только мысль о том, чтобы сделать индекс поиска на базе какого-то хеш-алгоритма, но пока не придумал как совместить хеш с неполными словами в различных комбинациях и непредскауемым порядком их появления в запросе.
Заодно вопрос к уважаемым Хабражителям: какой бы алгоритм Вы посоветовали бы для быстрого поиска записи (название) по нескольким фрагментам (отрывки слов в названии) расположенным в случайном порядке не так как в искомой записи.
Массив информации — около 1.5 миллионов записей, требуемая скорость — 300-1000 одновременных запросов в секунду на простом железе (не-супер-пупер-многопроцессорный вычислительный комплекс).
Мне пока приходит в голову только мысль о том, чтобы сделать индекс поиска на базе какого-то хеш-алгоритма, но пока не придумал как совместить хеш с неполными словами в различных комбинациях и непредскауемым порядком их появления в запросе.
+10
тестирования сети в Линукс
5 мин
17KЭта заметка выросла из шпаргалки для самого себя. Мне по работе приходится отлавливать баги в сети. Как проверить скорость в VPN-туннеле? Почему сервер не пингуется? Или пингуется, но не доступен. Кто забил весь канал торрентами? Где пропадают пакеты? Почтовый клиент выдает непонятную ошибку, что произошло на самом деле? Эти и многие другие вопросы периодически возникают у любого пользователя. Под катом описание программ входящих во все современные дистрибутивы, начиная от пинга и до таких экзотических как ngrep. А так же картинками, если картинками можно назвать, копии дампа с консоли.
+28
Envatо которая «Must Have» для всех и каждого
3 мин
2KКак бы не был талантлив человек, в разные периоды и по разным причинам неизбежно наступает творческий кризис, и мы тратим десятки часов впустую пытаясь заставить себя придумать хоть «что-то». В этом посте я тоже решил поделится своими интереснымиместаминаходками вдохновения для создания логотипов и Фирменного стиля.
Дальнейший текст про логотипы стили и вдохновение я вырезал, поскольку после завершения поста обнаружил что в процессе написания и сбора информации более ценными оказались ресурсы Envatо, которые расширяют источники вдохновения, образования и содружества во многих отраслях графики, фотографии, эффектов, музыки, анимации. web разработке и фриланса и к удивлению не была описана на Хабре.
+61
Руководство по созданию сайтов от Яндекса
1 мин
2.2KВыложили обновленное "Руководство по созданию сайтов" (PDF-версия), которое анонсировали еще на конференции «Оптимизация 2009». Можно использовать как checklist при запуске нового сайта.
Замечания и пожелания приветствуются.
См. также "Руководство по поисковой оптимизации для начинающих от Google".
Замечания и пожелания приветствуются.
См. также "Руководство по поисковой оптимизации для начинающих от Google".
+10
Антивирусное спасение: набор того чем лечить вирусы, быстро восстановить работоспособность завирусованого ПК
1 мин
1.6KСначала с грустного: пробовал использовать Dr.Web LiveCD — абсолютно не функциональное решение, 30 минут сканировало папку Windows, это много.
все остальные возможности — при лечении не нужны, ну кроме как браузер еще. Еще порадовало что используется OpenBox, прямо как в CrunchBang Linux.
Набор:
1. Sysinternals Autoruns — http://technet.microsoft.com/en-us/sysinternals/bb963902.aspx.
2. Sysinternals Process Explorer — http://technet.microsoft.com/en-us/sysinternals/bb896653.aspx.
3. DrWeb Cureit — http://www.freedrweb.com/cureit/.
4. AVP Tool или Kaspersky® Virus Removal Tool — http://avptool.virusinfo.info/.
5. AVZ — http://www.z-oleg.com/secur/avz/.
Если с вирусами покончено, понадобится почистить хвосты и восстановить работу реестра.
6. CCleaner — http://www.ccleaner.com.
Если не покончено следует добавить:
7. HijackThis — http://www.trendsecure.com/portal/en-US/tools/security_tools/hijackthis.
8. SDfix — ссылка с описанием на русском и ссылка для загрузки.
9. ComboFix — ссылка с описанием на русском и ссылка для загрузки.
Top антивирусов по моему мнению на август 2009-го:
1. Eset Nod32.
2. McAfee VirusScan Enterprise.
3. Kaspersky.
А мою Windows 7 на нетбуке я доверил:
4.Microsoft Security Essentials (MSE).
Links которые помогут грамотно побороть вирусную заразу:
http://www.spyware-ru.com/
http://virusinfo.info/
http://www.securitylab.ru/
http://www.securelist.com/ru/descriptions
http://www.virscan.org/
+8
Кроссдевайсная верстка
4 мин
1.5KВ спецификации CSS2.1 определены типы устройств (носителей), для которых применяются стили:
- all — для всех устройств;
- braille — для устройств, которые выводят информацию азбукой Брайля;
- embossed — для устройств печати азбукой Брайля;
- handheld — для мобильных устройств;
- print — для устройств печати и отображения в режиме предпросмотра печати в браузерах;
- projection — для презентаций (проекторов);
- screen — для экранов компьютеров;
- speech — для синтезаторов речи (в CSS 2 — aural);
- tty — для терминалов;
- tv — для телевизоров.
+21
Выборочное подключение USB-флешек в Windows XP
2 мин
41KПо роду своей деятельности (системное администрирование), приходится мне постоянно решать различные интересные задачи по управлению компьютерами и сетями.
Вот одна из них.
Дано:
Требуется:
Обеспечить подключение только одной, одобренной начальством USB-флешки, запретив при этом подключение других, неодобренных (смайл).
Ход решения:
Вот одна из них.
Дано:
- Компьютер операторов производства (Windows XP SP2)
- Одобренная начальством USB-флешка для переноса данных с промышленных компьютеров на компьютер операторов
Требуется:
Обеспечить подключение только одной, одобренной начальством USB-флешки, запретив при этом подключение других, неодобренных (смайл).
Ход решения:
+148
Системы оплаты в Украине
5 мин
6.4KПримерно год назад мы с партнером открыли свой интернет магазин, занимающийся продажей преимущественно англоязычной литературы и учебников.
Прожив год, мы набрались опыта, поняли, что нужно поменять и что доделать. Но основной проблемой любого интернет магазина является доставка и оплата. И если с доставкой ситуацию еще можно решить, то с оплатой есть небольшие проблемы.
Системы оплаты в Украине глубоко порочны, закостенелы и пребывают в состоянии вялотекущей жизнедеятельности. Они совсем не ориентированы, на какую либо электронную коммерцию. Есть некие потуги отдельных компаний реализовать хоть что-то, но и они не развиты настолько, чтобы ими хоть как, то было удобно пользоваться.
Итак, доступных для физических лиц систем оплаты в Украине ограниченное количество:
Прожив год, мы набрались опыта, поняли, что нужно поменять и что доделать. Но основной проблемой любого интернет магазина является доставка и оплата. И если с доставкой ситуацию еще можно решить, то с оплатой есть небольшие проблемы.
Системы оплаты в Украине глубоко порочны, закостенелы и пребывают в состоянии вялотекущей жизнедеятельности. Они совсем не ориентированы, на какую либо электронную коммерцию. Есть некие потуги отдельных компаний реализовать хоть что-то, но и они не развиты настолько, чтобы ими хоть как, то было удобно пользоваться.
Итак, доступных для физических лиц систем оплаты в Украине ограниченное количество:
- Оплата картами Visa и MasterCard
- Предоплата банковским переводом
- Оплата наличными
- WebMoney
- Наложенным платежом
+22
Synergy — управление несколькими ПК с одной клавиатуры
2 мин
115KК моему рабочему компьютеру не так давно добавился еще и лаптоп, который постоянно стоит на столе рядом с монитором. Работать за обоими компьютерами нужно одновременно, и мне начало надоедать постоянно перекладывать руки с одной клавиатуры/мыши на другую.
Я подумал: «Как было бы здорово сделать дисплей лаптопа продолжением дисплея настольного ПК, и при этом управлять ими одной и той же клавиатурой и мышью!». Оказалось, выход есть. И называется он Synergy.
Я подумал: «Как было бы здорово сделать дисплей лаптопа продолжением дисплея настольного ПК, и при этом управлять ими одной и той же клавиатурой и мышью!». Оказалось, выход есть. И называется он Synergy.
+105
Лучшие графические редакторы, написанные на Flash
7 мин
2.1KЛучшие графические редакторы, написанные на Flash
Когда заходит речь о миграции с Windows на другие платформы или на веб-приложения, каждый раз возникает неоспоримый аргумент: но там же нет фотошопа! Этот легендарный графический пакет благодаря пиратам прижился, наверное, на подавляющем большинстве компьютеров в СНГ. И несомненно альтернативу столь сложной программе найти сложно. Но если откровенно, как в большинстве случаев используется вся мощь фотошопа? Изменить размеры, подкорректировать яркость, иногда убрать лишние детали, да отправить на е-мейл подружке.
Нужен ли для этого полноценный большой Photoshop? В большинстве случаев нет, если только вы не дизайнер-профессионал высокого класса. А значит, аналог найти будет уже проще.
Но искать аналог среди настольных программ или программ под Linux это неинтересно! Мы живем в век Web 2.0, поэтому попробуем поискать аналоги среди веб-приложений. Да, еще недавно это было бы фантастикой, но развитие графических возможностей прежде всего Flash уже сегодня позволяет получить весьма интересные результаты. Конечно, описываемые редакторы не станут полноценной заменой «старшему брату», но для небольших фотокоррекций они пригодятся. Или представьте себя в интернет-кафе, где привычного вам софта нет, а вам нужно срочно взять готовую картинку, что-то в ней поменять, отметить или подписать и отправить собеседнику. В этом случае вас тоже может спасти одна из рассматриваемых ниже программ.
+72
+75
Ресурсы по поиску качественных иконок.
1 мин
6.2KВсе когда-нибудь сталкивались с проблемой поиска качественных иконок для различных нужд. Список лучших поисковиков:
+44
Я построю свой почтовый сервер с Postfix и Dovecot
20 мин
307KТуториал
В рамках программы по унификации установленных серверных систем встала задача по переделке почтового сервера. Вдумчивое изучение мануалов и руководств показало довольно любопытный факт – нигде не было найдено однозначно достоверного руководства или подобия Best Practice по развёртыванию почтовика.
Мануал пошаговый, основывается на внутренней документации компании и затрагивает совершенно очевидные вопросы. Гуру могут не тратить время, ноу-хау здесь нет – руководство является сборной солянкой и публикуется только потому, что все найденные руководства по развёртыванию почтовика напоминали картинку о том, как рисовать сову.
+70
Подробная анатомия простого плагина для XBMC
20 мин
33KТуториал
Предисловие
Похожая статья на Хабре уже публиковалась, но в ней основное внимание было уделено парсингу сайта с видео — так сказать, бизнес-логике плагина, а вопросы взаимодействия с XBMC затронуты вскользь. Я же хочу рассказать о том, что превращает скрипт на языке Python (далее — Питон) в плагин XBMC.
+22
Мега-Учебник Flask, Часть 2: Шаблоны
6 мин
186KТуториал
Перевод
Это вторая статья в серии, где я описываю свой опыт написания веб-приложения на Python с использованием микрофреймворка Flask.
Цель данного руководства — разработать довольно функциональное приложение-микроблог, которое я за полным отсутствием оригинальности решил назвать
Если вы следовали инструкциям в первой части, то у вас должно быть полностью работающее, но еще очень простое приложение с такой файловой структурой:
Для запуска приложения вы запускаете скрипт run.py, затем открываете url http://localhost:5000 в вашем браузере.
Цель данного руководства — разработать довольно функциональное приложение-микроблог, которое я за полным отсутствием оригинальности решил назвать
microblog
.Оглавление
Часть 1: Привет, Мир!
Часть 2: Шаблоны
Часть 3: Формы
Часть 4: База данных
Часть 5: Вход пользователей
Часть 6: Страница профиля и аватары
Часть 7: Unit-тестирование
Часть 8: Подписчики, контакты и друзья
Часть 9: Пагинация
Часть 10: Полнотекстовый поиск
Часть 11: Поддержка e-mail
Часть 12: Реконструкция
Часть 13: Дата и время
Часть 14: I18n and L10n
Часть 15: Ajax
Часть 16: Отладка, тестирование и профилирование
Часть 17: Развертывание на Linux (даже на Raspberry Pi!)
Часть 18: Развертывание на Heroku Cloud
Часть 2: Шаблоны
Часть 3: Формы
Часть 4: База данных
Часть 5: Вход пользователей
Часть 6: Страница профиля и аватары
Часть 7: Unit-тестирование
Часть 8: Подписчики, контакты и друзья
Часть 9: Пагинация
Часть 10: Полнотекстовый поиск
Часть 11: Поддержка e-mail
Часть 12: Реконструкция
Часть 13: Дата и время
Часть 14: I18n and L10n
Часть 15: Ajax
Часть 16: Отладка, тестирование и профилирование
Часть 17: Развертывание на Linux (даже на Raspberry Pi!)
Часть 18: Развертывание на Heroku Cloud
Краткое повторение
Если вы следовали инструкциям в первой части, то у вас должно быть полностью работающее, но еще очень простое приложение с такой файловой структурой:
microblog\
flask\
<файлы виртуального окружения>
app\
static\
templates\
__init__.py
views.py
tmp\
run.py
Для запуска приложения вы запускаете скрипт run.py, затем открываете url http://localhost:5000 в вашем браузере.
+37
Мега-Учебник Flask, Часть 1: «Привет, Мир!»
6 мин
572KТуториал
Перевод
Это первая статья в серии, где я буду документировать мой опыт написания веб-приложения на Python, используя микрофреймворк Flask.
Здесь список всех статей в серии:
Часть 1: Привет, Мир!
Часть 2: Шаблоны
Часть 3: Формы
Часть 4: База данных
Часть 5: Вход пользователей
Часть 6: Страница профиля и аватары
Часть 7: Unit-тестирование
Часть 8: Подписчики, контакты и друзья
Часть 9: Пагинация
Часть 10: Полнотекстовый поиск
Часть 11: Поддержка e-mail
Часть 12: Реконструкция
Часть 13: Дата и время
Часть 14: I18n and L10n
Часть 15: Ajax
Часть 16: Отладка, тестирование и профилирование
Часть 17: Развертывание на Linux (даже на Raspberry Pi!)
Часть 18: Развертывание на Heroku Cloud
Я разработчик ПО с двузначным числом лет опыта разработки комплексных приложений на нескольких языках. Впервые я познакомился с Python для создания привязок к C++ библиотеке на работе. Вдобавок к Python, я писал веб-приложения на PHP, Ruby, Smalltalk и, верите вы или нет, еще на С++. Из всего этого, я нахожу комбинацию Python/Flask самой гибкой.
Здесь список всех статей в серии:
Часть 1: Привет, Мир!
Часть 2: Шаблоны
Часть 3: Формы
Часть 4: База данных
Часть 5: Вход пользователей
Часть 6: Страница профиля и аватары
Часть 7: Unit-тестирование
Часть 8: Подписчики, контакты и друзья
Часть 9: Пагинация
Часть 10: Полнотекстовый поиск
Часть 11: Поддержка e-mail
Часть 12: Реконструкция
Часть 13: Дата и время
Часть 14: I18n and L10n
Часть 15: Ajax
Часть 16: Отладка, тестирование и профилирование
Часть 17: Развертывание на Linux (даже на Raspberry Pi!)
Часть 18: Развертывание на Heroku Cloud
Моя предыстория
Я разработчик ПО с двузначным числом лет опыта разработки комплексных приложений на нескольких языках. Впервые я познакомился с Python для создания привязок к C++ библиотеке на работе. Вдобавок к Python, я писал веб-приложения на PHP, Ruby, Smalltalk и, верите вы или нет, еще на С++. Из всего этого, я нахожу комбинацию Python/Flask самой гибкой.
+57
Определение процента схожести нарисованного 2d-полигона с заданным шаблоном
6 мин
30KПриветствую, друзья.
Как вы знаете, в последнее время технология разработки игр для мобильных платформ развивается очень бурно. Игры пишутся на самых разных движках и языках, мы не будем в этой статье обсуждать, почему тот или иной язык/движок лучше или хуже (правда ведь?). Разработчики пытаются придумать новые интересные и удобные элементы управления игрой. Мне как игроку очень нравится использовать в игре геометрические элементы. Например такие, как в игре Джаггернаут для мобильных устройств.
Я попробую рассказать вам об алгоритме определения нарисованных 2d фигур. Свою версию движка я написал на языке ActionScript 3.0. При желании(и наличии базовых знаний по геометрии) его можно реализовать на любом другом.
Итак, нам необходимо по нарисованной руками фигуре определить процент схожести с имеющейся:
Как вы знаете, в последнее время технология разработки игр для мобильных платформ развивается очень бурно. Игры пишутся на самых разных движках и языках, мы не будем в этой статье обсуждать, почему тот или иной язык/движок лучше или хуже (правда ведь?). Разработчики пытаются придумать новые интересные и удобные элементы управления игрой. Мне как игроку очень нравится использовать в игре геометрические элементы. Например такие, как в игре Джаггернаут для мобильных устройств.
Я попробую рассказать вам об алгоритме определения нарисованных 2d фигур. Свою версию движка я написал на языке ActionScript 3.0. При желании(и наличии базовых знаний по геометрии) его можно реализовать на любом другом.
Итак, нам необходимо по нарисованной руками фигуре определить процент схожести с имеющейся:
+71
Прокачка debian/ubuntu сервера для маленьких
9 мин
184KТуториал
Всем привет. Недавно появилась необходимость поднятие VPS на debian 7 за скромные деньги.
О плясках с бубенчиком я бы хотел описать тут в подробностях.
Всё в этом посте было собрано на просторах интернета, доработано, разжевано и скинуто в одну статью.
Выбор пал на https://account.nt-vps.ru/register/ из-за низких цен и неплохой стабильности за эти деньги(правда 2 дня были серьезные проблемы с сетью). Был взят VPS за 5 рублей в сутки(или за 150р в месяц) с небольшими конфигурациями ОЗУ 128mb и 10Гб на диске.
В автоматическом режиме был установлен Debian 7.0 x86-64 Wheezy и VPS была готова к работе.
64 битная сиcтема была выбрана лишь для моих личных нужд, а вам же советую, на этом VPS, ставить x86.
О плясках с бубенчиком я бы хотел описать тут в подробностях.
Всё в этом посте было собрано на просторах интернета, доработано, разжевано и скинуто в одну статью.
Содержание статьи
Выбор пал на https://account.nt-vps.ru/register/ из-за низких цен и неплохой стабильности за эти деньги(правда 2 дня были серьезные проблемы с сетью). Был взят VPS за 5 рублей в сутки(или за 150р в месяц) с небольшими конфигурациями ОЗУ 128mb и 10Гб на диске.
В автоматическом режиме был установлен Debian 7.0 x86-64 Wheezy и VPS была готова к работе.
64 битная сиcтема была выбрана лишь для моих личных нужд, а вам же советую, на этом VPS, ставить x86.
+79
intro.js — пошаговое руководство для веб-страницы
1 мин
51KЭта маленькая библиотека позволяет очень просто создать пошаговое введение для сайта или приложения. Достаточно добавить атрибуты
data-intro
и data-step
с описанием и номером шага соответственно к нужным элементам страницы. Вот так:<a href='http://google.com/' data-intro='Hello step one!' data-step='1'></a>
+129
Информация
- В рейтинге
- Не участвует
- Откуда
- Калуш, Ивано-Франковская обл., Украина
- Дата рождения
- Зарегистрирован
- Активность