Showing posts with label Core Concepts. Show all posts
Showing posts with label Core Concepts. Show all posts

Sunday, March 20, 2016

On Knowing

A concept that I will like to internalize is the following:

Know everything about what you say you know. Know a little bit about everything else.

Here are some case studies where this concept comes in handy:

  1. On prioritizing.
    You can devote more time and energy to learning the things you know very deeply. For other things, you can do more leisurely reading and learning.

  2. On working on a project.
    For the parts you know how to build well, you will create a very high caliber product. For parts you don't know well, you will know enough to hire an expert or re-use an existing library that is proven to work well.

  3. On interviews.
    People will often ask you what you know. If you say you know a certain thing, and then they find out that your knowledge in the subject is shallow, you look like a fool. For subjects that you say you don't know, having a general idea is usually sufficient to show that you aren't a one-trick pony. Having this mix of deep and shallow knowledge should prove to the interviewer that you are capable of learning any subject, as it is needed.

Sunday, March 15, 2015

Your Life's Work

Everyday you are working on your life's work.

And your life's work doth not wait. Whether you are aware of it or not, you are contributing to your life's work now. It's a sobering truth.

Whether you are building something new, learning about functional programming or browsing social media, it is all part of your life's work.

The trick is, some things seem to accumulate whereas others just evaporate.

As programmers (and humans in general) we have a chance to build things of substance. I hope my life's work amounts to something of great substance.