The conversation

Lessons learnedExperience excerpt · English

I learned this in programming, but now I apply it on everything from motorcycle maintenance, home …

… I learned this in programming, but now I apply it on everything from motorcycle maintenance, home appliance repair to parenting. -- Often the easier way to fix a complex system is to pretend that it could be simpler and then reintroduce the complexity-inducing requirements. I had a professor who taught debugging as a whole another skill from programming and used to say "Most of programming is starting from an empty editor and debugging until your code works". The debugging "lab" in Java course (in the year 2000) was one of my transformational after-school classes - where I got a java program which fits within 2-3 pages of print code with a bug and was told to go find it in print for ~20 minutes, then given 40 minutes with a debugger instead.

Original discussionAsk HN: What trick of the trade took you too long to learn?670 source comments · at import
3

What was this responding to?

Parent context · original excerpt

UN

Every week for the last 3 months I’ve learned a new trick when it comes to getting whatever LLM I’m using at the time to produce better output. That’s my trade, but lots of HNers have more interesting trades than that. In my case, only recently I learned the value of getting an LLM to write and refine a plan.md architecture doc first, and for it to break that doc down into testable phases, and then to implement phase by phase. Seems obvious in hindsight. But it took too long to learn that that should be my approach. I had been going phase by phase myself- no overarching plan.md for the LLM. What Trick of the Trade took you too long to learn?

Full original

Community replies 0

No community replies yet. Add your perspective.

Replies from the source 3

Direct replies available in this import. Original-language excerpts.

TS

> And as a corollary, every complex system that works came from a simple system that works. "Do the simplest thing that works" is one of the few core architecture principles I stick my neck out for time and time again. Why write a simple function when you can spend a week accounting for every imagined corner case and implement modular expansion capabilities! Please... stop... I empathize with the debugger story. If you're super deep in a language it makes sense to know the debugger inside and out. But stdout is universal and I've never been a specific language developer rather than being able to jump into whatever is needed.

Full original
MR

Not always true. For example, if you work on your bike's brake, you should make sure the work is correct and well done. You dont want it stops working when cruising at 60mph.

Full original
SP

I'll add, from Soul of a New Machine, "Not everything worth doing is worth doing well."

Full original
Continue on Hacker News

Respect different perspectives. Share concrete experiences.

Sign in to post, reply, repost, and quote.