Skip navigation

Category Archives: Uncategorized

Mention freedom, and people think about political crusades. Anarchy and liberty. Protecting your own or giving it to others. But to me, freedom is all about choices- options. Infinite possibilities in the universe to choose from. Either none or all or some or one of them. Same Situation, Multiple Approaches.

Freedom holds the promise of self-actualization. To increase happiness through the options that life gives us. To improve ourselves with autonomy. And I feel that when life gives us challenges with many choices, it allows us to calibrate accordingly. When there are subtleties and nuances that can be used in a situation, we can then fine-tune our solutions to what they need to be. We avoid binary answers by seeking out shades of grey. By doing so, we become more competent and flexible problem-solvers. Freedom empowers us.

Ultimately, life really is about finessing difficult situations. And freedom allows for finesse.


Started listening to the Søren Kierkegaard course on Coursera tonight, taught by one Professor Jon Stewart from the University of Copenhagen. In the introductory video, Professor Stewart interestingly connects Kierkegaard’s alienation towards society and promulgation of subjectivism to the modern world, with our lives constantly changed by new technologies. He helpfully jumps into Kierkegaard’s use of irony in critique. Though he does not seem to be a native himself, Professor Stewart seems to pronounce the Great Dane’s name accurately – “k-yoohk-ard”, in a way that is almost like a fluid slurring. Almost like an eldritch, chthonic being from one of Lovecraft’s stories.

Still gold.

The first week focuses on Kierkegaard’s Socratic task – “The only analogy I have before me is Socrates.” – modeling himself after Socrates, as an enlightener (and a gadfly critic of contemporary thought). The biography characterizes Kierkegaard as a provocateur and a troll since his youth, demolishing the arguments of his peers, which nicely sets up his affinity for Socrates. The Greek philosopher is described as a ‘negative’ philosopher in that he did not present his own theses to advance, but rather operated by attacking the concepts of other thinkers. Kierkegaard utilized Socratic irony greatly in his work, but prior to the development of his own philosophy, he was fascinated by Socrates’ dialogues. Socrates would go around feigning ignorance in the presence of fellow philosophers, or in the case of Euthyphro, know-it-all blowhards who claimed moral superiority when they were simply dummies. By asking pointed questions, he was able to reveal that their intellectual finery were no more than the emperor’s new clothes. Though Socrates doesn’t present his own thesis or ideals through his trolling, Kierkegaard was still attracted to his philosophizing- instead of telling the reader what to think, his dialogues allows us to fill in the blanks through self-reflection.


The great wisdom of Socrates was that he was one self-aware to know that he knew nothing, unlike many supposed experts of his day. He had the true Rumsfeldian knowledge of knowing what he did not know. But I suspect with great wisdom comes less ignorance. He at least had a starter knowledge that made him versed enough in the subjects of ethics, piety, and so forth that allowed him to dissemble his victims’ arguments with lines of questioning. After all, a great cross-examiner in a court is not defined by ignorance, but rather a knowledge that masks itself in ignorance, that takes apart lies and alibis. Socratic irony is ironic because the one wielding it isn’t an ignoramus, but rather a cunning wit, undercover.

I wonder if we live in a world too drenched in irony. Socratic irony is but one manifestation of it.

What I’m reading now:

“Men have been killed in the United States in living memory for wearing a straw hat out of season.” – Hatless Jack: The President, the Fedora, and the History of an American Style by Neil Steinberg

1. Get into the habit of writing out code by hand. It doesn’t have to be good code- it might not even have to be code at all. Psuedocode, flow diagrams, even pictures are a good start. Get in the habit of designing the structure of your program in your head; conceptualizing programs (or even just a class, or a function) will allow you to better understand what you’re trying to accomplish, and really force you to ask yourself tough questions: does this logic make sense? Is there a better way? How do I do this again? For the latter, writing code out frees you from the tyranny of convenience: it forces you to remember basic concepts, making you less reliant on Stack Overflow or simply Googling for the answer. Not that convenience is inherently bad, but you want to maintain your own independent knowledge and ability. Try things out before you look for the right answer. It’s equivalent to learning a foreign language by immersion. It forces you to remember the syntax

Being able to write out code is especially helpful for CS courses with exams that ask you to program. If you’ve practiced scribbling out code, not only will be better able to recall concepts, you’ve also gained the ability to start writing statements without an IDE’s autofill doing that for you. (That is also why a text editor, particularly a command line Linux one, is preferable for some programmers. In fact, coding in Vim without internet on or documentation to check is pretty much the same thing as writing code out by hand, minus a bit of portability.) Start writing out code a lot on your own, and the blank page with only a function prototype at the top won’t look nearly as daunting anymore. Don’t be embarrassed on ashamed

Whether GitHub will really make tech interviews obsolete or not, a programmer needs to be able to think programmatically without a computer.

2. Never, ever, be afraid of looking something up for fear of looking foolish.