Agreed. This is pure architectural thinking: you hold the ground truth, enforce the strict IAM boundaries, and outsource the mud-playing to the LLM. Mindless 'vibe coding' without this structural discipline is just tittytainment. The job is contract validation now, not typing.
HN user
acmerfight
Guilty as charged. As a non-native speaker, I used an LLM to compile my original thoughts into fluent English.
But notice the irony: I used AI exactly as I advocate. It handled the horizontal spread (syntax), while I rigorously enforced the vertical depth (the architectural logic). The 'taste' is entirely mine.
Thank you to Arainach and cableshaft for engaging with the actual substance. Dismissing a core argument because you pattern-matched an 'em-dash' is exactly the shallow thinking this post warns about.
This is a phenomenal example of exactly what I am advocating.
Notice you didn't ask the AI to 'just design a stereo pedal for me.' You interrogated it, reasoned about netlists, and forced the concepts into your brain through intense friction. That is pure deep work.
Ironically, what you described is exactly using AI to help with deep work. You do the heavy lifting (reading), and use AI strictly for stateless verification and testing your mental model. That is the ideal synergy.
Spot on. The ultimate bottleneck is no longer generation; it's verification.
If you don't intrinsically know what 'right' looks like, AI simply helps you build the wrong thing faster. This internal compass is exactly what I meant by 'taste' in the original post.
Pure 'vibe coding' is essentially technical 'tittytainment'. Using AI for the horizontal spread while you enforce vertical architectural depth is true deep work.
We actually don't disagree at all—you are perfectly illustrating my point.
Applying strict epistemic discipline (Popper, Russell) to resolve ambiguity and accelerate actual practice is the very definition of deep work. You aren't using AI as a shortcut to skip thinking; you're using it as a Socratic sparring partner to deepen it. This is exactly the paradigm shift I'm advocating for.
I burn through $5,000 a month in API tokens. I am the last person to romanticize manual toil.
The issue is the difference between using AI for shallow outsourcing ('summarize this') and deep cognitive work ('stress-test this architecture'). AI should be a cognitive amplifier for much harder problems, not a shortcut to bypass critical thinking entirely.
Cloudflare’s dual 2025 outages weren't just about a missed Lua nil-check or a sloppy Rust unwrap(). They were the inevitable cost of "hotwiring" production to bypass ancient, broken test harnesses during a security panic.
This article argues that Cloudflare's "Homogeneous Edge" architecture—where every node runs every service for extreme efficiency—has created an infinite failure domain. When commercial constraints demand tight coupling and zero physical isolation, a single "Killswitch" logic error doesn't just fail safe; it becomes a global detonator. A deep dive into how technical debt and architectural gambling eventually cash their checks.
Lately, many people have been talking about AI for Software Engineering (AI4SE), hoping to find the next big startup opportunity there.
My view is straightforward: this path leads nowhere.
Most of these ventures make a fundamental mistake — they try to use a technical hammer to hit a management nail.
That’s doomed from the start.
Many SRE and operations teams predominantly address operational risks through “additional approval processes” — whether for database schema changes, service deployments, client releases, etc.
TikTok and the Scope of the Communications Act of 1934 Are Different The Communications Act of 1934 primarily targets traditional media (e.g., television, radio), while TikTok is an algorithm-driven social media platform where content is user-generated. Its operational model is fundamentally different from traditional media. Directly equating the two is unreasonable and does not align with the realities of the modern digital economy.
Foreign Ownership Does Not Equate to a National Security Threat There is no publicly available evidence proving that TikTok has provided U.S. user data to a foreign government. TikTok has already implemented localization measures for data storage and operations (e.g., the "Texas Project"). In contrast, many U.S. tech companies (e.g., Facebook, Google) have faced scrutiny over data privacy issues but have not been restricted due to foreign ownership. Restricting TikTok solely based on "foreign ownership" lacks factual support.
Economic Impact: TikTok Is a Lifeline for Millions TikTok provides a critical source of income for over 5 million small businesses and 1.5 million creators in the U.S. According to 2023 data, TikTok contributed $24.2 billion to the U.S. economy and supported at least 300,000 jobs. Restricting TikTok would directly threaten the livelihoods of these individuals, causing significant harm to social stability and economic vitality.
A More Reasonable Solution Is Strengthening Regulation, Not an Outright Ban Rather than imposing a blanket restriction on TikTok, it would be more effective to strengthen data privacy protections through legislation, ensuring that all social media platforms (whether foreign or domestic) adhere to the same security standards. For example, TikTok could be required to further localize data storage and undergo independent audits. This approach would safeguard national security while avoiding unnecessary harm to users and creators.
You're absolutely right that if someone decides to create a DSL, it needs to be done right. The issue, however, is that most DSLs fail to meet this standard. Extensibility and leveraging existing tooling, as you suggest, are indeed critical factors, but they are rarely prioritized in the ad-hoc creation of niche DSLs.
The IBM JCL example perfectly illustrates the pitfalls of poorly managed DSL evolution. What starts as a seemingly simple and declarative tool often spirals into unintended complexity, becoming a "monster" that burdens users instead of empowering them. This is precisely why the original argument advocates for extreme caution: many developers underestimate these risks and overestimate their ability to design robust, maintainable DSLs.
In most cases, a well-designed library or framework offers a far safer and more effective solution, achieving the desired goals without introducing the long-term costs and complexities of an ill-conceived DSL.
Thank you for sharing your thoughts. You’ve highlighted some great examples of DSLs that have become essential tools in software development, like SQL and Markdown. However, the success of these DSLs often lies in their universality, broad adoption, and well-thought-out design. These qualities make them more than just isolated islands—they are foundational tools backed by strong community support and decades of refinement.
The point of the original argument is not to dismiss DSLs entirely but to caution against the hasty creation of niche, poorly designed DSLs that solve narrow problems at the cost of maintainability, steep learning curves, and a lack of long-term viability. The challenge is that many developers underestimate the complexity of language design and overestimate the benefits of introducing a new DSL for a specific use case.
In conclusion, the advice is not to avoid DSLs altogether but to approach them with caution, ensuring they address real needs without creating undue burden on the team. Thoughtful design and a strong host language can certainly help, but they don’t eliminate the broader risks associated with creating domain-specific abstractions.
Thank you for your feedback! I've removed the image to make the content clearer. Please let me know if there’s anything else I can improve.
If you're thinking without writing, you only think you're thinking.
An algorithm can be regarded as consisting of a logic component, which specifies the knowledge to be used in solving problems, and a control component, which determines the problem-solving strategies by means of which that knowledge is used. The logic component determines the meaning of the algorithm whereas the control component only affects its efficiency. The efficiency of an algorithm can often be improved by improving the control component without changing the logic of the algorithm. We argue that computer programs would be more often correct and more easily improved and modified if their logic and control aspects were identified and separated in the program text.
Large language models (LLMs) have revolutionized a wide range of domains. In particular, LLMs have been developed as agents to interact with the world and handle various tasks. With the continuous advancement of LLM techniques, LLM agents are set to be the upcoming breakthrough in AI, and they are going to transform the future of our daily life with the support of intelligent task automation and personalization. In this course, we will first discuss fundamental concepts that are essential for LLM agents, including the foundation of LLMs, essential LLM abilities required for task automation, as well as infrastructures for agent development. We will also cover representative agent applications, including code generation, robotics, web automation, medical applications, and scientific discovery. Meanwhile, we will discuss limitations and potential risks of current LLM agents, and share insights into directions for further improvement. Specifically, this course will include the following topics:Foundation of LLMs Reasoning Planning, tool use LLM agent infrastructure Retrieval-augmented generation Code generation, data science Multimodal agents, robotics Evaluation and benchmarking on agent applications Privacy, safety and ethics Human-agent interaction, personalization, alignment Multi-agent collaboration
Most good engineers I worked with had a common trait - they just happen to know a lot of random stuff, facts, and practices at surface level. The conversations with them were always fun and insightful as they kept telling and sharing interesting nuggets. Although they were not an expert in those, they did have a primitive idea and understanding of what they were talking about.
There’s a classic dilemma: If your mother and your wife were falling into the water, whom would you save first?
The best solution to this problem is: I wouldn’t let them fall into the water in the first place. This is what we call ‘prevention is better than cure.’