Погоди, что? GCC std::sort использует квадратичную сортировку вставками? WTF???Я знаю многих программистов и руководителей в IT компаниях, которые недолюбливают математиков и в частности считают их далёкими от жизни идиотами из-за их утверждений в духе "нельзя отсортировать последовательность быстрее, чем за nlogn" -- ведь это очевидным образом неверно, есть же сортировка подсчетом и radix sort. Нюанс в том, что описанное выше -- это распространённая некорректная трактовка одной из ключ…
Структура статьиВведениеЧасть 1. Появился ИИ, ну и в чем проблемы? - Появились отличия в “программистах”Часть 2. Ну поменялись программисты и что? Важен же код. - Появились отличия в коде.Часть 3. Ну ладно, код стал хуже и что? Главное что бизнес работает. - Проблемы будут, не сомневайтесь.ЗаключениеВведениеНедавно посмотрел на ютубе видео, в котором поднимается проблема того, что на место классических программистов‑кодеров приходят «программисты»‑prompt‑инженеры.Само видео мне не очень понрави…
Дизайн и поведение планировщика Go позволяют многопоточным программам работать более эффективно и производительно. Это возможно благодаря тому, что планировщик Go учитывает особенности работы планировщика операционной системы (OS). Однако, если многопоточная программа не учитывает принципы их взаимодействия, все преимущества теряются. Поэтому важно понимать, как работают оба планировщика, чтобы правильно проектировать многопоточные приложения.В этой статье я решил разобраться с основными механи…
Привет, Хабр!Не так давно мне удалось вернуть эксклюзивные авторские права на книгу по Go. Писалась она 3 года назад и с тех пор добавила мне немного седых волос. А все из-за неопытности и надежды на ее лучшее будущее в руках одного издательства... Чем я тогда думал отдавая все права (электронка + печатное издание) - фиг его знает, но с другой стороны, если бы не пережитый звиздец, то не начал бы процедуру возвращения авторских прав на свои книги, чтобы теперь никогда не передавать издателю эк…
ПрологНедавно я столкнулся с задачей собрать своё Go‑приложение написаное вокруг библиотеки github.com/webview/webview_go, которая является обёрткой для C/C++ библиотеки webview, для Linux, из чего вытекает необходимость использования CGO. Казалось бы, что сложного? Укажи GOOS=linux, пропиши компилятор CC= и CXX=, выполни go build — и готово. Но нет, CGO и зависимости вроде GTK превратили это в настоящий квест. После нескольких часов борьбы с ошибками вроде Package webkit2gtk-4.0 was not found …
В мире фронтенд-разработки управление состоянием форм играет важную роль, особенно когда дело касается валидации, отправки данных и управления ошибками. Одним из популярных решений является библиотека react-hook-form, которая позволяет эффективно работать с формами, минимизируя количество ререндеров и упрощая взаимодействие с React-компонентами.Однако что, если нам нужна более лёгкая или кастомизированная версия этой библиотеки? В этой статье мы рассмотрим, как создать простую самописную альтер…
Привет, меня зовут Андрей, и я написал книгу.Нет, не о синтаксисе и не про очередной набор «лучших практик».А о том, что часто остаётся за кадром — в рефлексии, в мыслях после проектов, в спорах между «пишем быстро» и «делаем правильно».О чём книга?«Мышление за пределами кода» — это не про строчки кода, это про подходы.Про то, как разработчики думают, ошибаются, решают, упрощают, спорят, передумывают и в итоге двигаются дальше.Это книга об архитектурном мышлении, принятии решений в условиях нео…
Недавно по работе занимался тестированием очередного апи и столкнулся с таким неудобством, что все запросы требуют авторизации, а токен живёт всего 5 минут. Из-за этого приходилось постоянно делать запрос авторизации и обновлять токен вручную.В какой-то момент мне это надоело, и я задумался, как это дело автоматизировать. Узнал, что можно написать Pre-request скрипт для коллекции в постмане, который будет выполняться перед каждым запросом, а уже в этом скрипте делать запрос токена авторизации.С…
Привет, Хаброжители! Если вы хоть раз сталкивались с юнит-тестами, вы знаете, что это одновременно и благословение, и проклятие. С одной стороны, они помогают ловить баги на ранних этапах, с другой — могут превратиться в настоящий ад, если написаны неправильно. Книга «Искусство юнит-тестирования с примерами на JavaScript» от Роя Ошерова и Владимира Хорикова — это глубокий, практический и местами даже философский взгляд на то, как писать тесты, которые действительно работают, а не создают допол…