Как стать автором
Обновить
0
0

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

Отправить сообщение

Немного математики, или Почему я не покупаю лицензионный контент

Время на прочтение2 мин
Количество просмотров7.8K
Копирайт и т.н. «правообладатели» — предмет бесконечного холивара, в т.ч. на Хабре. Авторы и правообладатели твердят, что из-за «любителей халявы» они разоряются и помирают с голоду. В нижеприведённой статье я попытаюсь показать, что индустрия умирает исключительно вследствие неспособности авторов договориться.

Представьте, что появился сервис, который за 200 рублей в месяц предоставляет полный и неограниченный доступ ко всей закопирайченной музыке, фильмам и играм. Вы согласны оплачивать такой доступ?

«Не треснет ли у тебя рожа, милейший?!» — наверняка подумал ты, %username%, читая предыдущий абзац. Не, не треснет, отвечаю я.

Давай посчитаем вместе
Всего голосов 334: ↑258 и ↓76+182
Комментарии681

Подборка 10 css3 кнопок

Время на прочтение4 мин
Количество просмотров91K
С каждым днем новые стандарты css3 и html5 всё более глубоко входят в жизнь верстальщиков и web-разработчиков, а браузеры с каждым днем становятся все более совместимыми с этими стандартами.



В связи с этим событием хотелось бы представить Вам подборку 10 css3 кнопок, которые смогут облегчить вам жизнь при верстке и создании web приложений.
Читать дальше →
Всего голосов 266: ↑227 и ↓39+188
Комментарии79

Мысли о свободном ПО в области систем учета

Время на прочтение3 мин
Количество просмотров17K
Недавно пробегала тема про существующие открытые продукты в области учетных систем (CRM, ERP, автоматизация бух. учета и прочее). Не участвовал в дискуссии, которая местами была жаркой, но разные мысли в голове крутились. В итоге всех размышлений родился этот топик. Чтоб не утруждать читателей ходом размышлений вынесу до ката их резюме:

Дайте нам(разработчикам систем учета) удобный инструмент (платформу, framework) — и открытые учетные системы (в т.ч. и системы автоматизации российского бух. учета) появятся!

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

Читать дальше →
Всего голосов 53: ↑45 и ↓8+37
Комментарии215

Храните мелкие картинки в CSS

Время на прочтение10 мин
Количество просмотров147K
Храните мелкие картинки, которые нельзя засунуть в спрайты, в data:image base64 в CSS — это экономит кучу запросов к вебсерверу.
Читать дальше →
Всего голосов 144: ↑105 и ↓39+66
Комментарии131

Навыки проведения эффективной презентации

Время на прочтение1 мин
Количество просмотров16K
4 февраля, в рамках серии внутренних образовательных семинаров, у нас выступил Евгений Марченков — эксперт по стратегическим технологиям компании Microsoft, обладающий многолетним опытом работы и выступления на ключевых мероприятиях компании.

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



«Зачем вообще нужно эффективно презентовать себя? Всё очень просто — вы повышаете свою известность. Если вы ездите на конференции, рассказываете презентации, делитесь технологиями, то о вас узнают, о вас пишут в Интернете, и вы постепенно становитесь брендом.

Как только вы становитесь известным, вы добавляете известности своей компании. Вы становитесь известным, вас признают экспертом, куча конкурентов говорят «Переходи к нам!», а ваш шеф говорит «Оставайся с нами, мы тебе зарплату повысим» и ты остаёшься. Всё это благодаря тому, что вы начинаете выступать».

Читать дальше →
Всего голосов 25: ↑18 и ↓7+11
Комментарии16

На чём зарабатывают те, кто пишет Linux?

Время на прочтение1 мин
Количество просмотров33K
Многие компании занимаются разработками бесплатного софта, в частности, операционных систем. Ubuntu, Linux, Mandriva Linux, Fedora… Перечислять можно долго. Пользователи с удовольствием пользуются программами, но при этом мучаются вопросом: а откуда же, в таком случае, берутся деньги у тех, кто не продаёт свой продукт?

Предполагается, что такие предприятия существуют на деньги спонсоров, государства… Какие только догадки не строят в Интернете юзеры. Редакция интернет-телеканала SLTV опросила три компании: Mandriva, Canonical и Red Hat. Их представители вкратце описали бизнес-модели своих фирм. Оказывается, разработчики бесплатного софта живут небедно, хотя, конечно, многомиллиардными прибылями похвастаться пока не могут.

Всего голосов 79: ↑63 и ↓16+47
Комментарии63

Чек-лист вёрстки. Что можно отдавать клиенту, а что надо переделывать

Время на прочтение20 мин
Количество просмотров315K
Идеальная вёрсткаВы PM. Как узнать – готова ли вёрстка к реальному использованию?
Вы заказчик. Как убедиться, что работа выполнена качественно?
Как оценить качество вёрстки?

Когда я стал тим-лидом, а позже PM, передо мной стала задача проверять вёрстку наших проектов. Нужно было выработать формальные, легкопроверяемые критерии, соответствие кода которым, должно было давать некую гарантию, что не будет факапов и ни клиент, ни программеры не сказажут потом “WTF?”.

Клиенту неважно насколько красив ваш код, но ему важен результат. Качественный код нужен фирме, т.к. он надёжней и в будущем его будет легче поддерживать.

Требования должны были быть такие, что соблюсти их легче, создавая качественную вёрстку, а не говнокод. Я составлял такой чек-лист в течении полутора лет. За последние полгода в него не добавилось ничего. Значит самое главное учтено.

Итак что же это за список?

Краткая версия теперь доступна на html5checklist.com (github), где можно вносить pull-request'ы.

История обновлений:
  • 2015/08/11: Актуализировал рекомендации по оптимизации скорости загрузки. Добавил требование поддержки Retina. Дополнил «19. Мелочи» требованием что изображения должны масштабироваться в зависимости от размера окна.
  • 2015/08/10: актуализирован список исключений для CSSLint
  • 2015/07/29: актуализирован пункт №13 «плохо»/«хорошо»
  • 2015/04/08: добавлено требование использования препроцессоров и рекомендация использования систем сборки
  • 2013/04/25: добавлены анализаторами качества кода: CSSLint и JSHint, указан сайт подбора css font stack (спасибо @fliptheweb), мелкие уточнения (работу интерактивных элементов страницы, что не пропадает фон на высоких разрешениях, не должно быть пустых презентационных блоков, при проверках контента — пробовать удалять заголовки, менять местами блоки)
  • 2013/04/24: добавил пункт об минимизации каскада (БЭМ-техники, MCSS, SMACSS), необходимости вписывания в экран моб. устройства, заменил ссылку на проверочный текст отображения стандартного html на код с normalize.css, поправил пример где в рекомендации встречался длинный каскад, упомянул про Opera на Presto и новый уровень семантики — в именах классов BEM.
  • 2012/04/12: отсортировал пункты проверки в порядке важности, выделил главные, дополнил статью подробностями
  • 2011/12/07: дополнил согласно доклада на WSD Минск'2011.
  • 2011/07/19: добавлено про повышение надёжности вёрстки благодаря html5-тэгам, про необходимость favicon/apple-touch-icon, отсутствие багов при ресайзе textarea
  • 2011/06/15: добавил пояснения какие ошибки валидации допустимы, рассказал про отсутствие официальной кнопки «HTML5 Valid» и про официальное лого HTML5 на сайте.


Далее с примерами - как проверить html, даже если вы ничего не понимаете в вёрстке.
Всего голосов 335: ↑318 и ↓17+301
Комментарии244

Ломаем web c '#!' (hash-bang)

Время на прочтение6 мин
Количество просмотров18K
Ниже предлагается перевод статьи, обращающей внимание на, на мой взгляд, довольно острую проблему в эпоху web 2.0, а именно чистоту URL-адресов.

На примере сайта Lifehacker.com показано какими проблемами может обернуться слепое следование state-of-the-art технологиям, погоней за SEO и отрицание принципа «прогрессивного улучшения» (progressive enhancement).


На прошлой неделе, в понедельник, сайт Lifehacker.com был недоступен по причине неработающего JavaScript. Lifehacker.com, наряду с остальными сайтами компании Gawker, отображали пустую главную страницу без контента, рекламы и всего остального. Переход с результатов поиска Google на подстраницы переправлял обратно на главную.

Javascript-зависимые URL


Gawker, как и Twitter до него, перестроил свои сайты на полную зависимость от JavaScript'а, включая URLы его страниц. JavaScript не смог загрузиться, что привело к отсутствию контента и сломаным URLам.

Новые адреса страниц выглядят теперь следущим образом: http://lifehacker.com/#!5753509/hello-world-this-is-the-new-lifehacker. До понедельника, адрес был тем же, только без #!..

Читать дальше →
Всего голосов 142: ↑128 и ↓14+114
Комментарии109

8 полезных сервисов для веб-разработчика и дизайнера

Время на прочтение2 мин
Количество просмотров36K
Под катом — описание восьми сервисов, которые могут заметно облегчить жизнь веб-разработчика, верстальщика или дизайнера.
Читать дальше →
Всего голосов 337: ↑324 и ↓13+311
Комментарии59

Ajax загрузка данных из контейнера

Время на прочтение1 мин
Количество просмотров20K
Знаете ли вы, что с помощью jQuery можно загружать не только контент страницы, но и выбранного контейнера на ней? Оказывается можно и делается это следующим образом:
$("#area").load("something.html #content");

Данный код найдет на странице something.html контейнер с id content, возьмет его содержимое и загрузит в контейнер с id area. Но есть одно но…
Читать дальше →
Всего голосов 119: ↑80 и ↓39+41
Комментарии49

Дрессируем box-shadow

Время на прочтение6 мин
Количество просмотров98K
Простой пример box-shadow Разработчики W3C сделали box-shadow очень гибким свойством. Благодаря этому можно получать весьма интересные результаты, если использовать это свойство нетривиальным образом. В этой статье я напишу о некоторых эффектах, которые мне удалось получить при помощи «теневых технологий».

Пока я составлял примеры, я неожиданно обнаружил, что браузеры отображают их совсем неодинаково. В итоге, помимо простой демонстрации возможностей box-shadow, получился еще и маленький браузерный тест на поддержку CSS 3. Все примеры снабжены CSS-кодом и картинкой (общий объем всех PNG: 161 КБ). В статье я не стал прописывать свойства с вендорными префиксами -moz- и -webkit-, чтобы не ухудшать читабельность. В суммарной странице со всеми примерами эти префиксы есть (предупреждаю, что у Оперы есть баг с прорисовкой внешних box-shadow при прокрутке).
Читать дальше →
Всего голосов 132: ↑128 и ↓4+124
Комментарии56

Шестнадцать из тридцати сравнительно новых и бесплатных шрифтов

Время на прочтение5 мин
Количество просмотров8.9K
[Smashing Magazine]В «Smashing Magazine» 12 августа выложили гиперссылки, ведущие к тридцати бесплатным шрифтам, и краткий обзор их.

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

Во-первых, выпишем оттуда названия шрифтов по порядку в столбик да пронумеруем:
1) Piron
2) St Ryde
3) Nobile
4) Mr Jones Book
5) Pigiarniq Inuktitut
6) St Marie
7) Code

8) VAL Stencil
9) akaDora
10) Arcus
11) Crimson Text
12) Acid

13) Real Origami
14) Quadranta
15) Balonez Fantasia
16) Juice
17) Geomancy Typeface
18) Prociono
19) Edelsans

20) Neu Eichmass
21) Ingleby
22) Ibarra

23) Notice 1: Packaging Symbols
24) Notice 2: Navigation symbols
25) Notice 3: Cloth Symbols
26) Glyphyx
27) Free Symbol Signs Collection
28) Rally Character Set
29) Oblik Serif Bold
30) Paranoid
31) 01.BASE
Как видно, счёт-то не такой уж и ровный. (Хорошо ещё, что обсчитались в нашу пользу.)

