Pull to refresh
73
0.3

User

Send message

CMS своими руками. Теория велосипедостроения

Reading time8 min
Views25K
Как много веселых ребят
И все делают велосипед.
А один из них как-нибудь утром
Придумает порох.
Виктор Цой.

image

Сначала я хотел написать в раздел «Я пиарюсь» статью о том какой я молодец и какую замечательную штуку сделал но, немного поискав в сети, я без удивления обнаружил, что я совсем не единственный в своем роде. Тогда я решил пойти от обратного: наверное, практически каждый Веб-программист хотя бы раз в своей жизни пытается написать полноценную CMS. При этом, в процессе проектирования (а это процесс, зачастую, наступает уже во время написания кода) у разработчика непременно возникают вопросы. С этими вопросами он обращается к поисковикам и попадает на сайты тех, кто по подобным граблям уже прошествовал.

Итак, я стал смотреть, по каким же запросам попадают ко мне начинающие «разработчики велосипедов», и постарался осветить некоторые вещи, которые для меня самого были неочевидны в начале работ.

Ну-с, показывайте ваши синяки...
Total votes 168: ↑147 and ↓21+126
Comments208

76 новых материалов на русском

Reading time3 min
Views1.6K
image

Недавно был снова обновлен центр по Internet Explorer на MSDN. Были добавлены 76 статей и книг, посвященных следующим темам:



Полный список материалов со ссылками под катом
Читать дальше →
Total votes 62: ↑46 and ↓16+30
Comments11

Тренды в дизайне иконок 2010

Reading time4 min
Views29K
imageСоздание иконок — довольно консервативное направление дизайна. Часто новая и оригинальная иконка работает намного хуже, чем стандартная и привычная. Но индустрия не стоит на месте — появляются новые устройства с новыми интерфейсами, и меняются способы работы с ними. Происходит это все довольно медленно, но тренды выделить можно.

Скажу пару слов о методике выявления трендов. Я работаю в компании, которая занимается иконками и интерфейсами, поэтому мне необходимо следить за новыми устройствами, программами и их интерфейсами. Плюс, некоторые выводы можно сделать по тому, что хотят наши клиенты, какие именно иконки они заказывают.
Читать дальше →
Total votes 181: ↑163 and ↓18+145
Comments85

HTML5 — взгляд через призму безопасности

Reading time10 min
Views26K
HTML5 — будущий стандарт языка разметки Интернет. Пока он находится в стадии черновика, но все больше и больше его возможностей реализуются в популярных веб-браузерах. Но как это обычно бывает, новые технологии несут в себе и новые опасности, которые могут быть успешно проэксплоитованы.
Читать дальше →
Total votes 157: ↑149 and ↓8+141
Comments18

XUI: простой JavaScript фреймворк для разработки мобильных веб-приложений

Reading time1 min
Views9.9K
Создатели библиотеки хорошо знакомы с готовыми популярными решениями (jQuery, MooTools), но взялись написать свой собственный фреймворк, который не будет перегружен кодом поддержки десктопных браузеров и сосредоточились на главных нуждах разработки под мобильные приложения.

Уже сейчас XUI поддерживает такие мобильные браузеры, как WebKit, Fennec и Opera. В ближайшем будущем поддержка IE Mobile и BlackBerry.

Сайт библиотеки →
Total votes 72: ↑64 and ↓8+56
Comments65

Introducing xdebug

Reading time9 min
Views46K
Эта статья первая из серии статей, описывающих xdebug, свободной библиотеки для разработчиков PHP. xdebug – это расширение для PHP, написанное Derick Rethans, одним из разработчиков языка PHP. В данной статье описывается как установить xdebug и рассказывается о его базовых возможностях. В последующих частях мы детальнее взглянем на главные возможности xdebug, а именно трассировку, профайлинг, отладку кода.
Читать дальше →
Total votes 44: ↑42 and ↓2+40
Comments60

TDD — это как сноубординг

Reading time3 min
Views12K

Я только что получил следующее письмо, которым хочу поделиться и ответить на него публично.

«Я не использую эту методологию (TDD) из-за того, что главный для меня вопрос остается без ответа. Я знаю, что использование TDD уменьшает количество багов, но что насчет времени, необходимого при работе по этой методологии?
Я хотел бы знать как изменяется время на разработку корпоративного приложения с использованием TDD — уменьшается, увеличивается или остается неизменным.
Надеюсь, вы сможете ответить, так как TDD и BDD меня очень интересуют.»

Ответ на письмо
Total votes 59: ↑45 and ↓14+31
Comments58

Числа, которые должен знать каждый программист

Reading time1 min
Views17K
Чтобы было понятно, на чём следует концентрироваться при оптимизации, слайд из доклада «Создание программных систем в Google и его уроки»:
Таблица
Total votes 164: ↑108 and ↓56+52
Comments120

Требования к вёрстке под drupal

Reading time4 min
Views12K
Не раз сталкивался с проблемой, когда присылают вёрстку и там вроде бы всё хорошо, но вот как начинаешь прикручивать к drupal, то сталкиваешься с тем, что либо надо вёрстку переделывать либо функции темы переписывать. И в итоге процесс темизации из-за этого может значительно увеличиться. Поэтому мы на работе решили написать требования к вёрстке под drupal. Ниже привожу требования к основным элементам.
Читать дальше →
Total votes 57: ↑44 and ↓13+31
Comments85

Memcached и PHP ликбез

Reading time6 min
Views225K
В интернете достаточно много информации на данную тему, но, несмотря на это, многие обходят её стороной. Цель данного поста, разъяснить на пальцах основы взаимодействия с Memcached.
Читать дальше
Total votes 103: ↑78 and ↓25+53
Comments87

Вы наверное шутите, мистер Дал, или почему Node.js — это венец эволюции веб-серверов

Reading time8 min
Views29K
WTF is Node.js?

Node.js — вещь, вокруг которой сейчас много шума, восторженных отзывов и гневливых выкриков. При этом, по моим наблюдениям, в умах людей закрепилось следующее представление о том что же такое Node.js: «это штука, позволяющая писать на JavaScript на серверной стороне и использующая JavaScript-движок от Google Chrome». Поклонники языка восторженно вздохнули: «Ах! Сбылось!», противники же процедили сквозь зубы: «Ну вот только еще этой ерунды с прототипами и динамической типизацией нам на серверах не хватало!». И дружно побежали ломать копья в блоги и форумы.

При этом многие представители обоих лагерей придерживаются мнения, что Node.js — это эзотерическая игрушка, веселая задумка для переноса языка браузерных сценариев на «новые колеса». Дабы быть до конца честным, признаюсь, что я так же придерживался подобной точки зрения. В один прекрасный момент, я набрался духу и решил «копнуть поглубже». Выяснилось, что создатель Node.js Райан Дал далеко не фанатик, а человек, пытающийся решить реальную проблему. А его творение — не игрушка, а применимое на практике решение.

Так что же такое Node.js?
Total votes 243: ↑235 and ↓8+227
Comments252

Человеческий фактор или «соглашения не работают»

Reading time4 min
Views3.6K
Представьте ситуацию. Вы со своей командой, после очередной итерации, обсуждаете слабое покрытие кода тестами и решаете что с понедельника текущего момента все пишут тесты как для нового кода, так и для всплывающих багов. Это кажется разумным (кто-то вспоминает последний неудачный деплой), все поддакивают и довольные расходятся с мыслью, что ну вот теперь то у нас точно все будет отлично. Приходит время следующего собрания на котором во время вопроса «а как у нас с тестированием» большинство отводит глаза. Результат ясен, все осталось по старому.

Можно конечно попытаться вычислить тех кто этого не делает, выяснить почему так происходит, провести воспитательную беседу) и это даже поможет на какое-то время. А потом пройдет время и все станет по прежнему. Причем те люди которые следуют соглашениям по данному вопросу, в другом вопросе могут делать все по своему и наоборот.

Читать дальше →
Total votes 56: ↑53 and ↓3+50
Comments42

Как стартапу найти инвестора?

Reading time4 min
Views1.5K
Впервые о своем бизнесе я задумался в начале 2008 года. Мне нужны были инвестиции, поэтому я очень много общался со всевозможными инвесторами, а также мнимыми инвесторами и консультантами по поиску инвесторов. На общение с ними я потратил очень много времени, и большая часть его была потрачена впустую. Хочу поделиться накопленным опытом общения с инвесторами и дать несколько советов другим стартапщикам.

Читать дальше →
Total votes 32: ↑23 and ↓9+14
Comments46

apache+nginx+gzip_static+yuicompressor

Reading time6 min
Views15K
В этой статье я опишу принципиальные различия Apache и Nginx, архитектуру фронтэнд-бэкэнд, установку Apache в качестве бэкэнда и Nginx в качестве фронтэнда. А также опишу технологию, позволяющую ускорить работу веб-сервера: gzip_static+yuicompressor.
Читать дальше →
Total votes 117: ↑109 and ↓8+101
Comments71

Поделитесь опытом, как у вас в студии организовано хранение и менеджмент паролей?

Reading time1 min
Views7.8K
Как в любой студии мы храним огромное количество паролей, от различных панелей управления серверами, доменов, админок, ssh, ftp, баз данных и т.д., речь идёт о сотнях различных паролей и логинов. Прибавьте к этому, корпоративную почту, локальную сеть с различным уровнем доступов, локальный сервер, на котором программисты собирают новые проекты, сервер с бэкапами, мегаплан, доступы к различным социальным сервисам и т.д.

Все ещё сильно усложняется тем, что над проектами работает довольно большое количество людей, часть из них работает удалено. Одному человеку пароль нужен разово, другому довольно часто, причём в любое время дня и ночи.

Поделитесь опытом, как организовать эффективное, надёжное хранение и менеджмент всеми этими паролями и доступами? Как хранение паролей и управление ими организованно у вас в студии? Какое программное обеспечение используете? Что делаете, когда увольняется ключевой администратор или программист?

Вопрос не праздный, не любопытства ради. Давно ищем какое-то в меру простое и эффективное решение, но пока безуспешно, хабр — последняя надежда.
Total votes 83: ↑57 and ↓26+31
Comments142

WordPress заставит всех соблюдать GPL

Reading time3 min
Views6.5K
image
Популярная CMS Wordpress, распространяемая под лицензией GPL оказалась в центре скандала. Система управления контентом получила широкое распространение благодаря удачной архитектуре и встроенной системе «тем» с настраиваемыми шаблонами и «плагинов», что позволяет использовать Wordpress при разработке практически любых проектов от блогов до сложных новостных ресурсов.
По условиям лицензии все дополнения к CMS должны также выпускаться под GPL, но далеко не все разработчики выполняют их. Так, создатели популярной темы Thesis не скрывают нежелания переводить свой платный продукт в категорию свободных. Создатель проекта Мэтт Мулленвег (Matt Mullenweg) вступил в яростный диспут с Крисом Пирсоном (Chris Pearson), автором Thesis, и обвинил последнего в грубом нарушении условий GPL.
Читать дальше →
Total votes 63: ↑58 and ↓5+53
Comments322

Сверхурочные? Теперь у вас две проблемы!

Reading time4 min
Views4.6K
В одной старой шутке говорится: если у вас есть проблема, и вы собираетесь решать ее с использованием регулярных выражений, то у вас есть две проблемы. Мне кажется, сверхурочная работа — что-то из той же серии. Я сформулировал бы это так: если у команды есть проблема, и для ее решения планируется работать сверхурочно, то у команды две проблемы. В чем же заключается вторая проблема?

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

Истощение


Очевидно, что люди, много работающие сверхурочно, устают, и со временем усталость переходит в истощение — как физическое, так и моральное. Само собой, для здоровья тоже мало хорошего.

Читать дальше →
Total votes 94: ↑89 and ↓5+84
Comments107

Доля Internet Explorer 6 упала ниже Opera Mini. А вы еще не тестируете в ней свои сайты?

Reading time1 min
Views1.2K
Сегодня доля Internet Explorer 6 составляет примерно 7-8% и продолжает падать. Однако популярность этого браузера все еще достаточно велика, чтобы лишать его пользователей возможности пользоваться вашими сайтами. Большинство разработчиков все еще проверяет каждую функцию на совместимость с этим браузером, кто-то даже бьется над попиксельным соответствием верстки с макетом. Но почему-то многие забывают про другой набирающий популярность браузер. Речь идет об Opera Mini. С развитием мобильных технологий люди все чаще выходят в интернет со своего мобильного. Если верить liveinternet.ru, Opera Mini используется для серфинга уже чаще, чем пресловутый IE6! Может быть займемся тестированием наших сайтов в самом популярном мобильном браузере? Тем более, что для этого не нужен мобильный телефон.
Total votes 143: ↑109 and ↓34+75
Comments86

Ускоряем Drupal: Pressflow + Nginx + Varnish

Reading time7 min
Views21K
Данная статья достаточно подробно показывает, как можно перейти на разработку сайтов Друпал с серьезной стрессоустойчивостью и возможностью обрабатывать большой трафик.

Это мой первый опыт подобной настройки, но как будет далее видно из статистики достаточно удачно справляющийся со своей основной задачей — ускорением работы сайта. Интересно будет услышать и увидеть настройки, дополнительные материалы от всех кто сталкивался с подобными задачами, так как в рунете пока еще мало свободной и качественной информации по этой теме относительно системы Друпал.

Довольно долго для разработки я использовал связку Drupal + Nginx с настройками сервера по умолчанию:

server {
listen 62.xxx.xx.xx:80;
server_name mysite.com www.mysite.com;
rewrite>^(/manager/.*)$>https://$host$1>permanent;
location ~* ^/(webstat/|awstats|webmail/|myadmin/|manimg/) {
proxy_pass 62.xxx.xx.xx:8080;
proxy_redirect mysite.com:8080/ /;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
}
location / {
proxy_pass mysite.com:8080;
proxy_redirect mysite.com:8080/ /;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
}
location ~* ^.+\.(jpg|jpeg|gif|png|svg|js|css|mp3|ogg|mpe?g|avi|zip|gz|bz2?|rar)$ {
root /home/pathto/drupal613;
access_log /home/httpd-logs/mysite.com.access.log;
error_page 404 = @fallback;
}
location @fallback {
proxy_pass 62.xxx.xx.xx:8080;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
}
}


Читать дальше →
Total votes 55: ↑46 and ↓9+37
Comments38

Information

Rating
2,289-th
Location
Екатеринбург, Свердловская обл., Россия
Registered
Activity