Search
Write a publication
Pull to refresh
21
0
Filipp Frizzy @MrFrizzy

devops

Send message

Основы разработки клиента сети I2P. Часть 2

Reading time5 min
Views9.2K
В предыдущей статье были рассмотрены задачи, необходимые для построения I2P маршутизатора, способного принимать участие в работе сети, включающие взаимодействие с другими маршутизаторами через обычный Интернет, построение тоннелей разных видов и сбор информации о других узлах сети. Несмотря на важность этих задач, I2P клиент, выполняющий лишь функции маршутизатора, с точки зрения пользователя является «вещью в себе», поскольку не делает ничего интересного пользователю. Данная статья посвящена протоколам прикладного уровня, предназначенных для передачи пользовательских данных через сеть I2P.

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

Сервис для логов за 5 минут

Reading time2 min
Views15K
Во время разработки под мобильные устройства появилась проблема наблюдать и сравнивать несколько характеристик производительности и параметров на разных устройствах. (iPad/Samasung Galaxy Note 10.1/Nexus и т.д.). Можно было бы просто записывать логи в файл, потом свести их воедино, но хочется, чтобы информация с устройств поступала сразу после отладки в единую таблицу, да и не все устройства находятся у разработчиков на руках.

Единственным быстрым решением, приходящим на ум, был небольшой сервис на flask/bottle, но для этого пришлось бы поднять хранилище данных. Сказать честно, даже использование облачных решений на Azure/Heroku/AWS — это небольшая кучка дополнительных проблем для такой простой задачи: пароли, пути, зависимости и т.д. Нам же надо вести одну небольшую таблицу с несколькими параметрами, которые поступают с устройств. К тому же, данная утилита требовалась исключительно для удобства разработки, а не для продуктивного использования с тысячами пользователей.

Я постоянно записываю в свою базу знаний в Evernote различные хаки для повседневных задач, и недавно нашел там пример кода из какого-то open source проекта, где идет обращение с формой Google Docs через post запросы. И понеслось.
Читать дальше →

Антивирусное сканирование по доступу на Samba

Reading time3 min
Views13K
Доброго времени суток, уважаемые пользователи Хабра.

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

Обратившись в гугл за информацией, я нашел 2 актуальных на текущий момент способа:
Читать дальше →

Основы разработки клиента сети I2P

Reading time8 min
Views22K
Данная статья предназначена для тех, кто хотел бы разработать собственного I2P клиента «с нуля». Предполагается знакомство с основными концепциям и понятиями I2P. На настоящий момент на это счет имеется достаточно документации и статей, в том числе и переведённых на русский язык. С другой стороны имеется официальная документация, достаточно хорошо описывающая протоколы и форматы сообщений. К сожалению она носит разрозненный характер, при этом многие неочевидные вещи там отсуствуют. Данная статья написана в первую очередь на основе изучения и отладки официального I2P джава-клиента. Конечной целью является реализация полностью на C++. Исходный код проекта в текущем состоянии располагается на github.
Читать дальше →

Строим свой Gmail с куртизанками и преферансом

Reading time7 min
Views205K

Вместо предисловия


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

Итак, в этой статье я расскажу о том, как я поднимал и настраивал на своем сервере почту, календарь, контакты, RSS-аггрегатор и, в качестве бонуса, хранилище файлов.

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

Настроим Ubuntu shell под себя

Reading time3 min
Views33K
Итак. Абстрагируемся от мощных высокотехнологичных постов на хабре — я им апплодирую. Но жизнь рядового программиста начинается с его рабочего места, куда он неустанно возвращается снова и снова.
Если это про вас. Если вы хотите добавить в свою жизнь немного изюминки — отвлекитесь на минутку, расслабьтесь и открывайте хабракат!

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

Производящие функции — туда и обратно

Reading time9 min
Views108K
«Производящая функция является устройством, отчасти напоминающим мешок. Вместо того чтобы нести отдельно много предметов, что могло бы оказаться затруднительным, мы собираем их вместе, и тогда нам нужно нести лишь один предмет — мешок».
                                                                                                                                                               Д. Пойа

Введение


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

Идея производящих функций достаточно проста: сопоставим некоторой последовательности <g0, g1, g2, ..., gn> — дискретному объекту, степенной ряд g0 + g1z + g2z2 +… + gnzn +… — объект непрерывный, тем самым мы подключаем к решению задачи целый арсенал средств математического анализа. Обычно говорят, последовательность генерируется, порождается производящей функцией. Важно понимать, что это символьная конструкция, то есть вместо символа z может быть любой объект, для которого определены операции сложения и умножения.
Читать дальше →

Десктоп в домашнем сервере или «всё-в-одном»

