Search
Write a publication
Pull to refresh
0
Send message

Ускорьте Ваше приложение. PERFMATTERS!.

Reading time20 min
Views20K

Мои правила


Каждый раз, когда у меня возникает проблема в производительности, я следую этим правилам:
  • Всегда измеряйте — оптимизация с помощью глаз плохая идея. Когда вы просмотрели ту же анимацию несколько раз, вам кажется, что она выполняется быстрее. Цифры не врут. Используйте инструменты, о которых я расскажу, и измеряйте поведение вашего приложения несколько раз до и после того как делаете изменения.
  • Используйте медленные устройства — Если вы хотите найти все слабые места, вам больше помогут медленные устройства. Новые и производительные устройства не будут показывать ваши возможные проблемы производительности и не у всех ваших пользователей есть топ устройства.
  • Компромиссы — Оптимизация производительности всецело состоит из компромиссов. Вы оптимизируете одно в обмен на другое. Во многих случаях этот другой компромисс может быть потраченным временем на нахождение и исправление производительности, также он может быть качеством ваших растровых изображений или количеством данных которые вы должны хранить в определенной структуре данных. Приготовьтесь жертвовать чем-либо.

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

Заголовки по методу 4U: 30 примеров

Reading time4 min
Views279K


Нет, мы не будем «лить воду» про то, что заголовки должны привлекать внимание и прочую хрень. Надеемся, что вы в теме) В этой статье вы увидите только технику создания заголовков по методу 4U с примерами из разных ниш. И как ее можно усилить до 5U.
Читать дальше →

Как происходит рендеринг кадра в GTA V

Reading time16 min
Views120K
Серия игр Grand Theft Auto прошла долгий путь с момента своего первого релиза в 1997 году. Примерно 2 года назад Rockstar выпустила GTA V. Просто невероятный успех: за 24 часа игру купило 11 миллионов пользователей, побито 7 мировых рекордов подряд. Опробовав новинку на PS3, я был весьма впечатлен как общей картинкой, так и, собственно, техническими характеристиками игры.

Ничто так не портит впечатление от процесса, как экран загрузки, но в GTA V вы можете играть часами, преодолевая бескрайние сотни километров без перебоев. Учитывая передачу солидного потока информации и свойства PS3 (256 Mb оперативной памяти и видеокарта на 256 Mb), я и вовсе удивился, как меня не выбросило из игры на 20-ой минуте. Вот где чудеса техники.

В этой статье я расскажу о проведенном анализе кадра в версии для ПК в среде DirectX 11, которая съедает пару гигов как оперативки, так и графического процессора. Несмотря на то, что мой обзор идет со ссылкой на ПК, я уверен, что большинство пунктов применимо к PS4 и в определенной степени к PS3.

Анализ кадра


Итак, рассмотрим следующий кадр: Майкл на фоне любимого Rapid GT, на заднем плане прекрасный Лос-Сантос.

image

Осторожно! Трафик!
Читать дальше →

Анализ ключевых показателей производительности — часть 1

Reading time7 min
Views36K
Тестирование и анализ производительности — тема, которую хотелось бы обсуждать побольше. Мы начинаем публикацию перевода руководства от небезызвестной команды Patterns&Practices о том, с чем нужно есть ключевые показатели производительности. За перевод — спасибо Игорю Щегловитову из Лаборатории Касперского, нашему бессменному автору материалов про тестирование. Остальные наши статьи по теме тестирования можно найти по тегу mstesting

Введение

Анализ производительности – дисциплина сложная. Она изучает систему на предмет выполнения требований производительности и определяет причины, если эти требования оказываются не достигнутыми. Статья Performance Analysis Primer из этого цикла содержит введение в эту тему, описывая инструменты и подходы, применяемые в облачной разработке для того, чтобы достичь хорошей производительности.
Читать дальше →

3 правила идеальной конверсии сайта (лендинг пейдж)

Reading time3 min
Views4.7K
Перед тем как раскрывать секреты увеличения конверсии сайта, давайте определим что же это такое. Определений много, но мне нравиться вот это:

Конверсия сайта— это результат деления желания купить на возможность купить!


И действительно иногда мы «мешаем» клиенту купить. Сайты создаются на столько сложные что с первого раза не понятно, а как же купить?

Давайте посмотрим от чего же зависит конверсия сайта!
Читать дальше →

Как описать свои навыки в резюме

Reading time3 min
Views29K
Навыки, о которых вы хотите рассказать своим работодателям, должны быть чётко сформулированы, а не быть просто «брошены на ветер». Коммуникабельность / ответственность и креативность — всё это, конечно, прекрасно, но содержательно бесполезно.

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

C#, способы хранения настроек программы

Reading time5 min
Views159K

Введение


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

C# и app.config


На хабре уже была посвящена этому тема, поэтому… перейти

C# и Properties.Settings


Информация о Properties.Settings

Организация Properties.Settings — это обычный xml файл, который можно найти в папке пользователя:

С:\ Users \ [user name] \ AppData \ Local \ [ (Project Name) or (AssemblyCompany) ] \ [name project_cashBuild] \ [AssemblyVersion] \ user.config

Для начала нам нужно создать такие переменные для Properties.Settings. Перейдем в Properties -> Settings.settings:
Читать дальше →

Как вести секретную переписку. Часть 2

Reading time2 min
Views55K
В нашем блоге мы часто рассказываем о собственных кейсах — пишем о том, как бизнес работает с IaaS. Помимо этого мы обращаемся и к западному опыту в профильной сфере.

Например, мы рассказывали:


Сегодня мы продолжим знакомство с руководством одного из авторов The Intercept, который привел детальный разбор того, как вести переписку с использованием методов шифрования.

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

Дайджест новостей из мира разработки на Unity

Reading time2 min
Views16K
Мы давно не радовали вас новостями о создании игр на Unity, но теперь вы можете убедиться, что это время мы потратили с пользой. Читайте самые познавательные, интересные, а порой и неожиданные материалы в нашем дайджесте.


Читать все

Патентные ландшафты для стартапов

Reading time5 min
Views9.9K

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

Примеры фишинговых сообщений электронной почты

Reading time5 min
Views142K


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

Внимание, под катом много изображений.
Читать дальше →

Риски и проблемы хеширования паролей

Reading time11 min
Views39K
Безопасность всегда была неоднозначной темой, провоцирующей многочисленные горячие споры. И всё благодаря обилию самых разных точек зрения и «идеальных решений», которые устраивают одних и совершенно не подходят другим. Я считаю, что взлом системы безопасности приложения всего лишь вопрос времени. Из-за быстрого роста вычислительных мощностей и увеличения сложности безопасные сегодня приложения перестанут завтра быть таковыми.

Прим. перев.: для более полной картины здесь вас также будет ждать перевод Hashing Passwords with the PHP 5.5 Password Hashing API, на которую автор ссылается в статье.
Читать дальше →

400 потрясающих бесплатных сервисов

Reading time16 min
Views726K

Рад представить дополнение оригинального списка из 300 потрясающих бесплатных сервисов. Автор оригинальной статьи Ali Mese добавил ещё +100 новых сервисов, которые помогут найти все — от источников вдохновения и редакторов фотографий до создания опросов и бесплатных иконок.

И еще подборку +500 инструментов от 10 марта 2017 г. смотрите здесь.



A. Бесплатные веб-сайты

  • HTML5 UP: Адаптивные шаблоны HTML5 и CSS3.
  • Bootswatch: Бесплатные темы для Bootstrap.
  • Templated: Коллекция 845 бесплатных шаблонов CSS и HTML5.
  • Wordpress.org | Wordpress.com: Бесплатное создание веб-сайта.
  • Strikingly: Конструктор веб-сайтов.
  • Layers: Создание сайтов на WordPress (new).
  • Bootstrap Zero: Самая большая коллекция бесплатных шаблонов Bootstrap (new).
  • Landing Harbor:  Продвижение мобильного приложения c помощью бесплатного лендинга (new).
Читать дальше →

Мифы об изменениях в системе активации Windows 10

Reading time5 min
Views241K
В последнее время (в связи с выходом Windows 10), очень часто в сети встречается мнение: система активации Windows 10 сильно изменилась, активация теперь привязывается к устройству и учётной записи Microsoft, а ключ больше не нужен. Часто ссылки на статьи, содержащие это мнение, используются в качестве аргументов в спорах. Давайте попробуем разобраться, так ли это на самом деле.

На вопрос «откуда эта информация?» обычно ссылаются на то, что Gabriel Aul или кто-то другой из Microsoft что-то такое сказал. В лучшем случае приводятся цитаты типа вот такой:
If you’ve previously activated a genuine copy of Windows 10 on your device, you’ll be able to activate Windows 10 Insider Preview builds of the same edition without the need to enter a product key. This will also enable you to re-install the latest public release of Windows 10 without entering a product key if you no longer want Windows Insider Preview on your device.

Источник

Внимательный читатель (немного знакомый с английским), обратит внимание на то, что в цитате ни слова нет о каких-либо изменениях в системе активации. И лично мне не попадалось ни одного официального источника, в котором Microsoft или её сотрудники сообщали бы о подобных изменениях.

Теперь перейдём к практической части:
Читать дальше →

Как найти самый длинный непрерывный ряд событий с помощью SQL

Reading time5 min
Views35K
Задача поиска непрерывных последовательностей событий довольно легко решается с помощью SQL. Давайте уточним, что из себя представляют эти последовательности.

Для примера возьмём Stack Overflow. Он использует клёвую систему репутации с наградами за определенные достижения. Как и во многих социальных проектах, они поощряют пользователей ежедневно посещать ресурс. Обратим внимание на эти две награды:



Нетрудно понять, что они означают. Зайдите на сайт в первый день. Затем на второй день. Затем на третий (возможно несколько раз, это не имеет значения). Не зашли на четвёртый? Начинаем считать заново.
Как отследить это с помощью SQL?

Неочевидные особенности сортировки товара и «танец реальности»

Reading time9 min
Views30K


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

Самый простой способ – задавать порядок вручную. В физических магазинах на полках делается именно так, и это называется «выкладка». У нас её делают продавцы по планограммам под каждую точку (это входит в обучение), а в тех же больших продуктовых – специальные чуваки-мерчендайзеры, которые следят, чтобы всё было ок. В Интернете, конечно, хочется сделать так же, но метод хорош до 50 позиций.

На другой стороне шкалы методы больших данных, когда все данные о вас начиная от сборки браузера, типа девайса (точнее, его цены) и разрешения экрана, плюс все данные профиля и оценка ваших действий на сайте ведут к оптимальному результату. Самый простой способ использования таких данных – за первые 20-30 секунд нахождения на сайте строить ваш профиль и сравнивать с профилями таких же людей. И предлагать вам в итоге не самые дешёвые квартиры и отели, например, а начинать с тех цен, которые для вас будут приемлемыми. Вы наверняка знаете эту сортировку, которую почему-то подают в прессе под соусом «самой удобной для клиента».

По моим ощущениям, самая удобная для нашего покупателя – это такая, которая понятна и поддаётся контролю.
Читать дальше →

Эволюция Java на примере чтения строк из файла

Reading time2 min
Views127K
Приведу небольшой и интересный, на мой взгляд, пример, как изменилась жизнь простого крестьянина Java разработчика, на примере задачи чтения и печати строк из файла.



Многие из нас помнят

'до Java 7' мучения:


        BufferedReader reader = null;
        try {
            reader = new BufferedReader(
                        new InputStreamReader(
                            new FileInputStream(FILE_NAME), Charset.forName("UTF-8")));
            String line;
            while ((line = reader.readLine()) != null) {
                System.out.println(line);
            }
        } catch (IOException e) {
            // log error
        } finally {
            if (reader != null) {
                try {
                    reader.close();
                } catch (IOException e) {
                    // log warning
                }
            }
        }

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

Узнай свою целевую аудиторию или умри: 34 жизненно важных вопроса

Reading time12 min
Views8.9K
Хорошо ли вы знаете своих клиентов? Чтобы иметь успешный бизнес, вы должны знать абсолютно всё о клиенте. А чтобы знать всё, нужно задавать правильные вопросы.



Если вы не задаёте вопросы своей целевой аудитории, то все, что вы делаете – это лишь предположения.

На посадочной странице вы описываете свою компанию – клиенту плевать на это. Он хочет знать, какую выгоду получит.

Вы рассказываете ему про «уникальные» технологии – клиенту плевать на это. Он хочет знать, как это улучшит его жизнь.

Вы описываете товар заумными словами – клиент не понимает вас и уходит к конкуренту. Конкурент «говорит» на его языке.

Вы создаёте бизнес, выстраиваете стратегию, создаёте сайт в соответствии со своими предположениями, взглядами и понимаем потребностей – вы допускаете ошибку.

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

Проверьте, насколько хорошо вы знаете свою целевую аудиторию. Задайте ей эти 34 вопроса.

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

Оператор Tele2 влез в миллиардные долги, чтобы запуститься в Москве

Reading time3 min
Views28K
«Запуститься в Москве можно только один раз в жизни», говорит представитель телекоммуникационной компании «Т2 РТК Холдинг» (бренд Tele2) Константин Прокшин. В России у оператора более 60 регионов присутствия. «Сценарий [запуска] уже отработан в этом году в 21 регионе», добавляет Прокшин. Оператор Tele2 официально выходит в столицу 22 октября. Он готовился к этому около года, а месяц назад запустил на местном рынке масштабную кампанию по продвижению бренда.

На строительство инфраструктуры, открытие монобрендовых салонов и рекламные кампании Tele2 потратил около 25% из кредитной линии на 16 миллиардов рублей. Кредитная линия была открыта в 2015 году одним из акционеров оператора — банком ВТБ. По условиям финансирования лимит стоимости проекта составляет 20 миллиардов рублей. Tele2 занимал средства по льготной ставке в 11%.

«Но для строительства сети в Москве мы используем не только средства из этой программы, но и другие заемные и собственные средства», подчеркнул Прокшин. Источник РБК сообщил, что на данный момент компания потратила «несколько миллиардов рублей, менее десяти».
Читать дальше →

Visual Studio Code — эволюция кроссплатформенного редактора кода на примере версии для OS X

Reading time6 min
Views81K


Visual Studio Code — редактор кода, с поддержкой более 30 языков программирования и форматов файлов, а так же обладающий рядом дополнительных, полезных возможностей.  
 
Инструмент вышел весной этого года, и ранее мы уже успели рассказать о базовых возможностях этого кроссплатформенного редактора. Напомню, что использовать VS Code можно на компьютерах под управлением Windows, OS X и Linux.
 
Однако, за полгода существования инструмент регулярно обновлялся и продолжает обновляться раз в месяц, расширяя свой функционал, список поддерживаемых языков, постоянно улучшая существующие возможности, основываясь на отзывах и пожеланиях пользователей.
 
Сегодня мы поделимся обзором следующих возможностей Visual Studio Code на примере использования в OS X: интеграция с Unity3D, Visual Studio Online, GitHub, а так же подробными видео-материалами по установке, настройке и комфортной работе с VS Code на Mac.
Читать дальше →

Information

Rating
Does not participate
Date of birth
Registered
Activity