Pull to refresh
30
0
Александр Трахимёнок @astec

User

Send message

Продал IT-компанию REG.RU и ушел «на пенсию» в Самарский университет, захватив с собой гибкие методологии и Kaiten

Reading time7 min
Views34K

Меня зовут Валерий Студенников, я программист, и вершиной моей IT-карьеры стала компания REG.RU, где я был сооснователем, техническим директором и руководителем разработки.

За 10 лет REG.RU стала №1 в России по количеству зарегистрированных доменных имен, а затем вошла в тройку лидеров по web-хостингу и VPS. В 2021 году мы с партнером продали компанию, я ушел «на пенсию» и с тех пор занимаюсь преподаванием в Самарском университете, обучая студентов различным IT-предметам.

Именно в REG.RU я стал активно применять гибкие методологии и впервые столкнулся с Kaiten, и так получилось, что и то и другое забрал с собой и сейчас использую в преподавательской деятельности. Собственно, об этом и хочу рассказать.

Читать далее

Все, что вы хотели знать про иерархию инжекторов в Angular

Level of difficultyMedium
Reading time8 min
Views5.7K

Привет. Меня зовут Дмитрий, я фронтенд-разработчик в компании «Цифровая индустриальная платформа». В своей работе мне часто приходится использовать Dependency Injection (DI) в Angular. Это мощный и популярный инструмент, который упрощает работу с зависимостями в наших приложениях. Он позволяет легко интегрировать необходимые сущности в компоненты, упрощает процесс тестирования и поддерживает принцип инверсии зависимостей. Однако часто мы не используем все возможности DI, потому что не знаем, как он работает под капотом. Давайте разберемся, как функционирует DI, что такое иерархия инжекторов и какие изменения принесла версия Angular 14.

Читать далее

Web components как альтернатива iframe на примере Angular-компонентов

Level of difficultyMedium
Reading time12 min
Views5.2K

Всем привет! Я Сергей, фронтенд-разработчик из команды привлечения Центрального университета. Занимаюсь проектами, связанными с регистрацией абитуриентов на мероприятия, и внутренними проектами по управлению мероприятиями. 

Осенью мы ждем поступление бакалавров. Чтобы начать набор, нужно встроить форму регистрации в лендинг на CMS. Форма довольно простая: пара полей для ввода данных, диалоговое окно с текстом соглашения об обработке персональных данных и кнопка отправки данных на сервер. Для скорости работы и проверки работоспособности идеи решили встроить приложение через iframe. Но форма стала обрастать различными бизнес-требованиями, которые приносили проблемы. В статье расскажу, с какими трудностями мы столкнулись и как их решали.

Читать далее

Таск-менеджер в Telegram, No-code для создания платных подписок на сайте и в приложении – и другие российские стартапы

Reading time4 min
Views2.7K

10 новых российских сервисов для создания онлайн-инструкций, интернет-магазинов в Телеграм, подписи документов, чтения книг, управления командой и многого другого. Битва за «Продукт недели» началась!

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

Читать далее

Docker для Angular-приложений: от простого к несложному

Level of difficultyMedium
Reading time16 min
Views5.9K

Привет, Хабр! Меня зовут Артём, я разрабатываю фронтенд систем управления сетью в YADRO. С Docker знаком давно и часто его использую. Но когда столкнулся с задачами, где недостаточно просто скопировать шаблонный Docker-файл и подправить пару строчек, решил больше погрузиться в эту тему. 

В статье я разберу типовые вопросы, связанные с запуском Angular-приложений в контейнерах, — это поможет в дальнейшем справиться с более замысловатыми задачами. Текст будет полезен тем, кто уже что-то знает про Docker, но не углублялся в детали или хочет освежить знания на практике.

Читать далее

Playwright и Allure как хорошая практика для разработки веб-приложения

Level of difficultyMedium
Reading time6 min
Views3.8K

Разработчики вечно ищут баланс: как выпускать фичи быстро, качественно и желательно небольшой командой. Наш рабочий рецепт – это фронты + e2e-тесты. Рассказываю, как мы используем автотесты и визуализируем их результаты.

Читать далее

Подписки на GraphQL: Почему мы используем SSE/Fetch вместо Websockets

Reading time10 min
Views1.8K

WunderGraph предоставляет подписки GraphQL через SSE (Server-Sent Events) или Fetch (в качестве резервного варианта). В этом посте объясняется, почему мы решили выбрать этот подход и считаем его лучше, чем использование WebSockets.

Читать далее

Эффективные трассировки в Go

Level of difficultyMedium
Reading time6 min
Views3.1K

Пакет runtime/trace содержит мощный инструмент для понимания программ Go и устранения неполадок. Функциональность внутри позволяет создавать трассировку исполнения каждой горутины за определенный период времени. С помощью go tool trace command (или превосходного инструмента gotraceui с открытым исходным кодом) можно визуализировать и исследовать данные в этих трассировках.

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

Читать далее

Все, что я думаю о премиях и бонусах после 29 лет работы в продажах

Level of difficultyEasy
Reading time6 min
Views19K

• Что делать с зарплатными рисками?

• Какими должны быть премии и бонусы?

• Как не продешевить и не переплатить?

В этой статье я постарался интересно и вдумчиво проанализировать свой опыт работы с разными схемами материальной мотивации

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

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

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

Читать далее

Обзор библиотеки Go Kit

Level of difficultyEasy
Reading time10 min
Views4.7K

Салют, Хабр!

Go Kit предоставляет стандартизированный способ создания сервисов, с ее помощью можно легко реализовать совместимость сервисов. С его помощью можно легко интегрировать различные транспортные протоколы, такие как HTTP, RPC, gRPC, и многое другое, а также реализовывать общие паттерны: логирование, метрики, трассировка. В общем, Go Kit хорошо подходит для разработки микросервисов на go.

Мотивацию создания этой либы разработчики описали так:

Go стал языком сервера, но он по-прежнему недостаточно представлен в так называемых «современных корпоративных» компаниях, таких как Facebook, Twitter, Netflix и SoundCloud. Многие из этих организаций обратились к стекам на основе JVM для создания своей бизнес-логики, во многом благодаря библиотекам и экосистемам, которые напрямую поддерживают их микросервисные архитектуры.

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

Читать далее

Итак, вы думаете, что знаете Git? Часть вторая: новое в Git

Level of difficultyEasy
Reading time4 min
Views29K

Автор оригинала Скотт Чакон — сооснователь GitHub и основатель нового клиента GitButler. Этот клиент ставит во главу угла рабочий процесс и удобство разработки, в том числе код-ревью, и не является просто очередной обёрткой над CLI git.


Далее в нашей серии постов из трёх частей у нас новые фичи! Здесь я расскажу про пять относительно новых вещей в git, о которых вы могли не слышать, потому что ну почему вы?


Мы взглянем на:


Погружаемся!

Шаблон телеграмм бота на go

Level of difficultyMedium
Reading time4 min
Views11K

Шаблон для телеграмм ботов на go - Ваш надежный помощник в создании удобного и функционального бота.

В него можно легко добавлять новые модули, расширяющие возможности бота.
Не тратьте время на банальности, его уже потратили для Вас !

Run Go, Run !

Итак, вы думаете, что знаете Git? Часть первая: старый добрый Git

Level of difficultyEasy
Reading time4 min
Views16K

Автор оригинала Скотт Чакон — сооснователь GitHub и основатель нового клиента GitButler. Этот клиент ставит во главу угла рабочий процесс и удобство разработки, в том числе код-ревью, и не является просто очередной обёрткой над CLI git.


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



Давайте покопаемся!

Простой скрипт на Python для управления личными финансами

Level of difficultyEasy
Reading time3 min
Views26K

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

Читать далее

Представляем gqlgen: генератор серверов GraphQL для Go

Reading time9 min
Views3.3K

В 99designs мы находимся на пути деконструкции нашего PHP-монолита в микросервисную архитектуру, при этом большинство новых сервисов пишется на Go. В этот период наша фронтенд-команда также применила безопасность типов, перейдя с Javascript на TypeScript и React.

После того как мы внедрили безопасность типов в бэкенд и фронтенд, стало очевидно, что наши конечные точки REST, созданные на заказ, не могут преодолеть разрыв между типами. Нам нужен был способ объединить эти системы типов и распутать наши конечные точки API.

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

Читать далее

Как провести исследование рынка и продукта с помощью ChatGPT в 2024 году? Список ключевых промтов для продакт-менеджеров

Level of difficultyMedium
Reading time15 min
Views20K

2023 год стал годом взрыва искусственного интеллекта. Я спрашиваю почти каждого менеджера по работе, с которым встречаюсь, используют ли они ChatGPT в своей повседневной работе: половина отвечает, что да. Однако для многих до сих пор ChatGPT является темным лесом, хотя исследования показывают, что ChatGPT может повысить возможности сотрудников: выполнять на 12,2% больше задач, тратя на 25,1% меньше времени и получать на 40% с более качественные результаты. Как этого добиться? Именно об эффективных подсказках для исследователей и продакт-менеджеров будет идти речь в этой статье.

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

Две вещи для понимания того, о чем мы будем сейчас говорит

GPT (Generative Pre-trained Transformer) - модель, «предварительно обученная» огромными объемами текста, что позволяет улавливать контекст, семантику и сложные языковые шаблоны.

Промт или подсказка — это запрос, который вы предоставляете (обычно текстовый) при взаимодействии с GPT.

Можно просто писать запросы к ChatGPT также, как вы это делаете в поисковиках, но скорее всего это ни к чему полезному не приведет. Лучше делать это по определенным правилам.

Читать далее

Агрегатор личных финансов со всех счетов

Level of difficultyMedium
Reading time6 min
Views10K

Всем привет!

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

Читать далее

OpenAPI станет проще: готовится версия 4.0

Level of difficultyEasy
Reading time7 min
Views12K


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

До появления расширения OpenAPI DevTools проектировать схему OpenAPI приходилось вручную. Хотя это было непросто, оно того стоит в любом случае. Недавно мы в RUVDS переделали свой API под данный стандарт — и увидели, насколько это эффективно и полезно для всех пользователей и разработчиков, которые обращаются к серверным API.

Сейчас в разработке находится четвёртая версия OpenAPI. Она станет проще и универсальнее, то есть подойдёт даже для тех HTTP API, для которых не годится текущая версия 3.0 (3.1.0).
Читать дальше →

Мой план по продвижению Телеграм бота за 4 недели. С нуля до публикации на ProductHunt

Level of difficultyEasy
Reading time7 min
Views10K

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

Читать далее

DDD в golang. Превозмогая трудности

Level of difficultyMedium
Reading time5 min
Views11K

В последнее время достаточно много выступлений, посвященных реализации подходов Domain Driven Design(DDD) в golang.

Я не буду останавливаться на value object, они в golang хорошо реализуются с помощью type defintions. А разберу работу с изменением аггрегатов.

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

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

Information

Rating
Does not participate
Location
Ирландия
Date of birth
Registered
Activity