Pull to refresh
0
0
Send message

Обзор нового Intercepter-NG 0.9.10

Reading time10 min
Views137K
Intro

С большим удовольствием хочу представить новую версию Intercepter-NG 0.9.10, которая, на мой взгляд, в значительной степени расширяет область применения инструмента. Данный обзор будет представлен не в виде сухого перечисления нововведений, а скорее как описание новых векторов атак вместе с рядом технических подробностей и элементами hack-story. Приступим…

image
Читать дальше →
Total votes 31: ↑31 and ↓0+31
Comments19

Сервисы для проверки навыков тестирования на проникновение

Reading time3 min
Views88K


В прошлом топике я опубликовал обзор дистрибутива PentestBox со ссылками и описанием входящих в него утилит. Надеюсь вам хватило времени ознакомиться с ними и изучить функционал. Сегодня я предлагаю вам несколько сервисов для тестирования своих навыков на практике. Это специализированные сервисы, абсолютно легальные и позволяющие всем желающим проверить свои знания и умения.
Читать дальше →
Total votes 27: ↑27 and ↓0+27
Comments3

Использование C# и Wix# для создания msi-пакетов

Reading time9 min
Views39K
От переводчика: англоязычные it-блоггеры обычно начинают такие статьи со слов I'm so excited. Про Wix# я узнал совершенно случайно и спешу поделиться этим открытием с хабрасообществом, т.к. каждый, кто имел дело с «голым» WiX, знает, насколько неприятным может быть этот процесс. И вот теперь можно сделать msi-дистрибутив, написав всего лишь несколько строчек на C#! По-моему, это круто! А относительно недавно (4 дек 2014) автор Wix# Олег Шило дал интервью изданию InfoQ. Перевод этого интервью я и представляю вашему вниманию. И прошу не судить строго за кальку некоторых слов — тот же «деплоймент» мне как-то ближе, чем «развертывание».
Предоставим слово Олегу Шило, автору Wix#
Total votes 26: ↑24 and ↓2+22
Comments9

От простого к сложному: подборка плат для разработчиков и любителей электроники

Reading time5 min
Views23K


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

При этом некоторые платы очень известны, другие — либо забыты, либо их просто не особо продвигали. В этом обзоре указаны некоторые интересные модели, которые многим могут оказаться полезны, и узнать о них стоит. В подборке платы стоят по мере увеличения функциональности, так что действительно, идем от простого к сложному.
Читать дальше →
Total votes 18: ↑13 and ↓5+8
Comments20

Автоматическая оптимизация алгоритмов с помощью быстрого возведения матриц в степень

Reading time20 min
Views83K
Пусть мы хотим вычислить десятимиллионное число Фибоначчи программой на Python. Функция, использующая тривиальный алгоритм, на моём компьютере будет производить вычисления более 25 минут. Но если применить к функции специальный оптимизирующий декоратор, функция вычислит ответ всего за 18 секунд (в 85 раз быстрее):


Дело в том, что перед выполнением программы интерпретатор Python компилирует все её части в специальный байт-код. Используя метод, описанный хабрапользователем SkidanovAlex, данный декоратор анализирует получившийся байт-код функции и пытается оптимизировать применяющийся там алгоритм. Далее вы увидите, что эта оптимизация может ускорять программу не в определённое количество раз, а асимптотически. Так, чем больше будет количество итераций в цикле, тем в большее количество раз ускорится оптимизированная функция по сравнению с исходной.

Эта статья расскажет о том, в каких случаях и каким образом декоратору удаётся делать подобные оптимизации. Также вы сможете сами скачать и протестировать библиотеку cpmoptimize, содержащую данный декоратор.
Читать дальше →
Total votes 216: ↑213 and ↓3+210
Comments43

В опасном мире символов…

Reading time5 min
Views96K
image

Сейчас, когда компьютерная графика достигает всё новых высот, модели в играх становятся близкими к фотореализму, а порог вхождения в игры становится всё ниже, сложно представить себе, что до сих пор развиваются игры, в которых на первое место выходит интересный геймплей и огромные возможности, а графики… нет. Имя этому жанру — Roguelike.

Цитата с Wikipedia:
Roguelike (читается как ро́углайк; сленг «рогалик») — поджанр компьютерных ролевых игр. Характерными особенностями roguelike являются генерируемые случайным образом уровни и необратимость смерти персонажа — в случае его гибели игроку предлагается начать игру заново. Большинство игр этого жанра было разработано на некоммерческой основе и использует двумерный текстовый интерфейс и управление клавиатурой.

Читать дальше →
Total votes 118: ↑104 and ↓14+90
Comments104

Будущее нашей цивилизации: гибель или бессмертие?

Reading time16 min
Views95K
Наблюдая за тем, как развивается технический прогресс, наука и медицина, все чаще приходишь к мысли, что к концу XXI века человечество обретет силу древних богов, о которых когда-то слагались мифы. Но к чему все это приведет и что ждет нас на пути к Олимпу?

image

Все технические революции, которые мы наблюдаем, можно считать этапами большого пути к одной великой цели: созданию планетарной цивилизации. Переход к ней должен стать, вероятно, величайшим событием в истории человечества. Мало того, поколение живущих сегодня людей можно смело считать самым значительным из всех, что когда-либо жили на нашей планете. Именно они должны определить, достигнет ли человечество этой великой цели или будет ввергнуто в пучину хаоса. С того момента, когда наши предки впервые вышли из Африки около 100 000 лет назад, миновало около 5000 поколений, но лишь одно поколение — сегодняшнее — определит судьбу нашего мира.
И к чему это все?
Total votes 137: ↑126 and ↓11+115
Comments76

Кратко о гидродинамике: сохранение энергии

Reading time7 min
Views17K
В очередной раз извиняюсь за медленное написание постов в запланированной серии. В этот раз причина промедления объективна, в виде конференции в Вене, хотя и имеет значимую субъективную составляющую в виде собственного там участия и некоторых бюрократических моментов подготовки и оплаты.

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

Предыдущие посты:
Кратко о гидродинамике: ты помнишь, как всё начиналось?
Кратко о гидродинамике: уравнения движения

Снова формулы
Total votes 26: ↑20 and ↓6+14
Comments11

Спать мало, но правильно?

Reading time7 min
Views897K
Навеяно этим постом от юзера case. Пост не новый, и на главную он не попал.
Но я вот наткнулся на него сегодня и решил написать кое-что о сне. Уверен, что это будет полезно многим хабравчанам, да и случайным читателям тоже.
Читать дальше →
Total votes 713: ↑670 and ↓43+627
Comments420

Советы front-end разработчику

Reading time7 min
Views191K


Привет, читатель хабра.

Наверное, ты сразу спросишь меня: «Да кто ты такой, чтобы давать мне советы?». Итак, немного обо мне.

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

Я не хочу рассказывать как надо делать, эта статья результат моего опыта и попытка написать рекомендации тем, кто только начинает, хотя и для матерых верстальщиков (слово режущие слух) здесь могут найтись интересные идеи.
Если ты заинтересовался прошу под кат…
Читать дальше →
Total votes 129: ↑109 and ↓20+89
Comments139

О начинающих разработчиках и принципах работы с ними

Reading time7 min
Views141K
image

За последние десять лет через меня прошло много начинающих разработчиков. Да и чего греха таить, я тоже когда-то был начинающим разработчиком. За это время я получил тысячи вопросов а-ля “как стать разработчиком”, а также просьб взять людей к себе на практику. К сожалению, даже под чутким руководством более опытных специалистов, далеко не каждому хватает сил и мотивации перейти на качественно новый уровень. Статистика — вещь упрямая: количество “пытающихся” и “достигающих успеха” распределяется согласно принципу Парето, т.е. 20/80, где из десяти человек максимум двоим удается пройти первоначальное испытание. Остальные отваливаются по дороге или процесс обучения у них растягивается на долгие годы. И все же, каким должен быть начинающих разработчик, какими навыками и знаниями он должен обладать? Об этом и пойдет речь в статье.

