Remix.run Logo
jumploops 11 hours ago

“John Ousterhout [..] argues that good code is:

- Simple and easy to understand

- Easy to modify”

In my career at fast-moving startups (scaling seed to series C), I’ve come to the same conclusion:

> Simple is robust

I’m sure my former teams were sick of me saying it, but I’ve found myself repeating this mantra to the LLMs.

Agentic tools will happily build anything you want, the key is knowing what you want!

jfreds 10 hours ago | parent | next [-]

My issue with this is that a simple design can set you up for failure if you don’t foresee and account for future requirements.

Every abstraction adds some complexity. So maybe the PoC skips all abstractions. Then we need to add a variant to something. Well, a single if/else is simpler than an abstract base class with two concrete implementations. Adding the 3rd as another if clause is simpler than refactoring all of them to an ABC structure. And so on.

“Simple” is relative. Investing in a little complexity now can save your ass later. Weighing this decision takes skill and experience

miningape 7 hours ago | parent | next [-]

I think what matters more than the abstract class vs if statement dichotomy, is how well something maps the problem domain/data structures and flows.

Sure maybe its fast to write that simple if statement, but if it doesn't capture the deeper problem you'll just keep running head first into edge cases - whereas if you're modelling the problem in a good way it comes as a natural extension/interaction in the code with very little tweaking _and_ it covers all edge cases in a clean way.

blanched 6 hours ago | parent | prev [-]

I’m aware I’m about to be “that guy”, but I really like how Rich Hickey’s “Simple Made Easy” clarifies simplicity here. In that model, what you’re describing is easy, not simple.

mememememememo 10 hours ago | parent | prev [-]

Yes. Which is why "I generated X lines of code" "I used a billion tokens this month" sound stupid to me.

Like I used 100 gallons of petrol this month and 10 kilos of rabbit feed!

sph 10 hours ago | parent [-]

People use stupid metrics like those because more useful ones, like "productivity" or "robustness" are pretty much impossible to objectively measure.