Что представляю я, когда говорят о языке более высокого уровня: я пишу промты, программа полностью создаётся из них.
Вижу что здесь не так: у нас есть артефакт в виде кода над которым итеративно работает программист. Получается генератор кода на стероидах. Если ничего не делать, то в конце концов у нас останется только код в репе. По аналогии, это как получать минифицированный js файл, вместо исходников.
Мой опыт генерации показывает, что если сразу всё описать, то шанс получить согласованное решение выше, чем в диалоге. Бывает, что переделывает только ту часть, на которую указал, а все остальные места (из этого же чата генерации) не приходят в согласованное состояние.
Делал почти так же как у тебя. tenant_id хранился в таблице, а все запросы шли через вьюхи с таким же фильтром tenant_id = current_setting('app.current_tenant')::uuid. Все индексы были вида (tenant_id, id), а внешние ключи обязательно содержали tenant_id.
Я разрабатывают бэкенды и вообще не представляю как может выглядеть:
минуя этап структурирования и проектирования объектов (это в подавляющем большинстве случаев справочный шаблон) а непосредственную реализацию последовательности действий или конечного результата
Если это небольшой законченный проект - то норм, обвязку сгенерит. Если что-то большое, то нужен глаз да глаз. Но программировать всё равно нужно уметь.
Вот эта часть мне не нравится. Сам программирую с курсором, но конечный этап работы - это код, за который я несу ответственность. Код "человекосовместимый".
Есть примеры реп, где код вообще не пишется руками, а целиком генерится по промтам? Для меня утверждение, что "просто язык программирования верхнего уровня" звучит так, что у нас просто есть код, над которым мы ведем итеративную работу, а весь софт создаётся автоматом из репы где нет классического кода.
Меня смущает недетерминированность такого языка программирования. Если обычный компилятор работает не правильно, то это баг и его можно исправить. Если ИИ гонит, то выкручивайся сам, некуда репортить о глюках.
Либек доставили в больницу, где было установлено, что она получила ожоги третьей степени 6 % поверхности кожи и ожоги меньшей степени на более чем 16 % кожи[14]. Она оставалась в больнице в течение восьми дней, пока ей делали пересадку кожи. За этот период Либек похудела на 20 фунтов (9,1 кг) (что составляло почти 20 % её массы тела) до 83 фунта (38 кг). После выписки из больницы Либек нуждалась в уходе в течение трёх недель, который обеспечивала её дочь[15]. После ожогов Либек получила статус частичного инвалида сроком на два года
Я бы не стал на себя проливать. Тем более что она просила в компенсацию 20к долларов - это только лечение и потерянный доход. Овчинка явно того не стоит.
В том-то и ирония, что для рядового сотрудника весь этот улучшайзинг с помощью ИИ выглядит как-то так: работал 8 часов в день, и теперь работаю 8 часов, только с ИИ.
Или вообще: вот тебе ИИ, теперь ты должен делать больше и не волнует. Вот радость то.
Из хорошего, возможно, произойдут системные изменения, которые повлияют на всё общество в целом и жить станет лучше. А может нет.
Работодатель: вот вам ИИ — он будет делать за вас рутинную работу. Сотрудники: значит, мы будем меньше работать? Работодатель: нет. Это значит, что я буду больше требовать.
И это уже зависимость. Под зависимостью я понимаю, что сервис не может выполнять свою основную функцию без другого сервиса. Т.е. если вью лег, то наш сервис тоже лёг.
микросервису нужно дублировать пару терабайт данных
Я понял автора довольно радикально: если есть зависимость от другого сервиса, тащи данные к себе. Скажем вы авито, вам нужно что-то из заказа - тащи все заказы к себе.
На моей практике делают по всякому: где-то дублируют модель чтения (а потом бьются за качество данных), где-то ходят за данными в другие сервисы. Есть некоторое количество сервисов, которые если полягут, поляжет многое.
Я правильно понимаю, что если у нас нет RPC, а есть только обмен сообщениями, то каждый сервис должен иметь свою копию необходимых для ответа данных? Что-то нереальное.
Чёт страшно мне. На бэкендах привык разделять асинхронный и синхронный код, как код с IO и код без IO. Код без IO является ещё и чистыми функциями по возможности. Позволяет делить методы на части вида: грузим, что-то делаем, сохраняем.
Просто помню время, когда данные грузились в недрах каких-то функцих и этого нельзя понять, пока не просмотришь ВСЁ.
В .net мире новый asp.net проект есть в любой студии. Даже ef можно не ставить, если надо, говоришь, что тебя есть IQueryable<MyEntity> и вперёд.
Миграции писать не надо, модель данных - 1 класс и 2 енама.
Ожидаю любую архитектуру, можно даже в контроллере написать код, если кандидат обоснует, почему такой выбор.
Код можно не запускать. Во многих местах достаточно что-то типа: использую код фёрст подход, миграции сделает ef, эту модель проще всего замапить через автомаппер, здесь воткну медиатР, потому что...
Проверяется видел ли кандидаты бэкенды в глаза за свой пятилетний опыт, например.
Заметил, что от уровня кандидата меняются вопросы (задавать можно и нужно). Джуны тяготеют к "правильности кода", люди поопытнее выясняют требования и сообщают о допущения которые они делают. Тут инфы как-будто даже больше чем от интервью.
С тестовыми есть проблемка: иногда оно написано не кандидатом, он может хорошо рассказать где и что, но не может воспроизвести (было 1 раз).
С разговором по душам та же проблема: поговорили, вроде всё хорошо, а потом IDE как-будто в первый раз видит. Ну типа, public class по букве пишет, вспоминает название Linq-методов (из тройки Select, Where, GroupBy).
В идеале поработать с человеком недельку, но где такие ресурсы взять?
Лайф-кодинг на бэкендера: реализовать ендпоинт в любом удобном ему инструменте. Код не должен компилироваться, но ожидается объяснение основных шагов, описание DTO, метода контроллера и реализация запроса к бд уровня: вернуть количество строк в таком-то статусе с группировкой по типу (linq или sql на выбор). Гуглить, использовать ИИ можно.
Кажется 1 и второй 2 пункт закрыт.
Просто я не знаю как понять, что может кандидат, если не посмотреть на его код и на то, какие вопросы он задаёт.
Спасибо!
Спасибо за пример, стало понятнее.
Что представляю я, когда говорят о языке более высокого уровня: я пишу промты, программа полностью создаётся из них.
Вижу что здесь не так: у нас есть артефакт в виде кода над которым итеративно работает программист. Получается генератор кода на стероидах. Если ничего не делать, то в конце концов у нас останется только код в репе. По аналогии, это как получать минифицированный js файл, вместо исходников.
Мой опыт генерации показывает, что если сразу всё описать, то шанс получить согласованное решение выше, чем в диалоге. Бывает, что переделывает только ту часть, на которую указал, а все остальные места (из этого же чата генерации) не приходят в согласованное состояние.
Делал почти так же как у тебя. tenant_id хранился в таблице, а все запросы шли через вьюхи с таким же фильтром
tenant_id = current_setting('app.current_tenant')::uuid.Все индексы были вида (tenant_id, id), а внешние ключи обязательно содержали tenant_id.В принципе могут
Я разрабатывают бэкенды и вообще не представляю как может выглядеть:
Можешь показать как выглядит новая парадигма?
Если это небольшой законченный проект - то норм, обвязку сгенерит. Если что-то большое, то нужен глаз да глаз. Но программировать всё равно нужно уметь.
Вот эта часть мне не нравится. Сам программирую с курсором, но конечный этап работы - это код, за который я несу ответственность. Код "человекосовместимый".
Есть примеры реп, где код вообще не пишется руками, а целиком генерится по промтам? Для меня утверждение, что "просто язык программирования верхнего уровня" звучит так, что у нас просто есть код, над которым мы ведем итеративную работу, а весь софт создаётся автоматом из репы где нет классического кода.
А есть гарантия, что процесс сходящийся?
Просто у меня есть опыт хождения нейронкой по кругу
Меня смущает недетерминированность такого языка программирования. Если обычный компилятор работает не правильно, то это баг и его можно исправить. Если ИИ гонит, то выкручивайся сам, некуда репортить о глюках.
Я бы не стал на себя проливать. Тем более что она просила в компенсацию 20к долларов - это только лечение и потерянный доход. Овчинка явно того не стоит.
Передаю привет из 2026
Ничего, но никто так не делает, т.к. новые люди стоят дорого.
А вот ИИ дёшев и будут приобретать. А что из этого получается, мы узнаем прямо сейчас.
Не просто 100к в месяц, а ещё целая свободная жизнь, чтобы заниматься чем душе угодно. В этом принципиальная разница с просто зарплатой в 100к.
А если использовать правило 4% процентов, то вообще 300к в месяц
В том-то и ирония, что для рядового сотрудника весь этот улучшайзинг с помощью ИИ выглядит как-то так: работал 8 часов в день, и теперь работаю 8 часов, только с ИИ.
Или вообще: вот тебе ИИ, теперь ты должен делать больше и не волнует. Вот радость то.
Из хорошего, возможно, произойдут системные изменения, которые повлияют на всё общество в целом и жить станет лучше. А может нет.
Работодатель: вот вам ИИ — он будет делать за вас рутинную работу.
Сотрудники: значит, мы будем меньше работать?
Работодатель: нет. Это значит, что я буду больше требовать.
И это уже зависимость. Под зависимостью я понимаю, что сервис не может выполнять свою основную функцию без другого сервиса.
Т.е. если вью лег, то наш сервис тоже лёг.
Я понял автора довольно радикально: если есть зависимость от другого сервиса, тащи данные к себе. Скажем вы авито, вам нужно что-то из заказа - тащи все заказы к себе.
На моей практике делают по всякому: где-то дублируют модель чтения (а потом бьются за качество данных), где-то ходят за данными в другие сервисы. Есть некоторое количество сервисов, которые если полягут, поляжет многое.
Я таки считаю, что нет запрета ходить в другие сервисы, убер так делает, значит и нам можно :)
https://habr.com/ru/companies/flant/articles/514830/
Дорого! Очень дорого!
Я правильно понимаю, что если у нас нет RPC, а есть только обмен сообщениями, то каждый сервис должен иметь свою копию необходимых для ответа данных? Что-то нереальное.
Чёт страшно мне. На бэкендах привык разделять асинхронный и синхронный код, как код с IO и код без IO. Код без IO является ещё и чистыми функциями по возможности. Позволяет делить методы на части вида: грузим, что-то делаем, сохраняем.
Просто помню время, когда данные грузились в недрах каких-то функцих и этого нельзя понять, пока не просмотришь ВСЁ.
В .net мире новый asp.net проект есть в любой студии. Даже ef можно не ставить, если надо, говоришь, что тебя есть IQueryable<MyEntity> и вперёд.
Миграции писать не надо, модель данных - 1 класс и 2 енама.
Ожидаю любую архитектуру, можно даже в контроллере написать код, если кандидат обоснует, почему такой выбор.
Код можно не запускать. Во многих местах достаточно что-то типа: использую код фёрст подход, миграции сделает ef, эту модель проще всего замапить через автомаппер, здесь воткну медиатР, потому что...
Проверяется видел ли кандидаты бэкенды в глаза за свой пятилетний опыт, например.
Заметил, что от уровня кандидата меняются вопросы (задавать можно и нужно). Джуны тяготеют к "правильности кода", люди поопытнее выясняют требования и сообщают о допущения которые они делают. Тут инфы как-будто даже больше чем от интервью.
С тестовыми есть проблемка: иногда оно написано не кандидатом, он может хорошо рассказать где и что, но не может воспроизвести (было 1 раз).
С разговором по душам та же проблема: поговорили, вроде всё хорошо, а потом IDE как-будто в первый раз видит. Ну типа, public class по букве пишет, вспоминает название Linq-методов (из тройки Select, Where, GroupBy).
В идеале поработать с человеком недельку, но где такие ресурсы взять?
Лайф-кодинг на бэкендера: реализовать ендпоинт в любом удобном ему инструменте. Код не должен компилироваться, но ожидается объяснение основных шагов, описание DTO, метода контроллера и реализация запроса к бд уровня: вернуть количество строк в таком-то статусе с группировкой по типу (linq или sql на выбор). Гуглить, использовать ИИ можно.
Кажется 1 и второй 2 пункт закрыт.
Просто я не знаю как понять, что может кандидат, если не посмотреть на его код и на то, какие вопросы он задаёт.
Я может есть какие-нибудь методы снизить стресс?