Re[15]: Так что это за ходоки по собеседованиям?
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 09.05.11 07:38
Оценка:
Здравствуйте, мыщъх, Вы писали:

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


G>>Здравствуйте, мыщъх, Вы писали:


A>>>>речь о том что по названию класса можно определить его поведение.

A>>>>класс File не удаляет файл в деструкторе,
A>>>>а класс TempFile — удаляет файл в деструкторе,
М>>>то есть для создания временных файлов нужен целый класс? а почему не метод CreateTempFile класса File? почему не CreateFile(,,,TEMP_FILE) ?!

G>>Потому что в таком случае посмотрев на созданный файл ты не узнаешь что он временный.

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

G>>Именно типы позволяют в программах передавать больше информации, чем содержится в самом тексте.

G>>В твоем случае File.CreateTempFile должен возвращать TempFile, который будет наследником File.
М>да не будет он возвращать TempFile. 'temp' это один из очень многих атрибутов объекта File. более того, деструктору глубоко начхать какой файл -- временный или нет. он вызывает close, не вникая в техническе детали.

М>CreateTempFile это обертка над File.Create|Open. в принципе, я согласен, что удобнее иметь File.CreateTempFile, чем File.CreateFile('имя_по_фиг_для_временных_файлов_его_выберет_сама функця', TEMP_FILE), но создавать производный класс... интересно, в какой библиотеке (из числа популярных) разработчики применили такое решение?


Наверное TempFile не очень удачное название. Важно что этот файл по-умолчанию будет удаляться в деструкторе, возможно AutoDeleteFile будет более удачным названием, так как отражает поведение. Ему вполне можно добавить метод DoNotDelete, чтобы выполнять нужный тебе сценарий.
Re[7]: Практики?
От: rm822 Россия  
Дата: 09.05.11 07:38
Оценка:
М>а вот теперь реализовать это за O(N). брутфорсить не предлагать.
а 1000 ядер нвидии не спасет отца русской демократии?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[8]: Практики?
От: dZentle_man  
Дата: 09.05.11 07:43
Оценка:
Здравствуйте, rm822, Вы писали:

М>>а вот теперь реализовать это за O(N). брутфорсить не предлагать.

R>а 1000 ядер нвидии не спасет отца русской демократии?
А еще лучше Playstation 3)
Re[3]: о зубрилах
От: dZentle_man  
Дата: 09.05.11 07:45
Оценка:
Здравствуйте, Klatu, Вы писали:


cli>>>>Так может тебе твои преподы и зарплату тогда будут платить?

K>>>Мне хорошо платят, не переживай. И что самое характерное — идиотскими задачками на собеседовании в этой фирме меня не изводили.
Z_>>Это где так?)
K>Это не в России. Удаленка.
Так это ж еще лучше) И где такая благодать?)
Re[9]: Практики?
От: rm822 Россия  
Дата: 09.05.11 07:56
Оценка:
Z_>А еще лучше Playstation 3)
чем лучше-то? это ж брахло 2006г выпуска. они уже даже до современных ЦП с трудом дотягивают
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[2]: Так что это за ходоки по собеседованиям?
От: minorlogic Украина  
Дата: 09.05.11 08:00
Оценка:
Здравствуйте, visitor_pattern, Вы писали:

_>Ладно бы спрашивали тонкости реализации (например как этот самый HashMap ведет себя при попытке изменения из разных потоков и почему так происходит) — нет просто схему.


Ээээ... вот тут не понял, он падает при модификации из разных потоков как то особенно? по другому чем связанный список или массив ?
... << RSDN@Home 1.2.0 alpha 4 rev. 1237>>
Ищу работу, 3D, SLAM, computer graphics/vision.
Re[9]: Практики?
От: landerhigh Пират  
Дата: 09.05.11 08:57
Оценка:
Здравствуйте, cli, Вы писали:

L>>Я не так давно подобному деятелю выкатил решение, более эффективное, нежели его "правильный ответ".

L>>Столько говна и соплей было!

cli>Пока, что говном тут ты кидаешься, не зная человека лично.


Ссылку, пожалуйста. Иначе ты — трепло.
Re[10]: Практики?
От: cli  
Дата: 09.05.11 09:07
Оценка: 1 (1) -1 :))
Здравствуйте, landerhigh, Вы писали:

L>>>Столько говна и соплей было!

L>Ссылку, пожалуйста. Иначе ты — трепло.

Сам найдёшь на этой странице? Такими словесными оборотами со своими друзьями дегенератами можешь общаться
Re[3]: Так что это за ходоки по собеседованиям?
От: Sharowarsheg  
Дата: 09.05.11 09:41
Оценка:
Здравствуйте, alpha21264, Вы писали:

PKz>>Не знаю что это за люди и что за компании, и в каком гондурасе это происходит, но от предложения написать код на клочке бумаги я блеванул бы не отходя от кассы.


A>Яндекс просит написать небольшую программу на бумажке.

A>Если Яндекс для Вас — Гондурас, то Вы зажрались.

Такова жизнь, чорт побери.
Re[28]: Практики?
От: MozgC США http://nightcoder.livejournal.com
Дата: 09.05.11 09:54
Оценка:
Здравствуйте, keenn, Вы писали:

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


K>так ты на курсе теперь понятно почему такой злой


Ага, классно подколол
Re[3]: Так что это за ходоки по собеседованиям?
От: AndrewJD США  
Дата: 09.05.11 10:14
Оценка:
Здравствуйте, VovkaMorkovka, Вы писали:

VM> когда они требуются, есть тимлид, чтобы это знать.

Т.е. тимлид должен делать ревью всего кода своей команды на случий если кто-то чего не знает и подтирать за всеми?
"For every complex problem, there is a solution that is simple, neat,
and wrong."
Re[18]: Практики?
От: 24  
Дата: 09.05.11 10:16
Оценка:
Здравствуйте, neFormal, Вы писали:

F>увы:

F>
F>class Bar{
F> int a;
F> int b;
F>};
F>Bar b = {1,2}
F>

RU>>
F>test.cpp:36: ошибка: in C++98 ‘b’ must be initialized by constructor, not by ‘{...}’
F>test.cpp:36: предупреждение: extended initializer lists only available with -std=c++0x or -std=gnu++0x
RU>>

F>© g++ (Gentoo 4.4.5 p1.2, pie-0.4.5) 4.4.5


С приватными полями для структур тоже не проходит:
struct Test {
private:
    int a;
    int b;
};

int main() {
    Test t = {2, 9};
    
    return 0;
}

Visual C++ 2008 Express Edition:

error C2552: 't' : non-aggregates cannot be initialized with initializer list 'Test' : Types with private or protected data members are not aggregate


GCC 4.5.1 20100924 (Red Hat 4.5.1-4):

error: in C++98 ‘t’ must be initialized by constructor, not by ‘{...}’
error: could not convert ‘{2, 9}’ to ‘Test’
error: ‘int Test::a’ is private
error: within this context
error: ‘int Test::b’ is private
error: within this context


Comeau C/C++ 4.3.10.1 (Oct 6 2008 11:28:09) for ONLINE_EVALUATION_BETA2:

error: initialization with "{...}" is not allowed for object of type "Test" Test t = {2, 9};

Re[12]: Практики?
От: 24  
Дата: 09.05.11 10:26
Оценка: +1
Здравствуйте, SkyDance, Вы писали:

24>>Как-то так:


24>>
24>>std::set<std::string> words;
24>>


SD>Работать будет, но задачу решает совсем другую, не ту, что была задана


Задача была "посчитать количество уникальных слов" (http://rsdn.ru/forum/job/4263544.1.aspx
Автор: cli
Дата: 08.05.11
), что не так?
Re[5]: Так что это за ходоки по собеседованиям?
От: robin_of_the_wood Россия  
Дата: 09.05.11 11:26
Оценка:
Здравствуйте, мыщъх, Вы писали:

___>>Но вот если у кандидата на позицию С++ программиста пробелы в знаниях приводят к излишним или недостаточным вызовом деструкторов, то его код имеет очень небольшую ценность(иногда отрицательную) и требуется дополнительное образование.

___>>А если ему еще вопросы на эту тему не нравятся — то тут надо сразу прощаться.

М>по поводу отрицательной ценности. написал быстрый и грязный файл на си и отдал коллеге на рефракторинг. после рефракторинга:

М>1) код перстал компилиться ms vc (у коллеги gcc);
М>2) код стал впадать в бесконечный цикл на каждом втором примере;

М>по поводу (2) -- я не уверен, что это не есть следствие (1), т.к. я все-таки собрал его ms vc в матюгами. возможно, под gcc оно соберется и без зависаний, но... на фига мне такой рефракторинг? а начальство сказало, что я сам дурак, ибо у коллеги не было мазы и профита делать это кошерно и правильно, т.к. код мой и профит мой, хотя мы оба сидим на окладе и рефракторингом его подписали заниматься в свободное от основной работы время. и вот я сейчас думаю -- что делать? забить или списать это на "ошибки со всеми случаются" ? что код виснет -- это ладно. это просто баг, а баг это косяк. бывает. но вот что из ANSI C мы получили диалект gcc -- тут попахивает фундаментальными пробелами. в частности, коллега стал объявлять переменные "на лету", что, конечно, удобно, но... это будет или C99 или gcc расширение С89. с учетом того, что коллега пишет под никсы, вероятно, он даже не знает, что есть расширение, а что есть стандарт (под никсами объявление переменных по месту использования в си программах очень популярно).

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


М>с goto понятно, но вот попадались сообщения, что людям отказывали только потому что они давали переменным и функциям короткие и бессмысленные имена типа a, p, i... а тут уже очень спорно. что лучше for(a=0;a<len;a++) *p = a; или for(index = 0; index < length_of_divine_array; index++) divine_array[index] = index; второй пример понятнее, но он и длинее. его длинее не только писать, но и читать. а чем длинее код -- тем меньше его помешается на экране. кстати, математики в формулах почему-то тяготеют к однобуквенным обозначениям. интересно почему? и как будут выглядеть формулы, записанные английским языком без сокращений?

Люди говорили что им отказывали _только_ из-за этого.
Лично мне слабо верится если честно. Ну конечно и среди собеседующих встречаются необычные люди.
Но вот я во всех конторах, где привлекался к техсобеседованиям, всегда писал отчет. И если бы я написал "все знает но некошерно называет переменные — не брать", то наверно на следующее собеседование меня бы просто не позвали. Это как минимум
Меня кстати по этому поводу забавляют местные рассказки про заваливания сильных кандидатов много запросивших.
Я в очень разных конторах и проводил и проходил собеседования. Нигде и никогда техническое собеседование с разговором о деньгах не пересекалось. Собеседуя кандидата я никогда не знал(кроме случайных исключений) запрашиваемую ЗП.
Вариант отчета "все знает, но не ответил на мой суперзаверченый вопрос, или не читал мою любимую книжку — не брать" мне кажется фантастическим. Не ну может быть сам генеральный проводит собеседование и ни перед кем не отчитывается. Ну или чего-то в этом роде.

М>а что если кандидат считает, что ассмблер лучше си, а си лучше, чем питон? и никак ему не объяснить, что программа, работающая с приемлимой скоростью на _всех_ платформах без дополнительных телодвижений с точки зрения бизнеса лучше, а программист на питоне еще и дешевле и что асм нужен только там, где он действительно нужен?

Я принимал участие только в собеседовании на конкретную позицию с использованием конкретного языка.
Что считает кандидат по поводу остальных языков на результат собеседования не влияло.
Если он под требования подходит то возможно потом с ним интересно будет поговорить-поспорить на эти темы

М>или вот как объяснить, что логику нужно изначально отделять от интерефейса, причем, под интерфейсом понимается не только UI, но и API. в частности, если мы пишем функцию типа compress_data, то вызовы alert("critical error") нелепы, т.к. тут смешаны два уровня и что compress_data должна возврашать ошибку, обрабатываемую вызывающим ее кодом? C# программисты очень любят кидать исключения с текстовыми сообщениями и их сложно переубедить, что это не есть хорошо.

