Здравствуйте, alzt, Вы писали:
A>Здравствуйте, -n1l-, Вы писали:
A>Вот ты начал спорить с утверждением, что уровень дотнетчиков в среднем хуже, чем Java- или С++ программистов, а в итоге только подтверждаешь.
Чем? Тем что не соглашаюсь с мнением большинства о том, что интерфейс и абстрактный класс это принципиально разные вещи и у них множество отличий?
Или тем, что не так понял написанные мне очень умные доводы. Которые вообще не проверены.
Следите дальше за спорами, я вас не разочарую.
Здравствуйте, -n1l-, Вы писали:
N>Чем? Тем что не соглашаюсь с мнением большинства о том, что интерфейс и абстрактный класс это принципиально разные вещи и у них множество отличий?
Ты понимаешь разницу между интерфейсом и реализацией ?
Здравствуйте, devcoach, Вы писали:
D>3) Речь идет лишь о том, что C# это в бОльшей степени сайтики и декстоп, и в меньшей степени сложный server-side, и в еще меньшей степени еще более солжное системное программирование.
Т.е. то же самое, что и ява, но там еще и десктоп есть.
По вашей логике всех спецов из java должно бы вымыть и там сплошные умственные колеки должны бы остаться.
Здравствуйте, devcoach, Вы писали:
N>>Ну ладно, предположим, что специалисты программирующие на с++ все очень круты. N>>Но java? Java такой же фреймворк как и дотнет? Java то чем обходит? D>Вы шутите? Кроссплатформенность — слышали про такое7
Т.е. если завтра MS выпустит .net под линукс это автоматом магическим образом повысит "крутизну" всех дотнетчиков.
Здравствуйте, alzt, Вы писали:
A>А теперь возьмём плохого программиста. Вероятность, что он будет писать на С++ достаточно низкая. В итоге распределение уже не будет повторять используемость языков, а сместится в сторону более простых.
Интересует метод оценки такой вероятности.
A>В итоге получим, что среди С++ больше хороших программистов, чем среди шарпистов.
Итог этот выведен из очень неочевидного предположения.
Есть пример перед глазами. Государственное предприятие, в котором несколько сотен программистов перешли на C++ с фортрана и используют C++ на уровне фортрана. Ни о шаблонах, ни о спецификации и стандартах большая часть из этих программистов не слышали. Представьте, часть из них с трудом оперирует понятием "указатель".
И это им не мешает программировать на C++ и называться C++-никами. Я не написал "хорошо программировать". Акцент на "не мешает".
Они сидят себе на работе, на собеседования не ходят, книги и форумы на проф-темы не читают, про интернет слышали по телевизору, и не знают что кто-то C++ знает лучше чем они. Этот пример не о C++, эти люди с таким же успехом могли бы программировать на Java, просто C++ раньше попался под руку начальнику, который велел с фортрана на С++ перейти.
Здравствуйте, Yoriсk, Вы писали:
Y>Т.е. то же самое, что и ява, но там еще и десктоп есть. Y>По вашей логике всех спецов из java должно бы вымыть и там сплошные умственные колеки должны бы остаться.
Как вы пришли к такому забавному выводу? Я уже подробно описал, почему уровень джавистов выше уровня шарпистов.
Да, формально инструментарий что в Java, что в C# один в один. НО! Есть два важных отличия:
1) Где этот инструментарий можно использовать. C# намертво приварен к Windows (и не надо тут про Mono, который на данный абсолютно неприменим в промышленной среде, и будет таковым еще десяток лет как минимум). А Java может быть применена в любом окружении, в любой операционной системе. А все самые ответственные решения в большинстве своем крутятся в unix/linux средах, куда у C# путь закрыт.
2) Как следствие п.1, в мире Java для каждого спектра задач есть множество продуктов. Везде конкуренция. Следствие — более высокое качество, и возможность заменить непонравившейся инструмент на что-либо другое. В Windows такого нет. Есть политика партии, на которую надо ровняться.
Как следствие:
1) На Java можно решать гораздо больший спектр задач, включая очень сложные.
2) Уровень спецов на Java в среднем выше.
Ну а десктоп — это ерунда по сравнению с тем, что происходит на серверной стороне. Рисовать лэйауты и навешивать листенеры — много ума не надо.
Здравствуйте, Yoriсk, Вы писали:
Y>Т.е. если завтра MS выпустит .net под линукс это автоматом магическим образом повысит "крутизну" всех дотнетчиков.
Магическим образом ничего не произойдет. Если MS выпустит такой продукт, если на него клюнет бизнес, и захочет писать на нем сложный серверный софт, то со временем, лет за 5-7, уровень дотнетчиков обязательно подтянется.
Ведь почему у дотнетчиков низкий уровень? Потому что они "тупые"? Нет, просто умных задач под .Net исчезающе мало, все сайтики да формоклепство. Если появится спрос на высококлассную разработку — появится и предложение. Сейчас такого спроса почти нет.
Здравствуйте, devcoach, Вы писали:
D> и захочет писать на нем сложный серверный софт
Вы всю дорогу оперируете понятием "сложный серверный софт", не могли бы вы пояснить, что под этим понимаете и может быть пару примеров?
Здравствуйте, devcoach, Вы писали:
D>Здравствуйте, sharpcoder, Вы писали:
S>>Очень крутой программист от прошаренного мида отличается эффективностью работы, стабильностью кода, а главное — выбором наиболее подходящей для конкретной задачи архитектуры. D>Хахаха, то есть что вы сейчас сказали? Примерно следующее: "Крутой специалист круто потому, что он принимает правильные решения". А вы не хотите задуматься, за счет чего он принимает правильные решения? Совершенно верно — благодаря знанию базовых вещей.
Благодаря уму в первую очередь. Получить знания может любой, а вот пользоваться ими так, чтобы решать нестандартные задачи — это отличает высокого профессионала от "всезнайки". Я встречал людей который знают много но работают плохо, встречал тех кто знает меньше но работает очень эффективно.
Здравствуйте, dalmal, Вы писали:
D>Вы всю дорогу оперируете понятием "сложный серверный софт", не могли бы вы пояснить, что под этим понимаете и может быть пару примеров?
Amazon, eBay, Одноклассники, все критичные системы Deutsche Bank и Сбербанка.
Здравствуйте, nightcode, Вы писали:
N>Здравствуйте, bkat, Вы писали:
B>>Почему-то как только мы перешли от С++ на C# стало намного сложнее найти хороших спецов. B>>Вроде кандидатов больше, а вот выбирать почти не из чего... N>а мы вот перешли на scala, так это вообще караул — спецов просто нет, ни хороших, ни плохих, хоть обратно на яву возвращайся
Ну это предсказуемо.
У нас переход на C# мотивировался в том числе и тем, что типа спецов будет проще искать.
Фиг вам... Стало еще сложнее.
Раньше грубо говоря приходило пять резюме на вакансию, из которых три были интересными.
Сейчас приходит 20 и более из которых скрепя сердце выбираешь пару для дальнейшего разговора...
Хотя сейчас на С++ может вообще ни одного резюме не придет
Здравствуйте, devcoach, Вы писали:
D>Да, формально инструментарий что в Java, что в C# один в один. НО! Есть два важных отличия: D>1) Где этот инструментарий можно использовать. C# намертво приварен к Windows (и не надо тут про Mono, который на данный абсолютно неприменим в промышленной среде, и будет таковым еще десяток лет как минимум). А Java может быть применена в любом окружении, в любой операционной системе. А все самые ответственные решения в большинстве своем крутятся в unix/linux средах, куда у C# путь закрыт.
Вот статистика за прошлый год по доле серверных ОС от IDC (более свежей к сожалению не нашел):
Top Server Market Findings Linux server demand was positively impacted by high performance computing (HPC) and cloud infrastructure deployments, as hardware revenue improved 16.0% year over year in 1Q12 to $2.4 billion. Linux servers now represent 20.7% of all server revenue, up 3.3 points when compared with the first quarter of 2011. Microsoft Windows server demand was up 1.3% year over year in 1Q12 with quarterly server hardware revenue totaling $5.9 billion representing 50.2% of overall quarterly factory revenue, up 1.8 points over the prior year's quarter.
Unix servers experienced a revenue decline of 17.2% year over year to $2.2 billion representing 18.3% of quarterly server revenue for the quarter. IBM's Unix server revenue declined 3.7% year-over-year and gained 6.3 points of Unix server market share when compared with the first quarter of 2011.
The market for non-x86 servers, including servers based on RISC, EPIC (Itanium-based), and CISC processors, declined 16.1% year over year to $3.4 billion in 1Q12. This is the third consecutive quarter in which non-x86 servers have exhibited a revenue decline. Non-x86 based systems now comprise 28.5% of the server market, the lowest level ever reported in IDC's quarterly server tracker.
Как то кисло линукс побеждает. Что касается unix, то боюсь здесь и java и c# мимо цели (хотя я как то писал программу на mono к solaris, та еще жесть была).
Использовать java в windows — пустая трата времени и денег. 1) он совершенно непригоден для построения desktop-решений на win (нет норм. FCL для desktop) 2) он не имеет достойного web-каркаса в принципе (напр. аля ASP.Net MVC) + интеграции с IIS, что делает его крайне тяжеловесным.
Писать на java под OSX это вообще плохая идея. mono в этом отношении кстати гораздо быстрее и имеет больше tools в целом (для xamarin это бизнес, а для oracle OSX "еще одна unix").
Что касается "серверных решений", о которых вы талдычите, писать что на языке с GC без привязки к кернелл системы — это просто глупость. Кто будет пользоваться такими опасными с точки зрения производительности решениями?
D>2) Как следствие п.1, в мире Java для каждого спектра задач есть множество продуктов. Везде конкуренция. Следствие — более высокое качество, и возможность заменить непонравившейся инструмент на что-либо другое. В Windows такого нет. Есть политика партии, на которую надо ровняться.
Да нет "в мире Java" ничего. Есть только android apps. Это норм. ниша java, вот пожалуй и все.
Здравствуйте, devcoach, Вы писали:
D>>Вы всю дорогу оперируете понятием "сложный серверный софт", не могли бы вы пояснить, что под этим понимаете и может быть пару примеров? D>Amazon, eBay, Одноклассники, все критичные системы Deutsche Bank и Сбербанка.
Эээмм... Не слишком детальное описание. А поподробнее можно, если не затруднит? Что там такого запредельно сложного, может один-два примера?
Пока что вижу только всякие внутренние службы/сервисы банков и сайтики. Неужели это и есть "сложный серверный софт"?
Здравствуйте, -n1l-, Вы писали:
N>Вообще под термином "базовые знания" должны подразумеваться алгоритмы и структуры данных и джун их должен знать прежде всего. Но предыдущий оратор явно имел ввиду какие-то специфические знания платформы.
Для тебя "базовые знания" это "алгоритмы и структуры данных"?
Здравствуйте, dalmal, Вы писали:
D>Эээмм... Не слишком детальное описание. А поподробнее можно, если не затруднит? Что там такого запредельно сложного, может один-два примера? D>Пока что вижу только всякие внутренние службы/сервисы банков и сайтики. Неужели это и есть "сложный серверный софт"?
нет, сложный серверный софт это когда формочки натягиваются на таблички из базы, а это так херня для джунов
Здравствуйте, nightcode, Вы писали:
B>>Вроде кандидатов больше, а вот выбирать почти не из чего... N>а мы вот перешли на scala, так это вообще караул — спецов просто нет, ни хороших, ни плохих, хоть обратно на яву возвращайся
Судя по форумам, есть достаточно много мотивированных и высококвалифицированных людей, которые готовы даже с некоторым уменьшением зарплаты работать над каким-нибудь специфическим языком. Чаще всего этот язык является каким-нибудь функциональным, но и на скале многие хотят программировать.
Почему бы их не брать. Единственное но... опыта на скале у них скорее всего не будет.
Здравствуйте, nightcode, Вы писали:
N>нет, сложный серверный софт это когда формочки натягиваются на таблички из базы, а это так херня для джунов
Это понятно, а конструктивно есть что сказать? Что конкретно делает озвученные выше продукты "сложными"?
Здравствуйте, -n1l-, Вы писали:
N>Вы не можете знать какая доля хороших спецов пишет именно на с++, c#, java. N>Доля на рынке не показатель.
Не знаю, но могу делать выводы на основе наблюдений.
И скорее всего хорошие спецы будут работать там, где платят.