Как стать автором
Обновить
0
0
Игорь Лифанов @auric

Пользователь

Отправить сообщение

Виртуальный диск Яндекс.Фотки

Время на прочтение2 мин
Количество просмотров1.9K
Иногда бывает нужно быстро скопировать несколько фотографий из своего альбома на сервисе Яндекс.Фоток, конечно, есть специальная программа, но на чужом компьютере ее не всегда возможно установить. Я разработал небольшой сервис, который может значительно упростить этот процесс. Набрав в windows команду net use y: http://<адрес>/<логин>/, где <адрес> равен «wd.sharecoder.com/yf/», а <логин> — ваш логин на яндекс.фотках (пароль не нужен), вы подключите сетевой диск, папки на котором — альбомы (только те, что доступны для всех), а файлы — фотографии на сервисе Яндекс.Фотки. Теперь вы сможете скопировать их, как обычные файлы вашим любимым файловым менеджером. Подробности (и картинки) под катом.
Читать дальше →
Всего голосов 112: ↑109 и ↓3+106
Комментарии87

Тестировщики, хотите знать, как положительным образом влиять на программистов?

Время на прочтение2 мин
Количество просмотров3.1K
Недавно в комментариях в очередной раз попалась мне на глаза легенда про Чёрную Команду, рассказанная Томом ДеМарко в свой книге «Человеческий фактор». Книга замечательная, а легенда дурацкая. Так и хочется пожелать, чтобы ДеМарко всю жизнь пришлось работать с такими тестировщиками!

Давно уже прошли времена, когда тестирование было каторгой, куда ссылались неугодные или нерадивые разработчики. Давно наступили времена мирного взаимовыгодного сосуществования. Но некоторые программисты, прочитав книжку умного дядьки начинают бояться злобных тестировщиков. А начитавшиеся менеджеры и того хуже — начинают (о, ужас!) культивировать и внедрять.

Чтобы как-то компенсировать этот негатив, я решил опубликовать несколько отрывков из статей Майкла Болтона, в которых пропагандируется в точности противоположный стиль взаимоотношений с коллегами по команде. Сегодня — первый отрывок.

Итак, хотите знать, как положительным образом влиять на программистов?
  • Скажите программистам, что ваша главная цель – помочь им хорошо выглядеть, а затем начните в это верить. Ваша работа – не стыдить, не обвинять и не выступать в роли зла. Я не думаю, что мы имеем право даже в шутку говорить об этом, поскольку это не смешно.
  • Вы всегда являетесь носителем плохих новостей. Отдавайте себе в этом отчет, и доставляйте плохие новости с сочувствием и сдержанностью.
  • Вы тоже можете ошибаться. Относитесь скептически к своим собственным выводам.
Читать дальше →
Всего голосов 48: ↑42 и ↓6+36
Комментарии81

Технология поиска похожих изображений

Время на прочтение3 мин
Количество просмотров17K

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


Компания Picsearch выпустила первую публичную версию поиска по изображениям в сентябре 2001 года. В июле того же года запустил свой поиск по картинкам Google. Яндекс.Картинки официально открылись в июле 2002 года, став первым российским поисковиком, ищущим изображения. В ноябре 2003 г. Yahoo! добавил справа от поисковой строки меню с опцией поиска по изображениям в том числе.

Читать дальше про это и про первую версию поиска похожих изображений на Яндекс.Картинках
Всего голосов 38: ↑33 и ↓5+28
Комментарии23

Обзор свежих материалов, сентябрь 2010

Время на прочтение5 мин
Количество просмотров818
Этот материал продолжает серию ежемесячных обзоров свежих статей по теме интерфейсов, новых инструментов и коллекций паттернов, интересных кейсов и исторических рассказов. Из лент нескольких сотен тематических подписок отбирается примерно 5% стоящих публикаций, которыми интересно поделиться. Предыдущие материалы: апрель, май-июнь, июль, август.



Читать дальше →
Всего голосов 62: ↑60 и ↓2+58
Комментарии22

Установка Qt Embedded

Время на прочтение5 мин
Количество просмотров34K
Руководство по установке инструментов для разработки и инсталляции разработанного приложения на целевую систему. Основной ПК работает под управлением Debian, а целевой машиной – mini2440 на основе процессора 400 MHz Samsung S3C2440A ARM920T.

В руководстве рассматриваются работа с эмулятором QVFB, компиляция на рабочей машине для целевого устройства, компиляция и установка драйвера tslib, установка библиотек на целевую машину.

image

Читать дальше →
Всего голосов 72: ↑66 и ↓6+60
Комментарии26

Десять вещей, которые вы не ожидали от HTML/Javascript

Время на прочтение1 мин
Количество просмотров4.6K
Пятнадцать лет назад трудно было представить, что когда-нибудь HTTP, HTML, CSS и Javascript станут основными технологиями для доступа к информации и заменят целые классы десктопных приложений. Например, вот десять примеров того, что сложно было ожидать от веб-технологий в 2010 году, но они это делают.

1. Интерактивный рендеринг физики ткани


2. Распознавание объектов на видео в реальном времени


Читать дальше →
Всего голосов 117: ↑88 и ↓29+59
Комментарии41

Графен — прошлое, настоящее, будущее

Время на прочтение2 мин
Количество просмотров35K
imageВ этом году Нобелевевская премия в области физики была присуждена ученым, нашим соотечественникам — Константину Новоселову и Андрею Гейму, за инновационные эксперименты с двухмерным материалом — графен.

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

Помощь в создании и продвижении материала ученым оказывала компания Samsung.
Читать дальше →
Всего голосов 113: ↑102 и ↓11+91
Комментарии97

Что стоит знать задумавшемуся о переходе на Ubuntu

Время на прочтение8 мин
Количество просмотров115K


Знакомый, в глаза не видевший Linux, но заинтересовавшийся опенсурсом, после выхода Ubuntu 10.10 попросил написать ему, "чем хорошо, чем плохо, какие осложнения, какие тонкости, как наладить отношения с вин7", чтобы он мог решить, нужно ли ему это счастье.


Сначала подумал "зачем буду писать текст, когда наверняка его уже сто человек написали — быстро нагуглю, пошлю ссылку, а потом уже на конкретные вопросы отвечать буду". Но затем обнаружил, что по запросам вроде "миграция на ubuntu" вываливаются гигантские мануалы с тонкостями настройки compiz, а недлинный текст для "неопределившихся" быстро найти не получается ни в интернете вообще, ни на ubuntu.com и ubuntu.ru (то есть все как и писал в предыдущем посте), ни на Хабре — вот и подумал, что пусть теперь хотя бы на Хабре будет.


Участники "Убунтариума" вряд ли узнают из текста что-то новое, зато они могут дополнить его в комментах (не претендую на звание гуру, так что много важного наверняка упустил), и тогда люди, которые позже введут в гугл что-то вроде "переход на ubuntu", найдут тут счастье.

Читать дальше →
Всего голосов 232: ↑184 и ↓48+136
Комментарии638

Adaptive boosting

Время на прочтение7 мин
Количество просмотров18K
Здравствуйте, на Хабре уже была статья Indalo, посвященная AdaBoost, точнее, некоторому его применению. Я же хочу более детально остановиться на самом алгоритме, заглянуть в его реализацию и продемонстрировать его работу на примере моей программы.

Итак, в чем же заключается суть методики Adaboost?
Читать дальше →
Всего голосов 62: ↑51 и ↓11+40
Комментарии21

SGVsbG8gd29ybGQh или история base64

Время на прочтение3 мин
Количество просмотров67K

Краткая предыстория


Вообще, все началось давно. Настолько давно, что вряд ли остались свидетели holy wars тех дней, когда решалось — сколько же бит должно быть в байте.

Это сейчас нам кажется само собой разумеющимся, что 1 байт = 8 бит, что в байте можно закодировать 256 различных значений. Но когда-то было совсем не так. История помнит и семибитные кодировки, и шестибитные, и даже более экзотические системы (например — ЭВМ «Сетунь», которая использовала троичную логику, то есть один троичный бит — трит мог иметь три, а не два значения, для нее было справедливо соотношение 1 трайт = 6 тритам). Но если оставить в стороне всякую экзотику, то мэйнстримом все-таки были кодировки, в которых 6, 7 или 8 бит в байте.

Шестибитная кодировка (например — BCD) позволяла закодировать в одном байте 64 различных значения, что, как казалось, было вполне достаточно для кодирования алфавитно-цифровых символов, а «лишний» седьмой бит расширял кодировку уже до 128 символов.

Однако скоро восьмибитный байт стал общепринятым.
Читать дальше →
Всего голосов 71: ↑64 и ↓7+57
Комментарии36

Задача о рюкзаке: а что же внутри?

Время на прочтение3 мин
Количество просмотров29K
Достопочтенный SergeyACTIVITI в своём посте поведал нам про такую полезную вещь, как задача о рюкзаке, решение которой с успехом реализовано в решателях COIN-OR или GLPK. А что же внутри?

Итак, пусть у нас есть рюкзак объёма W, и список из n вещей, у каждой из которых есть объём v[i] и стоимость c[i], и каждую из которых можно брать сколько угодно раз. При этом все объёмы и все стоимости будут положительными и целыми. Как же работает алгоритм?

Читать дальше →
Всего голосов 85: ↑56 и ↓29+27
Комментарии75

Книга с алгоритмами на C++ (архив сайта e-maxx.ru)

Время на прочтение1 мин
Количество просмотров45K
Есть один замечательный сайт, посвящённый алгоритмам — наверняка многие из Вас о нём слышали и выкачивали его содержимое Teleport’ом или чем-нибудь подобным. Но совсем недавно Максим (автор сайта) создал очень удобную pdf-книжку из всех статей, что присутствовали на сайте. Я знаю, что ему будет приятно узнать, что его труды пригодились IT-сообществу, поэтому я и решил написать тут о электронной книге с алгоритмами.
Читать дальше
Всего голосов 107: ↑105 и ↓2+103
Комментарии40

Как работают алгоритмы сортировки

Время на прочтение1 мин
Количество просмотров22K
Иногда для понимания того, как работает та или иная вещь, лучше один раз увидеть, чем сто раз услышать.

Замечательный сайт www.sorting-algorithms.com позволяет увидеть, как сортируются данные разными алгоритмами. Вы сможете посмотреть анимацию в зависимости от алгоритма, исходных данных.



Все это бегает и сортируется прямо на ваших глазах!

Работает на Google App Engine, видимо, поэтому и лежит от посетителей с «Хабра».
Всего голосов 185: ↑151 и ↓34+117
Комментарии63

Алгоритм роя частиц

Время на прочтение8 мин
Количество просмотров62K

Введение


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


Читать дальше →
Всего голосов 107: ↑105 и ↓2+103
Комментарии22

Когда не нужна тригонометрия

Время на прочтение4 мин
Количество просмотров53K
Просматривая различный код по выводу на экран какой-нибудь даже примитивной графики, я заметил чрезмерную любовь некоторых программистов к тригонометрии. Часто код пестрит синусами, косинусами и арктангенсами там, где без них можно обойтись. Этим грешат даже хорошие программисты, которые способны спроектировать сложную систему, но почему-то не освоили вектора в объёме школьной программы. Буквально азов векторной алгебры хватает для решения многих насущных проблем. В этом топике я хочу провести краткий ликбез, напомнить основные действия с векторами на плоскости и в качестве примера решить две задачи без тригонометрии: поиск отражённого луча по падающему лучу и произвольно расположенному зеркалу, а также рисование наконечника стрелки. Если вы можете представить в голове рисование произвольно направленной стрелки без синусов и косинусов, смело пропускайте этот топик. Для остальных постараюсь объяснять попроще.
Читать дальше →
Всего голосов 219: ↑209 и ↓10+199
Комментарии67

Lexiconer — программа для пополнения словарного запаса

Время на прочтение1 мин
Количество просмотров6.6K
Lexiconer — программа для пополнения словарного запаса. Основное ее отличие от программ подобного рода — простота. На данный момент программа доступна для Windows, но так как программа написана с использованием библиотеки Qt, то со временем возможно появление версии для Linux.



Читать дальше →
Всего голосов 50: ↑44 и ↓6+38
Комментарии73

Одинокое программирование

Время на прочтение2 мин
Количество просмотров3.6K
Когда плотник осваивает свое ремесло, он учится, наблюдая за работой других — за тем, как они распиливают древесину и забивают гвозди. То же относится и к хирургам, учителям и множеству других профессий — но не к программистам. Нас учат программированию в университетах или мы учимся сами, но при этом мы крайне редко наблюдаем за тем, как работают другие программисты. Если продолжать аналогию с плотниками, нас учат теории обработки древесины и алгоритмам забивания гвоздей, а потом оставляют с материалом наедине на всю нашу профессиональную жизнь, а все остальные плотники работают в отдельных закрытых комнатах.

Читать дальше →
Всего голосов 115: ↑106 и ↓9+97
Комментарии75

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

Время на прочтение4 мин
Количество просмотров3.4K
Года три назад у меня роились идеи относительно того, как создать такое ядро системы, которое позволяло бы быстро и эффективно расширять его функционал с помощью подключаемых модулей, расширений. При этом нужно было минимизировать проблемы, которые возникают у плагинописателей при развитии продукта, проблемы совместимости множества плагинов.

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

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

Читать дальше →
Всего голосов 70: ↑55 и ↓15+40
Комментарии107

XmlTree плагин для QtCreator

Время на прочтение1 мин
Количество просмотров1.6K
Qt Creator из легкой и простой IDE развился во вполне удобную и функциональную среду. Чего стоит один только Generic Highlighting. Но к сожалению, не всегда удобно просматривать и редактировать xml файлы в виде исходного текста разметки, иногда проще редактировать в виде дерева нод. Для этой цели и был разработан плагин XmlTree, о котором ниже пойдет речь.
Читать дальше →
Всего голосов 24: ↑22 и ↓2+20
Комментарии8

Ищем решение проблемы потери данных при падении Лисы

Время на прочтение3 мин
Количество просмотров3K
Так получилось, что за несколько последних дней Firefox не закрывался нормально дважды. Первый раз он честно сдался (crash) после длительного периода интенсивной работы, неся на борту более 50 экстеншинов, а второй раз: пришел сегодня на работу — а комп выключен. Оказалось, электричество вырубали…

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

Поискав немного, я нашел, что Firefox делает сохранение настроек в файл prefs.js
(живет по адресу C:\Documents and Settings\User\Application Data\Mozilla\Firefox\Profiles\sDgUfwhg.default\prefs.js)
только при штатном закрытии (и еще при некоторых движениях, которые всплыли в ходе расследования).

Но браузер в наше время практически никогда не закрывается… Значит должно быть решение ;)
Читать дальше →
Всего голосов 29: ↑22 и ↓7+15
Комментарии50

Информация

В рейтинге
Не участвует
Откуда
Киев, Киевская обл., Украина
Дата рождения
Зарегистрирован
Активность