For sure, I've seen at least two interesting changes: - market forces have pushed fast iteration and fast prototyping into the mainstream in the form of Silicon valley "fail fast" culture and the "agile" culture. This, over the disastrous "waterfall" style, has led to a momentous improvement in overall productivity improvements. - As coders get pulled away from the machine and performance is less and less in coders hands, engineers aren't sucked into (premature) optimization as much. Tyler On Sat, Jan 30, 2021 at 6:10 AM M Douglas McIlroy < m.douglas.mcilroy@dartmouth.edu> wrote: > Have you spotted an evolutionary trend toward better, more productive > programmers? Or has programmer productivity risen across the board due to > better tools? Arguably what's happened is that principle has been > self-obsoleting, for we have cut back on the demand for unskilled (i.e. > less capable) programmers. A broad moral principle may be in play: > programmers should work to put themselves out of business, i.e. it is wrong > to be doing the same kind of work (or working in the same way) tomorrowas > yesterday. > > Doug > > > On Tue, Jan 26, 2021 at 5:23 AM Tyler Adams wrote: > >> Looking at the 1978 list, the last one really stands out: >> >> "Use tools in preference to unskilled help to lighten a programming task" >> -- The concept of unskilled help for a programming task...doesn't really >> exist in 2020. The only special case is doing unskilled labor yourself. >> What unskilled tasks did people used to do back in the day? >> >> Tyler >> >> >> On Tue, Jan 26, 2021 at 4:07 AM M Douglas McIlroy < >> m.douglas.mcilroy@dartmouth.edu> wrote: >> >>> It might be interesting to compare your final list with the two lists in >>> the 1978 special issue of the BSTJ--one in the Foreword, the other in the >>> revised version of the Ritchi/Thompson article from the CACM. How have >>> perceptions or values changed over time? >>> >>> Doug >>> >>> >>> On Mon, Jan 25, 2021 at 7:32 AM Steve Nickolas >>> wrote: >>> >>>> On Mon, 25 Jan 2021, Tyler Adams wrote: >>>> >>>> > I'm writing about my 5 favorite unix design principles on my blog this >>>> > week, and it got me wondering what others' favorite unix design >>>> principles >>>> > are? For reference, mine are: >>>> > >>>> > - Rule of Separation (from TAOUP < >>>> http://catb.org/~esr/writings/taoup/html/> >>>> > ) >>>> > - Let the Machine Do the Dirty Work (from Elements of Programming >>>> Style) >>>> > - Rule of Silence (from TAOUP < >>>> http://catb.org/~esr/writings/taoup/html/>) >>>> > - Data Dominates (Rob Pike #5) >>>> > - The SPOT (Single Point of Truth) Rule (from TAOUP >>>> > ) >>>> > >>>> > Tyler >>>> > >>>> >>>> 1. Pipes >>>> 2. Text as the preferred format for input and output >>>> 3. 'Most everything as a file >>>> 4. The idea of simple tools that are optimized for a single task >>>> 5. A powerful scripting language built into the system that, combined >>>> with >>>> 1-4, makes writing new tools heaps easier. >>>> >>>> -uso. >>>> >>>