Catch up on stories from the past week (and beyond) at the Slashdot story archive

 



Forgot your password?
typodupeerror

Comment Stack Ranking? (Score 1) 164

if you're in a big supertanker of safety, which Microsoft was, then that safety is like an anesthetic. It's like taking antidepressants. The world just feels too comfortable.

I thought stack-ranking was supposed to make everyone feel uncomfortable to motivate them; but they did away with it recently due to complaints.

Perhaps being threatened by real doom (startup failure risk) has a different feel than doom created by the superficial ill-informed bullshit criteria of a PHB (Dilbertian) ranker. The nature of real doom is relatively clear and knowable, whereas dealing a PHB is like trying to tame a chimp on LSD: too random to strategize around such that you grow tired of trying to guess.

Comment Re:Code I consider 'elegant'. (Score 2) 373

Some engineers consider code "elegant" if it's factored to the smallest possible form, which generally means all repetition possible is factored out.

But such code has at least two problems. First, is that it may not be easy for a good portion of developers to read and understand. Factoring out all possible duplication often results in a lot of indirection (reference levels), and indirection can slow down and complicate reading because you have lots of small parts referencing (using) lots of other small parts.

Second, future changes may not follow along the grain of the existing high factoring. The future patterns of change or similarity won't necessarily follow the past patterns. There are more "tight knots" to untangle in order to rework the code for a given change. Tight factoring means you have to do a lot of UN-factoring when you need to add changes that don't fit the existing factoring patterns.

A certain amount of duplication is probably the ideal. Both too much or too little factoring creates problems. It's the skilled developer that finds the Goldilocks range of factoring. Often only experience and familiarity with the domain can bring about that ability.

I've learned this the hard way: experience and past design mistakes, NOT because I am smarter. I do make it a personal mission to remember and learn from failures, though, both my own and others'.

Slashdot Top Deals

"Little else matters than to write good code." -- Karl Lehenbauer

Working...