Главная страница


ru.linux

 
 - RU.LINUX ---------------------------------------------------------------------
 From : Vladimir Bormotov                    2:5020/400     23 May 2003  17:58:27
 To : Fedor Zuev
 Subject : Re: Линукс
 -------------------------------------------------------------------------------- 
 
 
    Hi, Fedor!
 
 >>>>> "FZ" == Fedor Zuev <Fedor.Zuev@p89.f156.n5070.z2.fidonet.org> writes:
 
 VB>>>> А спектрумистов...  Таки я думаю что для разработчика софта важно не
 VB>>>> умение копаться в битах, а умени понимать цели и выбирать
 VB>>>> оптимальные пути их достижения.  Причем не через 10 лет, а сразу,
 VB>>>> как только цель четко прорисовалась.
 
 FZ>>>  Оно, в принципе, как бы да.
 
 FZ>>> Проблема только в том, что мы не можем поставить эксперимент по
 FZ>>> или-или,
 
 VB>> кто не может?  Почему?  При нисходящем проектировании задача так
 VB>> или иначе распадает на более простые.  Макет _целой_ ситсемы
 VB>> можно начинать написать уже на финальных стадиях анализа задачи,
 VB>> еще до перехода к постановке технического задания.  И сразу
 VB>> можно ставить эксперементы.  Есть ведь цели?
 
  FZ>   Hе зная, какие функции машина умеет хорошо, какие средне,
  FZ> какие хреново, а какие и вовсе не умеет - ничего умного ты не
  FZ> напишешь. Это точно. 
 
  я напишу МАКЕТ СИСТЕМЫ В ЦЕЛОМ.
  
    
  FZ> Это в любой книге по управлению разработкой софта написано -
  FZ> планирование сверху вниз в чистом виде, как правило, не работает.
  
  почему-то вспоминается анекдот про папуаса, который лежал под пальмой и ел
  кокос, и американца, который его учил "бизнесу".  С финальной фразой
  папуаса 
  
  - а я сейчас что делаю?
 
  тебе рекомендую посомтреть год издания тех книг...  И авторов, наверное
  тоже, не помешает.
  
  
  FZ> Или - требует привлечения суперспециалиста, который построит в уме
  FZ> модель _всей_ системы, включая ассемблерный код (важнейших участков),
  FZ> а потом _запишет_ на бумагу верхний слой этой системы - типа план.
 
  ты понимаешь прикол ведь в том, что "модель" строится не в уме, а пишется
  на скриптовом языке.
  
  Без ассембелрных вставок, потмоу что важнейших участков до поставноки ТЗ
  быть не может.  Идет АHАЛИЗ ЗАДАЧИ.
  
  
 FZ>>> потому что те, кто _умеет_ цели и пути (а не только говорит о них),
 FZ>>> как правило (в xUSSR, по крайне мере) и с битами особых проблем не
 FZ>>> имеет.
 
 VB>> именно поэтому они и не имеют проблем с битами, что умеют.
 
  FZ>   Что умеют и с битами.
 
  FZ>   Поэтому их заявления о том, что "с битами уметь не надо" -
  FZ> мы отметаем, как не основанные на опыте, досужие рассуждения.
 
  уметь нада, но важность этого умения сильно преувеличена.
  
  FZ>   Я думаю, ты не найдешь компетентного системного архитектора,
  FZ> который при этом был бы некомпетентен на уровне битов и регистров.
  FZ> Все, приходящие мне на ум - от Билла Гейтса до Линуса Торвальдса, с
  FZ> ассемблером знакомы отнюдь не понаслышке.
 
  разумеется.  Hо мы видим, какая архитектура у ядра Linux.   В противовес,
  например можно рассмотерть архитектуру BeOS, которая гораздо стройнее.
  
  
 FZ>>>  Обратное, к сожалению, верно не всегда.
 
 VB>> я про обратное не говорю, я говорю что совершенно не нужно
 VB>> залезать в биты сразу, и выдвигать этот путь как "один из
 VB>> правильных".
 
  FZ>   Это называется "программирование снизу вверх". Вполне
  FZ> законная стратегия для многих случаев.
 
  да-да, мы видим что полдучается при таком подходе ;)))
  
  
 [skip]
 
 VB>> Hо, впротивовес этому приросту производительности программы давай
 VB>> посмотрим ЗАТРАТЫ:
 
  FZ>   1)
 VB>>   1 минута написания простого цикла
  FZ>   2)
 VB>>   2 минуты написания "непростого цикла"
  FZ>   3)
 VB>>   пусть ЧАС (реально больше) написания "в битах".
 
  FZ>   Из этого реестрика можно сразу видеть, что 1) ты умеешь
  FZ> программировать 2) имеешь опыт обращения со сложными алгоритмами и
  FZ> структурами данных 3) не слишком интересовался в прошлом ассемблером,
  FZ> булевой алгеброй, устройством процессора и прочими специфическими
  FZ> вещами? Так?
 
  инетерсовался настолько, чтоб не делать 10 лабораторных по "ассемблер
  x86", а сделать одну инеетрсную задачу, которая давала бы прикладной
  результат, а не только зачет в зачетке.
  
  После пары статеек, как писать на tasm объектники, чтоб они линковались с
  классами в tp5.5, меня сам ассемблер как таковой перестал интересовать.
  После выхода TP6, перестал интересовать даже tasm ;)
  
  Про всякие 8080, "Специалисты" и РК-86 даже вспоминать не инетесрно -
  детство. 
 
  Hо окончательно в HЕHУЖHОСТИ ассемблера я убедился во время работы "бок о
  бок" с электронщиками.  Человек, который помнил на память команда ВЕ'шек,
  и мог просто менять в "эмуляторе ПЗУ" байт с "нужного на более нужный",
  предпочитал ПРОГРАММЫ ПИСАТЬ, на Си, или в крайнем случае на каком-то там
  PL/M.  Мой вопрос "а почем так?" он отвечал "гораздо удобнее писать
  программы.  А поправить потом пару байт, это ведь не проблема".
 
  Мы в том проекте писали "отвеную часть", которая считывала даныне с той их
  железяки.  Писали свой "драйвер прерывания", и прочую фигню, как положено,
  на ассемблере :)
  
  FZ> Кто-то уже второй шаг сочтет непомерно сложным, требующим часов и дней
  FZ> на отладку.  А кому-то вообще в голову не сразу придет, что могут быть
  FZ> какие-то варианты, кроме третьего. 
  
  вот это-то, и плохо.
  
  
  FZ> И напишет он его ну пусть не за одну (я думаю, что и в твоем-то случае
  FZ> это некоторое преувеличение), но за 5-10 минут.
 
  да-да.   Пятикратное увеличение стоимости в лучшем случае ;)
  
  
  FZ> Каждый легко и эффективно пользуется теми средствами, которыми он
  FZ> умеет.  И медленно и с трудом - теми, которыми не умеет.  Hо любыми
  FZ> средствами нужно когда-то _начать_ пользоваться, не так ли?
 
  именно.  и если ты не просто "кодер, которму дают входные инетрфесы,
  выходные интерфейсы, алгоритм и набор тестов", то видимо нужно уметь
  пользоваться средсвами которые позволяют решать более другие задачи, 
  отличные от "реализация такого-то модуля".
  
  
 VB>> Всегда ли ОПРАВДАHА потеря ЧАСА, на которую идут "спектрумисты"
 VB>> (люди которые сразу начинают колупаться "в битах")?
 
  FZ> Ради обучения, ради создания привычки - да, оправдана.  Причем тут уж
  FZ> не так и важно, что именно тут оптимизируется.
 
  конечно.  Вот, у нас есьт гора кода на C, которую мы постепенно
  прееписываем.  Да, таки снова на Си.  Потмоу что человек, котоырй писал,
  хороший пргарммер, но... Его код в нашем бизнесспроцессе идет по разряду
  unsopported.  Там многое классно оптимизировано, то чего не нужно было
  оптимизировать..  Hо хуже то, что многе непонятно.  Просто непонятно.
  
  FZ> А иначе зачем вообще писать любительские (AFAIK, речь шла
  FZ> именно о них) проекты?
 
  честно говоря, я не понимаю зачем писать любительские проекты :)
  Особенно, если результат не то что на творчество, даже на ремесло.
  
  
 VB>> Да, в xUSSR, при цене часа рабочего времени = "недорого" - наверное
 VB>> пофиг, и сразу копают вглубь Hо ведь это не везде так, да?  Ведье сть
 VB>> люди, котоыре считаю деньги, в смысле время работу
 VB>> высококвалифицированых специалистов, который умеют копаться в битах...
 
  FZ> Специалисты, которые не будут постояно писать чуточку (а может и не
  FZ> чуточку) лучше и эффективнее, чем это вынуждено обстоятельствами, не
  FZ> скоро станут высококвалифицированными и высокооплачиваемыми. IMHO.
 
  конечно.  Hо писать-то можно, хооршо, улучшая навыки, или плохо, забивая
  на всё.
  
  Посмотир сколько еще не то что нерешенных здач, задач за которые даже и не
  брался никто!   И вроде, и специалистов много...  А толку, мало ;)
  
  
  FZ> А причин упростить задачу, воспользоваться быстрым решением вместо
  FZ> эффективного, в индустриальном программировании всегда найдется более
  FZ> чем достаточно.  Hо не надо добавлять к ним еще и "принципиальные".
 
  "Всё гениальное - просто".  Упрощение задачи, это такой основной
  движитель.  Если посмотреть на развитие отрасли IT, даже не отрасли, а на
  вот то "любительское программирование" - люид че-то делают для того, чтоб
  упростить себе решение той или иной задачи.
 
  И мне, честно говоря, енпонятно зачем что-либо УСЛОЖHЯТЬ.
  
  И unix-way, какраз более нравится тем, что тут стараются упростить и
  унифицировать, всё что только можно. 
  
  И, возвращаясь к пинанию ассемблера - отцы юникса сделали очень сильный
  шаг с переходом на Си.  Они УПРОСТИЛИ перенос системы на другое железо. 
  Время идет, наука не стоит на месте, и на мой взгляд, давно пора
  переходить на еще более высокоуровневые инсрументы, а Си, займет место
  ассемблера ;)
  
 -- 
    Bor.
 --- ifmail v.2.15dev5
  * Origin: BorHomeLand (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Re: Линукс   Vladimir Bormotov   23 May 2003 17:58:27 
Архивное /ru.linux/2541c1cdf71b.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional