Expertise and Software Development

Students are commonly given an outline of all data that they might collect, organized by “social history,” “previous illness,” and so on, suggesting that medical diagnosis is a process of collecting data in a fixed order. The results is that students sometimes collect information by rote, without thinking about hypotheses at all!

This is the excerpt from the “Nature of Expertise” book I’m reading.

This example shows how educational system is broken. The first two things EVERY educational system should do are:

  1. teach how to learn the subject.
  2. give fundamental understanding of the subject and provides a formalized mechanism how to apply knowledge on practice in the most efficient way.

In software development people often learn new technologies like CSS, RoR, Java, etc., without fundamental knowledge of the subject. As a result, they have impressive list of technologies in CV, but fail to write a simple algorithm or explain why this particular solution is best to this particular problem.

  • Average developer can solve problems using google.
  • Good developer knows patterns and some clever techniques.
  • Great developer can explain EVERY decision he makes.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s