Search
Write a publication
Pull to refresh
3
0.3

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

Send message

Создание консоли управления MMC

Reading time7 min
Views231K
Вы видели кабину пилота? Всё под рукой, никаких лишних телодвижений. Для того, чтобы взлететь, пилот не идёт в другой конец самолёта включать двигатель.



Так и в ситуации с консолями MMC. Вы создаёте для себя «пульт управления» и при определённых ситуациях нажимаете на нужные «кнопки».
Публикация рассчитана на системных администраторов, желающих познакомиться с методом создания консолей управления Windows, путём использования mmc.exe.
Читать дальше →

NAS + SoftetherVPN = универсальный VPN сервер

Reading time4 min
Views70K
Думаю не ошибусь, если предположу, что у любого пользователя периодически возникает необходимость получить доступ к какому-либо сетевому ресурсу (IP-камере, сетевому накопителю, компьютеру, холодильнику и т.п.) внутри домашней или офисной сети через Интернет. Ну и само собой этот доступ должен быть:
А) универсальный, т. е. с любого компьютера или гаджета;
Б) защищенный от несанкционированного доступа нежелательных лиц.

Вариантов достаточно много, но некоторые недоступны по причине недостаточной квалификации пользователя, некоторые не соответствуют приведенным двум пунктам, некоторые выходят слишком дорого… В общем перечислять «НО» можно долго.

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


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

Пишем бота для MMORPG с ассемблером и дренейками. Часть 0

Reading time4 min
Views103K
Привет, %username%! Покопавшись в статьях хабра, я нашел несколько оных про написание ботов для MMORPG. Несомненно это очень интересные и познавательные статьи, но возможности в них весьма скудны. Что если, например нужно пофармить мобов или руду по заданному маршруту убивая агрессивных мобов, игроков и всех кто будет на Вас нападать по пути, выкрикивая им вслед непристойности, да что б еще и определить не смогли. В общем полная эмуляция среднестатистического MMORPG игрока. Написание макросов для AutoIt, симуляция кликов в окне, анализ пикселей под курсором — это совсем не наш вариант. Заинтриговал? Добро пожаловать под кат!
Грязные подробности

Знакомство с GStreamer: инициализация

Reading time3 min
Views11K
image

Чуть больше года назад пользователь POPSuL опубликовал серию статей (1, 2 и 3) о мультимедийном фреймворке GStreamer (за что ему огромное спасибо). Я бы хотел продолжить его начинание, сделав больший упор на кодовую составляющую, нежели на инструменты командной строки, входящие в состав GStreamer.

В данной статье я расскажу о самой первой операции при работе с фреймворком — инициализации. А в качестве закрепления материала мы напечатаем версию GStreamer.
Читать дальше →

Selenium для Python. Глава 4. Поиск элементов

Reading time7 min
Views357K
Продолжение перевода неофициальной документации Selenium для Python.
Перевод сделан с разрешения автора Baiju Muthukadan.
Оригинал можно найти здесь.

Содержание:


1. Установка
2. Первые Шаги
3. Навигация
4. Поиск Элементов
5. Ожидания
6. Объекты Страницы
7. WebDriver API
8. Приложение: Часто Задаваемые Вопросы
Читать дальше →

Cоветы начинающему фрилансеру: как продавать услуги на развитые рынки через открытые площадки

Reading time16 min
Views64K
Я занимаюсь разработкой программного обеспечения в роли ведущего программиста-проектировщика с конца 90х годов. Фриланс никогда не был основным источником моего дохода. Но в 2010 году я начал всерьез заниматься фрилансом как побочным видом деятельности, приносящим существенный доход (за несколько месяцев я вышел на уровень продаж порядка $5k в месяц с фрилансерских контрактов с практически нулевыми расходами на исполнение контрактов, за исключением моего времени). Позднее я переехал в Северную Америку, но фриланс продолжает оставаться для меня важным побочным бизнесом. Кроме того, в своей работе я постоянно общаюсь с фрилансерами, в т.ч. профессиональными full-time фрилансерами из Северной Америки.

В этой статье я хотел бы поделиться своим опытом работы на площадках вроде elance.com с коллегами из экс-СССР и дать конкретные рекомендации по входу на рынок, позиционированию услуг, конкуренции с демпингом из Южной Азии, а также дать ликбез по общей профессиональной подготовке.
Много текста с конкретными примерами

Пишем свой плагин для nagios

Reading time1 min
Views9.7K
В своей повседневной работы я очень активно использую nagios. Как мне кажется, это очень мощная система для мониторинга серверов. Можно мониторить загрузку сервера, доступность разных серверов и тд и тп.

Для нагиоса есть очень много плагинов. Большое собрание плагинов находится по адресу nagiosplugins.org. Можно найти подходящий для себя, поставить и наслаждаться жизнью. Но что же делать если ни один плагин не устраивает вас по функционалу? Да ничего. Напишем свой. Это очень просто.

Итак начнем.

Первое что нам нужно знать для написания простейшего плагина это как работает нагиос на базовом уровне.

Он парсит свой конфиг, находит там команду запуска какого-либо плагина и запускает. Например, php -f checkServer.php. checkServer.php выполняет какую-то свою работу по проверке сервера и отдаёт в ответ статусное сообщение и код завершения работы.

Нагиос понимает 4 кода завершения работы
  • 0 — Все ок.
  • 1 — Предупреждение
  • 2 — Критическая ошибка
  • 3 — Что-то неизвестное случилось

Статусное сообщение это любая информация которая выводится скриптом на стандартный вывод.

И так сам скрипт простейшего плагина под nagios(на php).

define( "STATUS_OK", 0 );
define( "STATUS_WARNING", 1 );
define( "STATUS_CRITICAL", 2 );
define( "STATUS_UNKNOWN", 3 );

$checkFilePath = 'file';
if(file_exists($checkFilePath))
{
echo 'File exists. Everything is ok';
exit(STATUS_OK);
}

echo 'File does not exists';
exit(STATUS_CRITICAL);


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

PIC16F1503. Тачка на прокачку — 1. Звук

Reading time6 min
Views86K
Думаю, у каждого родителя бывает такой момент, когда он в магазине на кассе обнаруживает ребенка с нечто, и ребенок утверждает что именно это нечто очень важно для всего мира на земле и для него в частности. Вот и у меня такое случилось в очередной раз. С ходу оценив стоимость этого нечта, родительская жаба махнула рукой и решила, что один раз живем и все равно всех денег не заработать. Разум же оценил скорость умирания этого нечта и тоже дал добро.

В результате детский автопарк пополнился вот таким вот чудом китайской инженерии. Джип, с «люстрой» и лебедкой!



Чудо умело мигать «люстрой» и «фарами» и громко производить три записанных звука. Согласно всем канонам, машинка довольно быстро «умерла» и была принесена в ремонт. Я же машину в ремонт брать отказывался, мотивируя отказ невымытыми руками и недоеденным ужином. Плюс китайцы как-то смогли выжать из этой машинки пару лишних децибел на частоте, резонирующей с моим черепом (аж зубы заныли), поэтому мне совсем не улыбалось повторно испытать те же самые ощущения.

В результате долгих переговоров было решено, что простая смена батареек — это уже не модно. Ведь все настоящие водители тюнят свои машины в специальных студиях, после чего ездят на машинах, которых ни у кого нет. Вот и я взял машину в студию «Всё Моё» для тюнинга…
Читать дальше →

Дисциплина, или этот проклятый рабочий день

Reading time3 min
Views21K
Как человек сугубо гражданский, большую часть сознательной жизни я презирал само слово дисциплина. Означало оно: гадкое казенное принуждение к какой-то примитивной бессмысленной деятельности, вроде хождения строевым шагом, которую сам для себя никто в здравом уме не выберет. Непослушание же карается тупой ненавистной превосходящей силой. Непривлекательные типажи по обе стороны дисциплинарного процесса. Насаждающие — непробиваемые «козырьки» из анекдотов, упивающиеся своим кусочком власти. И дисциплинируемые – унизительно послушные бараны без собственного волеизъявления. Ни к одним не тянет примкнуть.

Изрядная порция страданий по поводу такого устройства жизни достается гражданскому человеку на офисной работе. Приходится придерживаться фиксированных рабочих дней и часов (кто их вообще придумал?), а также порой сидеть на работе, когда не работается, и делать объективно бессмысленные вещи. Ни для кого не секрет, что бывают дни, когда организации было бы дешевле просто отпустить нас домой, во внеочередной оплачиваемый отпуск. Просто поваляться на диване, выспаться и набраться сил. В такой неудачный день мы не работники, и ни к чему это дисциплинарное насилие с более чем скромным результатом. В конце концов, наше дело – порождать добавленную стоимость, а не впечатлять начальство продолжительностью своего рабочего дня. Отдохнув и восстановив силы, мы вернемся с бОльшей энергией и продуктивностью.

Подвижки в эту сторону уже давно начались среди компаний-пионеров управленческих методик, вроде Netflix, чей вид деятельности допускает подобные эксперименты. Гибкие рабочие графики, отсутствие учета отпусков и выходных, удаленная работа, послеобеденный сон по желанию – всем этим теоретически уже лет 10 как никого не удивишь. Они действительно молодцы! Ведь у всех нас разные биоритмы, и чем тратить уйму сил на преодоление своей природы, почему бы рабочему расписанию не посторониться и не приспособиться к человеку? Все мы за идеальный рабочий процесс – интегрированный в жизнь, естественный, в радость.

