nixp.ru v3.0

14 ноября 2024,
четверг,
03:34:21 MSK

Аватар пользователя fly4life
fly4life написал 22 марта 2005 года в 15:03 (810 просмотров) Ведет себя как мужчина; открыл 182 темы в форуме, оставил 5340 комментариев на сайте.

Вобщем, чего-то меня подбил разговор с redbeard’ом на, так сказать, мааленький опрос мнений сдешних форумлян.

Внимание, вопрос: обязан ли программист (пусть это будет юникс программист) знать командную строку (он же шелл)?

<font size=«-2»>(насчёт того, что это за юникс и какую именно «командную строку» должен знать программист — не уточню. Кто как понял, тот на то и отвечает ;))</font>

Сам я пока водержусь от коментариев, чего попрошу и от redbeard’а (если только чего-нибудь поправить по существу заданного вопроса).

anonymous
fly4life
Вобщем, чего-то меня подбил разговор с redbeard’ом на, так сказать, мааленький опрос мнений сдешних форумлян.

Внимание, вопрос: обязан ли программист (пусть это будет юникс программист) знать командную строку (он же шелл)?

<font size=«-2»>(насчёт того, что это за юникс и какую именно «командную строку» должен знать программист — не уточню. Кто как понял, тот на то и отвечает ;))</font>

Сам я пока водержусь от коментариев, чего попрошу и от redbeard’а (если только чего-нибудь поправить по существу заданного вопроса).

Слюшай , нэ нада склонять мой псевдоним, да ? ;-)

А по существу — как показало вскрытие, тот товарисч не был программером, это была comp.unix :-)

Так что, сорри. Но сабж актуальный.

Uncle Theodore

Ну, скажем так. Поскольку я обучаю, в некотором смысле, будущих программистов, я считаю, что для общего профессионального развития юниксовый программист шелловое программирование знать должен.

А в чем проблема?

Good Luck,

UT

fly4life
Uncle Theodore
А в чем проблема?

Да ничего страшного. Соберу мнения местных обитателей — расскажу =). redbeard дополнит ;). Однако, настраиваться на то, что этот рассказ будет чем-то грандиозным, не стоит ;). Просто очередной спор, и очень хочется узнать мнение общественности.

anonymous
fly4life
Да ничего страшного. Соберу мнения местных обитателей — расскажу =). redbeard дополнит ;). Однако, настраиваться на то, что этот рассказ будет чем-то грандиозным, не стоит ;). Просто очередной спор, и очень хочется узнать мнение общественности.

Будет-будет. ;-) Я никогда в Зеленограде не был. ;-) Kate у тебя , надеюсь, есть ? ;-))

decvar
обязан ли программист (пусть это будет юникс программист) знать командную строку (он же шелл)?

По идее не обязан, но ему придется так как нет другого выхода.

Ответ: нет, не обязан.

Genie

у него не получится не знать.

программирование в unix — это не столько знание одного языка и знание API системы, это ещё и выбор оптимального решения по нескольким критериям.

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

в общем, не знать — не получится.

unix в широком распространении пока что плохо мыслим без знания консоли….

fly4life
Genie
в общем, не знать — не получится.

Вобщем, Серёг, обязан знать или нет? ;). А-то получается как-то: «не служить — не получится», но вот обязан ли я служить или нет — не известно ;).

Genie

«обязан» — по отношению к кому-то/чему-то.

обязан он знать шелл потому что ты тут спрашиваешь? нет.

обязан ли знать, если это требуется в работе? да.

Longobard

ну вобще-то я не видел хороших UNIX программистов, которые не дружат с консолью.

fly4life
LONGOBARD
ну вобще-то я не видел хороших UNIX программистов, которые не дружат с консолью.

Я тоже ;). Но вопрос не в этом. Вопрос: обязан ли он знать консоль или нет? По-твоему всё-таки как?

sky

Ответ, честно говоря, действительно может быть неоднозначен. С одной стороны — «Не знаешь консоль — не знаешь Unix», с другой стороны — «Не обязательно знать Unix для того, чтобы написать к.л. программу стандартными средствами C/C++ без привязанности к определённой ОС»

В принципе, одно из другого вытекает. Незнание одного снижает возможности другого. И вообще, если т.н. «программист» является программистом /-unix/, то для него не составит труда черкануть пару строк в шелле.

Скорее обязан, чем нет.

Longobard

ИМХО обязан.

Иначе он не сможет юзать дебаггеры, тестировать ./condigure скрипты и makefile-ы.

Да и вобще, прграммирование подразумевает уровень общения с системой «на ты». А в UNIX без свободного владения консолью это недостижимо.

Anarchist
fly4life
Внимание, вопрос: обязан ли программист (пусть это будет юникс программист) знать командную строку (он же шелл)?

<font size=«-2»>(насчёт того, что это за юникс и какую именно «командную строку» должен знать программист — не уточню. Кто как понял, тот на то и отвечает ;))</font>

Так Unix или как?

Программирование на языке командной строки или как?

Если программирование, то насколько сложное?

Мой ответ — как минимум базовые навыки работы с командной строкой и написания скриптов необходимы.

decvar
Мой ответ — как минимум базовые навыки работы с командной строкой и написания скриптов необходимы

Вот точно.  Использовать Bash/CSh/etc он должен уметь. Потому что иначе работать не сможет. Но что-то сложнее чем cat bla-bla | grep some уже не надо.

Писать можно и без ./configure скриптов и Makefile, я их например не знаю совсем.

Genie

Когда-то, в некотором отдалённом прошлом, меня спрашивали, на скольких языках программирования я, при необходимости, могу что-то написать.

ответ точный я раньше знал.

теперь — не знаю.

поглядел, что и как, примеры, маны, и.. и вперёд.

это учитывая, что программистом как таковым себя не считаю. ;)

по сути вопроса: имеются две сильных неясности — «обязан знать» и «программирование в shell».

если по поводу первого, как такового, по сути, уже более-менее высказался, то второе ещё не определено.

возьмём использование automake/autoconf и их скрипт configure.

насколько я помню, это — shell скрипт, весьма сложный.

но необходимо ли знать использующему его в своей программе shell на таком уровне, чтобы мочь:

  • написать такой скрипт самостоятельно (в целях проверки знаний, типа);


  • внести в него минимальные правки;


  • … что там ещё можно/нужно быват… ??

есть ли однозначный ответ?

неясность и неоднозначность формулировки вопроса возможности единственного ответа не дают.

fly4life
Genie
неясность и неоднозначность формулировки вопроса возможности единственного ответа не дают.

Серёг, я ж там в постановке вопроса даже где-то приписочку сделал: »…не уточню. Кто как понял, тот на то и отвечает» ;)

anonymous
fly4life
Серёг, я ж там в постановке вопроса даже где-то приписочку сделал: »…не уточню. Кто как понял, тот на то и отвечает» ;)

На любой вопрос даю любой ответ ? (c)

fly4life
redbeard
На любой вопрос даю любой ответ ? (c)

Вопрос не «любой», а вполне конкретный. Вот понять его может каждый по-разному. Так шта… не надо ;).

anonymous
fly4life
Вопрос не «любой», а вполне конкретный. Вот понять его может каждый по-разному. Так шта… не надо ;).

Конкретный — это «каждый понимает по-своему» ? Саша, где логика ?

fly4life
redbeard
Конкретный — это «каждый понимает по-своему» ? Саша, где логика ?

Артём, а какую ты цель преследуешь, задавая подобные вопросы? Ты б не логику искал, а соображать пытался. Или это попытка в чём-то меня уязвить?

Кароче. Любой, подчеркну абсолютно любой, вопрос каждый человек понимает сугубо по-своему. Вот, например, ты думаешь, что абсолютно простой и дожути конкретный вопрос: «какого цвета яйца у дрозда?» — мы с тобой понимаем одинаково?

П.С. я, конечно, понимаю, что мы на доске «flame», но всё-таки у вас ЛОРовцев превращать во флейм любую тему — просто талант! ;)

anonymous
fly4life
Артём, а какую ты цель преследуешь, задавая подобные вопросы? Ты б не логику искал, а соображать пытался. Или это попытка в чём-то меня уязвить?

Соображать — это как ? Догадываться, а потом быть обвиненным в домыслах ? Что за женская логика ?

Кароче. Любой, подчеркну абсолютно любой, вопрос каждый человек понимает сугубо по-своему. Вот, например, ты думаешь, что абсолютно простой и дожути конкретный вопрос: «какого цвета яйца у дрозда?» — мы с тобой понимаем одинаково?

Опять подмена понятий на свой собственныый лад. Это не конкретный вопрос. Здесь нужно уточнение.

П.С. я, конечно, понимаю, что мы на доске «flame», но всё-таки у вас ЛОРовцев превращать во флейм любую тему — просто талант! ;)

Я не лоровец, т.к. не являюсь линуксоидом ;-) На ЛОР меня тянет желание повеселиться, читая посты таких, как ты, задающих «конкретные» вопросы ;-)

P.S. Nothing personal.

fly4life
redbeard
Соображать — это как ?

Молча.

redbeard
Догадываться, а потом быть обвиненным в домыслах ? Что за женская логика ?

Значит, в споре со мной тебе хватило такой <font size=«-2»>(чтоб тебе лишний раз не напрягаться с соображениями, «такой» — это той, которая в первом сообщении этой темы)</font> постановки вопроса, чтобы домыслить <font size=«-2»>(о чём именно, как и договорились, не сегодня)</font>, а тут чего-то не хочешь. Кто ещё из нас «подменяет понятия на свой лад"?… Да и начал почему-то ссылаться на женскую логику.

И почему это тебя сразу должен кто-то обвинить?

redbeard
Опять подмена понятий на свой собственныый лад. Это не конкретный вопрос. Здесь нужно уточнение.

Это вопрос, конечно, философский, но тогда можно дойти и до того, что к любому вопросу нужно будет уточнение. Можно даже с тобой поэкспериментировать. Задай мне вопрос, к которому я не сделаю уточнение.

redbeard
Я не лоровец, т.к. не являюсь линуксоидом ;-) На ЛОР меня тянет желание повеселиться, читая посты таких, как ты, задающих «конкретные» вопросы ;-)

Видимо, давно читаешь — повадки те же стали.

redbeard
P.S. Nothing personal.

Что за манера така — сначала попытаться «обосрать», а потом сказать, мол «Nothing personal"? Некрасиво, Артём.

anonymous
fly4life
Молча.

Прежде всего, хамство при себе держи. Я  - не твоя малолетняя подружка.

Значит, в споре со мной тебе хватило такой <font size=«-2»>(чтоб тебе лишний раз не напрягаться с соображениями, «такой» — это той, которая в первом сообщении этой темы)</font> постановки вопроса, чтобы домыслить <font size=«-2»>(о чём именно, как и договорились, не сегодня)</font>, а тут чего-то не хочешь. Кто ещё из нас «подменяет понятия на свой лад"?… Да и начал почему-то ссылаться на женскую логику.

И почему это тебя сразу должен кто-то обвинить?

Ты, разумеется.

Это вопрос, конечно, философский, но тогда можно дойти и до того, что к любому вопросу нужно будет уточнение.

Бред и демагогия.

Можно даже с тобой поэкспериментировать. Задай мне вопрос, к которому я не сделаю уточнение.

Хватит придуряться. Или все же будем ?

Видимо, давно читаешь — повадки те же стали.

Значит, и сам оттуда ? ;-)

Что за манера така — сначала попытаться «обосрать», а потом сказать, мол «Nothing personal"? Некрасиво, Артём.

Сперва «вытащи бревно из своего глаза». Я тебя чем-то унизил? Пардон, и в мыслях не было.  Просто ты не можешь,/хочешь/умеешь понимать другого, вот и нервничаешь. Настоятельно рекомендую изучать программирование и попрактиковаться на досуге — очень помогает. Или почитать Канта для пропедевтики.

fly4life
redbeard
Прежде всего, хамство при себе держи. Я — не твоя малолетняя подружка.

Цитирую дословно: «Сперва „вытащи бревно из своего глаза“. Я тебя чем-то унизил? Пардон, и в мыслях не было. Просто ты не можешь,/хочешь/умеешь понимать другого, вот и нервничаешь. »

redbeard
Ты, разумеется.

Что я? Понятие(я) подменяю? Какое(ие) именно?

redbeard
Бред и демагогия.

Вообще-то, такие высказывания надо объяснениями сопровождать. Иначе, это не более, чем пустословие.

redbeard
Хватит придуряться.

«Хватит»?! Да ещё и «Придуряться»?! Это что, такая попытка закончить этот наш с тобой флейм не по теме вопроса? Похвально, я за ;).

Но как-то забавно получается. Ты сначала шутишь: «На любой вопрос даю любой ответ ? (c)»

Я тебе пытаюсь показать, что ты просто придираешься (даже эксперимент предложил, с помощью которого можно легко убедиться в возможности придраться к любому вопросу). А получаю в ответ, что это, оказывается, я «придуряюсь».

redbeard
Или все же будем ?

Ты у меня разрешения чтоли спрашиваешь? ;)

redbeard
Значит, и сам оттуда ? ;-)

Нет, но многих знаю «оттуда» ;)

redbeard
Сперва «вытащи бревно из своего глаза». Я тебя чем-то унизил? Пардон, и в мыслях не было. Просто ты не можешь,/хочешь/умеешь понимать другого, вот и нервничаешь. Настоятельно рекомендую изучать программирование и попрактиковаться на досуге — очень помогает. Или почитать Канта для пропедевтики.

Помогает в чём?

Anarchist
decvar
Но что-то сложнее чем cat bla-bla | grep some уже не надо.

Не является НАСУЩНОЙ НЕОБХОДИМОСТЬЮ.

Что еще не означает того, что не нужно вовсе.

anonymous
fly4life
Что я? Понятие(я) подменяю? Какое(ие) именно?

Нет, но почему-то постоянно что-то придумываешь.

Вообще-то, такие высказывания надо объяснениями сопровождать. Иначе, это не более, чем пустословие.

Не объяснениями, а доказательствами.

«Хватит»?! Да ещё и «Придуряться»?! Это что, такая попытка закончить этот наш с тобой флейм не по теме вопроса? Похвально, я за ;).

Нет, можно продолжать полемизировать. ;-)

Но как-то забавно получается. Ты сначала шутишь: «На любой вопрос даю любой ответ ? (c)»

Я тебе пытаюсь показать, что ты просто придираешься (даже эксперимент предложил, с помощью которого можно легко убедиться в возможности придраться к любому вопросу). А получаю в ответ, что это, оказывается, я «придуряюсь».

Разумеется. Ну что за  странные тезисы — «к каждому вопросу требовать уточнения» ?

Тебе для ответа на вопрос «Чему равно значение выражения 2+2 ?» тоже уточнение требуется , что ли? ;-)

Помогает в чём?

Мыслить логически. Найду лекции по матлогике — выложу. ;-))

Genie
Не объяснениями, а доказательствами.

Достаточно объяснения. Бывает достаточно.

Для доказательства необходима строгость рассуждений, которая в данном треде отсутствует изначально.

Нет, можно продолжать полемизировать. ;-)

сложно назвать последние (с десяток) сообщений иначе как флеймом. ;)

полемизировать — это обсуждать и сравнивать мнения. а тут уже к тому ж и на личности перешли. :-/

Разумеется. Ну что за странные тезисы — «к каждому вопросу требовать уточнения» ?

Тебе для ответа на вопрос «Чему равно значение выражения 2+2 ?» тоже уточнение требуется , что ли? ;-)

естественно, возникнет вопрос: а в какой системе исчисления?

это, конечно, если не придираться к «равно значение выражения».

Мыслить логически. Найду лекции по матлогике — выложу. ;-))

мда? программирование?

может всё-таки курс «Формальная логика» подойдёт больше?

итого: завязываем. как я уже сказал в аське, по изначальному вопросу можно защищать диссертацию. по объёму создаваемой методологической базы — как раз для кандидатской хватит.

anonymous
Genie
Достаточно объяснения. Бывает достаточно.

Для доказательства необходима строгость рассуждений, которая в данном треде отсутствует изначально.

Я пытался. ;-) Но , конечно, доказательства лучше.

сложно назвать последние (с десяток) сообщений иначе как флеймом. ;)

полемизировать — это обсуждать и сравнивать мнения. а тут уже к тому ж и на личности перешли. :-/

Я , конечно, все приукрашиваю. ;-)

естественно, возникнет вопрос: а в какой системе исчисления?

Не менее естественен ответный вопрос : «А что, там указаны слагаемые в отличной от десятичной системе счисления ? » ;-)

это, конечно, если не придираться к «равно значение выражения».

Я , конечно, понимаю, что фантазия у человека должна присутствовать, но не до такой же степени. ;-)

мда? программирование?

М-да, программирование.

может всё-таки курс «Формальная логика» подойдёт больше?

Давай еще денотационную семантику вспомним, а ? А потом — лямбду.

итого: завязываем. как я уже сказал в аське, по изначальному вопросу можно защищать диссертацию. по объёму создаваемой методологической базы — как раз для кандидатской хватит.

Прошу прощения, а кто тут модератор ?

fly4life
redbeard
Я пытался. ;-) Но , конечно, доказательства лучше.

Гм… «Пытался»? ;). После моего: «такие высказывания надо объяснениями сопровождать. Иначе, это не более, чем пустословие.» — ты всего лишь сказал, что «Не объяснениями, а доказательствами.». И всё. Ни объяснений, ни доказательств… Чего же ты «пытался» тогда?

redbeard
Не менее естественен ответный вопрос : «А что, там указаны слагаемые в отличной от десятичной системе счисления ? » ;-)

Ты даже сам придрался к своему вопросу ;). Но я отвечу. Если не уточнить какая именно с.с., то можно придраться к троичной системе счисления.

redbeard
Я , конечно, понимаю, что фантазия у человека должна присутствовать, но не до такой же степени. ;-)

Ага, не до такой. А всего лишь до степени: «на любой вопрос даю любой ответ» ;)

anonymous
fly4life
Ты даже сам придрался к своему вопросу ;). Но я отвечу. Если не уточнить какая именно с.с., то можно придраться к троичной системе счисления.

А числа там записаны в троичной с.с. ? ;-)

Ага, не до такой. А всего лишь до степени: «на любой вопрос даю любой ответ» ;)

Это ж цитата была. ;-)

fly4life
redbeard
А числа там записаны в троичной с.с. ? ;-)

Понял смайлик ;)). Ну да, ты и третью придирку нашёл к своему вопросу ;)

redbeard
Это ж цитата была. ;-)

С которой понеслась… Нда. А ведь с такой ерунды столько флейма…. =)

anonymous
fly4life
Понял смайлик ;)). Ну да, ты и третью придирку нашёл к своему вопросу ;)

Это было утверждение обратного.

С которой понеслась… Нда. А ведь с такой ерунды столько флейма…. =)

Бывает.

fly4life
redbeard
Это было утверждение обратного.

Тогда отвечу. Да, они записаны в троичной с.с., без явного указания обратного (того, что не в ней).

Genie
Я пытался. ;-) Но , конечно, доказательства лучше.

вот можно ты тут будешь доказывать цитатами и объяснять значения этих цитат, а? :D

Не менее естественен ответный вопрос : «А что, там указаны слагаемые в отличной от десятичной системе счисления ? » ;-)

а это указано? что в десятичной?

нет? ну, тогда и придираемся. :D

Я , конечно, понимаю, что фантазия у человека должна присутствовать, но не до такой же степени. ;-)

фантазия? гхм. я вот её тут специально отключил. во избежание.

ибо,

необходима строгость рассуждений, которая в данном треде отсутствует изначально.


А числа там записаны в троичной с.с. ? ;-)

а что, не в четверичной? как вариант понимания написания.

Давай еще денотационную семантику вспомним, а ? А потом — лямбду.

кто ж мешает? но программирование логическому мышлению — не научит. ибо…

(что именно «ибо» — подождём до процитировывания by fly4life)

Прошу прощения, а кто тут модератор ?

<font color=«grey»>вот тут придётся перейти на личности.</font>

<font color=«grey»>если бы на меня с нового года не навалилось столько работы — модерирование было бы несколько иначе. как именно — это отдельный разговор, и некоторым этого упоминания будет достаточно. но не для тебя…</font>

<font color=«grey»>не для тебя…</font>

Longobard

слушайте, есть такая вещь как ася, irc или джаббер, вот идите туда и поговорите :)

fly4life
LONGOBARD
слушайте, есть такая вещь как ася, irc или джаббер, вот идите туда и поговорите :)

Ты будешь смеяться, но с «аси» всё и началось ;).

Genie
слушайте, есть такая вещь как ася, irc или джаббер, вот идите туда и поговорите :)

<font size=«-2»>fly4life, тебе ничего не надпоминает? :</font>

<font size=«-2»>"тут форум, а не чат"</font>

:D :D :D

Longobard

форум — это устонский чат ;)

anonymous
Genie
вот можно ты тут будешь доказывать цитатами и объяснять значения этих цитат, а? :D

а это указано? что в десятичной?

нет? ну, тогда и придираемся. :D

Если бы отличалось — указал бы.

фантазия? гхм. я вот её тут специально отключил. во избежание.

Не уверен ;-)

ибо,

а что, не в четверичной? как вариант понимания написания.

кто ж мешает? но программирование логическому мышлению — не научит. ибо…

(что именно «ибо» — подождём до процитировывания by fly4life)

Учит. Тех, кто хочет чему-то научиться.

[grey]вот тут придётся перейти на личности.

если бы на меня с нового года не навалилось столько работы — модерирование было бы несколько иначе. как именно — это отдельный разговор, и некоторым этого упоминания будет достаточно. но не для тебя…

не для тебя…

Тебя очень сложно понять.

Genie
Если бы отличалось — указал бы.

… и вот тут мы приходим к пониманию «контекста».

выдёргивая из диалога отдельные фразы, забываем о том, что имеется определённый контекст, в котором есть определения умолчаний, данных, о готорых в самой фразе не упоминаются, но подразумеваются.

и вот к ним, выдирая фразы, можно пытаться подстроить совершенно иной контекст.

используемая система счисления относится именно к этому.

как понятно, остальное, «умолчальное» точно также относится к контексту и может быть трактовано по своему усмотрению.

дополнительно, подразумевается так же испоьлзование темоопределяющих условий — в данном случае — «каждый понимает по своему».

Не уверен ;-)

ну, раз уж ты лично знаком более-менее с Шуриком, поинтересуйся у него, насколько у меня фантазия временами работает. ;)

Учит. Тех, кто хочет чему-то научиться.

и чем же это именно конкретно оно учит?

именно логически мыслить?

объясни :)

хотя бы свою точку зренияю

Тебя очень сложно понять.

именно. только сказано именно то, что и написано.

что довольно странно при моей манере высказываться.

форум — это устонский чат ;)

эстонский?

что ж, можно и так понимать…

да толбко шутка предназначалась именно fly4life, и полный смысл (читай: контекст) понятен только ему… :)

anonymous
Genie
… и вот тут мы приходим к пониманию «контекста».

выдёргивая из диалога отдельные фразы, забываем о том, что имеется определённый контекст, в котором есть определения умолчаний, данных, о готорых в самой фразе не упоминаются, но подразумеваются.

и вот к ним, выдирая фразы, можно пытаться подстроить совершенно иной контекст.

Но зачем?..

ну, раз уж ты лично знаком более-менее с Шуриком, поинтересуйся у него, насколько у меня фантазия временами работает. ;)

Лучше к психиатру ;-)

и чем же это именно конкретно оно учит?

именно логически мыслить?

объясни :)

хотя бы свою точку зренияю

Программирование весьма способствует триенировке навыка устанавливать причинно-следственные связи, а также, основываясь на некоторых отправных данных (документация), конструировать тезисы (алгоритмы и программы), а затем — убеждаться в их правильности или же, напротив, ложности.

fly4life

Моё кратенькое резюме темы.

С чего началось. Вобщем, ничего лучше не расскажет наш с redbeard спор, чем лог из аськи:

blackmind 22 Март 2005 13:24:59

Тут в comp.unix.programmer еще один товарисч не знает, как создать файл из командной строки ;-)

fly4life 22 Март 2005 13:49:53

>Тут в comp.unix.programmer еще один товарисч не знает, как создать файл из командной строки ;-)

а он разве должен знать? Он же программист ;-)

blackmind 22 Март 2005 13:50:07

Должен ;-)

fly4life 22 Март 2005 13:50:15

неа, не должен ;-)

blackmind 22 Март 2005 13:51:59

Должен. Иначе это ламер, а не юниксовый программер.

fly4life 22 Март 2005 13:54:16

Гм… прикольно…

а нафиг программисту вообще знание командной строки?

blackmind 22 Март 2005 13:55:10

?!!

Саша, ты такое не скажи вообще в людном месте — засмеют.

fly4life 22 Март 2005 13:55:44

очччень даже приму и пойму смех, если мне это объяснят ;-)

——————————————-

А дальше… я теперь хочу сказать «в людном месте": программист вовсе не обязан знать командную строку (командный интерпретатор, если так будет угодно).

Объясняю почему.

Что такое командный интерпретатор? Командный интерпретатор — это интерактивный интерфейс, который обрабатывает вводимые пользователем команды. А кто такие программисты? Правильно — люди, которые пишут программы ;). Я разделяю программистов на две категории: системщики (пишут системные приложения. Приложения для работы с ядром ОС, драйвера и т.п.) и прикладники (пишут прикладыне приложения. Приложения для пользователей).

Если программист пишет «системную» программу, например, драйвер, то где тут обязательное знание шелла <font size=«-2»>(напомню: который обрабатывает вводимые пользователем команды)</font>? Ему что, нужно знать как будет обрабатываться цикл for в консоли? Да?! Тогда в какой именно оболчке? Интересно, те же разработчики драйверов для видеокарт nVidia пишут драйвера отдельно для пользователей zsh и отдельно для польователей csh? Нет! Их программа (драйвер) вообще от оболочки не зависит. Посему, нужно ли им обязательно знать синтаксис шелла (и, в частности, команду touch, с которой начался весь сыр бор)? Нет, не нужно.

Если программист пишет прикладную программу, например, браузер — операторы языка там, окошки, рюшечки и всё такое — то где ТУТ (при написании этого самого браузера) необходимо знание шелла? Ему что надо знать команду touch?

Далее, что такое программирование? Процитирую одно высказывание Genie, с которым я полностью согласен: «программирование — это не просто запись последовательности действий в терминах какого-то языка программирования (этим является „кодинг“), а ещё и проработка алгоритма программы, т.е. решение задачи нахождения алгоритма поставленного ТЗ». Привязать к этому определению знание шелла можно лишь в одном единственном случае — когда «запись последовательности действий» осуществляется «в терминах какого-то» шелла. И-то это тогда можно больше отнести к «кодингу», а не к программированию как таковому. Да и нужен этот «кодинг» в шелле не программистам, а скорее тем, кто настраивает систему и пишет для её настройки скрипты (а этим занимаются, скорее, сисадмины и прочие пользователи, чем программисты — не их это задача).

Насчёт того, что не знать не получится, так как нету другого выхода, в принципе, практически согласен. Но с одним «НО». Может ему [программисту] и придётся (или даже, скажем так, будет полезным) изучить некоторые команды оболочки, но это вовсе не его задача, не задача программиста. decvar на пару с Анархистом, браво, попали в точку: программист, скорее, должен уметь использовать шелл (что к как таковому знанию имеет весьма косвенное отношение). Точнее я б сказать не смог.

2 UT: программист, который пишет приложения, специально ориентированные для консоли (в народе — скрипты), да, должен знать командный интерпретатор, синтаксис его операторов и переменных. Но, повторюсь, я считаю, что это, на самом деле, не задача программиста. Это, скорее, задача сисадмина.

2 LONGOBARD: а что, составление Makefile’ов и скриптов ./configure является первоочередной задачей программиста? Не буду тыкать пальцами кто именно, но мне рассказывали, что есть как минимум одна IDE, в которой тот же ./configure делается автоматически по нажатию соответствующей кнопочки. Почему автоматическая генерирация ./configure возможна и её реализовали? Потому что это всего лишь рутина, от которой программистов нужно избавлять, чтобы своё время они тратили на действительно свои задачи — писали программы, а не инсталляторы ;).

Теперь я готов выслушать смех в свой адрес, но только обоснованный, т.к. объяснения redbeard меня не впечатлили:

blackmind 22 Март 2005 13:56:32

Объясняю : программер — это больше , чем админ, много больше. По задумке.

blackmind 22 Март 2005 13:56:46

Ибо писать софт должен тот человек, который обладает опытом админства.

Хотя, может быть это он просто не сумел объяснить мне более внятно по какой такой «задумке» программист много больше, чем администратор и, тем более, откуда всё-таки из этого вытекает, что программист должен знать командный интерпретатор, т.к. потом начался жёсткий флейм по поводу рулезности vi и, соответственно, родилась новая holly war ;). Но это уже к моему опросу не имеет отношения.

P.S. простите, если получилось сумбурно.

Uncle Theodore

Ну, батенька, я же специально сделал оговорку «для расширения профессионального кругозора». Хороший специалист знает свою область досконально, а смежные области — достаточно неплохо. Должен ли автомеханик уметь водить машину? В принципе, зачем? Не надо это ему. Но механик, который сам водит, лучше понимает, как работает машина на трассе. Я — специалист по дифференциальной геометрии, строго говоря. Но меня учили, например, и теории чисел, и даже вычислительным методам. Для полноты понимания проблемм. так и с шеллом. Хорошо, когда IDE все делает, а может, ты можешь для своей задачи что-то подправить, и она будет делать лучше?

Несогласные мы…

Good Luck,

UT

fly4life
Uncle Theodore
Ну, батенька, я же специально сделал оговорку «для расширения профессионального кругозора». Хороший специалист знает свою область досконально, а смежные области — достаточно неплохо.

Смежные области говоришь. Но ведь все смежные области он знать не может (да и, с учётом темпов развития IT, слишком долго учиться придётся — жизни не хватит). А почему тогда из всех смежных областей обязан знать именно шелл?

Uncle Theodore
Должен ли автомеханик уметь водить машину? В принципе, зачем? Не надо это ему. Но механик, который сам водит, лучше понимает, как работает машина на трассе.

UT, ну какое-то это натянутое сравнение с программистом, знающим шелл. Насколько я понял, тут «автомеханик, водящий машину» рассматривается как «программист, управляющий/настраивающий систему"? Дык, а кто сказал, что для этого необходимо знание шелла? Я, например, на том уровне, на котором может понадобиться программисту, всё могу настроить парой кликов мыши ни разу не обращаясь к шеллу (вбить настройки для сетевого интерфейса, настройки монитора и переферии, и т.п.). Что-то глубже — уже задача сисадмина, а не программиста (а-то получается какой-то мастер на все руки: программы пишет, копается во внутренностях настроечных скриптов дистрибутива, систему настраивает, по дому убирает, бельё стирает ещё и за пивом бегает).

Uncle Theodore
Я — специалист по дифференциальной геометрии, строго говоря. Но меня учили, например, и теории чисел, и даже вычислительным методам. Для полноты понимания проблемм.

Нда, а что ни говори — хорошее у нас всё-таки образование ;)

Uncle Theodore
так и с шеллом. Хорошо, когда IDE все делает, а может, ты можешь для своей задачи что-то подправить, и она будет делать лучше?

Несогласные мы…

«Что-то» может быть и можешь, но вряди это будет как-то относиться к шеллу ;).

А на самом деле, что ещё нужно править программисту, связанное с шеллом, кроме как того самого ./configure? Который, кстати, не всегда и нужен-то. А если и нужен, то не вижу никакого смысла трогать вообще — недостающего не сгенерируется, а лишнее вообще некритично для самой программы — главного плода программиста.

Longobard

Спор ни о чем. Это все равно что спорить, может ли существовать сферический конь не в ваккууме. Покажите мне хотя бы одного UNIX программиста, который не имеет базовых знаний консоли.

P.S.: юзерь, написавший hello world программистом не считается.

fly4life
LONGOBARD
Спор ни о чем. Это все равно что спорить, может ли существовать сферический конь не в ваккууме. Покажите мне хотя бы одного UNIX программиста, который не имеет базовых знаний консоли.

Эхехех… «Базовых». База — это ещё далеко не «знание».

Сисадмином, ведь, меня делает не базовое знание программирования (а оно присутствовать у сисадмина в некоторой степени должно). Вот и программиста делает его таковым не базовое знание консоли.

Longobard

Хорошо, я не видел ни одного UNIX программиста, который не умеет например пользоваться пайпами, &&, ||, ; и прочим. Я не видел ни одного программиста, который не умеет пользоваться базовыми командами по типу touch, less, cat, grep. Вот это я считаю базовывми знаниями. Не все программисты умеют пользоваться sed-ом, не все знают о сущстввании разных типов кавычек и чем они отличаются. Но это уже не базовые знания.

myst

Моё мнение такое:

1. UNIX-программист, является UNIX-пользователем, иначе он — НЕUNIX-программист. Сложно писать под UNIX не под UNIX’ом.

2. UNIX-пользователь обязан знать shell, потому что это UNIX way.

3. И, вообще, программист — не секретарша. Он должен *знать* дохера, потому что:

Чтобы понять, что же на самом деле делают программисты, требуется альтернативная стратегия мышления (называемая картостроение), поскольку программирование — это, по сути, процесс усвоения возможностей системы, природы задачи и желания, а затем выражение результатов исследования на языке программирования. Вся суть в исследовании деталей наших желаний и понимание их таким способом, что мы можем отследить всю их сложность.

— Alan G. Carter & Colston Sanger,

Programmers' Stone

Вот.

P.S. С другой стороны, MacOS X — тоже UNIX ;)

Последние комментарии

ecobeingecobeing.ru
Экология и вегетарианство на благо всем живым существам Планеты.