Во-вторых, из «тридцати» представленных шрифтов шесть («Notice 1: Packaging Symbols», «Notice 2: Navigation symbols», «Notice 3: Cloth Symbols», «Glyphyx», «Free Symbol Signs Collection», «Rally Character Set») являются попросту сборниками монохромных значков, а не символов какого-нибудь алфавита. Ещё девять шрифтов («01.BASE», «Paranoid», «Oblik Serif Bold», «Neu Eichmass», «Geomancy Typeface», «Balonez Fantasia», «Quadranta», «Real Origami», «VAL Stencil») обладают такими выдающимися декоративными особенностями начертания, которые делают их пригодными только для оформления заголовков, лозунгов и других крупных надписей — да и то не всяких.

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

[Ingleby]

Ingleby — прекрасная антиква (со вкусными очертаниями буквы «a», например), которую разработал David Engelby. Идёт в четырёх начертаниях (обычное, курсивное, полужирное, полужирный курсив). Бесплатно для всех видов использования, но требует упоминания автора шрифта.
Шрифт лежит на dafont.com — это, насколько я понял, не очень полезно, потому что сайт не поддерживает многопоточное скачивание шрифтов (а значит, и докачку после обрыва).

Читать дальше →
Всего голосов 134: ↑111 и ↓23+88
Комментарии28

Улучшаем админку

Время на прочтение6 мин
Количество просмотров80K
Одно из слабых мест джанго-админки — главная страница. Идея авто-группировки моделей по приложениям и вывод столбиком в одну колонку работает только на начальных этапах, дальше это становится просто неудобно — куча лишней информации и довольно сложные пути для того, чтобы добавить полезную. Ну, например, чтобы названия приложений писались русскими буквами — полностью перекрывать шаблон.

И тут на помощь приходит django-admin-tools. С этим приложением минут за 20 можно получить «приборную панель» с произвольной группировкой приложений/моделей, вкладками, любым числом колонок, различными блоками, которые каждый пользователь сможет расставить, как ему удобнее, скрывать и сворачивать по желанию, закладками, настраиваемым меню и удобным способом добавления во все это хозяйство всего, чего только можно придумать.

Вот так, например, сейчас выглядит админка к сайту НадоВместе:

image
(это только часть, вот скриншот целиком)

Разберемся поподробнее.
Читать дальше →
Всего голосов 105: ↑100 и ↓5+95
Комментарии45

jQuery 1.3.x -> 1.4.x и JSON

Время на прочтение1 мин
Количество просмотров3.6K
Это не пост, а скорее памятка для тех, кто столкнулся с проблемой ajax и json, при переходе на jQuery 1.4.
В новой версии используется встроенный парсинг JSON, а вместе с этим становится необходимо следить за его (json’a) правильностью.
Примеры, как делать не надо:

{ 'qwe' : 'asd' }
{ "qwe" : 'asd' }
{ qwe: "asd" }
{ qwe: 'asd' }

т. е. такие варианты теперь не проходят. Использовать надо только двойные кавычки!

{ "qwe" : "asd" }

Если же у вас нет возможности внести изменения в серверные скрипты, то на клиенте быстрый фикс можно сделать следующим образом:

$.ajax({
url: "/test.php",
dataType: "text",
success: function(data) {
json = eval("(" + data + ")");
// alert(json.success);
}
});

Возможно, кому-то окажется полезным. Всем спасибо, всем удачи!
Всего голосов 62: ↑52 и ↓10+42
Комментарии43

Сдача сессии по-английски

Время на прочтение9 мин
Количество просмотров20K
Так получилось, что мне выдалась возможность поучиться в магистратуре в университете City University London. За полгода, которые уже прошли, я увидел много нового, в том числе то, как устроена местная система образования, и успел её оценить.

На мой взгляд, подход к процессу обучения студентов за границей достаточно сильно отличается от российского — особенностей довольно много. В частности, процесс построен так, чтобы человеческий фактор в выставлении оценок всегда был минимальный, а знания, данные студенту, были измерены максимально объективно.

Так как сейчас у многих читателей Хабра сессия, я решил, что пост на эту тему мог бы быть кстати и хотел бы рассказать о том, каким образом в одном из ВУЗов Лондона проводятся экзамены, и как выставляются оценки за пройденные предметы.
Читать дальше →
Всего голосов 311: ↑296 и ↓15+281
Комментарии347

