Увы len+1 и отсутствие этого +1 это очень принципиальный баг, если программист этого подсознательно не чувствует, это плохо. А вот на realloc я бы закрыл глаза, если важно просто показать сам алгоритм.
Толковый может выучить, поэтому я в итоге проверяю только определенные и довольно простые темные места. Если с ними справился, подходит.
Ну я прошу 1-2 задачки на С++ (тут совсем простые алгоритмы, требуется по сути решение в лоб), прошу найти ошибки в хитром коде с кучей темных мест и 1-2 задачки алгоритмических (алгоритмы подбираю такие, что есть решение в лоб с порядочной сложностью и если немного подумать, сильно можно упростить), тут только описать требуется, а дальше испытательный срок покажет.
Не совсем согласен, а я в все же проверяю знания языка, ибо нужен программист на конкретном языке, а не просто программист, который будет как в данных примерах на С косячить с выделением памяти, да и в том же C++ часто доставляет то, что программисты «знают stl», но как оказывается, знает, что есть контейнеры, но не знают какой и когда использовать, не знают алгоритмы, не умеют работать с потоками и так далее и тому подобное. Даже зная std::map не знают std::make_pair и кругом суют конструктор, хорошо если новый тип объявят, а то ведь пишут всю конструкцию целиком.
Да, человек, который умеет программировать, который изучает быстро языки, это хорошо, но на это требуется время, а если взять к примеру тот же С++, то времени может уйти очень много, а в это время производительность труда отдела только упадет, за счет того, что его работу придется досконально проверять.
И если гугл имеет такие ресурсы, может позволить научить сотрудника и посадить его пожизненно на рутину, то мелкие компании не могут себе этого позволить, поэтому стараются искать готовых специалистов.
И проверяю как работает голова на алгоритмах, тут если программисту проще на каком-нить языке написать, пусть на языке напишет, проще словами, пусть словами.
len = strlen(str); /* \0 symbol в конце строки */
buffer = (char*) malloc(len);
Ну что я могу сказать, садитесь, 2. С удачным Segmentation Fault. Я бы на месте экзаменатора за такую ошибку уже отправил набираться опыта.
Да и передача массива со стека в функцию доставляет, в реальной жизни что-то вообще ни у кого из знакомых и подчиненных этого не встречал, да и в каких-либо открытых проектах.
Опять же далее видно, realloc зло, можно было тупо выполнить метод stat и получить размер файла, либо можно сгонять указатель в конец, узнать позицию, выделить память под все сразу и вернуть указатель обратно. Это если читать целиком, а вот если бы файл был пару гигов, тоже весь в память загонять, а потом считать? Я понимаю, что такой файл можно и память отобразить и еще что-нить, но читать буфер по 1кило, обрабатывать цифры и читать дальше совсем не сложно, если последним символом число, то конвертим во временную переменную, читаем следующий кусок, если пробел, так прибавляем, если число, то смотрим по разрядам, умножаем, прибавляем, а дальше как обычно. Реализация не на много сложнее.
Некоторые моменты откровенно слабы и на месте сотрудника гугла я бы вас забраковал.
А кто говорил, что Билл программист, да, что-то он программил, но скорее это просто для забавы. А крадут все у всех, таков современный мир, да и это же воровство вам на пользу, за счет более жесткой конкуренции, а а иначе была бы монополия.
Ну а компания Apple стырила у Xerox идею мыши. И что?
Ааааа, блин, всегда ненавидел софт, который от углов работает, и что теперь делать, опять все выскакивать и мешаться будет при случайном движении мышки.
Да и их метро, WP7.5 только из-за этого и забраковал, идея хорошая, но блин, все в одной куче, интересно, сами разработчики пытались забить экран при большом разрешении ярлыками и что-нить там найти.
На вид все просто, но как обычно по нестандартным расширениям SQL тема не раскрыта, а использование нестандартных расширений не даст сменить бд сменой строки запроса. Тут разве что можно покрыть ORM подходом.
И вот основываясь на своем опыте редко бывает случай, где можно только поменять строку запроса, часто приходится переписывать чуть ли не половину запросов.
Но тут по крайней мере не придется переписывать код, использующий библиотеку.
Да это все фигня, вот как станет опять президентом. Тогда не только в Москву введут войска, а и во все крупные города, для защиты от народа, который «его выбрал» на «честных выборах».
Я делаю не только для того, чтобы изменить мир, но и для того, что получить моральное удовлетворение. Да и как сказать, я на прошлой работе делал web cms, потому, что опенсорсных аналогов для таких масштабов нет и возможно никогда не будет. Некоторые вещи делались методом проб и ошибок, в итоге получилась очень мощная вещь с большим кол-вом интересных решений. Так программисты растащили все кому не лень, даже для малых проектов.
Так что все зависит не от того надо или нет, а от качества, если проект хороший, то рано или поздно он займет свою нишу.
А еще можно оштрафовать все деревья которые производят кислород, ибо у компаний, которые хотят производить устройства, которые будут перегонять CO2 в O2 просто нет шанса заработать, деревья демпингуют сферу производства кислорода. Давайте их оштрафуем и вырубим все.
Ну еще неизвестно, что будет в конечной версии. Да и у Unity вроде как чисто плагин к браузеру. Если уж и говорить про Silverlight, то к примеру про Alternativa3D. Ну а XNA развивается для различных железяк, так что тут не будет передовых движков никогда.
Ну я прошу 1-2 задачки на С++ (тут совсем простые алгоритмы, требуется по сути решение в лоб), прошу найти ошибки в хитром коде с кучей темных мест и 1-2 задачки алгоритмических (алгоритмы подбираю такие, что есть решение в лоб с порядочной сложностью и если немного подумать, сильно можно упростить), тут только описать требуется, а дальше испытательный срок покажет.
Да, человек, который умеет программировать, который изучает быстро языки, это хорошо, но на это требуется время, а если взять к примеру тот же С++, то времени может уйти очень много, а в это время производительность труда отдела только упадет, за счет того, что его работу придется досконально проверять.
И если гугл имеет такие ресурсы, может позволить научить сотрудника и посадить его пожизненно на рутину, то мелкие компании не могут себе этого позволить, поэтому стараются искать готовых специалистов.
И проверяю как работает голова на алгоритмах, тут если программисту проще на каком-нить языке написать, пусть на языке напишет, проще словами, пусть словами.
buffer = (char*) malloc(len);
Ну что я могу сказать, садитесь, 2. С удачным Segmentation Fault. Я бы на месте экзаменатора за такую ошибку уже отправил набираться опыта.
Да и передача массива со стека в функцию доставляет, в реальной жизни что-то вообще ни у кого из знакомых и подчиненных этого не встречал, да и в каких-либо открытых проектах.
Опять же далее видно, realloc зло, можно было тупо выполнить метод stat и получить размер файла, либо можно сгонять указатель в конец, узнать позицию, выделить память под все сразу и вернуть указатель обратно. Это если читать целиком, а вот если бы файл был пару гигов, тоже весь в память загонять, а потом считать? Я понимаю, что такой файл можно и память отобразить и еще что-нить, но читать буфер по 1кило, обрабатывать цифры и читать дальше совсем не сложно, если последним символом число, то конвертим во временную переменную, читаем следующий кусок, если пробел, так прибавляем, если число, то смотрим по разрядам, умножаем, прибавляем, а дальше как обычно. Реализация не на много сложнее.
Некоторые моменты откровенно слабы и на месте сотрудника гугла я бы вас забраковал.
Ну а компания Apple стырила у Xerox идею мыши. И что?
Да и их метро, WP7.5 только из-за этого и забраковал, идея хорошая, но блин, все в одной куче, интересно, сами разработчики пытались забить экран при большом разрешении ярлыками и что-нить там найти.
И вот основываясь на своем опыте редко бывает случай, где можно только поменять строку запроса, часто приходится переписывать чуть ли не половину запросов.
Но тут по крайней мере не придется переписывать код, использующий библиотеку.
Так что все зависит не от того надо или нет, а от качества, если проект хороший, то рано или поздно он займет свою нишу.