Pull to refresh
0
Max @gaus0read⁠-⁠only

User

Send message

Еще одна флешка-криптекс с серьезной защитой

Reading time1 min
Views26K


На Хабре уже как-то выкладывалась новость об интересной флешке с механической защитой типа «криптекс». Криптексы вообще популярны, как среди авторов разного рода детективов и исторических романов, так и среди почитателей творчества этих авторов, а также среди гиков. Так вот, на днях появилась информация о флешке нового типа, которая так и называется — Crypteks.

Читать дальше →
Total votes 73: ↑64 and ↓9+55
Comments77

Интернет на даче

Reading time7 min
Views40K
Возможно, статья немного запоздала, начинал я её писать ещё весной, но так как дачный сезон не окончен, надеюсь, она ещё не потеряла своей актуальности. Ну или пригодится на следующий год.

Disclaimer: Я не физик и не ядерщик, про антенны и радиосигнал могу судить только по полузабытым университетским знаниям и научно-популярным статьям, поэтому если вы где-нибудь заметили неточность или же неправильно использованный термин, дайте знать, я исправлю.

Не успеешь глазом моргнуть, как уже наступит весна, а за ней и лето. А значит, следует следовать пословице, основанной на суровом жизненном опыте:
“Готовь сани летом, а телегу зимой”

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

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

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

Значит, надо ставить более суровую приманку, дабы интернет приходил и никуда больше не уходил, и оставался в модеме. В качестве манка выступает, как обычно, фаллический символ внешняя антенна.
Тут и начинаются проблемы
Total votes 121: ↑109 and ↓12+97
Comments90

Краткое введение в SIM-карты

Reading time6 min
Views223K
Когда на вопрос «кем вы работаете?» я отвечал «разработчиком ПО для SIM-карт», даже технически подкованные люди частенько удивлялись. Многие думают, что SIM-карта это «что-то типа флешки».

В этой статье я постараюсь кратко рассказать что такое SIM-карта (и смарт-карты в общем), зачем она нужна и что у нее внутри.

На самом деле SIM-карта — это частный случай контактной смарт-карты с микропроцессором. По сути, представляет из себя достаточно защищенный микрокомпьютер с CPU, ROM (опционально), RAM и NVRAM (которая выступает в качестве аналога жесткого диска в PC), с аппаратными генераторами случайных чисел и аппаратной реализацией крипто-алгоритмов.

В некотором приближении архитектуру микропроцессорной смарт-карты можно представить так:
Архитектура смарт-карты

Читать дальше →
Total votes 474: ↑470 and ↓4+466
Comments180

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

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

Написание приложений, основаных на Qt, на языке Python

Reading time5 min
Views120K
Доброе время суток.
Недавно решил изучить ещё один язык программирования. Выбор пал на python. Написал несколько маленьких скриптов. Но прежде всего я хотел писать приложения с графическим интерфейсом. В интернете наткнулся на этот небольшой туториал, прочтение которого вылилось в предлагаемый Вашему вниманию перевод. Надеюсь, что кому-нибудь он будет полезен.


Это руководство нацелено на получение представления о том как писать маленькие приложения на python, использующие библотеку Qt.

Читать дальше →
Total votes 54: ↑53 and ↓1+52
Comments34

Как я работаю с Remember The Milk / Что не стоит держать в голове

Reading time4 min
Views46K
Буквально вчера я написал пост о том, как сложно хранить в удобном виде информацию о задачах/событиях в сети и при этом всегда иметь возможность ее контролировать. Решение я все же нашел, и оно довольно ценное.

Remember The Milk + ...


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

Для начала стоит уяснить, зачем он нам вообще нужен? В своем роде это публичный календарь (или не публичный — на ваше усмотрение), который позволяет работать с ToDo-листом, различными событиями, а так же предоставляет нам напоминания с различными настройками по времени.
Проще говоря, это инструмент «блокнот + ручка» с кучей возможностей, который хранится в сети.

Читать дальше →
Total votes 120: ↑99 and ↓21+78
Comments68

Полупроводниковая электроника

Reading time30 min
Views370K


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



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





Иллюстраций: 34, символов: 51 609.



Читать дальше →
Total votes 488: ↑479 and ↓9+470
Comments152

Основы Python в кратком изложении

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

Python для начинающих. Глава первая. «О чем это мы»

На всякий случай, немного скучного «evangelism». Кому он надоел, можно пропустить несколько абзацев.
Python (читается как «Пайтон» а не «питон») — скриптовый язык, разработанный Гвидо ван Россумом в качестве простого языка, легкого в изучении новичку.
В наше время Пайтон – широко распространенный язык, который используется во многих областях:
— Разработка прикладного ПО (например linux-утилиты yum, pirut, system-config-*, IM-клиент Gajim и многие другие)
— Разработка web-приложений (мощнейший Application-сервер Zope и разработанная на его основе CMS Plone, на основе которой работает например сайт ЦРУ, и масса фреймворков для быстрой разработки приложений Plones, Django, TurboGears и многие другие)
— Использование в качестве встраиваемого скриптового языка во многих играх, и не только (в офисном пакете OpenOffice.org, 3d редакторе Blender, СУБД Postgre)
— Использование в научных рассчетах (с пакетами SciPy и numPy для расчетов и PyPlot для рисования графиков Пайтон становится практически сравним с пакетами типа MatLab)

И это конечно далеко не полный список проектов, использующих этот замечательный язык.

Так, что же необходимо новичку для изучения Пайтона?
Total votes 2: ↑2 and ↓0+2
Comments195

Основы Python — кратко. Строки.

Reading time4 min
Views257K
Поскольку число положительных отзывов превысило число отрицательных, продолжу выкладывание уроков. Те кто уже знаком с основами — можете или просто пропустить урок, или попробовать сделать задание 3 самым коротким способом :)

Для начала маленькое замечание.

Начиная с Python 2.3, всем, кто использует не-ASCII кодировку нужно добавлять указание о кодировке в самом начале программы. Для русского языка это будет в основном:
# -*- coding: cp1251 -*-

или использовать для хранения исходных текстов файлы utf-8 (что предпочтительней).

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

Строки

Существует множество способов задать строку в Пайтоне...
Total votes 55: ↑49 and ↓6+43
Comments108

Основы Python — кратко. Часть 5. Определение функций, основы.

Reading time3 min
Views167K
Начав писать главу про ООП, понял что совсем забыл освятить такой большой и нужный раздел Пайтона как функции. Тема это большая и обширная, потому, чтобы не сильно растягивать паузу между уроками, решил разделить ее на 2 части. Сначала расскажу основы, потом уже углубленные особенности Пайтоновского функциестроения.

Функции в Пайтоне объявляются не просто, а очень просто. Вот пример самой простой:

def empty_func():
    pass

Начинается объявление с ключевого слова def, что как не сложно догадаться является сокращением от define. После него идет имя функции. После имени в круглых скобках задается список параметров, в данном случае отсутствующих.
Читать дальше →
Total votes 5: ↑5 and ↓0+5
Comments21

Основы Python — кратко. Часть 4. Генераторы списков

Reading time3 min
Views217K
List comprehensions

Продолжим наш цикл уроков. Добрый день.

Генерация списков

Генерация списков (не знаю как адекватно перевести на русский list comprehensions) — яркий пример «синтаксического сахара». То есть конструкции, без которой легко можно обойтись, но с ней намного лучше :) Генераторы списков, как это не странно, предназначены для удобной обработки списков, к которой можно отнести и создание новых списков, и модификацию существующих.
Допустим, нам необходимо получить список нечетных чисел, не превышающих 25.
В принципе, только познакомившись с работой команды xrange решить эту проблему несложно.

>>> res = []
>>> for x in xrange(1, 25, 2):
...     res.append(x)
...
>>> print res 

