В JetBrains реализовали автодополнение кода на основе машинного обучения

10.03.2020      23418

Интегрированная среда разработки ПО IntelliJ компании JetBrains внедряет машинное обучение для автоматического завершения кода. Дорожная карта JetBrains IDE IntelliJ 2020 ускоряет машинное обучение, а также включает совместное редактирование и упрощенную обработку текстов.

Дорожная карта

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

Компания давно исследует использование машинного обучения. Ее продукты уже извлекают выгоду из некоторых результатов этого исследования. Текущие версии IntelliJ IDEA используют машинное обучение для ранжирования вариантов завершения. Языковые плагины помечают произведенные варианты атрибутами, а машинное обучение определяет какие атрибуты должны способствовать ранжированию, чтобы самые релевантные элементы отображались вверху списка.

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

Глубокое понимание кода

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

Умное завершение дает список самых значимых символов, применяемых в текущем контексте. Это и другие дополнения все время учатся у пользователя, перемещая элементы часто используемых классов и пакетов в начало списка предложений.

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

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

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

Языковая инъекция предоставляет помощь в кодировании для выбранного языка в выражениях и строковых литералах в другом языке. Например, можно вставить фрагменты кода SQL, XPath, HTML, CSS или JavaScript в литералы Java String.

Кросс-языковые рефакторинги позволяют при переименовании класса обновлять все, от класса сущности, до каждого выражения, в котором он используется.

Обнаружение дубликатов находит дубликаты фрагментов кода на лету.

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

Другие особенности

Кроме автозавершения кода, JetBrains объявил о других улучшениях для IntellIj в 2020 году:

  • Поддержка совместного редактирования. Пользователи смогут подключать свои IDE к основной системе в качестве «тонких клиентов» без необходимости прямого доступа к исходному коду. У каждого пользователя будет свое состояние с набором открытых файлов, позицией вставки, списком вариантов завершения и другими возможностями.
  • Широкое использование IDE в качестве легкого текстового редактора. Специальный режим для редактирования файлов, не связанных с проектом, также находится в стадии разработки.
  • Два режима интеграции с Git. Разработчики смогут переключаться с нового пользовательского интерфейса, который будет поддерживать «область размещения», на текущий интерфейс на основе списков изменений. Сочетание обоих режимов одновременно не представляется возможным.
  • Более простая настройка среды и интеграции. Система установит Git, Java SDK и т. д.
  • Дальнейшая интеграция в облако.
  • Модель проекта переработана с целью устранения текущих ограничений, таких как отсутствие поддержки произвольного смешения проектов разных типов. Среди преимуществ JetBrain выделяет, в частности, более быстрое открытие проектов и более плавную синхронизацию с Maven и Gradle.
  • Улучшена производительность индексирования. Пользователи также будут уведомлены в случае индексации аномалий.
  • Пересмотр модели потоков блокировки чтения/записи для решения проблемы зависаний пользовательского интерфейса.
  • Во время автоопределения больше не обнаруживаются изменения кода. Например, можно будет обнаружить изменения в объявлении метода, и соответствующим образом настроить использование.
  • Поддержка загрузки и выгрузки большинства плагинов без перезапуска. Цель состоит в том, чтобы иметь IDE, которая рассчитана для каждого проекта. Например, проекты Spring будут загружаться только с плагинами, использующими Spring.
  • Добавление возможностей Code Vision для отображения богатой контекстной информации в редакторе кода. Эта возможность уже интегрирована в IDE JetBrain для .NET.
  • Локализация IDE на основе IntelliJ на азиатских рынках с первоначальной поддержкой упрощенного китайского языка. Поддержка корейского и японского языков будет следовать.

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


Автор:
Обозреватель


Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. gudun_ku 62 10.03.20 18:01 Сейчас в теме
Ну а в EDT так и невозможно комплексную автоматизацию редактировать...
lav2985; vladdv; Dmitri93; PLAstic; mihaway; portwein; maksa2005; Itilive.ru; manlak; sansys; CyberCerber; +11 Ответить
3. Brawler 454 10.03.20 18:55 Сейчас в теме
(1) А ERP можно? )))
2. igo1 266 10.03.20 18:38 Сейчас в теме
Это нам зачем? не сыпьте соль на рану...
VVi3ard; dock; portwein; maksa2005; CyberCerber; Itilive.ru; manlak; +7 Ответить
4. Brawler 454 10.03.20 18:56 Сейчас в теме
(2) Боитесь машины заменят программистов?)))
7. MikhailDr 11.03.20 08:09 Сейчас в теме
(4) Машина никогда не сможет понять 1С. Там ведь нужна логика.
8. Brawler 454 11.03.20 09:01 Сейчас в теме
(7) Завтра машины уже будут писать сами себя на ими же придуманном языке программирования))
13. iozik 11.03.20 10:36 Сейчас в теме
(7) в хотелках бухгалтерии никакой логики нет )
15. Лис Р 5 11.03.20 11:07 Сейчас в теме
(13) Зря вы так, главная хотелка бухгалтерии - успешно отчитаться в надзорные органы. Другое дело, что в предлагаемых ими способах решения логика и здравый смысл прихрамывают, но со стороны "бухгалтерской логики" - все ок
17. Darklight 32 11.03.20 11:12 Сейчас в теме
(15)Бухгалтера - вообще лишняя трудовая прослойка - лет через 50 в большинстве своём - отомрут нафиг - эта профессия уже обречена! Максимум кто ещё будут востребованы - аналитики-аудиторы-методологи ну может главбухи - их будут подготавливать и взращивать очень долго и сложно - и стоить будут они не дёшево - но и потребности в них особо большой не будет - в основном будут AI системы натаскивать, да новые модели учета разрабатывать - для единой базы знаний! Ну и заказные проверки устраивать - где работу AI нужно будет сверить. Или кто-то закажет себе индивидуальную ОСОБУЮ оптимизацию учётного процесса.
SKravchenko; +1 Ответить
9. 3vs 11.03.20 09:08 Сейчас в теме
(4)Нет, программист будет писать первую строчку кода, остальное будет додумывать ИИ! :-)
11. igo1 266 11.03.20 09:49 Сейчас в теме
(4)Нет, просто сравниваю с новейшей системой от 1С на EDT.
vladdv; dock; +2 Ответить
5. comol 5051 10.03.20 23:29 Сейчас в теме
В 1C Must Have. Кто подпишется под OpenSource проект - наверное плагин к Turboconf и/или EDT
6. Лис Р 5 11.03.20 08:08 Сейчас в теме
Отправьте ссылку разработчикам EDT и их руководство в копию
10. Darklight 32 11.03.20 09:39 Сейчас в теме
Правильной дорогой идут товарищи из JetBrains. За такими умными IDE будущее - просто сейчас это ещё детский лепет, а лет через 20-30 встроенные в IDE смарт-ассистенты будут очень активно динамически и статически помогать по писать новый, анализировать и рефакторить код. В том числе, будут применять глобальные базы знаний в т.ч. с готовыми шаблонами алгоритмов. Деятельность программиста будет сводится лишь к понятному указанию смарт-ассистету того, что он хочет сделать в данный момент (поначалу это будут мелккие фрагменты алгоритмов, но сов временем они начнут укрупняться), далее к выбору предложенных смарт-ассистентом вариантов решений (уже адаптированных их обобщённых шаблонов к текущему контексту), и далее программисту потребуется лишь навести небольшой лоск в готовом коде. Ну и можно ставить новую задачу смарт-ассистенту.

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

Именно такие технологии сейчас привлекают молодёжь - на термин "машинное обучение" она слетается как мухи на... МЁД! Потому что чувствует - именно за этим будущее - и осваивать его нужно уже сейчас! Становится спецами, и потом на волне тренда - рубить бабло (в крепкой валюте)!

Компании 1С такое видимо даже не снится. И ожидать даже примитивного машинного обучения в обозримом (на десятилетия) будущем тут не стоит (самим такое разработать - задача очень трудоёмкая, разве что - заключить партнёрское соглашение с тем, кто уже собаку на этом съел - хотя бы с той же - JetBrains).
Kolobash95; WizaXxX; vladdv; +3 Ответить
12. Лис Р 5 11.03.20 10:06 Сейчас в теме
(10) Несмотря на все опросы сообщества, компании 1С это все нафиг не нужно
lav2985; PLAstic; +2 Ответить
14. Darklight 32 11.03.20 11:06 Сейчас в теме
(12)Поэтому написал - что им (компании 1С) и не снится это даже! Всё надеяться - что кто-нибудь прикрути их болото к крутому редактору (хоть к JetBrains) в виде плагинов и напишет свой компилятор для расширенного синтаксиса языка 1С (или иного) в опкоды стековой машины 1С (или конвертер из LLVM в стековую машину 1С), и ещё напишет вообще свой альтенативный фреймворк - куда можно будет подключить конфигурации 1С - и там их исполнять без лицензии на платформу 1С, и вообще - напишет свои конфигурации для этой платформы без всякого участия 1С.

