Как стать автором
Обновить
1
0
Леха Козаков @stand_up

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

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

Создаём Instagram фильтры с помощью PHP и ImageMagick

Время на прочтение5 мин
Количество просмотров20K
image

В этой статье я покажу как создать некоторые эффекты на фотографиях (как на Instagram) с помощью PHP и ImageMagick.
Читать дальше →
Всего голосов 65: ↑63 и ↓2+61
Комментарии19

Плагин для выделения последней строки

Время на прочтение1 мин
Количество просмотров3.2K
В моей текущей задаче нужно было расположить текст по ширине с выравниванием последней строки по центру. Решением могло быть CSS свойство text-align-last, но оно поддерживается только в Internet Explorer'е. Поиск подобных плагинов JQuery не дал результатов, поэтому был написан свой.

Готовый плагин я выложил сюда

Пример использования


$(selector).lastLine({
   'display':'block',
   'text-align':'center'
});

Как видно из примера, в качестве параметра передаётся CSS для последней строки.
Читать дальше →
Всего голосов 49: ↑32 и ↓17+15
Комментарии54

PHP-библиотека для работы с API Яндекс.Денег

Время на прочтение6 мин
Количество просмотров11K
Yandex.Money APIМне давно хотелось попробовать что-нибудь новенькое, и вот, когда на работе предложили написать примеры использования API Яндекс.Денег на разных языках, я с удовольствием принял это предложение-challenge. Так как чаще всего подобный функционал используют в приложениях на различных хостингах, то было принято волевое решение первым делом попробовать написать сие на PHP. Причем API до этого я даже не видел; более того, никакого опыта работы с PHP, кроме как лабораторной в ВУЗе, у меня не было. Дело обещало быть интересным.
Читать дальше →
Всего голосов 61: ↑50 и ↓11+39
Комментарии14

Responsibility Process

Время на прочтение3 мин
Количество просмотров8.5K
Совсем недавно в переписке с одним моим хорошим знакомым вновь возникла тема ответственности. В ходе обсуждения я решил обратиться к Christopher Avery's Responsibility Process — Процессу принятия ответственности от Кристофера Эйвери (позволю себе перевести это так).
К сожалению, русскоязычного материала на данную тему я в сети не нашел (по крайней мере, с ходу), потому решил, что будет полезно оформить это в виде поста.
Читать дальше →
Всего голосов 7: ↑6 и ↓1+5
Комментарии5

Битовые операции в PHP на примерах

Время на прочтение3 мин
Количество просмотров88K
Навеяно статьей об обработке критических ошибок в PHP. Обратил внимание, что несмотря на то, что коды ошибок в PHP специально заточены под битовые операции, тем не менее, что в примерах статьи, что в комментариях, для проверки кодов ошибок используются обычные операторы сравнения.

Например, встречались такие варианты:
if ($error['type'] == E_ERROR || $error['type'] == E_PARSE || $error['type'] == E_COMPILE_ERROR){…}
или
if(in_array($error['type'], array(E_ERROR, E_PARSE,  E_COMPILE_ERROR)) {…}

В связи с этим решил написать небольшую статью о битовых операциях с примерами их использования.
Читать дальше →
Всего голосов 242: ↑203 и ↓39+164
Комментарии162

Плагин на jQuery для вывода рейтинга в виде звезд

Время на прочтение5 мин
Количество просмотров53K
Все началось с того, что я решил изменить рейтинг для заметок на своем блоге.

Основной причиной смены рейтинга послужило то, что рейтинг выводился «целочисленными» звездами, ну максимум можно было вывести и половину звезды. Т. е. если рейтинг для статьи был 4.75, то надо было выводить либо 4.5 звезды либо 5, что меня не очень устраивало.

Поэтому было принято решение написать свой собственный плагин на jQuery для формирования рейтинга в виде звезд.

Основные требования к плагину:
  • Рейтинг должен был выводиться корректно, т. е. если у меня рейтинг был равен 4.78, то и количество закрашенных звезд должно быть соответствующим.
  • Возможность выбора эффекта при наведении курсора мыши на звезду. Это имеется ввиду то, какую оценку пользователь сможет выставлять. т. е. при наведение указателя мыши на звезды они должны были закрашиваться либо целыми звездами, либо по пол звезды, либо в абсолютных значениях следуя за указателем мыши
  • Возможность задания своих звезд
  • Возможность указать URL на который будет отправлен результат голосования
  • Возможность указать количество звезд выводимых в рейтинге
  • Автоматическое склонение результатов голосования. (Например: 1 голос, 2 голоса, 5 голосов)
  • Возможность задать свои существительные для результатов голосования
  • Возможность задавать минимальное значение рейтинга, ниже которого пользователь не сможет проголосовать
  • Возможность выполнить пользовательскую функцию, при клике на звезду


После того, как требования к плагину были разработаны, я приступил к программингу. В результате у меня получился довольно неплохой, как мне кажется, плагин на jQuery для рейтинга заметок в виде звезд, которым я с радостью поделюсь с Вами.
Читать дальше →
Всего голосов 85: ↑70 и ↓15+55
Комментарии63

PHP-библиотека для использования API Яндекс.Денег

Время на прочтение1 мин
Количество просмотров5.3K
Представляем вашему вниманию PHP-библиотеку для использования нашего API.

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

Плюсы и возможности:
  • OAuth-авторизация пользователя;
  • безопасность работы (поддерживается проверка цепочки сертификатов);
  • удобство работы (response'ы сервера представлены в виде объектов) и быстрый старт;
  • относительно безопасное и простое решение хранения токенов пользователей с использованием шифрования и без использования БД. Реализацию этого решения вы сможете легко переписать под свои хранилища.
Скачать библиотеку можно отсюда.

А здесь можно почитать рассказ разработчика нашей библиотеки о его впечатлениях и обнаруженных подводных камнях. И, если хотите, спросить его о чем-нибудь.
Всего голосов 30: ↑24 и ↓6+18
Комментарии3

Знакомимся с PayPal API

Время на прочтение13 мин
Количество просмотров87K
На данный момент, PayPal — это самая популярная платформа электронных платежей. Именно то, насколько легко можно открыть счет и начать получать на него средства, по сравнению с традиционными способами получения платежей, и является причиной #1 его запредельной популярности. Второй причиной, многие со мной согласятся, является мощный API, предоставляемый PayPal. В этом топике я по порядку разложу все способы и трюки, связанные с работой PayPal API, чтобы вы избежали проблем с его интеграцией.
Читать дальше →
Всего голосов 190: ↑182 и ↓8+174
Комментарии51

Флаги 254 стран одним спрайтом

Время на прочтение1 мин
Количество просмотров16K
Однажды, nickivanov нарисовал миниатюры для кучи разных флагов и выложил их в свободный доступ. А недавно, artpolikarpov собрал их в один спрайт и написал к нему удобный css, который позволяет легко отобразить любой флаг просто указанием нужного класса.

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

И был бы этот топик топиком-ссылкой, да по необъяснимым причинам не разрешает Хабр в топиках-ссылках указывать авторов, заслуживающих похвал. Так что вот они ссылки:
Описание: artpolikarpov.ru/projects/flags
Архив с флагами: artpolikarpov.ru/projects/flags/flags.zip
Всего голосов 215: ↑200 и ↓15+185
Комментарии39

jQuery плагин, для Ajax загрузки видео на YouTube

Время на прочтение6 мин
Количество просмотров12K
Недавно я написал небольшой плагин на jQuery и PHP. Функционал простой: посредством Ajax задается описание и загружается видео на YouTube, плагин вернет статус загрузки, и если она прошла успешно — id видео. Плагин может применяться на любом сайте, и легко вставляется в любую CMS.

Все началось с того, что при разработке CMS для сайта местного телеканала я столкнулся с необходимостью сделать загрузку видеороликов на YouTube. Так как на сайт часто будут добавлять видео, то каждый раз логиниться на YouTube, заливать туда ролик, получать на него ссылку, лезть в CMS и вставлять её туда — очень напряжно. Причем, желательно делать это через Ajax, чтоб можно было легко включить плагин в любой проект.

Читать дальше →
Всего голосов 51: ↑48 и ↓3+45
Комментарии15

Objective-C для C# разработчиков

Время на прочтение5 мин
Количество просмотров20K
«Если единственный язык, который вы знаете — это Java или C#, я не думаю, что вы профессиональный программист — вы как молодой плотник, который пока работал только с одним видом дерева.»
Дядя Боб


Несколько месяцев назад я начал разрабатывать приложения для iPhone. Переключение с платформы .NET и C# на Cocoa и Objective-C проходило не без приключений, но было достаточно интересным и познавательным. Скоро мне предстоит помогать осваивать новую платформу и другим разработчикам нашей компании. Поэтому решил написать серию вводных заметок, которые, надеюсь, сделают этот переход более плавным.

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

Как перестать думать о часовых поясах и начать жить

Время на прочтение7 мин
Количество просмотров18K
В вашей системе время играет важную роль? Ваши пользователи/компоненты распределены по территории всего земного шара, или хотя бы нашей необъятной родины? Значит, вам нужны часовые пояса. Что ж, это просто. Самое сложное, что вам придется сделать — не запутаться. Об этом мы с вами и поговорим. Для начала вам нужно научиться правильно думать. Думая правильно, все остальное будет для вас либо самоочевидным, либо достаточно простым.

Начнем с часов. Все мы привыкли определять время, глядя на часы на стене. При работе с часовыми поясами такое время называется Wall clock time. В принципе, ничего плохого в нем нет, только в разных местах земного шара в один и тот же момент времени часы показывают разное время. Если задаться целью, можно придумать алгоритм перевода wall clock time одного часового пояса в wall clock time другого. Обычно надо прибавить/отнять разницу в часах между часовыми поясами, кроме (внимание) моментов перехода на летнее/зимнее время. Вот когда начинается переход, вычисления становятся по-настоящему сложными.

Нам же нужно что-то простое и пуленепробиваемое, как… целое число.
Читать дальше →
Всего голосов 74: ↑63 и ↓11+52
Комментарии70

Creating Scalable Vector Graphs with PHP

Время на прочтение15 мин
Количество просмотров10K
Как и большинство разработчиков PHP я знаком с расширением GD, которое позволяет достаточно просто создавать изображения в форматах JPEG, GIF и PNG. Расширение очень удобно, когда надо сделать сложные изображения из динамически получаемых данных в режиме он-лайн.
Обратной медалью GD является то, что изображения создаются в растровом формате. Изменение размеров изображения ухудшают его качество.
Читать дальше
Всего голосов 66: ↑58 и ↓8+50
Комментарии21

jQuery плагин для получения данных формы + ajax аплоадер файлов

Время на прочтение30 мин
Количество просмотров19K
imageДоброго времени суток, уважаемое Хабросообщество! Не пытаясь скрыть легкое волнение, публикую свой первый пост, темой которого стал мой скромный jQuery-велосипед для быстрого и безболезненного сбора данных, введенных пользователем на странице (сразу небольшая оговорка для тех, кто закричит — «ату его! Зачем еще один подобный плагин?», отвечу: во-первых — а быть может именно это кто-то из хаброчитателей и искал, во-вторых — для саморазвития, в-третьх: для собственного удобства и безболезненного использования в своих програмных продуктах).

Итак, помимо, собственно моего небольшого плагина, нам понадобится сам jQuery последней версии, а так же небольшой плагин к нему, реализующий преобразование объектов\массивов в json-строку, для того, чтобы полученные данные можно было быстренько передавать на сервер.
updated

updated 2 — добавлена мультизагрузка!
Смотрим далее
Всего голосов 71: ↑66 и ↓5+61
Комментарии98

Что нового в MySQL 5.1

Время на прочтение3 мин
Количество просмотров4.2K
Осталось совсем немного времени до выхода MySQL 5.1. В статье будут рассмотрены изменения и новые возможности этой версии.
Читать дальше →
Всего голосов 84: ↑81 и ↓3+78
Комментарии50

Модель CMMI

Время на прочтение8 мин
Количество просмотров103K
Всем здравствуйте! Наконец-то я на Хабре. Постараюсь незамедлительно начать приносить пользу если не всему сообществу, то хотя бы некоторой его части:)

Я был немало удивлён, обнаружив, что на Хабре практически нет информации о модели CMMI, если не считать пары упоминаний здесь и здесь.
На западе уже давно крупные заказы по разработке ПО доверяются только компаниям, прошедшим сертификацию на соответствие какому-либо международному стандарту, зачастую им становится модель CMMI. Хотя сами авторы этой модели неоднократно повторяют, что это не стандарт, а всего лишь сборник рекомендаций по улучшению процессов внутри организации.

Что такое CMMI?


Википедия даёт следующее определение:
Capability Maturity Model Integration (CMMI) – Комплексная модель производительности и зрелости – набор моделей (методологий) совершенствования процессов в организациях разных размеров и видов деятельности. CMMI содержит набор рекомендаций в виде практик, реализация которых, по мнению разработчиков модели, позволяет реализовать цели, необходимые для полной реализации определенных областей деятельности.

Читать дальше →
Всего голосов 40: ↑35 и ↓5+30
Комментарии63

jQuery.keyboard v0.1.0

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

У меня есть на примете как минимум два проекта, в которых понадобится активное управление с помощью клавиатуры. Поэтому, я сел и написал удобный и красивый плагин для jQuery, который выкладываю во всеобщий доступ под свободной лицензией LGPL.
Читать дальше →
Всего голосов 141: ↑136 и ↓5+131
Комментарии82

Coffee'n'Code в Харькове

Время на прочтение1 мин
Количество просмотров485
Пример киевлян оказался заразительным — встречайте coffee'n'code в Харькове.

Встреча пройдет 19 сентября. Время и место уточняются.

Если вы хотите выступить с докладом — пишите мне, в комментарии или в гугл группу.

Если хотите просто прийти — вступайте в группу, чтобы быть в курсе всех событий.
UPD: Примерное время начала — 14-15:00. Место уточняется.
Читать дальше →
Всего голосов 34: ↑30 и ↓4+26
Комментарии21

Основы масштабирования

Время на прочтение10 мин
Количество просмотров63K
Прочитав в этом блоге о балансировке на стороне клиента, решил опубликовать свою статью, в которой описаны основные принципы масштабирования для web-проектов. Надеюсь, хабралюдям будет интересно почитать.

Основы масштабирования



Масштабируемость — способность устройства увеличивать свои
возможности
путем наращивания числа функциональных блоков,
выполняющих одни и
те же задачи.
Глоссарий.ru

Обычно о масштабировании начинают думать тогда, когда один
сервер не справляется с возложенной на него работой. С чем именно он не
справляется? Работа любого web-сервера по большому счету сводится к основному
занятию компьютеров — обработке данных. Ответ на HTTP (или любой другой) запрос
подразумевает проведение некоторых операций над некими данными. Соответственно,
у нас есть две основные сущности — это данные (характеризуемые своим объемом) и
вычисления (характеризуемые сложностью). Сервер может не справляться со своей
работой по причине большого объема данных (они могут физически не помещаться на
сервере), либо по причине большой вычислительной нагрузки. Речь здесь идет,
конечно, о суммарной нагрузке — сложность обработки одного запроса может быть
невелика, но большое их количество может «завалить» сервер.

Читать дальше →
Всего голосов 68: ↑67 и ↓1+66
Комментарии49

Full Hierarchy — иерархические структуры в базах данных

Время на прочтение5 мин
Количество просмотров16K
Здравствуйте. В этой статье я хотел бы написать про один очень интересный способ хранения иерархических структур в базах данных, не относящийся при этом к общепринятым и общеизвестным трём (Adjacency List, Nested Set, Materialized Path). Я не встречал в интернете упоминания о нём, о чём очень удивлен, ведь, по моему мнению, — это лучший и единственный способ хранить иерархические структуры. При разработке console-like форума я воспользовался именно этим способом, о чём ни на грамм не жалею. Это авторская статья и ни одно предложение не было вставлено метотодом копипаста.

Под катом способ, который я назвал Full Hierarchy
Всего голосов 74: ↑65 и ↓9+56
Комментарии108

Информация

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