Все мы знаем: Go — это классный язык программирования. Простота, ясность, скорость компиляции — мечта разработчика. Но вот одна вещь может довести до белого каления — это обработка ошибок. В отличие от языков вроде Java или Python, где ошибки обрабатываются с помощью конструкции try-catch, Go предпочитает явный подход: большинство функций возвращают ошибку в виде второго значения, и разработчик обязан проверять её после каждого вызова. Это выглядит чисто и прозрачно, но на практике такие провер…
Хабр, привет! Меня зовут Костя Козин, я старший PHP-разработчик Lamoda Tech. За 17 лет в коммерческой разработке я писал на JS, PHP, и теперь на Golang. Сегодня в Lamoda Tech мы учим PHP-разработчиков писать на Go, и под это создали целый онбординг. Довольно часто в локальных обсуждениях я слышал, как тяжело дается переход с PHP на Go, а у некоторых первые месяцы работы с Go вовсе отбивают желание работать с языком. Поэтому я поделюсь подводными камнями, которые ожидают вас при переходе с одног…
Сегодня мы опишем создание простого сервиса для отправки SMS с вопросами через веб-интерфейс своим клиентам и просмотра всех полученных ответов. На базе этого решения можно построить систему автоматической обработки обратной связи, поэтому вашему маркетологу должно это понравиться.Мы используем SMS API от Exolve, фреймворк Next.js без APP роутера и базу данных PostgreSQL. Для тестирования в локальной среде и приёма сообщений из интернета работаем с Ngrok.Установка Next.jsПервым делом устанавлив…
Меня зовут Сергей Константинов. Я фронтенд-разработчик в Сбере и наставник на курсе «Фронтенд-разработчик». У меня весьма широкий круг общения: от студентов и выпускников Практикума до лидеров ведущих компаний, таких как Яндекс, VK, Сбер и другие. Благодаря этому я могу объективно рассказать о пути, который проходит фронтенд-разработчик на всех этапах карьеры.Дисклеймер: все имена вымышлены, а совпадения случайны.ДетствоКогда «рождается» фронтенд-разработчик, перед ним всегда два пути: быстрый …
Во фронтенде часто попадаются сложные формы. Создавая их, мы хотим, чтобы пользователю было удобно все заполнять. Числа нужно правильно форматировать, чтобы с первого взгляда было видно, что нет лишнего нолика. Когда вводишь номер кредитной карты, сверять его удобно блоками по 4 цифры, как он напечатан на пластике. Пользователь может вбивать номер телефона, дату рождения, номер паспорта и тому подобное — существует масса случаев, когда пользовательский ввод нужно форматировать на лету. Этим зан…
В своих предыдущих статьях о разработке телеграм-ботов я делился опытом создания базового функционала и работы с командами через аргументы (раз, два). На этапе подготовки третьей статьи передо мной встал вопрос генерации однотипного кода для новых команд, что превратилось в рутинную задачу. Чтобы избежать этого и ускорить процесс, я решил задействовать ChatGPT. К моему удивлению, его помощь оказалась значительно весомее, чем я ожидал.Если коротко, то использование ChatGPT для автоматизации гене…
Repo for the controller-runtime subproject of kubebuilder (sig-apimachinery) Kubernetes controller-runtime Project The Kubernetes controller-runtime Project is a set of go libraries for building Controllers. It is leveraged by Kubebuilder and Operator SDK. Both are a great place to start for new projects. See Kubebuilder's Quick Start to see how it can be used. Documentation: Package overview Basic controller using builder Creating a manager Creating a controller Examples Designs Version…
СМИ стало известно, что в мае текущего года в разных городах США произошла серия атак на роботы-пылесосы Ecovacs Deebot X2. Хакеры использовали уязвимости, чтобы удаленно управлять пылесосами, получать доступ к их камерам и встроенным динамикам, оскорблять владельцев и преследовать домашних животных.
Microsoft откажется от поддержки протоколов Point-to-Point Tunneling Protocol (PPTP) и Layer 2 Tunneling Protocol (L2TP) в будущих версиях Windows Server. В компании рекомендуют администраторам переходить на другие протоколы, обеспечивающие безопасность.