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