Как стать автором
Обновить
2
0

Пользователь

Отправить сообщение

Оффтоп, но всегда было интересно, как большие ребята замеряют время недоступности системы, основанной на запросах-ответах. Допустим, в промежуток с 21:42 до 21:47 система на 95% запросов отвечала кодом 200, а на 5% кодом 500. Сколько минут система была недоступна?

Это статья-шутка? В начале сказано, что вот вам целых 17 способов использовать ChatGPT в программировании. Давайте рассмотрим их поближе!

Генерация кода.

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

Автоматическая генерация тестов и тестовых данных.

Пример бы. Как без понимания предметной области написать осмысленный тест? Да и вообще: вот есть у меня реальный проект с тестами. Так там куча всяких хелперов, упрощающих написание/запуск тестов. Как "обучить" бота их использовать?

Поиск ошибок и проблем.

Ну, с натяжкой могу согласиться. Возможно, он покажет вам квадратичную сложность или что-то такое. Или что имеется в виду?

Объяснение непонятного кода.

Тоже с большой натяжкой можно согласиться. Пример бы: и кода, и объяснения.

Оптимизация кода, рефакторинг.

Это вряд ли. Обычно рефакторинг затрагивает сразу несколько классов, и основывается на вполне конкретных вводных (зачем вообще делать рефакторинг - должна быть причина). И всё это объяснить боту, скорее всего, невозможно.

Если имелся в виду рефакторинг вида "переименовать переменную x в value", тогда ладно.. Но это же проще делается в IDE.

Проверка кода на соответствие стандартам.

Всякие разные линтеры и скрипты вроде phpcs справятся с этим лучше и обычно встроены в процесс разработки/деплоя.

Поиск уязвимостей в любых системах, включая конкретные репозитории. С помощью ChatGPT хакеры создают вирусы и скрипты для взлома.

А я думал, что вирусы и скрипты создаются под конкретные уязвимости, т.е. это вполне осмысленная разработка. Поиск известных уязвимостей вроде бы тоже решенная задача (без ИИ). Поиск неизвестных уязвимостей - если бот с этим справляется, то мое почтение. Можно пример? Потому что скорее всего не справляется.

Чат-боты службы техподдержки.

Да, но как это относится к работе программиста?

Интеграция своих программ с ChatGPT API.

Ощущение, что статья просто ради рекламы ChatGPT. Сперва же говорили про помощь программисту, а теперь переключились на то, что можно просто фичу в свой софт вставить? Ну про API Google Sheets тогда давайте тоже пункт напишем: можно свою программу интегрировать с Гуглом!

Проектирование архитектуры.

По ссылки нет проектирования архитектуры. Если вам лень ходить, то автор статьи просит бота создать модель данных, затем SQL код для генерации соответствующих таблиц. Да, бот выдаст вам код. Но только автору, как будто, пофиг что он там насоздает. Автор не уточняет, какие ему нужны поля, не просит бота скорректировать вывод. Просто берет то, что ему предоставили, никак не примеряя к своей реальной задаче (если она вообще была) и говорит "ура, какой бот молодец".

Затем просит сгенерировать пару диаграм и классов по полученным таблицам. Если я не ошибаюсь, то генераторы всего этого добра тоже написаны в большом количестве. Но даже не это меня поражает, а то, что работа разработчика ложно подменена: я то думал, что разработчик прежде всего думает, а какие сущности и таблицы ему вообще нужны, с какими полями. И только потом выполняет рутинную задачу по генерации SQL и подобного. Но нет. Автор просто говорит "сгенерь мне модель данных" и не парится о деталях.

Генерация диаграмм, аналитика.

Пример бы. Диаграммы, вроде, строятся на основе данных. Как правило, каких-то табличных (или структурированных другим способом). Разве построить диаграмму в любом табличном редакторе будет не быстрее?

Какая аналитика имеется в виду тоже совершенно непонятно. И как оба пункта относятся к программированию.

Генерация отчётов.

Опять, это программирование? Какие отчеты? Специальный софт не лучше ли справится?

Написание документации.

Какой документации? Если речь про описание методов API, то есть куча генераторов для этого. Если речь про пользовательскую документацию, то извините, а как это работает? Откуда бот узнает, как пользоваться софтом, который я разрабатываю?

Разработка парсеров, анализ и преобразование данных в любых форматах.

С натяжкой могу согласиться. Видел где-то статью про парсер. Но, опять же, существуют универсальные парсеры, в которых просто мышью накликивается, что и откуда надо парсить. Зачем тут разрабатывать? Если случай сложный, то и бот не справится, мне думается.

Анализ и преобразование данных: опять непонятно, что имеется в виду. Но мне представляется, что эксель справится лучше.

Работа с базами данных и SQL запросами.

Какая работа?

Поиск информации и кода, помощь в обучении, ответы на вопросы.

Тут скорее соглашусь, но уже которую неделю не могу понять, чем это принципиально отличается от вбивания вопросов в Гугл. Опять же, как это относится именно к программированию? Задача поиска информации слишком общая.

Поиск новых идей.

В чем, в программировании?

Справедливости ради, часто при таких замерах забывают про production-рекомендации для Laravel. И измеряют в debug-режиме, грубо говоря.

Я как раз не так давно сравнивал производительность одного и того же микросайта на своем ноуте. В debug-режиме (без opcache) было 14 rps на ядро, с opcahe 250 rps, а в production (с opcache) уже 407.

Это, правда, не сравнится с вашими 2500 на микрофреймворке. Даже интересно, там тоже бэк в БД ходил?

Подскажите, как именно вы поняли, что работа со Stylus отнимает так много времени сборщика?

Хороший результат. У нас в проекте не так всё печально: на современном ноутбуке сборка занимает 40 секунд, а вот на CI несколько минут. Если бы получилось хотя бы в 5 раз ускориться, было бы круто. Но тоже большие конфиги webpack. Нахрапом не взять, думаю. Больше всего пугает неизвестное время на исследование.

Да и в плюс 40 на велосипеде тоже не весело :)

С удовольствием прочитал и погрузился в воспоминания. У меня такой есть, пользовался с удовольствием. Это единственный телефон из кнопочных, который я действительно любил и кайфовал от него. Даже более поздняя Nokia E72 с полноценной клавиатурой уже не дала столько эмоций.

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

Спасибо за статью :)

  1. Работает ли прием зарубежных платежей?

  2. Какой размер комиссии для мерчанта?

P.S. Сайт, в котором на весь первый экран ровно одна фраза и ноль полезной информации, так себе.

Меня больше интересует, а работа по API со Сбером тоже сломается, если не установить на сервер их сертификат? У домена securepayments.sberbank.ru сертификат от GlobalSign, но валиден до февраля 2023. Т.е. не тот же серт, что у главной страницы Сбера.

P.S. Саппорт третий день молчит.

Присоединяюсь к вопросу. Причем, без сарказма, хотел бы узнать подробный разбор. И это касается не только ВТБ. Сбер, Тинькофф, Альфа - у всех 250+ мб.

Я просто от мобильной разработки далёк. Занимаюсь вебом, у нас веб-приложение занимает пару мегабайт (и то мне кажется, что это много). Но это plaintext. Я всегда думал, что нативные приложения за счет компиляции будут выигрывать.

Конечно, я не учитываю медиа-ресурсы, но неужели их там ТАК много?

Правильно понимаю, что бутылочным горлышком является пропускная способность сервера, а не CPU, RAM, IOPS? И учитывая битрейт в 256 кбит, на одном сервере у вас может транслироваться одновременно 800 потоков? (на самом деле наверное чуть меньше из-за оверхеда, но порядок должен быть примерно такой)
Есть ощущение, что класс CloudManager нарушает принцип SRP — это видно даже по нарисованной схеме, как будто бы нужно разделить на три разных класса.

В остальном хорошее описание архитектуры, спасибо. Также есть вопрос про слои: в голове разработчика они, допустим, есть, но в чем фактически выражается разделение на слои? Как, взглянув на проект, понять сколько тут слоев, и какой класс к какому слою относится? И где границы слоя.
Добавлю, с точки зрения маленькой продуктовой компании, почему и зачем мы даём тестовое задание, и как повысить ваши шансы на устройство. Дисклеймер: последние несколько месяцев мы очень неспешно расширяемся, и собеседуем кандидатов удалённо. И, конечно, это всё личное мнение, не более.

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

Вторая причина — посмотреть, как вообще человек идёт на контакт, как он всё оформит, зафигачит ли он весь код в одном спагетти-стайл файле или все-таки сделает хотя бы зачатки архитектуры. Формальная корректность решения тут на последнем месте, потому что это — неважно. Ошибку в коде поправить легко, а вот научить «делать хорошо» уже гораздо сложнее.

Как повысить ваши шансы на трудоустройство: напишите readme к тестовому заданию. Среднее тестовое с нормальным readme ценнее идеального кода без единого комментария. Потому что становится понятно, как вы думали, какие допущения сделали, почему выбрали A вместо B, какие варианты вообще рассматривали, как вы бы сделали в идеале, если бы это был реальный проект и т.д.

Я понимаю, что на тестовые задания не всем хочется тратить время — и уважаю это. Но если уж вы взялись его сделать, лучше потратить ещё 10 минут на нормальное оформление.

То же самое касается вашего кода на Гитхабе — я вижу ваш профиль, ваши репозитории, ваш код, но не вижу какую задачу вы решали. Как я могу оценить вашу крутизну? У меня нет отправной точки. Серьёзно. Добавляйте readme, вы сразу вырастете в глазах нанимателя.
А как у вас происходил именно переход? Вы часть серверов «отключали», обновляли и снова запускали в строй?

Как обновление происходит у маленьких компаний, кто не располагает кластером серверов, а, допустим, лишь одним php-сервером? Процесс, должно быть, быстрый. Если кто обновлялся «на живую», расскажите.
Просто ради любопытства — о каком размере БД идет речь? И версии СУБД?
Верно, я не прошу решать «задачки», но если честно, наше тестовое тоже не особо интересное. Приходится идти на эту «жертву», потому что я понимаю — никто не будет тратить пару дней на выполнение «интересного» задания. То, что даем мы — просто точка, от которой можно оттолкнуться.
Я недавно был на стороне интервьювера, только по удаленке. Несколько человек тоже присылали ссылку на Гитхаб, пара человек даже в категоричной форме «если не устраивает, адьос».

Я ваш Гитхаб не видел, конечно, но вот у тех, кто присылал — просто код без комментариев, без README — непонятно, какую задачу решали. Я же хочу решение задачи увидеть — как человек мыслит, как знает свой инструмент, что у него с архитектурой.

А по такому коду могу разве что Code Style посмотреть. И что толку от этого?
Здесь есть архитекторы ПО (с любой зп)? Расскажите, как проходит ваш типичный день / месяц / спринт. Типичные задачи. Чем вы занимаетесь?
Демо srcset srcset.salcode.com — на десктопе, при изменении размера окна, загружает новое изображение.
Крутой доклад. А кто-нибудь уже реализовал ffmpeg в браузере? Интересно было бы взглянуть и погонять, сравнить производительность на конкретных сценариях с консольным ffmpeg.

Информация

В рейтинге
3 826-й
Зарегистрирован
Активность