Любой программный продукт портят студенты и индусы
От: msk78 Россия http://miccro.livejournal.com
Дата: 18.05.11 12:54
Оценка: 83 (18) +10 -4 :))) :))) :))) :))) :))) :))) :))) :))) :)))
Почему большая часть программных продуктов, в частности на корпоративном сегменте кривые и косые, ужасны в использовании и нерасширяемы? А вот, где собака порылась.

=Студенты=
В Рашеньке очень часто на проект хотят взять ходячую энциклопедию. Алгоритмы все помнит, Си с решёточкой знает и «о малое» умеет и даже по большому может. Да чтобы одной рукой с потоками работал, а другой одновременно вебсервисы писал на WCF да левой ногой секретарше кунилингус делал.

В довесок хотят, чтобы кандидат профессионально умел по теории архитектуры и знал все базы данных от MySQL до PL SQL и писал бы трёхэтажные запросы с закрытыми глазами.
Ну, кто же это всё кроме студента умеет? Да никто! Вот и берут студента.

Садят парня создавать проект какой-нибудь автоматизации бизнеса.
Тут и даёт наш студент волю своим шалавливым ручёнкам — и то заюзает и это. Ведь в конце года диплом надо сдавать и если уместить в новом проекте все известные, а лучше неизвестные, передовые технологии и архитектурные приёмы, то преподаватели восхитятся, слава Фаулеру, и поставят пять.

В итоге получается убожество, этакий франкенштейн — здесь и веб сервисы, и Remoting, кое-где на силу пришитый threading. Паттерн на паттерне и паттерном погоняет.

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

Расширяемость сей поделки стремиться к нулю. Никакой тебе scalability, extensibility и usability. А это корень авралов. «Универсальная» архитектура перегружена и неподъёмна.

Но клиент этого понимать не желает — для него это просто приложение, например, для сводных отчётов и каких-то рассчётов.

Для программиста это безумное количество классов с чудоковатым наследованием и гремучей смесью технологий — по-простому делать не хочется, гордость не позволяет, а вписывать что-то новое в уже существующую мракобесную горе-архитектуру для команды целое испытытание и дикие муки, включая автора (если он ещё не уволился)!

«Надо бы задержаться, не успеваем», — говорит босс. Так а где же тут успеешь!
Так и гниёт проект мало по-малу.

=Индусы=
Индусы — это другой страшный зверь мира программирования. В отличие от россейских студентов они впадают в другую крайность — делают всё в лоб в угоду сиеминутной выгоды. Например, поля для хранения времени и даты могут сделать текстовыми. Клиент радуется, сделано всё в срок и быстро да ещё и работает. Пока работает.
Ибо расширяемость и масштабируемость нулевая.

В итоге после индусов имеем тупо поделье для решения данной конкретной задачи. Такой продукт практически нерасширяем. Зависит о того, насколько долго им занимались индусы. Если долго, то приложение, как правило, представляет собой макаронное изделие, где чёрт ногу сломит.

Результат в итоге один, что после «индусов», что после «студентов» — нерасширяемое и неподдерживаемое месиво.

=Нормальные адекватные люди, просто компетентные люди=
Таких стараются на собеседованиях отсеивать. Бо Спольски приказал. Хочется либо звёзд, знающих всё, либо дёшево. Поэтому выбирают либо студентов либо индусов.

И в заключение пример
Заказчик: Хочу штуку, забивающую гвозди на 50 мм.
Индусы: Гут.
Через неделю готов молоток, забивающий гвозди только на 50 мм.
При этом гвозди на 60 мм забивает с трудом, а гвозди на 70 мм и более без серьёзных доработок не способен забить в принципе.

Российские «студенты»: Гут.
Через месяц адовых мук, срывая все сроки, мальчики-зайчики выдают нечто, забивающее сферический гвоздь в вакууме.
В руки клиенту попадает нечто вроде кувалды, забивающей все гвозди одинаково херово. Для поддержания сего агрегата нужно искать спецов по всей Рашеньке.
Re: Любой программный продукт портят студенты и индусы
От: 0x7be СССР  
Дата: 18.05.11 13:38
Оценка: 2 (2) +7 :))) :))) :))) :))) :))) :)
Здравствуйте, msk78, Вы писали:

M>Российские «студенты»: Гут.

M>Через месяц адовых мук, срывая все сроки, мальчики-зайчики выдают нечто, забивающее сферический гвоздь в вакууме.
M>В руки клиенту попадает нечто вроде кувалды, забивающей все гвозди одинаково херово. Для поддержания сего агрегата нужно искать спецов по всей Рашеньке.
Неправильно.

Студент делает модульный агрегат, в который можно воткнуть любой инструмент и который теоретически делать все, от забивания гвоздей до вышивания крестиком.
На деле же он жрет энергетический выход небольшой электростанции и держит молоток не той стороной. А все потому, что для поддержки вышивания крестиком манипулятор оборудован пазами под иголки (на которые ушла треть времени разработки) и плохо держит ручку молотка. То, что заказчик не просил вышивания крестиком ничего не значит, ибо программист лучше знает, что нужно делать. Тем более, что идея сделать модульного робота, вышивающего крестиком давно витала в его голове и грех было не воспользоваться такой возможностью... Единственное, о чем жалее программист, так это о том, что в проекте не нашлось места, куда применить сделанный на досуге язык программирования и оригинальные задумки на тему искуственного интеллекта.
Re: Любой программный продукт портят студенты и индусы
От: Кодёнок  
Дата: 19.05.11 07:36
Оценка: +8 :)))
Здравствуйте, msk78, Вы писали:

M>В Рашеньке очень часто на проект хотят взять ходячую энциклопедию. Алгоритмы все помнит, Си с решёточкой знает и «о малое» умеет и даже по большому может. Да чтобы одной рукой с потоками работал, а другой одновременно вебсервисы писал на WCF да левой ногой секретарше кунилингус делал.


Так и знал, что после “рашеньки” и “куннилингуса ногой” дальше можно было не читать.
Re: Любой программный продукт портят студенты и индусы
От: robin_of_the_wood Россия  
Дата: 18.05.11 19:16
Оценка: 4 (2) +1 -4
Здравствуйте, msk78, Вы писали:

M>Почему большая часть программных продуктов, в частности на корпоративном сегменте кривые и косые, ужасны в использовании и нерасширяемы? А вот, где собака порылась.


M>=Студенты=

M>В Рашеньке очень часто на проект хотят взять ходячую энциклопедию. Алгоритмы все помнит, Си с решёточкой знает и «о малое» умеет и даже по большому может. Да чтобы одной рукой с потоками работал, а другой одновременно вебсервисы писал на WCF да левой ногой секретарше кунилингус делал.
Не знаю насчет секретарши, но к остальному студенты имеют очень опосредованное отношение.

M>В довесок хотят, чтобы кандидат профессионально умел по теории архитектуры и знал все базы данных от MySQL до PL SQL и писал бы трёхэтажные запросы с закрытыми глазами.

M>Ну, кто же это всё кроме студента умеет? Да никто! Вот и берут студента.
Те, кто работал с вышеперечисленным. Их и берут. Студенты тут причем?

M>Садят парня создавать проект какой-нибудь автоматизации бизнеса.

M>Тут и даёт наш студент волю своим шалавливым ручёнкам — и то заюзает и это. Ведь в конце года диплом надо сдавать и если уместить в новом проекте все известные, а лучше неизвестные, передовые технологии и архитектурные приёмы, то преподаватели восхитятся, слава Фаулеру, и поставят пять.
Ни разу не видел, чтобы студенту давали такие задачи. Знатоков Фаулера среди студентов как-то тоже видеть не приходилось.

M>В итоге получается убожество, этакий франкенштейн — здесь и веб сервисы, и Remoting, кое-где на силу пришитый threading. Паттерн на паттерне и паттерном погоняет.

У Вас какое-то нездоровое отношение к паттернам.
Это всего лишь готовые решения строго определенных задач, которые легче выучить, чем дойти до этого методом проб и ошибок.
Ничего более. Правда среди невыучивших само слово "паттерны" обрастает мифами и легендами, изучение которых по обьему и сложности превосходит сами паттерны.

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

M>Расширяемость сей поделки стремиться к нулю. Никакой тебе scalability, extensibility и usability. А это корень авралов. «Универсальная» архитектура перегружена и неподъёмна.

M>Но клиент этого понимать не желает — для него это просто приложение, например, для сводных отчётов и каких-то рассчётов.

M>Для программиста это безумное количество классов с чудоковатым наследованием и гремучей смесью технологий — по-простому делать не хочется, гордость не позволяет, а вписывать что-то новое в уже существующую мракобесную горе-архитектуру для команды целое испытытание и дикие муки, включая автора (если он ещё не уволился)!

M>«Надо бы задержаться, не успеваем», — говорит босс. Так а где же тут успеешь!

M>Так и гниёт проект мало по-малу.
Все это бывает, но к студентам никак не относится. Разве что очень косвенно.
Типа пришел 10 лет назад студентом а сейчас — тим лид, архитектор или чего еще. Это проблема совсем другая.

M>=Индусы=

Это отдельная тема. К нам они на собеседования не ходят и нам не конкуренты.

M>=Нормальные адекватные люди, просто компетентные люди=

M>Таких стараются на собеседованиях отсеивать. Бо Спольски приказал. Хочется либо звёзд, знающих всё, либо дёшево. Поэтому выбирают либо студентов либо индусов.
Ну надо же так издалека начать. Раньше просто писали "как я провалил собеседование"

M>И в заключение пример

M>Заказчик: Хочу штуку, забивающую гвозди на 50 мм.
M>Индусы: Гут.
M>Через неделю готов молоток, забивающий гвозди только на 50 мм.
M>При этом гвозди на 60 мм забивает с трудом, а гвозди на 70 мм и более без серьёзных доработок не способен забить в принципе.

M>Российские «студенты»: Гут.

M>Через месяц адовых мук, срывая все сроки, мальчики-зайчики выдают нечто, забивающее сферический гвоздь в вакууме.
M>В руки клиенту попадает нечто вроде кувалды, забивающей все гвозди одинаково херово. Для поддержания сего агрегата нужно искать спецов по всей Рашеньке.
Вам бы батенька сказки писать про забивающие гвозди штуки а не программировать
Извини ничего личного но уж очень сказки у Вас хорошие
Проектирование велосипедов для слепых жирафов
Re[2]: Любой программный продукт портят студенты и индусы
От: ishare  
Дата: 18.05.11 19:32
Оценка: 1 (1) +6
Здравствуйте, robin_of_the_wood, Вы писали:

___>У Вас какое-то нездоровое отношение к паттернам.

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

"Смотришь в книгу, видишь фигу" (c)
Мало "выучить" паттерны, надо понять где конкретный паттерн подойдет, а где нет.

А большинство студентов и прочих джуниоров страдают маниакальным стремлением эти самые паттерны применить хоть куда-нибудь. К месту или не к месту, это как повезет. Как правило не к месту и не так как надо.
Re: Любой программный продукт портят студенты и индусы
От: abc1234573  
Дата: 19.05.11 11:39
Оценка: -6
Здравствуйте, msk78, Вы писали:

M>Почему большая часть программных продуктов, в частности на корпоративном сегменте кривые и косые, ужасны в использовании и нерасширяемы? А вот, где собака порылась.


M>=Студенты=

M>В Рашеньке очень часто на проект хотят взять ходячую энциклопедию. Алгоритмы все помнит, Си с решёточкой знает и «о малое» умеет и даже по большому может. Да чтобы одной рукой с потоками работал, а другой одновременно вебсервисы писал на WCF да левой ногой секретарше кунилингус делал.

M>В довесок хотят, чтобы кандидат профессионально умел по теории архитектуры и знал все базы данных от MySQL до PL SQL и писал бы трёхэтажные запросы с закрытыми глазами.

M>Ну, кто же это всё кроме студента умеет? Да никто! Вот и берут студента.

M>Садят парня создавать проект какой-нибудь автоматизации бизнеса.

M>Тут и даёт наш студент волю своим шалавливым ручёнкам — и то заюзает и это. Ведь в конце года диплом надо сдавать и если уместить в новом проекте все известные, а лучше неизвестные, передовые технологии и архитектурные приёмы, то преподаватели восхитятся, слава Фаулеру, и поставят пять.

M>В итоге получается убожество, этакий франкенштейн — здесь и веб сервисы, и Remoting, кое-где на силу пришитый threading. Паттерн на паттерне и паттерном погоняет.


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


M>Расширяемость сей поделки стремиться к нулю. Никакой тебе scalability, extensibility и usability. А это корень авралов. «Универсальная» архитектура перегружена и неподъёмна.


M>Но клиент этого понимать не желает — для него это просто приложение, например, для сводных отчётов и каких-то рассчётов.


M>Для программиста это безумное количество классов с чудоковатым наследованием и гремучей смесью технологий — по-простому делать не хочется, гордость не позволяет, а вписывать что-то новое в уже существующую мракобесную горе-архитектуру для команды целое испытытание и дикие муки, включая автора (если он ещё не уволился)!


M>«Надо бы задержаться, не успеваем», — говорит босс. Так а где же тут успеешь!

M>Так и гниёт проект мало по-малу.

M>=Индусы=

M>Индусы — это другой страшный зверь мира программирования. В отличие от россейских студентов они впадают в другую крайность — делают всё в лоб в угоду сиеминутной выгоды. Например, поля для хранения времени и даты могут сделать текстовыми. Клиент радуется, сделано всё в срок и быстро да ещё и работает. Пока работает.
M>Ибо расширяемость и масштабируемость нулевая.

M>В итоге после индусов имеем тупо поделье для решения данной конкретной задачи. Такой продукт практически нерасширяем. Зависит о того, насколько долго им занимались индусы. Если долго, то приложение, как правило, представляет собой макаронное изделие, где чёрт ногу сломит.


M>Результат в итоге один, что после «индусов», что после «студентов» — нерасширяемое и неподдерживаемое месиво.


M>=Нормальные адекватные люди, просто компетентные люди=

M>Таких стараются на собеседованиях отсеивать. Бо Спольски приказал. Хочется либо звёзд, знающих всё, либо дёшево. Поэтому выбирают либо студентов либо индусов.

M>И в заключение пример

M>Заказчик: Хочу штуку, забивающую гвозди на 50 мм.
M>Индусы: Гут.
M>Через неделю готов молоток, забивающий гвозди только на 50 мм.
M>При этом гвозди на 60 мм забивает с трудом, а гвозди на 70 мм и более без серьёзных доработок не способен забить в принципе.

