Pull to refresh
7
0
Владимир @Arkham

Web-программист

Send message

8 английских слов, которые даже носители пишут с ошибками

Level of difficultyEasy
Reading time6 min
Views1.2K

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

Привет! Меня зовут Настя Литвиненко, я методист английского языка в Практикуме. В статье поделюсь словами, которые встречаются в повседневной речи, но оказываются не так просты — особенно для тех, кто изучает английский как иностранный. Разберёмся, почему так получилось и как запомнить верное написание.

Читать далее

Как запустить свою LLM для инференса. Руководство по запуску: Ollama, vLLM, Triton, LM Studio, llama.cpp, SGLang

Level of difficultyMedium
Reading time11 min
Views16K

В этой статье будет приведено практическое руководство по базовой настройке и запуску следующих инструментов для работы с LLM: Ollama, LM Studio, vLLM, Triton, llama.cpp, SGLang.

🔥 Начинаем? 🔥

Инженерное лидерство в эпоху AI: почему 72% продуктивности теряется и как с этим бороться

Level of difficultyMedium
Reading time10 min
Views8.9K

Парадокс века: исследование METR с участием 16 опытных разработчиков показало, что AI-инструменты увеличили время выполнения задач на 19%, хотя сами разработчики были уверены, что экономят 20% времени. Если вы тимлид или менеджер, внедряющий AI в команде — эта статья сэкономит вам месяцы экспериментов и поможет избежать типичных граблей, на которые наступили 80% компаний в 2025 году.

Читать далее

Как выжать из СУБД больше производительности? Подкручиваем параметры по урокам Майка Вазовски

Level of difficultyMedium
Reading time8 min
Views6.2K

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

Администраторы БД часто ломают голову, как подобрать оптимальные настройки под задачи СУБД. И чтобы помочь им разобраться, мы обратились к опыту Майка Вазовски — тренера легендарного монстра Салли. Вдохновились секретами его тренировок и разработали утилиту Pangolin Tuner — аналог Вазовски для настройки параметров конфигурации. 

Я Кристина Демидович, DevOps-инженер в СберТехе, занимаюсь автоматизацией в команде СУБД Pangolin — это целевая СУБД в Сбере и не только. В этой статье покажу на примерах, как всё работает. Прошу под кат.

Майк Вазовски объясняет

Теория мертвого 2GIS

Level of difficultyEasy
Reading time62 min
Views64K

Выбрали хороший ресторан (врача, СТО, юриста, риэлтора) по отзывам и высокому рейтингу в 2GIS, а оказалось, что там если не ужас-ужас-ужас, то как-то средне, явно не похоже на то, что вы бы ожидали от рейтинга 4.8 или даже 5 баллов. Знакомо?

Все знают, что в 2GIS могут быть накрученные фейковые отзывы (а их там всего 10-20 на весь город или там 99% фейковых? Есть ведь разница!), но не все умеют их легко опознавать. У 2gis, похоже, еще нет антифрода (что вполне нормально для пет-проекта, который делают веб-программисты в свободное время), но вы теперь можете различать ботов-зомби-инопланетян через мой антифрод af2gis, и выбирать себе те заведения, которые нравятся людям, а не ботам.

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

Прочитать и получить волшебные очки!

Проблема высоких каблуков в играх

Level of difficultyEasy
Reading time12 min
Views38K

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

Читать далее

Декомпозиция систем по ограниченным контекстам DDD — глубокое погружение

Reading time10 min
Views13K

"Отдайте этот функционал в другую системы - он относится к ним" - ворчал мой собеседник. Ему с пылом отвечали: "Так быть не должно. Мы сами должны его сделать!" Спор грозил затянуться до вечера. Ни одна из сторон не могла привести ни одного настоящего аргумента, почему новый функционал нужно поместить в ту или иную автоматизированную систему.

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

Но методика на самом деле есть, и весьма неплохая. Называется она Предметно Ориентированным Дизайном (Domain Driven Design, DDD). С помощью DDD деление большой системы на (микро)сервисы становится простым и понятным.

Читать далее

Как пустой S3 бакет может вас обанкротить

Level of difficultyEasy
Reading time4 min
Views42K

Представьте, что вы создали пустую, приватную корзину (их ещё называют «бакетами» — от «bucket») AWS S3 в выбранном вами регионе. Каким будет счёт за услуги AWS на следующее утро?

Несколько недель назад я начал работу над прототипом системы индексирования документов для моего клиента. Я создал одну корзину S3 в регионе eu-west-1 и загрузил туда несколько файлов для тестирования. Через два дня я проверил мою страницу выставления счетов AWS, заглянув туда, преимущественно, для того, чтобы проверить, что то, чем я занимаюсь, нормально укладывается в лимиты бесплатного тарифного плана. Но, судя по тому, что я там увидел, ни о какой нормальности речи не шло. Мой счёт превышал $1300, а в консоли выставления счетов были видны сто миллионов PUT-запросов к корзине S3, выполненных всего за один день!

Читать далее

Топ-10 техник атак веб-приложений 2024 года

Level of difficultyHard
Reading time4 min
Views6.1K

PortSwigger опубликовали топ-10 техник атак веб-приложений 2024 года - самых инновационных и важных исследований в области веб-безопасности, опубликованные за последний год.

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

Читать далее

Зачем Яндекс.Браузеру эти данные?

Level of difficultyEasy
Reading time2 min
Views119K

TL;DR После установки Яндекс.Браузера с опцией отправки статистики, слишком много данных, на мой взгляд, отправляется куда-то в недра api.browser.yandex.ru. С помощью коллеги по цеху ИБ – Олега Анциферова – удалось раскопать следующее: улетает список пользователей, список установленного ПО, файл hosts и т.д. Под катом подробности.

Читать далее

Оптимизация SQL запросов

Level of difficultyMedium
Reading time6 min
Views42K

Оптимизация SQL-запросов является одной из ключевых задач при работе с реляционными базами данных. Эффективные SQL-запросы позволяют значительно улучшить производительность приложений и обеспечить более быстрый доступ к данным. В данной статье мы рассмотрим как переписать запрос, чтобы выполнялся быстрее. В статье пойдет речь о PostgreSQL, хотя применять данные советы к любой базе данных SQL Ниже будут представлены термины и операторы, о которых пойдет в данной статье.

Читать про оптимизацию

Антипаттерны Go: чего нельзя делать и почему

Level of difficultyEasy
Reading time8 min
Views9.1K

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

Читать далее

Хитрости для программистов: пять команд Linux, с которыми ваша жизнь не будет прежней

Reading time8 min
Views87K

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

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

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

Читать далее

Загадка потерянного инкремента

Level of difficultyMedium
Reading time15 min
Views6.6K

Всё вроде должно быть просто

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

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

Читать далее

Мое производство приносило 36 млн в год, пережило ковид и блокировку от WB, но сегодня я все же вынужден остановиться

Level of difficultyEasy
Reading time18 min
Views167K

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

Читать далее

Самое понятное объяснение Специальной теории относительности

Level of difficultyMedium
Reading time13 min
Views146K

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

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

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

Для иллюстраций я написал интерактивный визуализатор СТО, работающий в браузере. Ссылка на него и исходники проекта в конце статьи.

Читать далее

Когда обманули во всем: изучаем фейковый планшет, которым забиты маркетплейсы

Reading time10 min
Views227K

Если кратко, то производитель с продавцом обманули с каждой характеристикой, начиная от основного чипа, объемов ОЗУ, накопителя и заканчивая камерами, аккумулятором и экраном. Полный фейк в красивой упаковке.

Детали под катом.

Читать далее

Бесплатное обучение фулстек-разработке веб-сервиса с нуля по видео-урокам с исходным кодом и поддержкой

Level of difficultyMedium
Reading time7 min
Views47K

TLDR. Я примерно год создавал курс из 141 урока. Курс получился хороший, все кто проходят рады и пишут положительные отзывы. Я пытался его продавать, в лучшем случае у меня получалось отбивать рекламу в ноль. Короче, я хороший разработчик, я хорошо доношу материал, но я плохой маркетолог. Все эти таргреты, ретаргеты, воронки, шморонки — тоска унылая. Мне гораздо веселее и понятнее заработать на создании и запуске IT-продуктов, чему я и учу в этом учебнике. Так что пишу эту статью, чтобы сообщить вам о существовании моего курса и предложить всем желающим абсолютно бесплатно получить от него пользу 🙂

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

Читать далее

Оптимизация ядра WebGPU для перемножения матриц и достижения производительности свыше 1ТФЛОПС

Reading time12 min
Views2.4K

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

Я работаю в компании Nomic, и многие из моих коллег заняты созданием больших TSNE-подобных визуализаций, работающих в браузере. При визуализации таких двумерных карт возникает две проблемы: проецировать эти конструкции (напр. TSNE и UMAP) в 2D-координатную систему протекает медленно и требует больших затрат оперативной памяти, особенно по мере того, как вы увеличиваете датасет и пытаетесь визуализировать в браузере миллионы точек данных, не расплавив при этом ноутбук невзначай.

Отобразить в браузере миллионы точек данных, не расплавив компьютер — та ещё задача. Мне доводилось слышать, что многие проблемы с масштабированием удаётся решать при помощи инструмента Deepscatter, разработанного Беном Шмидтом.

Но многие из таких разговоров, которые мне известны, вертятся вокруг Typescript и великолепия WebGPU как такового. Готовя эту статью, я не смог найти ни одной библиотеки для автоматического дифференцирования выражений, которая была бы написана с применением WebGPU. Но было бы упущением не назвать здесь два репозитория с функционально схожим наполнением: webGPT (библиотека на основе трансформеров, приспособлена только для логического вывода) и webgpu-blas (ядра для быстрого перемножения матриц под webGPU). Поэтому, в качестве самообразования и желая получше изучить WebGPU и Typescript, я решил написать Surfgrad, высокопроизводительную библиотеку для автоматического дифференцирования выражений под управлением WebGPU. Она обеспечивает тензорные операции в браузере. Как понятно по названию и по принципу работы, она во многом сделана по примеру tinygrad и micrograd.

Читать далее

Считаем размер выборки для AB-теста на основе нормального распределения (готовимся к собеседованию на Аналитика)

Level of difficultyMedium
Reading time7 min
Views2.4K

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

Читать далее
1
23 ...

Information

Rating
5,474-th
Location
Владивосток, Приморский край, Россия
Registered
Activity