Как стать автором
Обновить
60
0

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

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

Обзор электровелосипеда Twitter Mantis E-1

Время на прочтение15 мин
Количество просмотров18K
К сожалению, велосипедный сезон 2018 потихоньку приближается к своему логическому завершению (хотя некоторые катают круглый год). За это время мы могли бы наштамповать обзоров про все продающиеся у нас модели электровелосипедов, но всё же предпочли качество, а не количество. В том числе поэтому успели рассказать вам лишь про два новых и интересных электровелосипеда — про бюджетный Airwheel R8 с режимом скутера и карбоновый Twitter TW-E9L. И вот сейчас расскажем про третий.


Читать дальше →
Всего голосов 43: ↑38 и ↓5+33
Комментарии53

Солнечные фонарики — нам надо ярче

Время на прочтение8 мин
Количество просмотров58K


Наверняка многие уже успели наиграться с китайскими солнечными фонариками и разочароваться в них. Попробуем разобраться в вопросе: в чём причина их малой яркости и можно ли с этим что-то сделать?
Узнать больше
Всего голосов 51: ↑50 и ↓1+49
Комментарии41

Реверс-инжиниринг рендеринга «Ведьмака 3»

Время на прочтение27 мин
Количество просмотров56K
Недавно я начал разбираться с рендерингом «Ведьмака 3». В этой игре есть потрясающие приёмы рендеринга. Кроме того, она великолепна с точки зрения сюжета/музыки/геймплея.



В этой статье я расскажу о решениях, использованных для рендеринга The Witcher 3. Она не будет такой всеобъемлющей, как анализ графики GTA V Адриана Корреже, по крайней мере, пока.

Мы начнём с реверс-инжиниринга тональной коррекции.
Всего голосов 88: ↑88 и ↓0+88
Комментарии20

QIWI-терминалы. Как взять максимум из простых технологий

Время на прочтение7 мин
Количество просмотров8.1K
В начале 2017 года мы, команда разработки ПО для QIWI Терминалов, собирали пожелания подразделений компании — узнавали, какие глобальные задачи коллеги хотели бы решить с нашей помощью, чтобы жизнь стала проще.

Больше всего порадовал запрос клиентского сервиса, работающего со звонками и претензионкой от плательщиков:

“Есть проблема: клиент совершает платеж на терминале, но до процессинга он так и не доходит — или терминал мог зависнуть, или интернет, работающий через gsm-модем, отвалился. И получается, что чек у клиента есть, а платежа в системе нет. Хорошо было бы в таких случаях научиться доставлять платежи в QIWI.

Есть также группа тревожных клиентов, которые сразу после совершения платежа набирают номер колл-центра с целью удостовериться, все ли с ним хорошо. Было бы здорово срезать косты на такие звонки.”


Так у нас появилась комплексная задача: научиться создавать платеж в случае сбоя связи с терминалом и снизить количество входящих звонков от клиентов, придумав инструмент самообслуживания для проверки статуса платежа. Кейс понятен. Стали искать решение, удобное для клиента и без рисков для безопасности.
Читать дальше →
Всего голосов 36: ↑34 и ↓2+32
Комментарии9

Как обезопасить C

Время на прочтение4 мин
Количество просмотров9.9K


Язык C очень мощный и много где используется — особенно в ядре Linux — но при этом очень опасный. Один из разработчиков ядра Linux рассказал, как справиться с уязвимостями безопасности С.

Вы можете сделать практически любую вещь на С, но это не значит, что её нужно делать. Код C очень быстр, но несётся без ремней безопасности. Даже если вы эксперт, как большинство разработчиков ядра Linux, всё равно возможны убийственные ошибки.

Кроме подводных камней типа псевдонимов указателей, у языка C фундаментальные неисправленные ошибки, которые ждут своих жертв. Именно эти уязвимости Кейс Кук, инженер по безопасности ядра Google Linux, рассмотрел на конференции по безопасности Linux в Ванкувере.
Читать дальше →
Всего голосов 37: ↑23 и ↓14+9
Комментарии19

MongoDB и исследование рынка ИТ-вакансий

Время на прочтение9 мин
Количество просмотров7.1K
Вы когда-нибудь анализировали вакансии?

Задавались вопросом, в каких технологиях наиболее сильна потребность рынка труда на текущий момент? Месяц назад? Год назад?

Как часто открываются новые вакансии Java-разработчиков в определенном районе Вашего города и как активно они закрываются?

В этой статье я расскажу Вам, как можно достичь желаемого результата и построить отчетную систему по интересующей нас теме. Поехали!


(Источник картинки)
Читать дальше →
Всего голосов 18: ↑17 и ↓1+16
Комментарии2

20 сентября, Москва — митап для аналитиков

Время на прочтение2 мин
Количество просмотров2.8K
Привет, Хабр!

Мы тут подумали и решили сделать ещё и митап для аналитиков и им сочувствующих.



Говорить в рамках AnalyzeIT MeetUp будут про роль аналитиков в командах и не только.

Начинаем в 19.00, локация Большая Полянка, д.2/10, стр. 1 (Corporate Innovations Hub).

Участие бесплатное, главное зарегистрироваться заранее.

Ссылка на регистрацию и доклады участников — под катом.
Читать дальше →
Всего голосов 17: ↑14 и ↓3+11
Комментарии0

