Top
Best
New

Posted by milanm081 1 day ago

Laws of Software Engineering(lawsofsoftwareengineering.com)
1098 points | 500 commentspage 3
dassh 1 day ago|
Calling them 'laws' is always a bit of a stretch. They are more like useful heuristics. The real engineering part is knowing exactly when to break them.
someguyiguess 1 day ago|
Especially since a lot of them are written in a tongue-in-cheek way. And many are contradictory.
fomosocial 3 hours ago||
Been in Software Engineering for over 2 years now and I'm only hearing most of these named laws for the first time. Am I cooked?
r0ze-at-hn 1 day ago||
Love the details sub pages. Over 20 years I collected a little list of specific laws or really observations (https://metamagic.substack.com/p/software-laws) and thought about turning each into specific detailed blog posts, but it has been more fun chatting with other engineers, showing the page and watch as they scan the list and inevitably tell me a great story. For example I could do a full writeup on the math behind this one, but it is way more fun hearing the stories about the trying and failing to get second re-writes for code.

9. Most software will get at most one major rewrite in its lifetime.

TheGRS 23 hours ago||
You know, I mention this stuff all the time in various meetings and discussions. I read a lot of stuff on Hacker News and just have years of accumulated knowledge from the various colleagues I've worked with. Its nice to have a little reference sheet.
sreitshamer 4 hours ago||
My favorite is "Software development isn't a code production activity, it's a knowledge acquisition activity."
g051051 4 hours ago||
> When I first started, I was enamored with technology and programming and computer science. I’m over it.

Wow, that is incredibly sad to hear. I'm 40+ years in, and still love all of that.

4dregress 21 hours ago||
I like to replace the bus factor with the Lottery Factor.

I actually had a college run over by a bus on the way to work in London, was very lucky and made a full recovery.

Head poking out under the main exit of the bus.

biscuits1 1 day ago||
Today, I was presented with Claude's decision to include numerous goto statements in a new implementation. I thought deeply about their manual removal; years of software laws went against what I saw. But then, I realized it wouldn't matter anymore.

Then I committed the code and let the second AI review it. It too had no problem with goto's.

Claude's Law: The code that is written by the agent is the most correct way to write it.

voiceofunreason 23 hours ago|
Render therefore unto Caesar the things which are Caesar's; and unto Claude the things that are Claude's.
asmodeuslucifer 22 hours ago||
I learned about Dunbar’s number

(~150) is the size of a community in which everyone knows each other’s identities and roles.

In anthropology class. You can ask someone to write down the name of everyone they can think of, real or fictional, live or dead and most people will not make it to 250.

Some individuals like professional gossip columnists or some politicians can remember as many as 1,000 people.

OkayPhysicist 18 hours ago|
Dunbar's number is largely psuedoscience. Dunbar just took the group size of gorillas, scaled up to humans based on brain size, and then published, without bothering with silly little details like actually testing human group sizes.
mojuba 1 day ago|
> Get it working correctly first, then make it fast, then make it pretty.

Or develop a skill to make it correct, fast and pretty in one or two approaches.

theandrewbailey 1 day ago||
Modern SaaS: make it "pretty", then make it work, then make it "pretty" again in the next release. Make fast? Never.
AussieWog93 1 day ago||
I recently had success with a problem I was having by basically doing the following:

- Write a correct, pretty implementation

- Beat Claude Code with a stick for 20 minutes until it generated a fragile, unmaintainable mess that still happened to produce the same result but in 300ms rather than 2500ms. (In this step, explicitly prompting it to test rather than just philosophising gets you really far)

- Pull across the concepts and timesaves from Claude's mess into the pretty code.

Seriously, these new models are actually really good at reasoning about performance and knowing alternative solutions or libraries that you might have only just discovered yourself.

mojuba 1 day ago||
However, a correct, pretty and fast solution may exist that neither of you have found yet.

But yes, the scope and breadth of their knowledge goes far beyond what a human brain can handle. How many relevant facts can you hold in your mind when solving a problem? 5? 12? An LLM can take thousands of relevant facts into account at the same time, and that's their superhuman ability.

More comments...