Читать дальше →
Total votes 149: ↑103 and ↓46+57
Comments160

Runnable: поисковик по коду с его исполнением в VM

Reading time1 min
Views11K


Бывший сотрудник Amazon запустил поисковик по исходному коду Runnable.com, который отличается уникальной особенностью: он не только ищет код, но и исполняет его в виртуальной машине EC2 прямо в результатах поиска. Более того, можно собственноручно внести изменения в код — и снова запустить его, чтобы посмотреть результаты.
Читать дальше →
Total votes 38: ↑34 and ↓4+30
Comments10

Расширяем контекстное меню кнопки «Пуск» в Windows 8.1

Reading time5 min
Views31K


В этой статье мне хотелось бы рассказать о своем опыте расширения Windows Explorer, если конкретнее, контекстного меню, называемого «Power User Menu». Не скажу, что очень нуждаюсь в старом представлении меню кнопки «Пуск», но все таки хотелось бы иметь возможность быстрого и структурированного доступа к основным функциям необходимым в работе. Power User Menu можно вызвать двумя способами: 1. Щелкнуть правой кнопкой мыши на кнопке «Пуск». 2. Нажать комбинацию клавиш Windows Key + X. Корпорация Майкрософт предоставила возможность редактирования этого меню, однако эта возможность достаточно ограниченна и не позволяет создавать иерархию меню, пункты с пиктограммами, и поддерживает только ярлыки, да и то не всех типов. Для реализации описываемого функционала мы выполним dll инъекцию в процесс Windows Explorer, а так же осуществим перехват api вызовов управляющих работой контекстного меню. В качестве подопытной операционной системы будем использовать Windows 8.1 x64.
Читать дальше →
Total votes 47: ↑35 and ↓12+23
Comments17

Поэлементный разбор внутренностей простейшей микросхемы — ULN2003

Reading time2 min
Views82K
В предыдущих статьях с фотографиями кристаллов микросхем (1, 2, 3) — в комментариях писали о том, что было бы неплохо разобрать простую микросхему по деталям — чтобы было понятно «что есть что» на самом низком уровне, и где там «магический дым» прячется. Я долго не мог выбрать микросхему, в схеме которой можно было бы разобраться за несколько минут — но наконец решение было найдено: ULN2003 — массив транзисторов Дарлингтона.

Несмотря на свою простоту, микросхема до сих пор широко используется и производится. ULN2003 состоит из 21 резистора, 14 транзисторов и 7 диодов. Применяют её для управления относительно мощной нагрузкой (до 50 вольт / 0.5 ампер) от ножки микроконтроллера (или других цифровых микросхем). Каноническое применение — для управления мощными 7-и сегментными светодиодными индикаторами.
Скальпель, зажим, кипящая кислота....
Total votes 119: ↑118 and ↓1+117
Comments36

Уроки написания утилитки на $1 000 000

Reading time4 min
Views197K


Осенью 2008 года мы с приятелем потратили две-три недели свободного от основной работы времени, чтобы написать маленькую утилитку для бэкапа баз данных (MS SQL Server и потом MySQL). Сегодня она приносит нам около $230 000 в год и можно с уверенностью говорить, что суммарно мы заработаем на ней больше $1 000 000.

Под катом я расскажу, как это получилось и какие уроки мы из этого извлекли. Вполне возможно, что нам просто глупо повезло и опыт этот целиком неверен и теории не соответствует и только навредит вашему начинанию — читайте на свой страх и риск.
Читать дальше →
Total votes 471: ↑457 and ↓14+443
Comments247

Интерфейс Firefox 29+ и его кастомизация

Reading time10 min
Views65K
Как известно, 29-я версия браузера Firefox получила новый интерфейс под названием Australis для своей оболочки (табы, строка поиска, кнопки навигации и закладок; устранение Addon Bar и замена его на попап под кнопкой «инструментов» (три горизонтальные чёрточки, общепринятый знак для многих веб-интерфейсов)). Рассмотрим, что мы потеряли на сегодня из рычагов управления интерфейсом, которые до сих пор существовали в виде нескольких расширений браузера.

