Pull to refresh
5
0
Рустам @RustamS

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

Send message

Мой опыт использования WebRTC в iOS приложении

Reading time4 min
Views20K
WebRTC (англ. Real-time communications — коммуникации в реальном времени) — проект с открытым исходным кодом, предназначенный для организации передачи потоковых данных между браузерами или другими поддерживающими его приложениями по технологии точка-точка.

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

image

Как я пришел к необходимости использования WebRTC


Задача проекта:

Представим, что нам требуется соединить двух случайных пользователей между собой для передачи real-time потокового видео друг другу.
Какие есть варианты решения проблемы?
Читать дальше →

Дайджест интересных материалов для мобильного разработчика #158 (14-19 июня)

Reading time3 min
Views10K
Главная новость недели, конечно, это WWDC от Apple — iOS 10, watchOS 3, обновленная tvOS, новая macOS Sierra и много обновлений внутри них. Главная же российская новость это введение НДС для «оказания услуг электронным способом». Скорее всего, это приведет к очередному подорожанию, сокращению рынка и уходу некоторых игроков.

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

Всемирная автоматизированная система «Технокоммунизм»

Reading time16 min
Views6.7K


А вдруг, все жаркие политические споры, всё литры слюны разбрызганные через телевизор, интернет, телепатнет, и даже все хабрасрачи длинные конструктивные обсуждения не ведут нас в светлое будущее? Многие миллионы людей во всём мире усердно трудятся на общее благо, но даже когда они объединены в различные сообщества и организации, то во всемирном масштабе их усилия всё равно разобщены, не комплексны, может это нужно исправить? Возможно нам нужно не тратя время на длинные споры объединяться по интересам во всём мире и достигать наших целей? Но объединятся и эффективно действовать очень сложно. Этому должны учить с первого класса школы и даже раньше, но не учат. Об этом должны каждый день говорить по всем телевизорам и во всех интернетах, но не говорят. Можем ли мы, люди, которые сейчас оказались здесь, объединиться и всё сделать ещё хуже улучшить? Я думаю, что мы можем! Я знаю, что таких людей как я миллионы и мы постепенно объединяемся (вот уже целый десяток человек есть, а то ли ещё будет) при помощи всемирной автоматизированной системы «Технокоммунизм» задача которой (далее читать громогласным голосом) помочь человечеству, дать людям мотивацию, знания и инструменты, для того, чтобы совместными усилиями достичь высокотехнологичное светлое будущее.

Прочитав статью, которая публикуется одновременно с этой статьёй, но на Гиктаймсе: "Технокоммунизм — путь в светлое будущее (не политика)" — в которой рассказывается в целом о том кто такой технокоммунизм и почему его можно и нужно достичь в первую очередь не политическим путём, кто за него борется и о существующих эмоциональных предпосылках для того, чтобы стремится в светлое будущее, кто-то скажет: «Фантастика, сопливые мечты, будь мужиком, не ной, смирись, тихо жуй хлеб с гвоздями, ты же сибиряк, совсем там в Санкт-Петербурге размяк». Я же со своим полуроботизированным мышлением вновь и вновь отвечу: «Это всё возможно, это всё цель и задачи, это всё просто нужно систематизировать в проектной форме и действовать исходя из ресурсов, которыми мы обладаем здесь и сейчас, действовать совместно на общее благо». А для всемирной проектной работы, опять же нужна всемирная автоматизированная система. Вот про то какими извилистыми путями она делается и поговорим, конечно же помня, что значительная часть наших действий имеет экспериментальный характер.
Читать дальше →

Руководство по работе с Redux

Reading time80 min
Views286K
Сегодня Redux — это одно из наиболее интересных явлений мира JavaScript. Он выделяется из сотни библиотек и фреймворков тем, что грамотно решает множество разных вопросов путем введения простой и предсказуемой модели состояний, уклоне на функциональное программирование и неизменяемые данные, предоставления компактного API. Что ещё нужно для счастья? Redux — библиотека очень маленькая, и выучить её API не сложно. Но у многих людей происходит своеобразный разрыв шаблона — небольшое количество компонентов и добровольные ограничения чистых функций и неизменяемых данных могут показаться неоправданным принуждением. Каким именно образом работать в таких условиях?

В этом руководстве мы рассмотрим создание с нуля full-stack приложения с использованием Redux и Immutable-js. Применив подход TDD, пройдём все этапы конструирования Node+Redux бэкенда и React+Redux фронтенда приложения. Помимо этого мы будем использовать такие инструменты, как ES6, Babel, Socket.io, Webpack и Mocha. Набор весьма любопытный, и вы мигом его освоите!
Читать дальше →

Декораторы и рефлексия в TypeScript: от новичка до эксперта (ч.3)

Reading time5 min
Views11K

Эта статья — третья часть серии:



В прошлый раз мы узнали, что такое декораторы и как они реализованы в TypeScript. Мы знаем, как работать с декораторами классов, свойств и методов.


В этой статье мы расскажем про:


  • Последний оставшийся тип декораторов — декоратор параметра
  • Реализацию фабрики декораторов
  • Реализацию конфигурируемых декораторов
Читать дальше →

Как создавать визуально эффективные призывы к действию

Reading time4 min
Views22K


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

Создавать эффективные посадочные страницы — это непростая задача. Это постоянная борьба между тем, что работает и что нет. Это непрерывный процесс тестирования, измерений и улучшений.

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

Хорошая новость состоит в том, что поведение людей достаточно предсказуемо, и мы можем это использовать.
Читать дальше →

Core Data + Swift для самых маленьких: необходимый минимум (часть 1)

Reading time12 min
Views93K
Про Core Data и Swift написано не так много, как хотелось бы, особенно это касается русскоязычного сегмента Интернета. При этом большинство статей и примеров используют довольно примитивные модели данных, чтобы показать только саму суть Core Data, не вдаваясь в подробности. Данной статьей я хотел бы восполнить этот пробел, показав немного больше о Core Data на практическом примере. Изначально, я планировал уместить весь материал в одну статью, но в процессе написания стало ясно, что для одной публикации объем явно великоват, а так как из песни слов не выкинешь, то я все-таки разобью данный материал на три части.

Вместо Введения


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

Переговоры о зарплате — как не прогореть

Reading time8 min
Views128K
image
Все фотографии в этой статье взяты из трилогии Кристофера Нолана «Тёмный рыцарь». Это всё же Бэтмен!

Давайте сыграем!

При подготовке вы хорошо поработали с телефоном. Интервью в офисе этим утром проходили занятно. После общего обеда сотрудник отдела кадров сел за стол напротив вас. Он спросил: «Какую зарплату вы бы хотели?».

Что вам делать? Что же вам делать?!


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

Или, возможно, он попробует другой подход, чтобы подтолкнуть вас назвать цифру: «Какая зарплата у вас сейчас?».

Этот вопрос звучит вполне резонно. Разве не надо отвечать на этот вопрос?
Читать дальше →

Дайджест интересных материалов для мобильного разработчика #157 (6-13 июня)

Reading time2 min
Views4.7K
Ждем сегодняшнюю WWDC и попутно обсуждаем сложности релиза игры в магазинах приложений, уже объявленные изменения в App Store, миллионы частиц на OpenGL ES 2.0, локализацию и UX.

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

[Письмо молодым] Мечтайте. Мечты сбываются. И я не знаю почему

Reading time3 min
Views138K


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

Поиск работы за рубежом: дайджест полезных материалов для потенциальных ИТ-экспатов

Reading time4 min
Views59K


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

Как управлять гигантами Vol.2: инструментарий для планирования разработки интернет-проектов

Reading time9 min
Views16K
image

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

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

Криптовалюта Dash: полноценное DAO

Reading time4 min
Views4.4K
image

Недавний стремительный взлёт основанного на децентрализованной платформе «Эфириум» проекта «The DAO (ДАО)» (в ходе запуска которого было собрано порядка 150 млн USD инвестиций), вызвал всеобщее воодушевление относительно концепции Децентрализованных Автономных Организаций. При этом для криптовалюты Dash существование в режиме ДАО — это уже “прошлогодний снег”. В этой переводной статье будут рассказаны подробности об этом.
Читать дальше →

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

Reading time6 min
Views23K
Предлагаем вашему вниманию подборку с ссылками на полезные ресурсы и интересные материалы из области фронтенда


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

Дайджест интересных материалов для мобильного разработчика #156 (30 мая-5 июня)

Reading time3 min
Views12K
Снова про ConstraintLayout, снова про Apple, боль и сертификаты, новое про устройства от Google, интерфейсы, библиотеки, маркетинг и разработку. Новый дайджест полон интересными материалами.

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

Ещё больше комфорта в разработке фронтенда с TARS

Reading time6 min
Views17K
TARS

Прошли очередные полгода с последних новостей о TARS (раз и два), а значит настало время поделиться новинками. Как всегда напомню, что TARS — это основанный на Gulp сборщик фронтенда, который помогает фронтенд-разработчику или даже целой команде создавать проекты любой сложности. Мы продолжаем уверенное шествие по России и не только. TARS уже используют в Нидерландах, Японии, Китае, Украине, Польше и других странах. Это можно заметить и по количеству звёзд на github, и по числу участников чата в gitter, и по количеству установок TARS-CLI за последний месяц (больше тысячи, а в пике больше 3 тысяч). Мы закрыли почти две сотни issue, выпустили два крупных обновления. Пользователи сборщика активно репортят, участвуют в разработке. Можно сказать, что у нас родилось маленькое сообщество.
Подробности

Быстрое клонирование объектов в JavaScript

Reading time5 min
Views45K
cloneКлонирование объектов в JavaScript довольно частая операция. К сожалению, JS не предоставляет быстрых нативных методов для решения этой задачи.

К примеру, популярная Node.JS ORM Sequelize, которую мы используем на backend-е нашего проекта, значительно теряет в производительности на предвыборке большого (1000+) количества строк, только на одном клонировании. Если вместе с этим, к примеру, в бизнес-логике использовать метод clone известной библиотеки lodash — производительность падает в десятки раз.

Но, как оказалось, не всё так плохо и современные JS-движки, такие как, например, V8 JavaScript Engine, могут успешно справляться с этой задачей, если правильно использовать их архитектурные решения. Желающим узнать как клонировать 1 млн. объектов за 30 мс — добро пожаловать под кат, все остальные могут сразу посмотреть реализацию.
Читать дальше →

Динамический blur на Android

Reading time4 min
Views35K
Информации о том как быстро размыть картинку на Android существует предостаточно.
Но можно ли сделать это настолько эффективно, чтобы без лагов перерисовывать размытый bitmap при любом изменении контента, как это реализовано в iOS?
Читать дальше →

Как мы делали систему выделения информации из текста на естественном языке для банка АО «Банк ЦентрКредит» (Казахстан)

Reading time5 min
Views13K
Некоторое время назад к нам обратился представитель банка АО «Банк ЦентрКредит» (Казахстан) с интересной задачей. Необходимо было интегрировать в конвейер обработки данных, представляющих из себя текст на естественном языке, дополнительный инструмент обработки. Всех деталей проекта мы раскрывать не можем, так как он находится в сфере безопасности банка и разрабатывается его службой безопасности. В освещении технологических аспектов задачи и способов их реализации заказчик не был против, что собственно мы и хотим сделать в рамках данной статьи.

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

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

Reading time6 min
Views16K
Предлагаем вашему вниманию подборку с ссылками на полезные ресурсы, интересные материалы и IT-новости


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

Information

Rating
Does not participate
Location
Казахстан
Registered
Activity