Search
Write a publication
Pull to refresh
75
0
Дмитрий Копытин @dm9

User

Send message

Нативные приложения обречены (часть 1)

Reading time6 min
Views41K
image

Отныне я не буду больше создавать нативные приложения. Все мои приложения в дальнейшем будут прогрессивными веб-приложениями (PWA, Progressive Web Apps). Это такие приложения, которые предназначены для еще более органичной работы на мобильных устройствах, чем нативные приложения.

Что я имею ввиду под «более органичной работой»? Большая часть веб-траффика исходит от мобильных устройств и пользователи устанавливают в среднем от 0 до 3 новых приложений в месяц. Это означает, что люди не тратят много времени на поиск новых приложений в App store, но они проводят много времени в сети, где могут найти и использовать ваше приложение.

Прогрессивные веб-приложения начинают свою работу как любое другое веб-приложение, но когда пользователь возвращается в приложение и показывает (фактом использования), что он заинтересован в более регулярном обращении к приложению, браузеры предложат пользователю установить приложение на свой домашний экран. PWA также могут использовать push-уведомления как и нативные приложения.
Читать дальше →

Полный кошмар: USB-C и Thunderbolt 3

Reading time7 min
Views379K
Купили ли вы уже себе новый MacBook или MacBook Pro? А может, Google Pixel? Вы находитесь на пороге путаницы, благодаря этим новым портам «USB-C». Этот простецкий на вид порт таит в себе вселенскую путаницу, и благословенная обратная совместимость использует различные кабели для различных задач. Покупателям придётся очень аккуратно выбирать себе кабель!



USB Type-C: порты и протоколы


Порты USB Type-C распространились достаточно широко, Google начал использовать их на своих компьютерах и телефонах Pixel и Nexus, Apple применяет их на 12" MacBook, а теперь ещё и на новых MacBook Pro. Это физическая спецификация для 24-контактного двустороннего штекера и соответствующих кабелей. В этой статье я буду называть этот физический кабель и порт «USB-C», как наиболее часто используемый термин. Google сообщает, что этот порт называют «USB-C» 21 миллион раз, «USB C» 12 миллионов раз, а правильно, «USB Type-C», всего 8,5 миллионов раз.
Читать дальше →

Егор Бугаенко про MVC на jug.msk.ru

Reading time3 min
Views11K
Гостем очередной встречи jug.msk.ru, состоявшейся 14 ноября 2016 года, стал Егор Бугаенко. Темой его выступления стала критика популярного шаблона проектирования MVC (Model-View-Controller).


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

Продолжаем настраивать практически бесплатную рекламу на пользователей Хабра. На этот раз с помощью виджета авторизации

Reading time3 min
Views22K
В позапрошлом посте я указал на не очевидную уязвимость Хабра, которая позволяла вставлять пиксель ретаргетинга ВК в нужные статьи для сбора максимально целевой аудитории и дальнейшей рекламы на неё через соц сети.

Благодаря стараниям разработчиков, эта проблема была успешно пофикшена в течение нескольких дней, но на этом наша сага не закончена. Напомню, что согласно официальному прайс-листу Хабра стоимость 1000 показов банера для пользователей ресурса колеблется от 400 до 550 рублей. За гео-таргетинг по Москве и Питеру придется доплатить 20 и 15 процентов соответственно.

Но всё еще существует способ рекламироваться на эту же аудиторию платя 30-150 рублей за тысячу показов. Давайте думать, как исправить и эту фичу:

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

Сканер nmap как главный инструмент кино-хакеров

Reading time8 min
Views51K
image

Nmap — свободная утилита, предназначенная для разнообразного настраиваемого сканирования IP-сетей с любым количеством объектов, определения состояния объектов сканируемой сети (портов и соответствующих им служб). Изначально программа была реализована для систем UNIX, но сейчас доступны версии для множества операционных систем.

Nmap также поддерживает большой набор дополнительных возможностей, а именно: определение операционной системы удалённого хоста с использованием отпечатков стека TCP/IP, «невидимое» сканирование, динамическое вычисление времени задержки и повтор передачи пакетов, параллельное сканирование, определение неактивных хостов методом параллельного ping-опроса, сканирование с использованием ложных хостов, определение наличия пакетных фильтров, прямое (без использования portmapper) RPC-сканирование, сканирование с использованием IP-фрагментации, а также произвольное указание IP-адресов и номеров портов сканируемых сетей. В последних версиях добавлена возможность написания произвольных сценариев (скриптов) на языке программирования Lua.

