Как технарю из России стать программером в США за 150К

User avatar
RobinF
Уже с Приветом
Posts: 3975
Joined: 04 Jun 2002 17:35

Re: Как технарю из России стать программером в США за 150К

Post by RobinF »

nightmare2 wrote:
RobinF wrote:
nightmare2 wrote: Зато C# могут выучить все, а C++ только особо одаренные.
8O
:o

Если у "программиста" проблемы с освоением такой муры как указатели или множественное наследование, как его можно на пушечный выстрел допускать к более сложным вещам, таким как мультитрединг или оптимизация скорости-памяти, не говоря уж про сложные алгоритмы или программную архитектуру????

Понанимают таких - после чего кода становится в 10 раз больше чем нужно по цене 5x (потому что такие "программисты" делают кучу copy-and-paste и применяют кучу ненужных паттернов), с в 10 раз большим количеством багов и в 10 раз более дорогим сопровождением, не говоря уж про скорость и память...

С++ конечно так себе но... If anything, язык его заменяющий должен быть в 10 раз сложнее в освоении, чтоб тест на знание языка сразу отсеивал "программистов". С++ отсеивает только 80% таковых. ;)
Это все хорошо в идеальном мире в котором мы не живем.
Гарбич коллектор не от хорошей жизни придумали.
На одного одаренного программиста приходится 20 так себе, как в прочем и в других областях человеческой деятельности.
Необходим инструмент (пусть не самый эффективный) для создания приложений такой вот командой.
Мне чего - повторить все написанное? Как Ваш "Гарбич коллектор" починит мозг "программистов" проводящий к сотням других ошибок помимо утечек памяти? И неспособность разобраться с пойнтерами - это не "так себе", это отсутсвие базовой квалификации АКА полная некомпетентность - в топку сразу.
Скупой платит дважды.
Zombie416
Уже с Приветом
Posts: 8881
Joined: 17 Jun 2003 04:41

Re: Как технарю из России стать программером в США за 150К

Post by Zombie416 »

RobinF wrote:Аналогичного отимизатора у Java/C# просто не может быть.
Не полностью аналогичный, естессно, но сравнимый по производительности есть. C++/CLR тоже .NET, MSVC в молодости сначала генерил intermediate language ака PCode, который уже на финальном этапе превращался в машинный код.

У C# оптимизатор пока что довольно чахлый в сравнении с C++, именно на этапе преобразования source code->CLI, это да, и очень заметно сравнивая C++/CLR vs C#.
Перепишите это на Java или C# с использованием ArrayList... Код и цифры в студию.
Код и цифры выше по тексту. Как показали оные цифры, беглое изучение матчасти и соответствующих managed библиотек дает ускорение программы на C# приблизительно в 2000 раз :)

Естессно не надо сравнивать ArrayList и std::vector, а вот C#-овский List<T> и std::vector выдадут близкий результат если Edge - это struct. Ну и в конце концов на C# только лень и отсутствие надобности мешает провалиться до уровня C, и написать собственный malloc, разделяющий память, и жить в мире указателей.
Тест №2...
class -> struct, и никаких трех миллионов аллокаций не будет. На Java все это, вероятно, не так т.к. язык попроще. Ну дык она и постарше.

Было бы, короче говоря, желание, а сделать производительность managed кода сравнимой с native вполно можно, особенно в случае C#/.NET.

Но для этого знать надо, часто, не меньше или больше чем для написания того же на языке уровнем пониже. И хотя бы приблизительно представлять что происходит внутри от каждой вызываемой высокоуровневой конструкции. Причем на любом языке, от SQL до C++.
Zombie416
Уже с Приветом
Posts: 8881
Joined: 17 Jun 2003 04:41

Re: Как технарю из России стать программером в США за 150К

Post by Zombie416 »

RobinF wrote:Как Ваш "Гарбич коллектор" починит мозг "программистов" проводящий к сотням других ошибок помимо утечек памяти? И неспособность разобраться с пойнтерами - это не "так себе", это отсутсвие базовой квалификации АКА полная некомпетентность - в топку сразу.Скупой платит дважды.
Все это верно, и нормальный программист не стоит настолько дороже неспособного разобраться с указателями, насколько он лучше и производительнее. Но.

Managed code и "Гарбич коллектор" в частности позволяет работать в команде с, как минимум, одним некомпетентным товарищем и даже звать им написанные-исправленные библиотеки, без риска получить memory overrun / double free / etc. с вытекающими оттуда проблемами с отладкой и безопасностью в собственном коде. Ну и memory leaks тоже пропадают частично (зато resource leaks в полный рост).
nightmare2
Уже с Приветом
Posts: 7187
Joined: 31 Jan 2005 15:06
Location: GA

Re: Как технарю из России стать программером в США за 150К

Post by nightmare2 »

RobinF wrote:
nightmare2 wrote:
RobinF wrote:
nightmare2 wrote: Зато C# могут выучить все, а C++ только особо одаренные.
8O
:o

Если у "программиста" проблемы с освоением такой муры как указатели или множественное наследование, как его можно на пушечный выстрел допускать к более сложным вещам, таким как мультитрединг или оптимизация скорости-памяти, не говоря уж про сложные алгоритмы или программную архитектуру????

