Search
Write a publication
Pull to refresh
6
0
ivanr @ivanr

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

Send message

Результаты отчета по скриптам поисковой системы MAMA

Reading time1 min
Views543
На Хабре неоднократно публиковались результаты работы поисковой системы MAMA (Metadata Analysis and Mining Application) от Opera (подробнее о проекте, на английском языке можно почитать тут). 12 декабря вышла очередная статья посвященная результатам работы MAMA. Статья носит название «MAMA: Scripting report, part 1: Basic scripting syntax and features».

Среди прочих результатов, мне хотелось бы обсудить так называемую таблицу «Самые популярные DHTML-меню и библиотеки обнаруженные MAMA». Таблица и несколько комментариев под катом.
Читать дальше →

Дырявый Ecofont экономит краску

Reading time1 min
Views3.8K
EcofontШрифт Ecofont — рождение ума человека по имени Колин Уиллемс (Colin Willems), работающего в голландской компании SPRANQ.

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

Какой объем символа может быть убран, при условии, что читабельность текста сохранится? После множества тестов с различными формами в Spranq пришли к выводу, что лучше всего использовать маленькие круги, а еще после нескольких тестов было обнаружено, что в результате принтер использует на 20% меньше краски — отличное антикризисное решение для корпоративного сектора.

И хотя создатели шрифта и не ставят своей целью его популяризацию, наверняка те, кому идея приглянулась, обратят на него свое внимание. Для печати больших объемов продукции (как в издательском деле) экономия подобного рода наверняка найдет применение.

Позитивный момент из описания шрифта: «The Ecofont is distributed under GPL...»

Ecofont via Lifehacker

AJAX комменты

Reading time1 min
Views703
Специально для тех, кто не подписан на мой RSS, а также для тех, кто не читает новости drupal.[org|ru], спешу сообщить, что мои AJAX комменты таки выпущены в свободное плавание и теперь доступны для скачивания на drupal.org.

Те, кто еще ни видел их в действии, кто хочет сказать спасибо, а также остальные — можете смело бросать свои комменты в этом топике.

Всем спасибо, надеюсь модуль заработает сходу :)

Защита флэшки от Autorun-вирусов.

Reading time3 min
Views65K


     Доброго времени суток, уважаемый хабра–читатель. Я работаю в университете, в лаборатории вычислительной техники. Администрируем около сотни компьютеров. Перед нами встала проблема защиты от Autorun–вирусов на флэшках. Естественно у нас отключен автозапуск в Windows, однако нужно было защитить сами флэшки, чтобы работник дома, вставив рабочую флэшку, не заразил свой компьютер. Под катом решение проблемы.
Итак, примемся за дело...

Учимся дисейблить кнопки на примере «Мегафона»

Reading time1 min
Views2K
Господа, занимающиеся веб-разработками, прошу вас обратить внимание на такую элементарную вещь в своей работе как дисейбл кнопок. Постоянно сталкиваюсь с подобной кривизной и сегодняшний день тому не исключение — «ляп» на официальном сайте компании Мегафон.

image

Неужели разработчикам сложно вставить простой дисейбл кнопки после того, как юзер осуществляет какое-либо действие, в особенности требующее ожидание и неактивности от него, вместо того, чтобы писать сообщения — «Пользователь, пожалуйста, ничего не делай».
Простой рецепт:
input type="submit" onclick="javascript:this.disabled=true;"

Примитивная защита от фишинга

Reading time1 min
Views3.4K
Фишинг — создание точной копии другого сайта с целью заставить пользователя ввести свой пароль или иные данные.

Вот типичный пример фишинга:

типичный пример фишинга

В тексте ссылки — vkontakte.ru, в href ссылки — vk0ntatke.ru, фишинг-сайт.

Так почему бы не сделать простейшую защиту от фишинга?

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

Эта защита может быть встроена либо в почтовые веб-сервисы и программы, либо в сам браузер (просто дополнение к Firefox, конечно, не выход — 99% людей устанавливать его не будут).

