Giter Site home page Giter Site logo

microsoft / copilothackathon Goto Github PK

View Code? Open in Web Editor NEW
90.0 9.0 250.0 3.98 MB

GitHub Copilot Hackathon using Nodejs, JAVA, Python & .NET

License: MIT License

JavaScript 2.39% Dockerfile 0.28% C# 1.22% Java 7.06% HTML 71.27% Jupyter Notebook 17.80%
dotnet github-copilot node-js java python

copilothackathon's Introduction

GitHub Copilot Hackathon

Demo project for running labs to evaluate Copilot viability

Goal

The goal of a GitHub Copilot Hackathon is to learn how to use it, using a set of exercises (labs) that consist of building a web server using Nodejs with different functionalities, a .NET Web API or a Java Rest API (either Spring Boot or Quarkus).

We have also set two exercises for data engineers and data scientists based on python.

For those who are already familiar with GitHub Copilot, we have also defined a series of challenges to test your skills. In this case, you will find an introduction and short guidance to help you solve the challenge, but you will have to do most of the work on your own (with the help of Copilot, of course).

GitHub Copilot is an AI-powered code assistant that helps developers write better code faster. It uses machine learning models trained on billions of lines of code to suggest whole lines or entire functions based on the context of what you’re working on. By using Copilot, you can learn how to write better code and improve your productivity.

Remember:

  • As you type GitHub Copilot will make suggestions, you can accept them by pressing Tab.
  • If nothing shows up after Copilot write some lines, press enter and wait a couple of seconds.
  • Press Ctrl + Enter, to see more suggestions.
  • Use Copilot chat to support your learning and development.
  • Press Ctrl + i to start Copilot chat inline within your code.

Pre-requisites

GitHub Copilot access

If you still do not have an active Copilot license, a 30 day trial can be requested here: https://github.com/github-copilot/signup.

Work with GitHub Codespaces

Environment is already configured to work with Github Codespaces, you can find the configuration files in the .devcontainer folder.

To start programming just start a new codespace and you are ready to go, don't need to install anything.

Work locally

VisualStudio Code

https://code.visualstudio.com/

Install Docker

https://docs.docker.com/engine/install/

For Nodejs

Run:

 npm install --global mocha
 npm install axios

For .NET

Install .Net

For Java

For Python

Labs instructions

Challenges instructions

copilothackathon's People

Contributors

0gis0 avatar cmendible avatar davihern avatar dependabot[bot] avatar dmangas avatar drhelius avatar dsanchor avatar gitstua avatar leomicheloni avatar marcelpetrick avatar microsoft-github-operations[bot] avatar microsoftopensource avatar msanzdelrio avatar richorama avatar sukantsondhi avatar tfsjohan avatar tgrall avatar tilman-sattler avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

copilothackathon's Issues

Codespace stuck in sign in loop for extension

When I open the code space with the latest update to dotnet 8 and python version, it asks me to sign in to activate plugin.

When I do it cycles between two variants of the popup. Pressing cancel does not help, the modal keeps coming back.

image image

This is the web version of VS Code. haven't tried the desktop client.

NodeJS: Removing dependency on Copilot Labs and replace with Copilot Chat only

Removing dependency on Copilot Labs and replace with Copilot Chat only

Tasks

Making new instances of HttpClient is bad practice

Using var client = new HttpClient() is generally considered a bad practice for several reasons. Having that in the solution, might not look good.

I think this should either be changed to a more proper solution like using DI to get a HttpClient, or using DI to get a HttpClientFactory. How ever, I can also see this is a good learning opportunity to show case when Copilot might make mistakes and it is still really important for the developer to build their skills and make sure the code that Copilot produces is following best practices.

At the very least, I think it should be obvious that this is intended, even though it's not the recommended way of doing things.

Error when creating new codespace

When I create a codespace the container starts building, but after a while I see a lot of these errors:

#18 195.1 (*) Downloading GPG key...
#18 197.1 gpg: key 3A5CA953F73C700D: new key but contains no user ID - skipped
#18 197.4 gpg: key 04C367C218ADD4FF: new key but contains no user ID - skipped
#18 197.6 gpg: key 0EDDC5F26A45C816: new key but contains no user ID - skipped
#18 197.9 gpg: key 6AF053F07D9DC8D2: new key but contains no user ID - skipped
#18 198.2 gpg: key C9BE28DEE6DF025C: new key but contains no user ID - skipped
#18 259.2 gpg: keyserver receive failed: Connection timed out
#18 259.7 (*) Failed getting key, retring in 10s...

Then it finally continues, but gives this error:

Error code: 1302 (UnifiedContainersErrorFatalCreatingContainer)
Container creation failed.

Creating recovery container.

Finally it opens, but shows this modal:

image

Dependencies like node or dotnet are not installed correctly.

image

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.