Re[29]: Оставаться в С++ или уходить?
От: Stanislav V. Zudin Россия  
Дата: 01.10.19 19:59
Оценка:
Здравствуйте, Denis Ivlev, Вы писали:

SVZ>>Давайте вспомним времена, когда на форуме писали такие зубры, как Андрей Тарасевич.


DI>Увы не знаю кто это.


Андрей 9 лет не появлялся на форуме. Но посты его живы.
Очень хорошо писал. Его посты считаю эталоном общения в онлайне.
_____________________
С уважением,
Stanislav V. Zudin
Re[3]: Оставаться в С++ или уходить?
От: serj.e  
Дата: 01.10.19 20:55
Оценка:
KP>Тут есть один довольно хреновый момент. Альтернативных реализаций одних и тех же концептов в C++ крайне много, что приводит к очень сильной дефрагментации любой предметной области где используется C++ уже на базовом, в теории фундаментальном уровне предоставляемом языком.

К фрагментации, наверное?

KP>Подобный подход в теории хорош для небольших команд энтузиастов, но совершенно не годен для промышленной разработки.


А где не так? Сейчас вокруг каждого языка лютый зоопарк разношерстных решений для одного и того же. Можно, конечно, возразить, что в го, ноде, питоне и т.д. этот зоопарк более высокоуровневый и прикладной, а базовый уровень единый и общепринятый. Ну так и абстракции как бы немного разные: высокоуровневые инструменты не позволяют так просто взять и спуститься до кеш-линий, атомарности, раскладки данных в памяти, барьеров, кастомных аллокаторов и т.д. В общем, для всего того, что нужно для платформ и движков, и совершено излишне при формошлепстве и автоматизации очередной шаурмятни (99% работы на рыночке).
Re[3]: Оставаться в С++ или уходить?
От: serj.e  
Дата: 01.10.19 21:05
Оценка:
CC>Надо таки заметить что персонаж этот страдал одиозностью в довольно суровой степени.

Имеет в общем-то полное право. Инструмент у него лучший, хваленая АНБ-шная Ghidra и в подметки не годится. Если, конечно, не скатывается до совсем ублюдского поведения . Кстати. А в чем заключалась его одиозность? Не в хабрахомячковых ли россказнях? У нашей компании, например, лицензионная IDA, и ни одной проблемы пока не было.

CC>Зависит от кривизны рук и области для которой проект пишется.


Зависит. Но тот же Apple именно так и использует C++. Только там, где реально необходимо. IOKit, WebKit, некоторые критичные по производительности/памяти демоны.
Re[4]: Оставаться в С++ или уходить?
От: CreatorCray  
Дата: 01.10.19 22:51
Оценка: 5 (1)
Здравствуйте, serj.e, Вы писали:

SE>Имеет в общем-то полное право.

Мнэээ... Да как сказать.
Инструмент был (и есть) замечательный.
Но это не извиняет того что ещё лет 10 назад Ильфак вёл себя как Артемий Лебедев.
Потом почему то резко заткнулся, возможно потому что понял что так "слон" продаётся заметно лучше.

SE>А в чем заключалась его одиозность?

Вкратце: http://lurkmore.to/Reverse_Engineering#IDA

SE>IOKit

Там не С++. Там ужас, писанный закоренелым сишником. И исправить это уже нельзя, слишком поздно — закоксовалось.
... << RSDN@Home 1.0.0 alpha 5 rev. 0>>
Re[11]: Оставаться в С++ или уходить?
От: serj.e  
Дата: 02.10.19 05:38
Оценка: +2
$>В моей реальности, C++ используется игроделами и HFT-ками. Обе категории — весьма особняком стоят, их крайне мало. Фактически, это сектанты.

САПР, ГИС, ML (прод, не R&D), прочий pro–soft (тысячи разновидностей), робототехника, оборонка, продуктовые конторы. Да даже, блин, бортовой компьютер пресловутой Теслы.

$>В обычных (веб) конторах,намёки сделать кусочек на C++, не оценивают примерно на уровне как сделать кусочек на Clojure.

Что не так с Clojure? У нас в фирме его используют в хвост и в гриву, нареканий и возражений никаких. Даже Скалу вытеснил во внутренней эволюционной борьбе. На крестах я тоже кусочек написал, но там, где это действительно уместно (анализ исполняемых бинарников).