Программисты много чего любят детать нехорошего , но есть ревью кода, есть присмотр за джуниорами и много чего.
Все это правда к собеседованиям мало относится.
Разве что, если человека невозможно переубедить даже весомыми аргументами и он готов отстаивать свое ошибочное мнение до нервного срыва, то это очень сильный аргумент в сторону "не брать".
Проектирование велосипедов для слепых жирафов
Re[3]: Это не выгорел, это просто повзрослел (-)
От: ishare  
Дата: 09.05.11 11:39
Оценка:
Здравствуйте, keenn, Вы писали:

OAO>>>Вообще, кто все эти люди?


K>или даже так, как вариант. ты весь такой профессионал. в метро, дома в любую свободную минуту ты читаешь интереснейшую компутерную инфу. на работе углубляешься в тонкости и глубоко копаешь. года идут. со временем что-то происходит, тебе уже не так интересно, чаще ты начинаешь заниматься чем-то другим, более тебя интересующим (и о ужас! даже почитывать об этом в рабочее время). компутерные талмуды на 650 страниц пылятся по полгода. это называется — ты выгорел. ты видишь, что денег особо бОльших гораздо более глубокие знания тебе не приносят (а деньги к этому моменту тебя начали интересовать больше чем все новые захватывающие компутерные открытия).
Re[4]: Это не выгорел, это просто повзрослел (-)
От: out-of-the-way США www.tehnoromantik.net
Дата: 09.05.11 11:48
Оценка:
Здравствуйте, ishare, Вы писали:

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


OAO>>>>Вообще, кто все эти люди?


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


А разве такое бывает? У меня даже близко нету.
Программа — мысли спрессованные в код.
Re[5]: Это не выгорел, это просто повзрослел (-)
От: ishare  
Дата: 09.05.11 12:15
Оценка:
Здравствуйте, out-of-the-way, Вы писали:

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


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


OAO>>>>>Вообще, кто все эти люди?


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


OOT>А разве такое бывает? У меня даже близко нету.

Ну да. Теперь для меня программирование это, хоть и интересная, но просто работа, а когда то вообще ничего другого не интересовало.
Re[5]: Это не выгорел, это просто повзрослел (-)
От: keenn  
Дата: 09.05.11 12:44
Оценка: +1
OOT>А разве такое бывает? У меня даже близко нету.

все люди разные (с).

меня например серьезное и по серьезному ничего кроме денег никогда не интересовало. кто то не верит, кто то смееца над моей убогостью. но тем не менее это так и совершенно очевидно что я таким останусь на всю жизнь. и я себя не оправдываю, догадываюсь што раз все брезгливо морщаца значит со мной што то не так. но я даже не могу себе представить как может быть по другому. как те слепые и фиолетовый цвет
Re[9]: Так что это за ходоки по собеседованиям?
От: Klatu  
Дата: 09.05.11 13:41
Оценка:
Здравствуйте, Ikemefula, Вы писали:

I>Унизить человека проще всего при большом скоплении людей особенно если с тобой много друзей которые не дадут тебя в обиду, т.е. проще всего на публике когда ответственности ты не понесёшь.


Чувствуется знаток темы
Ну много публики на собеседование не притащишь, но поглумиться на форуме — это у них похоже милое дело
... << RSDN@Home 1.2.0 alpha 5 rev. 1510>>
Re[10]: Так что это за ходоки по собеседованиям?
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 09.05.11 13:49
Оценка:
Здравствуйте, Klatu, Вы писали:

I>>Унизить человека проще всего при большом скоплении людей особенно если с тобой много друзей которые не дадут тебя в обиду, т.е. проще всего на публике когда ответственности ты не понесёшь.


K>Чувствуется знаток темы

K>Ну много публики на собеседование не притащишь, но поглумиться на форуме — это у них похоже милое дело

Унизить на форуме вообще по моему очень сложно Ну разве что если комплексы выплывут наружу или люди слишком хорошо друг друга знают. Как то так.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.