TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Ask HN: “Enabling” vs. “Restricting” in Programming

6 pointsby Dan42almost 2 years ago
A long time ago, around the time Joel Spolsky was the top programming blog, I read an article that split programming languages (or was it programmers?) between &quot;enabling&quot; and &quot;restricting&quot;. Or they may have used slightly different words.<p>But basically, &quot;enabling&quot; languages are about giving a lot of power to the programmer and trusting him to use it right. Today it&#x27;s exemplified by the Rails doctrine of &quot;provide sharp knives&quot; except the article I read predated that manifesto by a few years.<p>And &quot;restricting&quot; languages were about protecting the programmer from himself, enforcing strict interfaces, strict private&#x2F;public, and in general restricting&#x2F;guiding the programmer to the way that is considered correct design by the language. IIRC this was exemplified by Java.<p>Has anyone read or remember something like that?

3 comments

frou_dhalmost 2 years ago
Sounds like Steve Yegge&#x27;s wheelhouse. Possibly this post <a href="https:&#x2F;&#x2F;gist.github.com&#x2F;cornchz&#x2F;3313150" rel="nofollow noreferrer">https:&#x2F;&#x2F;gist.github.com&#x2F;cornchz&#x2F;3313150</a> but there are plenty more <a href="https:&#x2F;&#x2F;ratfactor.com&#x2F;yeggedex" rel="nofollow noreferrer">https:&#x2F;&#x2F;ratfactor.com&#x2F;yeggedex</a>
评论 #36395312 未加载
Jtsummersalmost 2 years ago
<a href="https:&#x2F;&#x2F;wiki.c2.com&#x2F;?BondageAndDisciplineLanguage" rel="nofollow noreferrer">https:&#x2F;&#x2F;wiki.c2.com&#x2F;?BondageAndDisciplineLanguage</a><p>Closest I know of, but many people have probably written on this topic.
评论 #36395258 未加载
al2o3cralmost 2 years ago
There was this talk (&quot;Capability vs Sustainability&quot;) from 2012:<p><a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=NftT6HWFgq0">https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=NftT6HWFgq0</a><p>Very nearly exactly what you&#x27;re describing; not sure if it&#x27;s the same thing you were thinking of, or just part of a similar thought-wave at the time.