PS. Кресты все больше уходят в движки, платформы, или просто в высоконагруженные участки кода. Всю менее критичную обвязку можно и нужно писать на чем-то более удобном.
Re[12]: Оставаться в С++ или уходить?
От: $$ Австралия жж
Дата: 02.10.19 10:43
Оценка:
Здравствуйте, serj.e, Вы писали:

SE>$>В моей реальности, C++ используется игроделами и HFT-ками. Обе категории — весьма особняком стоят, их крайне мало. Фактически, это сектанты.


SE>САПР, ГИС, ML (прод, не R&D), прочий pro–soft (тысячи разновидностей), робототехника, оборонка, продуктовые конторы. Да даже, блин, бортовой компьютер пресловутой Теслы.


SE>$>В обычных (веб) конторах,намёки сделать кусочек на C++, не оценивают примерно на уровне как сделать кусочек на Clojure.


SE>Что не так с Clojure? У нас в фирме его используют в хвост и в гриву, нареканий и возражений никаких. Даже Скалу вытеснил во внутренней эволюционной борьбе. На крестах я тоже кусочек написал, но там, где это действительно уместно (анализ исполняемых бинарников).


У меня с конторой, где есть клоюра, не сложилось. Больше контор я хз что и где.

SE>PS. Кресты все больше уходят в движки, платформы, или просто в высоконагруженные участки кода. Всю менее критичную обвязку можно и нужно писать на чем-то более удобном.


Это какая-то фантастика. Здесь такого нет. Клоюра вот в одном месте, плюсы в танчиках и hft-х. Приятный язык в специфической конторе. Или специфический язык в приятной конторе.

Сейчас кстати мне хорошо, пишу на Typescript плотно, и жабы не касаюсь. TS приятный. Не понимаю людей кто на JS плюётся. Ниасилили возможно.
Re[13]: Оставаться в С++ или уходить?
От: sergey2b ЮАР  
Дата: 02.10.19 10:48
Оценка:
Здравствуйте, $$, Вы писали:


$>Сейчас кстати мне хорошо, пишу на Typescript плотно, и жабы не касаюсь. TS приятный. Не понимаю людей кто на JS плюётся. Ниасилили возможно.

если не секрет, какого плана задачи ты на нем пишешь
Re[13]: Оставаться в С++ или уходить?
От: Lexey Россия  
Дата: 02.10.19 11:23
Оценка: +1
Здравствуйте, $$, Вы писали:

$>Сейчас кстати мне хорошо, пишу на Typescript плотно, и жабы не касаюсь. TS приятный. Не понимаю людей кто на JS плюётся. Ниасилили возможно.

Некоторые на JS успели пописать еще во времена "ламповых браузеров", когда не было ни TS, ни JQuery, ни более-менее общей DOM-модели. После этого никакого желания возвращаться к JS не возникает.
"Будь достоин победы" (c) 8th Wizard's rule.
Re: Оставаться в С++ или уходить?
От: Molchalnik  
Дата: 09.11.19 15:18
Оценка:
Здравствуйте, checkthestack, Вы писали:

C>Назрел карьерный вопрос, поделитесь идеями куда двинутся дальше?

C>Программирую на C++ десктопные приложения. Занимаюсь этим полтора года. До этого писал драйвера для винды на сях год. До этого
C>2.5 года занимался пентестингом и всякими нескоуровневыми вещами (По образованию ИБ специалист) (Потом low level надоел, поэтому и стал программировать)

подход не правильный. вот, к примеру, вы уверены, что пишете на с++? я вот собеседую человека, он говорит, что типа лучший в своей фирме по плюсам, и понимаю, что он невъезжает в систему выделения памяти с++. Переводя на русский — он так может накосячить, что никто быстро не найдёт ошибку. Вот он тоже переученный сишник — прочитал про синтаксис с++, и считает, что он понял язык. А это не так — нужно понимать концепции, они другие.
Плюсы адекватно можно выучить за год. По-крайней мере, если есть кто-то, кто подскажет, на что обращать внимание и где у тебя косяки, или с обучающей книгой повезёт.

Но тут ещё дело не только в плюсах. Тенденция рынка такова, что чистые плюсы никому не нужны. Нужны плюсы и плюс предметная область и пару вторичных квалификаций. Чем больше доп. квалификаций — тем больше проектов, в которые ты можешь войти и махать своим знанием в главной квалификации.

А так — если ты переученный сишник, твоя предметная область тебе надоела — то тебе везде закрыты двери. И учить можно что угодно. Хоть плюсы, хоть яву. Ибо ноль. С нуля все расстояния одинаковы.

Что касается претензий на 200 — то в мск это хороший синьор, а 250 — это уже топовая зарплата для особых специалистов. в питере отнимай 30-40 К. При этом такие деньги платят те, кто

а) набирают звёздную команду, ищут супергуру в с++ и супергуру в программировании железа
б) хайлоад — нужно знать с++, сетевое программирование, и собственно, хайлоад
в) системщики
г) пригосконторы, пилящие бюджет по-взрослому — всякие аэс и прочие

полезно к этому знать ещё другие языки — go, python и английский. За последний сразу доплата в десяток тысяч, хотя это и не очевидно для ищущего работу.

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


вообще, надо понимать — с 2014 года произошло сильное расслоение ай-ти фирм по доходам, и вместе с ним расслоение программистам по зп. если в 2011 году народ в с++ получал от 30 для стажёра до 90 для хорошего синьора в спб и тоже +30-40 К в мск, в 2015 это уже было 35-120 в спб и 50 — 170 мск, то сейчас это 40 — 200 спб и 60-250 мск.

кто-то скажет, что он работает за 300-600, но это значительно выше рынка — такие варианты всегда есть и будет, но не для всех

смысл в том, что деньги есть не у всех фирм. кто-то не может платить своим кодерам больше 100 штук спб /130 мск в принципе. А есть такие, которые пилят бюджет, поэтому могут платить до 130 спб/160мск. а есть богатые пригосударственные конторы — они могут платить до 200спб/230 мск, но обычно ограничиваются 150 спб/180 мск, ибо и так есть кого нанять. но богаче всего — прокси-конторы известных буржуйских проектов. сидит где-то в россии контора, которая де-факто является отделом разработки серьёзной буржуйской фирмы, сильно экономящей зарубежным инвесторам на разнице в курсах и зарплатах для программистов. эти могут платить 200спб/250мск

всякие яндекс-касперские-сбербанки тут не рулят, имхо. Это лишь моя теория, но я думаю так. По простой причине: они большие и умные, давно просекли расписанную схему, и могут себе позволить совмещать "4-уровня-в-одном". То есть если лошара — но соответствуешь их требованиям — будешь работать у них за то, что "они яндекс". А если ты приходишь к ним с зп 250, то могут предложить и что получше.

поэтому вопрос, а в какую категорию фирм лично ты попадаешь? что ты выучил, чтобы попасть в топфирмы?
Re[7]: Оставаться в С++ или уходить?
От: Molchalnik  
Дата: 09.11.19 16:10
Оценка:
Здравствуйте, so5team, Вы писали:

S>Здравствуйте, Stanislav V. Zudin, Вы писали:


SVZ>>А так ваш SObjectizer очень хорошо бы подошел к некоторым нашим задачам.


S>В том-то и дело, что использование RTTI позволяет снять с разработчика заботу об идентификации типов сообщений. Т.е. как раз сделать работу с акторами простой и лаконичной.

Я недавно раздизасмил, как плюсы на макс. оптимизации кланга считают typeid::hash_code. так берётся strlen от имени типа, а потом считается хэш. в реалтайм. без всякого кэширования — сто раз вызовешь, сто раз посчитает.
Люблю плюсы и шаблонную магию, но не закэшировать известный на этапе компиляции хэш имени типа — это что-то с чем-то.
Re[2]: Оставаться в С++ или уходить?
От: CreatorCray  
Дата: 09.11.19 19:49
Оценка:
Здравствуйте, Molchalnik, Вы писали:

M>он невъезжает в систему выделения памяти с++.

Что ты понимаешь под "системой выделения памяти с++"?

M>Плюсы адекватно можно выучить за год.

Увы но нет.
... << RSDN@Home 1.0.0 alpha 5 rev. 0>>
Re[2]: Оставаться в С++ или уходить?
От: Molchalnik  
Дата: 09.11.19 20:01
Оценка:
Здравствуйте, pinebit, Вы писали:

P>У меня в команде есть вакансия на такие скилы:


Увы, английский очень сильно ограничивает
Re[3]: Оставаться в С++ или уходить?
От: Molchalnik  
Дата: 09.11.19 21:29
Оценка:
Здравствуйте, CreatorCray, Вы писали:

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


M>>он невъезжает в систему выделения памяти с++.

