3 ms·
> As we push toward computer science for all, the design of our languages should be based increasingly on evidence. This is too broad a goal. Novices shouldn’t
by erik_seaberg 5y ago
> As we push toward computer science for all, the design of our languages should be based increasingly on evidence.
This is too broad a goal. Novices shouldn’t be required to learn expert languages, and experts shouldn’t be limited to using only novice-friendly languages. Because we who specialize will spend most of our careers as experts, it’s crucial that we still have clear, concise, powerful languages available even though they require more investment that wouldn’t pay off for everyone else.
- Qem 5y agoI think the fundamental problem here is everybody must be a novice before they become a expert, and probably the only languages were the experts outnumber novices are the dead or dying ones. Most of time we are beginner-level at everything. If a language is too expert-focused, and hard to onboard people into, it has a hard time growing organically.
- Jensson 5y agoExperts tend to outnumber the novices, since you are only a novice for a few years and then you are an expert for the rest of your career. People have all these strange notions in programming just because it is a growing field, but if you look around it isn't like novice teachers outnumber experiences ones, or novice doctors are all that common etc.
- Qem 5y agoYou must take into account attrition rate. Not every novice becomes a expert. Say in a given field, on average, each person spends 10% of their time as novice, and 90% as expert. If only one in ten novices actually grow into experts, in the overall population most man-hours are spent at beginner level. Novice teachers don't outnumber experiences ones, but students surely outnumber teachers, by a large margin. In a market that still didn't achieve steady state, like programming, some of the people that didn't made it through may end jumping ship to more beginner-friendly alternatives, that end with more people, more libraries, more learning resources, et cetera. Eventually the network effects will cause even the expert ponder over switching sides to get better libraries. Think how Python ate Perl lunch, despite the swiss-army chainsaw power of the later. Today there's probably much more Perl programmers than in the 90s, but yet we can't deny the language lost mindshare.