Пара распространённых заблуждений про радиоканалы RFID и Wi-Fi (и RFID как точки Wi-Fi)

Reading time7 min
Views43K

RFID-метка для пациентов, чтобы их было видно на карте больницы

— А можете каждому строителю чип в голову вшить?
— Теоретически да, но, может быть, объясните, зачем вам это нужно?
— Они у нас стройматериалы воруют. Прямо во время работ. А так каждого будет видно, куда он там зашёл, куда не надо.

Проект решился вшиванием в форменную одежду RFID-метки, разделением стройки на зоны и дальше тем, что делается в сети при построении периметра. То есть построением профиля «белого» трафика — кто, куда и когда ходит. А потом — как на файрволле — запретили строителям всё остальное. Кражи сразу сократились. Прораб получил потустороннюю силу и видел почти каждый косяк.

А дальше каждый чёртов раз, когда я рассказываю про RFID-решение, люди начинают махать руками и путать эти метки с Wi-Fi, Bluetooth и пассивными резонирующими контурами. Одна из причин — некоторые RFID-метки действительно работают по Wi-Fi 802.11. Давайте расскажу, как это используется на практике в разных странах.
Читать дальше →

Развеиваем мифы о том, что учредители не отвечают своим имуществом по долгам ООО

Reading time5 min
Views178K



Василий Иванов — молодой, талантливый и предприимчивый технический специалист — решил открыть свой бизнес, так как придумал мега-продукт. На старте бизнеса он уволился с работы, зарегистрировал ООО с 10 тыс. уставного капитала, вложил немного своих денег, взял небольшой кредит, нанял на работу 5-ых технических специалистов. Работа пошла, но через полгода оказалось, что у продукта нет будущего, деньги закончились, кредит не погашен, перед сотрудниками задолженность по зарплате за 2 месяца на сумму 400 тыс. рублей чистыми и перед бюджетом на сумму 204 тыс. рублей (примерно +51% от суммы задолженности перед сотрудниками, т.к. тут 13% НДФЛ, 31% ПФР + ФОМС и по мелочи). В общем, дела плохи, пора закрываться и возвращаться к работе «на дядю».

Вопрос: что делать Василию с долгами и ООО?
Читать дальше →

Персона. Андерс Хейлсберг – создатель Turbo Pascal, Delphi и C#

Reading time7 min
Views29K

«Я написал огромное количество полезных программ. И совсем немного бесполезных»

У некоторых людей есть потребность создавать что-то новое. Когда эта потребность реализуется в полной мере, появляются произведения искусства, научные открытия, прорывные технологии. Таким человеком является Андерс Хейлсберг, создатель Turbo Pascal, Delphi и C#.

Для многих студентов ВУЗов Turbo Pascal до сих пор остается первым языком, с которого начинается знакомство с программированием. В свое время он был своеобразным прорывом в разработке программного обеспечения. Недаром «в народ» пошел не Pascal, а именно Turbo Pascal.

Однако Хейлсберг на этом не остановился. Благодаря его неугасающей потребности создавать новое появились Delphi и С#. Поэтому для многих Андерс является одним из «супергероев» ИТ-индустрии.
Читать дальше →

Minoca OS: новая свободная операционная система

Reading time3 min
Views70K


Двое отважных разработчиков Ивэн Грин и Крис Стивенс решились на смелый шаг. Они написали с нуля совершенно новую операционную систему Minoca OS и опубликовали её исходный код под свободной лицензией GNU GPL v3.

Это 625 000 строк отлично документированного кода, преимущественно на языке программирования Си, частично на C++ и Ассемблере. Ядро ОС для x86 имеет размер около 750 КБ. С драйверами, сетевым стеком и видеобуфером свежезагруженная система использует 5−7 МБ оперативной памяти.
Читать дальше →

Badoo открывает исходные коды Live Streaming Daemon

Reading time7 min
Views16K


