Search
Write a publication
Pull to refresh
0
0
Vasiliy @JMS

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

Send message

Светодиодные лампы Brawex

Reading time3 min
Views14K
В больших супермаркетах продаются светодиодные лампы множества брендов, но есть бренды, лампы которых не встретишь в больших сетевых магазинах — они продаются на строительных рынках, маленьких магазинах и в интернете. Один из таких брендов — Brawex. В проекте lamptest.ru я протестировал уже 70 ламп этого бренда.

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

Создание Web API приложения с использованием .NET Core + MongoDB .NET Driver

Reading time16 min
Views32K
Как вы уже знаете, MongoDB — это одно из наиболее развитых, open-source NoSQL решений, которое представляет собой документо-ориентированную базу данных, является кросс-платформенным, а также обеспечивает высокую производительность, доступность и простоту масштабирования.

В современных open-source веб-приложениях использование NoSQL решений получило свою популярность в связи с их нереляционным поведением. В данной статье шаг за шагом мы реализуем простое ASP.NET Core Web API приложение «записной книжки», которое будет поддерживать операции CRUD применимо к коллекции в MongoDB.
Читать дальше →

Как я перешёл из системного администрирования в Android-разработку

Reading time8 min
Views73K


Несколько лет назад, я, как и другие начинающие Android-разработчики, решил найти работу в этой области. Если вы начинающий специалист, и не знаете, с чего начать изучение Android, или если вы уже обладаете определёнными знаниями в этой теме и планируете в скором времени устраиваться на работу, то этот материал для вас. По задумке, к данной статье вы будете возвращаться по мере накопления опыта: смотреть на каком этапе в данный момент находитесь и что изучать дальше.
Читать дальше →

Платежные странички и решения (или через тернии к звездам — и через много картинок)

Reading time12 min
Views20K
image
TLDR для нетерпеливых — в принципе можно закрывать статью

Так уж сложилось, что я принимал участие в создании / управлении / переговорах с большим количеством банков и платежных систем, которые предоставляют услуги онлайн-эквайринга в России. Это происходило на ряде мини-проектов с абсолютно разными провайдерами, но суть не в этом.

Я больше на работаю в этой сфере, но я хочу поделиться тремя аспектами онлайн платежей: i) бизнес и ситуация на рынке на 2016-2017 год (гайд для менеджера) ii) детали технической интеграции (CTO) iii) поведение клиента / дизайн / верстка платежной странички (дизайн, верстка, тестирование).

Весь этот опыт набран не сразу — примерно за 1.5 — 2 года активного ковыряния в этой сфере. Если вас не интересует бизнес опыт, а интересуют только материалы по дизайну — смело пропускайте первые спойлеры.
Читать дальше →

Разбираем уязвимость CVE-2017-0263 для повышения привилегий в Windows

Reading time9 min
Views22K


Май оказался богат на интересные уязвимости в популярной операционной системе. На днях злоумышленники массово заражали компьютеры вирусом-вымогателем WannaCry, эксплуатируя недостаток безопасности в протоколе SMB и инструмент, известный как Eternalblue. Чуть ранее, 9 мая, компания Microsoft устранила CVE-2017-0263, позволяющую получить максимальные привилегии на машинах под управлением Windows 10, Windows 8.1, Windows 7, Windows Server 2008, Windows Server 2012 и Windows Server 2016.

Уязвимость CVE-2017-0263 уже использовалась в фишинговой рассылке. Письмо содержало вложенный эксплойт, который задействовал сначала некорректную обработку EPS-файлов в Microsoft Office (CVE-2017-0262) для попадания в систему, а оказавшись внутри, получал с помощью CVE-2017-0263 полные права администратора. Два года назад мы уже препарировали похожую уязвимость в Windows, а в этом материале расскажем о том, как свежая CVE-2017-0263 позволяет стать хозяином чужой рабочей станции или сервера.
Читать дальше →

Игры, в которых нужно писать код: Grid Garden, Elevator Saga и другие

Reading time3 min
Views143K

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

Разработка игры на основе физической симуляции (для реалистичной разрушаемости игрового мира)

Reading time4 min
Views45K
В первом посте об этой игре я рассказал о технических сложностях, которые пришлось преодолеть. Второй пост, который вы сейчас читаете — более лёгкий для восприятия. Здесь я проиллюстрирую гифками весь путь построения физической модели и кратко расскажу о каждом шаге.