Конечно, для разработчиков расширений интерфейсов это не было неожиданным — за две версии нововведения объявляются и появляются в альфа-версиях, затем отрабатываются в бета-. Это — приерно 3 месяца на возможность подготовиться заранее (но большинство расширений поддерживают энтузиасты, которые не всегда могут выделить на это свободное время). Предусмотрена возможность частичного отката интерфейса к прежним версиям с помощью установки официального расширения Classic Theme Restorer.

Если посмотреть, на что больше всего жалуются пользователи новой версии:
1.'Это странная традиция: всё время менять интерфейс'
Total votes 53: ↑43 and ↓10+33
Comments76

Печать и воспроизведение звука на бумаге

Reading time3 min
Views102K
Можно ли закодировать звук в виде изображения, которое считывается камерой и проигрывается в реальном времени?

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

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


Читать дальше →
Total votes 207: ↑204 and ↓3+201
Comments124

Организация вызова x86-процедур из EFI Byte Code

Reading time6 min
Views7.2K
Использование технологии EFI Byte Code (сокращенно – EBC) позволяет создавать кроссплатформенные приложения и драйверы, выполняемые на виртуальном процессоре, реализованном в составе firmware платформы. Архитектура этого процессора определена в спецификации Unified Extensible Firmware Interface. В идеале, EBC-программа должна взаимодействовать исключительно с ресурсами виртуальной машины, системными таблицами UEFI и другими объектами, абстрагированными от аппаратной реализации платформы. На практике, точное следование данному принципу существенно ограничивает функциональность программного продукта. Выйти из положения не потеряв кроссплатформенности можно, если использовать подпрограммы в нативном коде центрального процессора, условно получающие управление в случае детектирования заданной аппаратной платформы.
Читать дальше →
Total votes 23: ↑23 and ↓0+23
Comments13

Модель Random Forest для классификации, реализация на c#

Reading time18 min
Views51K
Доброго времени суток, читатель. Random Forest сегодня является одним из популярнейших и крайне эффективных методов решения задач машинного обучения, таких как классификация и регрессия. По эффективности он конкурирует с машинами опорных векторов, нейронными сетями и бустингом, хотя конечно не лишен своих недостатков. С виду алгоритм обучения крайне прост (в сравнении скажем с алгоритмом обучения машины опорных векторов, кому мало острых ощущений в жизни, крайне советую заняться этим на досуге). Мы же попробуем в доступной форме разобраться в основных идеях, заложенных в Random Forest (бинарное дерево решений, бутстреп аггрегирование или бэггинг, метод случайных подпространств и декорреляция) и понять почему все это вместе работает. Модель относительно своих конкурентов довольно таки молодая: началось все со статьи 1997 года в которой авторы предлагали способ построения одного дерева решений, используя метод случайных подпространств признаков при создании новых узлов дерева; затем был ряд статей, который завершился публикацией каноничной версии алгоритма в 2001 году, в котором строится ансамбль решающих деревьев на основе бутстреп агрегирования, или бэггинга. В конце будет приведен простой, совсем не шустрый, но крайне наглядный способ реализации этой модели на c#, а так же проведен ряд тестов. Кстати на фотке справа вы можете наблюдать настоящий случайный лес который произрастает у нас тут в Калининградской области на Куршской косе.

Читать дальше →
Total votes 41: ↑40 and ↓1+39
Comments15

Есть ли жизнь после кода?

Reading time6 min
Views15K
Что происходит с кодом после того, как он написан? Во многих областях разработки ПО его жизнь только начинается. Например, в разработке для веба, приложение исполняется где-то на сервере. Значит, после написания кода встаёт задача интегрировать его в приложение и доставить на конечную машину. Именно этот процесс мы сегодня обсудим.

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

Статья написана на основе материалов внутреннего семинара компании Аори, и рассказывает о принципах деплоймента на примере процесса, построенного у нас.
Читать дальше →
Total votes 33: ↑28 and ↓5+23
Comments7

Information

Rating
Does not participate
Location
Одесса, Одесская обл., Украина
Date of birth
Registered
Activity