Как стать автором
Обновить
0
0
Александр Бойко @silvi

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

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

$2500 в месяц на сервисе с 1 функцией, которая уже была у крупных компаний

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров50K

Разбираем, как разработчик создал простой продукт с выручкой $2500 в месяц, связав два популярных сервиса. Несмотря на то, что это уже было сделано до него крупными компаниями.

Читать далее
Всего голосов 95: ↑77 и ↓18+59
Комментарии39

Ускорить таблицу на React в 1 000 раз, изменив лишь одну строку

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

JP Camara, главный инженер Wealthbox, в своём блоге поделился интересным опытом ускорения TanStack Table — новой версии React-библиотеки для создания функциональных таблиц — аж до 10 мс. Делимся с вами переводом его статьи.

Читать далее
Всего голосов 18: ↑18 и ↓0+18
Комментарии7

Настройка географических ограничений на веб-ресурсе с учетом новых регионов Российской Федерации

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров13K

Актуальной задачей для веб-ресурса в нынешних реалиях является установка ограничений доступа по регионам, либо географическая привязка выдаваемой информации с учетом региона. Одним из решений, которые можно использовать для этих целей, является база данных и американский сервис MaxMind GeoIP2. Сервис привлекает огромным объемом и детальностью информации, но имеет свои особенности. Так, Крым, ДНР, ЛНР, Запорожская и Херсонская области а также Севастополь указаны в базе как регионы Украины. Соответственно, если, скажем, разрешить доступ к ресурсу только с территории РФ, то эти регионы останутся не у дел.

Так я, первоначально настроив свой ресурс только на доступ с территории РФ, обнаружил, что мои друзья из Крыма и ДНР не могут получить доступ (получают специальную версию страницы, с ограниченным объемом информации). Проблема эта легко решается, и в этой статье я покажу, как именно можно простым спососбом ее решить, а также покажу действующий пример конфигурации сервера.

Читать далее
Всего голосов 82: ↑36 и ↓46-10
Комментарии88

Что нужно знать о вёрстке под ретину

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

Ретиной называют дисплеи Apple с повышенной плотностью пикселей на квадратный дюйм. Впервые о них заговорили в 2010 году, когда Стив Джобс презентовал iPhone 4. Новый на тот момент смартфон получил экран с плотностью 326 PPI — в два раза выше, чем у его предшественника iPhone 3GS.

Ретина-дисплеи вывели смартфоны на новый уровень. По словам самого Стива Джобса, на ретина-дисплеях удалось достичь такого PPI, на котором человеческий глаз перестаёт различать отдельные пиксели. Текст стал выглядеть так, словно он выведен не на экран мобильного устройства, а напечатан в хорошей книге.

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

Читать далее
Всего голосов 21: ↑20 и ↓1+19
Комментарии8

Как устроены мобильные номера. Давайте разберемся

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

Привет всем. Последнее время я писал код полей ввода input для номеров телефона и др. И мне пришлось углубиться в эту тему и разобраться как устроены мобильные номера телефонов. И в этой статье я хочу с вами поделиться своим опытом. Я постараюсь очень кратко, так что присоединяйтесь, потратьте 15 минут, если вы этого не знаете и вам любопытно.

Если вы занимаетесь программированием на vue.js, то вот вам ссылка на компонент, который включает различные input поля в том числе для номеров телефонов. Мне кажется данный компонент может сильно облегчить вам жизнь, ниже ссылка на github и гифка как работает одно из полей. На этом по вступлению все, дальше только по теме.

https://github.com/fakt309/inputv

ЧИТАТЬ
Всего голосов 127: ↑112 и ↓15+97
Комментарии151

Как создатель node.js сам разочаровался в нем

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

Несколько лет назад на JSConf 2018 выступил Райан Даль, создатель Node.js. Его доклад вызвал сенсацию, он затронул много актуальных проблем и поднял громкий хайп, не оставив равнодушным практически никого, кто связан с серверным программированием. В его обсуждении бэкэнд программисты разделились на два лагеря: одни отстаивали Node.js, другие прочили ему скорую смерть. 

С момента выступления Райана прошло немногим больше двух лет, а в IT это целая эпоха, за время которой может поменяться еще не все, то очень многое. Давайте вспомним этот доклад и попробуем посмотреть, что изменилось с тех пор, кто был прав.
Всего голосов 72: ↑62 и ↓10+52
Комментарии119

Боль разработчика: «Никогда не давайте пользователям бесплатный тариф»

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


Если вы запускаете какой-то сервис в интернете, всегда есть соблазн предложить бесплатный тариф, чтобы завлечь публику.

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

И будет требовать от вас надёжного сервиса, новых функций и предъявлять претензии. Чем меньше платит пользователь — тем больше шуму он поднимает в социальных сетях и тем больше поддержки требует. Отрицательные отзывы идут именно от бесплатных юзеров, а не от платных (это вполне логично, если подумать).
Читать дальше →
Всего голосов 96: ↑90 и ↓6+84
Комментарии266

Загрузка Linux с VHD на компьютере с BIOS

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

Загрузка Linux с VHD может пригодиться в различных сценариях, например, когда на компьютере установлена Windows и есть необходимость в Linux, но WSL или виртуальной машины с Linux недостаточно, а разбивать диск на разделы нет желания. Microsoft позволяет грузить Windows с VHD «из коробки» начиная со старших редакций Windows 7. Но что делать, если возникла необходимость загрузить таким способом Linux?

Читать далее
Всего голосов 77: ↑77 и ↓0+77
Комментарии11

Скорочтение: работает или нет? Часть 1

Время на прочтение8 мин
Количество просмотров93K
Можно ли прочесть «программу на лето» за неделю и изучить рекомендованную литературу к экзамену за одну ночь? Разбираемся в вопросе, который всегда был актуален для студентов.

Читать дальше →
Всего голосов 40: ↑39 и ↓1+38
Комментарии42

Ловушка знаний или как ускорить обучение в несколько раз

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

В этой статье я рассмотрю только один параметр, влияющий на освоение чего либо - внимание. Конечно, существуют и другие, но это вопрос других статей. Прошу в критике и комментариях учесть это.

Ключевой параметр во всех моих вычислениях - уровень концентрации внимания при применении. Цифры относительны. Тенденции прослеживаются при любых эмпирических оценках. Я взял высокие для удобства демонстрации принципов. 

Познать дзен быстрого обучения
Всего голосов 35: ↑28 и ↓7+21
Комментарии71

Выгорание — норма? Часть 1

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

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


Вводная часть


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


Мне важно, чтобы изложенным материалом было потом удобно пользоваться, как мне самой, так и читателям. Поэтому я решила написать цикл статей, и разложить всё по полочкам в том объеме, который потребуется для достаточного погружения.


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


Читать дальше →
Всего голосов 52: ↑47 и ↓5+42
Комментарии70

Мир JavaScript в 2021 году

Время на прочтение7 мин
Количество просмотров36K
Мир веб-разработки весьма изменчив. Изменения в нём происходят очень быстро. Что принесёт в него 2021 год? Здесь я хочу поделиться выводами о грядущих крупных JS-трендах, которые я сделал, проанализировав соответствующие исследования, проведённые в 2020 году.



Сначала — пара слов о самих этих исследованиях. К сожалению, какое-то время нам придётся обходиться без свежих материалов отличного Front End Tooling Survey. Это усложняет поиск трендов. И хотя в этом году на одно хорошее исследование стало меньше, вместо него появилось одно новое — The State of Front End. Но оно проводится первый год, поэтому в нашем распоряжении нет его данных за прошлые годы, что, опять же, не способствует облегчению задачи поиска трендов. Правда, в нём приняло участие внушительное количество разработчиков со всего мира (4500), что, определённо, делает его ценным источником информации.
Читать дальше →
Всего голосов 35: ↑35 и ↓0+35
Комментарии25

Почему накопители SSD ускоряются после очистки и насколько важен размер кэша — бенчмарки популярных моделей PCIe 4.0

Время на прочтение8 мин
Количество просмотров62K
Почему накопители SSD ускоряются после очистки и насколько важен размер кэша — бенчмарки популярных моделей PCIe 4.0



В прошлом году SSD впервые в истории обогнали HDD по объёму продаж. В отличие от винчестеров, здесь сумасшедший технический прогресс. За несколько лет рынок меняется кардинально: интерфейс NVMe вместо SATA, память SLC→MLC→TLC→QLC…

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

Давайте посмотрим, что произошло на рынке потребительских SSD за последние десять лет. И как выбор конкретных технологий влияет на производительность.
Читать дальше →
Всего голосов 44: ↑39 и ↓5+34
Комментарии102

Парсинг общедоступных данных запрещен с 1 марта

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

С 01 марта 2021 года вступают в силу новые правила обработки персональных данных, сделанных доступными неопределенному кругу третьих лиц «общедоступных персональных данных».

Поправки введены законом N 519-ФЗ от 30.12.2020 и существенным образом меняют порядок использования персональных данных, находящихся в общем доступе, и в первую очередь, размещенных на сайтах в сети Интернет. В большей части поправки важны для сайтов по типу агрегаторов и социальных сетей. Однако и корпоративным сайтам с отзывами и контактными данными сотрудников тоже досталось.

Как всегда, смотрите подробности под катом.

Читать далее
Всего голосов 44: ↑42 и ↓2+40
Комментарии153

Забудьте про div, семантика спасёт интернет

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

Давным-давно (лет пятнадцать назад) почти все делали сайты и не переживали о том, что под капотом. Верстали таблицами, использовали всё, что попадётся под руку (а попадались в основном <div> и <span>) и не особо заморачивались о доступности. А потом случился HTML5 и понеслось.

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

Дисклеймер: статья может обидеть тех, кто прикипел к вёрстке дивами. Но <div> — не приговор, и мы не призываем от него целиком отказываться. Ну и всегда можно договориться.

Читать далее
Всего голосов 56: ↑50 и ↓6+44
Комментарии55

Теории заговора и научные гипотезы

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

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

1. Как следует из названия, теории заговора используют в качестве объяснения некоторых событий злонамеренные действия большой группы людей. Это могут быть как действия, приведшие к событию, так и действия по сокрытию реального положения дел. Например, «геологи не виноваты в том, что Земля плоская, они лишь скрывают этот факт». А вот «полет на Луну американцы умышленно сфабриковали». В виду отсутствия доказательств злонамеренных действий, происходит нарушение презумпции невиновности: «бремя доказывания вины лежит на обвинителе». Этим теории заговора отличаются от реальных заговоров, которые раскрываются в результате расследований. Стоял ли за терактом 11 сентября в США заговор? Да, конечно. Заговор террористов-смертников.

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

Иными словами, теория заговора – это необоснованная гипотеза «с переходами на личности», с поиском «злодеев» или «врагов». Это может быть и условный Билл Гейтс или группа людей по национальному, профессиональному или иному признаку вроде страны проживания. Последовательное игнорирование презумпции невиновности едва ли может привести нас к объективному познанию реальности, ведь голословно обвинить в злом умысле можно кого угодно. В том числе и сторонников теорий заговора.

Здесь же полезно упомянуть Бритву Хэнлона: «никогда не приписывайте злому умыслу то, что вполне можно объяснить глупостью». В формулировке Виктора Пелевина это звучит так: «миром правит не тайная ложа, а явная лажа».

Читать далее
Всего голосов 77: ↑59 и ↓18+41
Комментарии197

WinUI 3 — Новая эра разработки под Windows

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

В этой статье:

- WinUI 3 - это не просто новая версия библиотеки пользовательских компонентов. Это изменит разработку ПО под Windows и не только.
- Как менялась разработка графических интерфейсов?
- Эволюция системных API пошла не по плану....
- В чём провал Universal Windows Platform?
- Что такое .NET, и почему за ним будущее?

Читать далее
Всего голосов 58: ↑52 и ↓6+46
Комментарии166

Цензура в интернете. Когда базовых мер недостаточно — I2P

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

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

То, что изначально планировалось как небольшое дополнение к предыдущей статье с посылом "мы научились использовать прокси -- теперь добавим в их список шлюз i2p", выросло, словно собачка во время пути

Объём статьи не означает, что всё так сложно. Я подробно рассказал про несколько вариантов настройки. А какой выбрать -- решать вам

Поехали
Всего голосов 46: ↑44 и ↓2+42
Комментарии93

Защита от уязвимости Dependency Confusion в PHP с помощью Composer

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


Недавно Алекс Бирсан опубликовал статью «Dependency Confusion: How I Hacked Into Apple, Microsoft and Dozens of Other Companies», в которой рассказал, как использовал диспетчеры пакетов уровня языков наподобие npm (Javascript), pip (Python) и gems (Ruby), чтобы заставить компании установить и запустить в своей инфраструктуре зловредный код.

Проблема сводится к тому, что компании ссылаются на внутренние пакеты по имени, например my-internal-package, а злоумышленник публикует в центральном реестре/репозитории пакетов языка (для PHP это packagist.org) пакет с таким же названием my-internal-package, имеющий более высокую версию. После этого компании устанавливали и выполняли эти зловредные пакеты вместо своих внутренних пакетов, потому что их диспетчер пакетов выбирал версию с более высоким номером из стандартного репозитория пакетов вместо внутреннего репозитория.
Читать дальше →
Всего голосов 40: ↑40 и ↓0+40
Комментарии7

Эффективный фингерпринтинг через кэш фавиконов в браузере

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

Демо

Фавикон сайта — маленький значок .ico размером 16*16 или 32*32 пикселей на вкладке браузера. Помогает ориентироваться в сотнях вкладок. У твиттера синяя птичка, у Gmail красный символ почты, у Википедии жирное W.

Но оказывается, что эти значки представляют собой уязвимость, через которую можно выполнять фингерпринтинг — идентифицировать юзера даже через VPN и режим инкогнито в браузере (см. демо).
Читать дальше →
Всего голосов 50: ↑46 и ↓4+42
Комментарии45
1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Киев, Киевская обл., Украина
Дата рождения
Зарегистрирован
Активность