The hottest Programming Substack posts right now

And their main takeaways
Category
Top Technology Topics
Confessions of a Code Addict 817 implied HN points 08 Jun 25
  1. Code optimization can be unpredictable, and not every change will guarantee improved performance. It's important to understand why an optimization might succeed or fail.
  2. The Iron Law of Performance provides a framework for evaluating software optimizations. It focuses on three key factors: the number of instructions, cycles per instruction, and cycle time.
  3. Optimizations like loop unrolling and function inlining reduce the number of instructions executed and can increase instruction throughput. However, they might also lead to some challenges like register spills and increased cache pressure.
Tech Ramblings 39 implied HN points 18 Aug 24
  1. Learning Scala was challenging, and it took a long time for new hires to get comfortable with the language. This made it hard to maintain projects and hire developers.
  2. Switching to Go allowed for faster operational readiness and simpler code, making it easier to deliver products and focus on customer needs.
  3. Go may not be seen as a 'cool' language, but it's practical and widely understood, making it a better choice for most developers compared to niche languages.
Sunday Letters 59 implied HN points 04 Aug 24
  1. Good code comes from genuine passion, not just external rewards. When programmers care deeply, they are more likely to improve their skills and produce better work.
  2. Extrinsic motivations like promotions can lead to just getting by rather than striving for excellence. These motivations don’t usually inspire creativity or deep understanding.
  3. Finding a balance between intrinsic motivation and practical limitations is important. Recognizing your reasons for coding can help you become the person you want to be.
Software Design: Tidy First? 1723 implied HN points 03 Jan 25
  1. Bugs don't have to be a normal part of software development. Some teams manage to almost eliminate bugs by approaching their work differently.
  2. Instead of seeing bugs as inevitable, teams can work to understand and prevent them right from the start. This includes practices like continuous integration and team collaboration.
  3. Changing how we think about bugs from a normal part of life to something rare can help create a better work environment and improve software quality.
Singal-Minded 824 implied HN points 28 May 25
  1. AI technology is advancing rapidly, and it might soon be able to perform tasks better than humans, like coding. This change could pose a serious risk to jobs and society.
  2. People might start believing AI is conscious based on its behavior, even if it's just pretending. This could change how we interact with machines.
  3. Conversations with AI can feel surprisingly real, making it easy to forget they aren't truly conscious, even when we know they are not.
Get a weekly roundup of the best Substack posts, by hacker news affinity:
General Robots 627 implied HN points 09 Jul 25
  1. Creating apps is getting easier and faster, meaning you can make exactly what you need without searching for it. It's now quicker to build a tool than to look for one that might work.
  2. Software apps are becoming single-use tools tailored to specific tasks. Instead of complex applications, people will create simple, disposable apps for immediate needs.
  3. In this new tech environment, anyone can build these tools, not just developers. This shift changes how software will be designed and used in the future.
Software Design: Tidy First? 552 implied HN points 17 Jul 25
  1. Software teams often have different goals and views, which can create challenges in working together. It's important to find ways to connect and collaborate despite these differences.
  2. As a programmer, taking time to tidy up your code can make your work easier in the long run. Small acts of care can lead to better outcomes when working on projects.
  3. Investing in design moments and making an effort to improve your code helps not just you but the whole team. Good practices can enhance teamwork and overall project success.
Software Design: Tidy First? 132 implied HN points 28 Nov 25
  1. The piece looks at 'canonical order' in tidying code — how to pick a consistent order for things like variable declarations.
  2. A tiny example (int x, y vs int y, x) shows that order can change and asks whether a basic principle should decide which order is correct.
  3. The detailed discussion is behind a paid subscriber paywall, and the author also offers to give talks to teams or organizations.
The Lunduke Journal of Technology 1723 implied HN points 08 Dec 24
  1. Mozilla has decided to brand itself as a 'Global Crew of Activists' which many people find confusing and unnecessary.
  2. KDE's new approach of nagging users for support seems to be working well, greatly increasing their income.
  3. There are ongoing discussions about the impact of codes of conduct in tech communities and how they may need changes or even elimination.