Лучшие бесплатные редакторы для разработки и документации: Atom

Время на прочтение5 мин
Количество просмотров40K

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


Atom seti theme


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

Читать дальше →
Всего голосов 27: ↑11 и ↓16-5
Комментарии37

Парктроник на Arduino

Время на прочтение2 мин
Количество просмотров29K
В этой публикации пойдёт речь о создании простого парктроника на базе Arduino.

Немного теории. Парктроник или Парковочный радар это устройство предназначенное для отслеживания расстояния между автомобилем и каким — то объектом, как правило парктроники устанавливают с задней части машины.
Читать дальше →
Всего голосов 20: ↑13 и ↓7+6
Комментарии21

Портирование Arm Mbed OS на специализированный контроллер

Время на прочтение10 мин
Количество просмотров8.3K


Arm Mbed OS — популярный проект с открытым исходным кодом ускоряющий разработку устройств для интернета вещей (IoT). Если вы создали свое уникальное процессорное устройство, то первой задачей будет портирование на него какой либо операционной системы (OS).

Здесь представлена пошаговая инструкция по запуску Arm Mbed OS на плате с микроконтроллером семейства NXP Kinetis.
Читать дальше →
Всего голосов 16: ↑15 и ↓1+14
Комментарии2

24-ядерный CPU, а я не могу набрать электронное письмо (часть 2)

Время на прочтение10 мин
Количество просмотров12K
В прошлой статье я обещал подробнее раскрыть некоторые детали, которые опустил во время расследования [подвисаний Gmail в Chrome под Windows — прим. пер.], включая таблицы страниц, блокировки, WMI и ошибку vmmap. Сейчас восполняю эти пробелы вместе с обновлёнными примерами кода. Но сначала вкратце изложим суть.

Речь шла о том, что процесс с поддержкой Control Flow Guard (CFG) выделяет исполняемую память, одновременно выделяя память CFG, которую Windows никогда не освобождает. Поэтому если вы продолжаете выделять и освобождать исполняемую память по разным адресам, то процесс накапливает произвольный объём памяти CFG. Браузер Chrome делает это, что приводит к практически неограниченной утечке памяти и подвисаниям на некоторых машинах.

Нужно заметить, что подвисаний трудно избежать, если VirtualAlloc начинает работать более чем в миллион раз медленнее, чем обычно.
Читать дальше →
Всего голосов 41: ↑41 и ↓0+41
Комментарии16

История тестирования проекта «К»: Kotlin&Spek

Время на прочтение11 мин
Количество просмотров4.7K
Привет, Хабр!

В этой статье мы поговорим об автоматическом тестировании на одном из многочисленных проектов QIWI, получившим кодовое название «К».



Когда мы организовывали тестирование это проекта, то решили выбрать практичный и хайповый Kotlin, а также Spek, гласящий «Вы называете их тестами, мы называем их спецификациями» (You call them tests, we call them specifications). Возможно, такой подход подойдет и вам, если вы столкнетесь с похожими задачами.

Почему Kotlin, а не что-то еще? Kotlin был выбран разработкой, поэкспериментировать, так как конкретно этот продукт не был критичным, и можно было вживую потренироваться на нём, не опасаясь, что будут проблемы.

Официальная документация говорит нам, что «Spek написан на Kotlin, и спецификации, которые вы пишете, будут написаны на Kotlin» – это очень ясно отвечает на вопрос: «Зачем это нужно?».

Итак…

Что это и зачем это нужно?

Читать дальше →
Всего голосов 18: ↑17 и ↓1+16
Комментарии2

Как я собирал компьютер для старых игр

Время на прочтение6 мин
Количество просмотров40K
oldpc

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

За основу был выбран… в общем было выбрано то, что получилось найти в моём городе, без пересылок через пол России и смс. Искать такой компьютер я начал не так давно. Стационарного компьютера у меня уже давно нет, а тут что-то ностальгия по юности и некоторые статьи на Хабре о ретро-ПК сподвигнули меня на поиски. Красивых историй о сборке аутентичных 486DX2 с CRT монитором и защитным экраном не  будет, все несколько прозаичней (но зато практичней). 

Читать дальше →
Всего голосов 66: ↑62 и ↓4+58
Комментарии273

Как я стандартную библиотеку C++11 писал или почему boost такой страшный. Глава 3

Время на прочтение11 мин
Количество просмотров12K
Продолжаем приключения.

Краткое содержание предыдущих частей


Из-за ограничений на возможность использовать компиляторы C++ 11 и от безальтернативности boost'у возникло желание написать свою реализацию стандартной библиотеки C++ 11 поверх поставляемой с компилятором библиотеки C++ 98 / C++ 03.

Были реализованы static_assert, noexcept, countof, а так же, после рассмотрения всех нестандартных дефайнов и особенностей компиляторов, появилась информация о функциональности, которая поддерживается текущим компилятором. На этом описание core.h почти закончено, но оно было бы не полным без nullptr.

Ссылка на GitHub с результатом на сегодня для нетерпеливых и нечитателей:

Коммиты и конструктивная критика приветствуются

Итак, продолжим.
Читать дальше →
Всего голосов 33: ↑33 и ↓0+33
Комментарии21
12 ...
25

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность