Skip to main content
Added context. Copy edited (e.g. ref. <http://en.wiktionary.org/wiki/Wikipedia#Proper_noun>).
Source Link
  • All programming languages are basically the same.
  • Once you pick up one language well you can pick up any other language quickly and easily.
  • Languages are just tools, there's some overarching brain-magic that actually makes the software.

This is proved simply: Spend one week (or really any amount of time greater than a couple days) trying to learn the fundamentals of HaskellHaskell, PrologProlog, or AgdaAgda. You will soon after start hearing the old Sesame StreetSesame Street song play in your head "One of these things is not like the others...".

Furthermore, I would say the majority of cases where people claim they have or can learn such complex things as programming languages so quickly as a week, they are suffering from a bit of Dunning Kruger Effect, wikipediaWikipedia (emphasis mine):

I would refer people to this more experienced perview on the concept of learning to program by Peter Norvig: Learn to program in ten yearsLearn to program in ten years.

Surely, there is a set of overarching principles that will make all languages easy to learn!

Perhaps, but I would argue this set of principles is so large, that there will almost always be languages outside of your 1one-week reach. As you add new concepts to the list you're familiar and comfortable with, this list of languages outside your immediate reach may shrink, but I have a hard time believing it will ever go away. The list of conceptual computing approaches to things is so broad it's baffling, from concatenative languagesconcatenative languages to vector based languagesvector based languages to languages specializing in AIAI or meta-programming metaprogramming (or languages which exist entirely to support regexpsregular expressions).

After ten years you will be able to generally program, this. This means you can write somewhat decent code in some language or style of languages. So after 10 years you are ready to start tackling these countless broad cross-cutting concepts for the rest of your life, and short of being DijkstraEdsger W. Dijkstra, KnuthDonald Knuth or CarmackJohn D. Carmack, you're not going to get to all of them.

  • All programming languages are basically the same
  • Once you pick up one language well you can pick up any other language quickly and easily
  • Languages are just tools, there's some overarching brain-magic that actually makes the software

This is proved simply: Spend one week (or really any amount of time greater than a couple days) trying to learn the fundamentals of Haskell, Prolog, or Agda. You will soon after start hearing the old Sesame Street song play in your head "One of these things is not like the others...".

Furthermore I would say the majority of cases where people claim they have or can learn such complex things as programming languages so quickly as a week, they are suffering from a bit of Dunning Kruger Effect, wikipedia (emphasis mine):

I would refer people to this more experienced perview on the concept of learning to program by Peter Norvig: Learn to program in ten years

Surely there is a set of overarching principles that will make all languages easy to learn!

Perhaps, but I would argue this set of principles is so large, there will almost always be languages outside of your 1-week reach. As you add new concepts to the list you're familiar and comfortable with this list of languages outside your immediate reach may shrink, but I have a hard time believing it will ever go away. The list of conceptual computing approaches to things is so broad it's baffling, from concatenative languages to vector based languages to languages specializing in AI or meta-programming (or languages which exist entirely to support regexps).

After ten years you will be able to generally program, this means you can write somewhat decent code in some language or style of languages. So after 10 years you are ready to start tackling these countless broad cross-cutting concepts for the rest of your life, and short of being Dijkstra, Knuth or Carmack, you're not going to get to all of them.

  • All programming languages are basically the same.
  • Once you pick up one language well you can pick up any other language quickly and easily.
  • Languages are just tools, there's some overarching brain-magic that actually makes the software.

This is proved simply: Spend one week (or really any amount of time greater than a couple days) trying to learn the fundamentals of Haskell, Prolog, or Agda. You will soon after start hearing the old Sesame Street song play in your head "One of these things is not like the others...".

Furthermore, I would say the majority of cases where people claim they have or can learn such complex things as programming languages so quickly as a week, they are suffering from a bit of Dunning Kruger Effect, Wikipedia (emphasis mine):

I would refer people to this more experienced perview on the concept of learning to program by Peter Norvig: Learn to program in ten years.

Surely, there is a set of overarching principles that will make all languages easy to learn!

Perhaps, but I would argue this set of principles is so large that there will almost always be languages outside of your one-week reach. As you add new concepts to the list you're familiar and comfortable with, this list of languages outside your immediate reach may shrink, but I have a hard time believing it will ever go away. The list of conceptual computing approaches to things is so broad it's baffling, from concatenative languages to vector based languages to languages specializing in AI or metaprogramming (or languages which exist entirely to support regular expressions).

After ten years you will be able to generally program. This means you can write somewhat decent code in some language or style of languages. So after 10 years you are ready to start tackling these countless broad cross-cutting concepts for the rest of your life, and short of being Edsger W. Dijkstra, Donald Knuth or John D. Carmack, you're not going to get to all of them.

added 153 characters in body
Source Link
Jimmy Hoffa
  • 16.2k
  • 3
  • 71
  • 81

Don't worry about meeting some ridiculous concept of "skill" so commonly heard in such statements like:

Don't worry about meeting some ridiculous concept of "skill" so commonly heard in such statements like:

Perhaps, but I would argue this set of principles is so large, there will almost always be languages outside of your 1-week reach. As you add new concepts to the list you're familiar and comfortable with this list of languages outside your immediate reach may shrink, but I have a hard time believing it will ever go away. The list of conceptual computing approaches to things is so broad it's baffling, from concatenative languages to vector based languages to languages specializing in AI or meta-programming (or languages which exist entirely to support regexps).

Don't worry about meeting some ridiculous concept of "skill" so commonly heard in such statements like:

Perhaps, but I would argue this set of principles is so large, there will almost always be languages outside of your 1-week reach. As you add new concepts to the list you're familiar and comfortable with this list of languages outside your immediate reach may shrink, but I have a hard time believing it will ever go away. The list of conceptual computing approaches to things is so broad it's baffling, from concatenative languages to vector based languages to languages specializing in AI or meta-programming.

Don't worry about meeting some ridiculous concept of "skill" so commonly heard in such statements like:

Perhaps, but I would argue this set of principles is so large, there will almost always be languages outside of your 1-week reach. As you add new concepts to the list you're familiar and comfortable with this list of languages outside your immediate reach may shrink, but I have a hard time believing it will ever go away. The list of conceptual computing approaches to things is so broad it's baffling, from concatenative languages to vector based languages to languages specializing in AI or meta-programming (or languages which exist entirely to support regexps).

deleted 3 characters in body
Source Link
user4828
user4828

Don't worry about meeting some ridiculous concept of "skill" so commonly heard in such statements like:

  • All programming languages are basically the same
  • Once you pick up one language well you can pick up any other language quickly and easily
  • Languages are just tools, there's some overarching brain-magic that actually makes the software

These statements are all based on a flawed premise and betray a lack of experience across a broader spectrum of programming languages. They are very common statements and strongly believed by a great swath of programmers, I won't dispute that, but I will dispute their accuracy.

This is proved simply: Spend one week (or really any amount of time greater than a couple days) trying to learn the fundamentals of Haskell, Prolog, or Agda. You will soon after start hearing the old Sesame Street song play in your head "One of these things is not like the others...".

As it turns out, there is a whole swath of programming languages, techniques, and approaches which are so foreign from what 95% of us do or have ever done. Many are completely unaware that any of these other concepts even exist, which is fine and these concepts aren't necessary to be an employed and even effective programmer.

But the fact remains: These techniques and approaches do exist, they are good for many different things and can be very useful, but they are not just like what you're used to and people cannot simply pick them up with an afternoon of fiddling.

Furthermore I would say the majority of cases where people claim they have or can learn such complex things as programming languages so quickly as a week, they are suffering from a bit of Dunning Kruger Effect, wikipedia (emphasis mine):

The Dunning–Kruger effect is a cognitive bias in which unskilled individuals suffer from illusory superiority, mistakenly rating their ability much higher than average. This bias is attributed to a metacognitive inability of the unskilled to recognize their mistakes.

I would refer people to this more experienced perview on the concept of learning to program by Charles PetzoldPeter Norvig: Learn to program in ten years

Researchers (Bloom (1985), Bryan & Harter (1899), Hayes (1989), Simmon & Chase (1973)) have shown it takes about ten years to develop expertise in any of a wide variety of areas, including chess playing, music composition, telegraph operation, painting, piano playing, swimming, tennis, and research in neuropsychology and topology. The key is deliberative practice: not just doing it again and again, but challenging yourself with a task that is just beyond your current ability, trying it, analyzing your performance while and after doing it, and correcting any mistakes. Then repeat. And repeat again.


Surely there is a set of overarching principles that will make all languages easy to learn!

Perhaps, but I would argue this set of principles is so large, there will almost always be languages outside of your 1-week reach. As you add new concepts to the list you're familiar and comfortable with this list of languages outside your immediate reach may shrink, but I have a hard time believing it will ever go away. The list of conceptual computing approaches to things is so broad it's baffling, from concatenative languages to vector based languages to languages specializing in AI or meta-programming.

After ten years you will be able to generally program, this means you can write somewhat decent code in some language or style of languages. So after 10 years you are ready to start tackling these countless broad cross-cutting concepts for the rest of your life, and short of being Dijkstra, Knuth or Carmack, you're not going to get to all of them.

Don't worry about meeting some ridiculous concept of "skill" so commonly heard in such statements like:

  • All programming languages are basically the same
  • Once you pick up one language well you can pick up any other language quickly and easily
  • Languages are just tools, there's some overarching brain-magic that actually makes the software

These statements are all based on a flawed premise and betray a lack of experience across a broader spectrum of programming languages. They are very common statements and strongly believed by a great swath of programmers, I won't dispute that, but I will dispute their accuracy.

This is proved simply: Spend one week (or really any amount of time greater than a couple days) trying to learn the fundamentals of Haskell, Prolog, or Agda. You will soon after start hearing the old Sesame Street song play in your head "One of these things is not like the others...".

As it turns out, there is a whole swath of programming languages, techniques, and approaches which are so foreign from what 95% of us do or have ever done. Many are completely unaware that any of these other concepts even exist, which is fine and these concepts aren't necessary to be an employed and even effective programmer.

But the fact remains: These techniques and approaches do exist, they are good for many different things and can be very useful, but they are not just like what you're used to and people cannot simply pick them up with an afternoon of fiddling.

Furthermore I would say the majority of cases where people claim they have or can learn such complex things as programming languages so quickly as a week, they are suffering from a bit of Dunning Kruger Effect, wikipedia (emphasis mine):

The Dunning–Kruger effect is a cognitive bias in which unskilled individuals suffer from illusory superiority, mistakenly rating their ability much higher than average. This bias is attributed to a metacognitive inability of the unskilled to recognize their mistakes.

I would refer people to this more experienced perview on the concept of learning to program by Charles Petzold: Learn to program in ten years

Researchers (Bloom (1985), Bryan & Harter (1899), Hayes (1989), Simmon & Chase (1973)) have shown it takes about ten years to develop expertise in any of a wide variety of areas, including chess playing, music composition, telegraph operation, painting, piano playing, swimming, tennis, and research in neuropsychology and topology. The key is deliberative practice: not just doing it again and again, but challenging yourself with a task that is just beyond your current ability, trying it, analyzing your performance while and after doing it, and correcting any mistakes. Then repeat. And repeat again.


Surely there is a set of overarching principles that will make all languages easy to learn!

Perhaps, but I would argue this set of principles is so large, there will almost always be languages outside of your 1-week reach. As you add new concepts to the list you're familiar and comfortable with this list of languages outside your immediate reach may shrink, but I have a hard time believing it will ever go away. The list of conceptual computing approaches to things is so broad it's baffling, from concatenative languages to vector based languages to languages specializing in AI or meta-programming.

After ten years you will be able to generally program, this means you can write somewhat decent code in some language or style of languages. So after 10 years you are ready to start tackling these countless broad cross-cutting concepts for the rest of your life, and short of being Dijkstra, Knuth or Carmack, you're not going to get to all of them.

Don't worry about meeting some ridiculous concept of "skill" so commonly heard in such statements like:

  • All programming languages are basically the same
  • Once you pick up one language well you can pick up any other language quickly and easily
  • Languages are just tools, there's some overarching brain-magic that actually makes the software

These statements are all based on a flawed premise and betray a lack of experience across a broader spectrum of programming languages. They are very common statements and strongly believed by a great swath of programmers, I won't dispute that, but I will dispute their accuracy.

This is proved simply: Spend one week (or really any amount of time greater than a couple days) trying to learn the fundamentals of Haskell, Prolog, or Agda. You will soon after start hearing the old Sesame Street song play in your head "One of these things is not like the others...".

As it turns out, there is a whole swath of programming languages, techniques, and approaches which are so foreign from what 95% of us do or have ever done. Many are completely unaware that any of these other concepts even exist, which is fine and these concepts aren't necessary to be an employed and even effective programmer.

But the fact remains: These techniques and approaches do exist, they are good for many different things and can be very useful, but they are not just like what you're used to and people cannot simply pick them up with an afternoon of fiddling.

Furthermore I would say the majority of cases where people claim they have or can learn such complex things as programming languages so quickly as a week, they are suffering from a bit of Dunning Kruger Effect, wikipedia (emphasis mine):

The Dunning–Kruger effect is a cognitive bias in which unskilled individuals suffer from illusory superiority, mistakenly rating their ability much higher than average. This bias is attributed to a metacognitive inability of the unskilled to recognize their mistakes.

I would refer people to this more experienced perview on the concept of learning to program by Peter Norvig: Learn to program in ten years

Researchers (Bloom (1985), Bryan & Harter (1899), Hayes (1989), Simmon & Chase (1973)) have shown it takes about ten years to develop expertise in any of a wide variety of areas, including chess playing, music composition, telegraph operation, painting, piano playing, swimming, tennis, and research in neuropsychology and topology. The key is deliberative practice: not just doing it again and again, but challenging yourself with a task that is just beyond your current ability, trying it, analyzing your performance while and after doing it, and correcting any mistakes. Then repeat. And repeat again.


Surely there is a set of overarching principles that will make all languages easy to learn!

Perhaps, but I would argue this set of principles is so large, there will almost always be languages outside of your 1-week reach. As you add new concepts to the list you're familiar and comfortable with this list of languages outside your immediate reach may shrink, but I have a hard time believing it will ever go away. The list of conceptual computing approaches to things is so broad it's baffling, from concatenative languages to vector based languages to languages specializing in AI or meta-programming.

After ten years you will be able to generally program, this means you can write somewhat decent code in some language or style of languages. So after 10 years you are ready to start tackling these countless broad cross-cutting concepts for the rest of your life, and short of being Dijkstra, Knuth or Carmack, you're not going to get to all of them.

deleted 22 characters in body
Source Link
Jimmy Hoffa
  • 16.2k
  • 3
  • 71
  • 81
Loading
added 986 characters in body
Source Link
Jimmy Hoffa
  • 16.2k
  • 3
  • 71
  • 81
Loading
Source Link
Jimmy Hoffa
  • 16.2k
  • 3
  • 71
  • 81
Loading