Information related to computer programming
Here’s a link to an article titled, Little’s Law- An insight on the relation between latency and throughput.
As a note to my future self: Take time to think!
Even at my advanced age, if I don’t think through an algorithm I can still waste an awful lot of time.
As an example I just started working on a complex algorithm for my Android football game based on the initial thoughts in my brain, and came to regret it. After recovering from that faux-pas I decided to write just a few simple notes like this to clarify my thoughts:
I spent some time last night reading the book, Practical Common Lisp. In all Lisp books you’ll read about S-expressions, but very few authors explain what they are. This image comes from this Wikipedia page, which states, “In computing, s-expressions (for “symbolic expression”) are a notation for nested list (tree-structured) data, invented for and popularized by the programming language Lisp, which uses them for source code as well as data. In the usual parenthesized syntax of Lisp, an s-expression is classically defined as a) an atom, or b) an expression of the form (x . y) where x and y are s-expressions.” See that link for more information about Lisp and S-expressions.
I’ve been interested in the Lisp programming language since I first learned about it, but in the books I’ve read about it, no author has explained the background of terms like
cdr, and S-expressions. Tonight I found this “History of Lisp” document, which explains the meaning of some of those names.
(If you’re really interested in those terms, this Wikipedia page describes them even more.)
“Perhaps the most important principle for the good algorithm designer is to refuse to be content.”
~ Alfred Aho
I was just reminded of Rubber Duck Debugging. From this Wikipedia link, “The name is a reference to a story in the book The Pragmatic Programmer in which a programmer would carry around a rubber duck and debug their code by forcing themselves to explain it, line-by-line, to the duck.” For me, my rubber duck is Albert Einstein.
“I’m not a great programmer; I’m just a good programmer with great habits.”
~ Kent Beck
“Besides a mathematical inclination, an exceptionally good mastery of one’s native tongue is the most vital asset of a competent programmer.”
~ Edsger Dijkstra
Chapters from The Handbook of Applied Cryptography are available from the publisher and authors as PDFs at this link.