ФАНТАСТИКА - конечно ДА - но иногда так сладко об этом пофантазировать!

В РЕАЛЬНОСТИ же - просто программисты окончательно сбегут из 1С туда - где платят больше (и в твёрдой валюте) - а программировать будет куда кайфовее и перспективнее! И входить в профессию будет куда проще и быстрее, и дешевле!
user1311038; Лис Р; +2 Ответить
16. Лис Р 5 11.03.20 11:11 Сейчас в теме
(14) Согласен, просто этим "андроидам" сняться другие "электроовцы".

Почитал тут, что для публикации своей "нетленки" через 1С фреш, нужно у 1С купить соответствующую библиотеку... за 72000р - монетизация просто огненная.
18. Darklight 32 11.03.20 11:13 Сейчас в теме
(16)Да на кой он сдался Вам этот Фреш.... пусть сами варятся в этом болоте
user1311038; +1 Ответить
19. Лис Р 5 11.03.20 11:17 Сейчас в теме
(18) За такую цену - однозначно нафиг
20. YanTsys 12 11.03.20 11:17 Сейчас в теме
(10) Вы сами сможете увидев первую половину программы не зная ничего о поставленной задаче написать вторую половину программы?
21. Darklight 32 11.03.20 11:18 Сейчас в теме
(20)я такого и не предлагал даже
26. YanTsys 12 11.03.20 16:45 Сейчас в теме
(21)
Darklight: я такого и не предлагал даже


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


Если человек не может дописать код не зная условий задачи то и никакой смарт-ассистент не сможет предложить готовый код зная только его начало.
Это как в шахматах предлагать варианты решения зная только куда ходили белые фигуры не имея никакой информации о том куда ходили черные...
29. Darklight 32 11.03.20 17:16 Сейчас в теме
(26)В том то и дело - что компьютерный смарт-ассистент не будет дописывать вторую часть программы - я этого не предлагал. Он будет дописывать либо небольшие фрагменты, динамически и параметрически меняя их под дальнейшими действиями программиста. Либо будет производить общую кодогенерцию по реперным точкам от программиста. И всё на основе собранной статистики и единой базы знаний готовых наработок + адаптации оных под текущий (уже сформированный) контекст. То есть - это лишь доведение мыслей программиста (и текущей, уже созданной архитектуры конфигурации) до определённой точки - и то, не финальной - далее программисту придётся редактировать результат самому - но большого сокращения рутины и много ещё неизвестных (или ппозабытых) ему подходов и блоков (из единой базы знаний) программист сможет получить, хотя бы в полуготовом виде. Ну а далее - дело за переходов к более декларативному программированию - на уровне сверхвысокуровневых языков - когда программист лишь в формализованном виде указывает компьютерной системе что нужно сделать, а она уже сама решает как это сделать и какие алгоритмы задействовать (ну программист тут тоже может ей частично указывать) - но это уже более далёкий уровень развития смарт-ассистентов для программиста - ближе к концу века. Хотя представители таких сверхвысокоуровневых языков есть уже сейчас - тот же SQL - пусть и пока не шибко умный, но формально удовлетворяющий официальному определению сверхвысокуровневого языка.
ну ещё примеры того, что я имел в виду в моё посте (24)
33. YanTsys 12 11.03.20 18:48 Сейчас в теме
(29) Тут недавно была ветка где ее автор из 1с-ников пытался вытянуть кто как хранит готовые наработки и примеры кода, и оказалось что большинство хранит чуть ли не в блокноте :(
23. Vladimir Litvinenko 2869 11.03.20 13:24 Сейчас в теме
(10) Ещё у них руководство интересное. Остаются программистами. Понравилась ключевая идея - постоянное улучшение IDE как продукта для инженеров. И понимание как это делать:
https://www.youtube.com/watch?v=YJd0-NLb9DA
22. herfis 498 11.03.20 11:20 Сейчас в теме
По статье не очень понятно, в какое место прикрутят машинное обучение.
Судя по всему - в алгоритмы ранжирования предлагаемых вариантов автодополнения (обучаясь на выборе пользователя).
Как по мне, реальная польза от этого может быть только в довольно узких случаях. Так что это скорее дань моде и инфоповод.
У них там все довольно хорошо и без машинного обучения.
30. Darklight 32 11.03.20 17:27 Сейчас в теме
(22)Ответ в (24) почему-то не прицепился к данному посту
24. Darklight 32 11.03.20 14:50 Сейчас в теме
Ну конечно же - в первую очередь ради автодополнения. Вот, кстати, пример как может быть
1. Пишу "?Для " //? - поставил специально - как флаг для Смарт помошника - что мне нужна помощь
2. Мене сразу формируют вот такой текст "?Для ?Индекс Из " //? у Индекса говорит о том, что этоа конструкция ешё не утверждена
3. Пишу после Из КакаяТоКоллекция
3. Мне сразу формируют
"?Для ?Элемент Из КакаяТоКоллекция Цикл"
//курсор тут
КонецЦикла;"
4. Я пишу "?Элемент=Строка."
5. И мне сразу всё заменяется на
"?Для ?Строка Из КакаяТоКоллекция Цикл
?Строка.
КонецЦикла;"
6. А теперь представим, КакаяТоКоллекция - это коллекция элементов на форме и я уже имею разные наработки алгоритмов обработки данной коллекции - и IDE их знает - тогда она мне тут же в окошке предлагаети выбрать один из них. например такой:
7. "Если ГруппыДоступа(?ГруппаДоступа, Строка.Родитель) Тогда //Здесь ? - это параметр шаблона
Строка.Видимость = Ложь;
КонецЕсли;"
8. Я соглашаюсь и мне нужно только в отдельном поле выбрать значение для ГруппаДоступа - причём мне там их тоже в списке отфильтруют по частоте использования и доступных в текущем контенте (а если не будет нужно - предложат выдрать из другого шаблона их добавление) и я получу код:

"?Для ?Строка Из КакаяТоКоллекция Цикл
?Если ГруппыДоступа(?ГДОператорыСклада, ?Строка.Родитель) Тогда
?Строка.Видимость = Ложь;
КонецЕсли;
КонецЦикла;"

9. Нажимаю CTRL+ENTER - и код фиксируется (при желании его потом можно обратно конвертироватаь в шаблон):
Для Строка Из КакаяТоКоллекция Цикл
        Если ГруппыДоступа(ГДОператорыСклада, Строка.Родитель) Тогда
              Строка.Видимость = Ложь;
        КонецЕсли;
КонецЦикла;


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

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

Ещё одной моделью применения ML - может быть такой сценарий:
1. Смарт-ассистенту подаётся какой-то исходный контекст (архитектура данных, и уже написанный программный код); может быть несколько контекстов на входе
2. И подаются различены тэги, которые могут быть дополнительно параметрически привязаны к какими-то данным, или алгоритмам из исходных; главное чтобы по этим тэгам уже ранее была набрана статистика (т.е. они были связаны с готовыми алгоритмами).
3. А смарт ассистент это всё анализирует и выдаёт наборы готовых алгоритмов, которые были связаны с этими тэгами ранее, но уже в контексте новой структуры данных и алгоритмов - т.к. проводит их скрещивание
4. Программисту остаётся только настроить некоторые вариативные параметры, поправить ошибки, ну и скомпоновать воедино готовые блоки кода, и дописать ту логику, которую смарт-ассистент ещё не знает (иди поискать её более точными или более общими запросами).

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


Или ещё сценарий:
Программист может писать алгоритм очень обобщённо без деталей реализации - почти как бы на псевдокоде - а смарт-ассистент будет потом этот псевдокод-код использовать как схему декларирования намерений - и подбирать для него конечные реализации исходя из конкретного контекста применения, имеющихся библиотек и статистики алгоритмов. Далее производить кодогенераци. Программисту останется только внести исправления. И дописать куски, где смарт-ассистент не "дотюкал" - а он на основе этих исправлений наберёт новую статистику
Vladimir Litvinenko; +1 Ответить
25. Mortum 11.03.20 16:07 Сейчас в теме
Ну всё. Пошли все учить Java, ибо 1с безнадёжна.
27. ltfriend 954 11.03.20 16:53 Сейчас в теме
(25) у них IDE не только для Java.
31. Darklight 32 11.03.20 17:33 Сейчас в теме
(27)1С сейчас питает любовь к Java - того глядишь к середине века выйдет новая платформа 1С: Предприятие 9 - с Java в качестве базового ЯП - ну или хотя бы на Java-машине (при сохранении общего синтаксиса 1С но его большом сходстве с языком Java (ну походим на язык Kotlin), в его версии, актуальной к тому моменту, хотя бы в английской раскладке), и с возможностью подключать практически произвольные Java-библиотеки (причём не обязательно на Java языке). А IDE будет разработана самой JetBrains - они уже руку на создании IDE ух как набили - у них есть IDE даже для прикладного программирования! Не понятно, почему 1С связалась с Eclipse - лучше бы слили в JetBarains весь проект по созданию отдельной IDE для 1С - те бы 100% справились. Вот только сколько бы это стоило. Сейчас EDT можно считать условно бесплатным, на то и был расчёт, видимо (хотя со временем ситуация может измениться - когда EDT существенно обгонит конфигуратор почти во всём). А все IDE от JetBrains - это платные продукты, не дешёвые. Хотя - если бы на таком уровне была IDE для 1С - то может, действительно, её тогда можно было бы реально продавать по цене как пол платформы за лицензию (ну обычно компаниям не так много таких лицензий надо - разве что франчам - ну им хорошую скидку сделать можно). Но, всё-равно, это ещё вопрос - даже по 200$ (хотя цены на IDEA куда выше и платить нужно каждый год) если продавать и такую IDE дейсвтительно будут более менее активно покупать (ну хотя бы по 1000 лицензий в год после 5 лет раскрутки, в среднем по 100$ - с учетом всевозможных скидок, так чтобы 1С получила хотя бы 50$ c лицензии дохода) - окупится ли такое партнёрство даже лет за 10? Очень сомневаюсь. Но кадровый голод, вероятно, заметно бы поубавился (если будет и фриварная IDE)!
Эх.... раскатал губу....
38. Лис Р 5 12.03.20 09:32 Сейчас в теме
(31) Если мифическая платная IDE для 1С в разы увеличит скорость разработки, то не вижу ничего криминального в ее платности. Просто ее будут покупать франчи (в текущей конфигурации бизнеса 1С) или крупные организации со своим штатов программистов, где критична скорость и качество разработки, а для мелкого бизнеса, которому "только печатную форму поправить", хватит и бесплатного Конфигуратора. Зато наличие качественной IDE, глядишь, привлекло бы свежие кадры в 1С, но это не точно.

У той же IntelliJ IDEA есть бесплатная Community-версия, например.
39. Darklight 32 12.03.20 10:15 Сейчас в теме
(38)Вопрос не в том, чтобы она была платной - вопрос в том, чтобы её разработка смогла окупиться - а вот тут то и проблема
40. Лис Р 5 12.03.20 10:37 Сейчас в теме
(39) ну только если косвенно: качественная экосистема (назовем ее так) может поднять продажи "коробок"
41. Darklight 32 12.03.20 10:41 Сейчас в теме
(40)Коробки, вроде бы и так хорошо продаются. Если и подымет продажи - то вряд ли значительно (если говорить только о новой качественной IDE - а не о подъёме всей платформы на революционно новый уровень)
42. Лис Р 5 12.03.20 10:47 Сейчас в теме
(41) Ок, мне сложно рассуждать со стороны 1С,но если б у них все было норм, то они б не проводили опросов сообщества (если это, конечно, не троллинг). Могу только сказать, что с моей стороны (разработчика), чем больше я знакомлюсь с другими ЯП и экосистемами, тем меньше интереса вызывает 1С, как с точки зрения удобства разработки, так и с точки зрения карьерных перспектив
user1311038; +1 Ответить
28. maxpiter 147 11.03.20 16:59 Сейчас в теме
Написано в 1994 году Девид Файнток, Надежда Гардемарина:
...
— Объясните, — резко произнес я. — И хватит возмущаться!
Пилот Хейнц покраснел:
— Простите, сэр. В навигационной операционной системе «Навдос» данные хранятся в файлах, обычно в буквенном представлении, прямо как их записали. Компьютеры работают так быстро, а языковые интерпретаторы настолько совершенны, что в компрессии нет никакой нужды. Программистам намного легче проводить проверки, если им остается только выводить данные на экран и читать их.
— Ну и?..
— Все файлы кончаются меткой «конец файла». Кто-то сделал эти надписи поверх метки конца файла. Фиксированные параметры Дарлы хранятся как раз перед переменными. Из-за отсутствия метки она не могла отличить одни от других. И чокнулась! Ничего удивительного!
— Но кто это сделал? — спросил я. — И зачем?
Главный инженер сердито сказал:
— В перерывах между путешествиями автоматический журнал Дарлы пересылается системным программистам в Луна-Централь. Если возникают какие-то модификации, постоянные параметры могут измениться. Программисты заносят новые данные в журнал, а потом ретранслируют его назад. В тот день они, должно быть, повеселились. — Лицо главного инженера, пока он говорил, заливалось краской.
— Программисты Военно-Космического Флота? — не поверил я своим ушам.
— Да, они, — выплюнул он. —
...

Автоподстановка и ИИ это круто, но пользоваться этим будет не менее опасно.
32. Darklight 32 11.03.20 17:34 Сейчас в теме
(28)Пока речь только о подконтрольном самим программистом применении
34. maxpiter 147 11.03.20 20:15 Сейчас в теме
(32) с подконтрольной все и начинается :)
Не, я совсем не критикуют, наоборот, это круто. Без использования автоподстановки в IDE вообще страшно представить как раньше было, а OpenConf в 7.7 с подстановщиком позволило 1С существенно шагнуть в программистские массы.
Идею блочного (CASE) программирование впервые услышал в 1997 году и по-моему это то, к чему все придёт. Программисты, такие как 1Сники, сишники, жаберы и прочие, увы, вымрут, т.к. сама наша специальность по большому счету надумана отсутствием удобных и простых интерфейсов, а чем больше мы напишем универсальных блоков и автоматических алгоритмов, тем быстрее кончимся. Но ещё лет 20 есть :)
35. Darklight 32 11.03.20 21:38 Сейчас в теме
(34)
Но ещё лет 20 есть

