Pull to refresh
106
0
Kalan @Kalan

User

Send message

Хочу, чтобы красиво!

Reading time4 min
Views619
У каждого программиста с накоплением опыта возникает некое обостренное чувство прекрасного. Думаю, это ощущение многим знакомо. Со временем формируется «вкус» к содержимому программы или её архитектуре. Возникает понимание того, что это должно быть сделано именно так, а не иначе, что хорошо, а что плохо. Появляются даже профессиональные капризы (Ненавижу, когда скобку переносят на следующую строку!)

От чувства прекрасного к грубой реальности...
Total votes 28: ↑23 and ↓5+18
Comments17

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

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

Лайфблоггинг по звукам

Reading time1 min
Views584
Настоящий фурор на конференции MobiSys 2009 произвела новая программа SoundSense. Через встроенный микрофон iPhone эта утилита осуществляет постоянный мониторинг фоновых звуков и непрерывно пытается анализировать и классифицировать их. Для всех видов шума генерируется уникальные идентификаторы. Например, изначально программа успешно определяет такие категории как голос, музыка, фоновый шум. Но самое интересное, что её можно настраивать и обучать на те звуки, которые сопровождают вашу и только вашу жизнь! На видео отлично показано, как просто и удобно это делается.


Читать дальше →
Total votes 9: ↑6 and ↓3+3
Comments7

Очередной пожиратель времени

Reading time1 min
Views644
Выбираете себе комнату, в которой максимум по 10 человек. Компьютер выбирает человека и загадывает слово, от простого до не самых легких. Суть игры: тот, кому загадали слово, пытается загаданное слово нарисовать.
Участники игры пытаются угадать, какое–же слово было загадано, высказывая свои предположения. На рисование\угадывание дается минута, потом ведущий меняется.
Image #614112, 59.3 KB
http://www.postitgame.co.uk/
Total votes 49: ↑39 and ↓10+29
Comments54

Моя борьба с девальвацией

Reading time3 min
Views2.9K
Глупейшая ситуация – взял ипотечный кредит в долларах США(USD), а тут кризис – доллар начал расти как на дрожжах, платеж начал отнимать всё большую часть моей рублевой зарплаты. Я мучительно стал искать, как же мне остановить это безумие — как замедлить рост платежей по кредиту, и удорожание всего кредита в целом?
Пообщавшись с коллегами, оказалось, что у меня еще все шоколадно, платеж по ипотеке не превышал 30% зарплаты, доллар в общем-то не так уж и сильно прыгнул. У одного из коллег же ситуация была просто критическая – кредит Банка Москвы в швейцарских франках(CHF) до кризиса отнимал ~50% зарплаты, к тому же франк вырос относительно доллара – за период с ноября 2008 по январь 2009 процентов на 15.

Valar ищет доллары
Valar ищет, где бы взять денег
Читать дальше →
Total votes 157: ↑122 and ↓35+87
Comments119

Музыка для программистов

Reading time1 min
Views5.6K
Все мы постоянно слушаем различную музыку: на работе, дома, в транспорте и т.д. Музыка влияет на наше настроение, работоспособность и на кучу других факторов.

К программированию как виду деятельности с особо сильным напряжений мозга, нужен особый музыкальный фон. Глядя на себя, я заметил, что не могу сосредоточиться, если слушаю русскоязычную музыку, так как слова постоянно влезают в мои мысли.

С иностранной музыкой таких проблем не возникает (так как у меня нет сильных знаний языка), но все равно отвлекает.

Для себя я нашел проект который играет в стиле эмбиент. Называется Biosphere. Заметил что под эти электронные переливы и шумы, можно добиться отличных результатов, к тому же иногда это все создает очень интересные ощущения на восприятие.

Наверное это не подействует на профессиональных программистов, у них то куча своих секретов. Хотелось бы узнать, бы ли у кого -то подобный опыт, и кто, что предпочитает при подобном виде деятельности?
Total votes 30: ↑21 and ↓9+12
Comments68

