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

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

Send message

Опыт работы со взломанным сервером

Reading time3 min
Views47K


Хочу поделиться своим опытом начинающего системного администратора. Так уж случилось, что мой первый блин комом — это было предложение заняться инфраструктурой в одной маленькой компании. Ситуация сложная. Никакой автоматизации, все вручную и по принципу: работает — не трогай, а если не работает и никто не заметил, то считай, что работает. Предыдущий сотрудник не оставил почти никакой документации. Вот доступ к серверам, кофемашина — там, вроде всё…
Читать дальше →

Публикация десктоп-приложения в Windows Store c помощью Desktop Application Converter

Reading time8 min
Views7.6K

Не так давно мы опубликовали разработанное нами корпоративное приложение для десктопов, которое дополняет функционал Skype for Business. Например, может «по-человечески» сохранять историю переписки, как это делают все «приличные» мессенджеры, умеет отправлять сообщения в оффлайн, позволяет упорядочить контакты и ещё много всего, чего не хватало в Skype for Business. И когда появилась возможность поделиться приложением с помощью Windows Store, мы решили этой возможностью воспользоваться. В статье мы расскажем, как это происходило и чего нам это стоило.

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

Роботы — будущее войн?

Reading time12 min
Views24K

Эволюция военной робототехники удивляет, и уже начинают появляться технологии ужаса, похожие на представленные в играх «Titanfall 2» и «Call of Duty: Infinite Warfare»


image

П.В. Сингер – известная в военных кругах фигура. Один из главных мыслителей в этой области, он написал " Wired for War " (Создан для войны), плодотворные размышления про боевых роботов, и " Ghost Fleet " (Призрачный флот), повесть про Третью мировую войну, благодаря которой он делал доклад для Комитета Сената США по вооружённым силам. Он был техническим консультантом при создании таких игр, как «Call of Duty» и «Metal Gear», а также на съёмках голливудских фильмов. Когда серьёзные люди хотят обсудить применение машин в войнах, они приглашают Сингера, или приходят в его офис в мозговой центр New America Foundation, расположенный всего в одном квартале от Белого дома.

Взлом без взлома или семь способов найти утечку информации ресурса

Reading time4 min
Views25K

Небольшое вступление


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

Задание с экзамена по защите информации

Reading time2 min
Views21K
Сразу озвучу задачку, чтобы не было предвкушения, будто тут будет показан какой-то крутой новый метод шифрования.

Нужно доказать, что

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

Идеальный программист. Часть 1

Reading time9 min
Views92K
Статья-конспект по книге Роберта Мартина «Идеальный программист». После прочтения книги у меня поменялось отношение к программистической жизни. В книге рассматривается процесс написания кода, сам код, отношение к задачам, TDD и много других полезностей. Читать нужно разработчикам и менеджерам проектов. Частично применимо к дизайнерам.


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

Как мы превратили $140 тысяч на Kickstarter в $40 тысяч долга, а затем вышли в ноль

Reading time7 min
Views19K
Этот пост является 3-й частью статьи «Создание игры «The Contender» («Соперник»)»: концепция завершения". Здесь ссылки на часть 1 (как мы сделали игру) и часть 2 (как мы запускали проект на Kickstarter).

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

Я — Джон Тисдэйл. Мы с другом создали «The Contender» («Соперник»): игра на тему президентских дебатов. 9 сентября 2015 года мы собрали 127 827,01 долларов США на Kickstarter. Казалось бы — очень большие деньги, но лишь на этой неделе, 22-го ноября 2016 года, мы, наконец, расплатились с долгами. Прошло 440 дней работы после создания продукта и кампании на Kickstarter, прежде чем мы получили 1 доллар.

Мы не ожидали, что так будет.

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

Анимации на GPU: делаем это правильно

Reading time20 min
Views56K

Думаю, все уже знают, что современные браузеры умеют рисовать некоторые части страницы на GPU. Особенно это заметно на анимациях. Например, анимация, сделанная с помощью CSS-свойства transform выглядит гораздо приятнее и плавнее, чем анимация, сделанная через top/left. Однако на вопрос «как правильно делать анимации на GPU?» обычно отвечают что-то вроде «используй transform: translateZ(0) или will-change: transform». Эти свойства уже стали чем-то вроде zoom: 1 для IE6 (если вы понимаете, о чём я ;) для подготовки слоя для анимации на GPU или композиции (compositing), как это предпочитают называть разработчики браузеров.


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

Путеводитель по JavaScript Promise для новичков

Reading time7 min
Views137K
image

Этот материал мы подготовили для JavaScript-программистов, которые только начинают разбираться с «Promise». Обещания (promises) в JavaScript – это новый инструмент для работы с отложенными или асинхронными вычислениями, добавленный в ECMAScript 2015 (6-я версия ECMA-262).
Читать дальше →

Навигация внутри помещений — первые шаги с indoo.rs NavigationSDK

Reading time5 min
Views18K


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


Данная задача не является новой и попытки найти её решение предпринимались неоднократно различными участниками рынка. В этой статье я расскажу вам об одной из таких попыток — технологии, предложенной австрийским стартапом indoo.rs.


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

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

Программирование состояний в UIControl

Reading time4 min
Views12K
Основная проблема, с которой сталкивается программист при реализации какого-то управляющего элемента — выстраивание правильной логики работы этого элемента.
Читать дальше →

Погружение в технологию блокчейн: Децентрализованная беспарольная система безопасности

Reading time9 min
Views18K
Рассказывая про технологическую сторону блокчейна в статьях из цикла «Погружение в технологию блокчейн» мы столкнулись с вопросами: «Зачем это нужно? Какие проблемы решает? Как использовать?» Поэтому этот материал решили посвятить ответам на них на примере emcSSL – системы идентификации пользователей WWW на основе подсистемы NVS криптовалюты EmerCoin и децентрализованных клиентских SSL-сертификатов.


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

Архивация баз данных Microsoft SQL Server

Reading time5 min
Views26K
По долгу службы сталкиваюсь с серверами баз данных MSSQL. Часто необходимо быстро настроить архивацию БД, на тестовых серверах, да и в продакшене. При этом в сети можно найти много разрозненных односложных источников, как надо или не надо архивировать, но нигде нет каких то более или менее универсальных готовых решений. На новом месте работы опять столкнулся с данной проблемой. В силу определенных причин все БД в компании (пока) находятся в режиме простой модели восстановления, потому решение, приведенное в тексте является не полным, но судя по вопросам на форумах, начинающим и просто разработчикам и администраторам, далеким от данных задач, вполне подойдет как решение, ну а в процессе каждый может дополнить его сам.
Читать дальше →

Что нового появилось в C# 7 и уже поддерживается в Visual Studio “15” Preview 4

Reading time11 min
Views70K
С релизом Visual Studio “15” Preview 4 многие новые фичи C# 7 можно попробовать самому. Основные новшества C# 7 призваны облегчить работу с данными, упростить код и улучшить производительность. От себя скажу, что C# движется в сторону функционального языка, добавляя такие вещи, как кортежи и сопоставления с шаблоном (pattern matching). Не все из новой функциональности работает так, как задумано, в Preview 4, в этих случаях будет указано, что именно вы можете пока использовать и как это будет работать в будущем. Что ж, приступим.
Читать дальше →

«Спрос на Visual Studio для Mac большой» — интервью с Alex Thissen

Reading time4 min
Views17K


Недавно Microsoft представила Visual Studio for Mac, и многих впечатлило решение выпустить флагманский продукт для чужой платформы после многих лет Windows-эксклюзивности. Но всё не так просто: представленный продукт — не полный аналог привычной Visual Studio, а переименованная и дополненная Xamarin Studio, попавшая в руки Microsoft с покупкой Xamarin. Что эта новость значит для разработчиков? Мы решили задать ряд вопросов девятикратному Microsoft MVP Алексу Тиссену (Xpirit), активно следящему за происходящим в .NET-мире.
Читать дальше →

Сказание о Клеопатре и о российской криптографии (Продолжение)

Reading time6 min
Views25K
imageС появлением библиотеки GCrypt-1.7.0 с поддержкой российской криптографии (ГОСТ 28147-89, ГОСТ Р 34.11-94/2012 и ГОСТ Р 34.10-2001/2012), стало возможным говорить о поддержке российского PKI в таких проектах как Kleopatra и KMail.

imageKMail – это почтовый клиент, который для обеспечения безопасности переписки позволяет подписывать и шифровать сообщения по протоколу S/MIME. И то и другое базируется на архитектуре PKI, сертификатах X509 и протоколах CMS/PKCS#7:

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

Пишем простую программу захвата скриншотов

Reading time15 min
Views46K
Существует множества различных программ для захвата изображений с экрана, их редактирования «прямо на экране» и загрузки на различные сервисы. Это всё хорошо, но большинство программ привязаны к определённым сервисам и не дают возможности загружать куда-либо ещё. В голове давно уже крутилась мысль создать свой простенький сервис загрузки картинок под свои нужды. И я хочу поделиться историей разработки данной программы.

Не долго думая и имея под рукой Visual Studio 2015 конечно же создал новый C# проект т.к. это очень удобно и я уже делал ранее небольшие C# программы.
Читать дальше →

Swift String Validating или простая валидация строк на соответсвие критериям

Reading time3 min
Views8.8K
Всем доброго времени суток. Сегодня хочется поговорить про проблему валидации строк в IOS проектах. Думаю Вы как и я часто с этим сталкиваетесь, когда надо проверить, например, поле пароля на соответствие нескольким критериям.

Например:

— Длина пароля больше 6 символов
— Минимум одна цифра
— Буквы верхнего и нижнего регистра

Зачастую такое требование реализовываются примерно так:

    func isPasswordCorrect(_ value:String) -> Bool {
        // code for check length, number exist, uppercase and lowercase chars
    }

Просто. Функция работает, пароль проверяется. Все довольны.

Дальше если нам надо проверить поле email на корректность, мы также пишем функцию, например:

    func isEmailCorrect(_ value:String) -> Bool {
        // code for check length, number exist, uppercase and lowercase chars
    }

И так далее.

По росту проекта функций с такими проверками становится все больше и больше. При создании нового проекта нам надо или начинать все сначала или копировать эти функции с прошлого проекта. Не очень удобно. Один из вариантов решения под катом.
Читать дальше →

Решение проблемы с циклическими ссылками в блоках ObjC

Reading time12 min
Views30K
О блоках в ObjC и правильной работе с ними написано очень много, в том числе и на хабре. Вопрос о том, как правильно работать с self в блоках, чтобы избежать циклических ссылок, регулярно задается на собеседованиях. При использовании таких фреймворков, как ReactiveCocoa количество блоков в коде сильно возрастает, при этом увеличивается шанс допустить ошибку и потерять в памяти объекты. Про попытку окончательно решить эту проблему, метапрограммирование для с99 с экстеншнами и блоками + хипстерсткие макросы с @ под катом.
Читать дальше →

Information

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