LINUX.ORG.RU
решено ФорумTalks

What is the Unix-way? Unix-way под Windows

 , ,


0

4

Задал в Яндексе запрос: 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».

★★★★★

фейспалмнул ногой

Там есть павершелл, cmd, а для особо упоротых - так и порт баша.

И да, даже из cmd никто тебе не мешает юзать ls/rm/etc. качаешь мелкий архивчик unxutils.zip, скидываешь в %PATH% и будет тебе счастье.

svr4
()
Ответ на: комментарий от svr4

И да, даже из cmd никто тебе не мешает юзать ls/rm/etc

cmd неадекватен совершенно.

steemandlinux ★★★★★
()

Юниксвеить под шиндовс можно - скрипты и пайпы ведь там есть, всякие аналоги /dev/null тоже. Но это не так уж удобно, как на unix-like системах. Можно кряхтеть в cmd.exe или powershell, можно и cygwin накатывать и работать уже там.

Но, имхо, реалии среды не способствуют.

И да, «unix-way» это философия и здравый смысл, а не чётко прописанные кем-то правила. Где-то часть устоев неприменима, а где-то ещё и сверху добавить можно.

Bfgeshka ★★★★★
()

не читай всякий бред 40ка летней давности.
unix-way был, когда планы по мультиксу скорректировали и коллектифф аффтаров развалился под давлением внутренней конкуренции и внешнего бюджетирования.

прочитай POSIX спеки и познай unix-way,
всё остальное - это уже надстройка.

Deleted
()

вот это все и прочитай, вот это все и будет в первом приближении UNIX-way. от нас-то что надо?

если писать в unix-way стиле под Windows, возможно ли такое там?

можно. в смысле «разрешаю».

Например, какой там аналог pipes?

ммм... pipes?

t184256 ★★★★★
()

а Windows далеко не unix-way.

Deleted
()

Центром unixway'я является то, что есть отдельные простые кирпичи (одна задача - один кирпич), которые можно склеивать клеем в разные конструкции. Windows-way - наоборот, напечатать на 3D-принтере нечто громоздкое без всякого клея. Поэтому клея там дефицит, да. Как и кирпичей. И то и другое туда завозят из Unix'ов.

saahriktu ★★★★★
()
Ответ на: комментарий от Bfgeshka

И да, «unix-way» это философия и здравый смысл, а не чётко прописанные кем-то правила.

OK

pacify ★★★★★
() автор топика

where is r_asian?
С его «здгастуйте догогие мои любители..»

давайте вернемся к истокам, а?

Unix-way - это исходные коды всей ОС не превышающие 0.5-1МБ.
Вот енто и есть юникс-вей тех времен.

Т.е. когда отцы-основатели (40 лет назад), а ныне почетные деды-мараз^W-современники, строгали свои исходники на телетайпах, тогда и был юникс-вей.
ТЧК(С).

А то, что сейчас - это уже блоатварь, косящая под Ъ-юникс вей.

А зачем винде юникс-вей я даже не знаю.
когда даже FHS жутко различен, как океан и марсианские хроники.

Deleted
()
Ответ на: комментарий от Deleted

Винда это уже объектно-компонентная модель, над каким-то ядром, спроектированным в духе ++unix-way

Deleted
()
Ответ на: комментарий от pacify

hmmm мне кажется и в ДОСе были конвейеры.

Deleted
()
Ответ на: комментарий от saahriktu

простые кирпичи (одна задача - один кирпич), которые можно склеивать клеем в разные конструкции

В результате здание выглядит как говно и держится на соплях.

drull ★☆☆☆
()
Ответ на: комментарий от Deleted

Как же я дата-майнингом на баше тогда занимаюсь, м? Беру тулзы, паршу базы, собираю статистику, оно всё пыхтит и выдаёт результат. Пайпики, седики, шеллики, всё кошеrно.

contra_sperm_spero
()
Ответ на: комментарий от Deleted

This.

NT-ядро в современных Windows, писали по заказу MS крутые бородатые юниксоиды/инженеры из DEC (вспоминаем легендарную PDP-11), работавшие ранее над различными DEC OS.

То, что это ядро (конечно, доработанное до современных реалий) до сих пор служит MS основой всего их технологического стека, говорит о многом.

EXL ★★★★★
()
Ответ на: комментарий от svr4

Павершелл как раз для особо упоротых. Смд просто для ленивых и/или недолёких. А cygwin/mingw/perl/python для адекватов.

rupert ★★★★★
()
Последнее исправление: rupert (всего исправлений: 1)
Ответ на: комментарий от drull

Линус Торвальдс и другие люди другого мнения.

saahriktu ★★★★★
()
3 мая 2016 г.

unix way это software tools(керниган и вся белл лабс) и «малое прекрасно(шумахер)»

qulinxao ★★☆
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.