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

Как победить Excluded Constraints с помощью RubyGem

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


Во время разработки iOS/OSX-приложений непременно приходится использовать Interface Builder и Auto Layout. В приложениях со сложными интерфейсом и в приложениях, находящихся в разработке достаточно давно, часто появляется проблема с большим количеством «исключенных констрейнов». Storyboard грузится необоснованно долго, а во время перехода между сценами можно успеть сходить за кофе.

Но, казалось бы, интерфейс всех контроллеров такой же незамысловатый, как и в релизе полгода назад. Что же случилось? Тем, кто использовал Size Classes, сразу понятно, что интерфейс — не такая простая штука, как кажется. Он ведет себя по-разному в разных ориентациях и на разных дисплеях. Делает он это, потому что некоторые constraints применяются только в определенной ситуации.

Это значит, что в остальных ситуациях эти constraints не используются. У Xcode Interface Builder есть особенность, которая помогает при разработке сложных интерфейсов и мешает при разработке простых. Если добавить constraint к какому-то UIView и затем удалить его из Xcode Inspector (а чаще всего это — самый удобный путь), Xcode не удалит его, а лишь сложит в список неиспользуемых на случай, если понадобится для другого дисплея или ориентации.

Иногда, если развернуть все группы constraints, можно ужаснуться происходящему в storyboard-файле:


Не хотите наблюдать подобное? Добро пожаловать под кат!
Читать дальше →
Всего голосов 10: ↑9 и ↓1+8
Комментарии4

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

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


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

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

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


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

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

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

Видео докладов с конференции IT NonStop Odessa 2015

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


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

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

Делимся видео выступлений.

Еще два доклада были посвящены менеджменту, их можно найти в нашем блоге на Мегамозге.
Читать дальше →
Всего голосов 6: ↑3 и ↓30
Комментарии0

Vagrant, Python, Pycharm = (удобная, работа, Windows)

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


Введение

Django — широко известный и один из наиболее развитых фреймворков для веб-разработки. Django написан на Python и, следовательно, для работы с ним потребуется установленный интерпретатор Python. Это не представляет никаких проблем, если мы работаем в среде Linux. Однако события принимают совсем другой оборот, если приходится заниматься разработкой на Python под Windows.

Для Windows есть готовые сборки Python, среди которых стоит отметить Enthought Python, Anaconda Python, PythonXY.
Есть и более простые пути.
Основной их недостаток по сравнению со «стандартным» Python в Linux — ограниченность набора библиотек, доступных для установки. В частности, в них не Django, и для его установки приходится совершать некие не совсем очевидные действия.

Один из возможных вариантов решения проблемы — установка виртуальной машины с Linux на борту. Работа с виртуальной машиной, несмотря на простоту ее установки и настройки, привносит ряд неудобств.
Так, виртуальная машина может оказаться довольно требовательной к ресурсам компьютера и временами работать медленно, создавая дискомфорт разработчику. Особенно сильно это раздражает, если торможение начинается в самый напряженный момент работы (а именно тогда это чаще всего и происходит!). Кроме того, даже на очень хорошем железе такое IDE, как PyCharm, работает в режиме далеком от того, который принято считать комфортным.

Повысить быстродействие можно за счет установки только необходимых пакетов, отсутствия оконного менеджера и тому подобных проблем. Т. е., необходимо правильно сконфигурировать виртуальную машину. И в этом деле на помощь приходит Vagrant — утилита для создания полностью готовых рабочих окружений на основе виртуальных машин (VirtualBox, VmWare Player/Workstation). Vagrant не только устанавливает виртуальную машину, но и позволяет с легкостью создавать новые, используя текущую конфигурацию пользователя.

В следующем разделе рассматривается установка и настройка рабочего окружения Vagrant для использования его в качестве удаленного Python интерпретатора для проектов PyCharm.
Читать дальше →
Всего голосов 22: ↑20 и ↓2+18
Комментарии39

Создание шорткодов в WordPress CMS

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


Что такое шорткоды

Начиная с версии 2.5, разработчики WordPress ввели понятие «Shortcodes API». Этот функционал позволяет создавать и использовать макрокоды в страницах сайта или в записях блога. Например, простая и короткая запись добавит на странице целую фотогалерею.

Более подробно прочитать о шорткодах и узнать, как создавать простые шорткоды, вы можете из документации WordPress.

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


Читать дальше →
Всего голосов 13: ↑9 и ↓4+5
Комментарии7

Thank you points: сетевой анализ социальных связей внутри DataArt

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


Святослав Зборовский из BI-команды DataArt изучил, кого из коллег чаще всего благодарят с помощью корпоративной системы. В статье для Хабр он рассказал, как быстро построить и оптимизировать граф и какие кластеры ему удалось на нем выделить.
Читать дальше →
Всего голосов 2: ↑1 и ↓10
Комментарии0

Проектирование, оптимизация и поддержка крупных php-проектов

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

Роман Еникеев в прямом эфире Митапа в ОЭЗ "Иннополис" рассказал о том, что нужно понимать под защищенностью данных, немного об изменении мира к лучшему, путем создания хорошего программного продукта и его характеристиках. Вы узнаете о пирамиде нахождения багов и о самой поддержке продукта.

Читать далее
Всего голосов 10: ↑7 и ↓3+4
Комментарии0

MS SQL: генерация псевдослучайных данных с использованием newID(). Возможности и подводные камни

Время на прочтение5 мин
Количество просмотров44K
Известно, что встроенная функция newID() широко используется разработчиками не только по прямому назначению — то есть для генерации уникальных первичных ключей, но и в качестве средства для генерации массивов псевдослучайных данных.
Читать дальше →
Всего голосов 31: ↑25 и ↓6+19
Комментарии7

Google I/O 2017: мои впечатления и комментарии коллег

Время на прочтение5 мин
Количество просмотров6.4K
Автор: Елена Федорова, руководитель департамента Human resource marketing, DataArt, Воронеж



C 2009 года я возглавляю комьюнити Google Developer Group в Воронеже, кроме того, в 2016 мы организовали сообщество для девушек в IТ Women Techmakers Voronezh. Так что пропустить очередную конференцию Google I/O я, конечно, не могла. Для меня Google I/O — не просто анонсы крутейших новинок и возможность прямо сегодня заглянуть в ближайшее будущее, но и ощущение общего движения, общение с коллегами и друзьями по сообществу.

Немного статистики по Google-комьюнити:

• Около 600 активных GDG-групп в 102 странах.
• 3610 тематических событий за последние полгода.

Мой отчет с прошлогодней конференции можно прочитать здесь. На этот раз я собрала комментарии коллег и, дополнив их собственными впечатлениями, постаралась выделить пять интересных особенностей Google I/O 2017.
Всего голосов 18: ↑16 и ↓2+14
Комментарии2

Мария Черницкая: «Отличное было время — никто не стоял над душой»

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


Мария Черницкая закончила филфак СПбГУ, изучала наследие Владимира Набокова, училась набоковедению в США и собиралась было писать там диссертацию — но довольно неожиданно стала заниматься рекламой и маркетингом в области IT-технологий, работала в DataArt директором по маркетингу новорожденного сервиса Mail.ru. Теперь Мария — основатель, директор и основной группы компаний iConText, крупнейшего независимого интернет-агентства в России.

— Ты же закончила филфак, занималась Набоковым?

— Да, я училась в Америке и должна была писать PhD. Я вернулась в Петербург весной и предполагалось, что уже осенью уеду в Канзас, где набоковедение было очень сильное, но в первую весну я не поступила. Мне сказали: «Приходите через год, потусуйтесь пока в России». Для меня это был депрессивный облом. Я думала, что же я буду тут делать, я не хочу здесь жить ни секунды. У меня не было ни планов, ни работы. Я преподавала английский в 610 школе и подрабатывала в легендарном киноведческом журнале «Сеанс» у Любы Аркус.

— А как в твоей жизни появился интернет?

— В набоковском фонде мне сказали, мол, Маша, нам надо сделать сайтик. У нас есть дружественная провайдерская компания, вы к ним сходите, они вам помогут. Я пошла, мне дали лучшего специалиста, отвлекли его от всех дел, и мы с ним целыми днями делали сайтик о Набокове. Они тем временем запускали интернет-провайдера «Компьютерные сети», и я им говорила, что, мне кажется, надо поступить так и сяк — для них я была человек, который жил в Америке и что-то видел. В результате они предложили мне стать их маркетинг-директором. Там было мало денег, работа нервная, все было сложно, но все то, что получалось, получалось очень здорово.

В какой-то момент я открыла для себя, что в Москве есть провайдер «Ситилайн» (один из первых крупных российских интернет-провайдеров — прим. ред.) и глянцевый журнал «Интернет». Я мечтала приобщиться к миру этих людей — и вдруг владелец «Ситилайна» Емеля (Емельян Захаров — видный московский галерист — прим. ред.), позвонил мне и предложил стать их директором в Петербурге. Такое было странное время — социальные лифты ездили с огромной скоростью, одни люди находили других, сходных по духу, и доверяли им большие деньги и большие задачи.
Читать дальше →
Всего голосов 14: ↑7 и ↓70
Комментарии2

Юлия Мещерякова: 8 лет «Что? Где? Когда?» c DataArt

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


Мы уже писали о команде DataArt по «Что? Где? Когда?», которой уже восемь лет. За это время на базе DataArt прошло больше десяти «синхронов» — и посвященных IT, и более широкого формата. А игроки добились существенных успехов: занимали призовые места на турнирах, оказались достаточно высоко в мировом рейтинге, а в этом году даже представляли Воронеж на чемпионате России.

Мы взяли интервью у Юлии Мещеряковой, капитана команды.
Читать дальше →
Всего голосов 9: ↑6 и ↓3+3
Комментарии0

Как мы выиграли Thack 2015 Berlin

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

Привет, ГТ!

Меня зовут Денис Цыплаков, я — Solution Architect в DataArt.
В конце февраля этого года команда DataArt участвовала в travel-хакатоне THack 2015 Berlin и выиграла главный приз для больших команд. Проводил хакатон онлайн-журнал Tnooz.
Ниже расскажу, как это было. И почему мы выиграли.

Коротко о конкурсе.

Tnooz — один из крупнейших информационных ресурсов, посвященных технологиям в сфере туризма.

Он существует с 2009 года. Основная тематика издания — travel-технологии. Эксперты, пишущие для Tnooz о трендах и перспективах индустрии, живут по всему миру. Кевин Мэй, редактор и один из создателей ресурса, до этого около четырех лет был редактором в известном английском журнале Travolution.

Кроме онлайн-новостей и аналитики, Tnooz ведет серию успешных проектов: хакатоны THack, презентации TLabs, серия встреч Appy Hour и различные вебинары.
Читать дальше →
Всего голосов 12: ↑9 и ↓3+6
Комментарии2

Ловим усталость с помощью AndroidWear

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


Это небольшая история про один из экспериментов нашей компетенции Wearables.
Мы провели его больше года тому назад, поэтому код изрядно устарел, да и AndroidWear-приложением сегодня уже никого не удивишь, однако задумка была очень интересной, и поработать над ней было здорово. За что огромное спасибо авторам идеи: Арсению Печенкину и VP of Engineering Роману Чернышеву, благодаря которым стартовал этот R&D.

Посмотреть код можно на GitHub. А вот небольшая презентация.


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

Предпочтения и навыки программистов разных стран: DataArt изучил статистику платформы Skillotron

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


В августе 2017 года DataArt запустил игровую платформу самопроверки знаний для IT-специалистов Skillotron. За полгода ее пользователями стали более 7 тысяч человек из 54 стран, а мы успели собрать интересные данные об особенностях поведения игроков. Исследование не претендует на универсальность — мы не утверждаем, что статистика Skillotron отражает положение дел в IT в целом. Но посмотреть на нее нам было интересно, тем более, что для DataArt Skillotron — необычный опыт разработки собственного продукта.
Читать дальше →
Всего голосов 9: ↑9 и ↓0+9
Комментарии4

IT NonStop — большой айтишный праздник в Воронеже

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

Международная айтишная конференция IT NonStop добралась и до Воронежа! Настоящий технический праздник для всех, кому небезразличны самые современные технологии, подарили нашему городу DataArt, Воронежский государственный университет и факультет ПММ. Около 400 программистов, тестировщиков и других причастных собрались в ВГУ 21 марта, чтобы пообщаться с коллегами, поделиться опытом и послушать интересные доклады. Перед гостями выступили крутаны из самых разных технических областей.

Фотоотчет можно посмотреть уже сейчас. А вскоре поделимся видео докладов и другими материалами. Следите за нашим блогом и страницами в социальных сетях!

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

Мы на Health 2.0 Europe, или Проверяйте пульс, не отходя от кассы

Время на прочтение5 мин
Количество просмотров1.8K
Привет, GT!

Меня зовут Валентина Лахина, я —маркетинговый координатор в DataArt. Среди прочего, занимаюсь подготовкой и проведением маркетинговых компаний, подготовкой к выставкам и конференциям, поиском потенциальных клиентов для нашей компании.

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



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

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

Прогнозы DataArt на 2016 год по трендам в сфере корпоративного ПО

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

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

Цифровизация банковского сектора, финансовые решения, адаптированные к индивидуальным потребностям поколения миллениума, персонализация и решения в туристическом секторе на основе технологий интернета вещей, медицина, ориентирующаяся на пациента, и развитие новых систем управления данными — среди главных трендов ПО для компаний в 2016 г. Таков прогноз DataArt, международной консалтинговой фирмы, которая создает решения полного цикла для сектора финансов, здравоохранения, путешествий и туризма, медиа, интернета вещей.
Читать дальше →
Всего голосов 8: ↑7 и ↓1+6
Комментарии0

Хамелеоньи будни в офисе DataArt

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


В DataArt очень любят животных. Почти в каждом из наших многочисленных офисов живет какой-нибудь дивный зверь. Зачастую звери становятся талисманами и своеобразными маскотами офисов. Петербургский DataArt уже давно стал хамелеоньим царством. Сейчас там правит сэр Benedict V. Cucamberbatch, уже второй изменчивый ящер. Его фотографиями мы и украсим текст.

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

Читать дальше →
Всего голосов 16: ↑14 и ↓2+12
Комментарии6

DataArt на Bankathon

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


Команда DataArt получила специальный приз от «Дойче банка» на банкатоне, который проходил 26 – 28 апреля во Франкфурте-на-Майне.

Хакатон для банков (банкатон) собрал в Германии 90 участников из 25 айтишных команд. Два с небольшим дня в коворкинге они создавали свои проекты, чтобы презентовать жюри. Борьба шла за три главных приза, два приза организаторов и специальный приз «Дойче банка».

В ближайшее время мы подготовим подробную статью, полную технических подробностей и других интересностей, а пока хотели бы по горячим следам поделиться с вами радостью.
Читать дальше →
Всего голосов 6: ↑4 и ↓2+2
Комментарии2

Команда DataArt поедет на чемпионат России по «Что? Где? Когда?»

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


Команда «Сфинкс — DataArt» представит Воронеж на чемпионате России по ЧГК в Петербурге 16 — 17 мая. Несколько сотен лучших эрудитов страны соберутся, чтобы продемонстрировать знания и логику, пообщаться с единомышленниками и просто хорошо провести время.

В крейсерском составе команды — двое наших коллег, которые и основали «Сфинкс» восемь лет назад. С тех пор на базе DataArt прошло больше десяти разных синхронов, и посвященных IT, и более широкого формата. «Сфинкс» неоднократно занимал призовые места на турнирах и в итоге оказался достаточно высоко в мировом рейтинге. Теперь команда выходит на еще более высокий уровень. Удачи ребятам!
Всего голосов 10: ↑3 и ↓7-4
Комментарии5