Для того чтобы мы могли считать статистику, наш сайт в своей работе генерирует огромное количество событий. Например, при отправке сообщения другому пользователю, при заходе пользователя на сайт, при смене местоположения и т.д. События представляют из себя строку в формате JSON или GPB (Google Protocol Buffers) и содержат время отправки, идентификатор пользователя, тип события, а также поля, относящиеся непосредственно к самому событию (например, координаты пользователя).

Каждую секунду генерируются сотни тысяч событий, и нам нужны инструменты, чтобы их собирать и анализировать эффективно и с минимальной задержкой. Мы рассматривали несколько существующих решений для этой задачи и до недавнего времени использовали демон под названием Scribe от Facebook. Он в целом нас устраивал и позволял делать все, что нам нужно. Однако в какой-то момент Facebook забросил свою разработку, и при некоторых условиях Scribe начал у нас падать (например, при перегрузке upstream-серверов). Самостоятельно устранить причину падений демона у нас не получилось, поэтому мы начали искать альтернативу.
Читать дальше →

Книги о типографике: все, что вам нужно знать об искусстве шрифтов

Reading time7 min
Views45K
подборка книг по типографике

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

Снимаем постпродажный шок: короткий совет для интернет-магазинов

Reading time5 min
Views99K
Привет! Есть такая штука – постпродажный шок. Это когда человек купил что-то, отдал деньги, получил вещь в руки… и начинает лихорадочно думать, зачем он это сделал.

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

Сейчас расскажу.
Читать дальше →

Про магазины и интровертов: ряд неявных вещей

Reading time6 min
Views65K


В прошлый раз разгорелась целая дискуссия про интровертов в магазине. Так вот, интроверты в магазине — это счастье. Потому что именно по ним можно определить, насколько хорошо оный магазин работает. Как минимум четверть населения нашей страны интровертична и при этом доходит до магазинов (то есть это не клинические хикки).

Давайте посмотрим на ряд довольно неочевидных вещей, которые особенно важны для таких людей. И, естественно, которые оказывают влияние на всех остальных тоже, но в меньшей степени.

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

Об относительной яркости, или насколько живучим бывает легаси

Reading time6 min
Views41K
Я уверен, что многим программистам знакома формула:

Y = 0.299 R + 0.587 G + 0.114 B

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

Вычисляет она относительную яркость цвета (relative luminance или в некоторых контекстах luma; не путать с lightness и brightness) и широко применяется для преобразования цветного RGB-изображения в Grayscale и связанных с этим задач.

Формула растиражирована и процитирована в тысячах статей, форумных обсуждений и ответов на StackOverflow… Но дело в том, что единственно-правильное её место — на свалке истории. Использовать её нельзя. Однако же используют.

Но почему нельзя? И откуда же взялись именно такие коэффициенты?
Мини-экскурс в историю

Троян использует «режим Бога» Windows, чтобы спрятаться в системе

Reading time3 min
Views370K
Как известно, в операционной системе Windows Vista, 7, 8 и 10 есть своеобразная пасхалка — GodMode (режим Бога). Начиная с версии Vista можно создать папку со специфическим именем, которая перенаправляет на настройки Windows или служебные папки, такие как «Панель управления», «Компьютер», «Принтеры» и проч.

Например, если создать на рабочем столе папку с названием GodMode.{ED7BA470-8E54-465E-825C-99712043E01C} (вместо GodMode можно указать любые символы), то внутри будут отображаться все настройки, в том числе и те, которые не включены в меню «Панели управления» или «Параметры»: скриншот.

Очень удобная фича для управления настройками в системе и для системного администрирования.

К сожалению, режим Бога используют не только сисадмины, но и авторы вирусов.
Читать дальше →

Свой облачный хостинг за 5 минут. Часть 3: Consul, Registrator, Consul-Template

Reading time10 min
Views39K
Docker friends

Привет Хабр! Я продолжаю цикл статей о том, как построить свой облачный хостинг за 5 минут. В прошлой статье мы рассмотрели инструменты, которые помогут решить нам проблему обнаружения сервисов (Service Discovery). В это части мы приступим к практике, построим облако и посмотрим как эти инструменты ведут себя в реальной жизни.

Как и прежде, всю работу может выполнить обычный программист в течение 5 минут, просто запустив набор сценариев для Ansible, которые я подготовил специально для вас и выложил на GitHub.

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

Путь от макета до серийного изделия

Reading time4 min
Views31K
Приветствую читатель!

Так получилось, что в последнее время моя компания соседствует с бизнес инкубатором, в котором изобилие молодых и амбициозных товарищей, считающих, что сляпанная за вечер поделка из говна и палок arduino и проводков это и есть конечный продукт, который они завтра будут продавать миллионами. Спорить с ними бесполезно, да и рассказ о величине пропасти между макетом и серийным изделием не уложить в 2 предложения, поэтому я пишу этот пост.

Я хочу вам рассказать свой опыт создания серийного устройства (пока <1000 шт).
Читать дальше →

Опасное видео: как я нашёл уязвимость в видеохостингах и не умер через 7 дней

Reading time6 min
Views104K


Всем привет! Я Максим Андреев, программист бэкенда Облака Mail.Ru. В свободное время я люблю искать баги. В сегодняшнем посте я хочу рассказать об одной довольно интересной уязвимости, которую я нашёл и зарепортил в bug bounty нескольких крупных компаний, за что получил солидное вознаграждение. Уязвимость заключается в следующем: если сформировать специальный видеофайл и загрузить его на сервер, то:

  • можно получить на нём SSRF;
  • можно получить local file read;
  • если пользователь скачает этот файл, то автоматически будет подвержен уязвимостям, даже если его не откроет: можно будет получить доступ к данным на компьютере пользователя и узнать его имя.

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

Казахстан внедряет свой CA для прослушивания всего TLS-трафика

Reading time2 min
Views105K
Государственный провайдер Казахтелеком, в связи с нововведениями закона Республики Казахстан «О связи», намерен с 1 января 2016 года прослушивать весь зашифрованный TLS-трафик, подменяя сертификаты сайтов национальным сертификатом безопасности, выпущенным Комитетом связи, информатизации и информации Министерства по инвестициям и развитию Республики Казахстан.
Чтобы пользователи не пугались сообщений о подмене сертификата, АО «Казахтелеком» намерен чуть позже в декабре выпустить подробную пошаговую инструкцию по добавлению его в ключницы в мобильные телефоны и планшеты на базе iOS и Android, персональные компьютеры и ноутбуки на базе Windows и MacOS, на сайте www.telecom.kz
Согласно Закону операторы связи обязаны осуществлять пропуск трафика с использованием протоколов, поддерживающих шифрование, с применением сертификата безопасности, за исключением трафика, шифрованного средствами криптографической защиты информации на территории Республики Казахстан.

Национальный сертификат безопасности обеспечит защиту казахстанских пользователей при использовании протоколов шифрованного доступа к зарубежным ресурсам сети Интернет.

По словам Управляющего директора по инновациям АО «Казахтелеком» Нурлана Мейрманова, пользователям сети Интернет необходимо установить национальный сертификат безопасности, который будет доступен через Интернет-ресурсы АО «Казахтелеком». «Пользователю необходимо зайти на сайт www.telecom.kz и установить на своих устройствах выхода в сеть Интернет данный сертификат, следуя пошаговой инструкции по установке» — подчеркнул Н. Мейрманов.
Читать дальше →

Мы проанализировали 20 лэндингов крутых стартапов и вот чему мы научились

Reading time9 min
Views15K
main

Работая над saas сервисом управления и общения с пользователями, нам приходится часто обновлять лэндинг, для достижения максимальной конверсии в регистрацию. А так же создавать дополнительные лэндинги для решений, которые можно строить на базе нашего продукта. Изменений было очень много, поэтому в какой-то момент мы решили систематизировать наш опыт. Нам повезло, мы нашли прекрасную статью, в которой очень подробно разбирается каждый элемент лэндингов 20 известных стартапов.

Это как собрать идеальную девушку из топ моделей или любимых актрис. Только про лэндинги.
Итак, запаситесь чашкой кофе, материала будет много. Понеслась.
Читать дальше →

Information

Rating
Does not participate
Location
Москва и Московская обл., Россия
Date of birth
Registered
Activity