Reading time4 min
Views89K
image
Цель: недорого собрать систему поддерживающую проброс PCI-устройств в виртуальную машину (c IOMMU). Создать полноценное рабочее место, поднять виртуальный маршрутизатор и еще полезные мелочи.
Читать дальше →

Игра в 0 строк кода на чистом JS

Reading time2 min
Views179K

Я не хотел принимать участие в недельном тренде хабра — «Все пишем в 30 строк кода!», нет времени лишнего. Но пост theaqua про Hello world в 1 строчку на чистом JavaScript вдохновил меня побить этот рекорд. Я написал игру, используя JavaScript, HTML и CSS, при этом использовал всего 0 строк кода. После этого поста я не мог спать. Я мучался бессоницей и, взяв себя в руки, сел писать игру. Понимая что мне придется использовать 0 строк кода на Javascript — я сильно боялся. Написать программу в 1000 строк кода и больше — не составляет проблем. Но вот написать 0 строк кода… Это безумие. Это переворачивает мозг. Меняет отношение к вебу. Понимаешь, что раньше ты писал как-то не так…

Для тех, кто не привык ждать — ДЕМКА.

Это не фейк, а полноценная игра. Подробности под катом.

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

Python-digest #2. Новости, интересные проекты, статьи и интервью [8 ноября 2013 — 15 ноября 2013]

Reading time5 min
Views14K
Теперь статей и проектов стало больше — включены новости с pycoders, pythonplanet и по-прежнему мониторятся новые пакеты и релизы уже популярных проектов на PyPI и github.
Увы, все также мало материалов на русском языке. Присылайте мне пожалуйста ссылки если находите достойные и актуальны статьи.

Огромное спасибо гитхабо-пользователю и земляку axcel, благодаря которому на нашем инструменте для сбора новостей появились rss лента и optimistic locks при сохранении объектов.

Собственно дайджест под катом

Миссия невыполнима. Мертворожденные проекты

Reading time4 min
Views112K
«Когда человек не знает, к какой пристани он держит путь, для него ни один ветер не будет попутным». (С) Сенека, Луций Анней



Предисловие

Как-то один из топов уважаемой компании, которая занимается продуктовой разработкой ПО, пригласил меня, как эксперта, чтобы я оценил качество нового продукта. Я внимательно просмотрел и прослушал презентацию. Видно было, что коллеги очень старались и работали по 10-12 часов, чтобы продукт выглядел на высшем уровне. После чего меня спросили: «хороший получился продукт или нет?» Я поблагодарил за представленную презентацию, но попросил ответить на свой последний вопрос: «А какие процессы, и с какой целью вы собираетесь автоматизировать с помощью этого инструмента?» Вопрос почему-то вызвал замешательство у докладчиков. После небольшой паузы, топ, который, видимо, был идеологом нового продукта, ответил: «Был бы инструмент хороший, а какие процессы с его помощь автоматизировать мы найдем!» Мне пришлось сказать, что оценить продукт я не смогу. Не зная бизнес-целей, невозможно понять степень их достижения.

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

Для иллюстрации используем проект «Экспедиция за сокровищами Флинта»
Девять пунктов концепции проекта

Радиомодем за 7 долларов

Reading time6 min
Views137K
Доброе время суток!
Расскажу я как можно собрать себе радиомодем мощностью 100мВт на 433МГц, по стоимости выходящий примерно на 6-7 долларов. Мощный радиомодем за 200 рублей — заманчиво? Тогда начнём.
Внешний вид
Требуются скиллы пайки немного выше среднего и опыт заказа в интернет-магазинах.
Читать дальше →

jor1k: Linux в браузере с поддержкой сети

Reading time1 min
Views12K
То, что мы давно ждали, появилось.
Встречайте: jor1k: OpenRISC OR1K Javascript Emulator Running Linux With Network Support
  • У каждой виртуалки есть общая сеть с доступом в интернет
  • У каждой виртуалки есть telnetd с root без пароля
  • У каждой виртуалки есть nmap ;)
  • Виртуалка получает IP по DHCP
  • Есть поддержка framebuffer
Сеть реализована на websockets со стороны сервера и эмулируемом OpenCores ethmac со стороны VM.

У меня на ноутбуке выдает 120 MIPS с ядром asm.js.
Более подробная информация в блоге автора.
Have fun!

Я параноик или Почему Большой Брат уже следит за нами

Reading time5 min
Views113K
Начал писать комментарий к собственному переводу статьи о приватности пользовательских данных и неожиданно понял, что он выливается в нечто большее.

Дело в том, что я занимаюсь технологиями data mining и text mining последние лет пятнадцать. И поэтому все недавние скандалы, связанные с делом Сноудена и PRISM, XKeyScore, Muscular, СОРМ, чтением почты Гуглом, передачей конфиденциальных и гео данных с мобильников, и множество прочих оставили меня абсолютно равнодушным.

По очень простой причине – я уже знаю, что Большой Брат давно существует.

image

Если точнее, я абсолютно в этом уверен – так же, как не могу знать, что Солнце завтра взойдет, но весьма и весьма в этом убежден. И все новые доказательства существования Большого Брата полезны, но уже не обязательны.
А объяснение уверенности очень простое: при наличии необходимых ресурсов я сам мог бы его построить.
Читать дальше →

Сравнение производительности различных систем шифрования под linux

Reading time8 min
Views19K
В данной статье я попытаюсь сравнить производительность различных систем шифрования под linux. В теории, конечно, известно, какая система производительнее, и попытки посчитать производительность разных систем были (например). Truecrypt даже содержит встроенный бенчмарк (который показывает, однако, производительность на RAM, его можно использовать разве что для оценки скорости разных алгоритмов шифрования). Я же сделаю несколько другое — измерю скорость файловой системы, зашифрованной разными средствами, в процентном соотношении по сравнению с обычной нешифрованной файловой системой.
image
Читать дальше →

Программирование как образ жизни

Reading time5 min
Views79K
«Человек добился успеха, если он встает утром и ложится спать вечером, а в промежутке занимается тем, чем хочет»
— Боб Дилан

Я – программист по образу жизни. Я в одиночку работаю программистом, чтобы обеспечить себя интересной, полезной, гибкой и хорошо оплачиваемой работой. У меня нет инвесторов, я не собираюсь нанимать сотрудников, не говоря уже о том, чтобы стать следующим Google или Facebook. У меня нет личного самолета, и мое лицо вряд ли скоро появится на обложке Newsweek. Меня это устраивает.
Читать дальше →

Пара лайфхаков нашего интернет-магазина

Reading time5 min
Views99K
Когда у вас есть интернет-магазин, российская сеть и производство, тяжело сохранять серьёзность. Для нас бизнес – это игра. Поэтому мы не боимся пробовать разные весёлые штуки. Про часть из них я сейчас расскажу. Ниже несколько историй, среди которых есть две полезных, которые могут немного увеличить ваши продажи.

Бесплатный криптоанализатор


Самое крутое – это когда магазин создаёт позитив, о котором хочется рассказать друзьям. Когда только-только вышла игра «Бригада», мы просто купили паяльников (по 64 рубля за штуку) и первой полусотне покупателей выдали по одному.

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


Первый покупатель с паяльником

Какой профит? Да никакого, просто классная история. Точнее, она задумывалась таковой, пока про эту тему не написало какое-то крупное сообщество про партизанскую рекламу в интернете – в этот день мы продали ещё несколько десятков коробок.
Читать дальше →

Десятка лучших консольных команд

Reading time2 min
Views198K
imageВ данном посте я расскажу о наиболее интересных командах, которые могут быть очень полезны при работе в консоли. Однозначных критериев определения какая команда лучше другой — нет, каждый сам для своих условий выбирает лучшее. Я решил построить список команд на основе наиболее рейтинговых приемов работы с консолью от commandlinefu.com, кладовой консольных команд. Результат выполнения одной из таких команд под Linux приведен на картинке. Если заинтересовало, прошу под кат.
Узнать больше

Что такое Entity System Framework и зачем он нужен в геймдеве?

Reading time18 min
Views53K
На Хабре уже есть очень много интересных статей про создание игры с нуля, но мало статей, описывающих что делать, чтобы своя любимая поделка не превратилась во Франкенштейна и дошла до вменяемого состояния. Автор оригинальной статьи рассказывает, как эволюционировал код игрового движка от кучи хлама в основном цикле к продуманной, расширяемой архитектуре, использующей Entity Component System. В статье много кода, который почти весь часто повторяется — но я не стал его выбрасывать, поскольку с ним будет понятнее, какие изменения вносит автор и как это отражается на всей структуре. Статья рассчитана на новичков, вроде меня, которые уже настрочили несколько «гениальных» прототипов, но теперь не знают, как разобраться в их коде.
Читать дальше →

Пара интересных книг для революционеров-стартаперов

Reading time4 min
Views21K
Здравствуй, уважаемое хабросообщество! Сегодня я хочу представить свою рецензию (хотя, скорее, свое видение) на две интересные книги Гая Кавасаки, вышедшие на русском языке. Речь идет о “Стартап” и “Революционный продукт. Как создать и вывести на рынок”.
Возможно, это действительно кому-то поможет, а может и нет. В любом случае, сразу хочу предупредить, что состоявшимся АйТишникам, не нуждающимся в изменениях, а также тем, кто по разным причинам испытывает личную неприязнь к Кавасаки под кат не нужно. Серьезно, вы просто не найдете там какой-либо полезной информации.
Всех остальных прошу за мной!
image
Читать дальше →

Information

Rating
Does not participate
Registered
Activity