Здравствуйте, Олег К., Вы писали:
ОК>Как-то в сторону ты ушел. Начал об одном — закончил другим. Процитирую одну лишь фразу из твоего поста выше. "а вдруг человек шаблоны даже не нюхал?" Звучит как ты ставишь минус человеку за незнание/неиспользование шаблонов.
в апреле прошлого года руководство подкинуло мне идею допила google v8. я посмотрел на сорцы, понял, что ни хрена не понимаю даже синтаксиса этого приплюснотого кода с шаблонами, не говоря уже о том чтобы чего-то туда дописать. не буду рассказывать как я выкрутился из ситуации, но если бы меня изначально брали под этот конкретный проект, а не вешали его уже после приема на работу, то, очевидно, что без знания шаблонов ни за что бы не взяли.
> Но разочарую тебя. В нормальном С++ коде, темплейты используются не так уж и часто.
я бы рад разочароваться, да не получатся. с темплейтами я сталкиваюсь намного чаще, чем хотелось бы. было бы здорово совсем с ними не сталкиваться.
> В Си, макросы больше используются для оптимизации.
потому что в си с макросами много проблем. потому они используются только по нужде. даже классический MAX(a,b) (((a)>(b))?(a)b)) лучше не использовать, т.к. нужно постоянно помнить, что это именно макрос и что он с побочными эффектами.
> Так что эквивалентом твоим макросов в плюсах будут inline функции а не темплейты.
вообще-то я имел ввиду метапрограммирование. эквивалента в си нет. но он есть в js -- программа, результатом работы которой является другая программа.
> С трудом могу представить ситуацию для чего бы тебе понадобились макросы в Си для разных типов (а не для оптимизации).
например, для метапрограммирования. например, писал на си программу для поиска различных последовательностей ассеблерных команд в бинарном файле. программа вышла довольно сложной. позже переписал на js. вышло очень просто. потому что там программа берет на вход данную последовательность и на лету генерирует программу для ее поиска, что сильно упрощает программирование.
да блин вы мне на си напишите релизацию unescape хотя бы. там жутчайший код получается. если проверять на символ конца строки на каждой итерации -- тормоза. если писать оптимально, то нужно проходить циклом по всей строке до strlen(str) — 6, а потом дублировать тело цикла, обрабатывая оставшиеся символы если они есть.
нет, ну вы правда напишите. что бы было можно переварить такое 'XXXXX\01%u1122%uA' и чтобы это работало быстро. и чтобы писалось быстро. получатеся примерно так:
for
{
шаблон_обработки
}
проверка_на_конец_строки
шаблон_обработки;
проверка_на_конец_строки
шаблон_обработки;
проверка_на_конец_строки
шаблон_обработки;
проверка_на_конец_строки
шаблон_обработки;
проверка_на_конец_строки
шаблон_обработки;
проверка_на_конец_строки
шаблон_обработки;
это лучшее, что можно соорудить на си. но это ужас писать и ужос поддерживать. и на коротких строках оно будет все равно жутко тормозить. в принципе можно сделать два варианта функций для коротких и длинных строк, но это еще усложнит и без того громздкий код. а на js и на плюсах этот код можно генерировать динамически в райтайме самой программой.
в принципе можно и конечный автомат для разбора escape строк написать, но писать его лениво. легче написать программу, результатом работы которой будет этот самый конечный автомат.
americans fought a war for a freedom. another one to end slavery. so, what do some of them choose to do with their freedom? become slaves.
Здравствуйте, Олег К., Вы писали:
ОК>И из того же поста под словом шаблоны большинство здесь поняло бы что речь идет о design patterns. Ты и тут перевернул на templates.
Не-а, шаблоны в контексте плюсов это однозначно templates, а design patterns это паттерны чтоб не путать.
ОК>Но разочарую тебя. В нормальном С++ коде, темплейты используются не так уж и часто.
Не дезинформируй мышцъха, он и так неканоничен и имеет искаженный взгляд.
Надо просто уметь их готовить. Помнится ты где-то на этом форуме уже писал про "трудноподдерживаемые однострочные шаблонные функции", а просьбу привести пример проигнорировал.
Здравствуйте, 0rc, Вы писали:
0rc>Лично я ему верю хотя бы тому что у него за спиной находится.
Иметь книгу на полке — одно, прочитать — совсем другое.
Ну а на самом деле надо прочитать, понять и грамотно применить — это уже совсем-совсем другой уровень сложности.
в общем, к чему я это всё. Книга на полке не говорит абсолютно ни о чем.
Я могу допустить, что у него серьезные сложности с уверенностью в себе. Но программист, если он человек толковый и обстоятельный, должен был как минимум подготовить заранее свою речь, а не нести бессвязицу. В крайнем случае читать по бумажке. Он этого не сделал. А должен был.
Здравствуйте, Klatu, Вы писали:
K>Здравствуйте, 0rc, Вы писали:
0rc>>Лично я ему верю хотя бы тому что у него за спиной находится.
K>А должен был.
А зачем человеку покупать книги если он их не читает? Причем, замечу, книги выбраны обстоятельно, какие гипотезы, синсации, расследования будут на этот счет?
Здравствуйте, 0rc, Вы писали:
0rc>А зачем человеку покупать книги если он их не читает?
У каждого второго программиста стоят книги, которые он "обязательно прочитает, когда будет время". Или у каждого первого
0rc>Причем, замечу, книги выбраны обстоятельно
Открываешь кывт, делаешь поиск "книги для программиста"
21.01.2011 5:45, Здравствуйте, 0rc: > Да вас тут единицы кто любит это делать — только на уме бабло, чтоб жопа > была в германиях и англиях ну и конечно чтоб руководить и в потолок > плевать.
Орк, ты с кем разговариваешь? Тут народу мозгов не хватает прочитать
имена классов, а ты пугаешь их Страустрапом.
Posted via RSDN NNTP Server 2.1 beta
Всё, что нас не убивает, ещё горько об этом пожалеет.
V>Феерия в именах классов! Он ещё в комментариях пытается это объяснить!
И? Мне страничка и реализация на первый взгляд понравилась:
+ Человек может писать на вполне хорошем английском. 90% российских программистов на английском не могут и слова связать, а уж если связывают, то их трудно понять даже русскому.
+ Человек может не только накидать кода, но и подготовить окружение и инструкции для остальных программистов, чтобы они не мучились, думая, с какой стороны подступить.
+ Человек ясно излагает свои мысли, что не сверхчастое явление. Значит, что он вполне ясно мыслит.
+ Код нормально структурирован, комментарии находятся там, где и должны быть, код читается легко и понятно, хотя я C++ последний раз видел 10 лет назад.
В любом случае (даже если он не гений-программист), если этот человек не может найти работу, то исключительно по той причине, что вышел из возраста и выглядит не соответствующе...
Здравствуйте, Klatu, Вы писали:
K>У каждого второго программиста стоят книги, которые он "обязательно прочитает, когда будет время". Или у каждого первого
Т.е. вы уверены что на момент снятия видео, он не прочел книги на полке? Я просто не понимаю, какие параллель здесь могут быть?
Хорошо оставим это, тогда я тоже дам свою статистику, итак — 90% программистов глупы настолько, что не в состоянии прочесть книгу даже до 17 страницы, где обычно стоит штамп библиотеки. Какие "у каждого первого" и "каждого второго"? Вы слишком хорошего мнения о коллегах, и слишком плохого мнения о человеке на видео. То что он нервничает — это не новость совершенно для людей которые принимают собеседования.
K>Открываешь кывт, делаешь поиск "книги для программиста"
Ну? Получаю список книг, смотрю в карман — и жаба давит, хорошо, окей — осилил жабу, поднял жопу (мотивация к знаниям внезапно появилось) и несет она тебя на книжный рынок или магазин — и-и-и-и, о блин, их там нет?!? WTF? Часть книг Питер с Символом прекратили выпускать. А вторая часть — например, тот же Стивенс будет в голубеньком издании т.е. в четвертом, а это издание самопальное и после смерти его — там выкинуто одно и добавлено другое. Видете какие нюансы? А у автора на видео томик зелененький на полке. Значит книги он покупал не в одночастие, а со временем.
K>Но ты отклонился от главного вопроса.
Но я бы и рад ответить, но вопроса ж нет. На самом деле ваши вопросы, которых хоть и нет, меня вводят в тоску. Потому что логики в них нет.
Здравствуйте, De-Bill, Вы писали:
V>>Феерия в именах классов! Он ещё в комментариях пытается это объяснить!
DB>И? Мне страничка и реализация на первый взгляд понравилась: DB>+ Человек может писать на вполне хорошем английском. 90% российских программистов на английском не могут и слова связать, а уж если связывают, то их трудно понять даже русскому. DB>+ Человек может не только накидать кода, но и подготовить окружение и инструкции для остальных программистов, чтобы они не мучились, думая, с какой стороны подступить. DB>+ Человек ясно излагает свои мысли, что не сверхчастое явление. Значит, что он вполне ясно мыслит. DB>+ Код нормально структурирован, комментарии находятся там, где и должны быть, код читается легко и понятно, хотя я C++ последний раз видел 10 лет назад.
DB>В любом случае (даже если он не гений-программист), если этот человек не может найти работу, то исключительно по той причине, что вышел из возраста и выглядит не соответствующе...
— нечитаемые без напряга имена классов, дебильные имена переменных
— нечитаемое без напряга форматирование кода (расстановка {}, боязнь пустых строк)
— интерфейс класса после деталей реализации (членов), члены класса без префиксов/постфиксов
0rc>Но я бы и рад ответить, но вопроса ж нет. На самом деле ваши вопросы, которых хоть и нет, меня вводят в тоску. Потому что логики в них нет.
Логика простая. Человек на видео не нравится, и на базе этого делаются выводы: что он псих, что книг не читал, что программировать не умеет, да и вообще хрен знает откуда взялся и чего хочет.
DB>+ Человек может писать на вполне хорошем английском. 90% российских программистов на английском не могут и слова связать, а уж если связывают, то их трудно понять даже русскому.
Не смешите!
CThrdPullVMN
1) Чувак не знает разницу между глаголом pull и cуществительным pool
2) VMN — это конечно же умение ясно называть классы
CWrkThrdPsprtN
Ни одной гласной — попробуйте произнести.
300 классов в небольшой утилитке — чувак явно не слышал про принцип KISS
Здравствуйте, Klatu, Вы писали:
0rc>>Лично я ему верю хотя бы тому что у него за спиной находится.
Я тоже верю. K>Иметь книгу на полке — одно, прочитать — совсем другое. K>Ну а на самом деле надо прочитать, понять и грамотно применить — это уже совсем-совсем другой уровень сложности. K>в общем, к чему я это всё. Книга на полке не говорит абсолютно ни о чем.
Кто читать не собирается, тот и не покупает. Книги ДОРОГО стоят. K>Я могу допустить, что у него серьезные сложности с уверенностью в себе. Но программист, если он человек толковый и обстоятельный, должен был как минимум подготовить заранее свою речь, а не нести бессвязицу. В крайнем случае читать по бумажке. Он этого не сделал. А должен был.
Я посмотрю на вашу уверенность после того, как вы более года побудете безработным при наличии жены и детей.
Я был безработным три месяца — врагу не пожелаю!
Тем более, что тут явная дискриминация по возрасту — будешь волноваться.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
H>1) Чувак не знает разницу между глаголом pull и cуществительным pool
Ты делаешь выводы о его незнании английского на основе этого факта? Достаточно почитать его текст и комментарии, чтобы понять, что он знает английский лучше 90% российских программистов.
Здравствуйте, LaptevVV, Вы писали:
LVV>Тем более, что тут явная дискриминация по возрасту — будешь волноваться.
Видать, в новосибе проблемы для с/с++ программистов, уехать он не может, оно и понятно, одно дело в 20 лет, другое дело в его возрасте. Предположу он банально не может найти работу сишника, а в объявлениях — один аутсорс на java андроидах и objectc для айфонов. Вот ему и осталось сказать, что для него не проблема и джава и маки. Потому что сейчас-то время такое "модное" в основном на эти технологии.
Здравствуйте, De-Bill, Вы писали:
DB>Логика простая. Человек на видео не нравится, и на базе этого делаются выводы: что он псих, что книг не читал, что программировать не умеет, да и вообще хрен знает откуда взялся и чего хочет.
Логика простая. Человек на видео не сделал простейшего необходимого шага — подумать заранее, о чем он собирается говорить.
Но это еще не все. Пересмотрев свое видео, он должен был увидеть, что всё сказанное — ни о чем, не несет практически никакой смысловой нагрузки. После чего, должен был скорректировать ошибки и перезаписать видео. Это также не было сделано.
Книги он, возможно, читал, но много ли понял и насколько качественно сможет применить на практике — это отдельный, очень большой вопрос.
Повторюсь еще раз, наличие книг на полке не делает владельца образованнее ни на йоту.
есть мнение что это прикол, ну то есть человек на видео и его резюме это всё шутка.
ибо после такой "известности" я думаю его вряд ли куда то возьмут на работу.
хотелось бы мнение эчаров послушать, взяли бы такого себе или нет?
Я знаю, как управлять Вселенной. И скажите, зачем же мне бежать за миллионом?!(c)
Здравствуйте, 0rc, Вы писали:
0rc>Видать, в новосибе проблемы для с/с++ программистов, уехать он не может, оно и понятно, одно дело в 20 лет, другое дело в его возрасте.
Для с/с++ программистов везде проблемы. C, а затем и CPP, до сих пор основной язык которому учат студентов. Пусть даже большинство учит его для зачета, но всегда найдется достаточно молодых людей которые искренн уверены, что CPP это вершина творения и ради этой веры готовых по ночам читать Страуструпа.
Удивляет, что при заявленном опыте, каком-то английском, научном бэкграунде и любви к программированию до сих пор не прибился к какому-нибудь open source проекту. Те же Alt, Cannonical и Red Hat еще и не таких чудаков нанимали.
Здравствуйте, De-Bill, Вы писали:
H>>1) Чувак не знает разницу между глаголом pull и cуществительным pool
DB>Ты делаешь выводы о его незнании английского на основе этого факта? Достаточно почитать его текст и комментарии, чтобы понять, что он знает английский лучше 90% российских программистов.
Я читал его код. Абсолютно нечитаемое д..мо.
Извиняюсь, но это так
Здравствуйте, мыщъх, Вы писали:
nvb>> Это я не с целью вас уязвить, а по собственному опыту, помня свои экзерсисы nvb>> в данной области, когда готовился к выступлению перед директоратом. М>перед камерой я был. можете наглить. конференции. интервью. даже по российскому тв показывали. и да, вид там у меня тоже довольно жалкий. так что я в курсе проблем. но у меня есть оправдание. когда ты на конференции или перед журналистами, то нет возможности переиграть. а когда готовишь ролик на ютую, над ним можно и поработать.
Можно, и он поработал — рассказывал явно не в первый раз, судя по отсутствию эканья. На каком-то этапе он остановился.
Конечно, я бы записал все вначале на бумажку, заучил, прочитал раз 5 перед камерой, после этого нарезал бы лучших кусков в Pinnacle Studio и собрал бы их воедино. Но он предпочел сразу, может быть, из-за того, что просто видеомонтаж не умеет делать. Чужая душа потемки.
nvb>>Это я типа как HR говорю. М>да... я даже офигел. вы как шерлок. по одному башмаку описали харакер человека
Не иронизируйте. Я высказал свое впечатление. Правильное оно или нет — это другой вопрос.
nvb>>Каким конкретным поиском? М>в смысле HR получает конкретные задания от манагеров. например, требуется жавист или плюсовик с глубокими знаниями принципов кодирования видеоданных (перечислятся ключевые слова разных стандартов на DVD/Blu-Ray, чтобы HR мог ореентироваться).
Не, конечно, это не скрининг, а что-то гораздо более продвинутое
М>я все выклянчиваю людей себе в помощь, но до сих пор не могу никак написать зачотное послание к HR, они его все заворачивают на доработку, потому как я прошу просто "толковых людей", а HR говорит, что толковых у нас полстраны, вы конкретно говорите что вам нужно.
Ну так это ваш выбор. Вы можете потратить 8 часов на описание вакансии, или втрое больше на беседы с людьми, которые подходят под написанную за 15 мин вакансию, но не под вашу задачу.
Я отношусь к написанию вакансии как к написанию ТЗ для оутсорсера. Либо я, потратив некоторое количество времени, его четко напишу перед выдачей задания, либо придется 20 раз объяснять на словах, что надо поменять, и в итоге оба останемся недовольны.
В принципе, есть риск отсеять гения, но я-то ищу не гения, а человека, который способен выполнить вполне конкретную задачу.
nvb>>Все ваши вопросы задаются на техническом собеседовании, но на него еще надо попасть. М>когда искал работу, то с HR разных стран общался плотно, но уже на стадии обсуждения условий приема на работу. а так все было очень просто.
М>я2hr: хочу у вас работать на данном участке фронта (резюме не показываю ибо его у меня нет до сих пор); М>hr2me: вот вам тестовое задание/тестовые вопросы; М>я2hr: вот мое решение; М>hr2me: звонить по номеру XXX в YYY, с вами будут говорить foo, bar и baz.
Ну так вы уже этап скрининга прошли, а ему еще только предстоит до него дойти