• Реализация поиска с использованием RxJava

    • Translation
    • Tutorial
    В данной статье будет рассмотрена оптимальная и компактная реализация поиска с использованием RxJava для Android, отсеивающая ненужные результаты и уменьшающая количество бесполезных сетевых вызовов.

    Пример поиска
    Оригинал написан 16 октября 2017. Перевод вольный.
    Читать дальше →
  • 12 полезных государственных сервисов для предпринимателей



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

      Читать дальше →
    • Пагинация списков в Android с RxJava. Часть II

        Всем добрый день!
        Приблизительно месяц назад я писал статью об организации пагинации списков (RecyclerView) с помощью RxJava. Что есть пагинация по-простому? Это автоматическая подгрузка данных к списку при его прокрутке.
        Решение, которое я представил в той статье было вполне рабочее, устойчивое к ошибкам в ответах на запросы по подгрузке данных и устойчивое к переориентации экрана (корректное сохранение состояния).
        Но благодаря комментариям хабровчан, их замечаниям и предложениям, я понял, что решение имеет ряд недостатков, которые вполне по силам устранить.
        Огромное спасибо Матвею Малькову за подробные комментарии и отличные идеи. Без него рефакторинг прошлого решения не состоялся бы.
        Всех заинтересовавшихся прошу под кат.
        Читать дальше →
        • +11
        • 21.8k
        • 2
      • Подборка бесплатных инструментов для разработчиков

        • Translation
        Сегодня мы представляем вашему вниманию адаптированную подборку инструментов (в том числе облачных) для разработчиков, которые позволяют создавать по-настоящему качественные проекты. Здесь представлены исключительно SaaS, PaaS и IaaS сервисы, предоставляющие бесплатные пакеты для разработчиков инфраструктурного ПО.

        Читать дальше →
      • Подсчет себестоимости часа разработки программного обеспечения

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

        image
        Читать дальше →
      • «Аджайлификация» одного проекта

          Про Agile говорят и пишут много. Кто-то рассказывает о своих победах, показывает фотки с довольными заказчиками и советует делать итерации не больше двух недель, для других Agile — это синоним боли, мук и страдания. Вот и я решила оглянуться назад и посмотреть на историю одного проекта, Agile которого не интересовал более 10 лет и, в котором Scrum и ежедневные стандапы внезапно стали яблоком раздора, причиной поиска нового места работы и самой обсуждаемой темой в курилке.
          Подробности
        • 11 крутых сайтов для iOS разработчиков

          • Translation


          Чтобы оставаться профессионалом в разработке iOS приложений, нужно постоянно учиться у других и узнавать о новейших инструментах и приемах. Кроме сайта Apple с документацией, существуют несколько ресурсов с ценными статьями и уроками, которые помогут нам стабильно развиваться. О них и пойдет речь в этой статье.
          Читать дальше →
          • +12
          • 38.2k
          • 9
        • Как нормальные пацаны заходят в Мегу: 7 магазинов за месяц


            Мы в Меге Химки, фото одного из наших тайных покупателей на независимой проверке

            Привет!
            Тут рассказывали, что Мега — это невозможно. Скажем так, наш опыт показывает немного обратное. И, чтобы не плодить иллюзии, расскажу чуть подробнее.

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

            У нас с весны открыт магазин в Химках, полтора года работает магазин в Нижнем Новгороде, был магазин в Меге Уфы. В декабре мы открыли ещё 7 магазинов в Мегах.
            Читать дальше →
          • Как мы увеличили отзывчивость приложения



              Почти любое современное приложение не обходится без загрузки картинок из сети и мы, Surfingbird, не исключение. Однако, нельзя просто загружать картинки последовательно, потому что, если пользователь перемотает пару экранов, ему придётся ждать пока загрузятся предыдущие изображения, которые уже и не нужны.
              Поэтому, для увеличения отзывчивости приложения и снижения времени ожидания пользователя, мы применили несколько приёмов, о которых и хотим сейчас рассказать.
              Читать дальше →
              • +33
              • 19.7k
              • 9
            • Что такое утечки памяти в android, как проверить программу на их отсутствие и как предотвратить их появление

              • Tutorial
              В этой статье для начинающих android-разработчиков я постараюсь рассказать о том, что такое «утечки памяти» в android, почему о них стоит думать на современных устройствах, выделяющих по 192МБ на приложение, как быстро найти и устранить эти утечки в малознакомом приложении и на что нужно обращать особое внимание при разработке любого приложения.


              Конечная цель этой статьи — ответ на простой вопрос:
              Куда нажать, чтобы узнать, какую строчку в приложении поправить?

              Читать дальше →
            • 7 вещей, о которых мне хотелось бы знать перед поступлением в магистратуру/аспирантуру за границей

              • Translation
              image

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

              Предлагаем перевод статьи Алана Генри, в которой он пишет о 7 вещах, которые ему хотелось бы знать перед поступлением в магистратуру/аспирантуру.

              Надеемся, советы Алана натолкнут Вас на полезные мысли и помогут сделать правильные выводы. Поехали!
              Читать дальше →
              • +24
              • 64.8k
              • 3
            • 7 операционных систем, которые Вы можете запустить на Raspberry Pi

              • Translation
              Предлагаю Вашему вниманию вольный перевод статьи James Bruce про 7 операционных систем, которые Вы можете запустить на Raspberry Pi.

              Кто может поспорить с ценой компьютера в 40 долларов? Особенно, если он еще и отличная база для проектов в области электроники. Я не вижу конкурентов. Но само по себе железо — лишь одна сторона медали: необходима еще операционная система. Ниже я расскажу про 7 различных операционных систем, которые Вы можете установить на Raspberry Pi прямо сейчас. Небольшое замечание: не все представленные операционные системы являются полезными.

              image
              Читать дальше →
            • Готовим пользовательское соглашение своими руками

              • Tutorial
              Пользовательское соглашение или как его еще принято называть Соглашение об использовании сервиса, является ключевым документом, на котором строится юридическая защита интернет-сервиса.

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

              Особую актуальность вопросы защиты интернет-сервиса приобретают в связи с принятием так называемого «антипиратского закона», которым возлагается ответственность на информационного посредника за размещение или предоставление доступа к материалам, нарушающим интеллектуальные права третьих лиц. Закон вступает в силу с 01 августа 2013 г., в связи с чем пользовательские соглашения и схему взаимодействия с пользователем необходимо привести в соответствие с ужесточившимися требованиями.
              Читать дальше →
            • Что делать, если вам надоели рекламные СМС

                В продолжение статей о том, что ФАС собирает дополнительную информацию о «коротких» номерах, хочу рассказать, как эта служба может помочь вам избавиться от нежелательной рекламы по СМС.

                Согласно ч.1 ст.18 ФЗ «О рекламе», распространение рекламы по сетям электросвязи, в том числе посредством использования телефонной, факсимильной, подвижной радиотелефонной связи, допускается только при условии предварительного согласия абонента или адресата на получение рекламы.

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

                • Translation
                Разработчик игр Раф Костер (Raph Koster) составил всеобъемлющий список базовых правил, на которых основаны социальные отношения в играх (мультиплеер, параллельная игра и т.д.). Эти правила для разработчиков игры заменяют азбуку. Во многом они пересекаются с принципами игровой механики, которые уже обсуждались на Хабре.

                Раф Костер приобрёл известность как создатель дизайна Ultima Online и креативный директор проекта Star Wars Galaxies, после чего основал собственную студию.
                Читать дальше →
              • 47 принципов игровой механики

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

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

                  Компания SCVNGR занимается разработкой мобильных игр и создала именно такую колоду карт, которую можно позаимствовать и использовать в своих целях. Вот здесь приводится объяснение каждого из 47-ми терминов и примеры их использования: достижения, фиксированный интервал, поведенческий кураж, информационная теория фрагментарной информации (то есть что любую информацию для пользователей нужно выделять минимально возможными порциями — так она лучше усваивается), динамика достижений, совместная игра, кросс-ситуационные хит-парады, бесконечный геймплей, мысль о великой цели, бесплатный завтрак, лотерея, собственность и т.д.
                • Резервирование пользовательских данных в Android



                  Нижеизложенный материал не претендует на оригинальность или новизну решаемой проблемы, но может быть крайне полезен новичкам и тем, кто как и я, заботится о сохранности своих данных на устройствах под управлением Android. Далее в статье я ставлю перед собой задачи по обеспечению надежного резервирования данных при помощи облачных сервисов хранения данных и решаю их. Все еще интересно? Тогда добро пожаловать под хабркат.
                  Читать дальше →
                • Обновление временных зон на Android

                  Прочитав статью «Переезд временной зоны MSD в MSK — новый Y2K локального масштаба» — был, мягко говоря, озадачен. Неужели никто до сих пор не сделал какого-либо патча для Android? Вдумчивое гугление привело к подтверждению информации: да, патчей нет. Обновлений тоже нет. Что хотите — то и делайте.
                  Ну вот, собственно — и начал делать…
                  Читать дальше →
                • Простой способ интеграции Android-приложения с социальными сетями

                  При разработке игрушки для Android'а у меня появилась идея добавить в нее немного социального взаимодействия для охвата большей аудитории. Сама игрушка не располагала к тому, чтобы распространятся «вирусным» способом, поэтому я решил ограничится публикацией результатов игры в социальных сетях в случае выигрыша и при условии попадания результата в локальную таблицу рекордов, и я стал искать решение этого вопроса.
                  Читать дальше →
                • Простые догмы при работе с цветом в интерфейсах

                  • Tutorial
                  image

                  Привет, username!

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

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