Создаём страницы-«заглушки» для своих сайтов

Время на прочтение7 мин
Количество просмотров108K
Страницы-«заглушки»Если вы купили домен, а сайт ещё не запустили, то решить, что делать с ним — это довольно непростая задачка. Оставить начальную страницу вашего регистратора или стандартную страницу хостинга? Оба варианта выглядят, по меньшей мере, непрофессионально. Особенно, если вы собираетесь попиарить свой новый проект, рассказать о нём. В то же время, вы не хотите тратить слишком много времени для создания временной страницы, т.к. вам нужно работать над самим проектом.

Лучший выход из ситуации — создать простую страницу-«заглушку», которая будет рассказывать посетителям, что здесь, в конечном счёте, появится. Хорошая страница-«заглушка» может быть двух вариантов: информационная страничка, которая просто расскажет, что здесь будет после запуска; или страница, которая предлагает посетителям подписаться на уведомления или оставить запрос на бета (или альфа) тестирование. Ниже вы увидите несколько отличных примеров обоих типов, следуя которым, вы сможете создать свою такую страницу-«заглушку». Разумеется, среди них вы не увидите обычных страниц «В разработке» (с надоевшим дизайном), которых целая куча в сети.
А теперь подробнее и с примерами...
Всего голосов 113: ↑98 и ↓15+83
Комментарии68

dklab_multiplexor: постоянное Javascript-соединение с сервером в условиях сотен тысяч онлайн-клиентов

Время на прочтение4 мин
Количество просмотров6.7K
Dklab_multiplexor — это инструмент, который позволяет держать одновременно сотни тысяч долгоживущих открытых HTTP-соединений с сервером. Например, если на вашем сайте находится одновременно несколько сот тысяч посетителей, каждый из них может быть связан с сервером постоянным соединением, установленным из JavaScript. Это например, полезно при организации онлайн-чатов или мгновенных уведомлений.

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

Зачем это нужно?


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

Данную задачу можно решить двумя способами.
  1. Неправильный способ. Раз в 10 секунд делать из JavaScript запрос на сервер для проверки, не появилось ли новых сообщений. Этот метод не работает, если на сайте одновременно находится очень большое количество пользователей, т.к. нагрузка на сервер растет слишком быстро. Кроме того, потребление трафика пользователем также оказывается крайне высоким.
  2. Правильный способ. Устанавливать постоянное и длительное соединение с сервером, ожидая поступления данных через него. Если сообщений нет, соединение просто держится открытым на протяжение нескольких минут. Если соединение по каким-либо причинам закрылось, оно вновь открывается. В итоге и трафика потребляется мало, и нагрузка на сервер оказывается невелика. Так работает GMail, Мой Круг и т. д., и именно на этом принципе построен dklab_multiplexor.
+-------------------+                    ------------------ 
| Сервер обработки  |                   |                  |   <===WAIT=== Клиент A
| и базы данных     |  ======IN=======> |   Мультиплексор  |   <===WAIT=== Клиент B
| (e.g Apache + PHP |                   |                  |   <===WAIT=== Клиент C
+-------------------+                    ------------------ 
(указаны направления установления TCP-соединений).
Читать дальше →
Всего голосов 103: ↑97 и ↓6+91
Комментарии108

Анимированные меню на jQuery

Время на прочтение6 мин
Количество просмотров5.4K
Недавно я наткнулся на сайт Dragon Interactive (dragoninteractive.com). Сайт этот достаточно добротно сделан в плане дизайна. А изюминкой можно назвать их анимированное меню. Ну вот если бы это было сделано в Adobe Flash, я даже и не упоминал бы о таком. Но при более близком рассмотрении оказалось, что их меню — это сочетание простых XHTML, CSS и Javascript. В данной статье я собираюсь продемонстрировать, как создавать менюшки (очень близкие к Dragon Interactive’s menu).

Смотрим демо
Читаем далее...
Всего голосов 156: ↑141 и ↓15+126
Комментарии35
2

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность