13 minutes
On ChatGPT And AI
Overview
Since ChatGPT’s release back in November 2022, I have been playing with it for various subjects, from network infrastructure questions, programming and all the way to conflict management.
I must admit that it is an exceptional technological feat, and for the most part, it can provide answers that are on point. Although, initially it was much more “intelligent” and now it seems like it is nerfed down a bit.
Nonetheless, using it has significantly increased my productivity and enables me to focus on more important tasks.
In this post, I want to share my opinion on the impact of using AI on a daily basis in the IT industry.
Common Scenarios
In order to make it more tangible, let’s come up with some scenarios:
-
Imagine you are a network engineer who is mostly experienced with Juniper routers and now troubleshooting a Cisco router’s BGP configuration which is full of jargons that are not the same on Juniper.
-
Or say you are a Python programmer who has to translate a simple program to a more performant programming language such as Nim, Go or Rust to achieve better results.
-
What if you have a conflict with a colleague and do not want to escalate it to your manager?
-
How about replying to an email from your insurance company?
BGP Troubleshooting
Obviously, using a search engine to find the definition and use case of BGP is quite simple and yields the right results. The goal here is to understand how each of the configurations on that Cisco router relate to the overall BGP setup and what they mean in relation to one another, not to learn what BGP is.
It can take a lot of time and mental energy to search for N Cisco terms, and depending on the situation, if everything has gone south, it may not even be feasible to do so.
Don’t you wish that someone who is experienced with both Cisco and Juniper could just quickly explain the Cisco configuration in a way that you could mentally map it to Juniper terms?
Re-writing a Program in Another Language
It becomes even more daunting when it comes to programming (of course experience plays and important role here). You don’t necessary want to spend a few weeks or months learning a new language; you only want to rewrite a program in another language.
What if someone could just show you how to re-write your program in another language while explaining the syntax and quirks of the target language?
Conflict Management
No matter who you work with or at what level, there will inevitably be conflicts, miscommunications, and disagreements, big or small. Understanding the circumstance and reacting to it in a way that first deescalates the situation and then effectively handles the problem require a lot of practice and patience.
Sure, you can consult your manager or a senior but what if they cannot offer any help or even worse, they escalate it to even something bigger?
It would be amazing if someone could listen to the entire story and provide a just and insightful approach; assuming you have provided the full story :) . Wouldn’t it?
If you are in the wrong and a colleague or manager points that out, depending on your character, you might take it as biased but if AI is pointing that out, you are most likely to accept it since the AI does not really know you and its opinion is not based on emotions.
Replying to Emails
Lastly, we all know how fun it is to deal with insurance companies (or any company in that nature) so I spare you the details.
The good news is, this is where AI shines! But let’s explore how we usually learn stuff and how AI can enhance the experience.
How Do We Usually Learn New Stuff?
When you break into a new field, be it for work or a hobby, depending on your background there will be subjects that you can absorb very easily and quickly while some others might be harder and more time consuming to pick-up.
When encountering a problem or a new subject and depending on how in-depth we would like to learn and allocate time to it, our typical options usually boil down to:
- Searching the internet
- Asking a friend or a colleague
- Reading a book
- Watching a video tutorial or a course
- Attending a class
You see, each of the options above have their own pros and cons, are more or less convenient and on top of that, we might not have access to any or some of them.
The Problem With Our Current Learning Model
The other problem (read privilege) is that we are dealing with a massive amount of information and more often that not, it becomes cumbersome or outright a struggle to just get a yes-or-no answer.
As a simple practice, try searching for “Is VMware now part of Dell?”
Please be noted that the results below are true at the time of this writing, February 2023.
This is what Google shows:
And this is what Bing shows:
Google just showed us some old and incomplete information from 2021 while Bing presented us with a resounding yes!
Although, according to Wikipedia, VMware is (or will be) acquired by Broadcom! This was announced on May 26, 2022, yet neither of the search engines hinted at that. You could argue that the acquisition is not completed yet and I agree. The message that I’m trying to convey here is, we can eventually get to an answer but it takes a lot of digging into and most importantly who’s to say that the “yes” answer from Bing was not convincing enough?
The majority of people would just stop seeking any further validations with the information they receive. Especially if it is from a trusted source.
If you are feeling bored, you can also search for “BGP configuration on Nokia routers” (yes! Nokia also produces routers and some companies actually use them) and judge the quality of the information yourself and determine how long it takes you to have a working solution.
How AI Enhances Our Learning Experience?
Consider AI or in this case, ChatGPT as a competent personal mentor or a knowledgeable colleague/friend who works alongside you. Say, in case of troubleshooting the BGP setup, you could just present the Cisco BGP configuration and ask it to explain it for someone who is coming from Juniper’s world.
Clearly, this not only saves you hours of digging through the internet and documents but also has the advantage of providing the means to build a one-to-one mental model to what you already know, helping to solve the problem much more efficient and faster.
In a sense, AI can sit between you and a sea of information, handing you just the necessary information for the task at hand.
The best part is the ability to have a full on conversation with ChatGPT, asking it to clarify some points as you progress with your work while not amplifying your imposter syndrome if you think a question is very basic.
How about actually asking ChatGPT to teach you something? For instance, try asking it to explain the difference between inheritance and composition in programming with examples in a programming language that you are learning or most comfortable with.
It’s true that there are already a ton of articles and videos on the aforementioned subject, but not all of them are suited to how each of us learns best. A major benefit of these technologies is that we may now have someone teach and explain new concepts to us in a manner that is tailored to our individual needs, at a comfortable pace.
The Impact of AI On Our Work
Apart from exploring the unknown territories with AI, we can also utilize it to improve our existing systems and processes.
Just to provide a simple example, I had to write a browser extension to get rid of that pesky YouTube’s “Are you still watching?” pop-up box that would pause my music, called Still Here.
I am not really familiar with JavaScript and at that time, had a tough time figuring out the bits and pieces.
Let’s give the getDate
function of the code to ChatGPT and ask it to improve it for us. Here’s how the function currently looks like:
function getDate() {
var d = new Date();
var hours = d.getHours();
var minutes = d.getMinutes();
var seconds = d.getSeconds();
var day = d.getDate();
var month = d.getMonth();
var year = d.getFullYear();
return `${year}-${month}-${day} - ${hours}:${minutes}:${seconds}`;
}
And this is what ChatGPT comes up with:
Brilliant! See how it also has provided a comprehensive explanation for the decisions it has made.
Yet again, I emphasize that this is just a trivial example and you can easily achieve much more complex tasks with it.
The Downsides of Integrating AI In Our Lives
Although the results are amazing, it is not all sunshine and roses. If the problem that you are trying to solve is very unique or was not included in the AI’s training model, then you are going to get quite strange and wrong answers but in a certain and decided tone, making you believe that the information you got is unquestionably accurate.
This is mostly due to the way these models are trained. They are not constantly given new information rather a lot of information up until a certain date. For instance at the time of this writing, ChatGPT is trained on data up until 2021 and has no clue about anything after that.
It is worthwhile to view these solutions more like a copilot rather than a pilot. At times, it provides some really sub-optimal solutions that work but if you do not not know what you are doing, you will end up with a working solution that is unnecessarily convoluted and slow. For instance, I was working on an algorithm for a problem and the solution ChatGPT provided was to use the B-trees algorithm while a simple hashmap could do the trick.
Additionally, you can try writing a simple program in Nim and watch ChatGPT spit out “correct looking” code that is never going to compile. Or some help with a Rust library that does not have many examples out on the internet. Or ask it to write an nftables policy file.
Alright, maybe Nim is a lesser known programming language and since it does not have a big adoption in the industry, we are not playing fair here. What about Go? A giant company is behind it and it has seen a major adoption in the industry especially in Cloud environments.
I tried to ask ChatGPT about a new feature that I was implementing for my tcping program. The task was to implement support for sub-millisecond timing report; which means we should use floating points and have the value with just 3 decimal places. Sounds simple yet there are not much data out there on the internet for it and floats are notorious for their quirks.
No matter how I asked and rephrased my question, ChatGPT kept giving different answers that looked promising but none of them addressed my requirement.
In all of the aforementioned cases, you will most likely receive responses, but they will typically be ineffective or correct in the past but now incorrect; hopefully you catch them before they end up in production, and it is where it all goes downhill.
What happens if you have relied too heavily on AI for a project and have reached the point of no return? You simply do not understand the underlying technology that AI has been assisting you with in order to advance with it yourself, and the AI simply lacks the knowledge necessary to know any better, continually giving incorrect information while also making it impossible to abandon the project and start anew.
In order to make it a bit more clear, I am not talking about now or the next year. My points are geared towards the future. This future can be in five years or fifty.
Let’s expand on this a bit.
AI Changes The Way We Learn
Throughout all our lives, we have been taught to learn in a traditional sense. By experimenting, reading books or articles, watching videos or other people, and attending classes. In other words, We were never given an answer right off the bat, we had to take in a lot of information (sometimes irrelevant), digest them and when presented with a problem, put the puzzle pieces together and come up with an answer.
Although it may not have been the most effective method, it has largely been successful so far. I would also argue that occasionally gaining the knowledge I previously labeled as “irrelevant” may turn out to be advantageous or, at the very least, rewire our brains, aiding in our further growth.
On the other hand, AI hides all the other prerequisite knowledge required to master the subject and instead offers a solution that is tailored to the query we are posing. Of course, the AI is not to blame for this. It is just carrying out what was asked of it.
Or, even worse, what if the AI begins to withhold information from us for any number of reasons, including the corporation behind it, the way it was trained, or the development of consciousness?
You could say, well, obviously we still have access to the internet, why not just search for what we’re looking for?
My answer to that would be, yes, we still do have access to this vast sea of information but it will be just about time that learning and searching in its current form will become so inconvenient that you barely find anyone who does it. Analogous to sending letters as opposed to emails or messages.
We can already observe how big and small companies are integrating AI into their products. Take Google’s Bard and the new Microsoft’s Bing as an example while not forgetting how NVIDIA is making advancements.
I strongly believe that AI will just become a layer of abstraction between us and search as we know it today. I simply hope that we avoid getting into a situation where crucial information is lost in this commotion.
You may have guessed by now where I’m going with this by bringing up these issues. If we, or more specifically the younger generations, reach a point where we largely rely on AI to solve every issue we face, we will soon become mindless people that are not even able to solve the simplest of problems, rendering us useless and always dependant.
Will We Lose Our Jobs?
I am targeting the tech jobs and the answer to this question is twofold. If you are someone who is mostly stagnant and is not developing their skill set, before AI, the competition will take you out but if you are lucky, you get some more time until AI gets advanced enough to replace you.
On the other hand, if you are someone who is mildly interested in what you do and has plans to improve your abilities and advance further on even a little bit, you would be safe and in a good place. Unless, until the AGI comes about.
Funnily enough, almost everyone was thinking that when the AI comes to our lives, jobs like plumbers, carpenters and anything of this nature would be going to vanish but we see the programmers are at the frontline now.
Closing Thoughts
It is an incredible time to be alive and being able to leverage the power of AI in our day-to-day lives. AI can help us become way more productive, motivated and efficient. Surely, in the future we will see more and more advancements and hopefully for the better.
I am really excited for what the future of this technology has to offer and hope the companies or people behind these technologies respect the freedom of information and ethics.
chatgpt gpt3 gpt3.5 AI copilot networking programming learning education
2667 Words
2023-02-18 13:23