Обновить
5
0
Рустам@RustamS

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

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

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

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

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

image

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


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

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

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

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

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

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

Время на прочтение16 мин
Охват и читатели6.9K


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

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

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

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

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

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

Время на прочтение5 мин
Охват и читатели11K

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



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


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


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

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

Время на прочтение4 мин
Охват и читатели22K


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

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

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

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

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

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

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


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

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

Время на прочтение8 мин
Охват и читатели128K
image
Все фотографии в этой статье взяты из трилогии Кристофера Нолана «Тёмный рыцарь». Это всё же Бэтмен!

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

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

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


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

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

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

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

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

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

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

Время на прочтение3 мин
Охват и читатели138K


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

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

Время на прочтение4 мин
Охват и читатели59K


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

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

Время на прочтение9 мин
Охват и читатели16K
image

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

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

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

Время на прочтение4 мин
Охват и читатели4.5K
image

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

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

Время на прочтение6 мин
Охват и читатели23K
Предлагаем вашему вниманию подборку с ссылками на полезные ресурсы и интересные материалы из области фронтенда


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

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

Время на прочтение3 мин
Охват и читатели12K
Снова про ConstraintLayout, снова про Apple, боль и сертификаты, новое про устройства от Google, интерфейсы, библиотеки, маркетинг и разработку. Новый дайджест полон интересными материалами.

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

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

Время на прочтение6 мин
Охват и читатели17K
TARS

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

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

Время на прочтение5 мин
Охват и читатели45K
cloneКлонирование объектов в JavaScript довольно частая операция. К сожалению, JS не предоставляет быстрых нативных методов для решения этой задачи.

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

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

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

Время на прочтение4 мин
Охват и читатели36K
Информации о том как быстро размыть картинку на Android существует предостаточно.
Но можно ли сделать это настолько эффективно, чтобы без лагов перерисовывать размытый bitmap при любом изменении контента, как это реализовано в iOS?
Читать дальше →

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

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

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

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

Время на прочтение6 мин
Охват и читатели16K
Предлагаем вашему вниманию подборку с ссылками на полезные ресурсы, интересные материалы и IT-новости


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

Информация

В рейтинге
Не участвует
Откуда
Казахстан
Зарегистрирован
Активность