Search
Write a publication
Pull to refresh
80
0
Валентин Шергин @shergin

User

Send message

IE8: наиболее полное описание нововведений для программиста (и не только)

Reading time12 min
Views6.7K
Ниже представлен оригинал моей статьи принятой для публикации в отличный компьютерный журнал C`t, который, к сожалению, не выжил на рынке и пока пребывает в весьма подвешенном статусе. Статья не была опубликована из-за того, что выпуски больше не выходят. Поэтому я решил опубликовать ее на Хабре, благо она отлично попадает в формат.

Хотел бы сразу отметить, что статья достаточно объемная и часть информации уже была опубликована мной на Хабре. Цель данной статьи объединить максимальное количество информации про новую версию Internet Explorer и представить ее в приемлемом объеме.

В комментах принимаю замечания и исправления.
Читать дальше →

Применение Золотого сечения в Web

Reading time5 min
Views50K
К сожалению, в наше время перенасыщенное рекламой, у многих сложился стереотип, что дизайн – это просто симпатичная и яркая картинка.

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

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

На тему эффективного дизайна можно привести несколько ссылок:

10 принципов эффективного веб-дизайна
Пять дизайнерских правил применяемых в Web

Это из того что вспомнилось. Рекомендуется почитать блог Дизайн пользовательских интерфейсов и юзабилити.

Это, скажем так преамбула, которую можно отнести к любому направлению дизайна. В этой статье мы поговорим о Web-дизайне и о применении Золотого Сечения и Правила Третей.

Одной из главных задач эффективного дизайна в Web – это ясность и интуитивность. А также концентрация внимания пользователя на нужных местах страницы. Как этого добиваются?

Существует множество путей, например, использовать сетки, можно предпочесть самые элементарные решения или сосредоточится на простоте и удобстве.

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

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

Как делать деньги на стартапе?

Reading time2 min
Views751
Сегодня я смотрела видео с презентации одного из мемберов команды 37 signals о том, как они, оставаясь маленькой компанией (из 12 человек), не привлекая венчурные инвестиции, умудряются успешно продавать свой продукт и быть чертовски прибыльными.

Обобщая идею презентации могу сказать следующее:

1. Создайте хороший продукт
2. Установите разумную цену
3. Попросите ваших пользователей заплатить за него

Все просто как дважды два: если людям нравится ваш продукт и они находят его для себя полезным (желательно, чтобы он помогал им больше зарабатывать или экономить), то они заплатят за него разумную цену (должна составлять меньше, чем польза, которую приносит продукт).

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

Несмотря на то, что некоторыми это может рассматриваться как инсайдерская информация – нам нечего скрывать:

//2500 пользователей пользуются нашими платными услугами

2500 пользователей платной услуги получаются при допущениях:
V нашего рынка = 1000 000 пользователей (согласно проведенному нами
исследованию)
Мы занимаем 5% рынка = 50 000 пользователей
5% из них пользуется нашими услугами = 2500 пользователей. (это 25% от 1% ;))

#1 вариант#
базовый: от 5 у.е. — 50% пользователей
средний: от 10 у.е. 40% пользователей
продвинутый: от 15 у.е. — 10% пользователей
1250 * 5 + 1000 * 10 + 250 * 15=
6250 + 10 000 + 3750 = 20 000 у.е. месяц
***дальше по тексту без расшифровки

#2 вариант#
базовый: от 5 60%
средний: от 10 30%
продвинутый: от 15 — 10%
7500 + 7500 + 3750 = 18 750 месяц

#3 вариант#
базовый: от 5 70%
средний: от 10 20%
продвинутый: от 15 — 10%
8750 + 5000 + 3750 = 17 750 месяц

#4 вариант#
базовый: от 5 75%
средний: от 10 20%
продвинутый: от 15 — 5%
9375 + 5000 + 1875 = 16 250

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

Возвращаясь к идее 37 signals: у вас есть оооочень маленькие шансы стать еще одним facebook’ом, myspace или google. Они есть, но совсем небольшие. Кроме того, даже эти компании не стали «звездами за 1 ночь», а развивали свою базу пользователей постепенно, пусть и очень большими шагами.

А теперь спросите себя: готовы ли вы переработать свою стратегию таким образом, чтобы ваш бизнес действительно приносил деньги, а не имел виртуальную стоимость (как происходит со многими стартапами, которые потом покупают)? Если да, то вперед!
Я думаю, что мы свой выбор уже сделали.

Компоненты интерфейса Safari и IE7 в .psd

Reading time1 min
Views1.9K
Решил поделиться файликом, который я использую каждый раз, когда рисую макет или проектирую интерфейс.
Экономит мне кучу времени.

13.30 КБ

Скачать архив с пээсдэшником (49 kb)

UPD:
Ссылка от saltommeister
Контролы для Эксплорера, Файрфокса, Оперы и Сафари

Ссылка от niker
designerstoolbox.com/designresources/elements/

Ссылка от fatal
456bereastreet.com/archive/200409/styling_form_controls/

Ссылка от AlmeZ
Free Photoshop browser templates for webdesigners and screendesigners

Ссылка от 3fonov
Yahoo Design Stencil Kit

Архитектура REST

Reading time4 min
Views949K

Введение


В русскоязычной части Интернета присутствует большое количество статей, посвященных веб-службам на основе SOAP и XML-RPC, но почему-то почти ничего нет про вполне заслуживающую внимания (но менее распространенную) архитектуру RESТ.

В данной статье описываются основы этой архитектуры, возможности и примеры её использования.

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

Теория кэша

Reading time5 min
Views13K

Введение


Кэширование – это неотъемлемая часть всех сложных систем. Кэширование позволяет существенно увеличить скорость работы приложения, путем сохранения трудновычислимых данных для их последующего использования. Впрочем, не буду вдаваться в определения, большинство разработчиков отлично знает что это такое.

В данной статье я попытаюсь «разложить по полочкам» проблему кэширования, ориентированную прежде всего на сайты и системы управления контентом. Сразу предупреждаю, это мои личные соображения, которые не претендуют на истину в последней инстанции. Вся терминология так же моя, вы можете использовать её, если считаете нужным на своё усмотрение. Конструктивная критика приветствуется.
Читать дальше →

Сборка мусора после выгрузки модуля из родительского приложения

Reading time7 min
Views941
Во-первых, все написаное ниже относится к клиентской части web-приложений, созданных на JavaScript.
Во-вторых, это относится к web-приложениям, использующим модульную архитектуру для расширения своей функциональности (подгрузка/выгрузка модулей).
Читать дальше →

Триггеры в MySQL

Reading time2 min
Views304K
Триггер — это хранимая процедура, которая не вызывается непосредственно, а исполняется при наступлении определенного события ( вставка, удаление, обновление строки ).
Поддержка триггеров в MySQL началась с версии 5.0.2
Читать дальше →

Города России в именительном, предложном (местном) и родительном падеже.

Reading time1 min
Views8.7K
Приняв во внимание все замечания из предыдущего поста с базой городов, мы обновили ее и добавили еще родительный падеж. Теперь база отвечает на вопрос «Откуда?». Например: Вася из Ярославля.

Скачать:
  1. CSV
  2. MySQL

Автоматическая обработка: Jetfish
Вычитка и ручная корректировка Sofrus

Как и в прошлый раз, при желании, выражайте респект и уважуху им, а не мне. Я просто их прикрываю.

39-й способ скругления блока. Один тэг, одна картинка.

Reading time2 min
Views1.3K
Пару дней назад наткнулся на статью про 38 способов скругления блоков. Очень понравилось. Однако там я не встретил способа, которым пользуюсь уже около года. Он не требует лишних тэгов и требует загрузки только одной картинки (спрайт). Работает во всех современных баузерах и IE6+
Читать дальше →

О том, как гипербола помогла придумать новую систему рейтингов

Reading time2 min
Views1.3K

Здравствуй.

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

Последние несколько постов я рассуждал о системах рейтингов и в первой заметке на эту тему была система +1/-1. Очень простая для понимания, от того любимая многими. Я хочу улучшить ее, а точнее улучшить алгоритм подсчета. Визуально для пользователя ничего не изменится, он по прежнему будет иметь на выбор два варианта «+» либо «-».

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

Итак пусть в нашей системе абсолютный плюс это «+100», а абсолютный минус это «-50».
Читать дальше →

DOM DocumentFragment: быстрее быстрого

Reading time1 min
Views4.7K
Примечание: ниже перевод заметки от John Resig DOM «DOM DocumentFragments», в которой автор рассказывает об опыте использования DocumentFragment и сравнивает его быстродействие с обычным appendChild. Мои комментарии далее курсивом.

Недавно я игрался с DOM DocumentFragment в JavaScript, пробуя, что же можно с ним сотворить. Если вкратце, то DocumentFragment является облегченным контейнером для DOM-узлов. Он является частью спецификации DOM 1 и поддерживается во всех современных браузерах (был добавлен в Internet Explorer в 6 версии).

В процессе чтения я наткнулся на интересную вещь. Цитирую из спецификации:

Также различные операции — например, добавление узлов как дочерних для другого Node — могут принимать в качестве аргумента объекты DocumentFragment; в результате этого все дочерние узлы данного DocumentFragment перемещаются в список дочерних узлов текущего узла.


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

Альтернатива cookies посредством Java Script

Reading time5 min
Views14K
Поиск по хабру похожей статьи не дал, потому рискну поделится с теми кто еще не в курсе
Многие из вас сталкивались с проблемой хранения данных на клиенте. Первым делом в голову приходит cookies но ограничение хранения данных в размере не более 4kb не всех радует, сегодня если позволите я вам расскажу как посредством Java Script хранить около 100kb на клиенте.
итак приступим

12 лучших сайтов с креативными ссылками (для дизайнеров)

Reading time1 min
Views7.1K
Подборка из 12 сайтов в ассортименте которых, большой выбор креативных ссылок: портфолио, фотоколлекций, медиа-дизайн, иллюстраций и т.д.

Designcollector


The FWA


Creativenews

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

css fix для различных браузеров

Reading time2 min
Views12K
Представьте себе абстрактный разговор абстрактного заказчика с абстрактным верстальщиком.

— У тебя бага в менюшке, все наверх съехало, — говорит заказчик.
— Посмотрел во всех браузерах, нету! Ты в каком смотришь? — говорит верстальщик.
— В фаерфоксе.
— Нормально все там, — говорит верстальщик, просмотрев сайт во всех версиях фаерфокса.
— Осталось бага. Если это важно, то я с мака.

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

16 действительно полезных решений для JavaScript

Reading time16 min
Views7.3K
© shamansir.wordpress.com

Представляю вам набор функций, которые у меня лежат в отдельном файле utils.js — это функции, которые я использую чаще всего. Они стараются быть кроссбраузерными и проверены на IE6/7, FF2 и Safari 2 и на боевой, сложной системе, в XHTML документах. Должны, по идее, работать, и на других, но не очень старых версиях браузеров — проверку браузера я использовал только в исключительных случаях. Некоторая часть из них, конечно же, просто нарыта на просторах интернета (где — обычно указано) и заимствована ввиду открытости, а большая часть — сконструирована из многих ресурсов и своих идей (и советов коллег), дабы работать на ура — поскольку часто в разных скриптах не учитываются разные тонкости, которые, тем не менее — при ближайшем рассмотрении — оказываются общностями :), ну и быть довольно читабельными.
Узнать

Букмарклет, подгружающий внешний скрипт

Reading time1 min
Views1.2K
В текущем проекте была задача написания полуавтоматического граббера страниц. Для этого необходимо было делать инъекцию скрипта в текущую страницу. Решил таким букмарклетом:

<a href=«javascript:(function(){var d=document,s;
s=d.createElement('script');
if(typeof s!='object')s=d.standardCreateElement('script');
s.src='http://example.com/js/bookmarklet.js';
s.type='text/javascript';
d.body.appendChild(s);})();»
>Do it!</a>


В более читаемом виде:

(function(){
 var d = document, s;
 s = d.createElement('script');
 if(typeof s != 'object'){
  s = d.standardCreateElement('script');
 }
 s.src = 'http://example.com/js/bookmarklet.js';
 s.type = 'text/javascript';
 d.body.appendChild(s);
})();


Оттестировано в IE6, IE7, FF2, FF3, Opera 9.2, Opera 9.5, Safari.

Оптимизация размера файлов: уплотняем поток

Reading time1 min
Views1.4K
После ряда статей на тему минимизации размера файлов и распределения их по нескольким хостам у меня возник вопрос: какое оптимальное соотношение между числом (или размером) «встроенных» и внешних файлов? Какая часть страницы должна загружаться вместе с основным HTML-файлом, а какая — только с внешними файлами? Для решения этих и ряда других вопросов я собрал тестовое окружение в виде одной странице, для которой применены различные оптимизационные техники (заодно и посмотрел, как реально все эти техники влияют на скорость загрузки страницы).

Шаг первый: простая страница



Начал я с обычной страницы, для которой использовалось только gzip-сжатие HTML-файла. Это самое простое, что может быть сделано для оптимизации страницы (на самом деле, причиной было то, что мне не хотелось специально отключать сжатие для одного хоста, а потом его включать обратно :). Данная страница бралась за основу, с которой сравнивалось все остальное.

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

Сжатие при помощи canvas и PNG-картинок

Reading time1 min
Views2.2K
Примечание: ниже находится перевод статьи «Compression using Canvas and PNG-embedded data». Автор предлагает на суд читателей еще один способ загрузить в клиентском браузере JavaScript-библиотеку, передав при этом минимум данных. Для этого используется PNG-картинка и объект canvas. Мои комментарии далее курсивом.

Сжатая JavaScript-библиотека в виде PNG-файла

Недавно у меня появилась идея, что можно хранить исходный Javascript-код в PNG-картинке, а затем получать его через метод getImageData() элемента canvas. К несчастью, сейчас это означает, что только такой подход будет работать только в Firefox, Opera Beta и последних ночных сборках WebKit. Пока еще никто не указал мне, насколько gzip опережает данный метод по степени сжатия, я хочу сразу сказать что рассматриваемый метод никак не может быть практической альтернативой физическому сжатию. Чуть раньше сегодня я уже писал о сжатой версии в 8Кб скрипта Super Mario, для которого использовалась эта техника (подробнее можно прочитать в заметке про кодирование). Здесь я приведу лишь некоторые детали о действительном положении вещей.

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

Information

Rating
Does not participate
Location
Россия
Works in
Date of birth
Registered
Activity