Как стать автором
Обновить
0
@vnuk_g_aread⁠-⁠only

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

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

UX-дизайн: флажки и переключатели в формах

Время на прочтение4 мин
Количество просмотров38K
image

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

Выбор параметров может осуществляться с помощью флажков, переключателей, радиокнопок и раскрывающихся кнопок. Все варианты хороши, если правильно их использовать. В данной статье речь пойдет о флажках и переключателях.
Читать дальше →
Всего голосов 15: ↑12 и ↓3+9
Комментарии14

9 способов раздробить свою работу так, чтобы сохранить концентрацию и продуктивность

Время на прочтение7 мин
Количество просмотров34K
image

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

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

Вот 9 способов разделить работу, позволяющие постоянно видеть цель и предпринимать шаги к ее достижению.
Читать дальше →
Всего голосов 25: ↑22 и ↓3+19
Комментарии21

История URL'а: домен, протокол и порт

Время на прочтение13 мин
Количество просмотров43K

11 января 1982 года двадцать два специалиста по информатике встретились, чтобы обсудить «компьютерную почту» (ныне известную как "электронная почта"). Среди участников был будущий основатель Sun Microsystems, парень, который сделал Zork, чувак, создавший NTP, и еще один, который убедил правительство платить за Unix. Перед ними стояла задача решить проблему: в ARPANET было 455 хостов, и ситуация выходила из под контроля.



Проблема возникла из-за того, что ARPANET переходил с оригинального протокола NCP на протокол TCP/IP, на котором сейчас существует Интернет. После такого перехода быстро должно было появиться множество объединенных сетей (inter...net), которым требуется иерархическая система доменов, чтобы ARPANET мог резолвить свои домены, а другие сети — свои.

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

По ту сторону онлайн-консультанта

Время на прочтение11 мин
Количество просмотров48K
image

Все видели окошко онлайн-консультанта в интернет магазинах. Оно в каком-то смысле стало стандартом, к нему все привыкли. Оно может помогать, может раздражать, но мало кто знает, что происходит с обратной стороны фразы “Здравствуйте! Чем я могу Вам помочь?”


А с обратной стороны (во всяком случае, в моем офисе) происходит Лена!


Гость: Добрый день! Чем я могу Вам помочь?
Лена: Добрый день! Чем я могу Вам… Твою мать!

Читать дальше →
Всего голосов 127: ↑107 и ↓20+87
Комментарии101

Введение в компиляторы, интерпретаторы и JIT’ы

Время на прочтение13 мин
Количество просмотров49K
С рождением PHP 7 не прекращаются споры об абстрактных синтаксических деревьях, just-in-time компиляторах, статическом анализе и т. д. Но что означают все эти термины? Это какие-то волшебные свойства, делающие PHP гораздо производительнее? И если да, то как это всё работает? В этой статье мы рассмотрим основы работы языков программирования и разъясним для себя процесс, который должен выполняться до того, как компьютер запустит, например, ваш PHP-скрипт.
Читать дальше →
Всего голосов 37: ↑33 и ↓4+29
Комментарии15

Как начать разработку крупного, нетипичного проекта. Практическое пособие

Время на прочтение6 мин
Количество просмотров28K

image


Выбор платформы для бекенда

Чтобы создать качественное и производительное Web-приложение, необходимо уделить должное внимание выбору платформы для разработки. Этим нужно заняться сразу же после того, как вы ознакомились, какие задачи должно выполнять это приложение.


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

Читать дальше →
Всего голосов 23: ↑15 и ↓8+7
Комментарии64

Проектирование новостной ленты в социальных сетях

Время на прочтение9 мин
Количество просмотров39K


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

Мой рассказ будет о том, как я, превозмогая трудности, решал задачу формирования новостной ленты. А также я расскажу о подходах, которые наработали ребята из проекта Socialite, и которыми они поделились на MongoDB World.
Читать дальше →
Всего голосов 38: ↑34 и ↓4+30
Комментарии68

10 навыков «эффективных» менеджеров

Время на прочтение16 мин
Количество просмотров7.1K

Автор: Евгений Ефимов
QA Lead, DataArt

Моряки, самолеты и корпорации


  • Н.Н. Талеб и моряки.
  • Абрахам Вальд и самолеты.
  • Левитт и корпорации.

Существует понятие «систематическая ошибка выжившего». Оно встречается в книгах Талеба “The Black Swan. The Impact of the Highly Improbable” («Черный лебедь. Под знаком непредсказуемости» и “Fooled by Randomness: The Hidden Role of Chance in Life and in the Markets” («Одураченные случайностью. Скрытая роль Шанса на рынках и в Жизни»). Он описывает красивую картину, на ней древнегреческие моряки молятся богам во время шторма. Богам нравится, как они молятся? и поэтому моряки спасены. Шторм превращается в штиль или слабый ветер, корабль доплывает до берега, и все остаются целы. Когда спрашивают других моряков, как удалось доплыть, они тоже говорят: «Мы молимся богам и всегда доплываем». Проблема в том, что мы не можем спросить об этом моряков, которые утонули. Возможно, что они тоже молились, но не доплыли. И вообще дело было не в этом, а, т. к. в то время почти все моряки были религиозны, можно предположить, что молились все. И есть вероятность, что это не действует.
Вторая история — про математика и статистика Абрахама Вальда и про самолеты. Действие происходит во время Второй мировой войны. Британские бомбардировщики возвращаются на базу. Задача — понять, где и как укреплять самолеты, чтобы как можно больше возвращалось и как можно меньше падало. Они смотрят на самолеты, которые вернулись, и говорят, что необходимо укреплять наиболее поврежденные попаданиями части. Поскольку в них все время стреляют, мы их укрепим, и все пули улетят обратно во вражеский самолет и всех там перебьют.

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

Стивен Левитт написал интересную книгу «Фрикономика». Он выбрал стандартные книги из серии «10 шагов к успеху» и проанализировал две книги, где рассказывалось про корпорации, использовавшие нововведения, которые привели их к успеху. Эти книги были условно написаны в 2000 году, и корпорации, используя эти наработки, побеждали остальные компании. На момент, когда Левит их анализировал оказалось, что три четверти этих корпораций закрылись. Они оказались убыточными, потому что внешняя среда поменялась, а они не изменили подход к успеху. Соответственно, все эти истории успеха не всегда и не для всех работают.

Есть такое понятие, как «систематическая ошибка выжившего», когда мы собираем статистику там, где ее проще найти. От тех, у кого все получилось, от тех, кто выжил, и учитываем только ее. А статистику о тех, у кого что-то не получилось, мы не учитываем. Все эти факторы могут сильно искажать нашу действительность и повлиять на то, как мы будем принимать решение. Иногда гораздо более интересная информация есть у тех, кто не выжил.
Читать дальше →
Всего голосов 16: ↑7 и ↓9-2
Комментарии3

Microservices. Как правильно делать и когда применять?

Время на прочтение19 мин
Количество просмотров73K



Автор: Вячеслав Михайлов



Монолитные приложения и их проблемы



Все прекрасно знают, что такое монолитное приложение: все мы делали такие двух- или трехслойные приложения с классической архитектурой:





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





Так или иначе, по мере роста и развития приложения, вы сталкиваетесь с проблемами монолитных архитектур:



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


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


Читать дальше →
Рейтинг0
Комментарии6

Ежедневные релизы — это не так уж страшно

Время на прочтение7 мин
Количество просмотров33K


Меня зовут Оксана Харчук, я работаю QA-инженером в DataArt чуть больше года. Расскажу, как в нашем проекте организован процесс работы, и как быть, если релиз каждый день.

Сначала, когда я только пришла в DataArt, слово «релиз» ассоциировалось у меня с чем-то страшным. Но, как оказалось, если процесс работы построен правильно, релизы даже каждый день — совсем не страшно, а очень даже удобно.Чтобы этого достичь, процесс разработки в нашем проекте построен на принципах непрерывной поставки (continuous delivery) и непрерывной интеграции (continuous integration).

Что такое Continuous delivery и Сontinuous integration?


Continuous delivery или непрерывная поставка ПО — набор практик и принципов, нацеленных на сборку, тестирование и поставку ПО быстрее и чаще. Непрерывная поставка качественного кода опирается, в свою очередь, на непрерывную интеграцию.

Сontinuous integration, или непрерывная интеграция — это практика разработки ПО, которая заключается в выполнении частых автоматизированных сборок проекта для скорейшего выявления и решения интеграционных проблем. Ведь ясно: если над разными частями кода работают несколько программистов, при интеграции этих частей возникает много трудностей. Непрерывная интеграция помогает справиться с ними.
Читать дальше →
Всего голосов 20: ↑14 и ↓6+8
Комментарии39

Lean UX — мелочи для успешных проектов

Время на прочтение7 мин
Количество просмотров29K


Автор: Анастасия Режепп, глава дизайн-студии DataArt.

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

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

Что значит “lean”

Слово “lean” переводится на русский как «тощий», «худой», «постный». Если переводить этот термин более специальным образом, то — «бережливый», «экономный», «минималистический». Например, уже есть термин «бережливое производство» — перевод английского “lean production”. Бережливое производство подразумевает постоянное устранение всех видов потерь — это достигается, в том числе, максимальной ориентацией на потребителя. То же самое верно и для подхода бережливого (тощего) UX-дизайна.

Принципы бережливого UX-дизайна

Когда мы следуем методу тощего UX-дизайна, есть несколько моментов, на которые стоит обратить внимание:
  • Мы понимаем целевую аудиторию и ее проблемы.
  • Мы создаем MVP (Minimum Viable Product — минимально жизнеспособный продукт).
  • Мы работаем короткими итерациями.
  • Мы постоянно тестируем нововведения на пользователях и, если что-то не так, быстро откатываемся.
  • Мы работаем командой: UX-проектировщики, дизайнеры, разработчики и тестировщики работают вместе и постоянно обмениваются мнениями и задачами.

Читать дальше →
Всего голосов 20: ↑17 и ↓3+14
Комментарии1

Понятно и просто про веб-компоненты и Polymer

Время на прочтение9 мин
Количество просмотров48K


Кто я

Я — Александр Кашеверов. По образованию — магистр радиофизики. По профессии — веб-разработчик, работаю в компании DataArt с 2011 года, с 2009 увлекаюсь IT и веб-технологиями.

О чем статья, коротко

Рассмотрим, что такое веб-компоненты и polymer. Немного поразмышляем на тему развития веба. Посмотрим на технические детали, примеры, поддержку браузерами, тестирование. Коротко, понятно, по делу. С картинками.

Вступление

Веб постоянно развивается. Технологии были придуманы и внедрены, исходя из потребностей, актуальных на момент создания. Десять лет назад невозможно было сделать то, что мы реализуем сейчас, и сложно представить, что будет еще через 10 лет.

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

Для уменьшения головной боли хорошо бы, если в контексте веб:

  • CSS не пересекался.
  • Области видимости JS не пересекались.
  • HTML был понятным и читаемым, никаких лишних элементов.

Читать дальше →
Всего голосов 25: ↑22 и ↓3+19
Комментарии14

Оформление социальных кнопок в три шага

Время на прочтение2 мин
Количество просмотров12K


Привет, Хабр!

Сегодня небольшим, но полезным туториалом с нами поделится Дмитрий Кабаков, Senior фронтенд-разработчик DataArt.

В современном «гугломире» все большую важность набирает социальная составляющая сайта. Но обычные социальные виджеты/коды не всегда почти никогда не вписываются в оформление сайта.

Что же делать? Нужно оформлять!

Для туториала вам понадобится:
  • jQuery-плагин sharrre;
  • иконки FontAwesome;
  • знания HTML/CSS3;
  • минут 10 вашего времени
Читать дальше →
Всего голосов 25: ↑9 и ↓16-7
Комментарии22

Обзор способов и протоколов аутентификации в веб-приложениях

Время на прочтение18 мин
Количество просмотров650K


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

Перед тем, как перейти к техническим деталям, давайте немного освежим терминологию.

  • Идентификация — это заявление о том, кем вы являетесь. В зависимости от ситуации, это может быть имя, адрес электронной почты, номер учетной записи, итд.
  • Аутентификация — предоставление доказательств, что вы на самом деле есть тот, кем идентифицировались (от слова “authentic” — истинный, подлинный).
  • Авторизация — проверка, что вам разрешен доступ к запрашиваемому ресурсу.


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

Аналогично эти термины применяются в компьютерных системах, где традиционно под идентификацией понимают получение вашей учетной записи (identity) по username или email; под аутентификацией — проверку, что вы знаете пароль от этой учетной записи, а под авторизацией — проверку вашей роли в системе и решение о предоставлении доступа к запрошенной странице или ресурсу.

Однако в современных системах существуют и более сложные схемы аутентификации и авторизации, о которых я расскажу далее. Но начнем с простого и понятного.
Читать дальше →
Всего голосов 48: ↑48 и ↓0+48
Комментарии20

В поисках справедливости: Очевидные принципы мотивации профессионалов, которые не сразу пришли в голову

Время на прочтение14 мин
Количество просмотров29K


Привет, Мегамозг!

Сегодня мы хотели бы поделиться текстом Михаила Завилейского, генерального директора DataArt и автора другой замечательной статьи о менеджменте. Надеемся, вам понравится!

Disclaimer и благодарности

Хочется поделиться множеством мыслей, которые стали моими существенно позднее, чем мне хотелось бы и не пришли в мою голову «сами по себе». Просто довелось нечто услышать, увидеть, прочитать или получить совет, и в голове что-то «встало на место». Я бы хотел сказать спасибо всем поимённо, но не могу — помню только книжки Дэвида Майстера, пересказы семинаров Михаила Гринфельда и еще лица полудюжины умнейших людей, чьи имена я забыл… А скольких уже совсем не помню, но всё равно — всем спасибо! И вдруг еще кому-то пригодятся ваши идеи.
Читать дальше →
Всего голосов 27: ↑22 и ↓5+17
Комментарии4

Дайджест свежих материалов из мира фронтенда за последнюю неделю №218 (27 — 3 июля 2016)

Время на прочтение5 мин
Количество просмотров27K
Предлагаем вашему вниманию подборку с ссылками на полезные ресурсы и интересные материалы из области фронтенда


Читать дальше →
Всего голосов 29: ↑23 и ↓6+17
Комментарии5

Важные аспекты работы браузера для разработчиков. Часть 1

Время на прочтение9 мин
Количество просмотров86K

Автор: Антон Реймер

Статья основана на вебинаре, который я проводил некоторое время назад. Рассчитана она, в первую очередь на тех, кто не знает, как работают браузеры, или тех, у кого есть пробелы в знаниях. Вероятно, здесь будет много очевидного для тех кто не первый день в веб-разработке. Статью я решил разделить на две части. В первой рассмотрим общие принципы работы браузера. Во второй части я акцентирую внимание на некоторых важных моментах: reflow и repaint, event loop.

Что такое браузер?


Браузер — программа, работающая в операционной системе. Большинство браузеров написано на языке C++. Основное предназначение браузера — воспроизводить контент с веб-ресурсов. В качестве веб-ресурса в большинстве случаев выступает html-страница. Это также может быть pdf-файл, png, jpeg, xml-файлы и другие типы. Среди огромного количества браузеров можно выделить самые популярные: Chrome, Safari, Firefox, Opera и Internet Explorer. Мы рассмотрим браузеры с открытым исходным кодом: Chrome, Firefox, Safari.

Из чего состоит и как работает браузер?



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

Пользовательский интерфейс — то, что видит перед собой пользователь, т. е. адресная строка, элементы навигации, собственное меню и т. д. Несмотря на то что пользовательские интерфейсы очень похожи друг на друга, никакого стандарта, который их описывал бы, не существует. Так исторически сложилось, что браузеры постепенно перенимали интерфейс друг у друга и становились все более похожими.
Читать дальше →
Всего голосов 32: ↑27 и ↓5+22
Комментарии30

Искусство осмысленного UX-дизайна

Время на прочтение11 мин
Количество просмотров16K
image

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

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

Но как на самом деле происходит это «вовлечение»? От чего зависит заметное и ожидаемое изменение поведения клиента? Что нужно, чтобы клиенты начали с восхищением говорить о вашем продукте?
Читать дальше →
Всего голосов 9: ↑8 и ↓1+7
Комментарии1

Поэтапное руководство по созданию иконок

Время на прочтение11 мин
Количество просмотров82K
image

Статья была опубликована на smashingmagazine автор статьи Scott Lewis.

Найти недорогие качественно сделанные иконки и векторные изображения не составляет труда – именно для этого есть такие веб-сайты, как Iconfinder (где работает автор настоящей статьи). В распоряжении дизайнеров тысячи наборов иконок премиум класса, и сотни наборов доступны для бесплатного скачивания.

В данной статье приводится руководство по дизайну векторных иконок, которое включает в себя шесть этапов. Мы рассмотрим эти этапы после того, как разберем основные принципы успешного дизайна иконок. Эти принципы хорошо известны и подробно рассмотрены в таких работах, как Руководство по дизайну иконок Джона Хикса, а также в руководстве от Google Материальный дизайн в разработке системных иконок. Шесть этапов, которые мы будем рассматривать в данной статье, должны восприниматься, как рекомендации, а не как догмы. Способность чувствовать, где нужно следовать правилам, а когда их лучше нарушить – это важное качество, которое должен развить в себе каждый хороший дизайнер, и мы наглядно это продемонстрируем.
Читать дальше →
Всего голосов 27: ↑25 и ↓2+23
Комментарии32

Пакет-географ – первая рабочая версия

Время на прочтение6 мин
Количество просмотров25K

Прежде всего хотел бы поблагодарить за более, чем 80 звёзд на GitHub, которые мне дали читатели Хабра по результатам предыдущего поста. И это несмотря на то, что репозиторий был почти пустой, а ссылка была неочевидна. На лицо полезность этого пакета!


Для тех, кто пропустил первый пост, маленькое повторение. Если у Вас в приложении есть что-то вроде:


Читать дальше →
Всего голосов 35: ↑34 и ↓1+33
Комментарии42

Информация

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