Hacker News new | ask | show | jobs
by joe_the_user 2014 days ago
Maybe it's because they usually aren't reproducible, or maybe it's just because the way most programmers write code doesn't matter to me, because most programmers aren't aware of what is possible on the frontier.

I have to say that sounds remarkably arrogant.

I think a significant portion of programmers are very smart people who work hard at producing good, generalizable, understandable effective code. PL designer would do well to pay attention to them (not that I know whether or not other PL designers have the parent's attitude. I hope they don't).

2 comments

> I think a significant portion of programmers are very smart people who work hard at producing good, generalizable, understandable effective code.

To be clear, I don't disagree with this, but it's not relevant. You wouldn't expect a typical mechanical engineer to have research-level mastery of theoretical physics, even if they can build impressive, reliable machines. It's not an insult to the engineer.

You wouldn't expect a typical mechanical engineer to have research-level mastery of theoretical physics, even if they can build impressive, reliable machines.

I'm trying to figure out the world you're imagining here. I can see several possibilities.

A) The programming language research you are doing will eventually yield some programming practice that will be so advanced that the programming that happening now, before this change, will turn out too be irrelevant. Thus you are paying no attention to what's happening.

B) The programming language research you are doing will never intersect with the world of the ordinary programmer. You will prove interesting theories to say things about mathematical objects that happen to be programming languages, working on a track forever parallel to what ordinary programmers are doing.

C) Like a theoretical physicist, you're producing insights about physical reality on a much lower level than the average in engineer. If your insights yield an advance in understanding, you won't be the one to turn into a practical tool. That would be the work of the many layers applied-sciences practitioners that sit between the physicist and the engineer.

Choice C seems at least logical. But I'd claim that programming language designers considering things this way is not plausible. The world of programming abstractions just doesn't have enough layers that you're going to get anything like a pure theoretical science without relation ordinary human step-by-step problem solving. Moreover, we know layers of applied scientists don't exist between the ordinary programmer and the language designer. If you want your stuff to be relevant, you'll need to sell it yourself, unlike the theoretical physicist.

I spent few years along the most average developers you could find. They didn't care about their work outside their work hours, didn't care about anything other than Java and EJB and their hourly rate. I am okay with it, it's not like a less able programmer/gamer/cook/... would anger me, but these people indeed are distinct, and there is a lot of them
> significant portion of programmers are very smart people who work hard at producing good, generalizable, understandable effective code

Yet this is very different from what GP is talking about: knowledge about the research frontier. Which is OK, programmer and researcher are two different jobs, and much like it isn’t expected from the scientist to write good code (or write code at all), the programmer job is not to be knowledgeable about the state of art in PL theory.