Pull to refresh
0
0
Send message

В чем особенность подземных ЦОД

Reading time2 min
Views21K
Мы в 1cloud занимаемся постоянным улучшением сервисов нашего IaaS-провайдера и много пишем об этом в блоге на Хабре.

Совсем недавно мы кратко рассказали о том, что стоит за картинками в интернете, на примере дата-цента фотохостинга imgix.

Сегодня мы продолжим эту тему и поговорим об особенностях подземных ЦОД.

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

Устройство WebP

Reading time3 min
Views25K
WebP — сравнительно новый формат от Google. Картинки в этом формате занимают на 30% меньше места на странице благодаря особому сжатию, построенному на кодировании ключевых кадров в видеокодеке VP8.

WebP поддерживает сжатие с потерями и без, разные степени прозрачности, метаданные и может содержать встроенный ICC-профиль. Но пока не все браузеры и приложения поддерживают формат.

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

Как заменить однородный фон прозрачным с помощью Imagemagick

Reading time2 min
Views31K
Бывает, что на сайт загружаются картинки с однородным фоном и возникает потребность в автоматической замене его (фона) на прозрачный.

Часто такая фича нужна для фотографий товаров в интернет-магазине, картинок, которые накладываются на корпоративный фон и других фоток, не портящих дизайн сайта. Вырезать каждую фотку вручную фотошопом довольно грустно, но есть php-методы, с помощью которых это можно «поставить на поток».
image
Читать дальше →

Модули JavaScript

Reading time12 min
Views56K


Это третья публикация по материалам нашей внутренней конференции Sync.NET. Первая публикация была посвящена многопоточности в .NET, вторая — реактивным расширениям.

При разработке front-end части приложения на языке JavaScript, мы можем столкнуться с рядом традиционных проблем. Все они решаются при помощи модульных подходов. Ниже мы рассмотрим самые популярные подходы для описания модулей в JavaScript, которые существуют на сегодняшний день.
Читать дальше →

Делаем видеоконференции в браузере за 10 минут

Reading time9 min
Views30K
Обратите внимание, что данная статья устарела. Актуальная информация на тему создания видеоконференций доступна по ссылке.
Видеоконференции через Skype уже давно заняли свое место в ежедневных коммуникациях, пользователи оценили удобство такого формата общения и все больше компаний стараются проводить встречи именно в этом формате. Но у скайпа есть большой минус: это отдельное приложение, которое трудно интегрировать в другой сервис. А сервисов, куда можно с пользой для дела встроить видеоконференции великое множество, начиная от систем бизнес-автоматизации и заканчивая сервисами группового обучения иностранному языку. Сегодня я покажу вам, как с помощью подручных средств и voximplant за 10 минут собрать движок видеоконференций, работающий прямо из браузера на webRTC и спозволяющий подключаться к конференции с обычных телефонов.
Читать дальше →

Google Cloud Messaging: «Сова, открывай! Пуш пришел!»

Reading time6 min
Views64K
Всем известный сервис Google Cloud Messaging (GCM) нужен для того, чтобы ваше приложение всегда показывало актуальные данные пользователю. Схема работы сервиса включает в себя три компоненты.



Непосредственно сервер GCM, ваш пуш-сервер и устройство с установленным приложением. Алгоритм работы простой: устройство регистрируется в GCM, получает registrationId – некий токен, который используется в дальнейшем, – сохраняет его у себя локально и передает серверу. Далее пуш-сервер использует этот registrationId для отправки сообщений вашему приложению на устройстве.

В этом материале будут рассмотрены проблемы на двух участках, который обозначены на схеме: пуш-сервер – GCM и GCM – устройство.
Читать дальше →

Блокировка по access_log, легкий способ прострелить ногу или устранение конкурентов

Reading time3 min
Views30K
Очередной пример, как легко прострелить себе ногу, на этот раз «переусердствовав» при защите сайта.
Имён как всегда не называю, однако история показательна как-таковая, т.е. в качестве примера, как не надо «защищать» свои сервера. Эх говоришь им, говоришь — а все без толку.

Пришлось тут намедни делать «аудит» одного коммерческого проекта… ну очень просили.
Упала посещаемость сайта, не совсем чтобы совсем, но довольно заметно. Смотрели логи, аналитику поисковиков и т.д. и т.п. Все вроде нормально, и кто приходит, тот даже не уходит сразу.
Но не буду ходить вокруг, да около — проанализировав логи банов по IP выяснилась одна закономерность — за короткое время в бан попадало огромное количество IP-адресов. Все поголовно по одной причине — якобы как botsearch. Отротированные логи за последний месяц тоже ужасали своими размерами и даже заглядывать туда не нужно было, и так все ясно. Т.е. случилось следующее: куча клиентов просто не могла попасть на сайт.
На вопрос «что-то меняли где-то с месяц назад?» был получен отрицательный ответ.

Не буду утомлять здесь детективным чтивом, после недолгих поисков — картина маслом. Некий прямой конкурент этого сайта поспособствовал «утечке» клиентов, или вернее и организовал эту «странную непосещаемость».
Читать дальше →

8 распространённых ошибок в дизайне (и как их избежать)

Reading time4 min
Views24K
Что позволяет судить о дизайне как о плохом или хорошем? Верно, что это субъективное вкусовое предпочтение того или иного человека. Но в конечном счёте хороший дизайн доносит сущность сообщения, поддерживает заинтересованность и чётко визуализирует транслируемую информацию. Плохой дизайн, в свою очередь, делает сообщение трудно разборчивым, тем самым усложняя коммуникацию.

Приведём восемь распространённых ошибок в оформлении визуального сообщения и как их избежать.
Читать дальше →

Покупка в интернет-магазине: работа над ошибками

Reading time21 min
Views49K
Процесс покупки в интернете затягивает — один раз попробовав купить товары онлайн, покупатели осознают все преимущества удаленной покупки. Ведь так здорово иметь магазин всегда под рукой: заказать еду, билеты, выбрать бытовую технику и многое другое, находясь в любом месте и в любое время. Приятные ощущения от комфортной покупки в сочетании с отработанной маркетинговой активностью интернет-магазина заставляют клиента возвращаться снова и снова. Это подтверждает статистика: российский рынок онлайн-покупок за 2014 год вырос на 35% — до 560 млрд рублей, а количество покупателей выросло на 37%, до 25,4 млн человек. Всего в интернете россияне совершили 195 млн покупок и потратили на них на 41% больше, чем в 2013 году, — 645 млрд рублей. Средний чек с учетом стоимости доставки составил 3 300 рублей.

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



В ходе совместного исследования MasterCard и UsabilityLab, посвященного юзабилити процесса покупки в интернет-магазинах, были выявлены основные ошибки, допущенные на каждом из этапов. Любая такая ошибка — риск потерять покупателя или отвлечь его внимание на сторонние страницы и сервисы. Цена ошибки очевидна — потеря прибыли. Стоит отметить, что осознание погрешностей в оформлении и совершенствование страниц происходит достаточно быстро. Исследование стартовало в конце 2013 года — за этот период некоторые платежные системы внесли в свои страницы значительные изменения и улучшили юзабилити. Это можно увидеть, сравнив примеры из этого поста и просмотрев современные решения, предлагаемые пользователям на крупных сайтах.

Разобьём результаты по этапам покупки и рассмотрим, что же было сделано не так и какие риски вызывали те или иные некорректные параметры.
Читать дальше →

Дайджест продуктового дизайна, май 2015

Reading time16 min
Views15K
Уже пять лет я публикую регулярные обзоры свежих статей по теме интерфейсов, новых инструментов и коллекций паттернов, интересных кейсов и исторических рассказов. Из лент нескольких сотен тематических подписок отбирается примерно 5% стоящих публикаций, которыми интересно поделиться. Предыдущие материалы: апрель 2010-апрель 2015.

Дайджест продуктового дизайна, май 2015
Читать дальше →

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

Reading time5 min
Views17K
Предисловие

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

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

Отдельно можно сказать о производительности: для меня, как разработчика высоконагруженных систем БД, всегда было странным формирование отчетов не за секунды, а десятками минут, проведение документов занимающее в 1С минуты, и вообще постоянно требующие обновления железа новые версии тех же систем, с баснословными требованиями к серверам. Очевидно было, что такие простейшие операции как посчитать остатки на складе за весь период работы из миллиона документов даже в MySQL займут секунды…

Постановка вопроса

В общем, когда передо мной встала задача поставить систему учета на 5 удаленных магазинов, склад и офис, варианты готовых решений выглядели бледновато. После мыслей об обучении продавцов (хороших продавцов, но не пользователей компьютера) – первый раз видевших мышку, как пользоваться 1С и бесконечных поездках для настройки сети, стало понятно что это не наш вариант…

Хотелось следующего:
• Полностью удаленное пользование с любой операционной системы, с планшета, смартфона
• Нетребовательность к качеству канала связи
• Дружелюбный интерфейс и юзабилити
• Скорость – любые отчеты и документы в течение секунды
• Возможность встраивания продвинутой аналитики

Понятно, что одним из решений, чтобы не изобретать велосипед с нуля, было сделать online систему базирующуюся на наших же серверах, работающую на максимально простых механизмах и структурах. Бесконечные таблицы, описывающие номенклатуру, тоже казались избыточными – десяток полей с табличкой названий для каждого параметра до сих пор работает отлично.
Читать дальше →

Обновленная и расширенная версия DriverPack Online – первая по значимости, 16 по номеру

Reading time4 min
Views118K
Когда ты поддерживаешь сотни офисных и домашних ПК, то без набора универсальных драйверов уже не обойтись. Без сомнений, самым популярным решением здесь является DriverPack Full, который имеет огромную базу драйверов, размером в 10 Gb! Это целых 910 000 драйверов собранных и протестированных вручную.

Если же нужно настроить только 1 компьютер, то качать 10 Gb — совсем не хочется, поэтому был сделан DriverPack Online. У него были свои недостатки, которые мы попробовали исправить в новом релизе. Так что остановимся подробнее на самых интересных моментах разработки.


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

Моделирование объектов для анимации на Canvas

Reading time9 min
Views12K
Быстрый и простой API, поддержка браузерами — это то, что делает Canvas привлекательным. Но, как это часто бывает, простота одновременно является и слабой стороной. Без труда, например, можно вывести прямоугольник, окружность, линию или навесить изображение. Но разработать на этой простой основе полезный контент — задача чуть сложнее.

Изображение - сила canvas

На примере разработки игры, показан подход к анимации и управлению игровым объектом.
Читать дальше →

Установка, настройка и использование сканера уязвимостей сервера rkhunter

Reading time3 min
Views78K
На хабре не раз было упомянуто приложение под названием rkhunter. Хотелось бы остановиться на нем по подробней.

Rkhunter — это сканер различных видов локальных (потенциальных) уязвимостей (бэкдоров, эксплоитов и руткитов) со своей регулярно обновляемой базой.
Он написан на bash и perl, поэтому будет работать под любой серверной ОС на базе unix без каких-либо проблем.



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

Google WebFonts и FontFaceObserver. Используем сторонние шрифты на своем веб-сайте

Reading time5 min
Views34K

WebFonts. История


WebFonts — это технология использования сторонних шрифтов на своей веб-странице. Один из примеров:



Если начинать с истоков, тег font был введен в 1995 году, а уже в 1996-м было написано программное определение на CSS. Начиная с версии CSS 2.0 была введена загрузка и синтез шрифта в браузерах, но тем не менее тогда еще популярный, а ныне старый и неактуальный IE не имел поддержки загрузки шрифтов, что мешало бурному развитию использования шрифтов на своем сайте.

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

Собственное контекстное меню с использованием JavaScript

Reading time16 min
Views84K
Веб-приложения на сегодняшний день становятся новым шагом на пути развития веба. Это уже далеко не обычные информационные сайты. В качестве примера передовых веб-приложений можно привести Gmail и Dropbox. С ростом функциональности, доступности и полезности веб-приложений растет и потребность в увеличении эффективности их использования. В данном руководстве будет рассмотрено создание такой полезной штуки, как собственное контекстное меню, и в частности:
  1. Разберемся, что такое контекстное меню и зачем оно нужно.
  2. Реализуем свое контекстное меню, используя JS и CSS.
  3. Затронем недостатки и ограничения используемого подхода, чтобы знать, какие проблемы могут нас предостерегать при выкатывании всего этого в продакшн.

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

CSS Font-Size: em vs. px vs. pt vs. percent

Reading time3 min
Views278K
Одним из наиболее запутанных аспектов CSS является применение font-size атрибута для масштабирования текста. Используя CSS, вы можете изменить размер текста в браузере с помощью четырех разных единиц измерения. Какая из этих четырех единиц лучше всего подходит для веб? Это вопрос, который породил разнообразные дискуссии и критику. Поиск окончательного ответа затруднен, поскольку вопрос сам по себе сложный.
Читать дальше →

Векторная замена спрайтам — имплантируем SVG в CSS

Reading time4 min
Views45K
Не так давно компания, в которой я работаю, наконец-то окончательно отказалась от поддержки IE8 и, как следствие, я вплотную занялся вопросом перехода с растровых иконок на векторные. Основные плюсы SVG — это масштабирование, малый вес и возможность стилизации через CSS.

Сначала я попробовал воспользоваться техникой спрайтов, просто использовав вместо растра вектор, но тут возникло две проблемы:
  • Масштабирование. При произвольных размерах элементов спрайта для того, чтобы его точно отпозиционировать, приходится танцевать с бубном. И при изменении размера самого спрайта (например, при добавлении нового элемента) все может поползти.
  • Возможность стилизации посредством CSS отсутствует, потому что физически SVG-картинки в HTML-коде нет.

Решаем проблемы по мере их поступления

История развития компании Cisco: 1984-2000 г.г

Reading time15 min
Views23K
Американец – это человек, который делает что-либо потому, что так не делали раньше.
Марк Твен

Приветствую! Меня зовут Минаев Сергей, я представляю компанию ООО «ВИСТЛАН», которая занимается системной интеграцией, в том числе решений на базе продуктов компании Cisco. Я уверен, что для того, чтобы хорошо делать свою работу, необходимо о предмете, с которым работаешь, знать как можно больше. И в перечне этих знаний история предмета, история продукции, с которой вы работаете, занимает далеко не последнее место. Ведь понимание истории – это возможность глубже понять особенности продукции, а также представить себе возможные перспективы развития.

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

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

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

История и перспективы компании Cisco


Сегодня компания Cisco занимает достойное положение в Интернет-экономике и помогает многих людям полностью изменить подход к работе, обучению, развлечениям и даже к жизни!
Читать дальше →

Автоматический 3D сканер размера упаковки

Reading time3 min
Views24K
Поставили нам недавно вполне конкретную задачу, от склада одного из российских дистрибьюторов электронных компонентов, с которого мы отправляем свою продукцию нашим покупателем, среди множества других посылок. Ну, хорошо! Попробуем…. Тем более, еще некоторое время назад у нас в образцах появился такой ультразвуковой датчик для измерения расстояний. По цене он заметно отличался от широко распространенных, но производитель обещал лучшую точность измерения. Да и как раз в это время мы сделали собственную версию микроконтроллера, по функциям совместимую с Ардуино Леонардо, снабдив плату винтовыми разъемами, гнездами для LCD и рядом других примочек, рассчитанных на расширение возможностей модуля в дальнейшем.

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



Попробуем его улучшить и автоматизировать.
Читать дальше →

Information

Rating
Does not participate
Registered
Activity