• Тестирование мобильных приложений: tips & tricks

      Наша новая статья представляет собой список рекомендаций и советов. Из неё вы узнаете:

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

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

      Как облегчить процесс тестирования?


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

      2. Скриншоты, логи и видео — лучшие аргументы тестировщика!
      К сожалению, с логами «общения» с сервером зачастую не всё так гладко, как с клиентскими логами. Обычно они добавляются скорее для удобства разработчика при отладке работы с сервером, чем для работы тестировщика.
      Читать дальше →
    • Подборка бесплатных инструментов для разработчиков

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

      Читать дальше →
    • Создаем быстрый прототип мобильного приложения

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

        Хотелось бы исправить эту ситуацию, и предложить вашему вниманию большой обзор доступных инструментов для прототипирования мобильных приложений.
        Читать дальше →
      • How-to: Процесс создания верстки html-писем

        • Translation
        В нашем блоге мы уже неоднократно рассказывали о создании email-рассылок с помощью CSS и HTML. Сегодня же речь пойдет о самом подходе к созданию верстки. Итальянский дизайнер Массимо Кассандро на сайте SitePoint описал свой процесс разработки html-писем. В нем есть несколько интересных моментов, так что мы решили сделать адаптированный перевод этой заметки.



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

        По моему опыту, особенно важно это при создании HTML почтовых писем. Email требует выполнения большого количества повторяющихся задача, которые сами по себе не так уж сложны, но затрагивают огромное количество разных элементов, что может приводить к ошибкам. Вот, как я стараюсь этого избежать.
        Читать дальше →
        • +11
        • 25.5k
        • 6
      • Валидаторы ввода под Android

          Validation
          Не так давно мне понадобилось добавить в андроид-приложение валидаторы для полей ввода (EditText), но ничего подходящего в сети не нашлось: пришлось писать свои собственные. Теперь, когда все готово, можно раздать результаты всем желающим под Apache лицензией и немного рассказать, как все устроено. Тех, кому интересно,
          прошу под кат
        • Рекомендации по использованию SQLite на мобильных устройствах

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

            Читать дальше →
          • Как работает поиск приложений в Google Play. Конспект

            В статье рассмотрены некоторые особенности работы поиска приложений в магазине Google Play.

            Компания Google редко публично обсуждает свои поисковые технологии, но в 2013 году на конференции Google I/O 2013 рассказала, что влияет на ранжирование приложений в магазине Google Play.

            Наша команда сделала конспект этого выступления со своими комментариями и примерами из практики. Видео на английском по ссылке, cправочное руководство Управление данными для Google Play.
            Читать дальше →
            • +12
            • 38.4k
            • 8
          • Используем векторные изображения SVG в приложениях Android, или как убить фрагментацию экранов и не потерять в качестве (плюсы, минусы, особенности)

              Достаточно долгое время мы занимаемся разработкой детских приложений под Android, постепенно постигая множество нюансов этой платформы. Есть одни грабли, которые подстерегают нас в каждом приложении, – это фрагментация экранов. Если делать одно изображение только под телефон маленького размера, то на планшете оно выглядит мягко говоря “не очень”. А если делать изображение высокого разрешения для планшетов и пытаться использовать его на телефонах, то с очень большой вероятность приложение вывалится с OutOfMemory.

              Приходится готовить несколько экземляров одного и того же изображения под разные экраны. Еще сильнее облака сгущает новый монстр Galaxy Nexus 10 с безумным разрешением 2560х1600.



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

              Сказано — сделано. Итак, под катом история внедрения векторных изображений в одно из наших приложений. В статье мы поделимся опытом и особенностями использования векторных изображений в формате SVG в приложениях Android.
              Читать дальше →
            • Маленькая хитрость для отображения большого объёма данных в ListView

              • Tutorial


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

              Проблема


              Стандартный механизм отображения списков из базы данных в Android выглядит примерно так:
              • Activity содержит ListView
              • ListView обращается к экземпляру CursorAdapter
              • CursorAdapter получает данные из объекта, реализующего интерфейс Cursor
              • Cursor получен либо из ContentProvider, либо сразу из SQLiteDatabase


              Всё работает нормально ровно да тех пор, пока количество строк в Cursor сравнительно небольшое. Но если в нём 50 тысяч, 100 тысяч и более строк (хотя дело не только в количестве строк, но об этом чуть позже), время от времени список будет притормаживать. Особенно это заметно при «быстрой прокрутке», если у ListView установлено в true свойство fastScrollEnabled.
              Читать дальше →
            • Как мы создали универсальную систему управления бизнесом

                Предисловие

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

                Будь то 1С, Битрикс, Мегаплан или тем более самостоятельные решения – они требуют установки специфического софта, налаживания удаленного доступа к серверу через VPN или другие решения, не работают с плохими каналами связи – какие часто встречаются в торговых центрах или удаленных офисах, и уж точно требуют недюжинного умения работников для доступа из дома или командировки.

                Отдельно можно сказать о производительности: для меня, как разработчика высоконагруженных систем БД, всегда было странным формирование отчетов не за секунды, а десятками минут, проведение документов занимающее в 1С минуты, и вообще постоянно требующие обновления железа новые версии тех же систем, с баснословными требованиями к серверам. Очевидно было, что такие простейшие операции как посчитать остатки на складе за весь период работы из миллиона документов даже в MySQL займут секунды…

                Постановка вопроса

                В общем, когда передо мной встала задача поставить систему учета на 5 удаленных магазинов, склад и офис, варианты готовых решений выглядели бледновато. После мыслей об обучении продавцов (хороших продавцов, но не пользователей компьютера) – первый раз видевших мышку, как пользоваться 1С и бесконечных поездках для настройки сети, стало понятно что это не наш вариант…

                Хотелось следующего:
                • Полностью удаленное пользование с любой операционной системы, с планшета, смартфона
                • Нетребовательность к качеству канала связи
                • Дружелюбный интерфейс и юзабилити
                • Скорость – любые отчеты и документы в течение секунды
                • Возможность встраивания продвинутой аналитики

                Понятно, что одним из решений, чтобы не изобретать велосипед с нуля, было сделать online систему базирующуюся на наших же серверах, работающую на максимально простых механизмах и структурах. Бесконечные таблицы, описывающие номенклатуру, тоже казались избыточными – десяток полей с табличкой названий для каждого параметра до сих пор работает отлично.
                Читать дальше →
              • Как мы вели блог компании на 5 платформах и что с этого получили

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

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

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

                  image
                  Читать дальше →
                • Какой день недели выбрать для раздачи плюшек пользователям мобильных приложений?



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

                    Но возникли определенные трудности с тем, какой день оптимальнее всего выбрать для раздачи бесплатных номеров журналов.
                    Наши рассуждения и вариант дня недели, на котором мы остановились, под катом.
                    Читать дальше →
                    • +12
                    • 2.9k
                    • 3
                  • О чем говорят 100 млн писем: Полная инструкция по работе с email-рассылками

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



                    Сегодня мы поделимся с вами результатами исследования более 100 миллионов писем, которые мы отправили клиентам по электронной почте.

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

                    Готовы узнать, использование какого типа электронных писем наиболее эффективно, в какие дни недели можно получить больше переходов по ссылкам на вашем сайте, как часто следует присылать электронные сообщения, а также изучить прочую информацию, связанную с пересылкой данных, и приемы, которые можно будет испытать на практике?
                    Читать дальше →
                    • +9
                    • 15.1k
                    • 2
                  • Геолокация без GPS (часть 1)

                    wifi
                    Представляю публичную базу геопозиций телефонных вышек и Wi-Fi роутеров. Мне понадобилась стабильная и безлимитная база для приложения Android, в котором нужна была точная геолокация из всех доступных источников (GPS, Wi-Fi, Mobile). Пришлось создать базу данных положений сотовых вышек и Wi-Fi. Всех заинтересовавшихся прошу под кат.
                    Читать дальше →
                  • Как правильно оформить поставку программного обеспечения

                    • Tutorial
                    Вопрос выбора договорной схемы распространения программного обеспечения далеко не праздный, поскольку прямо связан с налоговыми последствиями. Данная заметка поможет вам быстро разобраться в особенностях договоров, применяемых для дистрибуции ПО, и сделать осознанный выбор.
                    Читать дальше →
                  • Как выбрать договор на разработку ПО

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

                    Какой из них верный и чем грозит ошибка при выборе договора?
                    Читать дальше →
                    • +10
                    • 15.7k
                    • 4
                  • Создание компании. Выход из зоны комфорта

                      Кто создает компанию? Инвестор? Инициатор (носитель идеи)? Или же исполнитель, который производит те самые реальные действия, без которой создание компании было бы физически невозможным? Данный вопрос относится так же и к новому продукту уже существующей фирмы, или, по-другому, к расширению бизнеса. Кто является началом успешной организации? Когда вы дочитаете эту публикацию до конца, у вас, возможно, появится ответ на вопрос, что необходимо предпринять для реализации своих (даже самых амбициозных) желаний и как это связано с зоной комфорта.
                      Читать дальше →
                    • 5 частых ошибок при составлении «пользовательского соглашения»

                      Каждый юрист постоянно ищет и, к сожалению, находи, в договорах других юристов ошибки. Не все эти ошибки действительно опасны. За некоторые бывает иногда просто стыдно, а другие добавлены специально или несут реальные риски для клиентов. Оценим каждую ошибку по степени риска, распространенности и раздражения на примере одного из самых важных документов на сайте.
                      Читать дальше →
                      • +12
                      • 4.6k
                      • 2
                    • Создание компании. Работа с клиентами

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