Разработка || 1 июля (01:46) || Комментарии
В работе новый фреймворк, о котором я уже писал недавно. Сейчас делаю на его альфа-версии один сайт для швейцарских заказчиков. Когда будет релиз (с документацией), он будет, вероятно, доступен для свободного скачивания. Его нельзя назвать гибким, как Drum Bun, он именно для PHP-разработчиков. Наконец-то придумал название.
SPARTUS Framework
Название — литовское «быстрый, скоростной, спорый» — касается и работы (нет перегруженности функционалом), и скорости разработки и изучения. Разработан как основа для сайтов с любым функционалом, допускает любое количество расширений. По-спартански легковесный и минималистичный. Альфа-релиз. Apache + .htaccess, PHP 4/5, MySQL 4/5 (последнее опционально, при необходимости авторизации и работы с новостями).
Особенности: красивые URL, запрет прямого доступа к страницам и функциональным разделам, малое количество файлов, настраиваемость.
Состав: ядерный файл (менее 3 Кб), конфигурационный файл, .htaccess, закрытые от прямого доступа директории для страниц, функциональных страниц, шаблонов и открытые для прямого доступа директории для изображений, стилевых таблиц и сценариев.
За кистью вслед || 1 июля (01:35) || Комментарии (1)
Дождь был лучшим каллиграфом этой ночи
Танцуя задумчиво и ритмично и вздыхая на зеркалах туманных
Оставлял на моём и твоём окне признания строчки
На одному ему ведомых древних и неразгаданных
А когда не хватало слов, бросал мокрые многоточия
Не снимая чёрной шляпы своей и алмазных перчаток странных
Пел нежным голосом шелестящую музыку ночи
Движения тела блестящего стройного с тайною спаянные
Поглощали все взгляды и вздохи, глубоко проникая очень
Заставляя забыть всё, дышать его дыханием и нечаянно
Двигаться в такт его струям, любоваться вспышками его дочери —
Ослепительной молнии на плаще дождя, — тая
Ощущать дождь в себе каждым волосом, каждой точкою
Своего тела. Наслаждаться. Помнить — и дождь угасает...
27.06.09
Linguarium || 1 июля (01:34) || Комментарии
Нашёл замечательный сайт: «
Словари русского языка». Поиск по базе синонимов, толкований, переводы с/на разные языки: основные европейские, иврит, венгерский, монгольский, литовский, финский, эстонский, польский, суахили, азербайджанский, арабский и другие. Поиск сразу по нескольким словарям. Интерфейс не самый интуитивный, но разобраться стоит.
Копилка || 23 июня (15:11) || Комментарии (1)
Юзек просыпается среди ночи, хватает её за руку, тяжело дышит:
«Мне привиделось страшное, я так за тебя испугался…»
Магда спит, как младенец, улыбается во сне, не слышит.
Он целует её в плечо, идёт на кухню, щёлкает зажигалкой.
Потом возвращается, смотрит, а постель совершенно пустая,
- Что за чёрт? – думает Юзек. – Куда она могла деться?..
«Магда умерла, Магды давно уже нет», – вдруг вспоминает,
И так и стоит в дверях, поражённый, с бьющимся сердцем…
Магде жарко, и что-то давит на грудь, она садится в постели.
- Юзек, я открою окно, ладно? - шепчет ему на ушко,
Гладит по голове, касается пальцами нежно, еле-еле,
Идёт на кухню, пьёт воду, возвращается с кружкой.
- Хочешь пить? – а никого уже нет, никто уже не отвечает.
«Он же умер давно!» - Магда на пол садится и воет белугой.
Пятый год их оградки шиповник и плющ увивает.
А они до сих пор всё снятся и снятся друг другу.
Елена Касьян
Разработка || 22 июня (21:28) || Комментарии
По ходу дела так вышло, что с утра сегодня написал основу нового PHP-фреймворка, теперь с базой данных. Очень маленький, с ограниченной функциональностью, но для развёртки простого сайта очень удобен. Красивые URL, регистрация и авторизация опциональны, новостная колонка, шаблоны.
Новостная колонка в работе, бэкэнд тоже.
Нужно, чтобы пароли были уникальными. Особый пароль административный.
Объявляется конкурс на лучшее название. Или идею названия.
Разработка || 19 июня (22:47) || Комментарии
1. Изучение ТЗ (технического задания). Переговоры с заказчиком, уточнение общей концепции и немаловажных деталей, обсуждение вариантов, нахождение компромиссов между желаемым и возможным. Вопреки сложившемуся мнению, это тоже работа, и часто тяжёлая.
Отдельно: оценка времени и стоимости работ.
2. Разработка концепции сайта. Принятие решений относительно типа дизайна, стилистики, привлекаемых образов, типа вёрстки, программной основы, хостинга и т.п.
3. Варианты дизайна (общего для всех типов шаблонов сайта или для главной и некоторых внутренних страниц), обсуждение с заказчиком.
4. Создание окончательного дизайна для всех типов шаблонов страниц сайта. Проработка деталей для конкретных страниц.
5. Вёрстка шаблонов. Параллельно: тестирование на разных типах мониторов (жидкокристаллические и ЭЛТ) с разными разрешениями (800, 1024, 1280, 1400, 1650 пикселей по ширине), в разных браузерах (Internet Explorer, Firefox, Opera, Safari и другие) разных версий под разными операционными системами (Windows, Linux, MacOS) разных версий; устранение неполадок, возникающих из-за несовместимости некоторых технологий с конкретным браузером, и непрогнозируемых браузерных ошибок. Отладка после валидации на соответствие стандартам Консорциума WWW.
6. Деплоймент (развёртка, установка) программной основы (движка, engine, фреймворка) с системой управления содержимым (CMS). Либо (в особых случаях) написание программной основы с нуля. Проектирование структуры страниц и уровней сайта, проектирование базы данных. Тестирование.
7. Интеграция свёрстанных в соответствие с гайдлайнами дизайна шаблонов в систему. Отладка вёрстки на тестовом сервере.
8. Написание недостающей программной функциональности (отдельные фрагменты кода или целые модули системы). Тестирование.
8. Работа с контентом (содержимым), тестирование сайта, наполненного содержимым. Обработка графики, текстов, редактирование, корректура.
9. Настройка системы: виртуальные пользователи и их полномочия, почтовые уведомления, отладка работы с RTE (Rich Text Editor, текстовый редактор для визуального форматирования текста), файлового менеджера, пользовательских настроек.
10. В необходимых случаях деплоймент дубликата системы на тестовом сервере для демонстрации заказчику. Тестирование в новом окружении.
11. Деплоймент сайта на «живом» сервере, тестирование всей системы.
12. Работы по увеличению посещаемости сайта, по оптимизации для поисковых механизмов, обмену ссылками, регистрации в баннерообменных сетях.
Продолжительность всех этапов оценивается по-разному в зависимости от поставленных задач, сложности и объёма работ.
Разработка || 3 июня (10:53) || Комментарии
Иногда возникает необходимость делать на JavaScript какие-то вещи постоянно, так что проще иметь под рукой какое-то количество кода, а потом составить из него свою библиотеку, откуда можно брать функции и не думать о том, чтобы каждый раз писать одно и то же. Первой среди таких функций наверняка будет функция переключения видимости:
function showHide(id) {
document.getElementById(id).style.display = (document.getElementById(id).style.display=='block') ? 'none' : 'block'
}
Если блок скрыт, то при вызове функции он показывается. Если показан, то скрывается.
А в нужном месте достаточно будет вызвать эту функцию с нужным идентификатором блока.
Ну а когда таких функций наберётся достаточное количество, можно оформить их в
свой фреймворк и включать в каждый проект.
За кистью вслед || 2 июня (01:17) || Комментарии (1)
Я вошёл в последний зал и прямо перед собой увидел девушку своей мечты. Стройная, в светлом легчайшем платье, высокая — с чуть приподнятым подбородком, с лучистыми глазами, невообразимо тёплого цвета волосами волнами на плечи, курносым носиком и едва-едва насмешливой улыбкой. Она стояла передо мной во всей красе, улыбалась, и я не мог вымолвить ни слова.
Потом подвинул скамеечку и сел перед картиной, на которой была изображена эта девушка. Я не знал, какая сила будет в состоянии оторвать меня от неё. Я просто, не сдерживая восхищения, смотрел и пытался запомнить её облик, осанку, взгляд, улыбку, движение руки с веером,— у меня было ощущение, что она вот-вот оживёт. Шагнёт в зал, убежит, и только лёгкий звук шагов останется для меня — я любовался её ногами, почти целиком скрытыми длинным платьем.
Я вздохнул, поднял глаза выше, и тут она, мило улыбнувшись, показала мне язык.
Я вздрогнул и вскочил. И вовремя, потому что в зал входила старушка смотрительница. Если бы она увидела меня спящим перед картиной, получилось бы очень неловко. Я кинул ещё один взгляд на девушку и вышел из музея на вечернюю улицу.
2 июня 2009
Разработка || 1 июня (11:21) || Комментарии
Оказывается, есть ещё более универсальное решение. Из мелких неудобств порождает пространство для полосы прокрутки по горизонтали в Опере, но это не критично: самого горизонтального скроллинга не возникает нигде.
CSS:
div.top-bar {
width: 100%;
}
div.top-bar-container {
position: relative;
float: right;
right: 50%;
}
div.top-bar-container-center {
position: relative;
right: -50%;
}
HTML: внешний блок с классом
top-bar, в нём блок
top-bar-container, в нём, в свою очередь, блок
top-bar-container-center, а уже в нём содержимое. Громоздко, но кроссбраузерно...
Разработка || 29 мая (12:59) || Комментарии (2)
WordPress вообще очень хорошая блогообразная CMS; плюсом является то, что систему можно использовать не только как блог, но и как сайты другого типа. Например, форум прикрутить или назначить главной страницей статическую. В общем, при желании можно сделать из него
конфетку.
Несомненно, 2-3 мегабайта исходников (это только в архиве) — явный перебор. Скорость работы из-за этого сильно снижается.
Есть несколько вещей, которые кем-то могут считаться плюсами, а кем-то минусами. |
полный текст