Search
Write a publication
Pull to refresh
13
0
Игорь Свист @silverwind

User

Send message

Microsoft передала opensource код в Zend Framework

Reading time1 min
Views745
Вышедший недавно Zend Framework 1.10 содержит компонент Zend_Service_WindowsAzure, который передан сообществу от Microsoft для полной поддержки облачной платформы Windows Azure из PHP-приложений написанных на Zend Framework.

Zend_Service_WindowsAzure позволяет использовать все сервисы Windows Azure: Blob Storage, Table Storage и Queue Service.

«Нативная поддержка Windows Azure в Zend Framework 1.10 позволяет использовать всю мощь Windows Azure крепкому сообществу Zend Framework» — заявил Зив Сураски, один из основателей Zend.

Кроме поддержки в Zend Framework, Windows Azure доступна для любого PHP-разработчика через выпущенный довольно давно Windows Azure SDK for PHP, который поставляется в комплекте с набором Windows Azure tools for Eclipse или в более простом варианте Simple Cloud API.

via port25

Hivext Platform — облачная платформа для разработки Интернет приложений. Бета тестирование

Reading time2 min
Views920
image
Полтора года назад на хабре познакомились два увлеченных своим делом, разработчика, которые обсуждали статьи друг друга. Пообщавшись более плотно, осознали что им не хватает продукта, который позволял бы проще, гибче и быстрее разрабатывать веб-приложения. Так зародилась идея разработки платформы для разработчиков. Прошло чуть больше года проектирования и разработки.

На данный момент мы имеем что показать и дать вам пощупать наш продукт.
Читать дальше →

Интернет-магазин внутри баннера

Reading time4 min
Views1.1K
Все мы давно привыкли к рекламным баннерам на любимых нами сайтах. Некоторые из них скромно помигивают в углу страницы, другие же навязчиво предлагают нажать на них, внезапно появляясь в центре экрана и надоедая (да, именно надоедая) анимацией. Прошло время, когда красивые эффекты могли ввести пользователя в ступор и заставить кликнуть по рекламному объявлению, эффективность сисек и прочих сомнительных маркетинговых ходов тоже резко снизилась, ведь пользователи эволюционировали. Сейчас они кликают на баннере только если им действительно интересно то, что он продаёт.

В распоряжении веб-разработчиков находится масса технологий, с помощью которых были сделаны gmail, facebook и множество других замечательных сервисов, но почему до сих пор баннеры — это всего лишь электронная вывеска-замануха, и не более? Мы решили сделать баннер, который не просто завлекает на сайт, но сам продаёт.
Читать дальше →

Url to PDF. Легко и без проблем

Reading time1 min
Views6.2K
Всем здравствовать.
Давеча был замечен мною интересный пост про замечательный сервис с говорящим адресом: pdfmyurl.com
И родилась мысль написать об альтернативном, более интересном способе (особенно интересном для программистов, энтузиастов и просто любящих консоль людей). Точнее, о проекте, позволяющим делать то же самое, не используя сторонний сервис.
Что же за проект?

Румикс.ру. Через полгода после запуска

Reading time3 min
Views1.3K
Полгода назад я публиковал здесь статью о своём стартапеroomix.ru, который позволяет расставлять реальную мебель по виртуальной комнате, прямо на сайте.

И в связи с участившимся в последнее время мнением «ох эти стартапы-однодневки, запустятся, запостятся на хабр, а потом загибаются» решил написать, что стало с нами сейчас и как мы заработали свой первый миллион.

image

Читать дальше →

Колоночная верстка

Reading time5 min
Views16K
Существует много способов по верстке колоночных макетов. Уже не один нос разбит в течении холиваров, разожженных по поводу использования тех или иных методов. Казалось бы, что все должно быть предельно ясно и понятно, но все-равно возникает много трудностей. Я хочу и свою лепту вложить во всеобщее благое дело, и потому потратил относительно немного времени на эксперименты, которые привели меня к созданию еще одного метода, в котором есть следующие плюсы и минусы:

Плюсы
  • Есть прижимающийся к полу футер
  • Колонки меню растягиваются по 100% высоте
  • Колонок может быть сколько душе угодно
  • Колонки могут быть как лево- так и правосторонними, а также совмещенными, например 2 справа и 1 слева
  • Ширина как резиновая, так и фиксированная
  • Критический минимум хаков
  • Не используется Javascript
  • Не используются бекграундовые изображения для создания эффекта колонки
  • Никаких таблиц
  • Одинаковый результат в ie5.5, ie6, ie7, ie8, ff3.5, o10, chrome4 (Если у вас не работает в каком-то браузере — отпишитесь, пожалуйста, в комментах. Исправим и приведем к универсальному виду)

Минусы
  • Есть несколько «лишних» блоков. (Я бы и сам рад от них избавиться)
  • Есть несколько абсолютно-позиционируемых блоков
Читать дальше →

phpDaemon — фреймворк асинхронных приложений

Reading time6 min
Views45K
Сегодня речь пойдет о phpDaemon — асинхронном модульном демоне-фреймворке, который берёт на себя обработку I/O (libevent) и другие низкоуровневые задачи, присущие демонам. С его помощью легко писать правильные сетевые приложения с блэкджеком и шлюхами.
Из коробки идут сервера FastCGI, HTTP, CGI, FlashPolicy, Telnet, WebSocket (!) — да-да тот самый волшебный пендаль новый протокол от Google. И клиенты mysql, memcached, mongodb… И многое другое, полный список под катом. Работать с сетью действительно просто. Программист средней руки может написать, к примеру, IRC-бота за считанные часы.
В качестве наглядного примера я реализовал вот этот чат на phpDaemon + WebSocket + MongoDB + jQuery. Он наглядно демонстрирует преимущества этой технологии: доставка сообщений мгновенна, накладные расходы при обмене данными минимальны, высока производительность, приложение масштабируется горизонтально. Исходники этого чата (в данный момент 17 кб). Прошу заметить, чат тестировался и работает в Chrome, FF, IE6+, Iron, Safari.
Читать дальше →

База IP мобильных операторов

Reading time1 min
Views28K

Немного о том, кому и зачем?


Тем, кто работает в сфере мобильного интернета, часто бывает необходима база диапазонов IP мобильных операторов.
Так уж сложилось, что в бесплатном доступе эту информацию найти не так легко.
Тем, кому достаточно разбиения по странам, как вариант, можно использовать базу maxmind. Там есть и бесплатный вариант. Но именно мобильные сети там охвачены плохо.

В общем к сути.


Сайт проконтент собирает под своим крылом базу мобильных айпи и выкладывает вот здесь: www.procontent.ru/dev/gateway-ips.html
Но попробуйте кто то применить ее для дела и тут сразу же все неудобства всплывают. Нету четкого разбиения по странам, а страна и не для всех диапазонов указана, нету экспорта хоть в какой нибудь пригодный для нормальной обработки формат.
Так вот был написан парсер, который «причешет» этот неудобный набор и даст в правильном виде.
Брать можно тут:
wapobzor.ru/3dparty/procontent_ips.php — csv версия
wapobzor.ru/3dparty/procontent_ips.php?long — csv, но ip в числовом виде
wapobzor.ru/3dparty/procontent_ips.php?php_array — в виде массива, что бы скопировать в скрипт сразу.
wapobzor.ru/3dparty/procontent_ips.php?php_array&long — аналогично
www.logofon.ru/xml/ips.xml — еще один вариант предложенный Nc_Soft

Если кому то пригодится — буду рад.
Спасибо за внимание =)

UPD: перенес в тематический блог, спасибо за подкинутую карму :-)
UPD2: добавил еще два варианта вывода.
UPD3: еще вариант базы с другого источника.

nginx + apache. Кеширование

