Доброго времени суток уважаемые читатели. Хочу поделиться с вами одной замечательной находкой на GitHub — SVG.js — удобная манипуляция и анимация SVG. Хочется сказать о трех вещах, которые сосредоточили мое внимание на этой библиотеке. Самое простое и важное это то, что с появлением retina дисплеев SVG становиться популярнее, более нужным чем раньше. SVG.min.js весит 34кб и 9кб в Gzip, что в разы меньше Raphaël и что можно пожертвовать для дизайна и эффектов. Минифицированный SVG.filter.js размером в 3кб является прекрасным кроссбраузерным аналогом для свойства webkit-filter.
Рубрика «Веб-разработка» - 182
SVG.js — достойный конкурент Raphaël
2013-09-25 в 12:24, admin, рубрики: javascript, svg, Веб-разработка, метки: javascript, svgКак находить и устранять утечки памяти на примере Яндекс.Почты
2013-09-25 в 12:20, admin, рубрики: javascript, Блог компании Яндекс, Веб-разработка, разработка сайтов, яндекс, Яндекс.Почта, метки: javascript, разработка сайтов, яндекс, Яндекс.ПочтаНа первый поверхностный взгляд, слова JavaScript и «утечка памяти» рядом стоять не могут. Настоящих утечек памяти в JS, конечно, не может быть, потому что процесс сборки мусора происходит автоматически и не может контролироваться из нашего кода. Выделить память под объект и забыть освободить невозможно. Но могут быть ситуации, связанные с ошибками в логике работы приложения, которые приводят к утечкам памяти другого рода. Например, забиндили обработчик, в котором что-то делаем с методами общего объекта и забыли его анбиндить. Или же посылаем письмо с большим телом и не очищаем тело даже после отправки.
Мы в Яндекс.Почте, сложном и массовом проекте, накопили заметный опыт в поиске и устранении таких утечек, и хотим им поделиться.
Читать полностью »
Интеграция веб-сервисов в популярные cms
2013-09-25 в 11:08, admin, рубрики: cms разработка, php, Блог компании Cackle, Веб-разработка, метки: cms разработка, PHPВ этой статье мы дадим рекомендации как за короткий срок освоить cms и написать для неё расширение, модуль или плагин, а также расскажем о результатах и нашем опыте интеграции сервиса Cackle в эти системы. Cтатья может стать руководством для тех, кто собирается делать интеграции сервисов с cms системами или просто создать модуль.
Перед тем как решить с какой cms делать интеграцию стоит собрать статистику по запросам на интеграцию своих пользователей, а также посмотреть на общую статистику по cms на сайтах зоны .RU (http://statonline.ru/metrics/webapp_cms?tld=ru) из которой видно, какие cms имеют самую большую популярность.
Исходя из этой статистики можно полагать, что эффект от встраивания своего модуля в эти cms статистически будет пропорционален их популярности. Так ли это для каждой cms мы узнаем дальше.
Интеграция позволяет удобным образом встраивать сервисы в cms и максимизировать выгоду от его использования. Идеальным решением является установка плагина в несколько кликов. Приемлемым решением может быть мод — инструкция по допиливанию cms, при котором изменяются скрипты cms. Для нашего проекта любая интеграция комментариев Cackle для cms обычно включает следующие пункты:
— Cинхронизация комментариев с сервиса Cackle в локальную БД каждые 5 минут
— Отображение html для SEO
— Экспорт существующих на сайте комментариев в Cackle
— Возможность ресинхронизации(повторное копирование комментариев в локальную БД)
— SSO (авторизация своих пользователей)
— Счётчик комментариев на главной странице
— Виджет последних комментариев
Все эти требования к модулю включают реализацию таймера, получение комментариев запросом через API, сохранение в БД, отображение js виджета в шаблонах cms на определенных страницах и админку для ввода ключей API, и других настроек.
Мы сделали интеграции нашего сервиса комментариев Cackle в следующие cms системы:
Wordpress, Drupal, DLE, InstantCms, Joomla, Bitrix.
Теперь хронологическом порядке опишем наш опыт по интеграции для каждой cms.
Читать полностью »
Биллинг в крохотном проекте. 10 строк HTML кода
2013-09-25 в 10:21, admin, рубрики: paypal, биллинг, Веб-разработка, платежные системы, метки: paypal, биллингТолько что прочитал про биллинги в больших проектах и хочу поделиться опытом биллинга для крохотных проектов.
Основа — PayPal. Он довольно широко распространён + если нет у клиента учетной записи в PayPal, то можно обычной кредиткой оплатить. Поиск по хабру выявил уже один мануал, но он реально страшен. Мы пойдем простым путем!Читать полностью »
Биллинг в большом проекте
2013-09-25 в 7:55, admin, рубрики: badoo, sms-биллинг, баду, биллинг, Блог компании Badoo, Веб-разработка, платежные системы, платежный шлюз, метки: badoo, sms-биллинг, sms-платежи, баду, биллинг, платежные системы, платежный шлюзСуществуют разные способы «монетизировать» проект. Но у них есть одна общая составляющая ― то, как деньги переходят из кошелька пользователя на счет организации. Сегодня мы расскажем о том, как организован прием платежей в Badoo и что можно встретить на рынке платежных шлюзов. Сразу предупреждаем, что в статье вы не найдете конкретных цифр по обороту средств компании, но все остальное будет не менее интересно.
Что такое «биллинг»
Для нас биллинг ― это всё, что связано с получением денег от пользователей: конфигурация цен, страница приема платежей, непосредственно прием и обработка платежей, оказание оплаченных услуг, различные промоакции и, конечно же, мониторинг всего вышеописанного.
Читать полностью »
Как работает PHPixie — Жизнь одного запроса, контейнер и парадигма
2013-09-24 в 22:26, admin, рубрики: framework, php, phpixie, Веб-разработка, Программирование, метки: framework, PHP, phpixie, ооп
Я уже много раз писал о фреймворке PHPixie и программировании на нем. В этот раз мы заглянем внутрь и посмотрим жизненный цикл приложения, к счастью простота и линейность кода позволяют сделать это с относительной легкостью.
Как и например Symfony, PHPixie состоит из двух частей: библиотеки компонентов и базового проекта, правда в случае PHPixie базовый проект более тонкий и состоит всего из нескольких файлов. Он здесь исполняет роль примера и поэтому изменение его под себя не только приветствуется но в некоторых случаях даже необходимо. Именно для этого важно понимать что и как происходит в системе. Используя свои несколько ограниченные умения в области рисования я подготовил диаграмму обработки запроса
Читать полностью »
Реализация возможности скачивания директорий пользователями сайта
2013-09-24 в 9:25, admin, рубрики: cgi, fcgiwrap, nginx, Веб-разработка, метки: cgi, fcgiwrap, nginx Есть небольшой закрытый сайт, на котором выкладывается музыка альбомами и пользователи сайта имеют возможность эти альбомы слушать прямиком из браузера. На сервере альбомы хранятся в виде директорий, внутри которых хранятся сами музыкальные композиции, которые по требованию плеера отдаются nginx-ом.
Все было хорошо, пока пользователи не захотели скачивать понравившиеся альбомы целиком на свои компьютеры.
Под катом раскажу как мы реализовали это.
Читать полностью »
Представляем Rollercoaster.io
2013-09-24 в 8:19, admin, рубрики: coast, opera, opera software, Блог компании Opera Software, Веб-разработка, метки: coast, opera, opera softwareOpera выпустила браузер Coast уже две недели назад (см. топик на Хабре). За это время мы прошлись по вебу в новом браузере на наших Айпадах и обратили внимание, что всё ещё очень мало сайтов подготовлены для планшетных устройств. Конечно, с помощью Coast можно смотреть любые сайты, даже совсем не готовые для мобильного веба — но всегда можно сделать лучше. Поэтому мы решили сделать такое место, где мы покажем самые удачные, интересные и готовые для планшетников сайты, которые мы можем рекомендовать в качестве примера. А вот и результат, встречайте: Rollercoaster.io.Читать полностью »
Для всех, кому прохладного дождя за окном в эти дни мало, Marek Brodziak сделал забавное демо на js + canvas (демо #1, демо #2 — и сразу предупреждаю, что заработать может не во всех браузерах), которое имитирует капли дождя на стекле. Своей целью разработчик ставил добиться лучшей плавности анимации капель.
Для достижения наилучшего эффекта погружения смотреть демо рекомендуется предварительно открыв в соседней вкладке raining.fm.
Читать полностью »
Загрузка данных в списки Sharepoint
2013-09-23 в 11:57, admin, рубрики: sharepoint, Веб-разработка, Программирование, метки: sharepointПри разработке SharePoint-решений часто стоит задача, помимо автоматического разворачивания структуры сайта (поля, типы контента, списки), также и наполнять его базовым контентом. Это могут быть, в основном, списки со справочной информацией. Но, помимо этого, может возникунть потребность наполнить их какими-то тестовыми данными, чтобы провести тестирование решения, в том числе и нагрузочного.
Есть способ наполнить списки данными, указывая их в XML файле к ListInstance. Но такой подход менее удобен, чем рассматриваемый в статье. ListDefinitions не всегда практично использовать для создания списков, кроме того может возникнуть потребность наполнить списки, которые уже существуют на сайте, а не разворачиваются из решения.
Итак, идея заключается в следующей логике:
Читать полностью »