Pull to refresh
17
0
Михаил @kutu

User

Send message

Сложности сборки Python3 + Qt5 приложений под Windows

Reading time4 min
Views50K
Недавно потребовалось мне сделать небольшую прогу под Windows. Раньше мне не доводилось разрабатывать под нее.
Сама программа несложная, написалась относительно быстро. Намного больше времени отъела сборка ее под винду. Понятно, что выбранные инструменты (Python3 + Qt5) не родные, а универстальные, но что потребуется столько времени затратить на сборку, я не предполагал.
Соответственно, хочется поделиться практикой, может кому еще придется стучаться лбом в эту стену.
Под катом выстраданная инструкция как легко собирать PyQt5 приложения в single-file.exe не требующий инсталлятора.
Читать дальше →
Total votes 20: ↑19 and ↓1+18
Comments18

Pixel Bender. Спецификация языка в контексте программирования под Flash Player

Reading time15 min
Views3K
Pixel Bender Эта статья является вольным переводом официальной документации по языку Pixel Bender от корпорации Adobe. Хочу сразу заметить, что это перевод именно Pixel Bender Language Reference, а не Pixel Bender Developer's Guide. Как подсказывает Гугл, данная тема еще не всплывала в Рунете и поэтому мне хотелось бы исправить столь досадное упущение)) В переводе были намеренно опущены вопросы программирования под Adobe Photoshop и Adobe AfterEffects, т.к. меня интересовало только написание фильтров под Flash Player.
Читать дальше →
Total votes 40: ↑32 and ↓8+24
Comments18

OAuth: описание протокола простым и понятным языком

Reading time16 min
Views193K
OAuth — популярный протокол, который позволяет социальным сервисам интегрироваться между собой и дает безопасный способ обмена персональной информацией. OAuth может связать между собой 2 сервиса, каждый из которых имеет свою пользовательскую базу — именно их я в данном случае называю «социальными». Когда начинаешь работать с OAuth, первое ощущение — что протокол весьма сложен и избыточен. В этой статье я попытаюсь объяснить основы OAuth человеческим языком.

Пример кросс-авторизации


Вернемся в 2005-й год и представим, что мы пишем социальную сеть. В ней имеется форма импорта контактов из адресной книги GMail. Что нужно для доступа к контактам GMail? Конечно, логин и пароль от ящика. Но если мы попросим ввести их на нашем сайте, пользователь заподозрит неладное. Где гарантия, что мы не сохраняем на сервере введенные пароли? Поэтому нам хочется, чтобы пароль вводился только на сайте GMail, и после этого доступ к контактам через API GMail предоставлялся нашей социальной сети (возможно, на время).
Под катом - повествование с примерами
Total votes 134: ↑124 and ↓10+114
Comments34

Работа с жестким диском

Reading time5 min
Views32K
Обзор про свой жесткий диск я уже написал. А теперь задумался, как улучшить производительность жесткого диска. В этой статье я опишу что можно делать с жесткими дисками, а что нельзя. Говорим о форматировании, дефрагментации, проверке на битые разделы и прочих полезных вещах. :)
image
Читать дальше →
Total votes 83: ↑64 and ↓19+45
Comments101

Взлом каптчи файлообменника

Reading time9 min
Views44K

Введение



В данной статье коротко рассказывается о процессе взлома captcha с ifolder.ru. Применение в процессе языка Python и сторонних библиотек. Применение алгоритма преобразований Хафа в составе библиотеки Open Computer Vision © Intel позволит нам избавиться от шума на изображении, простая в использовании и быстрая библиотека FANN (Fast Artificial Neural Network) сделает возможным применение искусственной нейронной сети для задачи распознавания образа.

Моя мотивация состояла, прежде всего, в том, чтобы попробовать язык Python. Как известно, лучший способ изучить язык — решить на нём какую-нибудь прикладную задачу. Поэтому параллельно описанию процесса обработки изображения я буду рассказывать о том, какие библиотеки и для чего я использовал.
Сломать мозг
Total votes 183: ↑178 and ↓5+173
Comments68

Стив Джобс 18 лет назад

Reading time1 min
Views2K


Джон Грубер откопал эти видео 1990 года где-то на пыльных полках своего архива и, конечно же, оцифровал. Стив Джобс проводит одну из многих, т.н. «chalk talk» (боюсь перевести неправильно) с работниками компании NeXT.

Интересного в этих роликах действительно много: Джобс куда менее осторожен в выражениях; трудность во вхождении NeXT на развитый рынок рабочих станций и борьба с SUN (что показывает Стива как великолепного маркетолога, мало кто тогда понимал даже слова «Macintosh marketplace»); ни одного упоминания интернета, кроме слов об «отличных сетевых возможностях машин NeXT». Последний момент хоть и можно объяснить годом записи видео, но все-равно удивляет. 20 лет назад мы были заинтересованы в том, чтобы заставить общаться компьютеры только в пределах одного здания, даже не задумываясь о всемирной сети.



