Воскресный вечер брюзжания

spy

Или вот, скажем, завелась такая мода в этих ваших интернетах: персонализация. Ходите вы по сайтам, по кнопкам тычите, а умные роботы всё это запоминают и всё про вас знают. И как только вам что-то захотелось, они тут как тут навытяжку стоят: а вот вы искали то-то, так может вам вместе с этим понравится этакое, так как 85% домохозяек именно это и берут. Да и ещё рекламу вам показывают только такую, которая вам подходит, что несказанно повышает продажи и увеличивает мировую экономику.

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

Вещи эти, несомненно, прогрессивные и, конечно же, двигают цивилизацию к светлому будущему. Но даже при их внедрении, нужно думать головой. А если не думать, они могут вызывать подозрение, что за вами следят и чувство лёгкого дискомфорта. Это у меня, человека немного разбирающегося в этих ваших интернетах и улавливающего причинно-следственную связь его процессов. А у более гуманитарных личностей, это может вызвать и более сильные эмоции, вплоть до беспричинного страха.

Остальной текст под катом

Конфигурация сайта 2.2: совместная разработка (наследование)

Продолжаем разговор из прошлых двух частей.
Конфигурация сайта 1: введение
Конфигурация сайта 2.1: совместная разработка (платформы)

В прошлой части у нас массив, соответствующий какой-то платформе (например, vasya), вливался в массив некой базовой конфигурации (config.php). Назовём это: «vasya наследуется от config».

Раньше я делал так:

config — конфигурация системы на рабочем сервере, от неё наследуются конфигурации разработчиков.

Оно не всегда удобно. Лучше наследоваться от какой-то базовой конфигурации, а рабочей сервер поставить в один ряд с разработчиками. Тем более в нашем примере рабочих серверов у нас несколько.

Наследуем всё от базового конфига и введём ещё промежуточные этапы:

Остальной текст под катом

Конфигурация сайта 2.1: совместная разработка (платформы)

В прошлой статье мы разобрались, как можно хранить конфигурацию системы и как её можно использовать.

Однако, мы подразумевали простейший вариант, когда система работает в единственной копии на сервере. Усложним положение:

Итак, бравые разработчики Вася, Петя, Миша и Гриша в поте лица разрабатывают очередную социальную сеть нового поколения. Каждый ведёт разработку в своей локальной версии на своём компьютере. Наработки они выкладывают на локальный тестовый сервер (где-нибудь в офисе в шкафу пылиться). Выкладывают, конечно, не по FTP, а с использованием какой-нибудь системы контроля версия, например, Mercurial.

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

Итого, система работает уже не в одной копии, а в восьми (4 разработчика, локальный сервер, 3 рабочих сервера). Назовём то, где работает конкретная копия системы платформой и дадим каждой имя (платформа server.1, платформа vasya, платформа local и т.д.).

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

Подумаем, как это можно организовать.

Остальной текст под катом

Ping

Эх, прыгнуть бы с крыши,
Башкой об асфальт.
Но надо работать…

Эта чепуха тут только для проверки RSS.
Вчера обновил Feedburner-плагин до последней 1.42.
Сегодня опубликовал статью и, что цуко характерно, нет её в RSS.

Вернул старую версию, посмотрю что будет.

До кого не дошла ссылка на утреннюю статью, а дошла эта: Конфигурация сайта 1: введение.

Конфигурация сайта 1: введение

Сегодня заведём разговор на такую, казалось бы простую, тему, как конфигурация сайта. То есть поговорим о таких вещах, как параметры подключения к БД, различные настройки, как всё это хранить и как со всем этим работать.

Разобьём этот разговор на три части:

  • В текущей рассмотрим различные варианты организации конфига. Эта часть в первую очередь ориентирована на новичков.
  • Во второй задумаемся над более сложными вещами. Например, как поддерживать набор отличающихся конфигов для одной системы.
  • А в третьей части попробуем всё это высечь в коде.

Остальной текст под катом

Системный администратор (Unix), Петербург, 25-30 т.р

Спасибо, вакансия закрыта

Ноги

Требуется системный администратор unix-систем (в основном FreeBSD и/или Debian) для работы системным администратором.
Основное требование: разбираться в системном администрировании unix-систем.

Условия: работа в офисе, в Санкт-Петербурге, где-то в центре, недалеко от метро (в ближайшее время переезжаем, ещё неизвестно точно куда).
Молодой, динамичный коллектив, высокие цели и бла-бла-бла… чай, кофе и печеньки, возможно обеспечение сисадминским свитером.

Бюджет на данный момент: 25 000 — 30 000 рублей в месяц.

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

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

Остальной текст под катом

В новое десятилетие с новым goDB

goDB logo

Вот, наконец, и закончились праздники. Трудовые люди возвращаются с опостылевшего отдыха на свои любимые рабочие места. И, конечно же, большинство из них будет использовать на работе goDB.

goDB, это иновационная нано-библиотека для работы с MySQL из PHP.

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

go\DB 2.0 на гугло-коде

  1. Система адаптеров позволяет адаптировать go\DB под любой тип СУБД
  2. Вы можете реализовать свой тип СУБД, написать к нему goDB-адаптер и выслать нам
  3. Требуется PHP 5.3
  4. go\DB 2.x ваще не совместима с goDB 1.x
  5. Переработаны системы плейсхолдеров и форматов представления результата
  6. Результат можно получать и сразу из query() и в виде объекта
  7. Ещё не реализованы по сравнения с 1.x транзакции, мультизапросы и подготовленные выражения
  8. Не все тёмные места до конца протестированы, так что на данный момент go\DB 2 находится в бете
  9. Ну и много всего интересного можно подробно узнать в документации

P.S. goDB 1.x продолжает развиваться параллельно и в ней пофикшен небольшой баг. Скачать goDB 1.3.1