Мой обзор на GitHubCopilot
Привет! Меня зовут Саша. Я Python-разработчик. Больше 4 лет работаю в крупных компаниях и над своими pet-проектами. Сейчас развиваю стартап, который часто сравнивают с GitHubCopilot.
Поэтому решил протестировать этот инструмент и сравнить со своим решением.
Интерфейс Copilot
Copilot встроен в интерфейс кодового редактора - доступны самые популярные: VsCode, JetBrains, NeoVim. Как мне кажется, это плюс, так как не нужно переключаться между вкладками. Все в одном месте.
Фичи Copilot
Автокомплит
Пока непривычно писать с автокомплитом. Просто читаешь, что он там понаписал, и в 4 из 5 случаев переписываешь заново.Чат
Чатиться с Copilot можно в двух форматах:В привычном виде - через отдельный блок интерфейса, слева от области с кодом. Здесь можно задать вопросы по коду проекта.
Через командную строку, которая появляется в кодовом редакторе. Прямо в редакторе Copilot может предложить измененный код по запросу. Там же можно посмотреть, что именно он скорректировал, принять или отклонить предложенное решение.


На первой картинке - привычный вариант чата. На второй - чат, который появляется при работе с кодом.
Команды
В приветственном сообщении Copilot знакомит с набором команд, который может применять пользователь:
You can ask me general programming questions, or chat with the following participants which have specialized expertise and can perform actions:
@WorkSpace - Ask about your workspace
/explain - Explain how the code in your active editor works/tests - Generate unit tests for the selected code
/fix - Propose a fix for the problems in the selected code/new - Scaffold code for a new file or project in a workspace
/newNotebook - Create a new Jupyter Notebook
@vscode - Ask questions about VS Code
/search - Generate query parameters for workspace search
/runCommand - Search for and execute a command in VS Code
@Terminal - Ask how to do something in the terminal
/explain - Explain something in the terminal
You can also help me understand your question by using the following variables to give me extra context:
#selection - The current selection in the active editor
#editor - The visible source code in the active editor
#vscodeAPI - Use VS Code API references to answer questions about VS Code extension development
#terminalLastCommand - The active terminal's last run command#terminalSelection - The active terminal's selection
#file - Choose a file in the workspace
To have a great conversation, ask me questions as if I was a real programmer:
Show me the code you want to talk about by having the files open and selecting the most important lines.
Make refinements by asking me follow-up questions, adding clarifications, providing errors, etc.
Review my suggested code and tell me about issues or improvements, so I can iterate on it.
You can also ask me questions about your editor selection by starting an inline chat session.
Команды заточены на какое-то конкретное действие, что оставляет меньше шансов галлюцинациям. Более того, можно непосредственно через # обозначить контекст, по которому ты хочешь задать свой вопрос.
Из минусов - если переключить вкладку, промпт весь исчезнет. Надо заново его вводить.Голосовой ввод
Можно надиктовывать вопросы и команды голосом. Вряд ли это полезно для меня. Я работаю в офисе, а в офисах говорить с моделями в слух не принято.
Сравнение Copilot и Documate
Ну, и, наконец, сравнение, ради которого все и затевалось, сравнение GitHubCopilot и моего проекта.
Заключение
А вам нравится работать с Copilot? Что хотелось бы улучшить или добавить?
Тестируйте Documate с удовольствием. Буду рад узнать, что понравилось и не понравилось.
Лига программистов
2K поста11.8K подписчиков
Правила сообщества
- Будьте взаимовежливы, аргументируйте критику
- Приветствуются любые посты по тематике программирования
- Если ваш пост содержит ссылки на внешние ресурсы - он должен быть самодостаточным. Вариации на тему "далее читайте в моей телеге" будут удаляться из сообщества