Search
Write a publication
Pull to refresh
20
0
Сергей Поповичев @Vanger

DevOps

Send message

Symfony: как начать

Reading time5 min
Views60K
Чем больше я работаю над своим первым проектом на работе, тем больше мне хочется в нем поменять и тем больше я жалею о том, что перед началом работы я не прочитал до конца «The Definitive Guide to Symfony» и не изучил плагины для Symfony. Многие из них мне бы помогли намного сократить время разработки и, что самое главное, не думать о том, как красиво реализовать те или иные вещи… И еще одно — если у вас уже есть кусок системы (как это было у меня), который вы собираетесь переписывать с использованием вашего фреймворка (или просто переписывать, потому что код вам не нравиться) — то мой вам совет — потратьте время на то, чтобы спроектировать этот кусок на план вашей новой системы, не бросайтесь сразу всё переписывать (каюсь, я поступил именно так), так как после анализа (который, возможно, займет у вас не один день, и даже не одну неделю), возможно, от предыдущей архитектуры системы не останется и следа.
Вообще, я люблю проектировать, продумывать, анализировать те или иные решения, которые хочу внедрить в систему (хотя, признаюсь, опыта у меня в этом маловато), но как обьяснить заказчику, что ты провел день в раздумьях… Эх…
Ну ладно, это я отвлекся. Сегодня хочется рассказать о том, с чего стоит начать при разработке системы с помощью Symfony и каких правил следует придерживаться.
Читать дальше →

Introducing xdebug

Reading time9 min
Views47K
Эта статья первая из серии статей, описывающих xdebug, свободной библиотеки для разработчиков PHP. xdebug – это расширение для PHP, написанное Derick Rethans, одним из разработчиков языка PHP. В данной статье описывается как установить xdebug и рассказывается о его базовых возможностях. В последующих частях мы детальнее взглянем на главные возможности xdebug, а именно трассировку, профайлинг, отладку кода.
Читать дальше →

Усовершенствуем e-mail ссылки

Reading time1 min
Views833
mail

Что такое CSS Attribute Selector?
CCS дает нам возможность стилизовать элементы базирующиеся на атрибутах ссылки, а не на типе самого элемента. Например, вы уже знаете как украсить элемент заголовка h1:

h1 { color: blue; }

Можно немного четче определить атрибут заголовка:

h1[title] { color: blue; }

Можем зайти еще дальше:

h1[title="Go Home"] { color: blue; } /* Значение "Go Home" в атрибуте заголовка */
h1[title~="Go Home"] { color: red; } /* Значение "Go Home" где-то в атрибуте заголовка */
h1[title^="Go Home"] {color: green; } /* Значение атрибута заголовка начинается с "Go Home" */


Что уникального в «мыльных» ссылках?
А теперь возьмем опыт из предыдущих примеров и соорудим вот это:

a[href^="mailto"]:hover:after { content: attr(title); }

Атрибут заголовка мы поставили в hover. Это будет работать, однако может получится что текст появится сразу-же после ссылки. Поэтому правим код на это:

a[href^="mailto"]:hover:after { content: " > " attr(title); }

Что получилось:

[пример]

[*] будет к месту уточнить что, наш любимый браузер, — IE некорректно отображает код, впрочем, мы привыкли.

Шаг 6: Краткое знакомство с консолью

Reading time3 min
Views14K

Краткое знакомство с консолью


Давайте кратко ознакомимся с терминалом — консолью в Linux.

Консоль

Консоль для Linux имеет решающее значение. Если вы всерьез решили изучить Linux, то вам просто необходимо уметь обращаться с консолью. Сразу скажу, что консоль в Linux превосходит по функционалу консоль (cmd.exe) в Windows, но, видимо, консоль — это удобный инструмент, поэтому Microsoft разрабатывает новый вариант консоли — PowerShell.
Читать дальше →

jQuery для верстальщика (часть 1): стрелочки для ссылочек

Reading time2 min
Views2.9K
Эта мини-статья посвящена очень простой вещи, которая будет интересна, прежде всего, начинающим пользователям библиотеки <a href=«jquery.com>jQuery. Я покажу, как прикреплять к каждой ссылке небольшое изображение, чтобы выделить ее.

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

Введение в Zend Framework (продолжение)

Reading time12 min
Views17K
Продолжаем рассказ о Zend Framework. В первой части статьи была описана концепция программной архитектуры MVC, рассмотрена структура типового веб-приложения, базирующегося на Zend Framework и выполнена демонстрационная реализация контроллера и вида на его основе. Во второй части будет раскрыта тема модели и приведен пример взаимодействия приложения с базой данных.
Читать дальше →

Google Charts в новом обличье

Reading time1 min
Views1.9K
Hohli Charts

О появлении Google Chart API не написал наверное только ленивый. А я решил пойти чуть дальше и написать конструктор графиков для данного API. И в результате появился мини-стартап Hohli Charts...

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

Ежедневная архивация веб-проектов

Reading time1 min
Views2.6K
Вот такую вещь я сделал сегодня. А перед этим — ещё год назад, работая в веб-студии.
Предлагается вашему вниманию bat-скрипт для ежедневной архивации home-директории вашего сайта и базы данных (MySQL).

Требования: Windows (у меня на работе — 2000), команда mysqldump доступная сразу из командной строки, WinRAR или любой другой архиватор, работающий из командной строки.

@echo off
set DATE = `date \T`
@md "%DATE%"
cd "%DATE%"
mysqldump drupal -u root > "drupal-%DATE%.sql"
"C:\Program Files\WinRAR\rar.exe" a -inul "htdocs-%DATE%.rar" c:\apache\htdocs
cd "../"


Скрипт может запускаться вручную или планировщиком по расписанию (достаточно стандартного системного планировщика). Линуксоиды могут легко переписать этот скрипт для своей системы.

При выполнении в среде Windows 2000 генерируется директория типа "Пн 17.12.2007", а в ней два файла — "drupal-Пн 17.12.2007.sql" и "htdocs-Пн 17.12.2007.rar". Новый день — новая директория. Преимущество отдельной директории в том, что у вас может создаваться несколько бэкапов разных сайтов.

И напоследок — если кто-то знает, как изменить формат даты на 2007-12-12 — напишите пожалуйста.

Краткий обзор скриптов интернет-магазинов

Reading time2 min
Views26K
По моему, скрипт интернет-магазина является своего рода, лакмусовой бумажкой для веб-студий. У любой приличной компании или хорошего программиста, занимающихся созданием сайтов, в портфолио обязательно есть какой-никакой интернет-магазин и по нему можно точно определить профессионализм разработчика. Однако из-за того, что магазины охватывают широкий спектр технологий и функционала, создавать магазин каждый раз «с нуля» не имеет смысла. Гораздо проще взять готовый скрипт и исправить его под свои нужды. Возникает логичный вопрос — а какой скрипт брать? В этом я и попытаюсь разобраться.
Читать дальше →

Практический AJAX: что делать с кнопкой «назад» в браузерах

Reading time7 min
Views17K
Примечание: статья посвящена обзору проблемы неработающей кнопки «назад» в браузере при использовании AJAX-методов для передачи содержания страниц от сервера к клиенту. В статье рассматриваются основные принципы работы AJAX и возможные пути решения заявленной проблемы. Курсивом даны мои комментарии.

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

Ubuntu Gutsy и MCP51 (snd-hda-intel) — что сделать, чтобы зазвучало

Reading time2 min
Views3.3K
Похоже, что не только у меня, но и в большинстве вновь установлненных Ubuntu Gutsy на мамках со встроенным звуком на чипе MCP51 (определяется на большинстве *нихов как snd-hda-intel) есть проблемы со звуком — карточка просто никак не определяется.
Ниже я опишу, что нужно сделать, чтобы звук был

Как продавать программы через Интернет. Эпизод III – Сайт продукта.

Reading time3 min
Views2.5K

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

Отслеживание исходящих ссылок с помощью Google Analytics

Reading time2 min
Views4.3K
Google Analytics предоставляет широкие возможности по сбору и анализу статистики сайта, но, способ отслеживания исходящих ссылок, предлагаемый в справочном центре…

<a href="http://www.primer.ru" onClick="javascript:urchinTracker('/outgoing/primer_ru');">

…мягко говоря, не очень удобен.

Поскольку сама возможность очень интересная, я решил все-таки использовать ее и при этом обойтись без прикрепления onclick к каждой внешней ссылке.
Читать дальше →

Умный svn-клиент

Reading time1 min
Views30K
Полгода назад решил найти нового виндового клиента к Subversion. TortoiseSVN тормозил сильно, да и глючил время от времени.
Требования к новому клиенту были следующие: бесплатный (или относительно недорогой) продукт, живой и постоянно обновляемый, хороший и удобный UI, встроенные плагины, реализация не на Java.
Искал недолго. Спасибо Википедии (http://ru.wikipedia.org/wiki/Svn) за хороший список svn-клиентов. Выбор пал на два продукта: RapidSVN и SmartSVN. Первый написан на C++, второй на Java (решил просто посмотреть, хотя по требованиям не подходил).

RapidSVN оказался сырым и глючным (вылетал постоянно какой-то алерт). Прожил он максимум полчаса.

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

Программируем стартап Веб 2.0 на PHP

Reading time18 min
Views4.4K
Программируем стартап Веб 2.0 на PHP
Итак, вы воодушевлены идеей стартапа Веб 2.0. Вы полагаете, что придумали что-то оригинальное и свежее. Вам видится эффектная реализация вашей идеи. Вы верите, что ваш проект произведет революцию на рынке. Если именно такие мысли занимают вас, самое время заняться бизнес-планом. Планирование бизнеса – это отдельная дисциплина и об этом можно найти множество литературы. Впрочем, если вы не имеете опыта составления бизнес-планов, лучше прибегнуть к помощи профессионалов. Чем хуже спрогнозирован бизнес, тем выше риски его краха.

Однако допустим, что вы располагаете привлекательным бизнес-планом, вы ожидаете самоокупаемость проекта уже через 2 года от момента его старта, и предвкушаете ежегодный 50% рост его рекламного потенциала. В MS-Visio подготовлены многообещающие схемы пользовательского интерфейса проекта. И даже более того, ваш дизайнер, вооружившись модным руководством, в рекордные сроки обозначил графический вид проекта. Так, что сверстанные в лучших традициях безтабличной верстки типовые страницы пользовательского интерфейса дожидаются своего звездного часа в вашей локальной папке проекта.
Читать дальше →

Альтернативная замена popup окнам

Reading time1 min
Views2.8K
Класс LightWindow v2.0 (http://stickmanlabs.com/lightwindow/) предназначен для удобного визуального отображения практически любой информации (видео, flash, графика, страницы, формы ...). Работает на основе библиотеки Prototype + Scriptaculous.
Читать дальше →

Распространенные проблемы при управлении проектами (Web)

Reading time6 min
Views10K
Введение.
Вот уже 5 лет я занимаюсь веб — разработками. За это время приходилось и на коленке делать сайты за несколько сотен долларов и участвовать в довольно крупных проектах. За последний год меня не оставляет ощущение deja vu. Где-то я уже видел: нервных заказчиков, взбешенных менеджеров, заваленных работой разработчиков и сорванные сроки. При этом для меня ничего не изменилось. Были все те же нечеткие, постоянно изменяющиеся требования, прессинг, и ни одного проекта, сданного в срок…
И это, не смотря на то, что “грабли” были всегда одни и те же.
Читать дальше →

Аудиоплеер mp3 файлов на flash для вашего сайта — бесплатно

Reading time1 min
Views9K
Итак, для всех тех, кто хотел mp3-плеер на свой сайт, абсолютно бесплатно для вас мы сделали вот такой:


Да, да, абсолютно бесплатно.

Пользуйтесь на здоровье!

Документация – экономия времени или его бесполезная трата?

Reading time11 min
Views25K
Искусство организации рабочего времени (time-management) последнее время обретает всё большую популярность и если раньше это в основном относилось к менеджерам различного уровня, то теперь накопленные знания начинают применяться и в других областях деятельности компании.
Читать дальше →

Information

Rating
Does not participate
Location
Калужская обл., Россия
Date of birth
Registered
Activity