Обновить
466.5

Веб-разработка *

Делаем веб лучше

Сначала показывать
Порог рейтинга
Уровень сложности

CKEditor файловый менеджер

Время на прочтение4 мин
Охват и читатели27K
В связи с выходом новой версии популярного и весьма функционального WYSIWYG редактора, пришлось сделать небольшой файл менеджер.

Причиной тому послужило отсутствие по умолчанию стандартного файл менеджера, есть конечно CKFinder но он на платной основе.
Поискав разные альтернативы решил потратить время на создание простенького но своего файл менеджера на манер CKFinder'а, что вам и представляю.
Пришлось поискать как интегрировать его с редактором, документации мало, но в конце концов вроде получилось :)

Возможности: Загрузка нескольких файлов, создание папок, транслит закачиваемых файлов, переименование, хотя чего перечислять стандартно всё :)
Общий стиль на манер CKFinder в гамме ACDSee 3
Читать дальше →

Азбука WEB-разработчика

Время на прочтение4 мин
Охват и читатели13K
Небольшой список, самых, на мой взгляд, полезных сайтов для любого WEB-разработчика, интересующегося сферой веб дизайна, верстки и программирования. Думаю каждый среди этого списка найдет для себя сайты, которые надолго войдут в его ленту RSS.

AA List Apart




A List Apart содержит лучшие советы и мнения от лидирующих умов индустрии.
Читать дальше →

PHPConf 2009 — программа окончательно сформирована

Время на прочтение2 мин
Охват и читатели674
image Осень — отличное время пообщатся с единомышлениками и профи в WEB-разработке. Уже зарегистрировалось более 150 чел, спешите — нелегко в наше время собрать такое количество экспертов WEB в одно время в одном месте.

Программа окончательно сформирована
www.phpconf.ru/programm


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

Джаббер чат на веб-странице

Время на прочтение3 мин
Охват и читатели33K
Прочитав пост на хабре про онлайн чат для сайта через джаббер, мне стало интересно — а как оно работает и как такое можно сделать самому, без готовых приложений. В итоге у меня получилась очень простая заготовка «чата для сайта через джаббер». К сожалению у меня нет выделенного сервера с линуксом для тестов, поэтому был использован локальный компьютер с Win7 (и сервером Apache).

Как это вообще должно работать: пользователь заходит на сайт, и видит окошко, куда можно разговаривать. После того как пользователь послал сообщение, оно прилетает на указанный джаббер аккаунт. Получатель этого сообщения может написать ответ и оно придёт посетителю сайта.
Что для этого нужно:
  • Jabber сервер, можно публичный, можно локальный. Я выбрал Openfire и установил его локально. Сервер должен поддерживать Bosh — XEP-0124: Bidirectional-streams Over Synchronous HTTP, об этом чуть позже.
  • JS библиотека, которая будет реализовывать джаббер-клиент на сайте. Я взял Strophe. Это достаточно низкоуровневая библиотека, в которой нет функций типа «ПослатьСообщение(Куда, Текст)». Для достижения нужных действий нужно вручную составлять команды джаббер серверу (в XML). Удобные средства для создания XML в Strophe есть :)
Читать дальше →

Пишем свой плагин для Windows Media Center. Часть 1

Время на прочтение3 мин
Охват и читатели2.6K
Здравствуй, хабра-сообщество!

Небольшое лирическое отступление


В этот замечательный день всех тех, кому не безразличны такие слова как разработка, код, компиляция и отладка, тех кто в данный момент набирает свою юбилейную 100 миллионную строку кода и тех у кого успешно скомпилировался и запустился первый в жизни «Hello, World!» хочу поздравить с профессиональным праздником. Желаю вам поменьше багов, быстрых компиляторов, взаимопонимания с дебаггером и самое главное, чтобы рядом были люди способные по-достоинству оценить Ваш труд!

А теперь — начнем


Недавно я начал писать свое приложение под WMC.
Заниматься переводом и цитированием SDK скучно и не интересно.
Поэтому сегодня я опишу пошагово создание простого плагина.
Давайте попробуем написать простенькие аналоговые часы.
Продолжить путешествие в волшебный мир MCML...

Zend 5.5 + Windows 7

Время на прочтение2 мин
Охват и читатели2K
После установки Windows 7 x64 на десктоп появилось очень большое желание не сносить его. Работает быстро, не глючит, красивая в конце концов + наконец-то по уму разграничены права пользователей итп. В общем ну прям всем устраевает… Кроме одного…
Так уж повелось, что на Zend Studio Client сижу еще с 3-ей версии и всем она меня устраевает. Однако 6-ая и 7-ая ветка на еклипсе получилась на удивление тормозной, сырой и глючной. Попытки запустить Zend 5.5 на Windows 7 не увенчались успехом. Zend ни слова не говоря просто вылетал на этапе загрузки. Решил, что я устарел и пора привыкать к новым технологиям.
Порядка 2-3 недель я тестировал Zend 7, PDT, NetBeans и прочие там Aptana. Zend 7 сразу вызывала отвращение, очень тормозная. PDT показалась интересной штукой. Да и вообще eclipse в общем понравился. Поставил пару плагинов и казалось вообще то что надо. Однако быстро надоело, что почему-то постоянно сбивается кодировка. А потом и вовсе eclipse перестал работать. При попытке открыть любой php файл, писал что мол TextEditor error и усё тут. Даже выгружаться нормально не мог, при попытке закрыть вылетала ошибка и он не закрывался =)
NetBeans показался сначала очень интересным, однако отказался нормально работать с sftp (ну вот такой я параноик), поэтому так же отправился в корзину. Aptana по сути является аналогом PDT и наследовала всё те же баги, с которыми я столкнулся в eclipse и PDT.
Но прежде чем орать «Я идиот, убейте меня кто-нибудь!!1!11» и поставить что-то вроде phpEdit от отчаяния, я всё же решил попробовать разобраться с Zend 5. Вспомнил, что одному подчинённому в офисе ради теста поставил Windows 7 x32 на десктоп, у него тоже были проблемы с Zend 5, однако она загружалась, просто интерфейс не пахал. Немного прикинув тему, до меня дошло, что возможно просто стоит обновить jre, шедший в комплекте с Zend 5, и вот ведь счастье, заработало!!!
image
Читать дальше →

YouTube API, продолжение: редактирование, удаление, получение мета-данных

Время на прочтение4 мин
Охват и читатели14K
Несколько дней назад я опубликовал пост про загрузку видео на YouTube посредством API системы. Сегодня хочу представить продолжение, в котором будет рассказано про редактирование уже загруженных роликов, получение их статуса и удаление.
Читать дальше →

jQuery обёртка для хака с min-, max-width

Время на прочтение1 мин
Охват и читатели3.3K
Написано 4fun по мотивам и с использованием хака habrahabr.ru/blogs/webdev/68917
Если у вас сайт и так работает с jQuery, то ещё 15 строк кода погоды не сделают, такое моё мнение.
Добавляете к элементам класс jq-width и пользуетесь min-width max-width; код вставит распорки к элементам указанного класса.
смотреть код

Расскажите все про Linux программисту C++

Время на прочтение7 мин
Охват и читатели28K
Какое-то время назад я работал с Red Hat Linux. И вот после большого перерыва мне требуется снова вернутся в пингвиний мир, но столько воды утекло! Может соберем все вместе здесь эдакий FAQ для программиста C++, но чайника в Линуксах?

Поехали?

Общие вопросы.

1. В чем различие между основными популярными дистрибутивами Linux?

> Основная разница это система пакетов. (deb, rpm и т.д.) Также под какие архитектуры выпускается дистрибутив. (sl_bug)

> Основные отличия: Менеджер пакетов, набор ПО, настройки по умолчанию. (Evgeny_Shiryaev)

> (в дополнение к Evgeny_Shiryaev) еще иногда отличаются способом конфигурации сервисов, стартуемых при загрузке. Пример — /etc/conf.d/net в Gentoo и /etc/network/interfaces в Ubuntu. Также для каждого дистрибутива характерен свой способ задания списка стартуемых при загрузке сервисов. Иногда различаются способом организации самих конфигурационных файлов (один файл или кучка файлов и макрос, их собирающий). (xtreme)

> В пакетной системе, в инсталляторе, в системных скриптах. В версиях ПО и наборе ПО по умолчанию. (Arceny)

2. Почему следует предпочитать системы BSD перед системами Linux?

> Кто вам это сказал? Выбирать нужно по потребностям. (sl_bug)

> Лично я не вижу весомых преимуществ BSD-систем перед Linux-системами. (Evgeny_Shiryaev)

> Холиварный вопрос. Выбор системы зависит от поставленной задачи. Однако, в BSD более продуман сетевой стек и присутствуют такие полезные шняжки, как accf_http и accf_data. В Линукс я пока не видел замены кроме TCP_DEFER, которая работает несколько иначе. (xtreme)

3. Существуют ли полностью бесплатные дистрибутивы Linux?

> Да (sl_bug)

> Да, причем их большинство. (Evgeny_Shiryaev)

> Я бы сказал, что бесплатно-доступных дистрибутивов — абсолютное большинство. (xtreme)

> Да, большенство. Debian или Ubuntu. Или Fedora. Или Gentoo. (Arceny)

4. Почему вообще дистрибутив Linux является платным, ведь он построен на базе open-source программного обеспечения и бесплатного ядра Linux?

> Обычно платной является поддержка а не дистрибутив (sl_bug)

> Плата идет не за сам дистрибутив, а за поддержку его (обновления, техсаппорт, и т.д.). (Evgeny_Shiryaev)

> Весьма существенный момент для разработчика:
В платном дистрибутиве SUSE SLES без подписки недоступны также и пакеты с исходными кодами (src.rpm = мэйнстрим исходники + дистрибутивные апдейты, патчи, спеки, конфиги).

Пересобрать пакет можно только из исходного (мэйнстрим) tar.gz (в лучшем случае — из src.rpm opensuse, с перерисовыванием зависимостей и прочими прелестями).
При этом, естественно, рушится вся система апдейтов.
И, возможно, совместимость с остальными пакетами системы,
в том числе с темже самым пакетом, поставленным из бинарников.

Скорее всего, аналогичная ситуация с RedHat и другими платными дистрибами. (qmax)

> (опять же в дополнение к Evgeny_Shiryaev) Тут надо помнить, что «открытые исходные тексты» и «бесплатно» — это все-таки разные понятия. Обычно OpenSource-лицензии не запрещают продавать продукты, выпущенные под ними или с их использованием. (xtreme)

> Техподдержка, коробка, полиграфия… Либо включенные проприентарные компоненты, удалив которые получим полностью лицензионно чистую версию. (Arceny)

> Вы имеете возможность платить за поддержку. Если хотите RHEL без поддержки — используйте CentOS. В остальном — есть Ubuntu (которая бесплатна, но появилась возможность поддержки), OpenSUSE, Fedora (здесь вообще только бесплатный вариант)). (kost_bebix)

5. Если мне требуется установить много машин с Linux есть ли лицензия, которая позволит мне один раз купить дистрибутив и ставить его на сколько угодно машин? Или опять-таки есть ли полностью бесплатный Linux?

> GNU/GPL (sl_bug)

> Да. (Evgeny_Shiryaev)

> Можно даже не купить, а свободно скачать и поставить на любое количество машин. Но если Вы заинтересованы в поддержке, то тогда, действительно, лучше купить. (xtreme)

> По условиям лицензий Debian и Ubuntu — вы можете ставить их на неограниченное количество PC. Но в России вам придётся купить коробочную версию. По идее — достаточно одной коробки на одну компанию. (inkvizitor68sl)

> Да все они (из популярных): Fedora, Ubuntu, Linux Mint, OpenSUSE, Mandriva, CentOS, Debian, Slackware, Arch, Gentoo являются бесплатными. (kost_bebix)

6. Есть ли достойные дистрибутивы «от отечественного производителя»?

> ALT Linux возможно (sl_bug)

> На этот вопрос нельзя ответить объективно. Лично на мой взгляд нет. Однако если будете смотреть на «наши» дистрибутивы, смотрите на ALT Linux. (Evgeny_Shiryaev)

> есть. InfraLinux например. Но в большинстве случаев они платные. (именно достойный) (inkvizitor68sl)

7. Являются ли дистрибутивы Линукс совместимыми на уровне бинарных исполняемых файлов? Можно ли взять файл из Ubuntu и запустить его на Fedora, на FreeBSD?

> можно из Ubuntu 32bit на Fedora 32bit (sl_bug)

> Дистрибутивы Linux да. На FreeBSD можно запустить бинарники Linux, однако не напрямую. (Evgeny_Shiryaev)

> Обычно — да. Трудности возникают, когда бинарник использует некоторые подключаемые библиотеки, а исходная система (от которой бинарник) и целевая (где запускается бинарник) имеют разные версии данных библиотек, в которых разные функции могут, к примеру, называться по-разному, либо вообще отсутствовать. Но, статически собранные бинарники вполне себе переносимы. Примеры — Opera, Adobe-Flash-плагин для браузеров, Skype и т.д.
В FreeBSD же совместимость с линуксовыми бинарниками достигается за счет эмуляции для них линуксового окружения, для чего, как я помню, используются обычные линуксовые библиотеки от Fedora, плюс спец-модуль в ядре, позволяющий это дело. (xtreme)

> Линукс — да, если есть нужные shared-libraries. Бинарная совместимость Linux >> BSD существует. Но тупо взять пакет и запустить в большенстве случаев не получится, подробностей не знаю. (Arceny)

> большинство бинарников запустятся в любом дистрибутиве. Некоторые программы распространяются именно в таком виде (firefox с сайта например). Или basket. (inkvizitor68sl)

> Редко. Смотря какой файл. Есть утилита Alien, которая из .deb-пакетов делает .rpm, но это костыль. Если пишешь на C++ — почитай про «Opensuse Build Service» — это типа место, где ты свой проект будешь удобно собирать сразу под все системы какие необходимо. (kost_bebix)

8. Каким образом при написании C++ программ обеспечить максимальную совместимость между Линукс-дистрибутивами на уровне исходных кодов? Какие библиотеки следует использовать?

> Широко распространённые, например Qt. OpenSource. Включенные в основные репозитории. (Arceny)

> Qt (GooRoo)

> Практически любые, но я лично тепло отношусь к Qt, которая есть и в Виндоус и МакОС. А так — гугл всегда найдет что-то абстрактное от дистрибутива для каждой конкретной задачи. (kost_bebix)

> Ах да. И, собственно, о главном — об отличии написания под виндоус. Все просто — под виндоус ты писал программу, которая использовала некоторые библиотеки — ты эти библиотеки пихал прямо в сборку программы и собирал один большой кусок. В линуксе же принято иначе, — ты пишешь программу, а затем создаешь .deb/.rpm, где описываются библиотеки и их версии.

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

Проблемы:
— если дистрибутив решит использовать новую версию (ветку) библиотеки — все может сломаться. Поэтому надо пилить (если нужна максимальная кросс-дистрибутивность) (kost_bebix)

9. Допустим требуется какое-то нестандартное решение, например, какой-то специальный вызов ядра. Каким образом можно узнать, что данная система поддерживает этот вызов?

> Экспериментальным путём или спросив в списках рассылки, форумах, у разрабов, _почитав документацию_. (Arceny)

> Если есть ядро — значит есть и функция. Дальше надо смотреть на конкретику. (kost_bebix)

10. Есть ли хорошие альтернативы gcc для разработчика на C++? Всегда ли gcc входит в состав дистрибутива?

> 10. icc, всегда (sl_bug)

> Нет, не всегда. Свободных альтернатив не знаю. (Arceny)

11. Какие IDE и под какими оконными менеджерами (или как это называется?) вы используете для программирования на C++? Какой отладчик?

> vim, gdb (sl_bug)

> IDE — Eclipse вроде бы популярен (со слов друга-программиста на C++ и Java, на истину в последней инстанции не претендует); отладчик — gdb. (xtreme)

> gdb — отладчик. к нему много разных обёрток.
Например для программирования с использованием GUI тулкита Qt использую QtCreator.
А вообще разных IDE много. Google. (Arceny)

> Если человек задаёт к вопросу об IDE отдельно вопрос про отладчик, он вряд ли получит что-либо кроме vim+gdb. Под IDE обычно подразумевают среду, в которой уже настроены трассировки с помощью горячих клавиш, просмотр отладочной информации и пр. В этом случае я бы порекомендовал Qt Creator, KDevelop, Code::Blocks, Eclipse или NetBeans. (Lockal)

> В Eclipse не очень удобно делать отладку, да и подтормаживает. NetBeans тормозит. KDevelop — фигня. Qt Creator более-менее (юзать можно).
Достойной Linux-альтернативы VS нет :( Особенно что касается удобства отладки. (GooRoo)

> KDE4.3.1 + QtCreator — хорошее решение. Я использую Emacs, на C++ пишу нечасто. (kost_bebix)

12. Какие еще инструменты для C++ используются. Слышал про valgrind как хороший memory-leak детектор.

> ИДЕ — KDevelop, Eclipse, есть отладчик gdb. Дальше надо тоже конкретно смотреть «что надо». (kost_bebix)

13. Какая русская кодировка используется в Линукс системах «по умолчанию»? Поддерживает ли ядро Линукс UNICODE? На каком уровне?

> utf-8 (sl_bug)

> UTF-8 сегодня — это умолчальная. Сделать умолчальной практически без труда можно любую кодировку, хоть CP866. (xtreme)

14. Какое наиболее доступное решение, чтобы запустить Linux на машине с Windows? Как насчет portable Ubuntu? Кто-нибудь пользуется, можно ли вести полноценную разработку?

> vmware? (sl_bug)

> Самое лучшее решение — запустить Linux внутри виртуальной машины. Я рекомендую для этого использовать VirtualBox.

> Вам уже посоветовали VMWare и VirtualBox. Последний бесплатен (xtreme)

> LiveCD ) а вообще — virtualbox. Wubi\portable Ubuntu portable — не лучший вариант. (inkvizitor68sl)

> Что значит запустить Линукс? Самое простое решение — удалить Виндоус и установить Убунту (kost_bebix)

:-)

Вопросы пользователям-программистам C++.

a1. Каким дистрибутивом лично Вы пользуетесь и почему выбрали именно его?

> Debian, привычка. Очень давное начал им пользоваться и менять не хочется. Пробовал gentoo (прикольно, но все из исходников это долго), centos/fedora (не люблю rpm) (sl_bug)

> Ubuntu. Меньше всего проблем с настройкой дистрибутива, хороший менеджер пакетов, часто обновляется. Еще неплохи (для пользователя) Fedora, OpenSUSE и большинство производных Ubuntu. (Evgeny_Shiryaev)

> Debian, Ubuntu. Последний работает из коробки почти со всем железом, первый — просто хороший неперегруженный дистрибутив, который я ставлю на сервера и на котором развёртываю только необходимый набор пакетов. (Arceny)

> Mandriva Linux. Так сложилось исторически :) Некоторые считают его дистрибутивом для домохозяек, и в чем-то они правы :) (GooRoo)

> Убунту. Просто из-за популярности все разрабатывается (и так и должно быть) и пилится в первую очередь под него. (kost_bebix)

a2. С помощью каких инструментов ведет разработку (если ведете)?

> vim, gcc, gdb (sl_bug)

> Qt + Qt Creator, ибо лучше ничего нет, а до vim c emacs еще не дорос. (GooRoo)

> Наверное вел бы с помощью QtCreator, если бы не подсел на Емакс. (kost_bebix)

a3. Что устраивает и что не устраивает в вашем Линуксе как программиста С++?

> Не нравится: модель межпроцедурной оптимизации в gcc (не ускоряет), стандартные оптимизации -O2 (приходится свои дописывать, либо -O3), каскадные сообщения об ошибках в boost и подобных библиотеках. (Lockal)

> Linux — лучшая операционная система в которой я работал, но для разработки на С++ по сравнению с виндой совсем непригодна. Хотя при желании… ;) (GooRoo)

Если нетрудно — перед ответом ставьте номер вопроса, на который отвечаете. И не холиварьте чрезмерно (я знаю что хочу невозможного :).

Создание инсталлятора с помощью WiX. Часть 2

Время на прочтение6 мин
Охват и читатели25K
В прошлый раз мы научились создавать простой инсталлятор. Прежде чем двинуться дальше, от простого к сложному, давайте научимся управлять этим самым сложным. А именно — научимся разбивать проект на части с тем, чтобы упростить сопровождение и внесение изменений.

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

Список полезных инструментов для CSS разработчика

Время на прочтение8 мин
Охват и читатели72K
Это не попытка создать список всех существующих инструментов для CSS разработки. Только некоторые, наиболее полезные были отобраны и размещены в соответствующих категориях.


Чтобы инструмент был по-настоящему полезен, у него должна быть хорошая документация и дружелюбный интерфейс. К сожалению, некоторые инструменты в списке не полностью попадают под данные критерии. Если кто-то знает лучшие альтернативы с более дружелюбным интерфейсом и большей функциональностью, пишите в комментариях.
Читать дальше →

Загрузка видео посредством YouTube API

Время на прочтение5 мин
Охват и читатели70K
Некоторое время назад по работе пришлось изучить и настроить работу сайта заказчика с YouTube, после этого для своего, как это теперь принято говорить, стартапа, я применил практически те же знания и умения. В этом небольшом посте я расскажу, как используя youtube api загружать видео файлы.
Читать дальше →

Ближайшие события

Кроссбраузерный min- и max-width на чистом HTML+CSS

Время на прочтение1 мин
Охват и читатели15K
Давно хотел поделиться одной интересной наработкой — а именно эмуляцией свойств min и max-width без использования expression и подобных вещей. Обвязка может показаться громоздкой, но главный ее плюс — она работает. Плюс подобные вещи можно с легкостью внедрять с помощью шаблонизатора одной строчкой кода.

Суть трюка проста:
‹table›‹tr›‹td width=1100› — максимальная ширина
‹div width=900 /› — распорка, минимальная ширина

Причем именно так, ширина не у таблицы, а у ячейки. Таким образом шире, чем 1100 таблица не будет (в данном случае), но при этом если она уже — скроллер не появляется. При этом если ширина рабочей области менее 900 — скроллер уже отобразится.
Читать дальше →

Dependency injection для Scala: Cake Pattern

Время на прочтение4 мин
Охват и читатели15K
Я совсем недавно начал изучать Scala. Для тех, кто еще не в курсе, что это за язык, небольшая выдержка с официального сайта:

Scala — лаконичный, элегантный и статически типизированный язык программирования, который сочитает в себе возможности обьектно-ориентированного и функционального языка. Scala полностью совместима с Java.

Сегодня я хотел бы показать вам, как, используя богатые выразительные способности этого языка, решить проблему, актуальную для любого более-менее крупного проекта, а именно работу с зависимостями компонентов или dependency injection. Последние несколько лет я использовал spring ioc для решения этой проблемы, однако у этого фрэймворка есть несколько недостатков, самый очевидный из которых это сборка приложения из компонент в runtime и наличие xml-дескрипторов (да, конечно можно использовать и autowiring и аннотации, но и у этих возможностей есть свои серьезные проблемы).
Читать дальше →

Создание инсталлятора с помощью WiX

Время на прочтение9 мин
Охват и читатели106K
Для начала — что такое WiX? Технология WiX (Windows Installer XML) представляет собой набор инструментов и спецификаций упрощающих процесс создания дистрибутивов на базе MSI (Microsoft Installer). Если объяснять проще то это обертка вокруг MSI с человеческим лицом.

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

В Новосибирске состоится «Сибирская интернет-неделя»

Время на прочтение1 мин
Охват и читатели509
Привет, Хабр!

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

Сегодня мы анонсируем уже третью конференцию, которая состоится в Новосибирске с 21 по 28 сентября 2009 года. Сейчас в программе заявлено 66 докладов, посвященных интернет-бизнесу, дизайну, программированию, управлению проектами, интернет-маркетингу, продвижению оффлайнового бизнеса в интернете, онлайн-коммерции и блогосфере. Всего мы планируем, что мероприятия посетит более 1 000 человек из городов Сибири, а также наши гости из Москвы, Санкт-Петербурга и других регионов.

Если вы где-то рядом или способны там оказаться, мы приглашаем вас принять участие. Если вы представитель отраслевого СМИ, то просим разместить пресс-релиз. Если ваша компания заинтересована в продвижении на рынок Сибирского региона, то приглашаем стать организационным партнером.
Регистрация обязательна.

Приезжайте, будет жарко!

Краш-тест для CMS

Время на прочтение4 мин
Охват и читатели1.1K
Идея создания модуля Проактивной защиты (Web Application Firewall) пришла в голову очень давно. Но реализовать его удалось только в версии 8.0 этой весной. И сразу возникли идеи, а не проверить ли систему защиты и не устроить ли открытый конкурс.

Меня многие спрашивали — зачем нам это нужно? На что я могу только ответить, что цель всей системы защиты и всего конкурса — сделать наш продукт лучше, дать больше уверенности клиентам и разработчикам. А сделать это можно только на практике.

Почему-то на ум приходит аналогия с автомобилями. В первых автомобилях вообще не думали о безопасности водителя и пассажиров. Потом появились пассивные системы безопасности, т.е. которые защищали людей уже в момент аварии. Это например подушки безопасности в машине. И уже как следующий шаг — появились системы активной защиты — ABS, системы курсовой устойчивости ESP, EBD и т.п. Эти системы уже помогают водителю избежать аварии, подруливают за него, выводят из заноса, спасают жизнь…
Читать дальше →

PHPConf 2009 — программа опубликована

Время на прочтение4 мин
Охват и читатели425

image
Программа Web Architect WorkShop Day будет опубликована 4сентября. Планируется провести 3 потока мастер-классов: аналитика и архитектрура, управление качеством, технологии и секреты мастерства.

Льготная регистрация продлена до 10 сентября. Не опоздайте уже 30% мест занято
Читать дальше →

Про Git на пальцах (для переходящих с SVN)

Время на прочтение8 мин
Охват и читатели281K
Год назад мы с командой решили перейти с SVN на Git. Зачем это было надо — писать не буду, т.к. на эту тему уже и так много написано. А хочу я описать типичные алгоритмы работы, понятные человеку, который долгое время пользовался SVN. Ниже — памятка, написанная для команды год назад, чтобы легче было мигрировать. Надеюсь, кому-нибудь пригодится.
Читать...

Вклад авторов