(no subject)
Jan. 18th, 2007 09:56 am-Ты кто?
-Добрая фея.
-А чего с топором?
-Да настроение что-то не очень...
(via
anhel_05 )
В связи с тем, что все конторы с началом года набирают под обновленный бюджет народ, уже почти месяц имею по 2-3 интервью в неделю на всех своих работах. Точнее имеют все меня :))))
Требования - он начинающих до зубров. Про начинающих даже не говорю - попытка для сравнения строк вычесть адреса оных, это даже не ошибка, а так шуточки, по сравнению с тем что я периодически слышу.
Но "Зубры"!!!!
О, зубры это отдельный разговор.
Освобождение памяти после return - почти каждый второй.
Пары new - free или malloc-delete тоже самое.
Считать последнюю строку в стандартном текстовом файле размером 5-6 мега - разумеется надо сначала считать весь файл. Упростила - памятуя недавнюю fscanf-скую историю - все строки равны по размеру в байтах. Не помогло. 9 из 10 зубров упорно читают файл от начала до конца.
Или вот дан вам объект стандартного CString, назовем его str.
И дана какая-то строка char назовем ее buf.
Что вы сделаете, чтобы строка в str была равна строке в buf???
str = buf???????
Да вы, батенька, ламер.
Инстинный настоящий программер сделает так :
strcpy(str.GetBuffer(strlen(buf) + 1), buf);
Я минуты 2 смотрела только чтобы понять что же он имел ввиду.
Что такое realloc зачем оно надо и как им пользоваться не знает практически никто.
Зато чтобы какому-то несчастному интеджеру присвоить значение пишем ровно 3 тысячи классов. Грамотно пишем причем. Ни к чему не придерешься.
Но ЗАЧЕМ??????
И, наконец, 9 из 10 человек, претендующих на имя спеца по обработке изображений не понимают разницу между device-dependent bitmap и device-independent bitmap.
Пожалуй на следующее собеседование я все-таки приду с топором.
Мадам, Вы не знаете своего счастья
on 2007-01-18 08:52 am (UTC)#define J_FALSE 1
#define NOT ||
"Страшно? А я так всю жизнь живу!" (с) "Слепая ярость".
Re: Мадам, Вы не знаете своего счастья
on 2007-01-18 08:52 am (UTC)#define OR ||
Re: Мадам, Вы не знаете своего счастья
on 2007-01-18 09:12 am (UTC)Re: Мадам, Вы не знаете своего счастья
on 2007-01-18 09:14 am (UTC)if(variable)
и заменить ее на
if(variable == J_TRUE)
И только так.
Re: Мадам, Вы не знаете своего счастья
on 2007-01-18 09:19 am (UTC)if(variable == J_FALSE) :))))
А для чего такую хню-то сделали???
От злобных арабских шпионов, чтоб код никто не прочел????
Re: Мадам, Вы не знаете своего счастья
on 2007-01-18 09:21 am (UTC)if(variable != J_TRUE) :))))))))
Блин, надо своему навигационному начальнику, озабоченному секретностью, посоветовать :))
Re: Мадам, Вы не знаете своего счастья
on 2007-01-18 09:22 am (UTC)Не канает. J_TRUE используется именно как утверждение истины по всему коду.
//А для чего такую хню-то сделали???
Есть такая корпорация - NEC... Продолжать?
Re: Мадам, Вы не знаете своего счастья
on 2007-01-18 09:25 am (UTC)Вообще свежо, конечно.
А другого имени не нашлось?
Аж голова начинает болеть от вида одной строчки :)))
Re: Мадам, Вы не знаете своего счастья
on 2007-01-18 09:29 am (UTC)Именно. Теперь понятно, почему я написал "Вы не знаете своего счастья"?
//Аж голова начинает болеть от вида одной строчки :)))
А у меня этого счастья - восемь мегабайт исходного текста. И Бангладор. Индусы. И сверху иногда использование
if (variable) как проверка НЕравенства. Они ж умные, они на специфическое значение дефайна посмотрели, они так пишут.
Так что целуй своих собеседуемых нежно, со всем пылом страсти, ибо придут они. Индусы. И ты поймешь, как шикарно ты жила, но будет поздно.
Re: Мадам, Вы не знаете своего счастья
on 2007-01-18 09:36 am (UTC)Блин, а я еще со своими проблемами :))
Я б с ума сошла через пару часов :))
Стойкий ты, однако.
Re: Мадам, Вы не знаете своего счастья
on 2007-01-18 09:40 am (UTC)Re: Мадам, Вы не знаете своего счастья
on 2007-01-20 07:39 am (UTC)Re: Мадам, Вы не знаете своего счастья
on 2007-01-20 10:39 am (UTC)Претензия не в 0 как в успешности возврата, а в имени.
Смотреть на строку if(something == J_TRUE) и думать, что в данном случае TRUE это не TRUE, а 0 как NO_ERROR, у меня, например вызывает головную боль.
Можно придумать миллион названий, не связанных со стандартными именами, не?
Re: Мадам, Вы не знаете своего счастья
on 2007-01-26 09:54 am (UTC)HRESULT variable, FAILED(variable),SUCCEDED(variable),S_OK (который тож кстати == 0x00000000)....;)
Так хоть нe ультимативный отказ или успех.
Или они статусы ексепшинами передавали? ;)
Re: Мадам, Вы не знаете своего счастья
on 2007-01-26 10:13 am (UTC)Плэин Си, однако.
no subject
on 2007-01-18 09:16 am (UTC)Или так память освобождать???
Или делать хренову тучу никому ненужной работы???
Что-то мне подсказывает, что это уже персональные извращения.
no subject
on 2007-01-18 10:58 am (UTC)no subject
on 2007-01-18 11:10 am (UTC)Вот ты и будешь :))))))
Если не захочешь такое в коде увидеть :)))
И я буду :))))
Потому что если не буду - потом получу двойную работу за себя и за того парня :)))
А серьезно - с тех пор как наоткрывали курсов программирования (трехмесячных!!!) общий уровень программистов снизился раз в 10 :((((((
no subject
on 2007-01-18 11:15 am (UTC)no subject
on 2007-01-18 11:15 am (UTC)no subject
on 2007-01-18 11:23 am (UTC)Главное, что резюме что у программера, что у мальчика будет практически идентичным :(((
no subject
on 2007-01-18 11:25 am (UTC)вот я уже научился выкупать по косвенным признакам резюме мальчиков, но это приходит с опытом, когда трафик резюме и собеседований - заметный. тогда моск сопоставляет резюме с видимым персонажем и на основе когнитивного диссонанса или наоборот эйфории делает выводы:)))
no subject
on 2007-01-18 11:36 am (UTC)Не так все просто - эти ребята заучивают какие-то фразы что ли, не знаю, до того момента как начинается код все выглядит прекрасно. MSDN большинство из них знает на зубок, вот только пользоваться не умеют :((((
Есть, кстати, в ЖЖ несколько сообществ, где спрашивают - а что говорили там-то в такой-то конторе и идут уже с готовыми ответами :))
no subject
on 2007-01-18 11:39 am (UTC)Кстати, лучше бы тех. человек делал первый (ладно,второй) фильтр резюмешек - потому что HR служба нараз пропустит неряшливое резюме великолепного специалиста.
no subject
on 2007-01-18 12:02 pm (UTC)как-то нам посоветовали - сделать что-то типа заданий - на листках, а потом уже только эти листки и проверять, для скорости.
В итоге взяли человека, которые не может написать диалоговое окно без Wizard-a, зато по ответам на листках был лучшим :)))))
Уволили, конечно через пару месяцев, но заплатили столько штрафов, что теперь я предпочитаю разговаривать лично, дешевле выходит.
no subject
on 2007-01-18 12:06 pm (UTC)no subject
on 2007-01-20 07:28 am (UTC)А що ви таки предлагаете?
Читать с конца (а на сколько далеко от конца отступить?) пока там newline не обнаружиться? Можно, но геморно. Более того, реализация lseek весьма далека от идеала, особенно на ext2/ext3. Так что, я бы пожалуй, предпочёл бы програмиста, который весь файл читает. Тем более, 5-6 мега, было бы о чём говорить. Вот если 5-6 гига, тогда можно и поизвращаться.
Хотя, конечно, если все строки равны, тогда дело другое...
no subject
on 2007-01-20 10:55 am (UTC)А я бы считала первые 3-4 строки, получила среднее умножила на 2 и искала начало последней строки как размер файла минус полученное число. Если ничего не считалось - ту же цифру умножить еще на 2. Итд. В любом случае выйдет в десятки раз быстрее тупого чтения файлов от 1 до последнего байта.
Ну а если все строчки изначально по условию равны, читать с начала это вообще бред редкостный.
А 5-6 мега, если, например есть штук 30 файлов - баз данных для навигации, а именно для этого проекта искался человек - пока вы считываете все файлы с начала - а их же перед этим и раскодировать еще надо :)) - машина в Ливан уже уедет :))
no subject
on 2009-09-23 07:32 pm (UTC)в случае неравных длин строк может же быть первые 3-4 строки по 1му символу, а потом еще 10000 строк по 10000 символов... Как известно, минимальная единица ай/о операции - блок диска (точнее блок файловой системы), поэтому чтение блока диска с концом файла это минимальная ай/о издержка. Яб получил длину файла и размер блока диска, отсчитал бы размер блока с конца (если файл вообще больше блока) и искал бы там сначала (получилось бы 1 или 2 считаных блока взависимости от того как лежит на диске конец файла) поскольку 4кб это типичный размер блока, то вероятно последняя строка лежит в нем. В случае неудачи поиска придется отсчитать 2 блока с конца и повторить поиск (в этом случае с диска будет считан еще ровно 1 блок - хвост файла уже в кеше) итд.
/*Ну а если все строчки изначально по условию равны, читать с начала это вообще бред редкостный.*/
ну это да...
Цитата "про индийский код"
on 2007-01-24 11:08 am (UTC)<gram|work> про индийский код <gram|work> Какой самый извращенный способ проверить в условии if () булевскую переменную ? <gram|work> bool b; <gram|work> b = false; <gram|work> if (b == true){...} <gram|work> Это децкий лепет <gram|work> ИТАК, ПЕРВОЕ МЕСТО <gram|work> Знакомый говорит что нашел только что в коде: <gram|work> if (b.ToString().length < 5){...}http://bash.org.ru/quote.php?num=66390
Re: Цитата "про индийский код"
on 2007-01-26 09:43 am (UTC)Ещё один индусский код
on 2007-05-17 07:52 am (UTC)if (0 < -this.Position.Y) {...}
http://bash.org.ru/quote.php?num=224696
Кажется, я догадываюсь, почему так пишут
on 2007-05-17 08:45 am (UTC)На днях мимо меня прошло задание "по C++" для какого-то младшекурсника, выполненное программистом, всю жизнь работающим с Pascal-ем, занимаясь численными методами.
Динамического использования памяти в заданих не требовалось, просто использование некоторого количества структур данных и работа с ними.
Стиль - неотличим. Использование strlen() в циклах, где достаточно сместить указатель. Указатели используются только как аргументы функций. О модификаторе const, видимо, неизвестно вообще.
Во времена, когда GNU-fortran отсутствовал (речь не о Windows), и альтернативой были дорогущие компиляторы третьих фирм, схожие конструкции генерировал препроцессор f2c.
Я предполагаю, что человек, который использует такие конструкции, думает в концепциях какого-то другого языка программирования, а то, что получается в результате - это результат "подстрочного перевода". Автор не использует (или не понимает) ни идей языка на котором ему приходится писать, ни даже среды исполнения. Работает - и ладно.
Re: Кажется, я догадываюсь, почему так пишут
on 2007-05-17 09:04 am (UTC)Человек 15 лет просидевший на Дельфи и решивший вдруг перейти на С, никуда от своих дельфийских привычек не денется, по крайней мере поначалу.
Но, блин, или ты ищи работу на Дельфи или - если уж пошел на С-шный путь - ну скажи ты честно, - да я спец, но по другому языку, перенять С для меня раз плюнуть, но нужно немного времени.
Многие так работают, учатся, потом переучиваются, отличные спецы.
НО - если человек пишет хню и - утверждая, что он классный спец -, просит 25 тыщ в месяц под предлогом того, что он такой зубр, что зубрее его не бывает - я - честное слово - даже не знаю что ему говорить.
И - если он не видит своих ошибок - чему он вообще может научится?????????????
no subject
on 2007-07-04 02:45 pm (UTC)no subject
on 2007-12-11 03:53 pm (UTC)И дана какая-то строка char назовем ее buf.
Что вы сделаете, чтобы строка в str была равна строке в buf???
str = buf???????
===========
то что str = buf сработает не значит ведь что это правильно?
no subject
on 2007-12-11 04:02 pm (UTC)тьфу, попутал :)
on 2007-12-11 04:05 pm (UTC)