Pull to refresh
18
0
Василий @PyroRed

Пользователь

Send message

Делаем Liquid Resize своими руками

Reading time12 min
Views16K
Вы наверное уже слышали о технологии масштабирования Liquid Resize, которая учитывает содержимое изображения. Если вам интересно как оно все работает и как можно реализовать все это самому, то читайте далее (осторожно, много рисунков).


(НЛО прилетело и растянуло этот рисунок здесь)
Читать дальше →

Design Review vs Design by Committee

Reading time2 min
Views5.7K
Мне в основном очень нравятся архитекторы в Microsoft. Некоторые более, чем другие, а некоторые — совершенно замечательные.

Одного из совершенно замечательных зовут Дэвид Блайс (David Blythe), и он архитект в Windows в области графики. Дядька раньше дизайнил OpenGL в SGI, писал по нему книжку, а сейчас вот работает в том числе над Direct3D. Дядька совершенно монструозный и замечательный. Я с ним говорил минут 20 и просветлился больше, чем за два предыдущих месяца. Читал его гуидлайны про API design и опять же радовался.

Отрывок на сегодня:
«DESIGN BY COMMITTEE. Avoid design by committee. There should be a single person with final say in the design… and this person should have good architectural experience and instincts.»
Читать дальше →

Безразмерная разметка с помощью relative (без float)

Reading time2 min
Views4.1K
Навеянно этой темой.
Пример, как это работает.

1. Введение


Представим, мы имеем класс relative, внутри которого имеется текст, и не задаём ему width:
#bar{
position:relative;
border:5px solid #00FFFF;
padding:10px;
height:200px;
}
мы получим резиновый блок:
<div id="bar">
text
</div>


При этом, блок обладает неизменными padding+border и резиновым width, таким, что width_px+padding_px+border_px = 100%.
Для absolute блоков, такой трюк не прокатывает.
Читать дальше →

Управление потоком в CSS: создаём контекст форматирования

Reading time4 min
Views5.4K
Управлять потоком можно не только свойствами clear или overflow. Возможно, вы найдёте полезным для себя использование display:inline-block или display:table-cell, способных полностью заменить вам упомянутый overflow, избавляя вас от опасности указания размеров элемента, а также предоставляя дополнительные возможности.

Статья не содержит универсальных решений, но открывает вашему взору дополнительный инструментарий для управления потоком.
Читать дальше →

Clear или overflow:hidden — очистка всего потока или создание контекста форматирования?

Reading time2 min
Views35K
clear и overflowСвойство clear со значениями left, right, both действительно очищает поток в отличие от overflow со значеним hidden, которое создаёт отдельный контекст форматирования для выбранного элемента, тем самым локализуя действие свойства float внутри элемента к которому применён.

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

Тонкости свойства disable у кнопок формы, отправляемой на сервер (Как делать кнопки неактивными)

Reading time3 min
Views71K
Уже неоднократно на хабре (вот в этой публикации и в этой) ставился вопрос о том, что было бы хорошо кнопкам формы, отправляемой на сервер, ставить свойство disabled = "disabled".

Однако, до сих пор так и не разобрались, зачем это нужно и как все-таки это делать. Казалось бы, что может быть проще и о чем здесь вообще можно разговаривать, ан нет — на поверку все оказалось не так тривиально. Сразу замечу, что нижеследующие рассуждения применимы к обеим типам форм: как отправляемым через обычный SUBMIT, так и с помощью AJAX.
Читать дальше →

jQuery Alert Dialogs — замена стандартным функциям Alert(), Confirm() и Prompt()

Reading time2 min
Views39K
image
Плагин jQuery Alert Dialogs призван заменить основную функциональность стандартных предупреждений JavaScript, alert(), confirm(), и prompt() функций. Они полностью настраиваются с помощью CSS (это позволит выглядеть вашему сайту гораздо более привлекательно). И вы также можете настроить пользовательский заголовок для каждого диалогового окна.

Эти методы моделируют обычные модальные диалоговые окна. Они автоматически изменяют свое положение при изменении окна браузера. Если включить jQuery UI Draggable плагин, то окна можно перемещать, перетаскивая их за заголовки. В отличие от стандартных JavaScript функций, вы можете использовать HTML в сообщении. Например, чтобы задать переход на новую строку, вы можете использовать либо \n, либо < br / >.
Читать дальше →

Демон конвертации видео в FLV

Reading time3 min
Views3.8K
Решил поделиться недавно написанным кодом демона для видеохостинга.
Принцип демона прост. Демон смотрит в папку, куда загружаются видеофалы, и при появлении там новых, копирует в другую папку, запускает в фоне процесс конвертации, создает превьюшку, и копирует полученное видео в папку пользователя.
Читать дальше →

Терминальный офис: Linux vs Windows — holy war: Part I

Reading time3 min
Views17K
Преамбула: Есть типичные офис, на 15 локальных пользователей + 5 удалённых, круг задач прост: 1С + Офис + Интернет + Почта + Печать. Задача сделать устойчивое и недорогое (т.к. Кризис на дворе) решение.

Собственно решений-то всего 2: Терминальный сервер на Windows || Терминальный сервер на Linux. Standalone PC мы не рассматриваем, т.к. это не решение, а гемморой сплошной.

Сразу определимся с железом для терминального сервера: CPU 2 Quad Xeon 5405, 6Gb RAM, RAID 1 SATA 1 Tb (знаю, что плохо, но на SAS денег нет, тем боллее, что БД это отдельный сервер). Почему такое железо — задача хорошо параллелиться, чем больше ядер, тем лучше. Памяти 20 юзеров * 200-250 Мб (1С и офис её любят) + система. Договоримя, что и настройка/поддержка Windows и Linux — стоит одинаково

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

Графика в LaTeX. Часть I

Reading time3 min
Views36K
Доброе время суток! Недавно заметил пояление на Хабре блога, посвящённого системе LaTeX. И решил поделиться теми небольшими знаниями, которые у меня есть.
Не буду повторяться и описывать что такое LaTeX, зачем он нужен и как устанавливать пакеты. Об этом уже много написано, в том числе и в этом блоге, да вы и без меня всё это знаете. Здесь я решил описать как пользоваться графическими возможностями LaTeX'а, так как недавно готовил эту тему для университета. Материала довольно много, поэтому пришлось разбить на части. В этой части я расскажу:
  • что такое псевдорисунки,
  • как пользоваться пакетом XY-pic.

Итак, по порядку.
Читать дальше →

Организуем релевантный поиск по разнородным данным с помощью Sphinx

Reading time10 min
Views22K
В одном из текущих проектов возникла задача поиска по данным разного типа, которая была успешно решена с помощью зарекомендовавшей себя поисковой машины Sphinx, но обо всем по порядку. 

Постановка задачи


В проекте есть на данный момент 2 зоны:
  1. географическая зона, реализованная на базе Google Maps, которая отображает нанесенные пользователями на карту географические объекты (маркеры, маршруты и области);
  2. информационная зона, которая представляет собой большой иерархически организованный каталог, содержащий информационные материалы.
Необходимо было решить задачу одновременного текстового поиска по 3-м типам объектов: географическим объектам, категориям информационной зоны и материалам информационной зоны — c возможностью фильтрации по дате публикации объектов и категориям, к которым они относятся.
Решаем задачу

Как отправлять уведомления с сайта по SMS?

Reading time3 min
Views88K
На днях озаботился доставкой SMS уведомлений с нашего сайта по абонентскому обслуживанию компьютеров в Киеве, пользователи создают тикеты, администраторы должны уведомляться о проблеме у клиента моментально.

Уже сейчас работает уведомление по e-mail, icq.
Но как быть, если администратор в дороге, и не имеет доступа к почте и мессенджеру? Нужно сделать уведомление SMSкой. Это будет полезно как админу, так и пользователю, т.к. последний сможет уведомиться об обработке его проблемы/заявки.

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

live: новый способ задать обработчик события

Reading time2 min
Views2.4K
imageКак известно, недавно вышла бета версия jQuery 1.3. Пока она сырая, тестируется, и в ней еще есть неприятные баги. Но знакомится с нововведениями стоит и я хотел бы кратко рассказать об одном из них.

Функция «live» представляет собой аналог функции bind, по синтаксису и сути они идентичны, но между ними есть одно огромное различие, которое лучше всего демонcтрирует следующий пример.

Попробовать демо. Пояснения под катом.

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

Поиграем в CacheGraph?

Reading time3 min
Views698
imageПредположим у Вас есть сайт. Предположим вы его оптимизировали по самое «немогу», но всеравно хочеться больше.
Лично мне хотелось, но долгое время не получалось.
Когда я победил тормознутость базы кэшированием запросов, тормознутость блоков — кэшированием блоков, а целые страницы кэшировать я не мог…
Cайт конечно стал работать много быстрее, но начал тормозить уже… мемкэшед?
Читать дальше →

Сравнение средств проектирования

Reading time3 min
Views92K

Учёба в универе и работа наложили свой отпечаток, оказалось, что нужно не только «кодить», но и уметь проектировать те или иные «задачи». Знакомство моё с UML началось с State Machine(конечный автомат, если по русски и приближённо).
Читать дальше →

Я.Субботник: вёрстка, API и другое…

Reading time1 min
Views1.1K
31 января 2009 года к 10:30 Яндекс приглашает в гости всех, кому интересно поговорить о HTML-вёрстке, CSS, API и обсудить эти темы за чашкой кофе на уютной кухне Яндекса.

На нашем Cубботнике:

  • Виталий Харисов расскажет про CSS Framework своими руками.
  • Вадим Макишвили — про вёрстку в IntelliJIDEA.
  • Евгения Фирсова — про процесс деплоймента вёрстки.
  • Наталия Макишвили — про вёрстку для мобильных устройств.
  • А также Вадим Макеев: «С ножом против паровоза. Оптимизация и нарезка графики для профессиональной вёрстки».
  • API Яндекс.Карт

Программу Субботника можно посмотреть здесь.
Мы ждем всех в офисе на Самокатной
Участие в Субботнике бесплатное и по предварительной записи.


Юлия Симутенко, обучение и развитие

Оптимизация изображений, часть 5: AlphaImageLoader

Reading time1 min
Views1.4K
Примечание: ниже перевод очередной заметки «Image Optimization, Part 5: AlphaImageLoader» из блога YUI. Stoyan Stefanov на этот раз рассказывает о тонкостях применения фильтра AlphaImageLoader для IE. Мои комментарии далее курсивом.

Это пятая часть серии статей про оптимизацию изображений. С предыдущими частями можно ознакомиться по адресу:

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

Маленький экскурс


Как было сказано в одной из предыдущих статей, PNG могут быть нескольких видов, которые могут быть разделены на 2 основных:
  • Индексированные (палитра), их также называют PNG8, можно использовать до 256 цветов.
  • Полноцветные PNG, которые также называют PNG32 или PNG24.


Читать дальше на webo.in →

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Date of birth
Registered
Activity