I was largely paid for developing software during my career. This explains my impoverished publication record to some extent (50 refereed papers/presentations). In my last career position, I developed a large library of Java programs for implementing algorithms in the area of statistical causal reasoning (I should have said "SCR"). What I often did was to write an English description of the purpose of the method or class and include that in comments at the beginning. Then I would include the pseudocode or other description of each step of the algorithm also in comments. When Joe Ramsey took over this work I believe he said I had made it easy for him to understand my code. I know he said that my unit tests were excellent. That was because I used a well-documented and complex example to test the methods. I would then throw an exception if any important intervening variable was computed to have a value that was incorrect. FWIW.
Frank On Wed, Jan 27, 2021 at 12:16 PM Steve Smith <sasm...@swcp.com> wrote: > I am no longer an *effective* coder in the same sense Dave describes. > But that doesn't mean I can't read and write code in a number of languages > and idioms. But it does mean that nobody should pay me for that work > except insomuch as it is incidental to what I'm *really* doing for their > filthy lucre. It is very handy that I *can* read/write code across a > wide spectrum of languages/idioms, but far from acutely useful... If I had > to make a living doing it, I might be able to scrape enough rust off to be > useful with it in a few restricted contexts, and probably paid out at > roughly minimum wage, suggesting I would only take that kind of work in > lieu of pumping gas (nobody outside of NJ/OR/NZ) actually pumps gas for a > living anymore?! I could probably do better cutting firewood or as a > handyman or shade-tree mechanic. And in the latter two cases, my main > value would be triage/addressing of trivial problems followed by > prescribing one kind of specialist or another for the actual skilled labor > implied in many cases. > > I think that learning coding skills is something valuable to add to one's > toolbox, not unlike learning how to weld/solder/braze (minimally) or do > rough carpentry or learn the basics of fasteners and sealers (glue, nails, > screws, caulk, varnish, paint, oil, etc.) > > The open question here is perhaps how well it helps one learn to > communicate with humans (thus co-). I think it expands one's metaphorical > domains to work with, but it is more universally useful to describe a > linear set of logical instructions into something more familiar like a > Recipe or some colloquialism like "rinse... repeat" or navigational > instructions (how to get here from there) or assemble furniture (open the > box, inspect the contents, consider the final configuration, skim the > directions for unexpected dependencies, execute step 1, iterate through > numbered steps to final, VIOLA bookcase!) > > I find that *many* capable coders are NOT particularly capable > communicators. Among other things, their empathy is often stunted, > possibly by being too focused on *rigor* vs *clarity* in the sense of > GEPR/NST's discussion upthread. > > On the other hand, following Glen's conception of "self-programming" I > think the Mr. Myagi/Karate Kid example is a good one. We learn a set of > actions, independent of understanding final purpose, ultimately developing > a set of universal skills which are equally good for waxing a car or > brushing aside an opponent's strike. I don't know that Myagi nor the KK > were coders by the definition here... but in a fairly strong sense, that > was what was going on. Similarly, a lot of conventional rote learning is > like that.... the way we learn our times-tables, or diagram sentences, > study for an anatomy or biology exam. > > My $.02 (inflation adjusted) > > - Steve > On 1/27/21 11:45 AM, Prof David West wrote: > > Nick, > > I am no longer a good programmer/coder, although once ... Really good > coders like Glen, Marcus, Jon ... on the list, will probably disagree with > me; but: > > Coding/programming is not communication — if restricted to coder ----> > machine -----> machine action. The machine is nothing more than the > embodiment of a mathematical abstraction and coding is analogous to > rearranging the symbols in a mathematical expression, such that, when > resolved, the expression yields different results. > > No boss says what you quoted, but few programmers have not had the > experience of "the damn machine keeps doing what I told it, instead of what > I want." > > But — a program has two audiences: the machine (no communication here) and > other programmers (tons of miscommunication here). This is what the > reference from Eric Smith talks about. There is an entire, usually ignored, > paradigm in computer science called "literate programming" — the most > prominent advocate, Donald Knuth. > > If one were skilled at literate programming, one would be communicating to > another programmer (or herself at a later point in time) all the knowledge > and meaning necessary for the latter to understand, modify, enhance, or > correct the program as needs be. *If possible* this would be a > communication skill worth developing — might lead to more precise and > accurate communication outside the world of the computer. > > *"If possible,"* is key. Many, starting with Peter Naur, would argue that > this kind of programmer-to=programmer communication is impossible because > the medium, the code plus any written documentation, is too impoverished to > communicate what needs to be communicated. In Naur's world, programming is > joint theory building — a theory of "an affair in the world and how the > program (addresses) it." Code and documentation represent maybe a tenth of > that theory, the remainder being in the heads of those who developed it. > > davew > > > On Wed, Jan 27, 2021, at 10:56 AM, thompnicks...@gmail.com wrote: > > This flies in the face of my belief that you coders know something about > life that we citizens need to know. I imagine coding to be like trying to > write an instruction to a person such that that person always does what you > want them to do. So, it is an act of communication in which the > communicatee is always right, no matter how idiotic may be it’s response. > No boss ever says to a coder, “Your code was brilliant but unfortunately > the machine didn’t understand you.” > > > > Am I right about any of that? > > > > Nick Thompson > > thompnicks...@gmail.com > > https://wordpress.clarku.edu/nthompson/ > > > > > *From:* Friam <friam-boun...@redfish.com> <friam-boun...@redfish.com> *On > Behalf Of *Prof David West > *Sent:* Wednesday, January 27, 2021 11:41 AM > *To:* friam@redfish.com > *Subject:* [FRIAM] coding versus music > > > > > For a while now there has been a huge push to teach kids how to code. > Ostensibly because it enhances skills like language, logic, and math; plus, > "computer literacy" is essential in a world filled with computers. > > > > A study at MIT suggests that coding skill is orthogonal to reading skill > and has little, if any, influence on development of logic/math skills. > > > > An article in the Journal of Neuroscience argues that if you want to > increase the "skills and brainpower" of kids you should teach them music. > > > > I came across this information peripherally and have not read the specific > research reported on. I *want* the reports to be accurate representation > of the research because it confirms long held biases against the value of > "computational thinking" and computer science as a fundamental knowledge > domain. > > > > dave west > - .... . -..-. . -. -.. -..-. .. ... -..-. .... . .-. . > FRIAM Applied Complexity Group listserv > Zoom Fridays 9:30a-12p Mtn GMT-6 bit.ly/virtualfriam > un/subscribe http://redfish.com/mailman/listinfo/friam_redfish.com > FRIAM-COMIC http://friam-comic.blogspot.com/ > archives: http://friam.471366.n2.nabble.com/ > > > > - .... . -..-. . -. -.. -..-. .. ... -..-. .... . .-. . > FRIAM Applied Complexity Group listserv > Zoom Fridays 9:30a-12p Mtn GMT-6 bit.ly/virtualfriam > un/subscribe <http://bit.ly/virtualfriamun/subscribe> > http://redfish.com/mailman/listinfo/friam_redfish.com > FRIAM-COMIC http://friam-comic.blogspot.com/ > archives: http://friam.471366.n2.nabble.com/ > > - .... . -..-. . -. -.. -..-. .. ... -..-. .... . .-. . > FRIAM Applied Complexity Group listserv > Zoom Fridays 9:30a-12p Mtn GMT-6 bit.ly/virtualfriam > un/subscribe http://redfish.com/mailman/listinfo/friam_redfish.com > FRIAM-COMIC http://friam-comic.blogspot.com/ > archives: http://friam.471366.n2.nabble.com/ > -- Frank Wimberly 140 Calle Ojo Feliz Santa Fe, NM 87505 505 670-9918 Research: https://www.researchgate.net/profile/Frank_Wimberly2
- .... . -..-. . -. -.. -..-. .. ... -..-. .... . .-. . FRIAM Applied Complexity Group listserv Zoom Fridays 9:30a-12p Mtn GMT-6 bit.ly/virtualfriam un/subscribe http://redfish.com/mailman/listinfo/friam_redfish.com FRIAM-COMIC http://friam-comic.blogspot.com/ archives: http://friam.471366.n2.nabble.com/