Hacker News new | past | comments | ask | show | jobs | submit login

Let us say "clever" is problematic when "hard to understand": complex and unintuitive. (The best "clever" is simple and obvious).

The issue is whether it is sufficiently general to become a standard technique.

If so, you're right. Familiarity with it makes you "cleverer", as it becomes intuitive, and less complex (as you push details down into long-term memory).

But, in that case, IMHO, it's even cleverer to "turn over the detail to the machine", i.e. create an abstraction, to hide the detail.

> There need be no real danger of it ever becoming a drudge, for any processes that are quite mechanical may be turned over to the machine itself. https://wikiquote.org/wiki/Alan_Turing




> If so, you're right.

I'm not making any claim regarding the relation between clever and clear/understandable code. Just that writing clever code, however defined, doesn't expend much of a cleverness resource - if anything, it strengthens it.

That is, looking at each piece of clever code in isolation. If the original claim was meant more that a code base has a limit to how many clever tricks it can contain before it becomes unmaintainable, I'd be more inclined to agree.


Just that writing clever code, however defined, doesn't expend much of a cleverness resource - if anything, it strengthens it.

Walking strengthens the legs and increases endurance. However, no Roman Legionnaire would command his men, as if more marching would only increase capability, and they could therefore march forever and as much as they want. Instead, it's best to reserve the fast marches for when a goal is attainable which gives a tactical or strategic advantage.

There's only 24 hours a day to be clever, and there's only a limited number of hours per day a given person can muster the concentration to be clever.

That is, looking at each piece of clever code in isolation.

Which only applies to an isolated problem, as in a coding interview. In a programming project or a startup, it's more like a military campaign, where there will be many, many interrelated problems over many years.


I see, you're addressing whether cleverness is a limited resource.

Perhaps you're right, that practicing cleverness will make you cleverer.

But it still takes time and effort - perhaps those are the resources that are limited?




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: