Category Archives: Повседневное

Все, что имеет отношение к обычной повседневной жизни.

Порядок элементов set-ов в Python

Проверьте себя, предположите, что выведет print?

list_1 = list(set([u'external_new', u'external', u'app_store']))
list_2 = list(set([u'app_store', u'external', u'external_new']))
print list_1 == list_2

А теперь проверьте себя еще раз

list_1 = list(set([u'external_new', u'external', u'app_store'] + range(100)))
list_2 = list(set([u'app_store', u'external', u'external_new'] + range(100)))
print list_1 == list_2

На самом деле, такое поведение очевидно, достаточно вспомнить, что внутри cPython set – хеш-таблица с открытой адресацией. Если количество элементов set-а приближается к количеству элементов внутреннего массива хеш-таблицы, вероятность коллизий повышается. В случае появления коллизий, преобразование set-а в список будет выдавать элементы коллизий в той последовательности, в которой эти элементы были добавлены в set.

Отладка на Python: способы и фишки

Отладка – один из важных этапов разработки ПО. Есть много определений этого термина: начиная от “процесса нахождения ошибок на этапе разработки и их устранения”, до “убеждения, что алгоритм исполнения программы соответствует ожиданиям”.

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

def my_function():
    pass

то пройти по нему отладчиком даже необходимо и жизненно важно.

Continue reading

Trinder – Chrome клиент для Tinder

Наверное, многие видели приложение Tinder. Не секрет, что с ПК им пользоваться нельзя, а есть только мобильная версия.

В развлекательных целях сделал Chrome-extension Trinder для этих целей: Chrome Webstore и GitHub.

В процессе научился перехватывать SSL-трафик с Android-устройства чтобы выяснить интерфейс REST-api у Tinder. Знаю, что есть отладочные прокси, например Fiddler, но это мне показалось слишком частным случаем и хотелось уметь перехватывать именно SSL-траффик (в том числе и HTTPS).

Continue reading

Праздничное мероприятие в г. Кирове

Вчера побывали на праздничном мероприятии в г. Кирове, вели которое вот эти ребята. DJ хорошо провел музыкальную часть, сводил. Треки были подобраны непосредственно для аудитории и игрались с вертушек. Осталоcь приятное впечатление.

Z-type, скоропечатание и JavaScript

Недавно на просторах habrahabr, в одном из очень старых дайджестов по веб-разработке (а точнее, вот в этом) нашел очень интересную игрушку на html5 – Z-Type. Игрушка позволяет повысить скопечатанье на клавиатуре вслепую, а иначе, вы будете проигрывать ну очень часто.

z-type

Continue reading

Привет!

Всем привет!

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

Сегодня я наконец заставил себя завести вот этот вот блог и уйти с livejournal.

Я, добро пожаловать!