От создания нового проекта в Юнити до публикации бета-версии в Стиме прошло 10 месяцев. 90% времени ушло на создание, оптимизацию и вылизывание физической модели, остальное — на геймплей.

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

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

Получившаяся из частиц материя сначала выглядела странно, и напоминала то ли жидкость, то ли газ:

image

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

Подключаем геймпад от PS1/PS2 к Raspberry pi

Reading time7 min
Views12K
На дворе майские праздники. А значит время есть шашлыки и употреблять различные разливные и бутилированные напитки. А я занимаюсь всякой ерундой. Мысль о данном проекте пришла, ещё до нового года. Но я долго не мог его реализовать. Прикупив первый геймпад (который я выкинул в последствии), и попробовав опросить его, я понял, что тут уже не обойтись простым чтением мануалов, хотя инфы достаточно. Благо, на это 23 февраля я получил в подарок не пену для бритья, упакованную в носки, а 600 р. с пожеланием не отказывать себе ни в чём на aliexpress. Где и была куплена китайская копия логического анализатора Saleae Logic. Те, кому интересно, что из этого получилось, могут ткнуть мышкой по кнопке ниже. А те, кому лень читать могут сразу посмотреть результат вот тут.


Читаем далее

Как мы делали краткосрочный прогноз осадков. Лекция в Яндексе

Reading time7 min
Views16K
В начале зимы Яндекс.Погода научилась показывать, будут ли осадки в ближайшие два часа. Спустя пару месяцев тема метеопрогнозирования стала центральной на одном из мероприятий Data & Science. Среди докладчиков в тот день был Алексей Преображенский — разработчик из команды Яндекс.Погоды. Алексей рассказал о нашем алгоритме наукастинга и сверточной нейросети, лежащей в основе этого алгоритма.


Под катом — расшифровка лекции и слайды.

Живем и работаем не в столицах: рынок разработки программного обеспечения в Нижнем Новгороде

Reading time11 min
Views45K

Нижний Новгород. Фото Станислава Казнова

Совсем недавно я впервые посетил Иннополис, если кто еще не слышал, «российскую Кремниевую долину». На мероприятии, в котором я участвовал, были представлены слайды о возможности релокации IT-специалистов в России и, в частности, слайд с городами, наиболее привлекательными для переезда. Первые два места в нем оказались очевидными, а вот дальше нашлось место для вопросов. Третье место занял Краснодар, четвертое — Новосибирск, за которым шли Нижний Новгород и Казань. Распределение последних двух городов вызвало чуть ли не возмущение у аудитории, почему Нижний оказался выше. Нижегородцев на мероприятии было три человека, оправдываться мы не стали, хотя такое распределение для меня было очевидно.

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

Солнечная батарея на балконе, опыт использования

Reading time5 min
Views107K
Привет Geektimes. Данная статья является продолжением предыдущей части, про туристическое зарядное устройство "Anker Solar 21Вт". Идея использования солнечной батареи для зарядки разных гаджетов мне показалась весьма перспективной, но конечно, 21Вт в качестве универсальной зарядки мало — хочется иметь возможность заряда не только в солнечную погоду, а для этого нужен запас по мощности. Поэтому были куплены полноценные солнечные панели и начаты эксперименты с ними.


Что из этого получилось, подробности под катом.
Читать дальше →

Электроника для ролевых игр в 2016 году

Reading time4 min
Views17K
Электроника для ролевых игр в России — самая сложная и разнообразная в мире. Да, ролевик – это довольно часто человек в лесу с мечом, только этот меч светится. Но только при приближении орков. И заряжается от mini-USB.

Несколько лет назад на Хабре была серия статей про ролевую электронику (в трёх частях — раз, два, три) пожалуй, пришло время рассказать, что появилось нового на 2016 год.

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

PhotoScan: как делать фотографии фотографий без бликов

Reading time4 min
Views61K
19 апреля 2017 мы выпустили обновление PhotoScan, нашего мобильного приложения для iOS и Android, позволяющего оцифровывать бумажные фотографии одним только смартфоном. Одна из ключевых особенностей PhotoScan – возможность удалять блики с фотографий (их часто печатают на глянцевой, хорошо отражающей свет бумаге), а также со страниц пластиковых альбомов или фотографий под стеклом. Для этого мы разработали уникальное сочетание компьютерного зрения и технологии обработки изображений, которые могут точно совместить и скомбинировать несколько немного отличающихся снимков фотографии и отделить блик от самого изображения на фото.

image
Очень много фото. Очень.