В свое время фишинг-сайты использовали лазейку с кириллическими буквами в доменном имени (paypal.com с кириллической «а») — потом ее прикрыли, стали выводить предупреждение. Так же и эту лазейку надо закрыть.

Здесь ведь есть люди из Яндекса, возьмите на заметку.

Вспомогательные классы

Reading time3 min
Views3K
imageЛично мне, иногда, при верстке очередной страницы или изменении существующей, требуется (или просто хочется) добавить несколько простейших параметров стилей. Писать определение стиля в разметке не очень хочется, не только из-за того, что это набор достаточно длинной строки, но и потому, что это определение потом может остаться в разметке навсегда (как говориться: нет ничего постояннее временного). Кроме того, в каждом отдельном файле CSS-стилей порой валяются одни и те же классы стилей в одну строчку. Давно собирался определить для себя некую библиотеку с набором таких стилей и с установленным навсегда названиями. И вот такой получился результат.
Читать дальше →

Программисты и мания величия

Reading time3 min
Views2.4K
В одной из своих статей (Как играть в «программирование» или путь программиста), я писал про пять стадий развития программиста, и вот четвертую стадию назвал «Мания величия». С тех пор прошло пару месяцев, а я все больше убеждаюсь, что это истинная правда! Собственно в очередной раз я убедился в этом прискорбном факте вчера, когда решив забить на фриланс, обратил внимание на только что появившуюся студию, куда меня звали работать web-программистом на довольно приличную зарплату. Мои отношения с начинающими студиями – это отдельная тема, вечно меня притягивает ко всему «начинающему», видимо организаторские потребности дают о себе знать… но статья не о том, так вот, придя на собеседование, я познакомился с их программистом, назовем его… ну пусть будет Виталий.
Читать дальше →

Делаем полноценный JS-прелоадер для AJAX-приложения

Reading time5 min
Views39K
Многие программисты оптимизируют JavaScript и CSS-код, чтобы страница грузилась быстрее.
Но не все они делают прелоадеры, которые дают пользователю эффект субъективно более быстрой загрузки.
хочу продолжения

CDN своими руками или раздача видеоконтента

Reading time5 min
Views11K
[ Часть I. Доставка видеоконтента ] [ Часть II. CDN своими руками ]

В продолжение темы про доставку видеоконтента: мы обеспечили хранение и обработку контента, как теперь отдать контент таким образом, чтобы он оказался как можно “ближе” к потребителю? Большая часть статьи будет посвящена обобщенному подходу географически распределенной раздачи контента, а в конце в качестве примера описанный подход будет применен к доставке видеофайлов и вещаний конечным пользователям.

Кроме самого факта, что контент был доставлен пользователю, мы должны обеспечить качество доставки контента. Для FLV-файла видео это означает, что скорость, с которой он доставляется пользователю, должна быть выше либо равна битрейта потока, иначе видео у пользователя при просмотре будет «затыкаться».

Кроме того, имеет смысл «приблизить» контент к пользователю географически. Это связано с пропускной способностью каналов (отсутствием иногда хороших магистральных каналов), а также с разницей в стоимости локального и внешнего трафика для конечного пользователя (например, в регионах РФ).

Такой шаг необходимо сделать при желании выйти на международный рынок, а также при региональном развитии внутри РФ. Сегодня в регионах очень часто самыми популярными сайтами являются региональные порталы, которые предоставляют различные сервисы, в том числе и сервис видеохостинга, а их популярность обусловлена как стоимостью трафика, так и скоростью доступа/временем отклика. Можно представить, что пользователь готов подождать открытия страницы, загрузки плеера, но тяжело предположить, что пользователь согласится смотреть видео, которые прерывается из-за постоянной буферизации, или смотреть вещание, которое доходит до пользователя в виде слайдшоу (после пропуска пакетов остались только опорные кадры видео).

Таким образом, осознав необходимость географической распределенности для контента, мы покупаем/арендуем сервера в непосредственной близости от потребителя: в Европе, США, Украине, Екатеринбурге и т.д.

Что же делать дальше?

RESTful PHP — 5 простых советов

Reading time4 min
Views84K
REST (Representational state transfer) — это архитектурный стиль или свод соглашений для web-приложений и сервисов, основанный на манипулировании ресурсами и спецификацией HTTP. Впервые об этом заговорил Рой Филдинг (Roy Fielding) — один из отцов основателей HTTP (Hypertext Transfer Protocol).

Web-приложения зачастую игнорируют спецификацию HTTP и двигаются вперёд используя полюбившиеся возможности: GET и POST, 200 OK и 404 NOT FOUND. Так как используются программируемые web-приложения, со своими собственными API, то решение игнорировать спецификацию HTTP, может создать проблемы в дальнейшем. Как следствие — имеем множество приложений с интерфейсами GET и POST. Например интерфейс удаления пользователя: GET /user/1/delete против POST /user/delete {id=1}; в случае REST можно указать /user/1 это ресурс, а удаление HTTP метод DELETE.
Читать дальше →

Стартап: «Кладбище стартапов»

Reading time2 min
Views2K
В мире ежедневно появляются несколько (десятков?) идей IT-проектов, авторы которых всерьез решают приняться за их реализацию. Кто-то берется за проект в одиночку, кто-то — собирает приятелей-энтузиастов, кто-то нанимает разработчиков на свои деньги, кто-то находит инвесторов. У кого-то проект получается таким, каким он себе его задумывал, у кого-то он сильно отличается от первоначального видения. Но большинство проектов, как показывает практика, перестают поддерживаться и/или закрываются.

Мне пришла в голову идея интернет-проекта, основное назначение которого — предоставлять всем желающим подробную информацию о канувших в Лету стартапах. Эта информация будет включить в себя подробное описание «идеи» и бизнес-модели проекта, а так же аналитическую часть: интервью с основателями проекта об истории развития проекта, и о причинах, по которым проект не выстрелил; а так же взгляд компетентного в интернет-бизнесе человека на эти самые причины. Таким человеком может быть любой «успешный» стартапер, который может привлекаться редакцией в качестве эксперта, и на своем опыте пытающийся разобраться в причинах закрытия стороннего проекта.

Кому и зачем всё это нужно...

Форматирование длинных SQL-запросов

Reading time1 min
Views16K
Вступил недавно в локальный оффлайн-холивор на тему форматирования длинных SQL-запросов.

Собственно, весь холивор сводится к тому, что удобнее читать — INNER JOIN ДО таблицы, или ПОСЛЕ неё, а так же — AND — до или после обьявления условия.

Два варианта и вопрос к хабровчанам под катом:

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

Тюнинг Zend Framework + Doctrine

Reading time8 min
Views2.6K

Скрещиваем двух «зверей»



В принципе, скрестить Zend Framework с Doctrine не так уж сложно. Но прежде поговорим о подготовительной работе. По мнению автора, предлагаемую по умолчанию структуру файлов проекта Zend Framework можно сделать чуть более оптимальной.

Так выглядит структура файлов проекта Zend Framework по умолчанию:

/
  application/
    default/
      controllers/
      layouts/
      models/
      views/
  html/
  library/

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

Yet Another cSS selector = YASS

Reading time11 min
Views1.6K
После заметки о Peppy я почти обрадовался — вот оно, счастье. Наконец появился движок CSS-селекторов, который делает тоже самое, что и jQuery, только быстрее. Сильно быстрее.

Радоваться было недолго, как только я посмотрел в код, то немного ужаснулся: он не соответствовал моим представлениям об исключительной производительности. Совсем не соответствовал. Точнее, немного удовлетворял, но не до конца. Поэтому сразу встал вопрос: а если быстрее?

Почему нельзя сделать быстрое мини-ядро для CSS-селекторов, которое обеспечит базовую функциональность для работы с DOM (ну, совсем базовую — просто выборку элементов, например)? И, самое главное, чтобы это работало не медленнее (в идеале, даже быстрее), чем нативные вызовы.
В этом топике нет шлюх и блэкджека

Доставка видеоконтента пользователям

Reading time7 min
Views11K
[ Часть I. Доставка видеоконтента ] [ Часть II. CDN своими руками ]

Что такое «контент» для видеохостинга? Во-первых, контент видеохостинга – это просто видео, которое представляет собой набор файлов в различных форматах, в частности, в формате FLV для просмотра пользователем через Flash Player. Эти файлы статичны, видеохостинг при загрузке пользователем видеоролика осуществляет конвертацию во все требуемые форматы с необходимым битрейтом. Хранение такого контента — это хранение обычных файлов, только довольно большого размера. Отдача контента — это, по сути, организация скачивания файлов.
Во-вторых, контент видеохостинга — это «живые» потоки или вещания. Вещания не записываются на диск, не происходит их конвертация, потоки раздаются клиентам с учетом пропускной способности каналов (происходит пропуск пакетов, если канал клиента недостаточен для получения потока вещания в полном качестве). Отдача контента в данной ситуации — это раздача потока на большое количество подключенных пользователей (тысячи смотрящих).
Читать дальше →

Юзабилити Бюллетень. Выпуск № 26

Reading time2 min
Views541
Раскрыть аннотации статей

Верстка скругленных границ и острых углов

Reading time4 min
Views21K
Сложность элементов интерфейса увеличивается с каждым новым макетом, что доставляет немало хлопот верстальщикам. Развивающиеся технологии позволяют создавать в WEBе сложные приложения (Google не даст мне соврать), поэтому дизайнеры себя не сдерживают и рисуют всё более навороченные вещи. Как правило, это приводит к большому количеству графики на страницах.

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

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

Искусство инвестирования

Reading time7 min
Views2.1K
Лекция главы компании Mangrove Дэвида Варокьюэра для слушателей специализации «Менеджмент в сфере интернет технологий».

На определенном этапе развития большинство интернет-проектов требует материальных вложений со стороны. Привлечение подобных инвестиций дело совсем непростое: для этого организаторам проекта необходимо заставить инвесторов поверить в успех этого проекта. Компания Mangrove Capital Partners (Mangrove), среди удачных проектов которой числится такой успешный сервис как Skype, является одной из инвестиционных компаний, вкладывающих свои средства в интернет-проекты на самых ранних этапах их развития. Менеджер Mangrove Дэвид Варокьюэр (David Waroquier) рассказывал об искусстве интернет-инвестирования и о точке зрения инвесторов на развитие стартап-проектов.

Зоной особого интереса г-на Варокьюэра является Россия. Поэтому немало внимания в своей презентации он уделил обсуждению особенностей инвестирования в российские интернет-проекты.

«Почему нас интересуют российские проекты? Когда мы в первый раз вложили средства в один из российских проектов, мы поняли, что в вашей стране на рынке очень мало компаний, профессионально занимающихся инвестированием в высокотехнологичные проекты на начальных стадиях развития. Поэтому мы решили, что для нас инвестиции в этой стране будут выгодными. При этом на наше решение также повлияла территориальная и культурная близость России к Европе. Когда мы проводим анализ российских интернет-компаний, мы понимаем – существует огромная русскоязычная аудитория, огромный рынок для российских интернет-проектов. И мы полагаем, что в ближайшие 10 лет в России будет запущен ряд масштабных успешных проектов. Конечно, в России есть своя специфика. Поэтому мы работаем с нашим российским партнером – венчурным фондом ABRT, образ мышления руководства которого близок к нашему образу мышления, и в котором хорошо понимают особенности российского рынка.

Каждый месяц мы просматриваем большое число проектов и организуем встречу со стартаперами. Лично я езжу в Россию по этой причине ежемесячно. Поэтому, если у вас есть хорошее предложение для нас, присылайте мне бизнес-план, и мы его проанализируем».
Читать дальше →

Information

Rating
Does not participate
Location
Киев, Киевская обл., Украина
Date of birth
Registered
Activity