ColdFusion Alive

133 GitHub Copilot & AI-Assisted Coding (Unlocking ColdFusion’s AI Potential) with Monte Chan


Listen Later

Monte Chan talks about “GitHub Copilot & AI-Assisted Coding (Unlocking ColdFusion's AI Potential)” in this episode of ColdFusion Alive Podcast with host Michaela Light.
“It is an AI pair programming tool. So this helps test your programming that basically, there's another person but in this case is a AI tool, if you will, so but you will be doing most of the typing. But then that will also give you some code suggestions, if you will. And to help you with coding. So sometimes can be a short one liner, or could be one whole block of codes. So you can save a lot of typing.”
https://youtu.be/nk27Pr03lXg
Show notes
What is Github Copilot?
An AI pair programmer.
Essentially, Copilot is Auto Complete on steroid. When Copilot generates the codes, it does not know what it is writing.  It is simply trying to predict the next word(s) based upon the information that it has.
Works with VS Code, Visual Studio, NeoVim/Vim, and JetBrains IDEs via extensions
https://docs.github.com/en/copilot/overview-of-github-copilot/about-github-copilot-for-individuals 
Who makes it?
Microsoft who own Github
Why should CFers use Copilot
Helps you write code faster especially when it generate a whole block of code
Write better code esp if your give it self-documenting variable and function names
Can help with JavaScript, CSS and SQl too
Improves a junior developer’s weak area more than it improves a senior developer. 
“Copilot makes you better at what you’re good at and lets you quickly master what you’ve yet to learn.”
“Among developers who use GitHub Copilot, 88% say they are more productive, 74% say that they can focus on more satisfying work, and 77% say it helps them spend less time searching for information or examples.” from https://github.blog/2022-09-07-research-quantifying-github-copilots-impact-on-developer-productivity-and-happiness/
Any reasons to not use it?
Trained on codes found in public repositories – The accuracy of the generated codes depends on the amount of codes in their respective public repos.
The quality of the codes may or may not be good 
It takes the name of your file, the codes before and/or after the cursor in the current file, the currently open files in your IDE, and the codes in the files linked to the current file in context when trying to provide code suggestions.  In other words, as you are building your projects, the accuracy rate should increase.
Does it copy your code to add to its store of code?
Controversy over where the code comes from - copyright issues?
Business version has option to only use code from a your own private GitHub repo
Tips on using Copilot
Be precise and provide details
Be descriptive to your file names, variable names, function names, …etc.
Keep file tabs open especially those files which are relating to the current file.
Keep in mind that Github Copilot is like an Auto-Complete on steroid.  It does not have an idea in which language you are writing.  
The suggested code may not have the correct syntax (ex. Missing a bracket, missing a semicolon, …etc.) or the suggested variables/functions may not exist.
So! Read and test the code generated!
Github Copilot is trained on data found in public repositories.  
So! Put more ColdFusion codes in public repositories.
ForgeBox? Mirror into public GitHub or write an extension
Explain code
Simple bug fixing
Translate code to/from other programming
Demo
Pricing
30 day trial
$10 per month for individuals; $19 for business license per user/mo
Copilot Business comes with Copilot Chat
More on features and differences between individual and business versions https://docs.github.com/en/copilot/overview-of-github-copilot/about-github-copilot-for-individuals 
Has Copilot changed the way your team approaches coding or collaboration?
Helps with common coding standard use and formatting
CF lint
For teams new to AI-assisted coding, there's often a learning curve. 
What advice would you give to other CIOs or development leads considering such a tool?
How much time to learn and get used to it? A hour to learn. A week to get used to it. 
Future of Copilot
Github Copilot X recently announced.  X is a placeholder.  Essentially, it is a family of projects/products which utilize the Github Copilot technology to give a more complete programming experience. 
GitHub Copilot X is a set of technical preview features that extend the original Copilot with chat and terminal interfaces, support for pull requests, and early adoption of OpenAI's GPT-4.
https://github.com/features/copilot 
“The “X” represents a placeholder for where we intend GitHub Copilot to become available, and what we expect it to be capable of doing (e.g. “Copilot “, “Copilot “). It is extending the product from one experience, code completion, to X experiences across the developer’s workflow. GitHub Copilot will always need to be so much more tomorrow than what it currently is today.
Additionally, The “X”, indicates the magnitude of impact we intend to have on developer achievement. Therefore, it’s a statement of intent, and a commitment to developers, as we collectively enter the age of AI. We want the industry to be confident in GitHub Copilot, and for engineering teams to view it as the neXus of their future growth.”
Copilot Chat – Chat-GPT like.  Comes with Individual license now.  Needed to join waitlist before.
Copilot Voice – formerly known as Hey Github. Need to join waitlist.  Program using natural language.
Copilot CLI, Copilot for PR, Copilot for Docs, …etc.
View them at www.githubnext.com  
Need a Github account for all of this.
Microsoft adding Copilot to their other software apps such as Office
https://blogs.microsoft.com/blog/2023/03/16/introducing-microsoft-365-copilot-your-copilot-for-work/ 
Maybe SQL Server too?
Update from Monte: Github Universe is happening right now.  Github Universe is a conference which talks about everything that is going on with Github.  They made their sessions available to the public two hours after the respective sessions are over.  I have watched some of those.  Github Copilot is the emphasis on all of those that I watched. 
There is this session which talks about Copilot specifically.  https://www.youtube.com/watch?v=AAT4zCfzsHI.  It talks about how to integrate our own data to work with Copilot.  You are more than welcome to watch the presentation in its entirety.  However, I want to bring your attention to the presentation starting at around 33:45 mark of the clip. 
The presenter gave an example of how DataStax (a database service provider) created this agent plugin to utilize Copilot Chat to return information specific to DataStax. 
Having said all these, the reason why I brought this up is to answer one of the questions you asked me in the podcast.  How can we make the Copilot experience better?  In addition to the ones that I mentioned in your podcast, now, we can create a plugin to return CF information to the developers.
Looking forward, how do you see AI tools like Copilot shaping the future of ColdFusion development? Do you believe these tools will become integral to the language's evolution or remain as supplementary aids?
Mark Tataka CF AI preso
Adaptation curve
Pace of change
Other AI coding tools
FusionReactor 11 AI tool for performance tuning
ChatGPT
Have to copy and paste code into ChatGPT while Copilot directly sees your code in your IDE (including other related tabs)
Google Bard
AWS CodeWhisperer 
Why are you proud to use CF?
The generosity of the CF community helping other CF devs in groups or conferences
WWIT to make CF more alive this year?
More people sharing their knowledge
What are you looking forward to at the next CF Summit?
New features in ACF 2024
More AI integrations and features
Mentioned in this episode
Github YouTube Channel: https://www.youtube.com/@GitHub 
VS Code YouTube Channel: https://www.youtube.com/@code 
Microsoft Developer YouTube Channel: https://www.youtube.com/@MicrosoftDeveloper 
Github Next: https://githubnext.com 
Github Universe: https://githubuniverse.com 
Other AI coding tools https://www.codium.ai/blog/10-best-ai-coding-assistant-tools-in-2023/ 
Listen to the Audio
Bio
Monte Chan
Monte is a ColdFusion Web developer with 20+ years of web development experience in areas such as education software, health insurance, church web sites, pregnancy care centers, FinTech, and other businesses. 
He is a Senior ColdFusion Developer at CF Webtools. He has used ColdFusion since version 4.5 back in 1999. Has developed web applications which were used in many different industries (ex. Health insurance, education, finTech, e-commerce…etc.) He was one of the co-managers of Alamo ColdFusion User Group.
Links
Monte Chan | LinkedIn 
Monte Chan/Geek Talk | YouTube
Monte Chan | Facebook
Say in message that you do ColdFusion
Email: [email protected] (but you may get a quicker response if you send me a message in Facebook Messenger)
Interview transcript
Michaela Light 0:01
Welcome back to the show. I'm here with Monty Chan, from sea of web tools. And we're going to be talking about an exciting new AI tool for ColdFusion. While and other languages, which is GitHub copilot, welcome, Monty,
Monte Chan 0:16
Both. Thank you. So we are a big fan of this podcast. And it's a great honor to be on this podcast.
Michaela Light 0:25
I am glad we finally got you on. I noticed you were posting on your LinkedIn about the CF summit talk you gave on using copilot ColdFusion.
...more
View all episodesView all episodes
Download on the App Store

ColdFusion AliveBy Michaela Light

  • 4.8
  • 4.8
  • 4.8
  • 4.8
  • 4.8

4.8

5 ratings