Понанимают таких - после чего кода становится в 10 раз больше чем нужно по цене 5x (потому что такие "программисты" делают кучу copy-and-paste и применяют кучу ненужных паттернов), с в 10 раз большим количеством багов и в 10 раз более дорогим сопровождением, не говоря уж про скорость и память...

С++ конечно так себе но... If anything, язык его заменяющий должен быть в 10 раз сложнее в освоении, чтоб тест на знание языка сразу отсеивал "программистов". С++ отсеивает только 80% таковых. ;)
Это все хорошо в идеальном мире в котором мы не живем.
Гарбич коллектор не от хорошей жизни придумали.
На одного одаренного программиста приходится 20 так себе, как в прочем и в других областях человеческой деятельности.
Необходим инструмент (пусть не самый эффективный) для создания приложений такой вот командой.
Мне чего - повторить все написанное? Как Ваш "Гарбич коллектор" починит мозг "программистов" проводящий к сотням других ошибок помимо утечек памяти? И неспособность разобраться с пойнтерами - это не "так себе", это отсутсвие базовой квалификации АКА полная некомпетентность - в топку сразу.
Скупой платит дважды.
Разобраться с указателями и эффективно (с умом) их использовать - это две большие разницы.
К тому же указатель совершенно не являеся необходимым в разработке приложений для бизнеса (рабочее место кассира).
В этой работе более важны другие способности.
И я не согласен, что сознательный отказ от работы с указателыми означает некомпетентност программиста.
И потом, как прикажете тестировать на знание указателей ASP.NET программиста, если он никогда не работал к C++?
Или брать только тех, кто якобы знает C++?
Тогда ко мне придут, в основном, одни неудавшиеся C++ ки.
От них точно только вред будет.
Vaiyo A-O, A Home Va Ya Ray, Vaiyo A-Rah, Jerhume Brunnen G!
Zombie416
Уже с Приветом
Posts: 8881
Joined: 17 Jun 2003 04:41

Re: Как технарю из России стать программером в США за 150К

Post by Zombie416 »

nightmare2 wrote:И потом, как прикажете тестировать на знание указателей ASP.NET программиста, если он никогда не работал к C++?
Может продемонстрировать навыки на C. Если не знает вообще ни C++, ни C, то с пребольшой вероятностью и ASP.NET код будет такой что живые позавидуют мертвым.

А так да, в "glue" приложениях, которые в основном склеивают системные-вебсервисные-базы-GUI примитивы в нечто удобоваримое никаких указателей не надо, и преобширнейшая некогда область виндомордописания на C++/MFC/ATL/WTL потихоньку убралась на задворки. Для подобных задач часто не то что C#/Java, какого-нибудь питона-пхп и прочего бейсика за глаза хватит.

Ну так ведь и задача обхода конем по шахматной доске тоже редко встречается за пределами интервью.
User avatar
Abappy
Уже с Приветом
Posts: 2555
Joined: 26 Sep 2002 15:45
Location: North-East of NA

Re: Как технарю из России стать программером в США за 150К

Post by Abappy »

nightmare2 wrote:И потом, как прикажете тестировать на знание указателей ASP.NET программиста, если он никогда не работал к C++?
или альтернативный вопрос - как оценивать качество архитектора бизнес приложений если он никогда не работал с С# :lol:
nightmare2
Уже с Приветом
Posts: 7187
Joined: 31 Jan 2005 15:06
Location: GA

Re: Как технарю из России стать программером в США за 150К

Post by nightmare2 »

Zombie416 wrote:
RobinF wrote:Как Ваш "Гарбич коллектор" починит мозг "программистов" проводящий к сотням других ошибок помимо утечек памяти? И неспособность разобраться с пойнтерами - это не "так себе", это отсутсвие базовой квалификации АКА полная некомпетентность - в топку сразу.Скупой платит дважды.
Все это верно, и нормальный программист не стоит настолько дороже неспособного разобраться с указателями, насколько он лучше и производительнее. Но.

Managed code и "Гарбич коллектор" в частности позволяет работать в команде с, как минимум, одним некомпетентным товарищем и даже звать им написанные-исправленные библиотеки, без риска получить memory overrun / double free / etc. с вытекающими оттуда проблемами с отладкой и безопасностью в собственном коде. Ну и memory leaks тоже пропадают частично (зато resource leaks в полный рост).
К сожалению, в команде таких программеров может быть гораздо больше чем один.
Тим лид должен (вынужден ) уметь всем определить роли, в которых от них будет больше пользы чем вреда.
Часто вы не можете просто уволить кого-либо только потому, что вам не нравится как он кодирует.
Я не могу.
Но проект все равно надо сделать и желательно в срок.
Vaiyo A-O, A Home Va Ya Ray, Vaiyo A-Rah, Jerhume Brunnen G!
nightmare2
Уже с Приветом
Posts: 7187
Joined: 31 Jan 2005 15:06
Location: GA

Re: Как технарю из России стать программером в США за 150К

Post by nightmare2 »

