Pull to refresh
5
0.3
Send message

Ортодоксальный косплеер решает задачу Перельмана про демографию, проезжая мимо Вудстока

Level of difficultyHard
Reading time8 min
Reach and readers2.5K

В мире существует множество фундаментальных дискуссионных вопросов с двумя непримиримыми группами сторонников. Кто лучше: коты или собаки, Windows или Linux, физики или лирики?

Одним из таких вопросов является спор консерваторов и прогрессистов.
У консерваторов к прогрессистам есть стереотипная и связанная со временем претензия: «Ваше ”прекрасное” всегда далёко. А если и когда оно всё‑таки становится актуальной реальностью, то оказывается не таким уж прекрасным». Далее может идти заход с козырей в виде Чернобыля. Или наоборот, что‑нибудь для утончённых ценителей, вроде талидомидовой катастрофы.

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

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

«Сделать как было раньше»

Визуальное представление структуры btree индекса PostgreSQL

Level of difficultyMedium
Reading time17 min
Reach and readers6.8K

В статье визуализируется структура индекса и показывается, как меняется структура индекса типа btree в PostgreSQL. Это полезно для понимания, как выглядят индексы btree. Также рассматривается FILLFACTOR и пример исследования структуры индекса в целях определения, как перераспределяются индексные записи при включении в структуру индекса новых блоков (страниц). Создадим простую таблицу, индекс, вставим три строки:

Читать далее

Как переопределить кнопки на клавиатуре в Linux

Level of difficultyMedium
Reading time2 min
Reach and readers4.5K

Мне было неудобно, что расположение клавиш End, Page Up и PageDown на моей клавиатуре A4Tech FS не совпадало с их расположением на ноутбуке. Решил переставить, но не нашел толковой инструкции на этот счет в интернете, решил написать тут, вдруг кому пригодится. На самом деле всё просто, доступно каждому.

Читать далее

ChatGPT и все-все-все. Недорого

Level of difficultyMedium
Reading time8 min
Reach and readers11K

Я довольно долго с большим скепсисом смотрел на все эти новомодные нейросети.

Во-первых, меня основательно напрягало то, что они умеют фантазировать, если чего-то не знают.
Во-вторых, я попробовал из любопытства, но не понял зачем это мне.

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

TL;DR: ставим OpenWebUI, подключаем к openrouter.ai, опционально — заносим openrouter.ai денег, пользуемся.

Читать далее

Создание красивых градиентов на CSS

Reading time5 min
Reach and readers25K
Вот линейный градиент на CSS, идущий от чисто жёлтого до чисто синего цвета:


Заметили, что в центре он становится бледным и грязным?

Это явление Эрик Кеннеди назвал «мёртвой зоной серого». Если вы тщательно не выбираете цвета для своих градиентов, то в ваших градиентах на CSS часто возникает такая обесцвеченная часть посередине.

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

Как работает интернет

Level of difficultyEasy
Reading time30 min
Reach and readers81K

Если вы полный ноль в интернет-технологиях, и хотите получить общее понимание Интернета, прочитав всего одну статью, то эта статья - для вас.

Здесь вы узнаете о 4 уровнях модели TCP/IP. О том, что такое MAC-адрес и IP-адрес, и зачем нам 2 типа цифровых адресов. Как работает DNS. Зачем нужны коммутаторы и роутеры. Как работает NAT. Как устанавливается защищённое соединение. Что такое инфраструктура открытых ключей, и зачем нужны TLS-сертификаты. Чем отличаются три версии протокола HTTP. Как происходит HTTP-аутентификация. И в конце будет несколько слов о VPN.

Читать далее

Как настроить веб-приложение под высокие нагрузки

Level of difficultyMedium
Reading time8 min
Reach and readers5.4K

Привет, меня зовут Александр Ададуров. Я — руководитель проектов ФГБУ «Центр информационно-технического обеспечения». В этой статье я опишу опыт настройки сайта с образовательным контентом под нагрузку в пиках до 15 000 запросов в секунду или до нескольких миллионов пользователей в день. 

Образовательный контент сайта представлял собой иллюстрированные HTML-страницы, видеоуроки и различные интерактивные задания, преимущественно на JavaScript, которые проверяли правильность выполнения заданий запросами к бэкенду. Сайт жил спокойной жизнью и вяло развивался до введения локдаунов в связи с распространением COVID-19. Первые месяцы карантина существенно изменили код приложения, его архитектуру и даже серверную инфраструктуру, на которой оно располагалось. 

Читать далее

«Я стал тимлидом и боюсь». Что почитать и зачем

Level of difficultyEasy
Reading time8 min
Reach and readers22K
Стресс, связанный с переходом на менеджерскую роль, способен пошатнуть любые, даже самые крепкие нервы. А если ваше решение стать руководителем желанное и осознанное, то вы легко можете загнать себя в ловушку из двух стен: тревожности и перфекционизма.

Меня зовут Александр Шиндин, я — технический менеджер мобильных продуктов Kaspersky Password Manager и Kaspersky Who Calls. Я так сильно хотел проявить себя в роли руководителя, что внутренних обучающих курсов, которые дает в таких случаях компания, мне не хватало, — и лучшим дополнением к теории стали книги. Они ускорили мое погружение в мир менеджмента, помогли быть готовым к еще большему числу нестандартных ситуаций и придали уверенности в принимаемых решениях.

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


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

Древовидные структуры в SQL в одну таблицу

Level of difficultyMedium
Reading time11 min
Reach and readers20K

Как реализовать хранение и работу каталога папок в PostgreSQL? Есть большое количество вариантов. Но хочется, чтобы реализация выглядела лаконично, не нарушала прозрачность выполняемых операций, не вызывала блокировок, не требовала большого вовлечения клиента в специфику работы и т.д. Потому сегодня попробуем реализовать хранение древовидных структур и работу с ними без использования триггеров, блокировок, дополнительных таблиц (представлений) и внешних инструментов в SQL.

Читать далее

Основные настройки для управления ресурсами в PostgreSQL: настройка памяти, CPU и I/O

Level of difficultyEasy
Reading time6 min
Reach and readers29K

Привет, Хабр!

При работе с PostgreSQL (да и в целом с любой БД) важно правильно настраивать и управлять ресурсами, такими как память, процессорное время и дисковые операции, и так далее для обеспечения лучшей производительности и стабильности работы БД.

В этой статье мы как раз и рассмотрим кратко о том, как управлять ресурсами в PostgreSQL.

Читать далее

Разбираем TLS по байтам. Кто такой этот HTTPS?

Level of difficultyMedium
Reading time32 min
Reach and readers65K


Подключение к сайту бывает защищённым, а бывает нет — это надо знать всем детям. Только мало детей знают, что это значит и как работает.

Я, изучая веб-разработку, узнал об HTTP. Разобраться в нём несложно: в каждой статье о протоколе множество наглядных примеров запросов и ответов. Затем узнал о схеме HTTPS, с которой всё не так наглядно. В ней используется то ли SSL, то ли TLS, и что-то где-то шифруется, и зачем-то нужны какие-то сертификаты. Короче, всё расплывалось в тумане: где пример ответа, запроса, сертификата, как его создать, зачем он нужен и почему гайд по созданию http-сервера уже написал каждый школьник, а https-сервер — недоступная для начинающих разработчиков роскошь?

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

Во второй обсудим, как это дело реализуется в протоколе TLS и разберём формат TLS-пакетов по байтам. Статьи рассчитаны в первую очередь на изучающих веб-разработку, знакомых с HTTP и жаждущих осознать, кто такое https. Но материал актуален для любых применений TLS, будь то веб или не веб.
Читать дальше →

3 миллиарда (фантастический рассказ)

Reading time9 min
Reach and readers9.1K

Alex3018 тусовался в «Галаксо», одной из самых популярных соцсетей Галактики.

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

«А правду говорят, что на Сигме Водолея не могут видеть лицо противоположного пола, чтобы не возбудиться? Если правда, то все водолейки проститутки», – писал Werrir.

«Ей дай волю, она всех поимеет», – вторил ему Yans Fansis.

Особенно воспылал прославленный тролль DiciDici, разразившийся эскападой:

«Эй, KsenoMa! Здесь перетирают представители приличных космических наций, а не биологические отбросы. Так что запихни свои щупальца в вагину или что там у тебя есть и вали отсюда. Кыш в свой провинциальный аквариум! Пользуйся местными соцсетями, а не межгалактическими».

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

«Уважаемая KsenoMa! Не обращайте внимание на идиотов. На Земле, как и в других частях вселенной, их немало, но большинство адекватных и приветливых гуманоидов. Приветствую вас на «Галаксо»».

KsenoMa ответила:

«Спасибо за теплые слова! Чем могу отблагодарить?»

«Подпишитесь», – брякнул Alex3018.

«Обязательно подпишусь, и близких родственников заставлю», – пообещала водолейка.

Вскоре админы потерли тролльские комментарии, а неистовавшего DiciDici забанили на неделю.

Читать далее

Динамические методы в .NET (часть 2)

Level of difficultyMedium
Reading time6 min
Reach and readers6.8K

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

Мы узнали, как создать простейший динамический метод, в общих чертах обсудили, как работает стековая машина и рассмотрели некоторые простейшие операции Common Intermediate Language, которые можно использовать при генерации методов в runtime, такие как работу с константами, математические и битовые операции, а также работу с аргументами методов и локальными переменными.

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

Кроме этого поговорим про динамические методы, привязанные к объектам, и рассмотрим возможность вызова одних динамических методов из других.

Читать далее

Как заставить бэкендера писать фронтенд

Level of difficultyEasy
Reading time10 min
Reach and readers18K

Всем привет! Меня зовут Иван Ситкин, я бэкенд-разработчик в Едадиле. Сегодня я хочу поделиться с вами историей написания очередной панели администрирования и как из этого мы собрали подходящие подходы и практики.

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

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

А теперь вы готовы погрузиться в эту кроличью нору.

Читать далее

Почему я чуть не запорол свою карьеру тимлида. 4 совета начинающим

Level of difficultyEasy
Reading time6 min
Reach and readers78K

Я работаю тимлидом уже несколько лет и с уверенностью могу сказать, что это направление развития мне очень нравится. А помню, я чуть не запорол свою карьеру тимлида в самом начале, на переходном этапе разработчик - тимлид. Я тогда работал разработчиком в большой компании и, в общем, работа мне нравилась. У нашей команды был номинальный тимлид - хороший, душевный человек, которому очень нравилось ковыряться в своих железках, а в жизни команды его участие ограничивалось только вопросами на дейлике “как дела?”. В общем, проблемы в команде копились, и никто ими не занимался, и меня это беспокоило. В итоге мне предложили попробовать себя тимлидом. Я эту историю рассказываю к тому, что я начинал свой путь с огромном воодушевлением, но уже через 3-4 месяца я почти выгорел и хотел вернуться в разработку или вообще уволиться. Поразмыслив тогда, я решил, что не могу так бесславно уйти и должен попытаться разобраться в ситуации и найти другое решение. Я сформулировал 4 основные причины такого быстрого выгорания, которое случилось со мной на этом переходном этапе. Мне удалось найти решение этих возникших трудностей и продолжить работу.

Итак, четыре проблемы начинающего тимлида.

Читать далее

Зачем стрелять в зад медведю и ползти на пузе к моржу

Reading time3 min
Reach and readers28K

Читал про любопытных учёных, которые исследуют Арктику. Знаете, как люди узнают, что они там наворотили в природе этой своей цивилизацией? Всё просто: спрашивают у зверей.

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

Что скажут на это учёные

Как включить журналы базы данных

Reading time11 min
Reach and readers55K

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

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

В этой статье я объясню все, что вам нужно знать о журналах (логах) PostgreSQL, начиная с того, как их включить и заканчивая тем, как их легко форматировать и анализировать.

Читать далее

Разбираемся с Redis

Reading time19 min
Reach and readers574K

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

Читать далее

Information

Rating
2,481-st
Registered
Activity