via Boing-Boing
Total votes 63: ↑53 and ↓10+43
Comments42

Сделай сам: любимые персонажи из бумаги

Reading time2 min
Views3.9K
Привет всем Хабралюдям!
Сегодня я хочу поделиться с сообществом одним очень затягивающим и увлекательным способом убить свободное время и просто отвлечься.

Читать дальше →
Total votes 217: ↑199 and ↓18+181
Comments125

Небольшая осетинская притча

Reading time1 min
Views1.5K
Жил в селе Сырдон — хитрый старик. Его никто не любил, но он был мудр и стар, и потому с ним считались. Как-то он пришёл к соседу Бали.

— Дорогой Бали, ко мне приезжают гости издалека, не одолжишь ли ты мне твой большой котёл, чтобы сварить много еды и угостить моих дорогих гостей?

— Конечно, Сырдон, возьми его только обращайся с ним бережно и верни завтра утром.
Читать дальше →
Total votes 222: ↑145 and ↓77+68
Comments121

Высупление Стива Джобса перед выпускниками

Reading time13 min
Views1.6K
youtube.com/watch?v=D1R-jKKp3NA



Чуть ниже перевод.

I am honored to be with you today at your commencement from one of the finest universities in the world. I never graduated from college. Truth be told, this is the closest I've ever gotten to a college graduation. Today I want to tell you three stories from my life. That's it. No big deal. Just three stories.
Читать дальше →
Total votes 21: ↑19 and ↓2+17
Comments11

Первая помощь при офисном стрессе

Reading time1 min
Views1K
Некоторым повезло работать дома. Или в собственном кабинете.

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

Трудотерапия спасет мир! Самый эффективный выход — трудотерапия. Но в офисе обычно нет возможности взять лопату и вскопать грядку. И попытка подвигать мебель для снятия стресса может быть понята очень неправильно. Поэтому занятие должно быть тихим. Добрым. Не требовать сложного инструмента.

К счастью, нашлись люди, которые нашли решение проблемы. Нам потребуются вещи, которые есть в любом офисе: принтер (лучше, если он будет цветным), бумага, ножницы и клей. Взяв выкройки (в PDF), которые лежат на замечательном сайте readymech, вы печатаете их, вырезаете и после склеивания получаете двойную пользу. С однй стороны, в руках у вас чудесная игрушка, которую, в зависимости от качества исполнения, можно подарить любимому начальнику или охраннику, который вам нахамил на прошлой неделе. С другой стороны — стресса как ни бывало.
Total votes 40: ↑38 and ↓2+36
Comments29

Суждения о безопасности мудреца Инь Фу Во, записанные его учениками

Reading time3 min
Views6.2K
Такие интересные, с моей точки зрения, IT-притчи были опубликованы в Компьютерре №39 от 21 октября 2008 года.

#1
Однажды в курилке пользователи стали возмущаться, что Сисадмин закрыл всем доступ на сайт «Одноклассники». Инь Фу Во услышал об этом и нахмурился.

— Почему ты закрыл людям доступ? — спросил он Сисадмина, когда они после перекура пили кофе.

— Потому что такие сайты не нужны для работы.

— А курить нужно для работы?

— Вообще-то нет…

— А кофе пить?

— Ну…

— Ну тогда, — сказал Учитель, — открой людям доступ.


Читать дальше →
Total votes 46: ↑38 and ↓8+30
Comments10

Вкладки (страницы) на одной странице на html/css с помощью :target

Reading time2 min
Views145K
Рассмотрим один из вариантов создания нескольких страниц или вкладок (в том числе вложенных) на html и css без скриптов, списков и таблиц, на одной html странице. Только дивы, только хардкор. Подходит для небольших портфолио и элементов интерфейса. Не будьте буратинами используя это везде подряд.
Суть:

image
Читать дальше →
Total votes 56: ↑46 and ↓10+36
Comments35

Установка легковесного Jabber сервера Prosody (v0.9 и v0.10beta)

Reading time6 min
Views35K
Это статья о том как настроить jabber сервер Prosody для домашнего, возможно корпоративного, использования. У меня встала задача поднять личный jabber сервер на своем домене, с сохранением истории (возможно синхронизации с клиентом XEP-0136), с поддержкой общения с другими серверами jabber, конференций. В общем всё стандартно и ничего особенного, но при поднятии сервера я столкнулся с двумя проблемами о которых я и планирую сегодня рассказать.

Prosody это легковесный jabber сервер, написаный на языке lua, поддерживающий множество ХЕР(XMPP Extension Protocol) стандартов, все поддерживаемы стандарты вы можете посмотреть на этой странице. На вопрос «почему lua» создатель prosody Matthew Wild говорит что это очень простой язык который имеет быстрый интерпретатор, что и является причиной такого необычного выбора.

В этой статье я буду устанавливать prosody на Debian 7.
Читать дальше →
Total votes 14: ↑10 and ↓4+6
Comments15

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

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

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

Я постоянно записываю в свою базу знаний в Evernote различные хаки для повседневных задач, и недавно нашел там пример кода из какого-то open source проекта, где идет обращение с формой Google Docs через post запросы. И понеслось.
Читать дальше →
Total votes 46: ↑42 and ↓4+38
Comments15

Снегопад с помощью фильтров FFmpeg

Reading time6 min
Views18K
FFmpeg — мощное ПО со большим набором возможностей. В статье я постараюсь рассказать о немного необычном применении фильтров ffmpeg и о том что можно сделать используя исключительно их. Видео ниже сделано с помощью 1 команды ffmpeg (ни один графический редактор не пострадал).

Читать дальше →
Total votes 25: ↑25 and ↓0+25
Comments12

Nginx на стероидах — расширяем функционал с помощью LUA

Reading time9 min
Views54K
Для обеспечения работы всех наших внешних продуктов мы используем популярный nginx. Это быстро и это надежно. Проблем с ним почти нет. Наши продукты также постоянно развиваются, появляются новые сервисы, добавляется новый функционал, расширяется старый. Аудитория и нагрузка только растет. Сейчас мы хотим рассказать о том, как мы ускорили разработку, неплохо увеличили производительность и упростили добавление в наши сервисы этого нового функционала, при этом сохранив доступность и отказоустойчивость затронутых приложений. Речь пойдет о концепции “nginx as web application”.
А именно, о сторонних модулях (в основном LUA), позволяющих делать совершенно магические вещи быстро и надежно.
image
Читать дальше →
Total votes 72: ↑69 and ↓3+66
Comments40

Sublime Text Vintage Mode — справочник по горячим клавишам

Reading time3 min
Views50K
Как увидел Vintage Mode в действии сразу захотелось научиться им владеть. Как раз к этому времени я прошел курс Соло + VerseQ для слепого печатания на английском. Связка с Vintage Mode, мне казалось, будет очень эффективной для верстки, и я не ошибся.

image Для тех кто не знает Vintage Mode (Insert Mode в VIM) плагин для Sublime Text, который идет в комплекте с редактором. Взят он из редактора VIM, и многие думают, что пользу он может принести только бывшим пользователям Vim, но это ошибочное мнение. По умолчанию плагин деактивирован, как активировать объяснять не буду инструкция есть здесь. Скажу только что для входа в режим Vintage используется клавиша i, а для выхода ESC. По моему это крайне неудобно. Я воспользовался советом из оффициальной документации и теперь вхожу в Vintage Mode два раза нажав клавишу i. Подробности тут.

Вроде все отлично осталось только узнать список команд для каждой клавиши, немного понервничать, привыкнуть и готово. Но в официальной документации информации по клавишам нет, они обосновывают это тем, что клавиши те же что и в редакторе Vim. Но различия есть и их немало, документации на русском вообще нет ни по одному из редакторов (именно по Hotkeys Vintage Mode).
Читать дальше →
Total votes 22: ↑21 and ↓1+20
Comments24

Универсальный iRig для iPhone и Андроид своими руками или экономим 30 евро

Reading time4 min
Views214K
Счастливые обладатели айфонов, вероятнее всего слышали про такую вещь как iRig, которая вместе с софтом от IK Multimedia (те самые авторы AmpliTube — софтверного гитарного комбика с педалями для PC) позволяют использовать их яблочную технику в качестве гитарного процессора. Однако цены на официальный iRig несколько завышены, мягко говоря. Плюс для меня огромным минусом данной вещи было отсутствие поддержки устройств на Android (о причинах несовместимости читайте далее).



И так, если вы хотите сделать свой iRig, чтобы он поддерживал ещё и андроид, плюс потратить минимум денег, то добро пожаловать под кат.
Читать дальше →
Total votes 54: ↑51 and ↓3+48
Comments64

Бесконечные неповторяющиеся текстуры с помощью мозаики Вана

Reading time4 min
Views48K


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

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

Как же быть? Есть один трюк — непериодические мозаики. Они лишены проблемы повторяемости и достаточно просты в реализации. Одну из таких мозаик придумал китайский математик Ван Хао в 1961 году. Элементы этой мозаики можно представить в виде прямоугольников с разноцветными гранями. Но чтобы понять принцип её работы, надо сначала разобраться в классическом методе заполнения площадей текстурами.
А классический метод таков...
Total votes 99: ↑99 and ↓0+99
Comments25

Удаленное управление объектами в Blender-е

Reading time2 min
Views11K
Отлаживая разные алгоритмы управления для нашего робота, мы на себе прочувствовали насколько приятно было бы иметь среду моделирования и отлаживать программы сначала в ней, а потом уже тестировать на реальном роботе. Поскольку мы активно использовали Blender для создания моделей для 3Д-печати и для пользовательского интерфейса, мы решили попробовать Blender Game Engine в качестве среды для моделирования робота. Первые результаты оказались очень даже неплохими:

Читать дальше →
Total votes 28: ↑26 and ↓2+24
Comments14

Information

Rating
Does not participate
Location
Россия
Registered
Activity