It's been a while since I've posted. We moved across the country, from Newport to DC, and I start in a new position tomorrow. Maybe I'll get some time to read/write, maybe not.
The most noteworthy book I read recently was The Unix Philosophy by Mike Gancarz (looks like this is an updated version, I read the one with the 1995 copyright date). It's a great read, especially for philosopher-programmer types. If you prefer the tldr approach, wikipedia's short summary pulled from the first chapter and the second answer in this thread, taken from Classic Shell Scripting, a great example of the Unix philosophy at work.
Showing posts with label systems. Show all posts
Showing posts with label systems. Show all posts
Wednesday, January 12, 2011
Monday, May 5, 2008
on programming and process
Software development abounds with processes of course: we have processes for requirements engineering, requirements management, configuration management, design review, code review, test design, test review, and on and on. Massive process documents are written. Huge diagrams are drawn with dozens of boxes to try to encompass the complexity of the process, and still they are gross oversimplifications of what needs to happen. And yet in every one of these processes and diagrams there is a box which basically says "write the code", and ought to be subtitled "(and here a miracle occurs)". Because the process underneath that box is very simple: read the problem, think hard until a solution occurs to you, and then write down the solution. That is all we really know about it.Some of the comments on this post are interesting as well. Especially that coding is mostly about design. A good design can save a ton of coding and maintenance nightmares. There's another difficulty though in that when you're creating something completely new, you may not even know what you want yet. So there's a lot of prototyping in coding as well. And then your users start telling you what they want, and on it goes.
We don't know how we program.
Labels:
programming,
systems
Friday, May 2, 2008
on understanding and analysis (scribblings)
"pearls before swine! pearls before swine!"
"quack! quack!"
I waddle around flustered like the ugly duckling with ruffled feathers.
---
Contrary to how many think of it, stupidity is not related to intelligence. I rarely meet a stupid moron (in the technical sense of moron). We expect a moron to behave a certain way because of diminished capacities. We love him for his deficiencies because it's a trait of birth, not a trait of character. I only recognize stupidity as it shows itself in character. If you examine the ordinary use of expletives related to intelligence you'll probably find others who express similar sentiments.
I'd like to get this phrase into more common usage, "That's the stupidest genius I have ever met."
We're all subject to our environment and genetics so someone might say that sort of statement is unfair. For the sake of humanity, the stupid geniuses deserve blame.
---
Analysis is not the same as understanding. Understanding is when you try to reach through the text to get at the meaning in the person. Analysis is when you examine the text to determine its logical structure, strengths and flaws. Understanding is much more difficult and useful than analysis and it requires a much more subtle mind. Analysis is for the man who wants to become only a better thinker in a particular way, understanding is for the man who wants to become a better person.
Understanding and analysis are thoroughly at odds with one another. Only a rare individual in an exceptional situation will willingly undergo external analysis. Everyone loves to be understood. Analysis is like behavioristic educational methods: It's a useful tool but it is best used (i.e. used morally) when practiced on oneself.
We fool ourselves when we think we've found accuracy in either of these methods. The best thing we can get from understanding is better relationships, the best thing we get from analysis is personal clarity.
Analysis can clarify what you've got but understanding embraces imagination in such a way that it can move you forward.
4/30/2008
The true myth says, "you must change your life." (Rilke)
Equally, the myth which fails to continually communicate that message ceases to be true.
4/22/2008
the value of metaphysics
I use metaphysical systems to moderate my arguments. What I mean by this is that I think an argument holds more water if it can be described within a variety of metaphysical contexts. I slap on a few that I find in some part compelling and see if, when I reframe, a version of the argument can still stick. If so, there's usually something to it, if not, I try to at least rethink a bit before I go forward. This also shows me strengths and weaknesses in various systems. That being the case, I hope that most of my arguments could be accepted by a reasonable individual with whom I have metaphysical disagreements (I do think such a person exists, maybe even two!).
4/18/2008
When forced to choose between
"fatalistic bullshit" and "sentimentalist blather",
I'll take the foolishness over the falsity.
--
All men (I mean me) at times fall into the trap of speaking without thinking.
Labels:
metaphysics,
philosophy,
scribblings,
systems
Friday, April 25, 2008
programmers and philosphers
Do all programmers eventually become philosophers?
I came across that post recently. I think a knack for systems leads people in many directions. Interesting to read another programmer's perspective.
I came across that post recently. I think a knack for systems leads people in many directions. Interesting to read another programmer's perspective.
Labels:
philosophy,
programming,
systems
Subscribe to:
Posts (Atom)