M>Российские «студенты»: Гут.

M>Через месяц адовых мук, срывая все сроки, мальчики-зайчики выдают нечто, забивающее сферический гвоздь в вакууме.
M>В руки клиенту попадает нечто вроде кувалды, забивающей все гвозди одинаково херово. Для поддержания сего агрегата нужно искать спецов по всей Рашеньке.

ты с индусами общался? промышленный код их видел. или только из рассказов и инета инфоормацию получал.
индусы в целом пишут код качественнее чем в России, это из моих наблюдений
Re[3]: Любой программный продукт портят студенты и индусы
От: Sharowarsheg  
Дата: 19.05.11 11:01
Оценка: 9 (1) :)))
Здравствуйте, ishare, Вы писали:

I>А большинство студентов и прочих джуниоров страдают маниакальным стремлением эти самые паттерны применить хоть куда-нибудь. К месту или не к месту, это как повезет. Как правило не к месту и не так как надо.


У медиков, говорят, примерно такая же фигня — студенты медицинского ставят всем тот диагноз, про который им рассказывали на прошлой лекции
Re: Любой программный продукт портят студенты и индусы
От: TMU_1  
Дата: 19.05.11 09:55
Оценка: 1 (1) +3
Здравствуйте, msk78, Вы писали:

M>Почему большая часть программных продуктов, в частности на корпоративном сегменте кривые и косые, ужасны в использовании и нерасширяемы? А вот, где собака порылась.


M>=Студенты=

M>В Рашеньке


Коллеги, по стилю весьма напоминает незабвенного Армадилку, вы не находите? При том, что здравые мысли присутствуют.
Re: Любой программный продукт портят студенты и индусы
От: quwy  
Дата: 18.05.11 13:20
Оценка: 1 (1) +1 :)
Здравствуйте, msk78, Вы писали:

В принципе +1, но

...левой ногой секретарше кунилингус делал.

ЭТО КАК???
Re[2]: Любой программный продукт портят студенты и индусы
От: msk78 Россия http://miccro.livejournal.com
Дата: 19.05.11 08:28
Оценка: 1 (1) +1
Здравствуйте, 0K, Вы писали:

0K>Здравствуйте, msk78, Вы писали:


M>>=Студенты=

M>>В Рашеньке очень часто на проект хотят взять ходячую энциклопедию. Алгоритмы все помнит, Си с решёточкой знает и «о малое» умеет и даже по большому может. Да чтобы одной рукой с потоками работал, а другой одновременно вебсервисы писал на WCF да левой ногой секретарше кунилингус делал.

0K>Вы слишком идеализируете студента. Если таковые и есть -- то это скорее редкое исключение чем правило.


"Студенты" здесь как собирательный образ студентов определённого вида. Их тоже хватает. Особенно если искать.

Вспомнилось. Около меня одно время сидел манагерок, возможно лид. Скорее полулид, полуманагерок (далее по тексту манагерок). Он приехал набирать команду под перешедший к нему от индусов проект. Веб-проект для отображения каких-то табличек и отчётов.
Насколько я понял из рассказов лида/менеджера кандидатам о проекте, необходимо было по большей части поддерживать UI и дописывать новый.

Собеседование сначала проходило по телефону: что такое хэш-код, какого он типа, хэштаблицы, массивы (дерьма), количество итераций и прочие структуры данных.
Чувствовалось, что в вопросах, которые сам же спрашивал манагерок понимал слабовато, ответы были на бумажке. Но после десятка другого собеседований чувствовал себя уже уверенно.

Общался с кандидатами манагерок грубовато.

Сижу и думаю, кого в итоге он наберёт?
Всё оказалось прозаично и вполне ожидаемо: студенты (определённого вида) и один печальный дяденька с засаленными волосами
Re[3]: Любой программный продукт портят студенты и индусы
От: IID Россия  
Дата: 19.05.11 09:09
Оценка: :))
Здравствуйте, msk78, Вы писали:

M>PS Лет 6 уже в Томске не был. Вот и прокололся с кунилингусом


А вот отсюда поподробнее
kalsarikännit
Re[2]: Любой программный продукт портят студенты и индусы
От: mik1  
Дата: 18.06.11 11:41
Оценка: :))
M>Отсюда вывод: индусы, все-таки, предпочтительнее. Потому что получишь работоспособное, соответствующее ТЗ изделие.

Про индусов. Разгребал на днях код, написанный одним из них. Итак, на входе бинарные данные, описывающие время. Допустим, байты, в шестнадцатеричном представлении: 13, 15, 37 (десятичные 19, 21, 55). Эти три байта описывают время 13 часов 15 минут 37 секунд.
Нормальный человек каждую компоненту времени посчитает как
res = ( (inp & 0xF0) >> 4 ) * 10 + ( inp & 0x0F )

Но это не индийский метод. Этот хлопец сначала собрал 16-ную строку, само собой, при помощи деления и остатка от деления на 16. Именно строку (String). А дальше уже он конвертирует ее как десятичную строку в число, поскольку, как он правильно понял, в строке не может быть символов A-F...
Интересно их код читать — такие затейники Понятно, почему именно они Камасутру написали...
Re[4]: Любой программный продукт портят студенты и индусы
От: nizle Россия  
Дата: 21.06.11 07:20
Оценка: -2
Здравствуйте, alzt, Вы писали:

A>Здравствуйте, mik1, Вы писали:


N>>>
N>>>//file a.cpp
N>>>void foo();
N>>>{
N>>>   CTLVParser* parser = NULL;
N>>>   function( parser );
N>>>   delete parser;
N>>>}

N>>>//file b.cpp (реализация этой function)
N>>>void function( CTLVParser* parser )
N>>>{
N>>>   parser = new CTLVParser();

N>>>   ....
N>>>}
N>>>


N>>>Исправлять не стал. Пускай сам в своем г-не копаются.


M>>Я, кажется, догадался. Это такая индийская реализация smart pointer-а. Типа при любом нормальном выходе из метода память чистить. Реализация для Сишных (не плюсовых) динозавров.


A>Только в данном случае будет утечка, т.к. "delete parser" вызовется для нуля.


Не будет утечки, этот указатель передается в функцию, там по этому адресу положат не ноль.
Re: Любой программный продукт портят студенты и индусы
От: Ромашка Украина  
Дата: 18.05.11 13:45
Оценка: 4 (1)
18.05.2011 15:54, Здравствуйте, msk78 :
> Почему большая часть программных продуктов, в частности на корпоративном
> сегменте кривые и косые, ужасны в использовании и нерасширяемы? А вот,
> где собака порылась.

Плюс много.

ЗЫ. Тройку поставлю как мыша из ремонта заберу.
Posted via RSDN NNTP Server 2.1 beta


Всё, что нас не убивает, ещё горько об этом пожалеет.
Re[3]: Любой программный продукт портят студенты и индусы
От: robin_of_the_wood Россия  
Дата: 18.05.11 19:55
Оценка: 4 (1)
Здравствуйте, ishare, Вы писали:

I>"Смотришь в книгу, видишь фигу" (c)

I>Мало "выучить" паттерны, надо понять где конкретный паттерн подойдет, а где нет.
Ну я имел ввиду выучить в хорошем смысле этого слова.

I>А большинство студентов и прочих джуниоров страдают маниакальным стремлением эти самые паттерны применить хоть куда-нибудь. К месту или не к месту, это как повезет. Как правило не к месту и не так как надо.

Ну а вот это как раз потому как не выучили. До понимания. Вот так, чтобы одним коротким предложением.
Не спорю. Было дело, когда молодежь пыталась подобное творить.
Но во всех случаях ни разу не могли сформулировать задачу, решаемую паттерном.
Зато явно ожидали чуть ли не медаль за применение чего-то непонятного но вроде всеми хвалимого.
Но проблема тут не в паттернах а в применении того, чего не понял.
Кстати я согласен с мнением, что паттерны не надо до определенного опыта даже пытаться изучить.
Но ежели как у ТС студент архитектуру ваяет — то тут уж пора. И либо выучи, либо не берись.
Проектирование велосипедов для слепых жирафов
Re[4]: Любой программный продукт портят студенты и индусы
От: msk78 Россия http://miccro.livejournal.com
Дата: 27.06.11 12:48
Оценка: 2 (1)
Здравствуйте, Michael7, Вы писали:

M>Здравствуйте, mik1, Вы писали:


M>>Но это не индийский метод. Этот хлопец сначала собрал 16-ную строку, само собой, при помощи деления и остатка от деления на 16. Именно строку (String). А дальше уже он конвертирует ее как десятичную строку в число, поскольку, как он правильно понял, в строке не может быть символов A-F...

M>>Интересно их код читать — такие затейники Понятно, почему именно они Камасутру написали...

M>Интересно, что у них с образованием? Нормальный-то человек, просто знает в минимальном объеме битовые операции и представление чисел.


Мне думается,что дело не в образовании, а в особенностях собеседования.

Наши расейские мальчики-зайчики а-ля Каа.Питон или Икемефула то же ещё те затейники.
Но только на собеседованиях.

В то время, как наш рашковец за месяц нанимает двух человек — ведь надо, чтобы новый багофиксец знал все алгоритмы, взвешивал арбузы да укладывал люки, ясен Фаулер, круглые.

Индус за тот же месяц нанимает целую команду, включая тим-лида и говорит: "Что делать, хазяина? Работать хотим."

Ну, выгонят пятерых из 20, ну напишет индус что-то криво — да и х$# с ним — проект получен, люди работают, караван идёт.
Re[3]: Любой программный продукт портят студенты и индусы
От: alzt  
Дата: 20.06.11 18:58
Оценка: 1 (1)
Здравствуйте, mik1, Вы писали:

N>>
N>>//file a.cpp
N>>void foo();
N>>{
N>>   CTLVParser* parser = NULL;
N>>   function( parser );
N>>   delete parser;
N>>}

N>>//file b.cpp (реализация этой function)
N>>void function( CTLVParser* parser )
N>>{
N>>   parser = new CTLVParser();

N>>   ....
N>>}
N>>


N>>Исправлять не стал. Пускай сам в своем г-не копаются.


M>Я, кажется, догадался. Это такая индийская реализация smart pointer-а. Типа при любом нормальном выходе из метода память чистить. Реализация для Сишных (не плюсовых) динозавров.


Только в данном случае будет утечка, т.к. "delete parser" вызовется для нуля.
Re[4]: Любой программный продукт портят студенты и индусы
От: Олег К.  
Дата: 19.05.11 00:59
Оценка: +1
I>>А большинство студентов и прочих джуниоров страдают маниакальным стремлением эти самые паттерны применить хоть куда-нибудь. К месту или не к месту, это как повезет. Как правило не к месту и не так как надо.
___>Ну а вот это как раз потому как не выучили. До понимания. Вот так, чтобы одним коротким предложением.

Да сами паттерны-то выучили т.к. учить там особо нечего. А вот понимания что не нужны они для 99% задач нет. И пихают их куда не попадя.

___>Не спорю. Было дело, когда молодежь пыталась подобное творить.

___>Но во всех случаях ни разу не могли сформулировать задачу, решаемую паттерном.

Ни разу не видел реальной задачи где были бы нужны эти паттерны.
Re[5]: Любой программный продукт портят студенты и индусы
От: robin_of_the_wood Россия  
Дата: 19.05.11 18:32
Оценка: -1
Здравствуйте, Олег К., Вы писали:

___>>Ну а вот это как раз потому как не выучили. До понимания. Вот так, чтобы одним коротким предложением.


ОК>Да сами паттерны-то выучили т.к. учить там особо нечего. А вот понимания что не нужны они для 99% задач нет. И пихают их куда не попадя.

Странно. У каждого паттерна решаемая задача и область применения точно описаны.
Я с трудом тут разночтения могу представить

___>>Но во всех случаях ни разу не могли сформулировать задачу, решаемую паттерном.


ОК>Ни разу не видел реальной задачи где были бы нужны эти паттерны.

Не ну я понимаю, что задачи у всех разные бывают, но у нас с Вами с точностью до наоборот выходит.
Скажем если отбросить тривиальный багфиксинг и формогенерацию(с коими Бог миловал не часто общался)
Может мы вообще о разных вещах? Можете пример привести паттерна и ситуации из Вашей практики, где он не нужен а пихают?
Ну если не секрет. Честно интересно
Проектирование велосипедов для слепых жирафов
Re: Любой программный продукт портят студенты и индусы
От: Michael7 Россия  
Дата: 18.06.11 09:45
Оценка: +1
Здравствуйте, msk78, Вы писали:

M>И в заключение пример

M>Заказчик: Хочу штуку, забивающую гвозди на 50 мм.
M>Индусы: Гут.
M>Через неделю готов молоток, забивающий гвозди только на 50 мм.
M>При этом гвозди на 60 мм забивает с трудом, а гвозди на 70 мм и более без серьёзных доработок не способен забить в принципе.

M>Российские «студенты»: Гут.

M>Через месяц адовых мук, срывая все сроки, мальчики-зайчики выдают нечто, забивающее сферический гвоздь в вакууме.
M>В руки клиенту попадает нечто вроде кувалды, забивающей все гвозди одинаково херово. Для поддержания сего агрегата нужно искать спецов по всей Рашеньке.

Отсюда вывод: индусы, все-таки, предпочтительнее. Потому что получишь работоспособное, соответствующее ТЗ изделие.
Re[2]: Любой программный продукт портят студенты и индусы
От: mik1  
Дата: 19.06.11 10:31
Оценка: +1
Здравствуйте, nen777w, Вы писали:

N>Я тоже недавно в индускую часть проекта заглянул, вообще часто заглядываю для поржать, а на этот раз нужно было дописать кой чего и это очень расстроило.

N>Туева хуча нужных и не нужных инклюдов (а вдруг?), using namespace в хидерах (потому что так б..ть удобно).
N>Добил вот такой код (показываю схематически):


N>
N>//file a.cpp
N>void foo();
N>{
N>   CTLVParser* parser = NULL;
N>   function( parser );
N>   delete parser;
N>}

N>//file b.cpp (реализация этой function)
N>void function( CTLVParser* parser )
N>{
N>   parser = new CTLVParser();

N>   ....
N>}
N>


N>Исправлять не стал. Пускай сам в своем г-не копаются.


Я, кажется, догадался. Это такая индийская реализация smart pointer-а. Типа при любом нормальном выходе из метода память чистить. Реализация для Сишных (не плюсовых) динозавров.
Re[2]: Любой программный продукт портят студенты и индусы
От: msk78 Россия http://miccro.livejournal.com
Дата: 18.05.11 13:28
Оценка:
Здравствуйте, quwy, Вы писали:

Q>Здравствуйте, msk78, Вы писали:


Q>В принципе +1, но

Q>

...левой ногой секретарше кунилингус делал.

Q>ЭТО КАК???

акробат стилистическая ошибка
Re[2]: Любой программный продукт портят студенты и индусы
От: Wolverrum Ниоткуда  
Дата: 18.05.11 20:34
Оценка:
Здравствуйте, robin_of_the_wood, Вы писали:

M>>В итоге получается убожество, этакий франкенштейн — здесь и веб сервисы, и Remoting, кое-где на силу пришитый threading. Паттерн на паттерне и паттерном погоняет.

___>У Вас какое-то нездоровое отношение к паттернам.
___>Это всего лишь готовые решения строго определенных задач

Паттерны это даже не решения, а лишь идеи решения некоторых типовых задач.
Re[3]: Любой программный продукт портят студенты и индусы
От: Олег К.  
Дата: 19.05.11 01:01
Оценка:
M>>>В итоге получается убожество, этакий франкенштейн — здесь и веб сервисы, и Remoting, кое-где на силу пришитый threading. Паттерн на паттерне и паттерном погоняет.
___>>У Вас какое-то нездоровое отношение к паттернам.
___>>Это всего лишь готовые решения строго определенных задач

W>Паттерны это даже не решения, а лишь идеи решения некоторых типовых задач.


Я бы сказал не типовых, а надуманных задач.
Re: Любой программный продукт портят студенты и индусы
От: 0K Ниоткуда  
Дата: 19.05.11 06:44
Оценка:
Здравствуйте, msk78, Вы писали:

M>=Студенты=

M>В Рашеньке очень часто на проект хотят взять ходячую энциклопедию. Алгоритмы все помнит, Си с решёточкой знает и «о малое» умеет и даже по большому может. Да чтобы одной рукой с потоками работал, а другой одновременно вебсервисы писал на WCF да левой ногой секретарше кунилингус делал.

Вы слишком идеализируете студента. Если таковые и есть -- то это скорее редкое исключение чем правило.
Re[2]: Любой программный продукт портят студенты и индусы
От: msk78 Россия http://miccro.livejournal.com
Дата: 19.05.11 08:33
Оценка:
Здравствуйте, Кодёнок, Вы писали:

Кё>Здравствуйте, msk78, Вы писали:


M>>В Рашеньке очень часто на проект хотят взять ходячую энциклопедию. Алгоритмы все помнит, Си с решёточкой знает и «о малое» умеет и даже по большому может. Да чтобы одной рукой с потоками работал, а другой одновременно вебсервисы писал на WCF да левой ногой секретарше кунилингус делал.


Кё>Так и знал, что после “рашеньки” и “куннилингуса ногой” дальше можно было не читать.


И почему все обращают внимание только на кунилингус

PS Лет 6 уже в Томске не был. Вот и прокололся с кунилингусом
Re: Любой программный продукт портят студенты и индусы
От: Mystic Украина http://mystic2000.newmail.ru
Дата: 19.05.11 09:00
Оценка:
Здравствуйте, msk78, Вы писали:

M>Почему большая часть программных продуктов, в частности на корпоративном сегменте кривые и косые, ужасны в использовании и нерасширяемы? А вот, где собака порылась.


M>=Студенты=


Имхо, это не студенты, это просто такой склад человека, который активно поощряется. Причем "помнить алгоритмы" тут уже необязательно, главное знать framework-и.
Re: Любой программный продукт портят студенты и индусы
От: vladimir_i СССР  
Дата: 19.05.11 09:45
Оценка:
Здравствуйте, msk78, Вы писали:

M>Почему большая часть программных продуктов, в частности на корпоративном сегменте кривые и косые, ужасны в использовании и нерасширяемы? А вот, где собака порылась.


Нормальные адекватные и просто компетентные люди == д'Артаньяны
Понятно, с кем вы себя ассоциируете. Как и большинство.
Интересно, если провести опрос, на втором месте будет секретарша?

Однако, я не понял куда смотрит начальство. Студентов с индусами принципиально не надо контролировать?
Re[4]: Любой программный продукт портят студенты и индусы
От: Sorc17 Россия  
Дата: 19.05.11 10:00
Оценка:
Здравствуйте, Олег К., Вы писали:

M>>>>В итоге получается убожество, этакий франкенштейн — здесь и веб сервисы, и Remoting, кое-где на силу пришитый threading. Паттерн на паттерне и паттерном погоняет.

___>>>У Вас какое-то нездоровое отношение к паттернам.
___>>>Это всего лишь готовые решения строго определенных задач

W>>Паттерны это даже не решения, а лишь идеи решения некоторых типовых задач.


ОК>Я бы сказал не типовых, а надуманных задач.


Да как вы смеете ведь на этом весть бызнес софт держится.
Для нас [Thompson, Rob Pike, Robert Griesemer] это было просто исследование. Мы собрались вместе и решили, что ненавидим C++ [смех].
Re[2]: Любой программный продукт портят студенты и индусы
От: Klatu  
Дата: 19.05.11 11:01
Оценка:
Здравствуйте, Mystic, Вы писали:

M>Имхо, это не студенты, это просто такой склад человека, который активно поощряется. Причем "помнить алгоритмы" тут уже необязательно, главное знать framework-и.


Этого недостаточно Надо знать всё и обо всем, и без колебаний браться за любую задачу, и решать ее максимально сложным и трудным и кривым способом.
Очень знакомый такой типаж. Правда, не знаю как его точнее назвать. Дон Кихот, может быть?
Re[2]: Любой программный продукт портят студенты и индусы
От: msk78 Россия http://miccro.livejournal.com
Дата: 19.05.11 11:04
Оценка:
Здравствуйте, vladimir_i, Вы писали:

_>Здравствуйте, msk78, Вы писали:


M>>Почему большая часть программных продуктов, в частности на корпоративном сегменте кривые и косые, ужасны в использовании и нерасширяемы? А вот, где собака порылась.


_>Нормальные адекватные и просто компетентные люди == д'Артаньяны

_>Понятно, с кем вы себя ассоциируете. Как и большинство.

Нет, исключительно с графом Монте Кристо
Re[2]: Любой программный продукт портят студенты и индусы
От: msk78 Россия http://miccro.livejournal.com
Дата: 19.05.11 11:55
Оценка:
A>ты с индусами общался? промышленный код их видел. или только из рассказов и инета инфоормацию получал.
A>индусы в целом пишут код качественнее чем в России, это из моих наблюдений

Здесь студенты и индусы являются собирательными понятиями.
Понятно, что не все они такие как описано.

PS То что описано, получено эмпирическим путём
Re[2]: Любой программный продукт портят студенты и индусы
От: gangof4  
Дата: 19.05.11 11:56
Оценка:
Здравствуйте, abc1234573, Вы писали:

A>Здравствуйте, msk78, Вы писали:


M>>Почему большая часть программных продуктов, в частности на корпоративном сегменте кривые и косые, ужасны в использовании и нерасширяемы? А вот, где собака порылась.


M>>=Студенты=

M>>В Рашеньке очень часто на проект хотят взять ходячую энциклопедию. Алгоритмы все помнит, Си с решёточкой знает и «о малое» умеет и даже по большому может. Да чтобы одной рукой с потоками работал, а другой одновременно вебсервисы писал на WCF да левой ногой секретарше кунилингус делал.

M>>В довесок хотят, чтобы кандидат профессионально умел по теории архитектуры и знал все базы данных от MySQL до PL SQL и писал бы трёхэтажные запросы с закрытыми глазами.

M>>Ну, кто же это всё кроме студента умеет? Да никто! Вот и берут студента.

M>>Садят парня создавать проект какой-нибудь автоматизации бизнеса.

M>>Тут и даёт наш студент волю своим шалавливым ручёнкам — и то заюзает и это. Ведь в конце года диплом надо сдавать и если уместить в новом проекте все известные, а лучше неизвестные, передовые технологии и архитектурные приёмы, то преподаватели восхитятся, слава Фаулеру, и поставят пять.

M>>В итоге получается убожество, этакий франкенштейн — здесь и веб сервисы, и Remoting, кое-где на силу пришитый threading. Паттерн на паттерне и паттерном погоняет.


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


M>>Расширяемость сей поделки стремиться к нулю. Никакой тебе scalability, extensibility и usability. А это корень авралов. «Универсальная» архитектура перегружена и неподъёмна.


M>>Но клиент этого понимать не желает — для него это просто приложение, например, для сводных отчётов и каких-то рассчётов.


M>>Для программиста это безумное количество классов с чудоковатым наследованием и гремучей смесью технологий — по-простому делать не хочется, гордость не позволяет, а вписывать что-то новое в уже существующую мракобесную горе-архитектуру для команды целое испытытание и дикие муки, включая автора (если он ещё не уволился)!


M>>«Надо бы задержаться, не успеваем», — говорит босс. Так а где же тут успеешь!

M>>Так и гниёт проект мало по-малу.

M>>=Индусы=

M>>Индусы — это другой страшный зверь мира программирования. В отличие от россейских студентов они впадают в другую крайность — делают всё в лоб в угоду сиеминутной выгоды. Например, поля для хранения времени и даты могут сделать текстовыми. Клиент радуется, сделано всё в срок и быстро да ещё и работает. Пока работает.
M>>Ибо расширяемость и масштабируемость нулевая.

M>>В итоге после индусов имеем тупо поделье для решения данной конкретной задачи. Такой продукт практически нерасширяем. Зависит о того, насколько долго им занимались индусы. Если долго, то приложение, как правило, представляет собой макаронное изделие, где чёрт ногу сломит.


M>>Результат в итоге один, что после «индусов», что после «студентов» — нерасширяемое и неподдерживаемое месиво.


M>>=Нормальные адекватные люди, просто компетентные люди=

M>>Таких стараются на собеседованиях отсеивать. Бо Спольски приказал. Хочется либо звёзд, знающих всё, либо дёшево. Поэтому выбирают либо студентов либо индусов.

M>>И в заключение пример

M>>Заказчик: Хочу штуку, забивающую гвозди на 50 мм.
M>>Индусы: Гут.
M>>Через неделю готов молоток, забивающий гвозди только на 50 мм.
M>>При этом гвозди на 60 мм забивает с трудом, а гвозди на 70 мм и более без серьёзных доработок не способен забить в принципе.

M>>Российские «студенты»: Гут.

M>>Через месяц адовых мук, срывая все сроки, мальчики-зайчики выдают нечто, забивающее сферический гвоздь в вакууме.
M>>В руки клиенту попадает нечто вроде кувалды, забивающей все гвозди одинаково херово. Для поддержания сего агрегата нужно искать спецов по всей Рашеньке.

A>ты с индусами общался? промышленный код их видел. или только из рассказов и инета инфоормацию получал.

A>индусы в целом пишут код качественнее чем в России, это из моих наблюдений

Индусы разные бывают..Видел тех которые пишут отличный ядерный код и без малейших ошибок, даже завидно..
А еще видел таких, которые между коммитят не компилирующийся код, а в changelog делают просто копипаст.
Русских таких я не видел.
Re[4]: Любой программный продукт портят студенты и индусы
От: Vzhyk  
Дата: 19.05.11 16:31
Оценка:
19.05.2011 14:01, Sharowarsheg пишет:

> У медиков, говорят, примерно такая же фигня — студенты медицинского

> ставят всем тот диагноз, про который им рассказывали на прошлой лекции
Только их же не отправляют оперировать больного по их диагнозу.
Posted via RSDN NNTP Server 2.1 beta
Re[2]: Любой программный продукт портят студенты и индусы
От: olegkr  
Дата: 19.05.11 18:07
Оценка:
Здравствуйте, TMU_1, Вы писали:

TMU>Коллеги, по стилю весьма напоминает незабвенного Армадилку, вы не находите? При том, что здравые мысли присутствуют.

Так ведь весна. Даже паша с новым ником вылез.
... << RSDN@Home 1.2.0 alpha 5 rev. 1495>>
Re[5]: Любой программный продукт портят студенты и индусы
От: Sharowarsheg  
Дата: 19.05.11 18:12
Оценка:
Здравствуйте, Vzhyk, Вы писали:

V>19.05.2011 14:01, Sharowarsheg пишет:


>> У медиков, говорят, примерно такая же фигня — студенты медицинского

>> ставят всем тот диагноз, про который им рассказывали на прошлой лекции
V>Только их же не отправляют оперировать больного по их диагнозу.

От того, что бухгалтерия зависла, обычно не умирают. Так что оперировать — нет, а вот кодить вполне можно и студентов.
Re[3]: Любой программный продукт портят студенты и индусы
От: trophim Россия  
Дата: 17.06.11 22:28
Оценка:
...6 лет назад там его было принято ногами делать???
... << RSDN@Home 1.2.0 alpha 5 rev. 1495>>
Let it be! — Давайте есть пчелу!
Re[3]: Любой программный продукт портят студенты и индусы
От: Michael7 Россия  
Дата: 18.06.11 11:45
Оценка:
Здравствуйте, mik1, Вы писали:

M>Но это не индийский метод. Этот хлопец сначала собрал 16-ную строку, само собой, при помощи деления и остатка от деления на 16. Именно строку (String). А дальше уже он конвертирует ее как десятичную строку в число, поскольку, как он правильно понял, в строке не может быть символов A-F...

M>Интересно их код читать — такие затейники Понятно, почему именно они Камасутру написали...

Интересно, что у них с образованием? Нормальный-то человек, просто знает в минимальном объеме битовые операции и представление чисел.
Re[4]: Любой программный продукт портят студенты и индусы
От: zakima Канада  
Дата: 18.06.11 21:25
Оценка:
Здравствуйте, Michael7, Вы писали:

M>Здравствуйте, mik1, Вы писали:


M>>Но это не индийский метод. Этот хлопец сначала собрал 16-ную строку, само собой, при помощи деления и остатка от деления на 16. Именно строку (String). А дальше уже он конвертирует ее как десятичную строку в число, поскольку, как он правильно понял, в строке не может быть символов A-F...

M>>Интересно их код читать — такие затейники Понятно, почему именно они Камасутру написали...

M>Интересно, что у них с образованием? Нормальный-то человек, просто знает в минимальном объеме битовые операции и представление чисел.


Насколько понимаю, там просто можно закончить месячные (утрирую) курсы и стать программистом. Собственно, поэтому такое и качество. С другой стороны те, которые получили bachelor degree очень и очень вменяемые. Но сомневаюсь, что их много и выгодно что-либо им аутсорсить (вроде ЗП у нормальные программистов с ВО сравнима с ЗП в России).
Re: Любой программный продукт портят студенты и индусы
От: nen777w  
Дата: 19.06.11 00:10
Оценка:
Я тоже недавно в индускую часть проекта заглянул, вообще часто заглядываю для поржать, а на этот раз нужно было дописать кой чего и это очень расстроило.
Туева хуча нужных и не нужных инклюдов (а вдруг?), using namespace в хидерах (потому что так б..ть удобно).
Добил вот такой код (показываю схематически):


//file a.cpp
void foo();
{
   CTLVParser* parser = NULL;
   function( parser );
   delete parser;
}

//file b.cpp (реализация этой function)
void function( CTLVParser* parser )
{
   parser = new CTLVParser();

   ....
}


Исправлять не стал. Пускай сам в своем г-не копаются.
Re[4]: Любой программный продукт портят студенты и индусы
От: mik1  
Дата: 19.06.11 10:20
Оценка:
Здравствуйте, Michael7, Вы писали:

M>Здравствуйте, mik1, Вы писали:


M>>Но это не индийский метод. Этот хлопец сначала собрал 16-ную строку, само собой, при помощи деления и остатка от деления на 16. Именно строку (String). А дальше уже он конвертирует ее как десятичную строку в число, поскольку, как он правильно понял, в строке не может быть символов A-F...

M>>Интересно их код читать — такие затейники Понятно, почему именно они Камасутру написали...

M>Интересно, что у них с образованием? Нормальный-то человек, просто знает в минимальном объеме битовые операции и представление чисел.


Бакалавр где-то в Торонто. Теперь в Сиднее работает. Очень любопытный путь у этого хлопца. Вроде выше среднего уровня казался... Вообще чего-то меня люди в последнее время расстраивают.
Re[2]: Любой программный продукт портят студенты и индусы
От: Brutalix  
Дата: 19.06.11 12:37
Оценка:
Здравствуйте, quwy, Вы писали:

Q>Здравствуйте, msk78, Вы писали:


Q>В принципе +1, но

Q>

...левой ногой секретарше кунилингус делал.

Q>ЭТО КАК???

ну вот видишь, тебя бы в эту контору уже не взяли бы...
Re: Любой программный продукт портят студенты и индусы
От: carpenter Голландия  
Дата: 20.06.11 07:53
Оценка:
Здравствуйте, msk78, Вы писали:

Вот до сих пор , с благодарностью вспоминаю человека ( вроде Александр звали ) из БриджКвестЛабса
который собеседовал меня гдето в 2005 году — человек поспрошал общие вопросы и дал
пофиксить несколько багов и ворнингов , засим и все ... потом меня даже брали , но моя текущая контора планку перебила.

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

а что он там знает не знает из алгоритмов — пофиг
( хотя общие вопросы сам бог велел — типа виртуальных деструкторов )

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

Спасибо Саша( а может и не Саша ) еще раз
Весь мир — Кремль, а люди в нем — агенты
Re[2]: Любой программный продукт портят студенты и индусы
От: carpenter Голландия  
Дата: 20.06.11 08:00
Оценка:
Здравствуйте, carpenter, Вы писали:

или таки Анатолий звали
Весь мир — Кремль, а люди в нем — агенты
Re[5]: Любой программный продукт портят студенты и индусы
От: ArtemGorikov Австралия жж
Дата: 20.06.11 08:42
Оценка:
Здравствуйте, mik1, Вы писали:

M>Бакалавр где-то в Торонто. Теперь в Сиднее работает. Очень любопытный путь у этого хлопца. Вроде выше среднего уровня казался... Вообще чего-то меня люди в последнее время расстраивают.


[off] потому что Java?
Re[6]: Любой программный продукт портят студенты и индусы
От: mik1  
Дата: 20.06.11 08:44
Оценка:
Здравствуйте, ArtemGorikov, Вы писали:

AG>Здравствуйте, mik1, Вы писали:


M>>Бакалавр где-то в Торонто. Теперь в Сиднее работает. Очень любопытный путь у этого хлопца. Вроде выше среднего уровня казался... Вообще чего-то меня люди в последнее время расстраивают.


AG>[off] потому что Java?


В каком смысле потому что Java? Вопрос про меня или про хлопца?
Re[7]: Любой программный продукт портят студенты и индусы
От: ArtemGorikov Австралия жж
Дата: 20.06.11 08:55
Оценка:
Здравствуйте, mik1, Вы писали:

M>Здравствуйте, ArtemGorikov, Вы писали:


AG>>Здравствуйте, mik1, Вы писали:


M>>>Бакалавр где-то в Торонто. Теперь в Сиднее работает. Очень любопытный путь у этого хлопца. Вроде выше среднего уровня казался... Вообще чего-то меня люди в последнее время расстраивают.


AG>>[off] потому что Java?


M>В каком смысле потому что Java? Вопрос про меня или про хлопца?

Про хлопца и жаву- правда ли что есть корреляция?
Re[8]: Любой программный продукт портят студенты и индусы
От: mik1  
Дата: 20.06.11 08:59
Оценка:
Здравствуйте, ArtemGorikov, Вы писали:

AG>Здравствуйте, mik1, Вы писали:


M>>Здравствуйте, ArtemGorikov, Вы писали:


AG>>>Здравствуйте, mik1, Вы писали:


M>>>>Бакалавр где-то в Торонто. Теперь в Сиднее работает. Очень любопытный путь у этого хлопца. Вроде выше среднего уровня казался... Вообще чего-то меня люди в последнее время расстраивают.


AG>>>[off] потому что Java?


M>>В каком смысле потому что Java? Вопрос про меня или про хлопца?

AG>Про хлопца и жаву- правда ли что есть корреляция?

Нет никакой. Я пока не видел живого индуса, который бы писал нормальный код.
Re[9]: Любой программный продукт портят студенты и индусы
От: ArtemGorikov Австралия жж
Дата: 20.06.11 09:06
Оценка:
Здравствуйте, mik1, Вы писали:

M>Здравствуйте, ArtemGorikov, Вы писали:


AG>>Здравствуйте, mik1, Вы писали:


AG>>>>[off] потому что Java?


M>>>В каком смысле потому что Java? Вопрос про меня или про хлопца?

AG>>Про хлопца и жаву- правда ли что есть корреляция?

M>Нет никакой. Я пока не видел живого индуса, который бы писал нормальный код.

Я не видел чтобы индус при мне писал код Видел индусов с жава-резюмами и в майке SUN, живьем. Сегодня только рассказывал коллеге что такой фольклор у русских программистов про индусов, — он не понял, говорит все лажают.
Re[10]: Любой программный продукт портят студенты и индусы
От: mik1  
Дата: 20.06.11 09:16
Оценка:
Здравствуйте, ArtemGorikov, Вы писали:

M>>>>В каком смысле потому что Java? Вопрос про меня или про хлопца?

AG>>>Про хлопца и жаву- правда ли что есть корреляция?

M>>Нет никакой. Я пока не видел живого индуса, который бы писал нормальный код.

AG>Я не видел чтобы индус при мне писал код Видел индусов с жава-резюмами и в майке SUN, живьем. Сегодня только рассказывал коллеге что такой фольклор у русских программистов про индусов, — он не понял, говорит все лажают.

У нас их в последнее время все болше становится. Так что как они пишут я вижу. Скоро из зоопарка уходить придется.
Re[4]: Любой программный продукт портят студенты и индусы
От: olegkr  
Дата: 20.06.11 14:11
Оценка:
Здравствуйте, Michael7, Вы писали:

M>Интересно, что у них с образованием?

С детства программированию обучают
... << RSDN@Home 1.2.0 alpha 5 rev. 1495>>
Re[5]: Любой программный продукт портят студенты и индусы
От: alzt  
Дата: 22.06.11 08:33
Оценка:
Здравствуйте, nizle, Вы писали:

N>>>>
N>>>>//file a.cpp
N>>>>void foo();
N>>>>{
N>>>>   CTLVParser* parser1 = NULL;
N>>>>   function( parser1 );
N>>>>   delete parser1;
N>>>>}

N>>>>//file b.cpp (реализация этой function)
N>>>>void function( CTLVParser* parser2 )
N>>>>{
N>>>>   parser2 = new CTLVParser();

N>>>>   ....
N>>>>}
N>>>>


A>>Только в данном случае будет утечка, т.к. "delete parser" вызовется для нуля.


N>Не будет утечки, этот указатель передается в функцию, там по этому адресу положат не ноль.


Я немного подправил исходный код. Что происходит. В первой строчке создаётся указатель parser1, который имеет значение NULL и некий адрес, пусть, например 0x..01.
Далее вызывается функция function, при этом ей передаётся параметр parser1, который имеет значение NULL и адрес 0x..01. При вызове функции происходит копирование значений параметров. В данном случае скопируется NULL. Адрес parser1 копироваться не будет, т.к. мы передаём не &parser1, а просто parser1.
Т.е. на входе функция function имеет параметр parser2 со значением NULL. Естественно этот параметр тоже где-то расположен и имеет некий адрес, например 0x..22.
Далее создаётся новый экземпляр CTLVParser, результатом операции new будет новый указатель, имеющий значение {new CTLVParser()}, это значение и будет записано в ячейку памяти parser2. Т.е. теперь parser2 имеет ненулевое значение. Но напомню, что parser2 — это всего лишь локальная переменная, находящаяся по адресу 0x..22, которая ничего не знает о переменной parser1 (адрес 0x..01). При завершении функции адрес 0x..22 станет недоступен, а память утечёт.
После вызова функции удаляется память, расположенная в ячейке parser1. Т.к. там лежал NULL и никто его не менял, то delete просто проигнорирует это значение.

Исправить код можно, если вместо CTLVParser* принимать на вход CTLVParser**. Тогда функция сможет получить тот самый заветный адрес 0x..01 и возможно, что-то туда сохранит.

Кстати, замечу, что подобная ситуация будет и в Java и в C#.
Re[6]: Любой программный продукт портят студенты и индусы
От: nizle Россия  
Дата: 22.06.11 20:26
Оценка:
Здравствуйте, alzt, Вы писали:

И правда. Мне по невнимательности показалось, что там указатель возращается из функции.
Re[4]: Любой программный продукт портят студенты и индусы
От: LaptevVV Россия  
Дата: 22.06.11 20:40
Оценка:
Здравствуйте, Олег К., Вы писали:

M>>>>В итоге получается убожество, этакий франкенштейн — здесь и веб сервисы, и Remoting, кое-где на силу пришитый threading. Паттерн на паттерне и паттерном погоняет.

___>>>У Вас какое-то нездоровое отношение к паттернам.
___>>>Это всего лишь готовые решения строго определенных задач

W>>Паттерны это даже не решения, а лишь идеи решения некоторых типовых задач.


ОК>Я бы сказал не типовых, а надуманных задач.

Нифига не надуманных! Мы вот сварганили неплохую систему проверки лабов. В основе — шаблонный метод и стратегия. Это позволяет наращивать систему без модификаций основного ядра.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[6]: Любой программный продукт портят студенты и индусы
От: LaptevVV Россия  
Дата: 22.06.11 20:45
Оценка:
Здравствуйте, alzt, Вы писали:

A>>>Только в данном случае будет утечка, т.к. "delete parser" вызовется для нуля.

N>>Не будет утечки, этот указатель передается в функцию, там по этому адресу положат не ноль.

A>Я немного подправил исходный код. Что происходит. В первой строчке создаётся указатель parser1, который имеет значение NULL и некий адрес, пусть, например 0x..01.

A>Далее вызывается функция function, при этом ей передаётся параметр parser1, который имеет значение NULL и адрес 0x..01. При вызове функции происходит копирование значений параметров. В данном случае скопируется NULL. Адрес parser1 копироваться не будет, т.к. мы передаём не &parser1, а просто parser1.
A>Т.е. на входе функция function имеет параметр parser2 со значением NULL. Естественно этот параметр тоже где-то расположен и имеет некий адрес, например 0x..22.
A>Далее создаётся новый экземпляр CTLVParser, результатом операции new будет новый указатель, имеющий значение {new CTLVParser()}, это значение и будет записано в ячейку памяти parser2. Т.е. теперь parser2 имеет ненулевое значение. Но напомню, что parser2 — это всего лишь локальная переменная, находящаяся по адресу 0x..22, которая ничего не знает о переменной parser1 (адрес 0x..01). При завершении функции адрес 0x..22 станет недоступен, а память утечёт.
A>После вызова функции удаляется память, расположенная в ячейке parser1. Т.к. там лежал NULL и никто его не менял, то delete просто проигнорирует это значение.

A>Исправить код можно, если вместо CTLVParser* принимать на вход CTLVParser**. Тогда функция сможет получить тот самый заветный адрес 0x..01 и возможно, что-то туда сохранит.


A>Кстати, замечу, что подобная ситуация будет и в Java и в C#.

Как многа букаф...
Тут ясно с тех слоув: указатель передается по значению.
Остальное — следствие сего печального факта: в функции создается локальная копия, в которую и помещается адрес. При выходе из функции локальная копия умирает, и вуаля — имеем потерянную ссылку.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[4]: Любой программный продукт портят студенты и индусы
От: msk78 Россия http://miccro.livejournal.com
Дата: 27.06.11 13:18
Оценка:
Здравствуйте, Michael7, Вы писали:

M>Здравствуйте, mik1, Вы писали:


M>>Но это не индийский метод. Этот хлопец сначала собрал 16-ную строку, само собой, при помощи деления и остатка от деления на 16. Именно строку (String). А дальше уже он конвертирует ее как десятичную строку в число, поскольку, как он правильно понял, в строке не может быть символов A-F...

M>>Интересно их код читать — такие затейники Понятно, почему именно они Камасутру написали...

M>Интересно, что у них с образованием? Нормальный-то человек, просто знает в минимальном объеме битовые операции и представление чисел.


Точнее, я согласен, в образовании — просто индусы набирают индусов с любым образованием.
Возможно, это одна из причин почему они врут в резюме — всё равно, если попадёшь на собеседование к индусу, а вероятность этого велика, то проверять никто ничего не будет.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.