Однако последнее время я отношусь к дисциплине со все возрастающим уважением. В пользу этого есть несколько доводов.
Читать дальше →

Как «согнуть» свет? Или краткий экскурс в мир волоконной оптики

Reading time19 min
Views70K
Доброго дня, читатель! Наверняка каждый слышал о волоконной оптике, многие имели с ней дело в телекоммуникациях, у кого-то даже проведен оптоволоконный кабель в дом. В общем, этот термин на слуху; да и суть вопроса – передача света на расстояние по тонкому волокну – в общем виде понятна. Но я предлагаю немного углубиться в эту технологию, во многом изменившую мир. В этом посте я постараюсь простым и понятным языком объяснить суть волоконной оптики, как это работает – на уровне простого физического понимания, с упрощениями и примерами, без страшных формул. Иными словами, «на пальцах». Если интересно, то добро пожаловать под кат. Осторожно: много текста, наличествуют картинки.

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

Краткий курс компьютерной графики: пишем упрощённый OpenGL своими руками, статья 3.14 из 6

Reading time15 min
Views32K

Содержание основного курса




Общение вне хабра

Если у вас есть вопросы, и вы не хотите задавать их в комментариях, или просто не имеете возможности писать в комментарии, присоединяйтесь к jabber-конференции 3d@conference.sudouser.ru

4 Приветствие и вступление

Нумерация в прошлой статье закончилась на 3, в этой будем продолжать нумеровать насквозь.
UPD: ВНИМАНИЕ! Раздел, начиная с номера 3.1, 3.14 и 3.141 и далее, будет о тонкостях реализации основы основ компьютерной графики — линейной алгебры и вычислительной геометрии. О принципах графики пишет haqreu, я же буду писать о том, как это можно внятно запрограммировать!

Эта статья является продолжением серии статей о практической реализации элементов вычислительной геометрии, и, в частности, программного отрисовщика, с использованием C++98. Мы с haqreu сознательно идем на использование прошлой версии стандарта и написание собственной геометрической библиотеки для того, чтобы, во-первых, выпустить код примеров, которые без особых трудностей будут компилироваться большинством имеющихся компиляторов, а во-вторых, чтобы в нашем коде не было ничего, что скрыто в недрах библиотеки. В статье излагаются вопросы реализации шаблона прямоугольной матрицы template<size_t DimRows,size_t DimCols,typename number_t> class mat;

4.1 Благодарности
Я выражаю огромную признательность haqreu, как основоположнику данного курса. Так держать!
Я очень признателен lemelisk за предварительное рецензирование и ревью моих исходников. Спасибо за плодотворные дискуссии!
Также я должен поблагодарить Mingun за ценное замечание об оформлении шаблонов. Надеюсь, они стали доступнее для прочтения.
Познавательного чтения!

Универсальный способ мониторинга Asterisk с помощью Zabbix

Reading time5 min
Views55K
image

Добрый день, хабровчане.

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

Что из этого вышло — можно посмотреть под катом.
Читать дальше →

Краткий курс компьютерной графики: пишем упрощённый OpenGL своими руками, статья 4б из 6

Reading time5 min
Views65K

Содержание курса




Улучшение кода






Official translation (with a bit of polishing) is available here.




Сегодня мы заканчиваем с ликбезом по геометрии, в следующий раз будет веселье с шейдерами!
Чтобы не было совсем скучно, вот вам тонировка Гуро:



Я убрал текстуры, чтобы было виднее. Тонировка Гуро очень проста: добрый дяденька-моделёр дал нам нормальные вектора к каждой вершине объекта, они хранятся в строчках vn x y z файла .obj. Мы считаем интенсивность освещения для каждой вершины треугольника и просто интерполируем интенсивность внутри. Ровно как мы делали для глубины z или для текстурных координат uv!

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

Текущий код, который сгенерировал эту картинку, находится здесь.
Читать дальше →

Краткий курс компьютерной графики: пишем упрощённый OpenGL своими руками, статья 4a из 6

Reading time7 min
Views88K

Содержание курса



Улучшение кода






Official translation (with a bit of polishing) is available here.




Построение перспективного искажения


Четвёртая статья будет разбита на две, первая часть говорит про построение перспективного искажения, вторая про то, как двигать камеру и что из этого следует. Задача на сегодня — научиться генерировать вот такие картинки:



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

Влияние кабелей на параметры систем «усилитель-АС» и «микрофон-микшер»

Reading time7 min
Views72K
В существенном влиянии кабелей на звук уверено подавляющее большинство аудиофилов. На эту тему написано немало статей как сторонников, так и противников данной теории, впрочем, мне не встретилась ни одна статья, содержащая реальные технические расчёты, которые доказывали бы ту или иную точку зрения. В текстах обычно приводятся собственные домыслы, которые порой далеки от реальности. Я использовал технические знания и расчёты, чтобы разобраться в данной теме.
Читать дальше →

Краткий курс компьютерной графики: пишем упрощённый OpenGL своими руками, статья 3 из 6

Reading time6 min
Views97K

Содержание курса



Улучшение кода






Official translation (with a bit of polishing) is available here.




А что потом? Я разобрал весь материал!



В статьях 7 и 8 мы поговорим о программировании непосредственно под OpenGL. Есть ненулевая вероятность получить краткий курс OpenCL/CUDA в статьях 9+.

Удаление невидимых поверхностей


Знакомьтесь, это мой друг z-buffer головы абстрактного африканца. Он нам поможет убрать визуальные артефакты отбрасывания задних граней, которые у нас оставались в прошлой статье.



Кстати, не могу не упомянуть, что эта модель, которую я использую в хвост и в гриву, была любезно предоставлена замечательным Vidar Rapp.

Мы её можем использовать исключительно в рамках обучения рендерингу. Это очень качественная модель, с которой я варварски обошёлся, но я обещаю вернуть ей глаза!
Читать дальше →

Краткий курс компьютерной графики: пишем упрощённый OpenGL своими руками, статья 2 из 6

Reading time7 min
Views145K

Содержание курса



Улучшение кода






Official translation (with a bit of polishing) is available here.




Update:


Внимание, статья 4в даёт новую, более простую версию растеризатора.

Давайте знакомиться, это я.



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

В прошлый раз мы нарисовали проволочную сетку трёхмерной модели, в этот раз мы зальём полигоны. Точнее, треугольники, так как OpenGL практически любой полигон триангулирует, поэтому ни к чему разбирать сложный случай. Напоминаю, что этот цикл статей создан для самостоятельного программирования. Время, которое я здесь привожу — это не время чтения моего кода. Это время написания вашего кода с нуля. Мой код здесь только для того, чтобы сравнить ваш (рабочий) код с моим. Я совсем не являюсь хорошим программистом, поэтому ваш код может быть существенно лучше моего. Любая критика приветствуется, любым вопросам рад.

Пожалуйста, если вы следуете этому туториалу и пишете свой код, выкладывайте его на github.com/code.google.com и им подобные и давайте ссылки в комментариях! Это может хорошо помочь как и вам (другие люди могут чего посоветовать), так и будущим читателям.
Читать дальше →

Краткий курс компьютерной графики: пишем упрощённый OpenGL своими руками, статья 1 из 6

Reading time7 min
Views411K

Содержание курса



Улучшение кода






Official translation (with a bit of polishing) is available here.




Постановка задачи


Цель этого цикла статей — показать, как работает OpenGL, написав его (сильно упрощённый!) клон самостоятельно. На удивление часто сталкиваюсь с людьми, которые не могут преодолеть первоначальный барьер обучения OpenGL/DirectX. Таким образом, я подготовил краткий цикл из шести лекций, после которого мои студенты выдают неплохие рендеры.

Итак, задача ставится следующим образом: не используя никаких сторонних библиотек (особенно графических) получить примерно такие картинки:



Внимание, это обучающий материал, который в целом повторит структуру библиотеки OpenGL. Это будет софтверный рендер, я не ставлю целью показать, как писать приложения под OpenGL. Я ставлю целью показать, как сам OpenGL устроен. По моему глубокому убеждению, без понимания этого написание эффективных приложений с использованием 3D библиотек невозможно.
Читать дальше →

Автоматизация построения системы защиты информации в соответствии с приказом ФСТЭК №21

Reading time3 min
Views10K
Здравствуйте, уважаемые пользователи Хабра!

Хотелось бы поделиться с вами проектом автоматизированного построения системы защиты информации (СЗИ) в соответствии с Приказом ФСТЭК № 21.

Как все помнят, почти два года назад вступили в силу Приказы ФСТЭК № 17 и 21, описывающие меры по обеспечению безопасности в ГИС и ИСПДн соответственно. С тех пор мы начали проводить работу по анализу данных документов в рамках курсовых работ с целью разработки алгоритма построения СЗИ и последующей его автоматизацией в дипломном проекте.


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

Information

Rating
3,741-st
Location
Екатеринбург, Свердловская обл., Россия
Date of birth
Registered
Activity

Specialization

Backend Developer, Разработчик Directum RX
Lead
From 350,000 ₽
.NET Core
PostgreSQL
DevOps
Reverse development
C#