← Back to context

Comment by senkora

3 hours ago

I think that it helps a lot to have a daily practice of using a language for small things.

In much that same way that many people do the daily wordle or crossword, I do the daily leetcode.

I flip a coin and solve it first in either C++ or Python, then re-write my solution in the other one.

Usually it takes me around 20 minutes to solve it in either language, and 5 minutes to re-solve it in either language.

Recently I decided to start learning emacs lisp. This is an imperative lisp dialect that’s pretty different from scheme, but I think that the particular language doesn’t matter much for this process. I could a bit biased because I do have prior experience with SML and scheme.

I started re-solving the problems a third time in emacs lisp. And I’m still learning but I’ve felt my comfort with the language increase over time, and I expect that if I continue doing this then I will eventually reach parity with C++ and Python.

Currently it takes me about 20 minutes to re-solve a problem in emacs lisp, because I usually have to read documentation and/or look up something new.

How did you arrive at C++ and Python? Yes I'm aware they have many structural and aesthetic differences, but why would you not choose a language with a different paradigm—functional, logical, even procedural, etc?

  • Good question. I chose them because they are the languages that I use professionally and would choose for technical interviews.

    Technical interviews are different enough from day-to-day work that I still find it valuable to practice in them.