LINUX.ORG.RU

Вот пример (в комментарии входное описание):

import datetime

def parse_expenses(expenses_string):
    """Parse the list of expenses and return the list of triples (date, value, currency).
    Ignore lines starting with #.
    Parse the date using datetime.
    Example expenses_string:
        2016-01-02 -34.01 USD
        2016-01-03 2.59 DKK
        2016-01-03 -2.72 EUR
    """
    expenses = []
    for line in expenses_string.splitlines():
        if line.startswith("#"):
            continue
        date, value, currency = line.split(" ")
        expenses.append((datetime.datetime.strptime(date, "%Y-%m-%d"),
                         float(value),
                         currency))
    return expenses
seiken ★★★★★
()

Мое мнение такое: это удобно только для игрушечных проектов. Потому что:

  1. как только потребуется наворачивать больше логики, описание на естественном языке будет разбухать, в нем появятся идентификаторы, потребуется более формальное отличие конкретных алгоритмов и проч. формализации, которые постепенно будут превращать естественный язык во все более формальный и искусственный;

  2. неоднозначности. Например, если пишется программа для сортировочного робота, который сортирует детали, и я пишу «отсортируй множество деталей стабильно». Это «стабильно» относится к сортировке массива в памяти или механически-контролируемому процессу сортровки физических деталей, который может быть при определенных параметрах нестабилен в смысле автоматического управления? А если начать конкретизировать, уточнять и формализовать, то см п.1);

  3. Чтобы этот генератор не был односторонний, он должен понимать правки кода и изменять соотв. исходное описание, а эта фича вовсе не следует из умения генерить код в прямом направлении;

  4. ну и мелочь, но она одна может быть убийственна для полезности инструмента. Именования идентификаторов. Если нужно весь целевой код потом рефакторить вручную, то…

seiken ★★★★★
()
Ответ на: комментарий от seiken

Это удобно и для настоящих проектов, но в качестве какого-то прокачаного code completion.

Автоподсказка в IDE тоже помогает, придумывает названи переменных, но решение принимает человек. Точно так же и тут. Не страшно если оно предложит что-то тупое в какой-то конкретный момент, просто отказываешься и пишешь как надо. Зато когда-то поможет не печатать руками стандарнтую лапшу.

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

Особенно полезно когда кодишь Goвно, то какая-то сортировка или Max фукнция уже явно где-то есть для этого типа, может в соседней команде, можно было бы вынести в либу

vertexua ★★★★★
()
Последнее исправление: vertexua (всего исправлений: 3)

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

Irben ★★★
()
Ответ на: комментарий от Irben

Представители Github утверждают, что пользователю инструмента.

Legioner ★★★★★
() автор топика
Ответ на: комментарий от bubvalet

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

Legioner ★★★★★
() автор топика

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

По заявлению гендиректора GitHub Ната Фридмана, данная система является именно помощником для написания лучшего кода.

Что-то сомневаюсь насчёт лучшего, если ИИ обучили на тоннах говнокода с гитхаба.

cocucka ★★★★☆
()
Ответ на: комментарий от Legioner

квадрокоптеры с энергоэффективностью проблемы имеют

Harald ★★★★★
()
Ответ на: комментарий от Legioner

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

bubvalet
()

Наверное на неподготовленную публику произвести какое-то впечатление и сможет, не более.

BceM_IIpuBeT ★★☆☆☆
()

Отлично, пусть #12309 наконец починит

cobold ★★★★★
()
Ответ на: комментарий от cocucka

Что-то сомневаюсь насчёт лучшего, если ИИ обучили на тоннах говнокода с гитхаба.

существенное замечание! пока она не начнет самообучаться и прогрессировать в геометрической прогрессии...

crypt ★★★★★
()
Ответ на: комментарий от Legioner

Ну будет один синьор-помидор сидеть и комменты писать, а десять макак выкинут на мороз

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

seiken ★★★★★
()
Ответ на: комментарий от seiken

В итоге манагер посмотрит на этот цирк, и административным решением вернет всё взад.

Не факт, что сможет. Принять на работу макак легко. А уволить уже сложнее.

wandrien ★★
()

Вот когда он его начнет дебажить, тогда и поговорим :)

sergej ★★★★★
()

_Программисты_ нужны.

Не нужны кодерочки.

Bioreactor ★★★★★
()
Ответ на: комментарий от wandrien

Да, не факт, что сможет. Оставит для других пректов, если выживет. Но это другая проблема.

seiken ★★★★★
()
Ответ на: комментарий от BceM_IIpuBeT

В основном по тк, только если не вагон денег предлагают

bubvalet
()
Ответ на: комментарий от crypt

Да, в intellij idea так код и пишется, она неплохо всякие косяки подсвечивает, + каркас приложения тоже может создавать

bubvalet
()

«Вебмакакинг выходит на новый уровень.» (с)Анон с Опеннета.

BceM_IIpuBeT ★★☆☆☆
()
Ответ на: комментарий от crypt

да, тут именно, что она предлагает твой говнокод исправить, а не просто ошибки синтаксиса

bubvalet
()

сам пишет код

Мелкософт уже объявил, что думает о монетизации. Возможно таки программисты окажутся дешевле в итоге.

no-such-file ★★★★★
()

какой хитрый ход..
т.е. авторские права на такой код будут принадлежать МС? =)

Minona ★★☆
()

По-моему, это не про программирование, а про NLP.

Shadow ★★★★★
()
Ответ на: комментарий от bubvalet

Ну лучше конечно по пять лет ждать готового продукта

Есть подозрение, что дело тут вообще не в кодинге.

Shadow ★★★★★
()
Ответ на: комментарий от no-such-file

Это как с автоматизацией производств, где все еще биороботы дешевле :)

slackwarrior ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.