Re[23]: Собеседование в компании "Московская биржа"
От: genre Россия  
Дата: 11.09.13 10:37
Оценка: +1
Здравствуйте, Vzhyk, Вы писали:

>> Я тебе больше скажу. код покрытый тестами на 100% тоже очень часто

>> говнокод. Вывод — вообще почти весь код — говнокод.
V>Ты уж извини, но я тебя опять отправлю читать учебники по логике.

когда поймешь что юнит-тесты не панацея тогда будет иметь смысл что-то обсуждать.
... << RSDN@Home 1.2.0 alpha 4 rev. 1476>>
Re[40]: Собеседование в компании "Московская биржа"
От: genre Россия  
Дата: 11.09.13 10:37
Оценка: :)
Здравствуйте, Vzhyk, Вы писали:

V>Гугл диск, гугл толк, хром, андроид.


ничем не пользуюсь. но про 3 и 4 в курсе. и хром и андроид как минимум не хуже конкурентов.
... << RSDN@Home 1.2.0 alpha 4 rev. 1476>>
Re[24]: Собеседование в компании "Московская биржа"
От: Vzhyk  
Дата: 11.09.13 10:49
Оценка:
11.09.2013 13:37, genre пишет:

> когда поймешь что юнит-тесты не панацея тогда будет иметь смысл что-то

> обсуждать.
Я такого не писал, в общем читай учебники.
Posted via RSDN NNTP Server 2.1 beta
Re[25]: Собеседование в компании "Московская биржа"
От: genre Россия  
Дата: 11.09.13 10:57
Оценка:
Здравствуйте, Vzhyk, Вы писали:


>> когда поймешь что юнит-тесты не панацея тогда будет иметь смысл что-то

>> обсуждать.
V>Я такого не писал, в общем читай учебники.

цитата из тебя: А так да, если код не покрыт юнит-тестами на 99% — это говнокод.
... << RSDN@Home 1.2.0 alpha 4 rev. 1476>>
Re[26]: Собеседование в компании "Московская биржа"
От: Vzhyk  
Дата: 11.09.13 11:02
Оценка:
11.09.2013 13:57, genre пишет:

> цитата из тебя: А так да, если код не покрыт юнит-тестами на 99% — это

> говнокод.
Говнокод, потому как делает неизвестно что. И причем тут панацея?
Posted via RSDN NNTP Server 2.1 beta
Re[16]: Собеседование в компании "Московская биржа"
От: landerhigh Пират  
Дата: 11.09.13 11:40
Оценка:
Здравствуйте, genre, Вы писали:

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


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


G>Ну написать юнит-тест, действительно, можно практически к любой функции.


If it's worth writing, it's worth testing.


G>Но смысл этот юнит-тест имеет отнюдь не всегда.


If it's not worth testing, why waste your time working on it?


Из вот такого "это тестировать смысла нет" отрастают знатнейшие факапы.

L>>Мои наблюдения показывают, что на реальных проектах от подобных персонажей ничего, кроме вреда, не бывает.


G>А мои показывают, что корреляции нет. У кого наблюдения длиннее?


Это просто у тебя еще никаких наблюдений толком и не было
Re[37]: Собеседование в компании "Московская биржа"
От: landerhigh Пират  
Дата: 11.09.13 11:44
Оценка:
Здравствуйте, genre, Вы писали:

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


G>>>в какой-такой логике утверждение "решает задачи про гномиков значит плохой программист" истинно?

L>>Корелляция почти 100%

G>кто у нас там задавал вопросы про гномиков, гугл? то есть там только лохи работают?


Совершенно верно. Кроме поиска, у них своих нормальных продуктов толком и не было.
Re[27]: Собеседование в компании "Московская биржа"
От: genre Россия  
Дата: 11.09.13 11:51
Оценка:
Здравствуйте, Vzhyk, Вы писали:

V>Говнокод, потому как делает неизвестно что. И причем тут панацея?


а типа если тест прошел то известно что? что известно кроме того, что проходит вот этот конкретно тест?
... << RSDN@Home 1.2.0 alpha 4 rev. 1476>>
Re[17]: Собеседование в компании "Московская биржа"
От: genre Россия  
Дата: 11.09.13 11:51
Оценка:
Здравствуйте, landerhigh, Вы писали:

L>Из вот такого "это тестировать смысла нет" отрастают знатнейшие факапы.


тестировать != написать юнит-тест.

L>Это просто у тебя еще никаких наблюдений толком и не было


теперь я знаю у кого телепатия включена.
... << RSDN@Home 1.2.0 alpha 4 rev. 1476>>
Re[28]: Собеседование в компании "Московская биржа"
От: Vzhyk  
Дата: 11.09.13 11:56
Оценка:
11.09.2013 14:51, genre пишет:

> а типа если тест прошел то известно что? что известно кроме того, что

> проходит вот этот конкретно тест?
И вот этот тест, вот так, внезапно отвечает тебя на вопрос, что именно
делает то, что написано.
Posted via RSDN NNTP Server 2.1 beta
Re[29]: Собеседование в компании "Московская биржа"
От: genre Россия  
Дата: 11.09.13 12:19
Оценка:
Здравствуйте, Vzhyk, Вы писали:

>> а типа если тест прошел то известно что? что известно кроме того, что

>> проходит вот этот конкретно тест?
V>И вот этот тест, вот так, внезапно отвечает тебя на вопрос, что именно
V>делает то, что написано.

нераспарсил. тест отвечает на вопрос, что делает код который он тестирует?
... << RSDN@Home 1.2.0 alpha 4 rev. 1476>>
Re[17]: Собеседование в компании "Московская биржа"
От: vshemm  
Дата: 11.09.13 14:37
Оценка: 14 (3) +2
Здравствуйте, Vzhyk, Вы писали:

V>10.09.2013 12:54, robin_of_the_wood пишет:


>> сказанное именно в контексте обсуждения не кода вообще, а кода именно

>> функции переворачивающей строку.
V>Так и здесь — это чистая программистская задача и она является
V>выполненной, только после того, как программист докажет, что его код
V>переворачивает строку (какую строку). А для доказательства у
V>программиста этого уже давно есть общепринятый инструмент юнит-тесты.

V>Теперь, как это все сделать на собеседовании на бумажке — это раз?
V>Второе, ищут начальника или программиста? Похоже, что в обсуждаемой
V>ситуации ищут мера, и в качестве теста дают на время подмести улицу.

Юнит-тесты, как и тестирование вообще, ничего подобного не доказывает. Не надо путать верификацию и тестирование. Если все юнит-тесты пройдены, это значит, что *все юнит-тесты пройдены и не более*. В лучшем случае (если сами тесты корректны и корректно написаны), это будет означать, что то ограниченное количество ошибок, на которые они рассчитаны присутствуют или отсутствуют. А для доказательства надо покрыть в общем случае бесконечное количество потенциальных ошибок. Так что применение в реальности юнит-тестов — это из области нахождения регрессий при рефакторинге (включая TDD), но никак не доказательство.

Так что тестирование — не панацея и не серебрянная пуля, смотрите, не обожгитесь
Re[15]: Собеседование в компании "Московская биржа"
От: vshemm  
Дата: 11.09.13 14:38
Оценка:
Здравствуйте, landerhigh, Вы писали:

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


L>>>ты просто не заметил, или возразить нечего?


G>>Интересно в какую прострацию впадает этот программист если юнит тест написать практически невозможно(или очень дорого, например),


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


Ситуаций, когда юнит-тестирование бесполезно или вообще невозможно — масса. Пример невозможности вообще написать юнит-тесты я приводил в этой ветке выше.
Re[35]: Собеседование в компании "Московская биржа"
От: __kot2  
Дата: 11.09.13 16:52
Оценка:
Здравствуйте, genre, Вы писали:
G>прекрасный логический переход. "задает не те вопросы, которые мне нравятся" => "идиот".
G>сам не видишь ничего странного?
не выходных меня башорг пробило почитать. оттуда запомнилось
— Таня, у тебя офигенное туловище!
— классный комплимент

вот ты умный человек, вот напротив тебя сидит умный человек, если самое лучшее, о чем ты можешь завести с ним беседу это спросить про гномиков или про strrev, то я лично обычно на позиции собеседуемого, чтобы не обижать человека просто делаю вид, что решения не знаю, говорю, что мол, не получается, я лучше поготовлюсь получше и стараюсь свалить побыстрее. ну это как лично я делаю. а может быть остальные, кто "не может развернуть строку" они тоже этим принципом руководствуются? никогда не задумывались?
Re[39]: Собеседование в компании "Московская биржа"
От: fin_81  
Дата: 11.09.13 17:56
Оценка:
Здравствуйте, Vzhyk, Вы писали:

>> Я можно также отвечать на собеседованиях?

V>Можно, но если тебе задали бредовый вопрос на конструктивность можешь не
V>надеяться и быть уверенным, что в работе будет также.

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

V>Ну а дальше все

V>зависит от того, насколько тебе нужна именно эта работа.

Кому нужна работа? Всем нужны деньги. Капитализм же. Работа — это побочный продукт движения капитала.
Re[16]: Собеседование в компании "Московская биржа"
От: __kot2  
Дата: 11.09.13 18:14
Оценка:
Здравствуйте, vshemm, Вы писали:
V>Ситуаций, когда юнит-тестирование бесполезно или вообще невозможно — масса. Пример невозможности вообще написать юнит-тесты я приводил в этой ветке выше.
таких случаев д-но масса
легко написать код, который невозможно тестировать

но да, это будет говнокод
Re[18]: Собеседование в компании "Московская биржа"
От: vshemm  
Дата: 11.09.13 18:16
Оценка: +1
V>Здравствуйте, Vzhyk, Вы писали:

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

Но все же позволю себе развить мысль на конкретных примерах.
На strrev. Бла бла, что значит перевернуть строку, бла бла, модификаторы, юникод, умляуты, бла бла ACIIZ строку надо перевернуть.

Вопрос очень простой — нужны ли тут юнит тесты (которые нельзя написать на бумаге)? По-вашему, нужны. Тогда более строгий вопрос — зачем они нужны? Какие проблемы (кроме ИБД) они решают?
Re[17]: Собеседование в компании "Московская биржа"
От: vshemm  
Дата: 11.09.13 18:35
Оценка:
Здравствуйте, __kot2, Вы писали:

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

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

__>но да, это будет говнокод


Можно, но речь о другом. О коде, на который либо неэффективно писать тесты, либо невозможно. Такого кода много.
Re[18]: Собеседование в компании "Московская биржа"
От: vshemm  
Дата: 11.09.13 18:50
Оценка: +2
Здравствуйте, vshemm, Вы писали:

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


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

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

__>>но да, это будет говнокод


V>Можно, но речь о другом. О коде, на который либо неэффективно писать тесты, либо невозможно. Такого кода много.


Оох, двусмысленно высказался. Я имел ввиду не когда априори код говно и его не исправить, а когда функционально нельзя написать идеальный код. Т.е. код идеальный, а тесты написать нельзя.

Пример приводил выше, синхронизация. Вот пишите вы стек, скажем, этот алгоритм можно представить как стейт машину. Но программно вы в принципе не сможете пройти через все переходы этой машины, ибо нет софтового способа заставить процессор переупорядочить инструкции. Или на SMP (или NUMA) софтово влиять на алгоритм синхронизации кешей. И т.д. Здесь тесты в принципе нельзя написать, каким бы идеальным код не был. И таких примеров масса.
Re[19]: Собеседование в компании "Московская биржа"
От: Stanislav V. Zudin Россия  
Дата: 11.09.13 18:58
Оценка: 2 (1) +1
Здравствуйте, vshemm, Вы писали:

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


V>Пример приводил выше, синхронизация. Вот пишите вы стек, скажем, этот алгоритм можно представить как стейт машину. Но программно вы в принципе не сможете пройти через все переходы этой машины, ибо нет софтового способа заставить процессор переупорядочить инструкции. Или на SMP (или NUMA) софтово влиять на алгоритм синхронизации кешей. И т.д. Здесь тесты в принципе нельзя написать, каким бы идеальным код не был. И таких примеров масса.


+1.

Добавлю: или когда результат плохо формализуется и тесты по сложности многократно превосходят собственно код. Дешевле руками запускать и смотреть результат. Таких примеров тоже вагон.
_____________________
С уважением,
Stanislav V. Zudin
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.