Modernize Java apps in days with GitHub Copilot

Microsoft Developer · Beginner ·🛠️ AI Tools & Apps ·9mo ago

Key Takeaways

This video teaches how to modernize Java apps using GitHub Copilot

Full Transcript

We live in a world where technology is moving faster than the speed of light. Okay, maybe not, but I think it's a great analogy. Creating an application is one thing. Keeping it up to date, it's a whole different kind of ordeal. As a developer, I don't know how many times you have said, "Isn't it just easier to redevelop or start over?" I know I have. Going through all the old code, trying to figure out what it does and modernize it. Impossible. But we are so excited to release the new GitHub Copilot app mod tool which is designed to make your life easier and use the power of AI to make modernization, migration, and deployment easier. Let's go ahead and dive in. So, we'll go ahead and open up the GitHub Copilot app modernization tool and we will run our assessment. When we click on run assessment, our co-pilot starts working hard at understanding our code and seeing everything that needs to be done in order to upgrade our application. In addition, it automatically installs any additional tools such as AppCat which assist with the assessment. All right, so we can see that the assessment has finished running. We get a nice little nifty UI which explains everything that the co-pilot discovered when going through our application. And there's two main categories of issues. We can see that there's some Java upgrade issues. In addition, there's some cloud readiness issues. So, let's go ahead and get started with upgrading our Java version. So, we'll go ahead and click on upgrade. And what this will do is it will trigger Copilot to generate an action plan that allows us to first review what Copilot wants to do, make any edits if necessary, and then go ahead and continue. So we'll wait for the action plan to be generated. Okay, so here's our upgrade plan. We can see that the goal is to upgrade to Java 21. It has steps laid out which copilot will follow and it lays down the framework that we will follow as we continue with the upgrade. So we'll go ahead and click on continue and the upgrade should now take place automatically. So using the power of AI and tools like open rewrite the Java upgrade tool is able to update frameworks and dependencies. It performs security checks and CVE checks. It generates reports such as what files were changed, updates dependencies, and fixes any other issues it discovered. And finally, it generates additional unit tests separately to make sure that the application is performing as it should. All right. So, we can see that the Java project finished upgrading. We get a nifty little report here which tells us about all the changes that were made and in addition the CVE validation checks, potential issues, behavior changes and any other information which can be important as we continue with the project. So now let's go ahead and refresh our assessment report and we should see that we no longer have any Java upgrade issues. Okay, so we can see that we have a new assessment report. The issue we had previously about upgrading our Java version to 21 is no longer there. For the other two Java upgrade issues, we would follow a similar process where we go ahead and just click on upgrade. Let's go ahead and move to some of the cloud readiness issues. We'll start by migrating our Postgregql. So let's go ahead and click that we want to migrate to public cloud. And similar to upgrading our Java version, we will click on migrate and copilot will generate first of all a summary or an action plan which we can then review. And after we approve it, Copilot does the magic and migrates our database. Okay. So here is the migration plan that copilot created. We can see that there is a progress tab which tells us about everything Cop-ilot will need to do. There are certain steps which copilot will go through such as CVE checks, fixing any build issues, tests, consistency checks, etc. If everything looks okay, we can tell Copilot that it is okay to continue and Copilot will once again take over. And it's super cool because it's almost like you have a full development team at your fingertips and you're able to watch as they do the work for you. Okay. So we can see that the migration completed. We get a nifty little report on everything that copilot took took action upon. We can review it. If any additional changes are needed, we can take the help of co-pilot. In addition, we can see the validation results that the project built successfully. There were no test issues. The CVE checks passed and the code consistency check pass. With everything looking good, you can go back to your assessment report and click on migrate for all the other features that you need to migrate over to Azure. I don't want you to sit around. So let's go ahead and jump to a fully migrated application that I have pre-prepared to now jump into into the most exciting part which is deploying our application to Azure. So we'll go ahead and use an MCP tool to call a code to cloud tool which streamlines the process of deploying to Azure. Copilot will scan the project and generate a deployment plan for us to review. So, Cop-ilot has generated an architecture diagram for us to take a look at. The goal of this architecture diagram is to confirm that C-Pilot's understanding of the application is in fact correct. If there are any issues, we can tell Copilot to take a look again and resolve them. In this case, everything looks great. So, we'll let Copilot continue with generating the full deployment plan. So here's our deployment plan for our asset manager project. We get the overall project information, the diagram from the previous step, the recommended Azure resources that C-Pilot will deploy, as well as dependencies, and finally at the bottom, we have the execution steps, which is the step-by-step guide that Copilot will follow when it works to deploy the project. So let's go ahead and tell Copilot to continue and it will now finally deploy our application to the cloud. While Copilot is working, it'll verify different prerequisites, validate the infrastructure code, and finally deploy using AZD. Let's go ahead and jump ahead to when the project has finished deploying all of its assets. If we open up Azure portal, we can see that we successfully deployed our project, including container apps, container registry, our databases, and so on. Wow. Wow. Wow. What an experience. Microsoft's new app modernization tool gives us the power of a full team of developers just a click away. No, it didn't quite take us just five minutes, but with the help of co-pilot in just a single afternoon, we have modernized, migrated, and deployed our application. I myself took a few coffee breaks in between as Copilot took over. I now pass the baton over to you to try out Microsoft's new Copilot app modernization tool for Java. The power of AI now lies in your hands.

Original Description

Boost your Java app modernization with GitHub Copilot! 🚀 Discover how GitHub Copilot streamlines Java app upgrades and updates, fixes code faster, eliminates bugs and vulnerabilities, and ensures enterprise-level security and compliance—while accelerating your entire modernization workflow. Get started with modernizing your Java apps (https://aka.ms/ghcp-appmod/Java) today and learn more about the details here: https://aka.ms/ghcp-appmod/blog 00:06 - Why modernizing apps is hard 00:31 - Introducing GitHub Copilot App Mod Tool 00:45 - Running the initial code assessment 01:21 - Reviewing assessment results 01:39 - Upgrading Java with Copilot 02:10 - Java 21 upgrade plan and execution 02:32 - Security checks and dependency updates 03:03 - Reviewing upgrade results 03:36 - Migrating PostgreSQL to Azure 04:24 - Database migration plan and execution 05:06 - Reviewing migration results 05:48 - Deploying to Azure with Code-to-Cloud 06:13 - Architecture diagram and deployment plan 07:03 - Final deployment and validation 07:47 - Wrap-up and call to action
Watch on YouTube ↗ (saves to browser)
Sign in to unlock AI tutor explanation · ⚡30

Playlist

Uploads from Microsoft Developer · Microsoft Developer · 0 of 60

← Previous Next →
1 Prepare for the DP-300 exam & the Azure Database Administrator Associate cert | Data Exposed
Prepare for the DP-300 exam & the Azure Database Administrator Associate cert | Data Exposed
Microsoft Developer
2 What I Wish I Knew ... about landing a job in tech
What I Wish I Knew ... about landing a job in tech
Microsoft Developer
3 Igniting Developer Innovation with Vector Search
Igniting Developer Innovation with Vector Search
Microsoft Developer
4 Combining the power of vector search with Azure OpenAI then revolutionize image search with vectors!
Combining the power of vector search with Azure OpenAI then revolutionize image search with vectors!
Microsoft Developer
5 What I Wish I Knew ... about finding your place in tech
What I Wish I Knew ... about finding your place in tech
Microsoft Developer
6 Fluent UI React Insights: Accessible by default
Fluent UI React Insights: Accessible by default
Microsoft Developer
7 Signing Container Images with Notary Project
Signing Container Images with Notary Project
Microsoft Developer
8 What I Wish I Knew ... about finding your place in tech
What I Wish I Knew ... about finding your place in tech
Microsoft Developer
9 What programming languages does GitHub Copilot support?
What programming languages does GitHub Copilot support?
Microsoft Developer
10 What I Wish I Knew ... about how much your job can change
What I Wish I Knew ... about how much your job can change
Microsoft Developer
11 What I Wish I Knew ... about how much your job can change
What I Wish I Knew ... about how much your job can change
Microsoft Developer
12 How do I become more confident about AI?
How do I become more confident about AI?
Microsoft Developer
13 How do I become more confident about AI?
How do I become more confident about AI?
Microsoft Developer
14 Performance Demos of SQL’s Intelligent Query Processing Feedback capabilities | Data Exposed
Performance Demos of SQL’s Intelligent Query Processing Feedback capabilities | Data Exposed
Microsoft Developer
15 What I Wish I Knew ... about coming to Microsoft
What I Wish I Knew ... about coming to Microsoft
Microsoft Developer
16 What I Wish I Knew ... about coming to Microsoft
What I Wish I Knew ... about coming to Microsoft
Microsoft Developer
17 Revolutionizing Image Search with Vectors
Revolutionizing Image Search with Vectors
Microsoft Developer
18 Igniting developer innovation with Vector search and Azure OpenAI
Igniting developer innovation with Vector search and Azure OpenAI
Microsoft Developer
19 Getting Started with Azure AI Studio's Prompt Flow - Part 2
Getting Started with Azure AI Studio's Prompt Flow - Part 2
Microsoft Developer
20 What I Wish I Knew ... about finding my career path
What I Wish I Knew ... about finding my career path
Microsoft Developer
21 What I Wish I Knew ... about finding my career path
What I Wish I Knew ... about finding my career path
Microsoft Developer
22 Windows Terminal's journey to Open Source
Windows Terminal's journey to Open Source
Microsoft Developer
23 Can I trust the code that GitHub Copilot generates?
Can I trust the code that GitHub Copilot generates?
Microsoft Developer
24 What I Wish I Knew ... about interviewing
What I Wish I Knew ... about interviewing
Microsoft Developer
25 What I Wish I Knew ... about interviewing
What I Wish I Knew ... about interviewing
Microsoft Developer
26 What is the Microsoft TechSpark Program?
What is the Microsoft TechSpark Program?
Microsoft Developer
27 SQL Server 2022: Accelerate query performance while reducing query compile time - w/ no code changes
SQL Server 2022: Accelerate query performance while reducing query compile time - w/ no code changes
Microsoft Developer
28 What I Wish I Knew ... about discovering computer science
What I Wish I Knew ... about discovering computer science
Microsoft Developer
29 What I Wish I Knew ... about discovering computer science
What I Wish I Knew ... about discovering computer science
Microsoft Developer
30 Call center transcription and analysis using Azure AI
Call center transcription and analysis using Azure AI
Microsoft Developer
31 How to use Text Analytics for health in Azure AI Language
How to use Text Analytics for health in Azure AI Language
Microsoft Developer
32 Azure OpenAI-powered summarization in Azure AI Language
Azure OpenAI-powered summarization in Azure AI Language
Microsoft Developer
33 Accelerate data labeling using Azure OpenAI and Azure AI Language
Accelerate data labeling using Azure OpenAI and Azure AI Language
Microsoft Developer
34 Building a Private ChatGPT with Azure OpenAI
Building a Private ChatGPT with Azure OpenAI
Microsoft Developer
35 What I Wish I Knew ... about how to interview
What I Wish I Knew ... about how to interview
Microsoft Developer
36 What I Wish I Knew ... about how to interview
What I Wish I Knew ... about how to interview
Microsoft Developer
37 Getting Started with Azure AI Studio's Prompt Flow - Part 3
Getting Started with Azure AI Studio's Prompt Flow - Part 3
Microsoft Developer
38 Intelligent Apps with Azure Kubernetes Service (AKS)
Intelligent Apps with Azure Kubernetes Service (AKS)
Microsoft Developer
39 Getting Started with Azure Blob Storage | Data Exposed: MVP Edition
Getting Started with Azure Blob Storage | Data Exposed: MVP Edition
Microsoft Developer
40 Chat + Your Data + Plugins
Chat + Your Data + Plugins
Microsoft Developer
41 What I Wish I Knew ... about different career paths
What I Wish I Knew ... about different career paths
Microsoft Developer
42 What I Wish I Knew ... about different career paths
What I Wish I Knew ... about different career paths
Microsoft Developer
43 Advanced Dev Tunnels Features | OD122
Advanced Dev Tunnels Features | OD122
Microsoft Developer
44 Learn Live - Manage performance and availability in Azure Cosmos DB for PostgreSQL
Learn Live - Manage performance and availability in Azure Cosmos DB for PostgreSQL
Microsoft Developer
45 Plan your SQL Migration to Azure with confidence | Data Exposed
Plan your SQL Migration to Azure with confidence | Data Exposed
Microsoft Developer
46 What I Wish I Knew ... about social skills in a tech career
What I Wish I Knew ... about social skills in a tech career
Microsoft Developer
47 What I Wish I Knew ... about social skills in a tech career
What I Wish I Knew ... about social skills in a tech career
Microsoft Developer
48 All About Vectors, Search, and Function Calling in Azure OpenAI - Labor Day Special
All About Vectors, Search, and Function Calling in Azure OpenAI - Labor Day Special
Microsoft Developer
49 Introduction to project ORAS
Introduction to project ORAS
Microsoft Developer
50 What I Wish I Knew ... about finding the right major
What I Wish I Knew ... about finding the right major
Microsoft Developer
51 What I Wish I Knew ... about finding the right major
What I Wish I Knew ... about finding the right major
Microsoft Developer
52 What I Wish I Knew ... about how to approach programming
What I Wish I Knew ... about how to approach programming
Microsoft Developer
53 What I Wish I Knew ... about how to approach programming
What I Wish I Knew ... about how to approach programming
Microsoft Developer
54 Learn Live - Scale from a single node to multiple nodes with Azure Cosmos DB for PostgreSQL
Learn Live - Scale from a single node to multiple nodes with Azure Cosmos DB for PostgreSQL
Microsoft Developer
55 What I Wish I Knew ... about diversity in tech #1
What I Wish I Knew ... about diversity in tech #1
Microsoft Developer
56 What I Wish I Knew ... about diversity in tech #1
What I Wish I Knew ... about diversity in tech #1
Microsoft Developer
57 Get started with SQL Server AGs across Windows, Linux and Container Replicas | Data Exposed
Get started with SQL Server AGs across Windows, Linux and Container Replicas | Data Exposed
Microsoft Developer
58 Writing LLM Apps with Azure AI and PromptFlow
Writing LLM Apps with Azure AI and PromptFlow
Microsoft Developer
59 What I Wish I Knew ... about how cool working in tech could be
What I Wish I Knew ... about how cool working in tech could be
Microsoft Developer
60 Open Source foundation models in Azure Machine Learning & optimization techniques behind the scenes
Open Source foundation models in Azure Machine Learning & optimization techniques behind the scenes
Microsoft Developer

Related Reads

📰
AI Tool Scorecard: 5 Dimensions EU SMEs Miss Before Signing
Learn the 5 key dimensions EU SMEs often overlook when evaluating AI tools before signing a contract, and how to create a scorecard to make informed decisions
Dev.to AI
📰
Aplikasi AI Harian Untuk Produktivitas, Bye Burnout!
Boost productivity with daily AI applications and say goodbye to burnout by leveraging tools like ChatGPT, Notion AI, and Canva AI
Medium · AI
📰
From stethoscopes to source code:Why I Switched from Pre Med to BS AI
Learn how to transition from a pre-med background to a career in AI, and why making this switch can be a great opportunity for growth and development
Medium · Programming
📰
Ilios Software Pvt. Ltd.: Building Practical AI Products That Solve Real Problems
Learn how Ilios Software Pvt. Ltd. builds practical AI products that solve real problems, and why this matters for businesses today
Medium · AI

Chapters (15)

0:06 Why modernizing apps is hard
0:31 Introducing GitHub Copilot App Mod Tool
0:45 Running the initial code assessment
1:21 Reviewing assessment results
1:39 Upgrading Java with Copilot
2:10 Java 21 upgrade plan and execution
2:32 Security checks and dependency updates
3:03 Reviewing upgrade results
3:36 Migrating PostgreSQL to Azure
4:24 Database migration plan and execution
5:06 Reviewing migration results
5:48 Deploying to Azure with Code-to-Cloud
6:13 Architecture diagram and deployment plan
7:03 Final deployment and validation
7:47 Wrap-up and call to action
Up next
How I use OpenAI to structure ad data and show my team what matters
Josiah Roche — Google Ads + SEO Training
Watch →