Берите больше - думаю у современных программистов лет 50-80 ещё есть - далее просто революционно само программирование сильно изменится, но даже тогда будет потребность в относительно низкоуровневом программировании алгоритмов - и эта потребность скорее всего будет востребована ещё как минимум век, постепенно, очень медленно снижаясь.
Что касабельно декларативного программирования бизнес моделей - то тут всё только начинается и весь следующий век, скорее всего, тоже будет востребовано - хотя да - такое программирование каждые пол века будет видоизменяться очень существенно (с большим перекосом в сторону отдачи прямых и косвенных команд исполнительной системе - но - всё-таки это ещё будет программирование). В итоге - уже к концу следующего века (а начнётся всё ещё во второй половине этого века) AI системы научатся, как чётко разбирать ТЗ (сначала, затем и более неформальные описания постановки задач), так и оптимизировано их выполнять, опираясь на уже накопленную за десятилетия базу знаний алгоритмов; а так же, в конечном итоге, AI системы начнут проводить исследования и эксперименты на предмет создания новых алгоритмов.
И да, уже к концу этого века AI системы-таки научатся писать программы самостоятельно, а концу следующего века - они будут делать это эффективнее человека почти во всех областях. Но лет 200 профессия программиста - ещё просуществует (в том или ином виде) - а далее - AI, скорее всего, превзойдут людей практически во всём. И наступит либо идиллия. Либо деградация для человеческого рода. Ну, если люди (или, вдруг, машины, а может инопланетяне) не уничтожат род человеческий ещё раньше, или не отбросят его назад - в каменный век
36. maxpiter 147 12.03.20 00:26 Сейчас в теме
(35) 200 лет нашему обществу - это прям что-то невероятное. В таком состоянии как сейчас общество, а человек в нем, не могут полноценно развиваться и должны себя уничтожить, что бы возродиться. Плавных переходов никогда? не было.
Сейчас развитие в основном идёт для того, чтобы бабла заработать, а не технологию особо полезную для человечества реализовать. Куда не посмотри, жкх, медицина, образование ю, наши политики и "элита", очевидные вещи и проблемы, но мы усиленно изобретаем новые велосипеды.
Извиняюсь, это уже оффтоп.
JetBrains рулят!!!
37. Darklight 32 12.03.20 09:19 Сейчас в теме
(36)Ну, человечество ранее и не из такого мрака выбиралось - так что шанс всегда есть
Оставьте свое сообщение

См. также

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

Новость ИТ-Новость

Пятничное: в России вступил в силу стандарт подготовки по дисциплине «спортивное программирование». В стандарт вошли требования к физическим показателям спортсменов и скорости набора текста.

16.02.2024    642    VKuser24342747    2       

1

Росстандарт утвердил протокол LoRaWAN для интернета вещей

Новость ИТ-Новость

Федеральное агентство по техническому регулированию и метрологии (Росстандарт) утвердило национальный стандарт протокола LoRaWAN RU, таким образом он получил официальный статус. Технология используется для беспроводной передачи данных между устройствами интернета вещей.

19.01.2024    424    VKuser24342747    0       

2

Новый закон откладывает на год вступление в силу изменений в порядок регистрации на сайтах

Новость Законодательство ИТ-Новость

12 декабря вступил в силу Федеральный закон, меняющий срок, к которому все владельцы сайтов должны внести изменения в порядок авторизации пользователей на сайте. Закон вводит переходный период до 1 января 2025 года.

20.12.2023    606    VKuser24342747    2       

1

Вышло крупное обновление для Android Studio

Новость Мобильные приложения ИТ-Новость

Новая версия Android Studio под номером 2023.1 получила имя Hedgehog. Появились возможности контролировать производительность приложений и управлять подключенными устройствами.

07.12.2023    717    VKuser24342747    2       

3

GitHub опубликовал результаты ежегодного исследования проектов с открытым исходным кодом

Новость GitHub ИТ-Новость

GitHub собрал данные об Open Source проектах в рамках ежегодного исследования Octoverse. Компания изучила географию репозиториев, используемые языки программирования и нейросети, а также активность сообщества.

15.11.2023    486    VKuser24342747    1       

2

Некоммерческие проекты смогут получить бесплатный доступ к GigaChat API

Новость ИТ-компания ИТ-Новость

Компания «Сбер» заявила, что будет бесплатно предоставлять доступ к API нейросети для генерации текста GigaChat для некоммерческих проектов. Однако для них будет ограничено число доступных токенов.

01.11.2023    601    VKuser24342747    2       

3

Состоялся релиз свободной среды разработки Geany 2.0

Новость ИТ-Новость Программист

Вышла новая версия Geany 2.0. Обновление затронуло внешний вид программы, расширило поддержку файлов и сторонних проектов, добавило новые способы работы с кодом.

25.10.2023    691    VKuser24342747    0       

1

Минцифры подготовило критерии по выбору оператора реестра провайдеров хостинга

Новость Минцифры ИТ-Новость Роскомнадзор

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

25.10.2023    356    VKuser24342747    0       

1

Минцифры составило алгоритм действий для компаний, у которых не работает VPN

Новость Минцифры ИТ-Новость

Минцифры подготовило разъяснения для российских организаций, у которых возникли перебои в работе VPN-сервисов для клиентов и сотрудников из-за блокировки запрещенных ресурсов Роскомнадзором.

24.10.2023    611    VKuser24342747    0       

0

«Сбер» объявила о доступности SberLinux OS Server для российских компаний

Новость Импортозамещение ИТ-Новость

«СберТех», дочерняя компания «Сбера», объявила о предоставлении доступа к собственной серверной операционной системе SberLinux OS Server российским компаниям. ОС включена в реестр отечественного ПО.

20.10.2023    822    VKuser24342747    0       

2

Минцифры внесло изменения в проект правил идентификации клиентов веб-хостингов

Новость Минцифры ИТ-Новость Роскомнадзор

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

18.10.2023    456    VKuser24342747    0       

1

Google выпустила финальную версию Android 14

Новость Android Google ИТ-Новость

Google выпустила новую версию мобильной ОС Android 14. Изменения затронули настройки внешнего вида и безопасности. Были расширены возможности камеры и инструментов для хранения данных.

12.10.2023    672    VKuser24342747    0       

1

Яндекс объявил об открытии исходного кода DataLens

Новость Аналитика ИТ-Новость Яндекс

