Как стать автором
Обновить
25
0.9

NodeJS и финтех

Курс «PostgreSQL для начинающих»: #3 — Сложные SELECT

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

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

В этой лекции углубимся в расширенные возможности команды SELECT : как можно "сложить" и "вычесть" выборки (UNION/INTERSECT/EXCEPT), или запомнить и использовать в рекурсивных запросах (CTE), что дают оконные функции (WINDOW) и соединения (JOIN).

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

Читать далее
Всего голосов 36: ↑35 и ↓1 +34
Комментарии 5

Разворачиваем веб-приложение в Kubernetes с нуля

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

Современные веб-приложения, даже простые на вид, часто подразумевают нетривиальную архитектуру, состоящую из многих компонент. В статье «Делаем современное веб-приложение с нуля» я рассказал, как она может выглядеть, и собрал для демонстрации простейшую реализацию на стеке из нескольких популярных технологий. В неё вошёл бэкенд, фронтенд, воркер для асинхронных задач и аж два хранилища данных — MongoDB как основная база и Redis как очередь задач. В «Делаем поиск в веб-приложении с нуля» я показал, как можно добавить полнотекстовый поиск, и подключил третье хранилище — Elasticsearch.

Всё это время для простоты разработки и отладки компоненты приложения запускались локально через Docker Compose. Но как развернуть такое приложение в настоящем продакшн-окружении? Как обеспечить горизонтальное масштабирование? Как раскатывать новые релизы без простоя? 

В этой статье мы разберёмся, как разворачивать многокомпонентное веб-приложение в кластере Kubernetes на примере его локальной реализации — minikube. Мы поднимем виртуальный кластер прямо на рабочем ноутбуке, разберёмся с основными сущностями Kubernetes, запустим и соединим между собой компоненты демо-приложения и обсудим, какие ещё возможности Kubernetes пригодятся нам в суровом энтерпрайзе. Если вы занимаетесь разработкой и слышали о Kubernetes, но ещё не имели возможности пощупать его руками — добро пожаловать под кат!

Скорее к YAML-инженерии
Всего голосов 38: ↑38 и ↓0 +38
Комментарии 9

Самые распространенные логические ошибки

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

Изучение логических ошибок помогает в развитии критического мышления, необходимого во всех сферах жизни. School of Thought проделала отличную работу, описав 24 наиболее распространенные логические ошибки.

Читать далее
Всего голосов 84: ↑79 и ↓5 +74
Комментарии 101

Регрессия к среднему — невидимая рука хаоса

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

Что объединяет израильских лётчиков, лечение сомнительными методами и твою жизнь? Сегодня поговорим про регрессию к среднему. Это явление порождает огромное количество заблуждений везде, где мы с ним сталкиваемся, потому что наш мозг очень любит истории и не очень любит статистику. Его неправильное понимание приводит к ошибкам в политике, медицине, науке и бизнесе.

Проявить любопытство
Всего голосов 60: ↑60 и ↓0 +60
Комментарии 8

Что делает ChatGPT… и почему это работает?

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

То, что ChatGPT может автоматически генерировать что-то, что хотя бы на первый взгляд похоже на написанный человеком текст, удивительно и неожиданно. Но как он это делает? И почему это работает? Цель этой статьи - дать приблизительное описание того, что происходит внутри ChatGPT, а затем исследовать, почему он может так хорошо справляться с созданием более-менее осмысленного текста. С самого начала я должен сказать, что собираюсь сосредоточиться на общей картине происходящего, и хотя я упомяну некоторые инженерные детали, но не буду глубоко в них вникать. (Примеры в статье применимы как к другим современным "большим языковым моделям" (LLM), так и к ChatGPT).

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

Какую видеокарту лучше брать в 2023 году?

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

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

Читать далее
Всего голосов 38: ↑27 и ↓11 +16
Комментарии 152

Всё, что вы НЕ хотели бы знать о сервисах онлайн знакомств… [много букОв и иллюстраций + регулярно дополняется]

Уровень сложности Простой
Время на прочтение 58 мин
Количество просмотров 228K
Компьютерные сети изменили мир и подарили нам возможность не выбирать «меньшее из зол» из ограниченного числа сложившихся по жизни контактов, а найти по-настоящему любимого человека, даже если он прячется от нас на другом материке. Разумеется, мы можем отказаться от этой возможности и пойти по воспетому российской эстрадой садистско-мазохистскому сценарию «слепила из того, что было, а потом, что было, то и полюбила». И все будут только рады, если у нас всё получится. Но, если мы подведем статистику известных нам счастливых пар, сложившихся по этому сценарию, и трезво оценим вероятность успешного исхода, то, вероятно, путь поиска своего счастья в мировой паутине покажется нам более перспективным. И в этой статье я хочу рассказать вам о тех проблемах с которыми на этом пути можно столкнуться.
Читать дальше →
Всего голосов 293: ↑282 и ↓11 +271
Комментарии 770

Как я создавал эргономичное рабочее место для себя и теперь предлагаю другим. Часть 1

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

Привет, Хабр! Меня зовут Денис Захаров. Я занимаюсь разработкой веб приложений на протяжении уже 14 лет, но история будет не об этом. Расскажу о том, как и почему я создавал эргономичное рабочее место, которое в последствии превратилось в проект Easyworkstation. Эта штука уже несколько лет полностью заменяет мне и еще нескольким десяткам пользователей привычное компьютерное кресло и рабочий стол.

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

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

А теперь ретроспектива
Всего голосов 300: ↑300 и ↓0 +300
Комментарии 206

Налоговый и валютный резидент РФ —последствия приобретения и утраты статусов — полный FAQ с примерами

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

Друзья, всех приветствую и предлагаю ознакомиться, как мне кажется с довольно полным FAQ по теме налогового и валютного резиденства РФ. По ходу материала есть некоторые примеры, а внизу вопросы & ответы.

Читать далее
Всего голосов 51: ↑46 и ↓5 +41
Комментарии 47

150+ хакерских поисковых систем и инструментов

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

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

Пост состоит из 8 объемных разделов:

1. метапоисковики и поисковые комбайны;

2. инструменты для работы с дорками;

3. поиск по электронной почте и логинам;

4. поиск по номерам телефонов;

5. поиск в сети TOR;

6. поиск по интернету вещей, IP, доменам и поддоменам;

7. поиск данных об уязвимостях и индикаторов компрометации;

8. поиск по исходному коду.

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

Читать далее
Всего голосов 64: ↑61 и ↓3 +58
Комментарии 6

Spore: не выученные уроки

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

Еще в подростковом возрасте я совершил ошибку, которую не должен повторять ни один геймер: я поверил в ту фантастическую картину, которую намалевали разработчики в своих обещаниях перед выходом игры. В тот раз речь шла о Spore. И вот, час X, я скачал из локалки городского провайдера свеженький репак и, припрыгивая от радости, запустил этап «Клетка». Не буду врать – начало игры было очень веселым. Да, это довольно примитивный двухмерный геймплей, но там присутствовало ощущение, что твой дизайн клетки хоть на что-то влияет (во всей остальной игре этого попросту нет). Из весьма ограниченного инструментария можно было выжать какое-то разнообразие: шипы, в зависимости от расположения, могли быть как оружием, так и защитой, поставил травоядную и плотоядную пасть одновременно – стал всеядным еще до поднятия «хоботка», убрал обычный хвостик и поставил гидромет – управление и движение заметно изменились вместе со стилем игры. Конечно, этого развлечения хватит не более, чем на 15-20 минут (сколько и длится этап), но дальше же нас ждет развитие этой идеи, правда ведь? Правда?..

Уже на этапе «Существо» меня ждал полнейший облом: дизайн животного перестал на что либо влиять. Нацепленные (на любое случайное место по вашему выбору и в любом количестве) органы давали лишь изменение численных параметров и виды атаки, из-за чего этап походил на какой-то недоделанный прототип RPG. Этапы «Племя» и «Цивилизация» признаются многими игроками как самые скучные и являются прототипами RTS. Один отечественный журналист, пройдя первые два этапа игры, заявил, что игра слишком сырая, а механики – примитивны, её слишком рано отдавать на растерзание игрокам. Знал бы он тогда, что Spore такой и выйдет в релиз.

Читать далее
Всего голосов 14: ↑13 и ↓1 +12
Комментарии 17

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

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

Интро: почему я написал эту статью


Меня зовут Виктор, я разрабатываю страницу результатов поиска Яндекса. Несмотря на внешнюю простоту, поисковая выдача — сложная штука: на каждый запрос генерируется своя уникальная страница, на которой в зависимости от запроса может присутствовать блок Картинок, Карты, Переводчик, видеоплеер и многие другие компоненты. Все они должны запускаться и работать в памяти обычных бюджетных телефонов, которые использует большинство наших пользователей. Браузерам должно хватать ресурсов, чтобы пользователь не видел вот такого:



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