Mikrotik L2TP/IPSec за NAT: ipsec,error failed to pre-process ph2 packet

Reading time1 min
Views93K
При использовании Mikrotik за NAT (в частности за всякими USB GSM модемами) в режиме клиента L2TP/IPSec, у некоторых операторов в определенных режимах, получал проблему с ошибкой ipsec,error failed to pre-process ph2 packet.
Но с появлением RoS 6.38 появилась возможность справиться с ошибкой.
Читать дальше →

Основы TCP/IP для будущих дилетантов

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

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

$PHP не нужен*

Reading time3 min
Views102K

Хорошо известно, что PHP — это мёртвый язык программирования и его 22-летняя экосистема фактически стала бесполезна, когда появился Node и новые асинхронные фреймворки на его основе. Превосходство Node очевидно, потому что все знают, что однопоточные асинхронные программы более лучше по умолчанию. И быстрее.


«Но Саймон! Почему?!", вы, вероятно, прокричите увидев этот текст на экране. И вот почему:


Перспективы трудоустройства


PHP-разработчики не пользуются спросом. По прошествии 22 лет, все компании, использующие PHP, сразу же отказались от него, как только был выпущен Node v0.0.1, потому что этот стек разработки мгновенно стал лучшим. Кроме того, всем известно, что для успешного запуска (забудем про Slack) вам нужно создавать веб-интерфейсы на Node, а данные сохранять в MongoDB.


Иначе просто невозможно добиться успеха.


Приведем немного научных™ фактов, чтобы доказать эти утверждения:
image
$заголовок = ‘PHP-разработчики не могут найти работу чтобы содержать свои семьи’;

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

Bash-скрипты, часть 2: циклы

Reading time8 min
Views816K
Bash-скрипты: начало
Bash-скрипты, часть 2: циклы
Bash-скрипты, часть 3: параметры и ключи командной строки
Bash-скрипты, часть 4: ввод и вывод
Bash-скрипты, часть 5: сигналы, фоновые задачи, управление сценариями
Bash-скрипты, часть 6: функции и разработка библиотек
Bash-скрипты, часть 7: sed и обработка текстов
Bash-скрипты, часть 8: язык обработки данных awk
Bash-скрипты, часть 9: регулярные выражения
Bash-скрипты, часть 10: практические примеры
Bash-скрипты, часть 11: expect и автоматизация интерактивных утилит

В прошлый раз мы рассказали об основах программирования для bash. Даже то немногое, что уже разобрано, позволяет всем желающим приступить к автоматизации работы в Linux. В этом материале продолжим рассказ о bash-скриптах, поговорим об управляющих конструкциях, которые позволяют выполнять повторяющиеся действия. Речь идёт о циклах for и while, о методах работы с ними и о практических примерах их применения.

image

Внимание: в посте спрятана выгода!
Читать дальше →

.NET Managed + C unmanaged: какова цена?

Reading time12 min
Views16K
Программируя на C#, я часто выносил ресурсоемкие задачи в неуправляемый Си код, потому что производительность .NET вызывала вопросы. И вот за чашечкой чая мне в голову начали лезть вопросы: А какой на самом деле выигрыш от такого разделения кода? Действительно ли можно что-то выиграть, а если можно, то сколько? Как лучше строить API при таком подходе?

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

Проверяем честность игры в рулетку на смарт-контракте Ethereum

Reading time8 min
Views25K


Мало кто нынче не слышал о криптовалютах и, в частности, Bitcoin. В 2014-м году, на волне интереса к биткоину, появилась новая криптовалюта — Ethereum. Сегодня, в 2017-м, она является второй по капитализации после биткоина. Одним из важнейших её отличий от биткоина является использование тьюринг-полной виртуальной машины — EVM. Подробнее про эфир можно прочитать в его Yellow Paper.

Смарт-контракты Ethereum обычно пишут на языке Solidity. На Хабре уже были статьи про написание и тестирование смарт-контрактов, например 1, 2, 3. А про связь смарт-контракта с сайтом можно почитать, например, статью о создании простейшей голосовалки на смарт-контракте. В этой статье используется встроенный в кошелёк Mist броузер, но то же самое можно делать используя плагин к Chrome, например MetaMask. Именно так, через MetaMask, и работает игра, которую мы будем исследовать.
Читать дальше →

Information

Rating
Does not participate
Location
Ростов-на-Дону, Ростовская обл., Россия
Date of birth
Registered
Activity