Pull to refresh
9
0
Борис @xdevel

User

Send message

Smarty против XSLT

Reading time5 min
Views6.3K
Очень распространено заблуждение о том, что xslt — это сплошные тормоза, а smarty — наше всё. Отставим в сторону лаконичность синтаксиса смарти и удобство поддержки xslt, а устремим наш пристальный взор именно на скорость их работы.

Рисовать мы будем нечто чуть более сложное чем «привет мир» — дерево. Это не даст нам использовать копипасту и заставит повторно использовать код для вывода узлов. Количество их пусть будет небольшим — 100 штук.

Поехали!
Total votes 94: ↑50 and ↓44+6
Comments323

Поддержка MySQL в Node.js: node-mysql-libmysqlclient

Reading time4 min
Views16K
Я довольно долго откладывал этот анонс, однако сейчас настало его время.

Встречайте: node-mysql-libmysqlclient v0.0.7, коннектор к MySQL для Node.js, поддерживающий синхронное и асинхронное выполнение запросов к БД и имеющий API, близкое к API аналогичных коннекторов для PHP/Perl/Ruby etc.

Читать об истории создания и возможностях последней версии коннектора.
Total votes 44: ↑41 and ↓3+38
Comments36

Наш опыт участия в 10K Apart или как ужать 40 Кбайт кода в 10

Reading time6 min
Views8.7K
Не так давно на Хабре уже писали о контесте 10К Apart — соревновании на лучшее веб-приложение общим объемом до 10К, созданное с использованием только клиентских технологий: (HTML, CSS, Javascript, SVG и т.д).

image

Я хочу представить вашему внимаю нашу работу для этого контеста, которую мы с private_face делали по вечерам в течение двух недель: адвенчуру в стиле dungeon-crawler под названием «Fontanero» (исп. водопроводчик).
Читать дальше →
Total votes 266: ↑264 and ↓2+262
Comments123

Создание игры на Javascript Canvas

Reading time13 min
Views70K

Здравствуйте! Я предлагаю вам со мной создать небольшую казуальную игру на нескольких человек за одним компьютером на Javascript Canvas.
В статье я пошагово разобрала процесс создания такой игры при помощи MooTools и LibCanvas, останавливаясь на каждом мелком действии, объясняя причины и логику добавления нового и рефакторинга существующего кода.
Читать дальше →
Total votes 122: ↑111 and ↓11+100
Comments76

Системы управления проектами. Ищем альтернативы Basecamp

Reading time8 min
Views111K
imageНа написание поста меня сподвигла найденная на просторах хабра ссылочка на сайт с альтернативами Basecamp. Уверен многие уже заходили и смотрели предлагаемые альтернативы. Я же решил просмотреть их все. По результатам просмотра было выбрано 4 (+ 1 бонусная) системы управления проектами, которые можно назвать реальными альтернативами Basecamp. Из них три являются чуть менее, чем полностью неизвестными на просторах хабра (поиск дает практически нулевой результат), что дает мне надежду на то, что данный топик сообщит вам что-то новое. Критерии выбора и краткий обзор систем под катом (осторожно скриншотный трафик ~0.5 Mb).

Читать дальше →
Total votes 98: ↑91 and ↓7+84
Comments157

Кэширование данных, возможно последняя вещь которую Вам стоит использовать

Reading time3 min
Views14K
Недавно у меня был достаточно горячий конфликт с популярным PHP пакетом для электронной коммерции. В результате мне захотелось рассказать об одной распространенной ошибке в архитектуре веб приложений.

В чем же эта ошибка?
Читать дальше →
Total votes 74: ↑58 and ↓16+42
Comments58

Переход к PHP 5.3

Reading time3 min
Views6.7K
Некоторые из тех, кто разрабатывает приложения на PHP уже скачали и начали тестировать новые возможности самого крупного изменения в языке за последние 7 лет, но большую часть разработчиков интересуют отнюдь не новые фишки, которые можно будет применить в грядущих разработках, а изменения которые повлияют на работу уже написанных приложений.

Обновленно:
  • В конце статьи есть так же некоторая информация о том как можно отметить сие славное событие в Мюнхене.
Читать дальше →
Total votes 41: ↑35 and ↓6+29
Comments77

Динамические поддомены с использованием nginx+apache

Reading time3 min
Views29K
Этот топик — очередной топик про реализацию динамических поддоменов на сайте, коих много в интернете и даже есть пара топиков на хабре.

Проблема в том, что этот вопрос везде освещается только с точки зрения перенаправления с поддомена в папку и вся динамичность поддомена заключается в том, что ты создал папку — поддомен у тебя заработал.

Иногда же требуется решение другой проблемы — например вынос на поддомен профиля пользователя и всего функционала, который с ним связан.

Например, у нас есть готовый сайт, на котором работают профили по такому url: www.example.com/users/username, и есть всякие дополнительные возможности (например www.example.com/users/username/contact и другие страницы, связанные с этим юзером).

И мы теперь хотим вынести все, что связано с юзером, на поддомен, например username.example.com, username.example.com/contact и т.д.)

Решения, которые были найдены в интернете, меня не удовлетворили по 2 причинам:
  • Не нашел решения как заставить ее работать, сохранив работоспособность домена www.example.com
  • Все найденные решения подходят только для перенаправления в папку и не работают если дальше должны работать какие то правила


На нашем сайте стоит nginx над апачем (как и на многих других), поэтому пришлось изобретать велосипед самому, используя эту связку (nginx+ apache, благо сейчас почти на всех крупных сайтах стоит проксирующий nginx над апачем)

Читать дальше →
Total votes 68: ↑58 and ↓10+48
Comments50

Версионность и история данных

Reading time5 min
Views130K
При разработке баз данных зачастую требуется обеспечить поддержку версионности и хранения истории объектов. Например, у работника может изменяться должность, у должности в свою очередь может меняться оклад — в многомерном моделировании это называется Slowly changing dimensions(далее SCD) — редко изменяющиеся измерения, то есть измерения, не ключевые атрибуты которых имеют тенденцию со временем изменяться. Всего существует 6 основных типов(методов) SCD, которые определяют как история изменений может быть отражена в модели.

Подробнее...
Total votes 64: ↑62 and ↓2+60
Comments50

Требования к html-верстке

Reading time6 min
Views76K

1. Верстка, аутсорсинг и технические задания


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

Чтобы сэкономить трудовые ресурсы штатных верстальщиков, недостаточно просто переложить эту работу на плечи первого приглянувшегося фрилансера. Все намного проще, если вы постоянно отдаете работу на аутсорсинг одним и тем же исполнителям — в процессе длительного сотрудничества всегда складывается какой-то негласный свод стандартов и требований, выполнение которых входит в привычку. Но если вы работаете с человеком впервые — самое хорошее портфолио и рекомендации не гарантируют получения нужного результата и более того — даже не предполагают, что исполнитель вообще вас правильно поймет. Потому нужны детальные технические задания по верстке.
Читать дальше →
Total votes 228: ↑204 and ↓24+180
Comments296

Лента комиксов

Reading time1 min
Views832
Хочу представить вашему вниманию свой сайт:



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

В основе работы сайта лежит ASP.NET, что довольно большая редкость для такого рода проектов. Для создания комиксов используется Silverlight, который, по-моему скромному мнению, самая подходящая для этого технология. Можно очень просто и быстро изменять размеры изображений, их пропорции, применять к ним трансформации (сжатие, зеркальность, повороты).

И да. Данный сайт не очень вписывается в формат Хабра (скорее развлекательный ресурс, а не, например, инновационный сервис), но, тем не менее, надеюсь, что сама идея, ее реализация, вызовет определенный интерес.

UPD Адрес сайта: comixme.net
Total votes 118: ↑78 and ↓40+38
Comments79

Выводим прогноз погоды на дисплей

Reading time2 min
Views20K
image

Добрый день всем!


Раньше, чтобы посмотреть прогноз погоды, я обычно заходил на разные метеорологические сайты, потом с приходом разнообразных виджетов я мог узнать погоду, просто посмотрев на рабочий стол. В данный момент я решил изготовить небольшой девайс с экраном, на который может выводиться прогноз погоды с какого либо сайта. Думаю, сейчас наиболее актуально быть в курсе изменений погоды. Потому я решил опубликовать описание устройства на хабре, может кто-то захочет повторить эту конструкцию.
Читать дальше →
Total votes 127: ↑124 and ↓3+121
Comments83

HTML5 Audio и Game Development: баги браузеров, проблемы и их решения, идеи

Reading time6 min
Views11K
В топике я расскажу о нюансах использования тега <audio> в разных браузерах при разработке игр, о проблемах, с которыми я столкнулся и о том, как их решить. Объяснение будет идти паралельно с написанием обертки для удобной работы.
Читать дальше →
Total votes 74: ↑64 and ↓10+54
Comments85

Популярные продукты для электронной коммерции с открытым исходным кодом