Разрабатывая проект на JavaScript (TypeScript, ClojureScript или каком-то другом языке, транслируемом в JavaScript), мы привыкли создавать объекты, массивы, строки и вообще писать код, как будто память бесконечна. Это не так. Я расскажу о видах проблем с памятью, о том, какие ограничения мы часто забываем и как их можно преодолеть. В ответ браузеры и пользователи скажут вам спасибо.


Читать дальше →
Всего голосов 55: ↑55 и ↓0 +55
Комментарии 12

Типографская раскладка для 60-процентной клавиатуры

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


Оригинал фото: pxhere.com/ru/photo/1600961

Обычную часть раскладки я описывал в предыдущей статье. А сейчас расскажу о возможностях, которые превращают раскладку в типографскую: пробелы, тире, кавычки, апострофы, диакритические знаки.
А также лигатуры, диграфы и многое другое
Всего голосов 39: ↑39 и ↓0 +39
Комментарии 18

7 причин почему вы не худеете. Ожирение, инсулинорезистентность и диабет простыми словами

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

С лишним весом я на ты. Со 115 кг я «сбросился» до 72, затем в течение 3-х лет вернулся обратно к 94-м, а сейчас опять худею (уже грамотно) и в данный момент вешу 88.7 кг (ещё 7 скину и остановлюсь). Таких историй много, поэтому об этом я не буду, а вот причины (биологические и поведенческие), по которым вы можете не худеть, не видел, чтобы кто-то описывал в полном объёме и понятным языком. Сегодня я постараюсь сделать это для вас, обобщив все свои знания о лишнем весе. 

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

Читать далее
Всего голосов 103: ↑93 и ↓10 +83
Комментарии 103

О производительности Javascript. Рейтинг Techempower

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

Почему Javascript входит в топ-2 techempower?

Недавно на github был задан этот вопрос, вызванный появлением новой платформы javascript, близкой к вершине промежуточного рейтинга Techempower. Эта платформа Just(js) является тем, над чем я работаю в качестве пет-проекта уже некоторое время. Здесь я попытаюсь дать краткий ответ на вопрос, а в ближайшие недели дам дополнительные подробности об этом и о самой платформе.

Читать далее
Всего голосов 22: ↑20 и ↓2 +18
Комментарии 10

Простая агентурная работа: интервью с социальными инженерами

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


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


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


Осторожно, этот пост может спровоцировать приступы паранойи.

Читать дальше →
Всего голосов 61: ↑60 и ↓1 +59
Комментарии 10

Игра по правилам Event loop в Node.js

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

Я пришел в компанию Lineate работать именно на Node.js. В процессе выполнения проектов мне приходилось обращаться к более опытным коллегам и выяснять ответы на возникающие у меня вопросы, но, как оказалось, никто не был уверен в своих ответах на 100%. C Event loop разобраться сложно и не всегда понятно, зачем это нужно на практике. Поэтому даже у опытных коллег знания по этой технологии часто только теоретические — в рабочих условиях ее применяют редко. Опрос, созданный мной в Google Form, прошли около 25 человек, вопросы были совершенно стандартные, из тех, что обычно задают на собеседованиях. Правильных ответов было очень мало, около 23-24%. 

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

Результаты публикуем на Хабре. Если мы хотим добиться производительности, нам нужно отойти от стандартных идей и играть по правилам Node.js. 

Читать далее
Всего голосов 10: ↑9 и ↓1 +8
Комментарии 31

«За границей»: кратко о бюджетных вариантах

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

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

Читать далее
Всего голосов 158: ↑139 и ↓19 +120
Комментарии 237

Как незаметно стать антиваксером (возможно, это про вас) — ликбез для взрослых

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


Как показала недавняя практика, в вакцинах в России разбираются в среднем никак.

Во-первых, их надо обновлять. Если вы не обновляли «детские» прививки, поздравляю, вы пассивный антиваксер и потенциально представляете опасность для общества.

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

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

Давайте проговорим ещё раз, от каких болезней можно и нужно привиться взрослым, когда и как.
Читать дальше →
Всего голосов 142: ↑119 и ↓23 +96
Комментарии 144

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

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

В телеге давно есть опциональная фича live location sharing, который показывает точное расстояние до людей поблизости. Если использовать GPS спуфинг и трилатерацию (не путать с триангуляцией), то можно узнавать координаты людей в любой точке планеты с точностью до метра. Телега проигнорировала сообщение об этой "фиче", поэтому автор выложил всё на github.

Читать далее
Всего голосов 103: ↑88 и ↓15 +73
Комментарии 91
1

Информация

В рейтинге
1 274-й
Зарегистрирован
Активность