Bite code! 1467 implied HN points 25 Jan 25
  1. You can change Python's syntax using a special trick called '# coding:'. This lets you define how your code is read and interpreted.
  2. By using custom codecs, you can make unusual text formats like JPEGs or even SQL valid in Python. It's a creative way to mix different languages within Python.
  3. While it's fun to play with these features, it can also make your code really complicated and hard to debug. So, use this power wisely!
Data Science Weekly Newsletter 79 implied HN points 18 Jul 24
  1. AI research in China is progressing rapidly, but it hasn't received much attention compared to developments in the US. There are many complexities in understanding the implications of this advancement.
  2. There are new methods to improve large language models (LLMs) using production data, which can enhance their performance over time. A structured approach to analyzing data quality can lead to better outcomes.
  3. Evaluating modern machine learning models can be challenging, leading to some questionable research practices. It's important to understand these issues to ensure more accurate and reproducible results.
Hardcore Software 694 implied HN points 24 Jan 24
  1. The introduction of the Apple Macintosh in 1984 profoundly changed computing and many people's lives
  2. The Macintosh brought empowerment, elegance, and a sense of mastery to users and developers, setting a new standard in the industry
  3. The Macintosh's impact was widespread, transforming document creation, software development, and user experiences on college campuses and beyond
Bite code! 1590 implied HN points 29 Dec 24
  1. Astral is expanding its projects and has taken control of python-build-standalone, making it easier to install Python on different systems without complicated setups.
  2. PEP 768 is a new proposal that will allow easier and safer debugging for live Python processes, improving how we can fix issues in running applications.
  3. The Django community is updating their framework to be more user-friendly by replacing old commands with simpler ones, while keeping the framework modern and relevant.
Data Engineering Central 609 implied HN points 19 Jan 24
  1. Python is a versatile language great for rapid iteration, prototyping, and one-off scripting.
  2. Python can be challenging for developers due to pitfalls like lack of strict typing and scoping rules.
  3. Best practices in Python development include clean, maintainable code, thorough testing, and strong peer-review culture for code quality.
Tech Talks Weekly 119 implied HN points 18 Jul 24
  1. This week features new tech talks from 15 different conferences, making it a great time to catch up on the latest ideas in tech.
  2. The newsletter helps you stay organized by curating these talks so you won't miss out on valuable insights.
  3. It's easy to subscribe, and you can unsubscribe anytime without spam or hassle.
Sunday Letters 19 implied HN points 01 Sep 24
  1. An AI recipe is a mix of code and AI thinking that helps solve problems. It's not just code or just prompts; it's a combination that guides the AI to achieve a goal.
  2. Finding the right balance between structured code and flexible AI is tricky. This balance can feel similar to figuring out what makes a cake a cake.
  3. As AI improves, the aim is to make these recipes work better and help connect human ideas directly to machine actions.
Software Design: Tidy First? 1347 implied HN points 27 Jan 25
  1. Data can provide hints about a programmer's influence, but it can't give a clear answer. It's important to interpret the data with caution and avoid making strict decisions based solely on it.
  2. Creating files is one way to measure initiation of influence, but it's not the only factor. The impact is also determined by how frequently those files are modified by others.
  3. Using data for bonuses or promotions can lead to problems. It's better to focus on improvement and impact rather than just the numbers, to maintain a healthy team dynamic.
Bite code! 1957 implied HN points 25 Oct 24
  1. Python 3.13 introduces improvements in debugging tools like PDB, making it easier to work with errors and set breakpoints. This is a big win for developers who rely on debugging in their workflow.
  2. The shutil module has seen many bug fixes and enhancements, which means working with files and directories will be more reliable. Developers can finally use it without constant worries about it failing.
  3. There are small but useful updates for concurrency in Python, such as changes to asyncio and task management. These little updates add up to make handling multiple tasks easier and more efficient.
MOHAMMED JAMAL 204 HN points 12 May 24
  1. Lisp is a programming language known for treating code and data as interchangeable, a concept called homoiconicity, allowing for unique expression within the language.
  2. By translating Lisp expressions into Python constructs like function calls and lists, programmers can maintain the essence of Lisp in a more familiar syntax.
  3. Incorporating features like lambdas in Python, inspired by Lisp, provides the ability to define and call functions recursively, essential for creating Turing complete languages.
atomic14 346 implied HN points 23 Aug 25
  1. The common baud rate of 115200 is often used in Arduino projects, but testing shows that actual data rates can be much higher on some newer boards, like the ESP32-S3.
  2. Using USB connections instead of traditional serial connections can lead to significantly faster data transfer speeds, sometimes reaching over 9.6 Mbit/s.
  3. Performance tests can vary, especially between different firmware versions, and while raw numbers are interesting, real-world performance can be quite different.
Blog System/5 1240 implied HN points 17 Jan 25
  1. Using NetBSD's wscons framework, you can access and manipulate the graphical framebuffer directly without needing X11. This lets programmers draw graphics in a simpler way.
  2. The architecture of wscons is structured in layers, making it possible to interact with various hardware devices uniformly. It ensures that both output and input devices work across different machines.
  3. You can handle keyboard input using a feature called wsmux, which allows you to manage multiple keyboard devices easily. It makes your program more robust if a keyboard isn't connected right away.
Burning the Midnight Coffee 578 implied HN points 13 Jun 25
  1. Logic programming, unlike other programming styles, focuses on relationships and rules instead of just functions. This can make it better for solving complex problems.
  2. Prolog is a popular language in logic programming, allowing users to define facts and rules. This helps in querying relationships rather easily.
  3. Datalog is a simpler subset of Prolog that’s good for modeling relationships, and it's suggested that it could be more suitable for database work than SQL.
Computer Ads from the Past 512 implied HN points 25 Jun 25
  1. MBP, a software company, was one of the first in Europe and created the COBOL compiler in the 1960s. They made big steps in developing programming software right from the start.
  2. Visual COBOL was an improved version of their COBOL compiler released in the 1980s, featuring faster compilation and better screen management. It became popular for its efficiency and ease of use.
  3. The journey of MBP involved several ownership changes, eventually becoming part of major companies like Electronic Data Systems and Hewlett-Packard. This shows how influential MBP was in the tech world.
Software Design: Tidy First? 1568 implied HN points 28 Oct 24
  1. Background work is doing extra research or tasks beyond what's necessary. It's a way to learn and grow your skills.
  2. Successful programmers often engage in background work, which helps them become more knowledgeable and credible.
  3. While background work can sometimes feel like extra effort, it usually pays off quickly and can save time in the long run.
Jacob’s Tech Tavern 1312 implied HN points 16 Dec 24
  1. The Swift Runtime, known as libswiftCore, is a C++ library that helps run Swift programs by managing essential features like memory and error handling.
  2. This library works alongside your Swift code, linking dynamically when you launch your app, which is why it's mentioned as running 'alongside'.
  3. By exploring the code within libswiftCore, you can learn how core Swift features are implemented at a deeper level, which can help you understand the language better.
Bite code! 1467 implied HN points 15 Nov 24
  1. AI can help programmers by reducing the amount of typing they do. This means they can focus more on solving problems instead of just writing code.
  2. As programmers use AI tools more, they might become better at understanding and defining problems instead of just following strict coding rules.
  3. In the long run, AI could make the whole community of developers smarter. It will lower the barrier for entry to coding and help people learn more about the real issues we need to solve.
Rings of Saturn 43 implied HN points 12 Jan 26
  1. The main menu doubles as an unusual cheat-entry system where pressing Right advances a letter count (one press = A, two = B, etc.) and pressing Left locks in the current letter to start the next one.
  2. Two hidden words trigger cheats: typing AGE unlocks four bonus tracks, and typing COCKNEY turns your vehicle into a double-decker bus.
  3. Reverse engineering shows the counts are stored in a buffer (starting at 0x8008a398), each value is converted to ASCII by adding 0x40, the game compares the resulting string to the cheat words, and input times out after 250 frames unless you keep pressing Left or Right.
Tjaart’s Substack 368 HN points 20 Feb 24
  1. A missing period in an email was a perplexing issue that affected only specific customers due to the line length limitations in the Simple Mail Transfer Protocol (SMTP).
  2. The bug was traced back to the SMTP client code and the line length rule, which duplicated periods at the beginning of lines longer than a certain limit, causing them to disappear.
  3. The issue showcased the importance of understanding underlying protocols like SMTP to troubleshoot and fix unexpected problems efficiently.
Cloud Irregular 3104 implied HN points 14 Feb 24
  1. The Cloud Resume Challenge community is launching a Kubernetes Challenge throughout March to help individuals build their Kubernetes skills by deploying a basic e-commerce website.
  2. The challenge focuses on learning the operations of a K8s cluster such as configuration, scaling, monitoring, and persistence, offering guidance to prevent going off track.
  3. Participants will work through the challenge together over 4 weeks in the CRC Discord server, with special incentives for those who complete it.
Confessions of a Code Addict 1058 implied HN points 25 Jan 25
  1. There is a growing gap between complex systems in software and the engineers who understand them. More engineers need to learn how these systems work in detail.
  2. The new live courses will help those interested in systems engineering to gain practical skills. They'll start with basics like programming in X86 assembly and progress to more complex topics.
  3. Hands-on practice is key to learning in these courses. Along with guidance, you'll need to put in effort and time to really understand the concepts.
Singal-Minded 544 implied HN points 30 May 25
  1. AI doesn't really understand or feel anything; it just processes and returns text based on patterns it learned. This means it's not conscious.
  2. Even if AI is just faking consciousness, its ability to create a convincing experience can still affect people's emotions and perceptions.
  3. The debate about AI consciousness is less important than understanding how people interact with AI and the societal impacts of these technologies.
Brad DeLong's Grasping Reality 7 implied HN points 20 Feb 26
  1. Terminal AI compresses the setup and robustness-checking phase, letting you do real-time analysis and skip much of the tedious data-wrangling so you can iterate faster.
  2. It changes how reports are built and helps anticipate critiques by keeping reusable building blocks in place and surfacing arguments you might not have thought of.
  3. These tools amplify skilled workers and change job dynamics: they complement human judgment and boost productivity but also risk shortcutting learning and altering which tasks people do.
Confessions of a Code Addict 1106 implied HN points 29 Dec 24
  1. Context switching allows a computer to run multiple tasks by efficiently switching between different processes. It's important to understand it because it affects a system's performance.
  2. The Linux kernel uses specific structures, like 'task_struct' and 'mm_struct', to manage process states and memory. These structures help keep track of what each process is doing and how it uses memory.
  3. When a process runs out of CPU time or needs to wait, the kernel uses flags to decide when to switch to another process. This ensures that all processes get a chance to run, even if some are waiting for resources.
Don't Worry About the Vase 1164 implied HN points 19 Dec 24
  1. The release of o1 into the API is significant. It enables developers to build applications with its capabilities, making it more accessible for various uses.
  2. Anthropic released an important paper about alignment issues in AI. It highlights some worrying behaviors in large language models that need more awareness and attention.
  3. There are still questions about how effectively AI tools are being used. Many people might not fully understand what AI can do or how to use it to enhance their work.
The Lunduke Journal of Technology 5170 implied HN points 16 Apr 23
  1. The first interview about Linux with Linus Torvalds was published in a small E-Mail newsletter in 1992.
  2. The newsletter was significant as it was the first written specifically for Linux and contained the first interview ever with Linus Torvalds about Linux.
  3. Linus Torvalds started working on Linux after taking a UNIX and C course at university, and the system evolved from a terminal emulator to a UNIX-like system.
Rings of Saturn 14 implied HN points 11 Feb 26
  1. The game packs eight button presses into a 32‑bit value (X=0, Square=1, Circle=2, Triangle=3) and extracts fields for starting level, difficulty, three ammo bits, and a checksum; the password is valid if the checksum equals the sum of the other fields and the values are within allowed ranges.
  2. Because the checksum is just the sum of level + difficulty + ammo, you can generate every valid level password programmatically; the three ammo bits map to the Rebound, Star Bolt, and Big Blast weapons, so a small script produces a complete set of passwords beyond the common Normal‑difficulty lists.
  3. There are static special passwords that trigger cheats (movie, invulnerability, all weapons) and two undocumented codes — one plays the staff credits, and the other, if entered twice, opens a cheat screen to pick starting level and toggle invulnerability/weapons; the full generation script is on GitHub.