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

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

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

Цветовые схемы в Vim

Время на прочтение3 мин
Количество просмотров40K
Про vim написано столько, что трудно себе представить, что какие-то темы остались неосвещёнными.Ан нет… Есть кое-что о чём написано совсем немного.Восполняем пробел. Я надеюсь что эта заметка понравится вимоводам и вимоманам.
Читать дальше →
Всего голосов 76: ↑71 и ↓5+66
Комментарии24

Делаем приватный монитор из старого LCD монитора

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


Вы наконец-то можете сделать кое-что со своим старым LCD монитором, который завалялся у Вас в гараже. Превратите его в шпионский монитор! Для всех вокруг он будет выглядеть просто белым экраном, но не для Вас, потому что у Вас будут специальные «волшебные» очки.

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

Читать дальше →
Всего голосов 1486: ↑1468 и ↓18+1450
Комментарии327

Веломузыка

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

Тема портативного аудио на велосипеде часто становится актуальной после регулярных покатушек. Само по себе катание на велосипеде с группой алкобайкеров знакомых лиц не похоже на обычные встречи. Большую часть пути все находятся в молчании. От монотонного кручения педалей и относительно бедного ночного разнообразия перед глазами (днем ведь работаем, а катаемся вечером) нечто под названием желание переходит в скуку. Скучно долго монотонно молча крутить педали, одиноко. Какой выход?
«Каждый видит лишь то, что в нем уже есть» — не считае эту статью, как руководство к воровству тишины соседа. Никто этого не делал, и не собирается.
Нужен связующий элемент — музыка. Слушаешь ее — знаешь что слушает сосед. Заместо невозможности говорить получаем возможность слушать. Часто ли в жизни у вас бывают моменты когда все люди слушают и молчат? ( маршрутки с радио не в счет, там водитель свои уши отдает радиостанции, видимо от страха незнания что с ними делать). Поэтому очень важно слушать то, что вы действительно считаете нужным и продуманным. Что-то я все не про то.
Читать дальше →
Всего голосов 87: ↑65 и ↓22+43
Комментарии58

О ненужности Spanning Tree

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


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

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

И да, конечно, никто не отменял Spanning Tree как технологию защиты от человеческой ошибки.
Читать дальше →
Всего голосов 66: ↑54 и ↓12+42
Комментарии152

Видеоплеер из подручных материалов

Время на прочтение6 мин
Количество просмотров66K
Эта статья расскажет, как сделать видеоплеер из предметов, которые можно найти в кладовке любого айтишника. Ардуино, журнал Vogue, и дисплей от Нокиа 3310 можно оставить в покое — они нам не понадобятся. Наличие паяльника приветствуется, но можно обойтись и без него.

Судя по скорости развития технологий, лет через десять появится поколение, никогда не видевшее электронно-лучевых трубок. А между тем, история видео дисплеев начиналась с совершенно других устройств…
Читать дальше →
Всего голосов 337: ↑330 и ↓7+323
Комментарии61

Несколько полезных сервисов

Время на прочтение2 мин
Количество просмотров126K
Хочу поделиться ссылками на несколько полезных сервисов. Некоторые из них помогут сэкономить время, другие — сделают за Вас незнакомую/нелюбимую работу. Список разбит по категориям, чтобы было легче ориентироваться.

Сервисы опросов
userreport.com (добавил Romanych)
simpoll.ru
webanketa.com (добавил mihass)

Кнопки постинга в социальные сети
Кнопка от Яндекса
addthis.com (добавил UksusoFF)
share42.com
Читать дальше →
Всего голосов 382: ↑356 и ↓26+330
Комментарии108

Загрузка динамической библиотеки из памяти в Linux

Время на прочтение6 мин
Количество просмотров6.9K
В одном моем кроссплатформенном проекте мне понадобилась возможность проверять цифровые подписи плагинов перед загрузкой. Ни один из вариантов с созданием файла не является безопасным, так как можно подменить файл между проверкой подписи и его загрузкой, так же нельзя проверить подпись после загрузки, так как уже выполнились статические конструкторы. Поэтому необходимо загружать плагин, не создавая файла.

Перехватить функции open, mmap и прочие невозможно, так как ld.so слинкован с библиотекой си статически, исполняемые файлы, загруженные же своим загрузчиком, «неполноценны» (даже с перехватом функций в libdl): они не регистрируются в списке загруженных библиотек и/или их символы не видны через dlsym. Следовательно, остается только перехват системных вызовов.
Here be dragons
Всего голосов 45: ↑41 и ↓4+37
Комментарии26

Создаём свой Look and Feel — Часть I

Время на прочтение25 мин
Количество просмотров21K
Добрый день, Хабражитель!

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

Сегодня же я представлю на Ваш суд «последний рубеж» погружения во все те возможности, которые предлагает нам Swing – создание своего Look and Feel класса, а также всего того, что потребуется по ходу дела.

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

Но даже если Вы не собираетесь делать свой LaF – советую всё же ознакомиться с содержанием. Уверен Вы найдёте много нового и интересного. И даже, возможно, поймёте в чём был корень той или иной интерфейсной проблемы, которая, вероятно, мучала Вас долгие месяцы и годы.

Tip: Если Вы не ещё не знакомы с графикой и Swing в Java более-менее тесно — советую сперва перечитать несколько статей на тему (к примеру оффициальный туториал, статью по Swing от Skipy или же мои предыдущие вводные статьи).

Итак, подробнее под катом...
Всего голосов 61: ↑58 и ↓3+55
Комментарии40

Расширение функциональности не имея исходного кода

Время на прочтение4 мин
Количество просмотров3.2K
Думаю, у каждого из вас было ощущение, что в той, или иной программе не хватает какой-нибудь must have фичи. Если программа идет с исходным кодом, то проблем не возникает. Любой желающий может дописать нужную функциональность. А что если программа закрытая? Не стоит отчаиваться, это не пропащий случай. Сейчас расскажу, как можно дописать за автора то, чего не хватает.
Читать дальше →
Всего голосов 112: ↑109 и ↓3+106
Комментарии31

Продуктивная работа в vim с использованием snipMate

Время на прочтение4 мин
Количество просмотров10K
В этой статье я хочу рассказать об одном замечательном плагине для vim, который значительно ускоряет написание кода, вёрстку и редактирование текстов.

snipMate — позволяет быстро вставить в документ текстовый шаблон с помощью ключевого слова + <tаb> и предоставляет удобную навигацию по вставленному шаблону.
Читать дальше →
Всего голосов 45: ↑43 и ↓2+41
Комментарии24

Помогите OpenStreetMap, пока остывает ваш кофе

Время на прочтение2 мин
Количество просмотров1.8K
Редактировать OpenStreetMap ещё никогда не было так просто! Я бы хотел рассказать о приложении Mapzen POI Collector от компании CloudMade для iPhone и Android, которое позволяет добавлять новые POI в базу данных OpenStreetMap и редактировать уже существующие. То, что нужно помогать OSM, я думаю, всем понятно и даже не обсуждается, поэтому это объяснять не буду. Теперь вы можете помогать ещё проще — вы можете не откладывая добавить объект, находясь прямо в нём и для этого вам не нужен полноценный компьютер с Flash или Java. Например, пока остывает ваш кофе, не поленитесь добавить ваше кафе в OpenStreetMap, если там его ещё нет. Но, конечно, доступно не только добавление кафе, но и десятков других типов POI (и по крайней мере в Android все они точно на русском языке, так что с языком проблем не будет — вам не нужно будет искать название по-английски и запоминать его). Это было бы гораздо полезнее для всего общества, чем играться, например, в foursquare и от этого мне лично гораздо интереснее, чем тот же самый foursquare.

Итак, установите приложение с помощью App Store или Android Market. Mapzen POI Collector впервые появился в App Store 26 ноября 2009 года. Позднее появилась версия для Android.
Читать дальше →
Всего голосов 50: ↑45 и ↓5+40
Комментарии44

Asterisk от простого — к сложному

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

Вступление


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

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

Целью моих статей является желание показать, что астериск красив сам по себе, без дополнительных надстроек, что можно, используя минимальные, ускоряющие работу скриптовые языки — творить чудеса. Хочется показать, ищущим и желающим познать новое, людям нюансы и тонкости работы системы.
Читать дальше →
Всего голосов 48: ↑45 и ↓3+42
Комментарии41

Arch Linux: корневой раздел на Samba

Время на прочтение4 мин
Количество просмотров5K
Приветствую, друзья!
Сегодня я вам не буду рассказывать, почему я люблю Arch Linux, вы сами всё увидите.

Задача


— установить Arch Linux таким образом, чтобы корневой раздел монтировался по сети с Samba-сервера

Решение


Для решения этой задачи нам понадобится:
— установленный Arch Linux (или LiveCD)
— mkinitcpio-mount-hook из AUR (http://aur.archlinux.org/packages.php?ID=40372)
— ещё пара небольших hook-ов: mount.cifs и mount.loop
— extra/devtools (содержит mkarchroot)
— core/mkinitcpio-nfs-utils (в этом пакете находятся утилиты и скрипты для получения IP адреса)
— собирающий скрипт
Читать дальше →
Всего голосов 42: ↑36 и ↓6+30
Комментарии9

Настройка телефона Cisco серии 79XX для работы с Asterisk

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


В статье будут описаны нюансы настройки IP-телефона Cisco на примере цискофона 7942G.
Итак, если вы присматриваетесь к VoIP-устройствам Cisco серии 79XX, то добро пожаловать под кат.
Читать дальше →
Всего голосов 38: ↑35 и ↓3+32
Комментарии30

Кто разводит рыбок? Или решение загадки Эйнштейна регулярным языком

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



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

Интересно? Прошу под кат.
Всего голосов 121: ↑117 и ↓4+113
Комментарии43

Учим систему страничной адресации и обработке прерываний

Время на прочтение5 мин
Количество просмотров7.6K
Приветствую. Сегодня поговорим обо всём понемногу. Введём в нашу наработку paging, разберёмся с прерываниями и их видами. Напишем несколько функций, добавим сие в код из предыдущего поста.
Читать дальше →
Всего голосов 28: ↑23 и ↓5+18
Комментарии14

Как стать системным администратором — пособие для начинающих (часть 1)

Время на прочтение10 мин
Количество просмотров828K
Так получилось, что эту весну я провёл в поисках/собеседованиях людей аж на четыре вакансии, связанные с системным администрированием. Я пообщался с несколькими десятками людей и заметил характерные ошибки и проблемы, с которыми они сталкиваются. Излагаю то, что заметил, а так же свои мысли, как эти проблемы решить.

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

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

Какие бывают системные администраторы?

Читать дальше →
Всего голосов 243: ↑226 и ↓17+209
Комментарии142

Простой и надежный пароль – коллективное творчество

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

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

Поговорим о методах взлома


Чтобы понимать всю глубину проблемы, пару строк посвящу методике взлома. Итак, как же злоумышленник может узнать/угадать/подобрать ваш пароль?
  1. Метод логического угадывания. Работает в системах с большим количеством пользователей. Злоумышленник пытается понять вашу логику при составлении пароля (логин+2 символа, логин наоборот, самые распространенные пароли и т.п.) и применяет эту логику ко всем пользователям. Если пользователей много, очень скоро произойдет коллизия и пароль будет угадан;
  2. Перебор по словарю. Этот вид атаки применяется, когда база данных с хешированными паролями слита с сервера. Может сочетаться с заменой букв (опечатки) или с подстановкой цифр/слов в начало или конец слова в качестве приставки или суффикса. Также используются словари, набранные в неверной раскладке клавиатуры (русские слова в английской раскладке);
  3. Перебор по таблице хешированных паролей. Передовой метод взлома паролей, когда хеши уже сгенерированы и остается только найти в базе соответствие хеша паролю. Работает очень быстро даже на слабых машинах и не оставляет никаких шансов владельцам коротких паролей.
  4. Другие методы: социотехника и социальный инжиниринг, использование keylogger'ов, снифферов, троянов и т.п.
Читать дальше →
Всего голосов 84: ↑63 и ↓21+42
Комментарии74

Особенности зарубежной типографики

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

Читать дальше →
Всего голосов 105: ↑104 и ↓1+103
Комментарии46

«Съешь меня»… нет, не так… «Выполни меня»!

Время на прочтение15 мин
Количество просмотров2.9K
У меня периодические возникают разные потребности решения мелких насущных задач в Mac OS X. Для этих целей я обычно делаю небольшие программы, которые «закрывают» потребность частным образом. Но иногда хочется, чтоб программа была универсальной, и ей могли воспользоваться другие люди при необходимости (например «Переlator»). Так получилось и в этот раз…

Я люблю, когда Dock отображается всегда на экране. Но при запуске Симулятора iOS постоянно приходилось включать автоматические скрытие, чтобы симулятор полностью умещался на экране. Появилась задача — автоматизировать этот процесс. За пару дней набросал универсальную программу, с помощью которой можно задать AppleScript на определённое действие любой программы: «Программа запущена», «Программа завершена», «Программа активирована», «Программа деактивирована» и пр.



Читать дальше →
Всего голосов 75: ↑64 и ↓11+53
Комментарии26

Информация

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