BI-система Yandex DataLens теперь развивается в опенсорс. Код продукта выложен для всех на GitHub. Любой желающий сможет развернуть DataLens на своем железе и доработать его под свои сценарии применения.

03.10.2023    1367    ЕленаЧерепнева    1       

6

Роскомнадзор создаст реестр хостинг-провайдеров

Новость Минцифры ИТ-Новость Роскомнадзор

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

02.10.2023    560    VKuser24342747    0       

1

«СберТех» представил репозиторий GitVerse с ИИ-помощником для написания кода

Новость Импортозамещение ИТ-Новость Программист

«СберТех» начал прием заявок на тестирование веб-сервиса для публикации ИТ-проектов GitVerse. Платформа подходит для разработки программ с открытым и закрытым кодом.

26.09.2023    765    VKuser24342747    2       

1

ИП и юрлица смогут использовать смартфон для создания и замены электронной подписи

Новость ИТ-Новость ФНС Цифровая подпись

ФНС внесла изменения в правила оформления электронной подписи руководителя организации и ИП. Станет возможным продлевать ее и записывать при помощи мобильного устройства.

18.09.2023    415    VKuser24342747    1       

1

Журнал IEEE Spectrum опубликовал рейтинг популярности языков программирования

Новость ИТ-Новость Языки программирования

Журнал Института инженеров электротехники и электроники IEEE Spectrum подготовил рейтинг самых популярных языков программирования в 2023 году. Статистика разделена на три категории.

01.09.2023    1261    VKuser24342747    4       

2

В бета-версии Microsoft 365 появилась поддержка языка Python для Excel

Новость ИТ-Новость Языки программирования

С помощью библиотек и средств визуализации Python можно будет манипулировать данными Excel, а затем использовать полученные результаты в формулах, диаграммах и сводных таблицах.

28.08.2023    642    VKuser24342747    0       

2

Специалисты Калифорнийского университета установили, что боты справляются с CAPTCHA лучше, чем люди

Новость ИТ-Новость

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

24.08.2023    1141    VKuser24342747    23       

2

Google Chrome начнет поддерживать квантово-устойчивые алгоритмы шифрования

Новость Google Безопасность ИТ-Новость

В версии Google Chrome 116 появится поддержка алгоритмов шифрования, устойчивых к попыткам дешифрации при помощи квантовых вычислений. Технология объединяет преимущества классической и инновационной криптографии.

24.08.2023    465    VKuser24342747    0       

1

В реестр российского ПО включен первый комплекс обработки больших данных

Новость Импортозамещение Минцифры ИТ-Новость Реестр ПО

Минцифры внесло в реестр отечественного ПО программно-аппаратный комплекс «Скала-Р», предназначенный для обработки больших данных. Это первый комплекс с таким функционалом, включенный в перечень.

22.08.2023    452    VKuser24342747    0       

1

Microsoft внедрила новые функции в GitHub Copilot и анонсировала Windows Copilot

Новость GitHub Искусственный интеллект

ИИ-помощник для разработчиков GitHub Copilot теперь не только в реальном времени анализирует код, предлагает варианты для его улучшения и помогает найти решение проблем в разработке, но и  показывает ссылки на репозитории, из которых взят код. 

17.08.2023    1137    VKuser24342747    0       

1

В JetBrains разработали ИИ-помощника для аналитиков данных

Новость Аналитика Искусственный интеллект

JetBrains представила нейросеть Ask AI для онлайн-блокнота Datalore. Виртуальный ассистент способен генерировать код на нескольких языках, предлагать доработки и упрощать процесс аналитики данных. 

16.08.2023    649    VKuser24342747    0       

1

Исследование: ChatGPT дает неправильный ответ на половину вопросов о программировании

Новость Искусственный интеллект ИТ-Новость

Чат-бот OpenAI ошибается в 52% случаев, когда отвечает на вопросы по программированию. Однако делает это так убедительно, что пользователи не замечают ошибки. 

14.08.2023    987    VKuser24342747    5       

3

Минцифры проведет эксперимент по цифровизации «жизненного цикла» госслужащего

Новость Минцифры ИТ-Новость

Минцифры подготовило постановление о проведении эксперимента по внедрению ИТ в управление «жизненным циклом» госслужащего. Ведомство намерено автоматизировать все этапы работы сотрудников госструктур.

04.08.2023    547    VKuser24342747    0       

2