Pull to refresh
3
0
Алексей @ParaPilot

User

Send message

Маркетинговые фишки от Pornhub: чему учит самый трогательный сайт современности

Reading time3 min
Views112K


Извлечь урок можно из всего — даже из порнографии. Мы говорим не о тех уроках, о которых вы подумали. Мы говорим об уроках, о которых вы не подумали — об уроках маркетинга.

Порнография — дело прибыльное. Туда стекают огромные деньги, которые позволяют не только снимать контент, но и адаптировать сервис к требованиям современности. Здесь мы расскажем, как это делает Pornhub.

Разгоняем Google PageSpeed до 100 и больше

Reading time6 min
Views61K
Google PageSpeed

Простые и полезные советы, которые позволят вам максимально разогнать сайт без необходимости закапываться в метриках Google PageSpeed и Lighthouse.
Читать дальше →

Разрабатываем свой браузер с нуля. Часть первая: HTML

Reading time15 min
Views64K


Всем привет!


Продолжаем цикл статей по разработке браузерного движка.


В данной статье я расскажу как создать самый быстрый HTML-парсер c DOM. Мы рассмотрим HTML спецификацию и чем она плоха относительно производительности и потребления ресурсов при разборе HTML.


С данной темой я докладывался на прошедшем HighLoad++. Конференцию не каждый может посетить, плюс в статье больше деталей.


Я предполагаю, что читатель обладает базовыми знаниями об HTML: теги, ноды, элементы, пространство имён.

И так, начнём!

Верстка email рассылок от А до Я для чайников

Reading time9 min
Views414K
Уже 3 с лишним года занимаюсь дизайном и версткой почтовых рассылок, которые ориентированы на англоязычных пользователей. За время работы перелопатили огромную кучу информации, перепробовали много вариантов верстки, набили достаточное количество шишек. Были найдены и исправлены типичные баги, которые в той или иной мере повторялись во всех почтовых клиентах. Также нашлись проблемы с некоторыми CSS свойствами — различные почтовые клиенты интерпретировали их по разному. Каждое письмо тестировалось на самых популярных почтовых клиентах: Gmail, Outlook, Yahoo, Android, iOS, MozillaThunderbird, Microsoft Outlook, The Bat. Рассылки ходят на сотни миллионов пользователей и приносят очень хорошие результаты. Итак, приступим к изучению.
Читать дальше →

Взлом Wi-Fi

Reading time7 min
Views330K

Взлом маршрутизаторов WPA/WPA2 Wi-Fi с помощью Airodump-ng и Aircrack-ng/Hashcat


Это краткое пошаговое руководство, которое демонстрирует способ взлома сетей Wi-Fi, защищённых слабыми паролями. Оно не исчерпывающее, но этой информации должно хватить, чтобы вы протестировали свою собственную сетевую безопасность или взломали кого-нибудь поблизости. Изложенная ниже атака полностью пассивна (только прослушивание, ничего не транслируется с вашего компьютера) и о ней невозможно узнать, если вы только реально не воспользуетесь паролем, который взломали. Необязательную активную атаку с деаутентификацией можно применить для ускорения разведывательного процесса. Она описана в конце статьи.
Читать дальше →

Учим wordpress (и не только) отрисовывать быстро Youtube плееры

Reading time4 min
Views6.5K
youtube-speedload

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

Чтобы понимать, о какой проблеме мы говорим:
image

400kb скрипта base.js?

Остальное даже не смотрю.
После оптимизации даже без сжатия выигрышь будет в десяки раз и составит:
Читать дальше →

Облысение: Теория и практика лечения, ч.2 «Даже у простаты есть гланды, простагландины»

Reading time5 min
Views26K

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


image

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

Облысение: Теория и практика лечения, ч.1 «Дигидротестостерон мой, враг мой»

Reading time8 min
Views104K

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


image

В первом посте будет описание самой болезни (как бы странно это не звучало, но большинство людей, даже столкнувшихся с АГА, не понимают природу болезни), то с чего она начинается, и собственно методы лечения основанные на блокировке ДГТ и андрогенных рецепторов, несмотря на то что подобные подход довольно сильно устарел за последние 10 лет, он все еще является более чем эффективным.
Читать дальше →

Моделирование физических процессов при разработке электроники: почему и для чего?

Reading time5 min
Views26K

Разработка корпусов для электроники — одна из наших любимых тем на Хабре. Мы уже рассказывали о роли промдизайна, разработке конструкции и производстве прототипов, но пока не затрагивали одну из самых интересных и важных тем — испытания спроектированных устройств, как виртуальные, так и реальные.

Выдержит ли корпус удар в трех плоскостях? Деформируется при экстремальных температурах? Хорошо ли продумана внутренняя система охлаждения электроники? Ответить на эти вопросы можно двумя способами. Первый: провести испытания готового устройства (прототипа) в реальной жизни и по результатам отправить его на доработку. Второй: провести виртуальное моделирование физических процессов и скорректировать проблемные места на этапе разработки. Это гораздо быстрее и эффективнее, так можно получить рабочие прототипы уже на первой итерации. Давайте рассмотрим оба варианта на реальных проектах…
Читать дальше →

Олимпиада SQL: разбор задачи про календарь

Reading time9 min
Views24K

Здравствуйте, в эфире Радио SQL!


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


Настраивайтесь на нашу гравитационную волну, смахивайте слизь, поправляйте панцири и устраивайтесь поудобнее — мы начинаем!..


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


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

Забор раздачи здесь

Найден третий препарат для лечения андрогенетической алопеции (облысения)

Reading time3 min
Views80K

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

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

Безопасность веб-приложений: борьба с самим собой, или проводим черту адекватности

Reading time10 min
Views10K


Насколько безопасным должно быть приложение? Для кого-то этот вопрос не имеет смысла. "Настолько, насколько это возможно. Чем безопасней, тем лучше". Но это не исчерпывающий ответ. И он не помогает сформировать security политику в проекте. Более того, если придерживаться только этой директивы ("чем больше security, тем лучше"), мы можем оказать медвежью услугу самим себе. Почему? Ответ под катом.

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

На злобу дня: кроссплатформенный клиент для Telegram на .NET Core и Avalonia

Reading time9 min
Views22K

В этой статье я расскажу, как реализовать кроссплатформенное приложение на .NET Core и Avalonia. Тема Телеграма очень популярна в последнее время — тем интереснее будет сделать клиентское приложение для него.


Egram


Статья затрагивает достаточно базовые концепции разработки на Avalonia. Тем не менее, мы не будем писать "Hello, World". Вместо этого предлагается рассмотреть реальное приложение. Изучим как общую архитектуру приложения, так и отдельные компоненты.


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


Текст статьи носит обучающий характер, но сам проект вполне реальный. Целью проекта является создание клиента, рассчитанного на использование в качестве рабочего инструмента. Множество идей позаимствовано из других мессенджеров и переложено на модель Telegram.

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

Интерфейсы: как сообщать пользователю, если «Упс, что-то пошло не так»

Reading time17 min
Views55K
Здесь вы не увидите ни строчки кода. Мы поговорим об обычных людях — о наших пользователях, точнее о том, как сообщать им, если в системе возникла какая-то непредвиденная ситуация.


В основе статьи доклад Антонины Хисаметдиновой с Heisenbug 2017 Moscow, которая занимается проектировкой пользовательских интерфейсов в компании Собака Павлова.

Кроме того, на Медиуме есть цикл статей «Руководство по проектированию ошибок». Цикл еще не дописан до конца, но дает более полную и цельную картину по теме статьи.

Архитектура кода

Reading time15 min
Views64K
В этой статье я хочу поделиться своим личным опытом, связанным с правильной организацией кода (архитектурой). Правильная архитектура существенно упрощает долгосрочную поддержку.
Это очень философская тема, поэтому я не могу предложить ничего более, чем мой субъективный анализ и опыт.

Проблемы, симптомы


Мой начальный опыт программиста был весьма безоблачным – я без лишних проблем клепал вебсайты-визитки. Писал код, как я это сейчас называю “в строчку” или “полотном”. На маленьких объемах и простых задачах все было хорошо.

Но я сменил работу, и пришлось разрабатывать один единственный вебсайт в течение 4-х лет. Естественно, сложность этого кода была несопоставима с визитками из моей прошлой работы. В какой-то момент проблемы просто посыпались на меня – количество регрессии зашкаливало. Было ощущение, что я просто хожу по кругу – пока чинил “здесь”, сломал что-то “там”. И поэтом это “здесь” и “там” банально менялось местами и круг повторялся.

У меня исчезла уверенность в том, что я контролирую ситуацию – при всем моем желании недопустить баги, они проскакивали. Все эти 4 года проект активно разрабатывался – мы улучшали уже существующий функционал, расширяли, достраивали его. Я видел и чувствовал, как удельная стоимость каждого нового рефакторинга/доработки растет – увеличивался общий объем кода, и соответственно увеличивались затраты на любую его правку. Банально, я вышел на порог, через который уже не мог переступить, продолжая писать код “в строчку”, без использования архитектуры. Но в тот момент, я этого еще не понимал.
Читать дальше →

Разработка электроники и фриланс

Reading time5 min
Views75K
Доброго времени суток, уважаемое сообщество!

Спешу поделиться с Вами своим опытом выполнения разработки электроники фрилансером. Итак, рассказываем по порядку…

Я занимаюсь разработкой электроники последние 7 лет. Основное место работы – предприятие выпускающее различные охранно-пожарные панели и сопутствующие изделия. На предприятие пришел молодым и неопытным студентом 3-го курса. В течение последующих 2-3 лет мне удалось выполнить несколько проектов, запущенных в производство. Среди них были как обновленные версии ранее выпускающихся изделий, так и новые разработки. Со временем я полностью погрузился в сопровождение производства (более 10000 изделий ежегодно), поэтому новых разработок не начиналось.

Из-за скуки я начал разными способами искать заказы на разработку различных устройств. Почему бы и нет? Ведь так много людей с оригинальными идеями отличных устройств – нужно лишь встретиться и сделать проект. Для этого я зарегистрировался на известной фриланс-бирже Рунета, а также разослал предложения различным предприятиям.
Читать дальше →

Этот SVG всегда показывает сегодняшнюю дату

Reading time2 min
Views31K
Для своей странички с контактными данными нужна была стандартная иконка календаря, чтобы люди просматривали мой ежедневник. Такие иконки почти всегда делают наподобие бумажного календаря. Но мне стало интересно, можно ли сделать календарь чуть полезнее, если добавить динамическую иконку.

И вот он, SVG-календарь, который всегда показывает сегодняшнюю дату:


Фоновое изображение сделано на основе иконки Twitter TweMoji Calendar — CC-BY

Поддержка текста в SVG слегка неудобная, так что позвольте объяснить, как я это сделал.
Читать дальше →

Dragon Bones: создание 2D персонажа и скелетная, mesh-анимация

Reading time5 min
Views77K
Добрый день, читатель! В этой статье рассмотрим процесс разработки типичного персонажа нашей дебютной игры Kidarian Adventures. Я продемонстрирую свою привычную структуру работы, однако, заострю внимание на создании анимации в Dragon Bones, приложу пояснения и самописные видео-туториалы.

Разработка Rich Text Editor: проблемы и решения

Reading time21 min
Views39K
Текстовые редакторы, как тип программного обеспечения, появились чуть позже чем динозавры, и вероятнее всего это был вообще первый софт, с которым вы столкнулись в своей жизни, возможно кто-то даже застал MS-DOS Editor.

Однако с переходом большой части ПО в браузеры актуальны и соответствующие визуальные редакторы Rich Text Editors, и проблемных мест в их разработке масса. Если вы по какой-то причине решили сделать свой собственный редактор, то подумайте еще раз — есть мнение, что делать этого не нужно.



Чтобы вы могли принять более взвешенное решение, Егор Яковишен обобщил весь свой опыт, полученный в процессе создания Setka Editor, и рассказал про проблемы, с которыми придется столкнуться, и что можно предпринять для их решения.

Disclaimer: статья написана на основании доклада Егора на конференции Frontend Conf 2017 в июне 2017 года. Ситуация с поддержкой браузерами определенных API с тех пор уже могла измениться.


Анатомия .NET Core: как мы настроили NTLM под Linux

Reading time8 min
Views18K

Мы продолжаем рассказывать про миграцию мобильного сервиса в ASP.NET Core и Docker. В этой статье будет идти речь про модуль WCF-клиента, упомянутый в предыдущей статье, NTLM-авторизацию и другие проблемы при его миграции. Сейчас расскажем, почему нам пришлось немного изучить анатомию и пощупать .NET Core изнутри.


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

Information

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