Задал в Яндексе запрос: what is the unix way, получил один вменяемый результат - http://c2.com/cgi/wiki?UnixWay
Google же с результатами поиска на англ. подменяет поиском по «Unix philosophy», и выдаёт главной - ссылку на Википедию. Где упомянуты «Eric Raymond’s 17 Unix Rules» и «Mike Gancarz: The UNIX Philosophy».
Где же описание именно Unix-way на англ.? Eric Raymond’s Unix Rules и Unix-way - это одно и то же?
Кто автор термина «Unix-way»?
Unix philosophy и Unix-way - это одно и то же?
Mike Gancarz: The UNIX Philosophy
* Small is beautiful.
* Make each program do one thing well.
* Build a prototype as soon as possible.
* Choose portability over efficiency.
* Store data in flat text files.
* Use software leverage to your advantage.
* Use shell scripts to increase leverage and portability.
* Avoid captive user interfaces.
* Make every program a filter.
Unix Way from http://c2.com/cgi/wiki?UnixWay
* Everything is scriptable, whether the author intended it to be or not.
* Everything Is a file. (Unfortunately a lot of unix programmers take this too far and use files for everything instead of databases; GoogleFileSystem?).
(The «smart» way would be to have a low-end database that is implemented as files, but also allow switching to a full database without a significant rewrite of query code.)
* Policy is not decided for you, or reasonable defaults are decided that you can replace with your own.
* Be responsible for what you're doing. You won't be second guessed and prompted. This is the price you pay for simplicity and an environment that isn't dumbed down.
* Configuration is done via text files that you can edit without complicated tools. Whenever sensible, data is in text files too. (PowerOfPlainText)
* You can do complicated things by gluing simple things together. (You don't give your editor a word-count or spell-check feature; you have separate word-counting and spell-checking programs, and teach your editor to talk to them.) (AlternateHardAndSoftLayers)
* Simple and consistent interfaces are good, but they do not generally excuse large and complex implementations. Complex systems are built on simple cores and not vice versa. (WorseIsBetter, LessIsMore)
* Simple and complex systems are better separated from each other, leading to layered rather than monolithic design. This is synergetic with the point above and is often mistaken for WorseIsBetter.
* write a script first (ie use sh/awk/perl instead of c)
anything should be possible to be automated.
* You can break any of these rules.
Eric Raymond’s 17 Unix Rules
Rule of Modularity
Rule of Clarity
Rule of Composition
Rule of Separation
Rule of Simplicity
Rule of Parsimony
Rule of Transparency
Rule of Robustness
Rule of Representation
Rule of Least Surprise
Rule of Silence
Rule of Repair
Rule of Economy
Rule of Generation
Rule of Optimization
Rule of Diversity
Rule of Extensibility
Послесловие
В среде линуксоидов (команде линуксоидов) никогда не работал, поэтому такие пробелы в образовании. В МГУ нам про Unix way на курсе СПО не рассказывали (С.Кузнецов и Машечкин). На английском большие тексты читаю мало, лишь короткие tips на stackoverflow или русские статьи на Хабре (по работе философия Unix и большие умные вещи не нужны).
Вопрос у меня возник вот почему. Я тут подумал ... если писать в unix-way стиле под Windows, возможно ли такое там? Например, какой там аналог pipes? Но для начала - надо бы определиться, что такое «Unix way».