Live data from Hacker News

A non-standard book list for software developers

mihaiolteanu.me

81–90 of 112 posts

Re: A non-standard book list for software developers

#81

Good books but still quite standard. Spivak’s is standard on initial calculus courses at universities. If you really wanted non-standard but relevant authors I would add Feyerabend, Kuhn, Kahneman, Dostoyevsky, Borges, Taleb, Montaigne, Popper, Hofstadter, Don Norman, Alexandrescu. Add something about systems of representation by Kierkegaard or Nietzche or some interpretations by later authors.

Hoftstadter is fairly near standard isn't it? Assuming you mean actually reading GEB and not The Mind's I or I Am A Strange Loop . Not generally a course text but very common reading among CS/AI students. Some of whom even read all the way to the end instead of just pretending to! The book I would most recommend software developers read is Mindstorms: Children, Computers and Powerful Ideas by Seymour Papert. It's a l…

Remember reading Papert's Mindstorms book and being reminded of the fun you can have with computers, these powerful modelling machines - as Douglas Adams put it too

Re: A non-standard book list for software developers

#82

I don’t understand why old programmers are so much fascinated by lisp. If it would have been good it would have survived today.

But it has survived - Clojure, a JVM lisp dialect, flourishes!

Feel part of what makes lisp fascinating is its simplicity and power leading to its place as a test bed for ideas such as continuations and Kanren, a new logic programming language.

Re: A non-standard book list for software developers

#83

I can't comment on the compsci books (they do seem interesting), but I can comment on the mathematical ones where I have expertise: - Using Euclid is manifestly a really bad idea, since his way of formalizing geometry is not the sharpest. Mathematical logic has developed since Euclid published his book thousands of years ago and Euclidean geometry has been re-formalized a number of times to really flesh out the theor…

I am a big proponent of first principles learning but learning a completely adjacent field to be a better developer is like in fhe Karate Kid when he learns to block punches by sanding a deck. Even if the skill transfers its massively less efficient than just practicing the thing you want to get good at.

Re: A non-standard book list for software developers

#84

I would suggest Essense of Decision ( https://en.wikipedia.org/wiki/Essence_of_Decision ) Because when you're working on a larger software team, or even a small software team within a larger company, understanding how organizations actually understand the world and make decisions is invaluable. A person can drive themself crazy expecting groups of people to behave like a monolithic rational agent.

Thanks, with the recent HN ruminations on late Von Neumann strategies this is refreshing.

Re: A non-standard book list for software developers

#85
post #49
post #43

Earlier quoted context omitted.

>Studying calculus in particular makes little sens for compsci. yeah it makes little sense if you don't want to be able to write programs that solve the world's major problems so if you are content with writing cat picture apps, skip calculus

We were just talking about this over lunch yesterday (software engineers at a medical device company). I won’t dismiss calculus, but it was generally agreed that linear algebra and statistics were most important, at least for what we’re doing.

Must be something common about medical devices. When not doing linear algebra and stats, I need optimizations from the wheelhouses of linear programming and numerical analysis.

Re: A non-standard book list for software developers

#86

I can't comment on the compsci books (they do seem interesting), but I can comment on the mathematical ones where I have expertise: - Using Euclid is manifestly a really bad idea, since his way of formalizing geometry is not the sharpest. Mathematical logic has developed since Euclid published his book thousands of years ago and Euclidean geometry has been re-formalized a number of times to really flesh out the theor…

i think if one were looking for a more philosophical approach to calculus, apostol would be a good choice.

i personally have found calculus to be useful in a fair number of domains i find interesting. anywhere computers process signals from the physical world, it tends to show up, whether it be sound, vision, or other signal types entirely.

not to say that graph theory and abstract algebra aren't important (especially in things like discrete algorithms or cryptography) just rather if you want to build systems that interface with the physical world, you need the original language of physics as well as all the linear systems and sampling theory to go with it.

Re: A non-standard book list for software developers

#88
post #28

On the note of Euclid's Elements, I took a short course on Plato's "Theory of Forms" when I was just learning to really code and it's what helped OOP click in my head. It's fun when totally random subjects help you get an insight into one another. https://en.wikipedia.org/wiki/Theory_of_forms

[deleted]

Re: A non-standard book list for software developers

#90

I don’t understand why old programmers are so much fascinated by lisp. If it would have been good it would have survived today.

1. It's all their feeble minds can understand. (This is the answer you were fishing for, yes?)

2. Too many MIT grads were brainwashed by SICP until MIT sensibly switched to Python in 2009. (Unfortunately they probably still secretly teach SICP somewhere.)

3. Lisp/Scheme readily implements "Maxwell's equations of software" which are believed to be important or useful for some reason.

/s

Post reply on HN