notes | journal | about | archive | sourcehut | github

February 6, 2019

I've been absolutely flooded with school. It's stimulating, exciting, and exhausting.

My biggest frustration right now is the "Data Structures and Algorithms" class I'm taking – it's really just a Java 201 class. While I'm happy to be learning new data structures, it's frustrating to be stuck writing Java for problems that I could solve in minutes with Common Lisp. One "gentle" month of CL has spoiled me.

The problem with Java – and, if you believe its proponents, the most important feature – is its extensive structure. I'm reserving judgement on the language for now. After all, it's not like I'm maintaining thousands of lines of code in a production system with other software engineers. But there's no denying that the structure gets in the way of debugging. In Common Lisp, with the REPL (or even without it) I can instantly test a function without worrying about every detail of its location, permissions, and the rest of the program. In Java, you have to constantly modify and manipulate a "driver" class to test stuff. The textbook also reads annoyingly like an ad. I'm 12 chapters in, do they really think I need to be reminded every two pages of the benefits of Java and the Object-Oriented Paradigm??

I learned basic LaTex for "Foundations of Computer Science". It wasn't complicated – I probably should have known it already.

I've started using Zotero for storing research. The learning curve is tiny, and it offers features that my other "knowledge bases" don't have. My other pkbs being org-mode for Emacs and the Anki srs.

My "Ethics in the Computer Age" class is also great. It's stimulating, hard, and probably will be the subject of another log.

Here's what I've been reading

Is Philosophy Stupid?

Red Rising by Pierce Brown

Why the Unskilled Are Unaware: Further Explorations of (Absent) Self-Insight Among the Incompetent

Is veganism for women?