Reading time4 min
Views30K
imageНас часто просят порекомендовать продукты eCommerce, которые могут интегрироваться с CMS или использоваться совместно с к.л. CMS. Ниже опубликован список ПО с открытым исходным кодом, пригодного для этих целей.
Примечание: русскоязычных пользователей, прежде всего, интересует наличие локализованных версий, поддержка отечественных платёжных систем и русское сообщество. В комментариях по тексту, выделенных курсивом, по-возможности указана эта информация.
Чертова дюжина движков под катом
Total votes 70: ↑54 and ↓16+38
Comments79

Соединяем филиалы в одну сеть. Снижаем затраты на интернет

Reading time7 min
Views50K
logo

Приветствую тебя хабражитель, не так давно передо мною встала задача соединить в единую сеть филиалы одной крупкой компании, разбросанные по Сибири. Главная проблема была в том, что OpenVPN надо было заставить работать поверх нестабильного PPPoE попутно пустив весь трафик через OpenVPN
Далее о том как я с этим справился и получил profit
Total votes 101: ↑88 and ↓13+75
Comments84

Уязвимость связки PHP+nginx с кривым конфигом

Reading time1 min
Views61K

Summary


Announced: 2010-05-20
Credits: 80sec
Affects: сайты на ngnix+php с возможностью загрузки файлов в директории с fastcgi_pass




Background


Зачастую How-To по настройке связки nginx с php-fpm / php-cgi есть подобные строчки:

location ~ \.php$ {
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
    include fastcgi_params;
}

Читать дальше →
Total votes 163: ↑146 and ↓17+129
Comments109

Краткий обзор бесплатных XML редакторов

Reading time2 min
Views349K
Хороший XML редактор бережет нервы разработчика и делает процесс работы с XML легким и приятным. Вот так я подумал, когда начал пользоваться редактором Altova XMLSpy. Эта программа, безусловно, стоит своих денег.

Но руководство поставило задачу найти бесплатный аналог. Результатом поиска краткий обзор бесплатных XML редакторов.

Читать дальше →
Total votes 51: ↑39 and ↓12+27
Comments48

Целебное зелье для IE5+ или IE7.js

Reading time2 min
Views7.1K
Разбирая код очередного проекта внутри тега head наткнулся на интересный код:

<!--[if lt IE 9]>
<script src="http://ie7-js.googlecode.com/svn/version/2.1(beta3)/IE9.js"></script>
<![endif]-->

Только одно слово «IE9» меня пустило в замешательство. Первое что пришло мне в голову — это то, что при помощи этого .js кода браузеры под печальным клеймом Internet Explorer можно заставить работать используя свойства многообещающего IE9. Больше всего я ожидал что будут доступны свойства CSS3.0, но не тут-то было!
Читать дальше →
Total votes 159: ↑125 and ↓34+91
Comments73

Сравнительный обзор бесплатных антивирусов

Reading time8 min
Views435K


Решил я после обзора одного единственного антивируса AVG Antivirus 9.0 от хабравчанина Courteous написать свой и пройтись по бесплатным решениям в этой области.

Оценка антивирусов проводилась по трём параметрам — юзабилити (тут с моими оценками хабрасообщество может не согласиться), потребление ресурсов и надёжность (надёжность я оценивал по знаменитому архиву из 3732 вирусов).

A-Squared Free




Основные особенности a-squared Free 4.5
• Удаляет трояны, программы-шпионы (Spyware), рекламное ПО (Adware), интернет-червей, клавиатурных шпионов (Keyloggers), руткиты (Rootkits), звонильщики (Dialers) и другие угрозы.
• Прост в использовании и полностью бесплатен
• Более 4 млн. пользователей по всему миру

Для обладателей не слишком шустрого или лимитированного интернета минусом может являться факт начального обновления на 33мб.
Осторожно, под катом много скриншотов!
Читать дальше →
Total votes 275: ↑215 and ↓60+155
Comments319

Асинхронность: почему это никак не сделают правильно?

Reading time7 min
Views6.8K
Асинхронные программы чертовски неудобно писать. Настолько неудобно, что даже в node.js, заявленном как «у нас все правильное-асинхронное», понадобавляли таки синхронных аналогов асинхронных функций. Что уж говорить про питоновский синтаксис, не дающий объявить лямбду со сколь-либо сложным кодом внутри…

Забавно, что красивое решение проблемы не требует ничего экстраординарного, но почему-то до сих пор не реализовано.
Читать дальше →
Total votes 86: ↑81 and ↓5+76
Comments78

Information

Rating
Does not participate
Location
Пятигорск, Ставропольский край, Россия
Date of birth
Registered
Activity