Search
Write a publication
Pull to refresh
0
0
Денис Сидоренко @DenisDP

User

Send message

50 советов для разработки безупречного дизайна iOS приложения

Reading time12 min
Views58K
Привожу перевод статьи Ника Карсона. В статье собраны вместе, как мне кажется, основные правила построения интерфейса для iOS приложений.

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

2. Ориентируйтесь на устройство при создании приложений: учтите не только размер экрана, но и где и когда устройство используется. Больше всего iPad используется для развлечений между 8-11 часами вечера, перед сном, тогда как iPhone — в очереди на автобус или в кофейне. Учтите различные сценарии использования при разработке приложений – включая и то, как далеко устройство расположено от лица пользователя.

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

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

5. При адаптации приложения к экранам различных размеров, помните, что при значительном его изменении – например, от iPhone к iPad – способ использования устройства также изменится. Если размеры ограничены, используйте основные функции приложения, при их увеличении – можно включить любые дополнительные функции, которые не вошли в более сжатую версию, так как у вас появляется возможность обыграть дополнительное пространство.

За остальными 45-ю — добро пожаловать подкат.
Читать дальше →

CSS3 с погружением

Reading time7 min
Views36K
CSS3 видели и пробовали все, кого он мог заинтересовать. И закругленные уголки и падающие тени мы уже можем генерировать без лишнего труда.

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

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

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

Изучение иностранных языков: живые учителя или интернет?

Reading time4 min
Views74K


— Феденька, ты очень интеллигентный мальчик, ты мне очень нравишься, но Я БУДУ СТАВИТЬ ДВА В ГОДУ!!! — визжала моя школьная учительница по французскому и делала примерно такое лицо.

Моя школьная учительница по английскому языку делала другое лицо:
Читать дальше →

Социальная сеть для изучающих иностранные языки

Reading time1 min
Views1.6K
Идея стартапа.

Я работаю переводчиком и вот уже более 10 лет изучаю английский язык. До сих пор не могу сказать, что знаю его в совершенстве, так как очень часто открываю для себя в языке что-то новое, либо приходит какое-то новое, более глубокое понимание каких-то его закономерностей или правил. Довольно часто (особенно во время работы) ловлю себя на мысли, что было бы неплохо, если бы в любой момент я имел бы возможность связаться с носителем языка и что-то с ним обсудить, попросить объяснить какие-то языковые и грамматические явления, устоявшиеся выражения и т.п. В свою очередь, я бы с радостью оказал такую же услугу иностранцу, изучающему русский язык. Несколько раз, когда возникал вопрос о правильности звучания и удобстве восприятия тех или иных конструкций, я даже порывался разыскать в аське какого-нибудь англичанина, и поговорить с ним на эту тему, но не у каждого найдется время и желание этим заниматься. Тут-то мне и подумалось, что вот если бы существовала такая сеть, объединяющая людей, которые любят и изучают какой-нибудь иностранный язык, то лично мне она бы была очень полезна. А если она была бы полезна мне, то, возможно, она бы была полезна и кому-то еще.
Читать дальше →

Место под солнцем для нового стартапа

Reading time6 min
Views39K
Недавно мы опубликовали историю появления на свет LinguaLeo.ru. Сервис запустился в бета-версии 1 марта. Меньше чем через месяц команда разработчиков возвращается в Москву. Но нам жаль просто так уезжать с острова Ко Чанг — уж очень много было вложено в создание комфортных условий для работы. Поэтому мы хотим поделиться своими впечатлениями, каково это — вести разработку на острове в Таиланде, и в подробностях рассказать, с чем придется столкнуться тем, кто отважится на авантюру и отправится в тропики, чтобы целиком посвятить себя реализации задуманной идеи. И объявляем акцию: мы передадим наше солнечное место хорошим ребятам с новым интересным стартапом!

091 -- DSC_9057
Читать дальше →

Английский язык онлайн с LinguaLeo.ru: рожден в джунглях Таиланда!

Reading time3 min
Views45K
В конце августа 2009 года мы приняли окончательное решение о месте разработки веб-сервиса: остров Ко Чанг, Таиланд. Команда была собрана за 1.5 месяца с разных уголков нашей необъятной Родины: Москва, Киров, Пермь. Была поставлена единственная цель поездки в эту замечательную страну: общими усилиями создать самый удобный и популярный онлайн сервис для изучения и практики иностранных языков.
В команду стартапа вошло пять человек: два PHP разработчика, дизайнер-юзабилист, молодой и талантливый специалист по маркетингу и основатель проекта. 17 октября 2009 уже вся команда уже приехала на остров с твердым намерением реализовать проект.

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

LinguaLeo Island -- остров Ко Чанг...

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

История одного ресурса

Reading time3 min
Views1.7K

логотип форума Многие из хабраюзеров хоть раз в свой жизни встречались с XSS-уязвимостью, будь-то уязвимость на сайте-визитке, блоге, etc. Но мы верили надеялись, что такие гиганты как yandex, mail, youtube от этого защищены, но цикл статей от chelovekdimka нас в этом разубедил.



А как же обстоят дела на одном из крупных ресурсах Рунета посвященному программистам?! Кому интересно – добро пожаловать

под хабракат

Разработка 2D игр под Windows и HTML5 без программирования

Reading time4 min
Views38K
image

Привет Хабраюзеры!

Сегодня я хочу представить вашему вниманию замечательный конструктор 2D игр (для Windows и в частности для HTML5) Scirra Construct.

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

Видеоанализ в системах защиты периметра

Reading time8 min
Views16K
На сегодняшний день защита периметра является основным приложением профессиональной видеоаналитики (если не включать в это понятие задачу распознавания номерных знаков автомобилей). В отличие от систем видеоанализа, используемых в общественных местах, периметральная видеоаналитика решает более конкретную и простую задачу — первичное обнаружение человека или транспортного средства в стерильное зоне. В нашей первой публикации в 2009 году мы рассмотрели общие проблемы периметральной видеоаналитики и оценки ее точности.

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

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

Интегральный характеристикой точности видеоаналитики для периметра является показатель F1, используемых в тестах i-LIDS, который зависит от частот ошибок I и II рода, а так же от времени реакции системы. Срыв слежения за целью приводит к повторному срабатыванию, что считается ошибкой I рода. Поэтому слежение является важной составляющей периметральной видеоаналитики (в отличие от обыкновенного детектора движения).

Настоящая статья дополняет вышеуказанную публикацию современными тенденциями отрасли и более подробно рассказывает о востребованных функциях видеоаналитики в системах защиты периметра.

Тенденция 1. Различные спектры наблюдения


Главным стимулом применения сенсоров, работающих в различных диапазонах спектра, является обеспечение всепогодного режима работа и/или увеличения дальности действия камеры. На периметрах применяются фиксированные камеры ближний инфракрасной, средней тепловизионной и дальней тепловизионной областей спектра. Как показано на рисунках рис. 1-3, сенсоры формируют изображение различной информативности и требуют адаптации видеоаналитики к специфическим особенностям наблюдения в каждом диапазоне спектра. Здесь наиболее сложными задачами являются: детектирование целей при неблагоприятном соотношении сигнал/шум, слежение за слабоконтрастными целями на большой дальности (при существенной амплитуде дрожания изображения). Так же имеет место сложная отраслевая специфика: например, при мониторинге периметра железнодорожного полотна, видеоаналитика не должна реагировать на поезда и создаваемые им помехи (тени, вихри снега, сильные вибрации камеры).

Рисунок 1 Наблюдение в зоне ближней инфракрасной области спектра: велосипедист на пересеченной местности, катер на воде, человек на мосту
Наблюдение в зоне ближней инфракрасной области спектра: велосипедист на пересеченной местности, катер на воде, человек на мосту
Читать дальше →

Обзор свежих материалов, декабрь 2011

Reading time6 min
Views1.3K
Этот материал продолжает серию ежемесячных обзоров свежих статей по теме интерфейсов, новых инструментов и коллекций паттернов, интересных кейсов и исторических рассказов. Из лент нескольких сотен тематических подписок отбирается примерно 5% стоящих публикаций, которыми интересно поделиться. Предыдущие материалы: апрель 2010-ноябрь 2011.


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

3D кнопки с помощью CSS3

Reading time6 min
Views44K
Здравствуй, дорогой хабрадруг! Сегодня мы научимся создавать объемные кнопки CSS3! Они основаны на популярной PSD фриби от Orman Clark для его веб-сайта Premium Pixels. Мы постараемся создать копию этих кнопок с помощью CSS с минимальным количеством кода HTML.

Preview

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

Рекомендации по функциям HTML5

Reading time1 min
Views4K
Новый справочный сайт HTML5Please может сильно помочь при разработке кросс-браузерных сайтов на HTML5.

Веб-разработчики привыкли постоянно ходить на caniuse.com и проверять поддержку определённой функции в каждой версии каждого браузера, включая прошлые и будущие. Оно и понятно, ведь новые браузеры обновляются с сумасшедшей скоростью, и поддержка функций меняется чуть ли не каждый день.

HTML5Please идёт дальше. Кроме информации c caniuse.com, он ещё даёт практические рекомендации, каким образом лучше реализовать каждую фичу HTML и CSS. Просто вписываете в поисковую строку любую функцию — и сразу видите рекомендацию, можно её использовать или нет в данный момент, а если можно, то с какими условиями.

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

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

Мероприятия для антрепренёров: куда идти в зависимости от цели

Reading time4 min
Views845
Сейчас о создании своего стартапа не думает разве что два типа IT-людей. Это те, кто нормально устроился в крутую IT-компанию в офис с видом на вулкан Гунунг Агунг и участвует в создании действительно крутых проектов, либо ну самые ленивые, для которых корпоративный обед и ДМС являются синонимами слова счастье.

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

Итак, давайте рассмотрим основные стадии развития проекта и соответствующие мероприятия (в Москве) по привлечению инвестиций.

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

Почему стартапы умирают и другие ответы

Reading time2 min
Views8.2K
Мне очень понравилась книга The Lean Startup, написанная Eric Ries. Я советовал ее прочитать всем авторам стартапов. Правда, оказалось, что не всех хватает сил прочитать 300 страниц достаточно плотного английского текста. Поэтому я решил пересказать на русском языке наиболее важные части из этой книги.

Начинается же книга с простого вопроса: «Почему стартапы умирают?»

Команда стартапа создает новый продукт в обстановке полной неопределенности. Никто еще точно не знает, кто же их реальные пользователи и каким на самом деле должен быть продукт. Как и любым бизнесом, веб­‐проектом нужно управлять. Каждым стартапом кто‐то как-то управляет, но большинство проектов погибает. Почему?

Первая проблема – безоговорочное доверие хорошему бизнес-плану, четкой стратегии и обширными маркетинговым исследованиям. В не такие уж и давние времена бизнес-планы, стратегии и исследования были хорошей заявкой на успех большинства бизнес-начинаний. Искушение внедрить аналогичный подход к планированию работы и в стартапы огромно, но в стартапах такой подход, увы, не работает, так как стартапы существуют в условиях слишком большой неопределенности. Планировать можно что-то имеющее отношение к реальности только в
том случае, если основываться на длительной и стабильной бизнес-­‐истории и условия относительно статичного рынка. У стартапов нет истории, и растут они в окружении, которое меняется с необычайной быстротой.
Читать дальше →

Типы instance в amazon ec2

Reading time3 min
Views32K

В этой статье я расскажу о трех типах instances в Amazon с примерами подсчета стоимости и скринами с консоли и биллинга Amazon. Статья родилась в силу малого количества информации про amazon web services, в частности данных про экономию оплаты на reserved instances я не нашел в рунете. Много скринов для лучшего понимания, когда я начинал работать с amazon мне этого сильно не хватало.

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

Балансировщик нагрузки для Amazon EC2 c автомасштабированием

Reading time9 min
Views9.8K
Многие знают, что Amazon предоставляет возможность автоматически наращивать мощность вашего пула (увеличивать количество виртуальных серверов) в зависимости от нагрузки. Однако я не сумел найти в русскоязычном сегменте сети толкового описания практической реализации такой схемы. Рискну представить на суд общественности итог моих штудий на данную тему.

Итак, вводные данные. Наш сервер, судя по кривой посещаемости, в скором времени начнёт испытывать весьма суровые нагрузки, особенно в пиковые моменты. Для эффективной обработки трафика, а также во избежание отказов в обслуживании было решено использовать механизмы, предоставляемые Amazon, позволяющие в реальном времени запускать необходимое количество серверов. При этом, когда нагрузка спадает, получившийся пул должен «сбавлять обороты», автоматически уменьшаясь в размерах, и тем самым уменьшать финансовые затраты на проект.

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

Raspberry Pi, сигнализация и умный дом

Reading time7 min
Views117K

Началось все года 4 назад когда во время рабочего дня у меня обчистили квартиру. Попасть домой через дверь после этого уже не удалось из-за поврежденного замка. Неприятное событие заставило задуматься о безопасности жилища. И это лишь одна из причин для мониторинга и автоматизации квартиры. Как часто прийдя на работу (а то и уезжая или улетая куда-либо) вы сомневались выключили ли перед уходом утюг, закрыли ли газ, воду ;-) Подбавим масла в огонь админам — спокойны ли вы что ваш старый БП в работающем системнике дома не чадит и не пылает!?) И что удаленно делать с девайсом, который «наглухо завис».

В этом посте я рассмотрю некоторые существующие на рынке решения, розничную стоимость доступного аппаратного обеспечения и способ как создать сигнализацию квартиры и некоторые из функций «умного дома» используя одноплатный компьютер Raspberry Pi
Читать дальше →

HD-видео на компьютере: CPU, DXVA, Hi10P, плееры

Reading time5 min
Views124K
     

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

Т.к. речь идет о HD-видео, то потребуется высокая производительность декодера. Например, если декодериуем на CPU, то на потоках 30-35 MBps на Intel Core2 Duo E8500 3.2 GHz уже начинают выпадать кадры. Процессор довольно быстрый, разница в производительности по сравнению с ядром Sandy Bridge на той-же частоте будет порядка 20%. Качественно пережатый full-HD фильм может создать проблемы, не говоря уж об оригинальных потоках с Blu-ray, там поток может достигать 45 MBps. Обладатели ноутбуков обычно имеют процессоры послабее, да и настольные системы не у всех с мощными CPU. Еще один случай, где CPU становится узким местом – это deinterlacing. Deintrlacing необходим при просмотре потоков спутниковых HD каналов, потоки там с разумным bitrate (обычно 10-15 MBps), но программный deintarlace съедает все остатки ресурсов. Причем качественный deinterlace, без замыливания и с сохранением fps, тяжелы для CPU. Единственный выход – использовать аппаратное декодирование, которое предлагают современные GPU. Про видео со спутниковых каналов следует отметить, что они бывают частично поврежденными, т.к. прием не всегда идеален, поэтому важно, чтобы плеер стабильно переваривал такие “срывы” потока.
Читать дальше →

Information

Rating
Does not participate
Location
Сочи, Краснодарский край, Россия
Date of birth
Registered
Activity