multi_get — качаем сайты оптом

Reading time4 min
Views1.7K
Топик будет интересен тем, кто хочет индексировать Интернет-сайты на предельных скоростях (самодельные поисковики, анализы частоты слов, сервисы по анализу html'я и т.п.) Threading тут не дает предельных скоростей, urllib — тем более… Решение здесь в использовании асинхронных запросов из libcurl.

Скорость?
На 500MHZ (очень-очень слабенький VPS) — около 100 URLов в секунду (100 соединений, 2 процесса).
На Amazon EC2 «High-CPU Medium Instance» (.2$/час) ~ 1200 URLов в секунду (300 соединений, 5 одновременных процессов). В один процесс до 660 URLов в секунду.

Для выкачивания множества сайтов и дальнейшей обработки, хочу поделиться одной своей полезной функцией — multi_get — по сути она — удобный wrapper для CurlMulti (libcurl), модифицированный из их примера CurlMulti.

>>> urls = ['http://google.com/', 'http://statcounter.com/']
>>> res = {}
>>> multi_get(res, urls, num_conn = 30, timeout = 5, percentile = 95)
>>> res['http://google.com/']
'<html><title>Google....
# тут обрабатываем res, который содержит HTML всех для URL'ок
Читать дальше →
Total votes 16: ↑14 and ↓2+12
Comments11

Многоликие

Reading time1 min
Views452
Так можно назвать часы японского дизайнера Takemura Ori. «UNI» — стильные ручные часы, вообще лишены стрелок (как и все уважающие себя футуристические часы), а время демонстрируют с помощью цветного OLED-экрана. С помощью прилагаемого софта (встроенный mini-USB порт) можно изменить шрифт, фон, цвет дисплея и стиль отображение времени. Думаю их можно использовать как флешку для всякой мелочи.

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

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

image
На фото секунды крутятся по спирали, что по мнению дизайнера, символизирует бесконечность времени… завораживает.
Читать дальше →
Total votes 33: ↑29 and ↓4+25
Comments28

Что Google никогда не говорил вам о заработке AdSense

Reading time1 min
Views677
Друзья подкинули мне идею перевести книгу о заработке на Google Adsense “What google never told you about making money with Adsense” by Joel Komm (7МБ).

Оригинал занимает около 200 страниц.
Перевод занимает раз в 7 меньше, поэтому читается легко, в нем много картинок (почти все картинки сохранены).

Часть 1.
Что такое Google Adsense, как приступить к работе и выбрать объявления, настройка внешнего вида объявлений и страниц. Это не главы из Adsense Help, а скорее хитрости, о которых сам Google не сообщает.

Часть 2
Часть 3
Часть 4
Часть 5

Я постаралась выкинуть из перевода все устаревшие ссылки, устаревшую информацию и т.п.

В процессе перевода рейтинг кликов на моем сайте поднялся с <1% до около 3% (между делом), и думаю, что возможно дальнейшее повышение.

Книга не о том, как поднять трафик (хотя это очень важно в случае Adsense), а о том, как оптимизировать то, что есть с целью повышения дохода. И поднять процент кликов в n раз гораздо проще, чем трафик во столько же раз, поэтому не стоит пренебрегать оптимизацией.

Update:
Перевод в одном файле (PDF, 4MB)
Total votes 42: ↑40 and ↓2+38
Comments8

Gyazo — минималистический создатель скриншотов

Reading time1 min
Views43K
Один скриншот стоит ста слов.
Очень часто разработчику/тестеру приходится создавать скриншоты — проиллюстрировать баг, указать на неточность в описании, просто быстро перекинуть знакомому какую-то часть экрана со смешной цитатой из блога или прикольное совпадение между новостью и баннером.
Как делают непродвинутые пользователи? Print screen -> Paste to Photoshop/Paint -> Save as -> Upload to Imageshack -> получить ссылку. Фух.
Продвинутые используют какой-то сервис, типа clip2net (презентация на хабре). Он позволяет значительно сохранить время на создание скриншота, но всё равно надо кликнуть порядка десяти раз и пройти через несколько экранов чтобы получить свою ссылку.
Решение
Gyazo — предельно простая утилита. Один клик — запустить приложение, второй клик — выделить область на экране. Всё — после этого программа сохранит скриншот на своём сервере (в PNG), откроет картинку в открытом браузере и запомнит её в клипборд.
Есть версии дистрибутива и под win, и под linux, и под mac.
Update: прошло полгода. К сожалению гязо стал тормозить и подглючивать. Поэтому перешёл на использование clip2net. К чести его создателей — сейчас там можно добавить «значения по умолчанию» на многие действия и работать так же проято как и с гязо.
Total votes 42: ↑37 and ↓5+32
Comments81

Может ли сойти с ума искусственный интеллект?

Reading time3 min
Views837
Меньше месяца назад я нашел себе новое развлечение — инфов. Если вдруг кто еще не знает о них, почитайте здесь. Для простых людей, вроде меня, инфы — это как семечки. Толку ноль, но оторваться почти невозможно. Здесь я вкратце расскажу о собственном опыте обучения двух инфов: умного и дебильного.
Читать дальше →
Total votes 23: ↑18 and ↓5+13
Comments24

Журналистам, с уважением, о Википедии

Reading time3 min
Views498
Википедия — один из самых посещаемых сайтов в мире, один из популярнейших проектов, огромная свободная энциклопедия. В то время, как компании всё меньше сообщают о крупных сделках, а писать что-то надо, в проекте кипит жизнь, достойная описания в любом издании: в детском, научном, популярном — где угодно.
При этом, конечно, хочется писать о крупном проекте хорошо. Вообще, писать хорошо должно хотеться всегда, а получается — не всегда (вот, например, и эта заметка, вроде как, размещена в личном хабраблоге, а всё равно хочется написать хорошо, а как — никто не учил); для того, чтобы писать о Википедии хорошо, нужно, сначала, не делать хотя бы следующие ошибки:
  • Не бывает российской Википедии (да и русской — не существует);
  • Википедия не сообщает и не информирует;
  • Википедия не является автором фотографий;
  • Нельзя путать Википедию, Викимедиа, Медиавики и вики

На самом деле, я счастлива, если уже при первом прочтении названное является очевидным. Особенно последний пункт. Но на всякий случай поясню.

1) Не бывает российской Википедии (да и русской — не существует)
Сайт ru.wikipedia.org — раздел Википедии на русском языке. Звучит длинно, зато точно. Сайт никак не относится к Российской Федерации, и создают его далеко не только русские люди. Задача Википедии — собрание всех знаний человечества на всех языках, а не «во всех странах».
Географию создателей ruwiki можно приблизительно оценить здесь.

2) Википедия не сообщает и не информирует
У каждой статьи Википедии есть как минимум один автор. У большинства статей проекта авторов — множество; мало того, некоторые из них являются программами… Говорить «В США СХУ страдают около 10 больных на 100 тысяч населения, пишет Википедия», или "… крыла запрещённой в Турции исламистской Партии благоденствия, пишет Википедия" — некорректно до странности; утрируя, «забор пишет, что Саша любит Таню».

3) Википедия не является автором фотографий
Примерно по вышеприведённой причине грустно видеть подпись «Фото: фрегат Klakring (en.wikipedia.org)».
У каждой фотографии в Википедии есть своя страница. Например, у отображённой здесь фотографии, видной в этой статье, есть страница, на которой сказано, что автор фотографии — André Zahn, и он опубликовал фотографию под лицензией CC-BY-SA-2.0-DE.
Особо важно не делать эту ошибку потому, что ни одно СМИ не хочет нарушать чужие авторские права, если дорожит лицензией; давать ссылку только на Википедию, не указывая автора и, зачастую, меняя лицензию, под которой распространяется фотография — нарушение авторских прав. Кроме того, посмотрев на страницу фотографии, можно вдруг обнаружить, что она защищена авторским правом, и используется в Википедии на особых положениях.

4) Нельзя путать Википедию, Викимедиа, Медиавики и вики
Википедия — энциклопедия, открытая для чтения и редактирования каждому. Название образовано от слов «вики» и «энциклопедия»
Фонд Викимедиа — организация, собирающая и тратящая деньги на Википедию и ряд дружественных проектов.
Медиавики — движок, на котором работают проекты Фонда Викимедиа, в том числе Википедия.
Вики — технология, которую использует движок, на котором работают проекты Фонда Викимедиа, в том числе Википедия.

В общем-то, кажется, и всё, страшные ошибки на этом кончились. Мне кажется, просто.
Можно также сказать о том, что авторам Википедии не платят зарплату и там нет цензуры, но тогда эти советы, безусловно, не будут подходить всем изданиям, как это было обещано вначале — ведь есть и любители скандалов; этические ошибки, которые делают они — право, неперечислимы, а значит, не стоит пытаться.
Total votes 42: ↑37 and ↓5+32
Comments76

Cимвол з̶а̶ч̶е̶р̶к̶и̶в̶а̶н̶и̶я

Reading time1 min
Views6.6K
Недавно нашел интересный символ, который позволяет делать зачеркнутый текст практически в любом месте. Без использования тегов.
В̶о̶т̶ ̶п̶р̶и̶м̶е̶р̶ ̶т̶а̶к̶о̶г̶о̶ ̶и̶с̶п̶о̶л̶ь̶з̶о̶в̶а̶н̶и̶я.

Подумал что хабрапользователям бывает трудно на некоторых сайтах, где нельзя использовать коды, вот и решил предложить альтернативный вариант =)
Сам символ просто так не получается вставить, зато можно его вытащить из примера.
Вставлять его нужно после каждой буквы, кроме последней.
Total votes 133: ↑95 and ↓38+57
Comments150

Использование IPv4 адресов с российским размахом

Reading time1 min
Views1.5K
По мотивам bash'а.

Для тех, кто недостаточно хорошо помнит гимн РФ:
for i in {200..225}; do nslookup 62.76.96.$i | grep "(?<=name = ).*$" -o -P ; done

upd Варианты улучшенные:

лаконичный
dig -t ptr +short {200..225}.96.76.62.in-addr.arpa

винда с PowerShell
for ($i=200; $i -le 223; $i++){(nslookup 62.76.96.$i)[3].ToString().Replace('.', ' ').Substring(9)}

винда без PowerShell
for /l %i in (200,1,255) do nslookup 62.76.96.%i
Total votes 305: ↑277 and ↓28+249
Comments84

Эксперимент с трансформатором Тесла

Reading time1 min
Views2K
Наткнулся на такое вот видео:

Не очень понимаю суть процесса, но выглядит прелюбопытно. Особенно тот факт, что человеческое тело весьма сильно влияет на показания прибора. Кто-нибудь может просто на пальцах пояснить как это работает?
Total votes 53: ↑44 and ↓9+35
Comments32

Измеряем температуру на расстоянии, обзор Fluke 62 mini

Reading time1 min
Views19K
Использую в работе вот такой инфракрасный термометр:

инфракрасный термометр Fluke 62 mini

Он незаменим тогда, когда нет возможности поставить датчик, когда надо измерить температуру в труднодоступных местах. Он с легкостью меряет температуру чипов, жидкостей, вращающихся деталей (подшипников), диких животных :)
фото и немного измерений...
Total votes 124: ↑113 and ↓11+102
Comments175

Slippery Spheres

Reading time1 min
Views465


Школьники предлагают нам изготовить чудо-полимер, не верьте, no way



Шары в жидкости — особый полимер, который имеет близкий к воде коэффициент преломления. Называется эта штука: Slippery Spheres.
Стоит эта игрушка порядка 4 долларов, впитывая в себя воду могут увеличиваться в 200 раз от своего первоначального размера, бывают различной формы.
Total votes 27: ↑25 and ↓2+23
Comments33
1
23 ...

Information

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