Pull to refresh
18
-4
Send message

О хакерах и женщинах-хакерах

Level of difficulty Easy
Reading time 6 min
Views 5.8K

В принципе, этот момент рассматривался не раз, но как-то поверхностно. Поэтому смею надеяться, что своими рассуждениями внесу некоторую ясность в этот весьма популярный вопрос.

Почему этот вопрос популярен, и вообще, зачем мы здесь сегодня собрались? Не секрет, что большинство фильмов, в том числе и отечественного кино, всегда ставят на роль хакера молодую, красивую, очень сексуальную девушку. Исключение, пожалуй, составляют только недорогие полицейские боевики, в которых хакер - это второстепенный молодой молокосос (лейтенант), увлеченный компьютерами, которого все при каждом удобном случае учат реальной жизни (real life and so on).

Забегая вперед, недорогие полицейские боевики гораздо ближе к реальности, чем все остальное.

Читать далее
Total votes 21: ↑12 and ↓9 +3
Comments 47

Про собеседования

Reading time 2 min
Views 38K

Хотите знать как проходят собеседования при приеме на работу в АйТи? В то самое АйТи в которое многие мечтают войти. Повествование будет аллегорическое, на примере столяров краснодеревщиков.

Читать далее
Total votes 147: ↑132 and ↓15 +117
Comments 162

Блокчейн для распределенного реестра

Level of difficulty Medium
Reading time 12 min
Views 2.7K

Эта статья не о криптовалюте, а о блокчейне и совокупности технологий и идей, которые, на мой взгляд, помогут создать быстрый, масштабируемый и безопасный распределенный реестр (DLT). Простые DLT могут быть созданы с использованием возможностей смарт-контрактов блокчейнов второго или третьего поколения, но более сложные реестры могут потребовать альтернативных решений. Примером достаточно  сложного и специфического DLT может быть децентрализованная платежная система общего пользования, совместимая с государственной денежно-кредитной политикой, то есть платформа для "цифровых денег". Реализация такого проекта на смарт-контрактах едва ли возможна. Поэтому в статье предлагаю рассмотреть для этой роли AppChain - гибридную платформу приложения и блокчейна.

Читать далее
Total votes 3: ↑2 and ↓1 +1
Comments 22

Python 3.5; async/await

Reading time 5 min
Views 272K
Тихо и незаметно (с), вышел Python версии 3.5! И, безусловно, одно из самых интересных нововведений релиза является новый синтаксис определения сопрограмм с помощью ключевых слов async/await, далее в статье об этом.

Поверхностный просмотр «PEP 0492 — Coroutines with async and await syntax» поначалу оставил у меня вопрос «Зачем это надо». Сопрограммы удовлетворительно реализуются на расширенных генераторах и на первый взгляд может показаться, что все свелось к замене yield from на await, а декоратора, создающего сопрограмму на async. Сюда можно добавить и возникающее ощущение, что все это сделано исключительно для использования с модулем asyncio.

Но это, конечно же, не так, тема глубже и интереснее.
Читать дальше →
Total votes 29: ↑28 and ↓1 +27
Comments 26

Фишки языка D

Reading time 5 min
Views 14K
Очень радует, что на Хабре появляются статьи о языке D. Но, на мой взгляд, переводы хелпа и статей для чуть больше, чем для новичков не дают ничего в плане популяризации языка. Думаю, искушённой публике лучше представлять, пусть более сложные, но какие-то интересные вещи — фишки. Большинство из того, что можно назвать фишками D, есть и в других языках, но многое в D реализовано более эффектно и эффективно, на мой вкус во всяком случае. В D есть много интересного, о чем стоит рассказать, и начну я в этой статье с функций, но не совсем обычных.
Читать дальше →
Total votes 28: ↑24 and ↓4 +20
Comments 63

Python реализация парадигмы event-driven с помощью сопрограмм

Reading time 7 min
Views 55K
Статья про то, как с помощью расширенных генераторов Python сделать собственную реализацию сопрограмм, переключающихся по получению событий. Простота кода получившегося модуля вас приятно удивит и прояснит новые и мало используемые возможности языка, которые можно получить, используя такие генераторы. Статья поможет разобраться и с тем, как это устроено в серьезных реализациях: asyncio, tornado, etc.
Читать дальше →
Total votes 23: ↑22 and ↓1 +21
Comments 17

Использование в языке D сторонних библиотек

Reading time 3 min
Views 7.4K
На волне интереса к языку D решил и я внести свой вклад в его популяризацию. Статья не для новичков, а больше для тех кто рассматривает D как второй язык. Известно, что на заре своего развития, языки программирования имеют небогатый набор библиотек и это часто не позволяет начинать писать на них что-то серьёзное. Надеюсь статья поможет кому-нибудь переступить этот барьер.
Ниже будут рассмотрены возможности утилиты dub, а так же подключение сторонних пакетов и библиотек написанных на C/C++ на примере замечательной библиотеки libev.
Читать дальше →
Total votes 18: ↑17 and ↓1 +16
Comments 17

Примеры использования asyncio: HTTPServer?!

Reading time 8 min
Views 50K
Не так давно зарелизилась новая версия Python 3.4 в changelog которой вошло много «вкусностей». Одна из таких — модуль asyncio, содержащий инфраструктуру пригодную для написания асинхронных сетевых приложений. Благодаря концепции сопрограмм (coroutines), код асинхронного приложения прост для понимания и поддержки.

В статье на примере простого TCP (Echo) сервера я постараюсь показать с чем едят asyncio, и рискну устранить «фатальный недостаток» этого модуля, а именно отсутствие реализации асинхронного HTTP сервера.
Читать дальше →
Total votes 33: ↑31 and ↓2 +29
Comments 9

Кэширование фронтэнда: Flask, Nginx+Memcached+SSI

Reading time 7 min
Views 17K
Достаточно давно мне на глаза попались следующие статьи по этой тематике:

С PHP я дружу, поэтому попробовал примеры и убедился, что это работает. Но всё это имело «фатальные недостатки» :) — PHP, а я фанат Python и по работе занимаюсь в основном бэкендом. Серьёзно говоря, применить на практике это не представлялось возможным.

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

В первую очередь было реализовано черновое решение для моего любимого фрэймворка Flask использующее для кэширования стек Varnish+ESI. Это заработало и даже показало неплохие результаты. Позже пришло понимание, что возможно Varnish «лишний игрок» и всё тоже и даже гибче можно получить на связке Nginx+Memcached+SSI. Был сделан и этот вариант, по производительности особых отличий замечено не было, но последний показался более гибким и управляемым.

Тот проект не вырулил даже на взлетную полосу, или вырулил но без меня. Подумав, я решил «причесать код» и выложить его в OpenSource и на суд общественности.
Читать дальше →
Total votes 31: ↑28 and ↓3 +25
Comments 30

Trac и его друзья Gitolite, Nginx и UWSGI

Reading time 6 min
Views 11K
Всем наверно известен замечательный OpenSource проект Trac, позволяющий организовать рабочий процесс при разработке программного обеспечения. Однако его развертывание и настройка является не простой задачей. Информация в интернете разрозненная и часто уже устаревшая. В этом я смог сам убедиться настраивая Trac интегрированный с Gitolite на связке Nginx+UWSGI.

После небольшой увертюры с бубном у меня родился этот документ являющийся практически пошаговой инструкцией по развертыванию проекта Trac. Надеюсь это пригодится кому-нибудь еще.
Читать дальше →
Total votes 17: ↑14 and ↓3 +11
Comments 11

Information

Rating
Does not participate
Location
Москва и Московская обл., Россия
Registered
Activity