It's only been a couple of months since ChatGPT was launched and the expression 'spreading like a wildfire' isn't strong enough to convey how fast the word is spreading about this new tool.
I decided to finally give it a try this week and I must admit that I am flabbergasted. ChatGPT is immensely powerful. My mind has a hard time grasping & envisioning all the implications that such a tool/system will have on our lives and our society in general. The least that I can say is that I believe this tool will be an incredibly disruptive force.
Now, I am creating this thread in the hope that you'll use it to share with this community your ChatGPT stories, as they relate to your work with Embedded Systems.
By sharing your stories and insights, others can learn how to better leverage ChatGPT for their own projects and gain new perspectives on how to effectively use it. Whether it's a unique use case, a particularly challenging problem you solved with ChatGPT, or simply your thoughts on how it has impacted your work, your contributions to this discussion are appreciated.
And in the meantime, if you don't have any story to share yet, maybe have a look, for inspiration, at this recent blog post by Jacob Beningo: "3 Tips for using ChatGPT for Embedded Software".
Well, as much as I'm in awe of the thing in general (a machine that takes natural-language descriptive sentences and turns them into code), I couldn't help but laugh at its attempt of my humble request to write an "LED breathe" code for the Arduino. It even agreed with me, later on, that the code won't work as advertised, but was still unable to fix it. Here's the funny part (screenshot):
Haha, thanks for sharing. Like Jacob's third tip says: Don’t trust ChatGPT!
...later, I asked it to write Python code [unrelated to embedded] to solve a less trivial problem ("a function to sort a list of integers according to their absolute distance from the largest even number in the list"). The result looked really great, "Pythonic" and everything, except for a hidden issue - it didn't handle cases where the list contains no even numbers. When I pointed it out, ChatGPT started to apply "fixes" which only made things worse, each one either introducing a new error or breaking something that already worked.
I get an eerie feeling when chatting with ChatGPT as an "intelligence". It walks like a duck, it quacks like a duck, but it's not a duck.
While you recall and share your stories, here's my take on how I can be leveraged for embedded systems design, development and programming in several ways:
- Code Generation: ChatGPT can generate code snippets in multiple programming languages, which can be used in the implementation of embedded systems.
- Documentation: ChatGPT can provide information and explanations about various programming concepts, libraries, and APIs that are commonly used in embedded systems development.
- Problem Solving: ChatGPT can assist in resolving issues or answering questions related to embedded systems design and programming by providing relevant information, suggestions and best practices.
- Automated Testing: ChatGPT can assist in generating test cases and test plans for embedded systems, which can help to ensure that the system meets the specified requirements.
It's important to note that ChatGPT is not a standalone tool for embedded systems development, but rather a tool that can assist in various tasks and support the development process.
I think ChatGPT is better described as ML than AI.
It basically uses a massive reference of work to produce what it thinks is the correct answer to questions. It learns from what it 'reads' just like the rest of us. But it's only as good as it's input. It cannot think forward and come up with the next big thing. You could as it to "come up with a new and more efficeint way of doing X" but it could only uses existing work to do so, it can't do any forward thinking of it's own.
The scary part will come when ML and AI can think forward.
*EDIT* Spelling and grandma.
It is indeed very impressive, however it really sucks at designing electrical circuits such as Op Amp and Micro-controller interfacing. It had inputs going to outputs and such. When I bought this its attention it admitted it was wrong and redesigned the circuit in a different incorrect configuration. I told it , it did not understand this IC , please redesign with a different IC that you are familiar with. Sure enough it picked a different IC that was actually a good choice, however it the same types of errors. Writes a very nice advert, even songs, letters. Not too good at electronice.