LLMs can't self-correct in reasoning tasks, DeepMind study finds
A study by Google's DeepMind and the University of Illinois at Urbana-Champaign has found that self-correction in large language models (LLMs) isn't universally effective.
Topics /
The most popular blog posts about software engineering on Hacker News. 14,540 posts.
A study by Google's DeepMind and the University of Illinois at Urbana-Champaign has found that self-correction in large language models (LLMs) isn't universally effective.
There are various ways in software to handle error conditions. In C or Go, one returns error code. Other programming languages like C++ or Java prefer to throw exceptions. One benefit of using exceptions is that it keeps your code mostly clean since the error-handling code is often separate. It is debatable whether…
I’ve been programming for long enough to be righteously cantankerous about a lot of things. The list of languages, frameworks and libraries I’ve worked with professionally or on personal projects is too long to list – but it includes everything from C and assembly languages through C++, Pascal and Delphi, through Java…
Scala is a powerful programming language that can make certain small teams hyper-productive.
A brief example demonstrating my current frustrations with the Go programming language.
My previous entry has the amazingly interesting title "Blogging is hard". Gee, what a wuss, says the occasional passer-by. Gotta fix my image, fast. Think, think, think! OK, here's what I'm going to tell you: low-level programming is easy. Compared to higher-level programming, that is. I'm serious.
Bear with me, because some of these "lies" are going to feel obvious, or like unimportant trivia. In all honesty, that's not that far from the truth. However, I hope you'll let me try to build a detailed and fun illustration showing how something as mundane as email can break our expectations in surprising ways.
Portability and Robustness issues commonly found in shell scripts
" A picture is worth 10K words - but only those to describe the picture. Hardly any sets of 10K words can be adequately described with pictures."
I’ve been looking for a decent TSDB for years now. Took a shot at writing one in Lush using HDF5 (as others have done), but the experiments I did raised more questions than I got answers. I&#…
This weeks hottest new JS runtime.
Like many hackers, my first real programming language love was Lisp. Paul Graham, who inspired my own explorations of the language, is a particular advocate and has written quite a bit about Lisp a…
Ten rules for writing safety critical code, to facilitate analysis and increase software reliability
I was recently reminded of why I think it’s a bad idea to teach beginners C++. It’s a bad idea because it is an objective mess—albeit a beautiful, twisted, tragic, wondrous mess. Despite the current state of the community, this post is not a polemic against modern C++. This post is partly a follow-up on Simon Brand’s…
A common issue when writing tests for real-world software is how to deal with third-party dependencies. Let’s examine an old, but counter-intuitive principle.
I was talking with someone today that really really wanted the sqrtps to be used in some code they were writing. And because of a quirk with clang (still there as of clang 18.1.0), if you happened to use -ffast-math clang would butcher the use of the intrinsic. So for the code: __m128 test(const __m128 vec) { return…
I think by now everybody reading this will have seen how the new generation of Large Language Models like ChatGPT are able to produce somewhat useful code. Like any advance in software development—from IDEs to high-level languages—this has generated some discussion on the future employment prospects in our field.
Leif Singer, an engineer at Automattic, tells us about interviewing for a remote job at Automattic.
Productivity on every platform - a deep dive on the ways we're writing Swift code on Windows, and improving the developer experience along the way.
How much overhead should we expect from enabling integer overflow checks? Using a compiler flag or built-in intrinsics, we should be able to do the check with a conditional branch that branches based on the overflow flag that add and sub set. Code that looks like
Welcome to my blog, which was once a mailing list of the same name and is still generated by mail. Please reply via the "comment" links.
Rust is built around the concept of “zero cost abstraction”. The idea is that you can write human-friendly high level code and the compiler will give you for free performance at least as good as any optimized low level code you could have written yourself. With zero cost abstraction, you no longer have to trade off…
(Recap: I founded the curl project, I am still the lead developer and maintainer) When asking curl to get a URL it'll send the output to stdout by default. You can of course easily change this behavior with options or just using your shell's redirect feature, but without any option it'll spew it out to … Continue…
Whether I’m teaching new Pythonistas or long-time Python programmers, I frequently find that Python programmers underutilize multiple assignment....
Speculations and specifications. If you were a Winamp user back in the day, or curate an MP3 collection currently, you might recognize the humble ID3 tag. It is what the metadata in the MP3 file is made up of. First it was pretty limited in the version later dubbed ID3v1. Like any good 2.0 they added a ton more…
Starting a long-form history of Visual Basic on EvilGeniusLabs.ca. Chapter 1 covers the BASIC dynasty Microsoft had been running since 1975, the California developer Microsoft bought to put a face on it, and the launch pitch Bill Gates seeded in BYTE Magazine eighteen months before VB shipped. Six articles, focused on…