Reading time4 min
Views20K
Привет, %username%
Тут я хочу рассказать о том, как я настраивал кеширование на одном сервере, точнее VDS. Характеристики сервера: 2000MHz, 2GB RAM, 80Gb HDD, технология виртуализации — OpenVZ.
Было решено использовать Nginx версии 0.7.64. На сервере находилось около 200 сайтов. И несколько высоко нагруженных проектов. Вот эти самые проекты и давали ощутимые тормоза и нагрузку на сервер. Мы будем рассматривать DLE в этом примере.
Читать дальше →

Highcharts: Красивые, динамические чарты за 5 минут!

Reading time2 min
Views67K
image
Highcharts — библиотека для создания чартов написанная на JavaScript, позволяет легко добавлять интерактивные, анимированные графики на сайт или в веб-приложение. На данный момент чарты поддерживают большое количество диаграмм линейных, круговых, колоночных рассеивающих и многих других типов.

Чарты работают со всеми популярными браузерами, включая Safari на iPhone.
Минимальная версия для IE составляет 6+. Также браузеры поддерживающие Canvas элемент, и в некоторых случаях SVG для графического рендеринга.
Читать дальше →

Мониторинг домашнего роутера

Reading time3 min
Views244K


Знакома ли вам ситуация «инет никакой»?

Обычно попытка исправления подразумевает:
— обход членов семьи (ну да, я качаю новый сезон «Доктор Хаус». А кому это может мешать?)
— перезагрузить роутер (ну завис я, завис — сутками всякую дрянь качаете..)
— не качаются ли обновления (приятная новость — новый Acrobat Reader...)
— нет ли у нас блошек (нашему ботнету сегодня дали большое домашнее задание)
— звонок провайдеру (наш канал работает как часы с самого основания компании)
— эм. может еще раз роутер?

все может стать проще

Вышел в свет черновик стандарта WebGL

Reading time1 min
Views1.4K
[WebGL]Черновик стандарта WebGL описывает свободный кросс-платформенный API, предназначенный для подключения OpenGL ES 2.0 к холсту (<canvas>) в качестве контекста, возвращаемого стандартной функцией canvas.getContext().

Публичная версия черновика была выложена 10 декабря (в четверг) на CVS сайта Khronos Рабочей группою WebGL.

Арун Ранганатан (Arun Ranganathan) выложил во блоге hacks.mozilla.org достаточно подробный вводный рассказ о том, как включить эту функцию в еженощных тестовых сборках браузера Firefox, и как обеспечить её работу на тех видюхах, которые не поддерживают OpenGL ES 2.0 сами собою. (Читатели в тамошних комментариях проявляют неимоверную радость и признаются в том, что ждут не дождутся новой версии Файерфокса.)

[WebGL demo screenshots]Владимир Вукичевич (Vladimir Vukićević) также посвятил краткую блогозапись этому событию.

Всё это является очередным шагом к появлению в Паутине такой трёхмерности, которая не потребует никаких плагинов, однако станет невозбранно поддерживать OpenGL (и, в частности, язык шейдеров GLSL ES). И эта трёхмерность будет кросс-платформенною. Браузеры, которые приуготавливаются понимать WebGL, поимённо перечислены на заглавной странице вики WebGL: это Apple WebKit, Google Chrome, Mozilla Firefox и Opera.

Практическим примером использования WebGL является джаваскриптовая библиотека X3DOM, поддерживающая использование сцен X3D внутри обычных вебостраниц.

«За бугром» все больше интересуются техникой Data:URI CSS Sprites

Reading time2 min
Views2K

Многим уже известна техника оптимизации сайтов на основе data:uri технологии. Последнее время все больше и больше к относительно новой технологии проявляется интерес мирового сообщества разработчиков. В интернете можно найти уже достаточно много статей на эту тему. Радует, что одним из первых, кто задумался серьезно о разработке кросс-браузерного data:uri это «наш человек» — Евгений Степанищев aka bolk. Ну так вот, речь не об этом, это так для истории…

Наткнулся мне «забугорный» блог www.ravelrumba.com, автор которого последнее время активно занимается исследованием эффективности data:uri css sprites. О чем свидетельствует ряд интересных статей о его работе.
CSS Images and Data URIs
Data URIs for CSS Images: More Tests, More Questions

Я решил поддержать его и провел анализ скорости загрузки разработанных им тестовых страниц.
Результаты в картинках

Обзор NoSQL систем

Reading time5 min
Views56K
Беспрецедентные объемы данных заставляют разработчиков и бизнес приглядываться к альтернативам реляционных баз данных, используемым вот уже более тридцати лет. В совокупности все эти технологии известны как «NoSQL базы данных».


Основной проблемой является то, что реляционные базы данных не могут справляться с нагрузками актуальными в наше время (мы говорим о high-load проектах). Есть три конкретные проблемных области:
  • горизонтальное масштабирование при больших объемах данных, например как в случае Digg (3 терабайта для зеленых значков, отображаемых, если ваш друг сделал dugg на статье) или Facebook (50 терабайт для поиска по входящим сообщениям) или eBay (2 петабайта в целом)
  • производительность каждого отдельного сервера
  • не гибкий дизайн логической структуры.
Читать дальше →

Пишем наше первое приложение на python for s60

Reading time9 min
Views4K
imageВ прошлом топике, я постарался разогреть ваш аппетит, показав на что способен python for s60. Сейчас же я вам покажу, насколько легко писать приложения. Мы пройдем весь путь, начиная от выбора и установки необходимого софта, до упаковки программы в sis пакет.

Оговорюсь сразу: в этой статье мы будем разбирать пример, работающий на symbian 9.4 (смартфоны с тачскрином), хотя вы без особого труда сможете переделать пример и под более ранние версии symbian. Кроме этого, рассказ будет вестись с учетом работы на windows. Пользователи других операционных систем, без проблем смогут подобрать необходимый софт под свою OS.

Кстати, у программы, которые мы разработаем в этом топике, есть аккаунт в twitter :)
Интересно? Читаем дальше

ХабраКарма — пишем приложение на Python for s60

Reading time12 min
Views3.4K
imageПосле того, как мы разогрели аппетит к Python for s60 и начали учиться писать приложения, хочу предложить продолжить постигать программирование для symbain на замечательном языке программирования python.

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

Тем, кому больше важен результат, нежели процесс, милости просим в конец статьи, где вас ожидает готовое приложения HabraKarma 1.0 !!!
Поехали...

Разбираемся с проблемой мертвого кода и инклудами

Reading time5 min
Views1.9K
В этой статье мы поговорим о некоторых иногда упускаемых разработчиками аспектах, влияющих на общую производительность веб приложения. В частности рассмотрим как влияет на производительность множественные подключения внешних файлов, наличие «мертвого» кода, акселерация путем кешеров опкода и FastCGI для PHP.
Читать дальше →

Текст любой ценой: PPT. Дубль второй

Reading time1 min
Views1.4K
Недавно я анонсировал свой вариант чтения презентаций PowerPoint с помощью чистого PHP. Тогда я с сожалением отметил, что класс сырой и нуждается в доработке. Долго ли, коротко ли, но ошибки были найдены — теперь файлы читаются заметно лучше, без всякой грязи. Надеюсь, вам пригодятся мои наработки.
Читать дальше →

Организация on-line платежей на сайте. Для тех, кто никогда этим не занимался, но боится, что придётся. Часть 2: архитектура

Reading time13 min
Views7.2K
Вслед за первой частью, призванной в первую очередь показать, что «не так страшен чёрт, как его малюют»

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

Rediska — удобный PHP клиент для key-value базы Redis

Reading time1 min
Views13K
RediskaRedis — это очень быстрая key-value база данных. Может использоваться как memcached, но отличие от последней в том, что Redis сохраняет свои данные на диск, то есть может быть использован для хранения данных (что мы успешно и делаем). Основные отличии от других собратьев это возможность хранить более сложные структуры данных — списки и «сеты» и атомарные операции с ними.
Так как на хабре уже есть обзор Redis, не вижу смысла продолжать. Перейду к самой «Редиске».
Оосновные возможности...

Information

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