Pull to refresh
136
0
Артем @Rchee

User

Send message

Популярные алгоритмы машинного обучения. Теоретические основы и реализация с нуля на Python

Level of difficultyHard
Reading time1 min
Views37K

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

Читать далее
Total votes 22: ↑22 and ↓0+22
Comments21

27 отличных open source-инструментов для веб-разработки

Reading time3 min
Views51K


Перевод 27 Amazing Web Development Tools for the Past Year (v.2018)

В 2017-м мы сравнили около 7 500 open source-инструментов для веб-разработки, из которых выбрали 27 лучших (0,4%). Это крайне конкурентный список, в который вошли инструменты, библиотеки и проекты, опубликованные в течение 2017-го. Mybridge AI оценивает их качество на основании популярности, заинтересованности и новизне. Чтобы было понятно, у выбранных продуктов среднее количество звёзд на Github — 5260.

Open source-инструменты могут почти даром повысить вашу продуктивность. Также вы можете чему-то научиться, читая исходный код и создавая что-нибудь на основе этих проектов. Так что рекомендуем уделить время и поэкспериментировать с инструментами из нашей подборки, возможно, какие-то из них прошли мимо вас.
Читать дальше →
Total votes 70: ↑55 and ↓15+40
Comments10

Организация платежей через интернет с помощью банковских карт

Reading time2 min
Views1.2K
Рассматриваются российские эквайеры с оплатой в рублях. Отсортировано случайно.
Заказчика интересует — куда и как быстро будут переводиться снятые с клиента деньги.

1. www.assist.ru
Много где попадается мне при оплате Webmoney. Никаких замечаний
Для работы с картоном необходимо заключить договор с ucscard.ru, который сотрудничает и с chronopay.com
Комисия 3,9% — 4,2%. Требует открытия счета в Росбанке
Электронная валюта через КИТ Финанс и 4%, открытия счета не требуется.

2. www.chronopay.com/ru
Был пост, что их юзают Вконтакте, даже со скриншотами, но

Вконтакте юзает сейчас

3. www.raiffeisen.ru/business/ecommerce

4. www.cyberplat.ru
на момент проверки сайт недоступен.
1-2 часа не мог зайти. во как

5. www.payonlinesystem.ru
Свежие кажутся.
от 4% и ниже

6. paymentgate.ru
Пишут об ихних требованиях
— Наличие счета у Компании в ОАО Альфа-Банк
— Физическое присутствие на рынке, т.е. наличие наземных точек продаж,
известность на рынке, год успешной работы.
— Оборот компании должен составлять не менее 20 млн. руб. в год.
Случалось, что не мог зайти на сайт, в то время, как на другие вход был

7. liqpay.com
(Приватбанк)
Украина, работают с Россией.
Перевод денег на внутренний виртуальный счет бесплатно, моментально. Есть возможность с ними сделать что угодно. Не совсем удобная схема для крупной коммерческой компании, с контролем финансов, если деньги на счет будут приходить от не резидента. 2 раза общался с суппортом. Время не помню, но отвечали сразу. По вопросу о переводе стредств на р/с счет в России обещали по оставленым контактам ответить.

8. www.pay4all.ru
г. Томск
На текущий момент внедрений не обнаружено
Работают с цифровой подписью.
Получается ЭЦП + эквайринг, что может иметь смысл с нашим непростым законодательством.
Случалось, что не мог зайти на сайт, в то время, как на другие вход был.
Перевод денежных средств на любой счет в банке.

TODO
изучить что говорит Закон об эквайринге.

Посты и страницы в интернете датированные ранее 2008 годом я не читаю.
Total votes 15: ↑7 and ↓8-1
Comments12

Обзор нескольких кодировщиков видео для iPhone/iPodTouch

Reading time2 min
Views588
В настоящее время в интернете появляется огромное число программ, позволяющих перекодировать видео для просмотра его на iPhone/iPod'е. В этом обзоре я постараюсь выделить наиболее популярные, рассказать об их достоинствах и недостатках. Подробности под катом.
Читать дальше →
Total votes 6: ↑4 and ↓2+2
Comments12

Free seedbox или поднимаем рейтинг на трекерах бесплатно

Reading time1 min
Views12K
Сидбокс часто используется европейцами на приватных трекерах. Тут сразу возникает вопрос:«Чем их не устраивает использование обычного клиента на своем компьютере и скачивание по своему интернет каналу?». Это, а так же, как можно использовать это бесплатно в наших условиях я постараюсь рассказать дальше.
Читать дальше →
Total votes 25: ↑17 and ↓8+9
Comments22

Делаем красивую флеш галерею в программе Picasa

Reading time1 min
Views909
image
Совсем недавно мне понадобилось составить подборочку из нескольких моих фотографий. Это должны были быть портреты. Недолго думая, я решил что нужно всё это реализовать это на флеш, т.к. это просто, карасиво, да и флеш-плеер я думаю уже почти у всех есть.

Первая мысль была скачать какую-нибудь галерею, куда можно привязать фликр или пикасу. Но вдруг я наткнулся на один хороший сайт. Там были выложены шаблоны галерей и их демонстрации. Скачав понравившийся шаблон я, к своему удивлению, не нашел никакого readme… Пришлось поискать на сайте. Оказалось что эти шаблоны нужно вставлять в программу пикаса… А потом в интерфейсе программы создавать готовую галерею.
Читать дальше →
Total votes 118: ↑109 and ↓9+100
Comments41

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

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

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

Попытка доказать что мир тесен: результаты

Reading time2 min
Views961
Некоторое время назад я проводил эксперимент на Хабре.
Он заключался в следующем: я просил у хабралюдей их id профиля контакте, и я пытался связать их и Павла Дурова. Некоторые пути, найденные мной, были довольно длинными, и я обещал найти цепочки покороче.
Лично свою цепочку знакомств до Дурова я укоротил до 5 рукопожатий. Множество добровольцев знакомы через 3-5 рукопожатий.
Итак, публикую результаты: граф.
Прощу прощения за корявость некоторых линий: делалось в неудобной обстановке, в спешке и древней механической мышой. Желающие и умеющие могут нарисовать что-то более красивое.
Читать дальше →
Total votes 93: ↑65 and ↓28+37
Comments38

Примеры Google Maps API №1: Создаем собственные элементы управления

Reading time6 min
Views6.1K
Итак, я продолжаю делать кросс-посты из моего блога. На этот раз речь пойдет о создании собственных элементов управления для карт на основе Google Maps API.
Читать дальше →
Total votes 46: ↑35 and ↓11+24
Comments17

Инструментарий сеошника

Reading time3 min
Views990
Хочу рассказать вам об инструментарии и сервисах, которыми сам пользуюсь.

Сначала анализируем запросы. В первую очередь нас интересует Рамблер и Яндекс для подбора синонимов.

Анализ запросов
https://ad.rambler.ru/swrds/wrds.pl — анализ запросов в Рамблере
http://wordstat.yandex.ru — анализ запросов в Яндексе
stat.go.mail.ru — анализ запросов в Мейле
http://www.google.com/trends — тренды Гугля
http://inventory.overture.com/d/searchinventory/suggestion/ — подбор запросов
https://adwords.google.com — ассоциативный для Гугля
https://adwords.google.com/select/KeywordToolExternal — Гугл

Читать дальше →
Total votes 31: ↑19 and ↓12+7
Comments10

25 лучших деловых книг

Reading time2 min
Views6K
Я стараюсь читать много бизнес-литературы. Скажу честно – попадается много откровенно неудачных, графоманских, непрактичных книг. Но есть книги, которые иначе как сокровищами не назовешь.

Я составил список из 25 золотых (ИМХО и только ИМХО) деловых книг.
Читать дальше →
Total votes 3: ↑3 and ↓0+3
Comments145

Яндекс.Фотки Архив

Reading time1 min
Views6.3K
На сервисе Яндекc.Фотки не ограничен объем загружаемых фотографий — его очень удобно использовать для бэкапа и хранения вашей фото-коллекции.

Яндекс.Фотки Архив позволит скачать архив ваших фотографий с сервиса Яндекс.Фотки в один клик, если что-то случилось с вашими фотографиями на локальном компьютере или вам надо скопировать их на другую машину.

Будет отличным дополнением к ранее анонсировавшемуся плагину Яндекс.Фотки для Picasa, выполняющему противоположную функцию — закачку фотографий на Яндекс.Фотки.
Total votes 27: ↑20 and ↓7+13
Comments22

Студентам от.masterhost

Reading time1 min
Views596
Бесплатный хостинг для студентов!

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

По тарифу «Студенческий» бесплатно предоставляется виртуальная площадка с бесплатным доменом третьего уровня в зоне studenthost.ru и возможностью прикреплять к нему как синонимы доменные имена второго уровня.

Для того чтобы воспользоваться предложением и заказать виртуальную площадку по тарифу «Студенческий», необходимо пройти регистрацию на masterhost.ru
После регистрации следует оформить «заявку на свободную тему» из панели управления, раздел Заявки и распоряжения.

Подробнее→
Параметры тарифного плана «Студенческий»
Total votes 24: ↑19 and ↓5+14
Comments24

Из князи в грязи за один вечер.

Reading time1 min
Views488
Много раз слышал о эффекте стада. На себе пару раз прочувствовал. И видел на других.


В очередной раз перечитывая комменты в топике "Железные нервы у суппорта Стрима", наткнулся на один комментарий человека rchee. Он написал комментарий, пускай резкий но правдивый: "Уже третий пост на эту тему. минус в карму".

upd: справедливость восторжествовала. Спасибо уважаемым хабрапользователям. А тем кто говорит что это «нытьё», возможно сам ноет, что ему так карма не доставалась (в принципе легко).
Читать дальше →
Total votes 78: ↑51 and ↓27+24
Comments97

огромная коллекция RSS иконок

Reading time1 min
Views650
rss icon

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

Полный список оранжевого добра.
Total votes 22: ↑19 and ↓3+16
Comments5

Введение в SVG и пример — pie chart

Reading time6 min
Views6.7K
SVG (scalable vector graphics) это векторный формат графики подобно EPS, анимации и интерактива с пользователем, разрабатываемый в W3C. Внутри файл не бинарный а обычный XML, описывающий объекты, их эффекты и поведение. Векторная графика в общем нужна при изменении размера изображения без потери качества, например в полиграфии. В web я это вижу в резиновых сайтах, где размеры блоков установлены в %, размер шрифтов в em, а лого — в SVG. Пересели на более хороший монитор — всё изменилось пропорционально. Практические примеры — иконки, графики, карты, логотипы, интерфейсы. Ниже я привожу пример такого Pie-chart'а.


Интеграция

HTML — Inline
Поскольку SVG по сути XML, то его можно сразу inline-стилем описывать в XHTML-структуре. Однако как я уже убедился, XHTML1.1 doctype подразумевает что MIME документа уже не text-plain. А «ослик» IE6 не понимает XHTML в принципе, с другой стороны Firefox использует два парсера, и если MIME не application/xhtml+xml, то inline SVG не будет распознан. Это палка с двумя концами — IE и FF.
/>
Второй способ и наиболее практичный — ссылаться на существующий файл через object-тэг. Для
уменьшения траффика, файл можно сжать и получить SVGZ архив.
CSS и Javascipt
Как вы увидите ниже — поскольку SVG очень тесно связан с HTML/XML, то естественно что на графические объекты можно не только описывать при помощи CSS, но и писать Javascript-функции на всевозможные onclick и тп. event'ы (отсюда и интерактивность). />
Конвертирование и редакторы
Конвертировать SVG можно и в png/jpeg, но для этого фактически надо проделать работу обработчика. В PHP этим занимается PEAR XML_svg2image библиотека. Ещё есть сервис по конвертированию растрового изображения в векторный (правда там EPS). Из редакторов — есть Inkscape и Adobe Illustrator, Corel Draw.

Графика

Примитивы

Всякое рисование начинается с определения пространства (двумерного), разделения на координаты (в единицах с плавающей точкой или процентах) и введения примитивных конструкций:
  • line — прямая линия. x1, y1, x2, y2 — координаты
  • polyline — ломанная линия. points — перечисление координат точек
  • rect — прямоугольник. x,y, width, height, rx, ry — верхний левый угол, размеры, радиусы углов
  • polygone — многоугольник. Похож на polyline. points — координаты точек
  • circle — круг. cx, cy, r — координаты центра и радиус
  • ellipse. cx, cy, rx, ry — координаты центра и радиусы
  • text — текстовая надпись. Очень неудобная, потому что без переноса строк и с абсолютным позиционированием. x,y, font-family, font-size
  • tspan — может описывать слова внутри text-элемента. Например сдвигать или раскрашивать
  • tref — повторное использование text-элемента с указанным id
    Простой текст
    <tref xlink:href="#myText" x="50" y="50">