Zombie416 wrote:
nightmare2 wrote:И потом, как прикажете тестировать на знание указателей ASP.NET программиста, если он никогда не работал к C++?
Может продемонстрировать навыки на C. Если не знает вообще ни C++, ни C, то с пребольшой вероятностью и ASP.NET код будет такой что живые позавидуют мертвым...
Для меня - это не очевидно.
Хотя конечно изучение такого монстра ка C/C++ должно хорошо прочищать мозги.
Но отвргать, программиста, только потому что он не знает C++ я бы не стал.
Vaiyo A-O, A Home Va Ya Ray, Vaiyo A-Rah, Jerhume Brunnen G!
nightmare2
Уже с Приветом
Posts: 7187
Joined: 31 Jan 2005 15:06
Location: GA

Re: Как технарю из России стать программером в США за 150К

Post by nightmare2 »

Abappy wrote:
nightmare2 wrote:И потом, как прикажете тестировать на знание указателей ASP.NET программиста, если он никогда не работал к C++?
или альтернативный вопрос - как оценивать качество архитектора бизнес приложений если он никогда не работал с С# :lol:
У меня нет такого опыта.
Я даже не уверен, что понимаю кто это. :(

Вероятно подойдет знание любого обектного языка программирования (C++/Java/VB.NET/Pascal) и UML
Ну и конечно нужны аналитические способности.
Умение мыслить категориями бизнеса, умение просто объяснять сложные вещи ну и т.д.

Знание указателей - не требуется. :-)
Vaiyo A-O, A Home Va Ya Ray, Vaiyo A-Rah, Jerhume Brunnen G!
User avatar
Abappy
Уже с Приветом
Posts: 2555
Joined: 26 Sep 2002 15:45
Location: North-East of NA

Re: Как технарю из России стать программером в США за 150К

Post by Abappy »

nightmare2 wrote:Знание указателей - не требуется. :-)
требуется знание об их существовании в природе :lol:
nightmare2
Уже с Приветом
Posts: 7187
Joined: 31 Jan 2005 15:06
Location: GA

Re: Как технарю из России стать программером в США за 150К

Post by nightmare2 »

Abappy wrote:
nightmare2 wrote:Знание указателей - не требуется. :-)
требуется знание об их существовании в природе :lol:
Вы имеете ввиду указатели на столбах и стенах? :-)
Шучу. :D
Vaiyo A-O, A Home Va Ya Ray, Vaiyo A-Rah, Jerhume Brunnen G!
NuraM
Уже с Приветом
Posts: 1915
Joined: 01 Feb 2002 10:01

Re: Как технарю из России стать программером в США за 150К

Post by NuraM »

Zombie416 wrote: Было бы, короче говоря, желание, а сделать производительность managed кода сравнимой с native вполно можно, особенно в случае C#/.NET.

Но для этого знать надо, часто, не меньше или больше чем для написания того же на языке уровнем пониже. И хотя бы приблизительно представлять что происходит внутри от каждой вызываемой высокоуровневой конструкции. Причем на любом языке, от SQL до C++.
"The law of leaky abstractions" все того же Джоэла.

http://www.joelonsoftware.com/articles/ ... tions.html
...
User avatar
fruit6
Уже с Приветом
Posts: 4207
Joined: 10 Jan 2004 01:22
Location: n-sk -> MD -> VA

Re: Как технарю из России стать программером в США за 150К

Post by fruit6 »

Abappy wrote:
hogzie wrote: Язык требует больше дисциплины и понимания основ. Поэтому учите основы, ребята...
Да! (Засучивая рукава) Кто-то тут ещё не согласен с тем, что самые эффективные программы можно написать ТОЛЬКО в машинных кодах (ну в крайнем случае на ассемблере, хотя и это уже профанация) ... а ?
"Assembly language programming is an extravagant waste of human talent and should be avoided whenever possible" (Peter Norton) :)
User avatar
mr. Hide
Уже с Приветом
Posts: 5530
Joined: 07 Sep 2005 07:38
Location: Bay area

Re: Как технарю из России стать программером в США за 150К

Post by mr. Hide »

fruit6 wrote: "Assembly language programming is an extravagant waste of human talent and should be avoided whenever possible" (Peter Norton) :)
Любые усилия в разработке лучше не прилагать, если можно их избежать. Когда только возможно.

В пределах некоторого небольшого коллектива программеров попытки использовать опенсорсное решение для echo-cancellation и noise reduction вполне себе забивают без того перегруженный процессор, и кое-кто начинает смотреть в сторону "более экстравагантных усилий".
под мостом :-p
User avatar
flip_flop
Уже с Приветом
Posts: 4379
Joined: 20 Jun 2001 09:01

Re: Как технарю из России стать программером в США за 150К

Post by flip_flop »

mr. Hide wrote: В пределах некоторого небольшого коллектива программеров попытки использовать опенсорсное решение для echo-cancellation и noise reduction вполне себе забивают без того перегруженный процессор, и кое-кто начинает смотреть в сторону "более экстравагантных усилий".
Хмм, интересно, думал что это должно решаться на уровне hardware. Собственно, так и делали.

Return to “Работа и Карьера в IT”