this post was submitted on 22 Nov 2023
126 points (90.4% liked)
Technology
59030 readers
4914 users here now
This is a most excellent place for technology news and articles.
Our Rules
- Follow the lemmy.world rules.
- Only tech related content.
- Be excellent to each another!
- Mod approved content bots can post up to 10 articles per day.
- Threads asking for personal tech support may be deleted.
- Politics threads may be removed.
- No memes allowed as posts, OK to post as comments.
- Only approved bots from the list below, to ask if your bot can be added please contact us.
- Check for duplicates before posting, duplicates may be removed
Approved Bots
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
When using any new language or framework I can get up and running very quickly.
Used to take time to read the intro docs and then start digging around trying to find the features I need. Now I can straight ask it how to do certain things, what is supported and the best practises.
If I see a block of code I don't understand I can ask it to explain and it will write out line by line what it's doing. No more looking for articles with similar constructs or patterns.
It's amazing at breaking down complex SQL.
Many tedious refactoring tasks can be done by it.
Creating mappers between classes is very good because it can easily pickup matching properties through context if types and names don't match.
Generating class from a db table and vice versa.
If you have a specific problem to solve rather than googling around for other solutions you can ask it for existing methods. This can save days or more of discovery and trial and error.
It's really good generating test cases based on a method.
Recently I implemented a C# IDictionary with change tracking built in. I pasted the code in, it analysed it and pointed out a bug then wrote all the tests for the change tracking.
It did better than I thought it would. Covering lots of chains of actions. Which again found a bug.
It's fairly good at optimising code as well.
As for the mistakes you should be able to spot them and ask it to correct. If it does something invalid tell it that and it will correct.
You have to treat it like a conversation not just ask it questions.
Like Google you have to learn how to use it correctly.
We also have bing enterprise which uses search results and sources its answer. So I can look at the actual web result and read through.
The hallucination thing is basically a meme at this point by people that haven't really used it properly.
When I google an issue I quickly get a list of possible solutions with other developers commenting on them with corrections. People can often upvote and downvote answers to indicate if they work or not and if they stop working.
With ai I get a single source of information without the equivalent to peer review. The answer may be out of date and it may misunderstand my request. It may also make the same mistake I am making that I would have caught with a quick googling.
The ai may be able to make boilerplate code occasionally without too much rework, but boilerplate code is not that hard to make already.
The AI is massively more expensive than a search engine and I have not seen any indication that will change soon. This is the biggest problem in my mind. I don't ever expect to have to pay for google. I expect in the future the ai will need to be paid for somehow and I have a feeling they will have to charge too much to justify the use of AI for software development work.
AI has plenty of good uses, but I do not believe software development is the winner. Block chain for instance was massively useful for git repositories, but not useful for many of the crazy things companies attempted to use it for.
If you use bing search AI it sources its answers. It basically does what you would do when looking through sources and at ratings. But when you find the info you want you can click the link it used to generate it.
It's also free I believe.
Right now AI like that is heavily subsidized by investors. My concern with AIs feasibility is that training is so expensive that it won't be able to stay free. Remember we can only stop ai training if the AI topic is no longer developing. Also if the AI can source its answer with a link, did it provide me with a new service that is better than a search engine?
Yes because you have your answer and further reading if needed.
Rather than having to read through search results and figure out which were relevant.