Pull to refresh
8K+
2
Vitaliy Edifanov@CEOCTO

User

7,3
Rating
5
Subscribers
Send message

??? непонятный комментарий? не ясно претензия или нет, вы молодец, хороший работник и исполнитель, работать на компанию, быть специалистом отлично

Я развиваю свои проекты и идеи которые копились за всю жизнь, пока я трудился на дядю, теперь пришло моё время + AI в помощь, отличные руки для разработки и проверки прототипов и MVP

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

Забавно, что 20 лет издатели оптимизировали всё под Google, а теперь выясняется, что зависимость от одного источника трафика — плохая бизнес-модель. Проблема, кажется, не только в AI, а в том, что слишком много компаний построили бизнес вокруг чужой платформы.

Всегда интересно смотреть такие статьи через пару лет использования. Но почти у всех замечаю одну закономерность: чем больше появляется собственных правил, шаблонов и соглашений, тем выше порог входа для самого себя через год. Иногда проще написать обычную markdown-заметку, чем решить, это note, zettel или уже index.

Всегда немного настораживает hot reload в Python-проектах. Пока проект маленький — магия. Потом начинаются singleton'ы, фоновые задачи, импорт побочными эффектами и выясняется, что полный рестарт был не таким уж плохим решением.

Понравилось, что библиотека не пытается заменить aiogram, а именно дополняет его. Часто подобные проекты начинают постепенно "затягивать" всё в себя и через год превращаются в отдельный фреймворк с несовместимым API. Если получится удержать именно формат DX-плагина — это, на мой взгляд, самый удачный путь.


Самая большая опасность таких библиотек — желание собрать вообще всё. Сегодня hot reload и пагинация, завтра ORM, DI, планировщик задач и свой конфиг. Интересно, где автор сам для себя проводит границу, чтобы Raito не превратился в очередной "framework over framework".

Да, я с ai создаю проекты на Rust, Python, Swift, Kotlin, Goddot, оболочки и билды linux (готовлю сборку пакетов Platinum OS над armbian загрузчик бортов), языки которые я знаю хорошо php, go, c/c++ Arduino esp32 сбокри из ESP-IDF) проекты и языки пишу для себя,

Идей у меня ещё миллион, а также скоро будут новые интересные стать и по роботов и другие проекты

https://github.com/digkill

Да, так и есть. Особенно по моим внешним дискам)

Молодец, тестируй ios на докере запускай на эмуляторе

Спасибо за тёплые слова!

Хорошая статья. Я бы только добавил ещё одно правило:

Чем меньше UI используется для подготовки состояния теста, тем стабильнее становится весь набор.

Если можно создать сущность через API за 100 мс вместо 20 кликов по интерфейсу — почти всегда стоит так и сделать. UI должен проверять UI, а не использоваться как средство подготовки данных.

На мой взгляд, ключевая мысль статьи даже не про Natural vs Surrogate Key, а про то, что Primary Key — это контракт системы, а не просто способ обеспечить уникальность строки.

Пока приложение живёт внутри одной БД, кажется, что изменить PK — не такая уж проблема. Но как только появляются внешние сервисы, кэш, Kafka, CDC, S3, аналитика или просто ссылки в других БД — PK становится частью публичного API.

Именно поэтому стоимость ошибки здесь растёт не линейно, а практически экспоненциально.

Эти опарыши из гугл плэй заблочили мою учетку и не вернули 25$
толком не объяснив причину, поэтому думаю буду публиковать через китайские сторе и русторе

Позже попробую еще зарегать аккаунт в гугле, но 25$ жалко

Спасибо, в develop ветке буду дорабатывать

Спасибо, в develop ветке буду дорабатывать

Справедливое замечание — без TURN действительно не обойтись, но ситуация не такая мрачная, как кажется. TURN включается только когда P2P-соединение не пробивается (симметричный NAT, CGNAT, корпоративные сети), и в среднем задействуется у 10–30 % звонков.

https://habr.com/ru/articles/907934/

Вот я писал пост о секьюрном мессенджере на Rust

Спасибо! Искал мессенджер альтернативу, попробую!

type ChanCounter struct {
    ch    chan int
    value int
    mu    sync.Mutex
}

func (c *ChanCounter) run() {
    for v := range c.ch {
        c.mu.Lock()
        c.value += v
        c.mu.Unlock()
    }
}

func (c *ChanCounter) Value() int {
    c.mu.Lock()
    defer c.mu.Unlock()
    return c.value
}

Спасибо, простое решение устранить гонку

Когда появился ChatGPT и Grok я подумал почему, почему здесь на сайте ссут кипятком и не любят статьи про Gen AI и минусят их, потом понял, что боятся что их говн""ды больше не нужны будут компаниям и код будут писать AI. Но написал сам множество пет проектов с помощью AI Gen, понял что, нефига. Навыки программиста необходимы, так как часто Gen AI уходит в рекурсию багов и не правильных архитектурных решений. Поэтому им нужно уметь оркестрировать, устранять ошибки.

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


Вообще, как итог, по эффективности с Gen AI, я бустанул процентов на 500

P.S. есть лайфхак, проверять и оптимизировать написанный код Chat GPT отдавая его в Grok.

1

Information

Rating
1,014-th
Location
Россия
Date of birth
Registered
Activity

Specialization

Технический директор, Генеральный директор
From 500,000 ₽
Ведение переговоров
Разработка ТЗ
Управление людьми
Управление проектами
Оптимизация бизнес-процессов
Информационные технологии