[Moscow.pm] гребаные тестовые задания

Alexander Lourier aml на rulezz.ru
Чт Дек 10 00:59:10 PST 2015


Бес с ним с кэшем, хоть бы алгоритм правильно написали. Для тех, кто
справляется с первой частью, есть хитрый случай, когда прямоугольники
пересекаются. Тогда надо копировать чуть более хитро, чтобы уже
скопированные фрагменты не начали повторно копироваться.

On Thu, Dec 10, 2015 at 9:25 AM Andrey Kovbovich <akovbovich на gmail.com>
wrote:

> Мне нравится задачка с циклами и {Get,Set}Pixel. Заодно можно узнать в
> курсе ли чел про cache locality, если спросить про разницу по чем бежать в
> цикле по памяти, по x сначала или по y.
> 10 дек. 2015 г. 11:05 пользователь "Alexander Lourier" <aml на rulezz.ru>
> написал:
>
> Вы зря смеётесь. Вы себя перехитрили, подключив к решению элементарной
>> задачи мощнейщую машину регулярных выражений. Её внутренняя сложность
>> огромна, и передав в качестве регулярного выражения один из входных
>> аргументов, вы активировали возможность пользователя контролировать всю эту
>> машину - подкинуть невалидное или вычислительно дорогое выражение,
>> заинжектить код на перле да и ещё кучу всяких гадостей. Т.е. программа не
>> делает того, что должна.
>>
>> Проблема, на самом деле, концептуальная. Я не лично про вас говорю, а
>> вообще, по опыту собеседований (100+). Это своего рода карго-культ у
>> программистов - натаскать "сниппетов" отовсюду, слепить соплями - и
>> программа готова. Если не работает, поискать на stackoverflow,
>> перепробовать все "советы". Если ничего не получается, поискать другую
>> библиотеку. Регулярные выражения могут делать поиск? Могут. Значит надо их
>> и использовать в реализации strstr. Без понимания.
>>
>> Возвращаясь к примеру с регуляркой, я бы назначил собеседование, и первым
>> вопросом попросил рассказать, как эта программа работает. Всегда ли она
>> решает поставленную задачу. Если не всегда, то как это можно исправить. И
>> если кандидат логически сообразит, в чём проблема, и сможет написать
>> нормальное, простое, с циклами, то это очень, очень хороший знак. 90% не
>> смогут.
>>
>> Я много собеседований проводил на программистов, которые будут
>> разрабатывать системы технического зрения. Обычно прошу написать код - есть
>> изображение, надо скопировать прямоугольный фрагмент из одного места в
>> другое (на том же изображении). Из операций доступны только GetPixel и
>> SetPixel. Как вы думаете, какая доля способна написать просто два вложенных
>> цикла по X и Y? Я всё понимаю, собеседование, стресс, но блин, люди, если
>> вы такое не можете написать без сознания, то о чём вообще речь идёт? А
>> резюме кандидатов - одно другого краше: кандидаты наук с работами в области
>> распознавания образов, программисты с опытом 5 лет в компьютерной графике.
>> А всё одно - 90% кандидатов нельзя даже к компьютеру подпускать.
>>
>> On Thu, Dec 10, 2015 at 7:15 AM Anatoly Y <iskhartakh на gmail.com> wrote:
>>
>>> А если на перле вам напишут такое
>>> perl -E 'sub strstr{$_[0]=~/$_[1]/;length $`} say strstr("hello
>>> world","world")''
>>> Вы будете считать, что тест пройден? К вопросу о Кнуте.
>>>
>>> 2015-12-09 22:54 GMT+06:00 Ivan Petrov <i.petro.77.00 на gmail.com>:
>>>
>>>> > 9 декабря 2015 г., 15:35 пользователь Ivan Petrov <
>>>> i.petro.77.00 на gmail.com>
>>>> > написал:
>>>>
>>>> > блин ну при чем тут Кнут и strstr?
>>>>
>>>> > наверное, потому что это фундаментальная вычислительная проблема?
>>>> Оттого в
>>>> > названии одной из самых эффективных реализаций (КМП) есть буква
>>>> принадлежащая
>>>> > Кнуту.
>>>>
>>>> в тестах тестируем не умение составить самый лучший алгоритм, решающий
>>>> какие-то там фундаментальные вычислительные проблемы,
>>>> а умение составить алгоритм ВООБЩЕ.
>>>>
>>>> вот первый попавшийся с прямо Вашей ссылки - ДОСТАТОЧЕН для того чтобы
>>>> пройти тест.
>>>>
>>>> проблема в том что 9 из 10 респондентов его не пишут, увы. Вот эти
>>>> самые 5 строк.
>>>>
>>>>
>>>> попытка свести обсуждение к Кнуту - есть попытка перевести разговор на
>>>> другую тему.
>>>> мы говорим о том что работодатель хочет малыми затратами понять кто
>>>> перед ним стоит и что этот человек из себя представляет.
>>>>
>>>> тесты в данном случае - очень хороший способ.
>>>>
>>>> и я это на своем опыте говорю: приходит 10 человек и из них 9 не
>>>> может написать strstr простейшим способом.
>>>> Если всех 10 собеседовать, то это работу просто бросить надо и только
>>>> собеседованиями заниматься. А так всякие "эксперты" отсеиваются на
>>>> стадии просмотра результатов теста за 10 минут.
>>>>
>>>>
>>>> --
>>>> Moscow.pm mailing list
>>>> moscow-pm на pm.org | http://moscow.pm.org
>>>>
>>>
>>> --
>>> Moscow.pm mailing list
>>> moscow-pm на pm.org | http://moscow.pm.org
>>>
>>
>> --
>> Moscow.pm mailing list
>> moscow-pm на pm.org | http://moscow.pm.org
>>
>> --
> Moscow.pm mailing list
> moscow-pm на pm.org | http://moscow.pm.org
>
----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <http://mail.pm.org/pipermail/moscow-pm/attachments/20151210/757959a3/attachment-0001.html>


Подробная информация о списке рассылки Moscow-pm