Reflection on Maintaining a Toy C++ Project
A few years ago, for a course on Computational Geometry, my team made a program aiming for a stain-glass effect using Voronoi Diagrams. To quickly explain:
Voronoi Diagrams show the regions which are closest to each point. e.g. for 2 points, you’d bisect the space between them. – By analogy, each ‘point’ would be pizza-delivery, and each region would [...]
Thoughts on JRPGs
My friends told me the PlayStation Vita is a weaboo’s console. While I’d say Sony have badly mismanaged the console, focussing instead on their PS4, one advantage is a decent catalogue of JRPGs available. (Since the Vita is portable, you can play through these on the bus or the train or whatever). So far, my experience in JRPGs consists of [...]
Brief Thoughts on Purpose of Writing, Arguing
There’re two kinds of argument-posts: preaching to the choir, or convincing the doubtful. I came across this remark on a blogpost, & it’s kindof interesting, because does the second kind actually exist?
(The above remark was followed by “so don’t use these words when describing your opponent”; essentially, a call for civility, which is an interesting topic in itself). [...]
Recommendation: Rick and Morty
“What? It’s way existential.” – Cher, describing Ren & Stimpy, Clueless This is a strong,weak recommendation for Rick and Morty.
It’s not completely outstanding/amazing; but where it is, it’s great, and when it’s not it’s still not bad. (Overall, the start of Season 2 is much stronger than the rest). Without spoilers Rick & Morty (R&M) is a cartoon, [...]
Reflection on Haskell Programming
With my free time lately I’ve been tinkering on a Haskell project of mine.
Depending on which side of the 80-20 rule you look at, I’d say I’m “about 20% done”. I love many things about Haskell, but, I didn’t have any proper pet projects written in Haskell.
– The impetus to a Haskell project, I guess, is [...]
Organising Things
From the wisdom I’ve picked up so far:
Computer Science is about managing complexity.
Programming is about breaking larger, complex problems down into smaller, solveable problems. (Which involves Naming, Abstracting, Composing).
The best program is no program; second to that, the best program is a small a program as possible.
When coming up with a data-structure/algorithm [...]
Kudos to the Awesome Lists
I’ve a wariness for programming-languages/etc. which are hyped by the mainstream programmer community. – Computers suck, programming languages suck; the best code is no code, etc.; & much of the “hey this is cool” often comes from folk without the experience to say with authority that something is cool.
(This post argues that the ‘elites’ are the one who [...]
Why Use Functional Programming Features?
I was asked in an interview “what advantages are there to coding in a functional style?”.
I’d use ‘functional’ a bit more loosely than “everything pure, monads, etc.”; I’m happy with modern language idioms like pattern matching.
– I’d say the best reason is it makes explicit dangerous things which are implicit in procedural, blub language code.
Elm, Rust, and Learning a Language
Elm and Rust are two programming languages I’m excited about (in the sense of, “wow it’d be cool to use these”). Elm is a Haskell-inspired language for client-side web development; with a philosophical emphasis at making Functional Programming usable/accessible. – In a talk from March, “Let’s be mainstream”, Evan Czaplicki compares JavaScript (easy to write, hard to maintain) to ML [...]
Review of The Righteous Mind
I’ve been a big fan of Jonathan Haidt since seeing his 2013 Boyarsky Lecture, in which he explains his Moral Foundations Theory. – It’s compelling as showing how conservatives can hold morality differently than the social-justice crowd holds it. I finally got around to reading the actual book, rather than just picking up tidbits from various articles, podcasts and videos.