CC>Что ты понимаешь под "системой выделения памяти с++"?

В контексте моей истории — люди тупо не понимали, что нужно здесь вызвать конструкторы, здесь деструкторы. копировали объекты, о природе которых ничего неизвестно, через memcpy. А так, если чел таких глупостей не совершает, то можно его о различиях RAII поспрашивать, связи с исключениями, placement new. А так же о том, что лучше, RAII или и google style (=когда тривиальный конструктор + bool Init и в ад исключения). Но до этого обычно не доходит. 9 из 10 смело копируют плюсовые классы через memcpy без каких-бы то ни было оговорок. А специфика аллокаторов на с++ — это можно даже толковых не спрашивать. Вряд ли знают.

поражают толпы людей, пищущих в резюме с/с++, а в реальности представляющих из себя сишников, слегка подучивших с++, в рамках пары месяцев. причём все со стажем 5-15 лет.

M>>Плюсы адекватно можно выучить за год.

CC>Увы но нет.
Если я буду учить, то да))) При условии, что будет только обучение и никакой работы. но мне на мои знания понадобилось кратно больше времени. И до сих пор многого не знаю, а кое-в чём отстаю в связи с развитием языка
Re[4]: Оставаться в С++ или уходить?
От: CreatorCray  
Дата: 10.11.19 03:22
Оценка:
Здравствуйте, Molchalnik, Вы писали:

M>нужно здесь вызвать конструкторы, здесь деструкторы

Ээээ, что? Не, ну можно конечно позвать сделать руками но для этого надо постараться.

M> копировали объекты, о природе которых ничего неизвестно, через memcpy.

Такое даже сишники как правило не делают, ибо указатели.

M>А специфика аллокаторов на с++

И что же понимается под "спецификой аллокаторов на с++"?

M>>>Плюсы адекватно можно выучить за год.

CC>>Увы но нет.
M>Если я буду учить, то да)))
Категорически нет. В С++ как и в стрельбе по ногам важна практика.
... << RSDN@Home 1.0.0 alpha 5 rev. 0>>
Re[3]: Оставаться в С++ или уходить?
От: night beast СССР  
Дата: 10.11.19 08:07
Оценка:
Здравствуйте, CreatorCray, Вы писали:

M>>Плюсы адекватно можно выучить за год.

CC>Увы но нет.

а что там такого особенного, что нужно годы изучать?
если не влазить в дебри, то плюсы вполне логичный язык.
Re[5]: Оставаться в С++ или уходить?
От: Molchalnik  
Дата: 10.11.19 10:04
Оценка:
Здравствуйте, CreatorCray, Вы писали:

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


M>> копировали объекты, о природе которых ничего неизвестно, через memcpy.

CC>Такое даже сишники как правило не делают, ибо указатели.
ещё как делают!!! и более того, таких большинство среди тех, кто утверждает, что он плюсовик и хочет до 120

M>>нужно здесь вызвать конструкторы, здесь деструкторы

CC>Ээээ, что? Не, ну можно конечно позвать сделать руками но для этого надо постараться.
в чём же старание? в том, чтобы знать placement new и сделать my_object->~MyObject() ?
А это навык, который нужен, если вы пишете любую более-менее сложную шаблонную структуру.
Если чувак на плюсах не может написать свой вариант std::vector, или std::list, пусть даже самый упрощённый, можно ли его назвать хотя бы миддлом?
примерное соотношение среди лиц с похотелками до 120 килорублей, кто может сделать это, не накосячив, и кто не может, как я уже говорил, — 1 к 9. 10%

M>>А специфика аллокаторов на с++

CC>И что же понимается под "спецификой аллокаторов на с++"?
копируемый аллокатор, перемещаемый ли, может ли содержать состояние

M>>>>Плюсы адекватно можно выучить за год.

CC>>>Увы но нет.
M>>Если я буду учить, то да)))
CC>Категорически нет. В С++ как и в стрельбе по ногам важна практика.
Категорически да. Практика — часть обучения. я не утверждал, что буду учить тупо лекционным методом. а в плюсах важно знать все методы отстрелить себе ногу, а их конечное число и далеко не тысяча. порядка ста. за год можно выучить.
Re[4]: Оставаться в С++ или уходить?
От: CreatorCray  
Дата: 10.11.19 10:05
Оценка:
Здравствуйте, night beast, Вы писали:

NB>а что там такого особенного, что нужно годы изучать?

Практика нужна.

NB>если не влазить в дебри, то плюсы вполне логичный язык.

А потом такие вот "не влезшие в дебри" рассказывают тут про С++ сказки.
"Приходят недоделанные дети, приносят недоделанные отчёты и не разорвать этот порочный круг" (С)
... << RSDN@Home 1.0.0 alpha 5 rev. 0>>
Re[6]: Оставаться в С++ или уходить?
От: CreatorCray  
Дата: 10.11.19 10:21
Оценка: +1
Здравствуйте, Molchalnik, Вы писали:

M>>> копировали объекты, о природе которых ничего неизвестно, через memcpy.

CC>>Такое даже сишники как правило не делают, ибо указатели.
M>ещё как делают!!!
Теоретики поди.

M>утверждает, что он плюсовик и хочет до 120

Что такое "до 120"?
$120 в час, $120K в год?

M>>>нужно здесь вызвать конструкторы, здесь деструкторы

CC>>Ээээ, что? Не, ну можно конечно позвать сделать руками но для этого надо постараться.
M>в чём же старание? в том, чтобы знать placement new и сделать my_object->~MyObject() ?
Угу. Для этого трудиццо надо.

M>А это навык, который нужен, если вы пишете любую более-менее сложную шаблонную структуру.

Спецом поискал через весь свой код: нашлось в трёх местах, все три — специфические контейнеры с довольно примитивной "шаблонной структурой".
Надо это если хочется закатить солнце вручную, типа сделать имплементацию delete [] для non-uniformly sized objects array поверх нестандартно аллоцированного региона например.
Но в 99.9% кода врукопашную их звать таки не приходится.

M>Если чувак на плюсах не может написать свой вариант std::vector, или std::list, пусть даже самый упрощённый, можно ли его назвать хотя бы миддлом?

Нельзя.

M>примерное соотношение среди лиц с похотелками до 120 килорублей, кто может сделать это, не накосячив, и кто не может, как я уже говорил, — 1 к 9. 10%

Как я уже говорил: чтобы познать дзен года будет мало. За три года усиленной практики возможно будет можно сказать что да, этот падаван познал дзен.

M>>>А специфика аллокаторов на с++

CC>>И что же понимается под "спецификой аллокаторов на с++"?
M>копируемый аллокатор, перемещаемый ли, может ли содержать состояние
А...
В общем то к собственно аллокации это не имеет отношения, просто надо понимать что бывают объекты со спецификой внутреннего состояния, к которым интерфейс (конструкторы, деструкторы, операторы и права доступа к ним) надо сразу прописывать такими, чтоб нельзя было просто сделать фигню.

M>Категорически да. Практика — часть обучения. я не утверждал, что буду учить тупо лекционным методом. а в плюсах важно знать все методы отстрелить себе ногу, а их конечное число и далеко не тысяча. порядка ста. за год можно выучить.

Сколько я такого уже видел — года не хватит, умножай на pi.
... << RSDN@Home 1.0.0 alpha 5 rev. 0>>
Re[5]: Оставаться в С++ или уходить?
От: night beast СССР  
Дата: 10.11.19 10:41
Оценка:
Здравствуйте, CreatorCray, Вы писали:

NB>>а что там такого особенного, что нужно годы изучать?

CC>Практика нужна.

практика, специфичная именно для плюсов?
можно конкретнее, о чем речь?
Re[6]: Оставаться в С++ или уходить?
От: Aleksey82  
Дата: 10.11.19 10:59
Оценка: +3 :)
M>Если чувак на плюсах не может написать свой вариант std::vector, или std::list, пусть даже самый упрощённый, можно ли его назвать хотя бы миддлом?
M>примерное соотношение среди лиц с похотелками до 120 килорублей, кто может сделать это, не накосячив, и кто не может, как я уже говорил, — 1 к 9. 10%

Ну, за 120к, хорошо если они компьютер сами могут включить и знают где студию скачать.

А я вообще junior, получается. Хотя 120 у меня в неделю, это если не напрягаться. А за 15 лет работы никогда не писал свой вектор или лист в реальности. И аллокатор... и placement new не использовал... Вы там аналог буста джуниорами пишите? Или какой-нить сверхбыстрый движок БД? Людьми за 120? Странно что вы еще не долларовый миллионер, с такими возможностями вам по слитку золота в час нормальные конторы бы отгружали.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.