textPath — текст на path-кривой, связанный по id/>
<textPath xlink:href="#myPath" startOffset="50%">Водка Vinogradoff
image — растровое изображение
<image image-rendering="optimizeSpeed" xlink:href"background.jpg" width="100%" height="100%" preserveAspectRatio="xMidYMid slice" filter="url(#blurpane)"/>
Параметры и стили
Как и в html, одни линии мало кому нужны — их надо закрашивать, указывать цвета, и всё это делается параметрами
  • fill, fill-rule — заливка. Например «none»,blue, indigo.
  • stroke, stroke-linecap, stroke-linejoin, stroke-dasharray, stroke-dashoffset, stroke-width — граница, аналог border. Вместе stroke-width.
  • font-family, font-size, font-style, font-weight — шрифты для text-элементов
  • text-anchor
Для заливки используются тэги:
  • pattern
  • linearGradient
  • radialGradient
Эти параметры можно все объединить в один аналог CSS и записать в inline-стиле:
style="stroke-width:1; stroke:blue; fill:none"
Группы и кривые Безье
Элементы можно и нужно группировать друг в друга. Кроме того что tspan устанавливаетсявнутрь text-элемента, группирование происходи благодаря элементу.Кривые Безье это плавные переходные линии, задающиеся по точкам. В SVG для этого существует элемент path, у которого подобно ломанной линии указываются координаты. Рядом с координатами могут стоять буквы, обозначающие свойства линии. Большие буквы говорят об абсолютном позиционировании, маленькие об относительном
  • M — начало кривой (x,y)
  • Z — конец кривой (без координат)
  • L -прямая линия (x,y)
  • H — горизонтальная линия
  • V — вертикальная линия
  • Q — квадратичная кривая по одной точке
  • T — продолжение кривой с отражением предыдущей точки — упрощает рисование повторяющихся ритмов
  • С — собственно кривая Безье третьего порядка по двум точкам
  • S — упрощённая версия C
  • A — эллиптическая кривая (радиусы, поворот)

Трансформации и возможности

Объекты в SVG пожно искажать, крутить и перемещать при помощи фильтров, которые указываются в качестве параметров:
  • translate — перенос объекта
  • rotate -вращение
  • scale — масштабирование
  • scewX, scewY — искажение
  • matrix — смешанная трансформация
SVG поддерживает фильтры с эффектами освещения. А кроме статичных изображени есть возможность, анимации и интерактивности с пользователем. Например тетрис или нашумевший Microsoft Table и Silverlight реализован программно в SVG, причём при большом желании — заработало и видео (формата Ogg Theora=SVGT). Конечно последние возможности ещё не реализованы во всех браузерах, но первооткрыватели типа Opera имеются.


Тортовый график на SVG и PHP/DB

Несомненно Google API — очень удобная штука. Но не стоит забывать что всё-таки это внешний сервис, пусть и надёжный. Коммерческие разработки не любят рисковать, поэтому генерация графиков всё-таки должно быть локальным (если они не статические).Генерировать изображение я буду с помощью php, на основе полученных из
БД данных для отображения результатов опроса (poll). Поскольку GD-библиотека хоть и понимает размер SWF,
генерирует только бинарные файлы. Поэтому генерировать прийдётся XML:header("Content-Type: image/svg+xml"); Посмотрим к чему надо стремится (пока без крутой анимации)… Начнём с резинового расположения двух эллипсов? Сектора видимо идут в порядке убывания по часовой стрелке, что-бы уменьшить количество градиента на мелких участках. Цвет сектора видимо расчитывается пропорционально числу кусочков — тут то и возникает проблема. Как оказывается, сектор нельзя просто-так залить с двумя линиями и существующим эллипсом — фигура должна быть точно очерчена, поэтому надо рисовать всё по отдельности при помощи path, а ellipse нам не понадобится.
Тригонометрия цвета
Для вычисления в цикле координат path-элемента необходимо вспомнить немного математики. Поскольку окружность — частный случай эллипса то в формулах есть много схожего, что нам очень пригодится: x=cos(angle)*radius; y=sin(angle)*radius; //circle
x=cos(angle)*rx; y=sin(angle)*ry; //ellipse

Для эллипса же радиус просто заменяется на большую и малую полуось соответсвенно. Дальше создаём цикл, где вычисляем процентное распределение данных, градус длясектора с path. Вчисляем координаты для арки, для этого используем «сдвиг градуса» что-бы отрисовка всех секторов шла вплотную.RGB куб, можно по разному резать, делать проекции и вводить свои системы
координат типа CMYK и HSL. Разные оттенки выбранной оранжевой заливки получаются при разбиении отрезка между выбранной точкой-цветом и вершиной белого цвета (255,255,255). if ($intTotalValue) // если сумма значений голосования больше нуля то можно делить и рисовать
foreach((array) $Data as $key=>$recEntry){
$Data[$key]->percent=$recEntry->value/$intTotalValue;
$Data[$key]->color[0]=round($graph->fill[0]+($key/count($Data)*(255-$graph->fill[0])));
$Data[$key]->color[1]=round($graph->fill[1]+($key/count($Data)*(255-$graph->fill[1])));
$Data[$key]->color[2]=round($graph->fill[2]+($key/count($Data)*(255-$graph->fill[2])));

$Data[$key]->degree=360*$Data[$key]->percent;
$Data[$key]->start['x']=$graph->cx+round(cos(deg2rad($intDegreeShift)) * $graph->rx,3);
$Data[$key]->start['y']=$graph->cy+round(sin(deg2rad($intDegreeShift)) * $graph->ry,3);
$Data[$key]->end['x']=$graph->cx+round(cos(deg2rad($intDegreeShift+$Data[$key]->degree)) * $graph->rx,3);
$Data[$key]->end['y']=$graph->cy+round(sin(deg2rad($intDegreeShift+$Data[$key]->degree)) * $graph->ry,3);
$intDegreeShift+=$Data[$key]->degree; //increase degree shift

$boolIsLargeArc=$Data[$key]->degrees>180? 1 : 0;
echo "\n".'/>';
}
Если посмотреть на график внимательно, то видно что объёмность делается
при помощи градиента, который в SVG мы сначала зальём в качестве фона,
а поверх будем накладывать уже конкретные цвета сектора с прозрачностью:

/>
/>
/>

Основные проблемы

Но проблема остаётся и с закрашиванием пограничных секторов — закрашивать переднюю область поверх градиента надо только у тех областей, которые до половины торта идут. К этому этапу картинка выглядит так:graph_limit_problem_416
Абсолютный текст
Кроме того вопрос возникает как располагать текстовые описания секторов? Google попросту ведёт линии с середин секторов, даже если текст не умещается в одну строчку. В SVG позиционировать текст надо от верхнего левого угла — что уже проблема, поскольку ширины мы не знаем. Выхода два — отказаться от относительного позиционирования текста и сделать выноски цветом, либо использовать текст с фиксированной шириной (monospace, Courier) и на этой основе расчитывать длину в пикселях и положение на лету. Благо я наткнулся на параметр text-anchor:end, который странным образом развернул текст как надо.

Интерактивность и будущее

Благодаря интеграции с javascript'ом, можно соответсвенно в реальном времени при помощи AJAX'а обновлять изображение. В моём случае это необходимо когда пользователь голосует и надо обновить распределение голосов на графике.

Читайте также:

Оригинал статьи с иллюстрациями и пример использования
Total votes 20: ↑18 and ↓2+16
Comments2

Как я выиграл суд с EMS Почта России

Reading time10 min
Views204K
Как я выиграл суд с EMS.
Итак, как было обещано в вопросе habrahabr.ru/qa/19545, я публикую свой опыт по подаче иска к «EMS – Почта России», который завершился положительно для меня. Впрочем, обо всем по порядку.
Big Update — сегодня, 6.03.2013 получил деньги. Кафкианский процесс завершен. Ура!
Читать дальше →
Total votes 483: ↑464 and ↓19+445
Comments260

Логотип Google: праздничные метаморфозы real-time

Reading time1 min
Views1.5K
Никогда не задумывались, кто и как в Google по праздникам создает так называемые Doodles — тематические иллюстрации для его логотипа на главной странице? Теперь у вас есть уникальная возможность не только познакомиться с этим человеком, но и вживую понаблюдать за созданием его творений!

Итак, Dennis Hwang за работой:


Еще немного о конкурсе Google на лучший Doodle
Total votes 50: ↑44 and ↓6+38
Comments63

3 лекарства для Ослика

Reading time3 min
Views1.3K
У великого (по доле рынка) творения Microsoft — браузера Internet Explorer раньше 7 версии имеется множество недостатков, среди которых современных веб-дизайнеров и разработчиков наиболее напрягают:
  • плохая поддержка селекторов CSS2 (в частности, слабая поддержка псевдокласса :hover)
  • плохая поддержка PNG с градациями прозрачности.

Эти проблемы должны решиться, если все пользователи IE перейдут на седьмую версию. Для тех, кто не хочет ждать, я представляю три лучших лекарства от этих недомоганий браузера.
Читать дальше →
Total votes 41: ↑36 and ↓5+31
Comments94

Information

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