В общем-то, полученный результат — целиком нас устраивает всем, кроме длинной записи. тут-то на помощь и придет наш «сахарок». В самом простом виде, он обычно
выглядит так:
Total votes 1: ↑1 and ↓0+1
Comments83

Основы Python — кратко. Часть 3. Списки, кортежи, файлы.

Reading time5 min
Views389K
В общем-то последняя из готовых глав. Остальные будут выходить чуть реже, поскольку еще не написаны (но я уверен что будут, хотя это зависит только от ваших пожеланий, уважаемые читатели :)

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

В общем, те кому не интересно — читают следующую новость, а остальных — прошу пройти
под кат
Total votes 46: ↑38 and ↓8+30
Comments58

Почему в WiMax и LTE используют OFDM

Reading time18 min
Views119K


Аббревиатура OFDM расшифровывается как Orthogonal frequency-division multiplexing. В русскоязычной литературе встречается несколько различных переводов, несущих, в принципе, один смысл: OFDM — это механизм мультиплексирования (уплотнения) посредством ортогональных поднесущих.



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





Иллюстраций: 18, символов: 27 399, строк кода: 99.



Читать дальше →
Total votes 273: ↑269 and ↓4+265
Comments61

Библиотека для упрощения HTTP-запросов

Reading time1 min
Views149K
Requests — библиотека Python, которая элегантно и просто выполняет HTTP-запросы. Теперь не нужно осваивать urllib2 с излишне сложными программными интерфейсами.

Вот как выглядит HTTP-запрос с авторизацией с помощью requests:

>>> r = requests.get('https://api.github.com', auth=('user', 'pass'))
>>> r.status_code
200
>>> r.headers['content-type']
'application/json'
Читать дальше →
Total votes 133: ↑117 and ↓16+101
Comments32

Установка для «чайников»: nginx + php-cgi + mysql + eaccelerator + memcache на Debian 5.0 «lenny»

Reading time7 min
Views78K
Данная заметка является шпаргалкой для новичков в установке нормально работающего комплекса, описанного в заголовке. Все пункты установки протестированы несколько раз на разных vds, поэтому проблем с нехваткой чего-то быть не должно, как это обычно бывает, когда ставишь что-то по мануалам, надерганных из разных источников. Подробно описания настроек и «тюнинга» в заметке нет, т.к. это всё очень индивидуально и требует понимания что, как и зачем делается, а это невозможно охватить в одной даже очень большой шпоре.
Читать дальше →
Total votes 76: ↑56 and ↓20+36
Comments78

Установка nginx + php-fpm + memcache + eaccelerator на FreeBSD

Reading time3 min
Views49K
Зачем всё это? — спросите вы. Да просто захотелось поделиться с общественностью некоторым опытом, полученным в процессе оптимизации vds под нужды одного общеизвестного блого-социального движка, который на обычном хостинге чувствует себя, мягко скажем, некомфортно.

Началось всё с того, что я ушёл от firstvds, где уже ничто не спасёт от тормозов. Ушел на ганди.нет, взял одну шару (1 share), которую дали на месяц бесплатно. Кстати, акция эта (This summer, your server is free!) вроде еще не закончилась. ;) И начал на этой шаре проводить зверские эксперименты с установкой разного ПО. Тестировал результаты с помощью siege.

В итоге конфигурация из сабжа оказалась самая быстрая. Опытом её установки и настройки я и хотел бы с вами поделиться.

Поехали!
Total votes 90: ↑74 and ↓16+58
Comments48

Почему я работаю на почасовой оплате

Reading time3 min
Views24K
Перевод статьи молодого греческого программиста «Why I bill hourly»

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

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

Клиент: Вот участок, на котором мы будем строиться. Вот наброски того, что мы хотим построить. Можете назвать точную стоимость постройки?

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

Читать дальше →
Total votes 219: ↑199 and ↓20+179
Comments203

Information

Rating
Does not participate
Location
Украина
Registered
Activity