Re[48]: Оставаться в С++ или уходить?
От: SkyDance Земля  
Дата: 26.08.22 15:27
Оценка:
N>Ты отличный пример человека, который рассуждает о вкусе апельсинов, даже ни разу их не видев.

Окей, вижу, что уже второй человек не понял мной написанного. Значит, это я плохо мысль выразил.
На Фортране я написал тысячи строк, и еще больше переписал с Фортрана на С (годах в 96-98). Я отлично знаю его область применения (с тех пор она не претерпела изменений, КМК). Мысль, которую я пытался донести, проста: Фортран имеет определенную нишу. Там где его свойства действительно требуются. Причем даже не столько в силу языковых особенностей, сколько в силу преемственности — старые математики учат молодых "делай как я". В свое время я портировал (весьма зубодробильную, я так ее и не понял) модель полярных сияний с Фортрана на С/С++. Надо было научиться параллелить вычисления, что и было сделано с помощью MPI. Сначала физики поворчали, но когда оно стало считаться за минуты вместо недель, оценили. Больше Фортрану они никого не учили

Так вот, С++ в этом смысле аналогичен. На нем есть мегатонны строк кода. Если б не это, привлекательность языка была бы куда меньше, и позицию бы он занял ближе к Фортрану: инструмент для вполне конкретного назначения. Но когда на С++ начинают писать все подряд (включая микросервисы, общающиеся по HTTP + JSON, и занимаюшиеся парсингом чего-нибудь во что-нибудь), это уж точно не от того, что С++ лучший язык на данном поприще.
Re[47]: Оставаться в С++ или уходить?
От: so5team https://stiffstream.com
Дата: 26.08.22 15:53
Оценка: +1
Здравствуйте, SkyDance, Вы писали:

S>>На счет сложности: сопромат -- это непростая дисциплина, но почему-то никому и в голову не приходит утверждать, что сопромат говно, патамушта сильнасложно, и на задачи по расчету прочности конструкций и элементов двигателей почему-то берут именно тех, кто сопромат смог освоить.


SD>А вот в софтостроении не так.


И вновь: отучаемся говорить за всех.

SD>Поэтому требуются более простые и дуракоустойчивые инструменты.


В 100% случаев?

SD>Более того, даже если брать только грамотных людей, более простые и комфортные инструменты ускоряют разработку. Меньше багов, быстрее релизы и т.п..


Да вы, прям, Капитан Очевидность. Ну кто бы мог подумать?!!!

А теперь добавляем в рассмотрение требования к производительности и ресурсоемкости. Хотя бы.

И обнаруживаем, что грамотные люди с комфортными инструментами начнут пердолиться с чистой Сишечкой чтобы развязать узкие места, завязавшиеся из-за более высокоуровневых и безопасных языков с GC.
Re[49]: Оставаться в С++ или уходить?
От: so5team https://stiffstream.com
Дата: 26.08.22 16:00
Оценка: +1
Здравствуйте, SkyDance, Вы писали:

SD>Возвращаясь к сабжу: это как раз та причина, по которой дальнейшие вложения в С++ как технологию я бы предпочел ограничить.


Так ограничивайте. Вам кто-то мешает это сделать?

SD>>>Примерно как Фортран — он есть, там где нужно старый код гонять.

S>>Говорят, что ученые, которым приходится заниматься вычислениями (математики, физики, химики и т.д.), гораздо лучше справляются с современным Фортраном, чем с C++. Так что, предположу, что и здесь вы сильно не правы.

SD>Именно про это я и написал: Фортран есть там, где нужно гонять старый [ментальный] код. Где конкретные математики и физики уже умеют работать с Фортраном — поэтому и продолжают с ним работать.


Во-первых, говорят, что Фортран сейчас с удовольствием изучает именно что молодежь. Просто потому, что Фортран позволяет им получать решение их задач быстрее и проще, чем тот же C++.

Во-вторых, люди вокруг не тупее вас (а по некоторым вашим высказываниям могу предположить, что гораздо умнее). Поэтому, если бы в их области было что-то существенно лучше Фортрана, то Фортран уже был бы давным давно отправлен туда же, где сейчас находится COBOL. Но нет, суть в том, что в своей нише Фортран успешно конкурирует со всем, что появилось сильно позже него.

И то, что Фортран живет там, "где нужно гонять старый [ментальный] код", сей факт никак не обесценивает. Как бы коннотацию лично вы бы не вкладывали в "старый [ментальный] код".

SD>Самое дорогое в нашей профессии — научиться, и научить других людей.


Re[49]: Оставаться в С++ или уходить?
От: so5team https://stiffstream.com
Дата: 26.08.22 16:02
Оценка:
Здравствуйте, SkyDance, Вы писали:

SD>Но когда на С++ начинают писать все подряд (включая микросервисы, общающиеся по HTTP + JSON, и занимаюшиеся парсингом чего-нибудь во что-нибудь), это уж точно не от того, что С++ лучший язык на данном поприще.


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

Ведь может же такое быть. Чисто теоретически?
Re[49]: Оставаться в С++ или уходить?
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 27.08.22 04:37
Оценка: +2
Здравствуйте, SkyDance, Вы писали:

N>>Ты отличный пример человека, который рассуждает о вкусе апельсинов, даже ни разу их не видев.


SD>Окей, вижу, что уже второй человек не понял мной написанного. Значит, это я плохо мысль выразил.

SD>На Фортране я написал тысячи строк, и еще больше переписал с Фортрана на С (годах в 96-98). Я отлично знаю его область применения (с тех пор она не претерпела изменений, КМК). Мысль, которую я пытался донести, проста: Фортран имеет определенную нишу. Там где его свойства действительно требуются. Причем даже не столько в силу языковых особенностей, сколько в силу преемственности — старые математики учат молодых "делай как я".

Нет. Ниша Фортрана не в преемственности, а в возможности максимально прямого изложения описания задачи с избавлением от ненужных и проблемных сущностей типа указателей (а, может быть, и ссылок).

Для нового поколения математиков эту нишу достаточно неплохо покрывает Python как запускалка всяких numpy/scipy/pandas/что-там-ещё-сегодня-актуально, но у него свои грабельки.

"Старые математики" могут быть специфически старыми только потому, что молодые таки чаще понимают чисто программистские сущности и понимают, зачем в ответ на new надо делать один и ровно один delete. Но это не значит, что им это критично или что они хотят ещё и это знание.

SD> В свое время я портировал (весьма зубодробильную, я так ее и не понял) модель полярных сияний с Фортрана на С/С++. Надо было научиться параллелить вычисления, что и было сделано с помощью MPI. Сначала физики поворчали, но когда оно стало считаться за минуты вместо недель, оценили. Больше Фортрану они никого не учили


MPI и OpenMP для Фортрана есть не хуже, а во многом и лучше. То, что вы его не использовали, говорит только об ограниченности или доступных средств, или знаний о них.

SD>Так вот, С++ в этом смысле аналогичен. На нем есть мегатонны строк кода. Если б не это, привлекательность языка была бы куда меньше, и позицию бы он занял ближе к Фортрану: инструмент для вполне конкретного назначения. Но когда на С++ начинают писать все подряд (включая микросервисы, общающиеся по HTTP + JSON, и занимаюшиеся парсингом чего-нибудь во что-нибудь), это уж точно не от того, что С++ лучший язык на данном поприще.


Это оттого, что
1) C++ вполне неплох на данных поприщах.
2) Унификация как в пределах одного средства сильно облегчает диагностику и отладку.
3) Унификация в пределах разных средств сильно облегчает перенос людей и опыта.

И, что критично для данной подветки, он в этом смысле в разы лучше C (который тут выдвигают некоторые оппоненты).
The God is real, unless declared integer.
Re[47]: Оставаться в С++ или уходить?
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 27.08.22 04:39
Оценка:
Здравствуйте, SkyDance, Вы писали:

N>>Зато, как правило, есть власть над принятием кода этих сотрудников.


SD>Могу только позавидовать. Что я вижу в реале, так это отсутствие оной власти. Конечно, можно прокомментировать на тему "наши гайдлайны говорят делать вот так, а не вот так". Но реальной власти ("не пилите свой лас-вегас с блекджеком, используйте готовый вот отсюда") по факту может и не быть. Говорю о том, что вижу сам.


Это странно. Я видел только такое. Чаще проблема в качестве контроля со стороны лидов, и крайне редко — в его невозможности.
Ну, значит, завидуйте
The God is real, unless declared integer.
Re[50]: Оставаться в С++ или уходить?
От: so5team https://stiffstream.com
Дата: 27.08.22 06:27
Оценка: +1
Здравствуйте, netch80, Вы писали:

N>MPI и OpenMP для Фортрана есть не хуже, а во многом и лучше.


Любопытно, что если покопаться в истории развития этих инструментов, то выясняется, что MPI появился изначально для Си и Фортрана, тогда как первая версия OpenMP была сделана именно (и только) для Фортрана, а на C/C++ OpenMP был перенесен спустя несколько лет.

Этот комментарий ни в коей мере не в пику тому, что говорилось выше. Просто в качестве дополнительных мазков в общую картину.
Re[50]: Оставаться в С++ или уходить?
От: Артём Австралия жж
Дата: 28.08.22 01:09
Оценка: :))
Здравствуйте, so5team, Вы писали:

SD>>Но когда на С++ начинают писать все подряд (включая микросервисы, общающиеся по HTTP + JSON, и занимаюшиеся парсингом чего-нибудь во что-нибудь), это уж точно не от того, что С++ лучший язык на данном поприще.


S>Ну так, просто в качестве робкого предположения: а может это из-за того, что другое уже пробовали и оно тупо не потянуло?


Может быть, был конфликт интересов. Например, взяли so5team, у которого наколки "За C++, отца его и святаго духа" и сказали, вот, пиши сервис на жаве. Тот и написал- да так, чтобы ни у кого сомнений не осталось, что только C++ спасет их проект от провала.

S>Ведь может же такое быть. Чисто теоретически?

Может.

Засада для фанатиков C++ в том, что их не подпускают до микросервисов на расстояние пушечного выстрела.
Re[51]: Оставаться в С++ или уходить?
От: so5team https://stiffstream.com
Дата: 28.08.22 06:13
Оценка:
Здравствуйте, Артём, Вы писали:

Аё>Засада для фанатиков C++ в том, что их не подпускают до микросервисов на расстояние пушечного выстрела.


Так а засада-то в чем?
Re[52]: Оставаться в С++ или уходить?
От: Артём Австралия жж
Дата: 28.08.22 22:16
Оценка: :)
Здравствуйте, so5team, Вы писали:

Аё>>Засада для фанатиков C++ в том, что их не подпускают до микросервисов на расстояние пушечного выстрела.


S>Так а засада-то в чем?


http://rsdn.org/forum/job/7549390?tree=tree
Автор: 0xCAFEDEAD
Дата: 24.09.19


ox>ИБ и всякое секьюрити мне кажется самым полезным из всего озвученного. Это востребованная и перспективная область, причем думаю надолго.

ox>А так прикладное С++ — узкая и малоооплачивамая ниша.


У C++ есть высокооплачиваемое применение в HFT, хотя по сплетням от инсайдеров, оттуда плюсников теснит FPGA.
Re[53]: Оставаться в С++ или уходить?
От: so5team https://stiffstream.com
Дата: 29.08.22 04:32
Оценка:
Здравствуйте, Артём, Вы писали:

Аё>

ox>>ИБ и всякое секьюрити мне кажется самым полезным из всего озвученного. Это востребованная и перспективная область, причем думаю надолго.

ox>>А так прикладное С++ — узкая и малоооплачивамая ниша.


Аё>У C++ есть высокооплачиваемое применение в HFT, хотя по сплетням от инсайдеров, оттуда плюсников теснит FPGA.


Т.е. засада в том, что кому-то что-то кажется, а у тебя сплетни?
Re[26]: Оставаться в С++ или уходить?
От: aik Австралия  
Дата: 29.08.22 05:13
Оценка: 2 (1)
Здравствуйте, Артём, Вы писали:

Аё>>>Чиста системное это C.

S>>Уже давно нет.
Аё>Пусть aik отпишется. Там вроде linux kernel.

приделывают rust: https://www.phoronix.com/news/Rust-For-Linux-v5
Re[27]: Оставаться в С++ или уходить?
От: Артём Австралия жж
Дата: 01.09.22 03:05
Оценка: :)
Здравствуйте, aik, Вы писали:

aik>приделывают rust: https://www.phoronix.com/news/Rust-For-Linux-v5


Вот, это интересно и правильно. Садомазохистов-раскладывателей грабель с крестиками не подпускать к ядру на пушечный выстрел.


Цитата Линуса Торвальлса (создателя ядра линукс и git):

C++ is a horrible language. It's made more horrible by the fact that a lot
of substandard programmers use it, to the point where it's much much
easier to generate total and utter crap with it. Quite frankly, even if
the choice of C were to do *nothing* but keep the C++ programmers out,
that in itself would be a huge reason to use C.

In other words: the choice of C is the only sane choice. I know Miles
Bader jokingly said "to piss you off", but it's actually true. I've come
to the conclusion that any programmer that would prefer the project to be
in C++ over C is likely a programmer that I really *would* prefer to piss
off, so that he doesn't come and screw up any project I'm involved with.

C++ leads to really really bad design choices. You invariably start using
the "nice" library features of the language like STL and Boost and other
total and utter crap, that may "help" you program, but causes:

— infinite amounts of pain when they don't work (and anybody who tells me
that STL and especially Boost are stable and portable is just so full
of BS that it's not even funny)

— inefficient abstracted programming models where two years down the road
you notice that some abstraction wasn't very efficient, but now all
your code depends on all the nice object models around it, and you
cannot fix it without rewriting your app.

In other words, the only way to do good, efficient, and system-level and
portable C++ ends up to limit yourself to all the things that are
basically available in C. And limiting your project to C means that people
don't screw that up, and also means that you get a lot of programmers that
do actually understand
low-level issues and don't screw things up with any
idiotic "object model" crap.

- the whole C++ exception handling thing is fundamentally broken. It's
_especially_ broken for kernels.
— any compiler or language that likes to hide things like memory
allocations behind your back just isn't a good choice for a kernel.
— you can write object-oriented code (useful for filesystems etc) in C,
_without_ the crap that is C++.

In general, I'd say that anybody who designs his kernel modules for C++ is
either
(a) looking for problems
(b) a C++ bigot that can't see what he is writing is really just C anyway



Сейчас, конечно, набежит so5steam и продолжит песню о "производительности" C++.
Отредактировано 01.09.2022 3:27 Артём . Предыдущая версия .
Re[51]: Оставаться в С++ или уходить?
От: SkyDance Земля  
Дата: 01.09.22 04:28
Оценка:
S>тогда как первая версия OpenMP была сделана именно (и только) для Фортрана

OpenMP — это не библиотека, а "стандарт", суть список функций API. Этот список вышел году, кажется, в 98 или около того. К этому времени уже несколько лет как существовал MPI. Причем не только в виде "стандарта" (ибн описаний функций), но и вполне рабочей библиотеки. Которая была частично совместима с Fortran — через FFI bindings. В 1996 оно нормально работало только с С (причем в нашем случае — только с Watcom C, если кто-то еще помнит, что это такое, плюс DOS/4GW — ибо нужно было много памяти).

OpenMPI — тоже на С (и тоже можно использовать через FFI). Она вышла лет на 10 позже, чем стоял вопрос о замене Фортрана на С. В общем, конечно, спорить можно до хрипоты, но на тот момент разница в скорости обсчета модели была достаточной причиной, чтоб физики научились писать математику на С.

Эх, ностальгия Прикольные были времена. Доступ в интернет был мало кому доступен. У меня модем был, Zyxel V.32bis (или как он там назывался, уж и не помню, скоро 30 лет этим воспоминаниям).
Re[48]: Оставаться в С++ или уходить?
От: SkyDance Земля  
Дата: 01.09.22 04:34
Оценка:
N>Это странно. Я видел только такое. Чаще проблема в качестве контроля со стороны лидов, и крайне редко — в его невозможности.

Возможно, специфика структуры incentives у определенных компаний. Когда основная масса бонусов идет за "time to market". В таком варианте любой контроль качества обходится фразой "весь мир насилья мы разрушим зарелизим вот эту фичу, и потом зарефакторим, отчистим от мусора, сделаем нормальный API, добавим тесты". Практика показывает, что "а потом" обычно не наступает. Разве что находятся герои, самоотверженно бросающиеся на амбразуру. Но они быстро сгорают, ибо в награду вместо финансовой благодарности получают низкий рейтинг в performance review, потому что "трижды обрушил систему, убирая неиспользуемый код, который играл важную роль для разогрева процессора с целью последующей прожарки сосисок на нем".
Отредактировано 01.09.2022 4:47 SkyDance . Предыдущая версия .
Re[53]: Оставаться в С++ или уходить?
От: SkyDance Земля  
Дата: 01.09.22 04:42
Оценка: 10 (1) +2
Аё>У C++ есть высокооплачиваемое применение в HFT, хотя по сплетням от инсайдеров, оттуда плюсников теснит FPGA.

Открою страшную тайну. Большиство языков по сути одинаковы. Разве что функциональщина vs императивщина чутка вырывает мозг. Но поняв оба класса языков, дальше уже совершенно неважно.

И платят не за С++ или Rust. А за умение выполнить задачу. С помощью подходящего инструмента. Так что все языки высокооплачиваемы (английский, КМК, самый высокооплачиваемый, на данный момент).
Re[28]: Оставаться в С++ или уходить?
От: SkyDance Земля  
Дата: 01.09.22 04:46
Оценка:
Аё>easier to generate total and utter crap with it. Quite frankly, even if
Аё>the choice of C were to do *nothing* but keep the C++ programmers out,
Аё>that in itself would be a huge reason to use C.

Хорошо написано, с огоньком

Я бы еще добавил столь любимого здесь на форуме Джоэля Спольски с его law of leaking abstractions: https://www.joelonsoftware.com/2002/11/11/the-law-of-leaky-abstractions/

The law of leaky abstractions means that whenever somebody comes up with a wizzy new code-generation tool that is supposed to make us all ever-so-efficient, you hear a lot of people saying “learn how to do it manually first, then use the wizzy tool to save time.” Code generation tools which pretend to abstract out something, like all abstractions, leak, and the only way to deal with the leaks competently is to learn about how the abstractions work and what they are abstracting. So the abstractions save us time working, but they don’t save us time learning.


Сдается мне, Торвальдс не столько огорчен безумием в С++, сколько тем, что придется впустую продолбать год(ы) на изучение кишочков этих С++ стандартов, дебагом всей этой ненужной сложности и т.п..
Re[52]: Оставаться в С++ или уходить?
От: so5team https://stiffstream.com
Дата: 01.09.22 04:58
Оценка:
Здравствуйте, SkyDance, Вы писали:

S>>тогда как первая версия OpenMP была сделана именно (и только) для Фортрана


SD>OpenMP — это не библиотека,


А где-то утверждалось, что это библиотека?
Re[28]: Оставаться в С++ или уходить?
От: so5team https://stiffstream.com
Дата: 01.09.22 05:04
Оценка:
Здравствуйте, Артём, Вы писали:

Аё>Сейчас, конечно, набежит so5steam и продолжит песню о "производительности" C++.


Нет. Просто напомню, что здесь в обсуждении подвисло несколько веток, в которых тебе были заданы вопросы, но ты предпочел тихо слиться.
Re[28]: Оставаться в С++ или уходить?
От: CreatorCray  
Дата: 01.09.22 06:29
Оценка: -1
Здравствуйте, Артём, Вы писали:

Аё>Цитата Линуса Торвальлса (создателя ядра линукс и git)


А ты внутрь гита то сам заглядывал? Там такое макаронное месиво что просто атас.
Rants этого ниасилятора попросту не интересны. Ну не шмог он, и теперь пыжится, выдавая нужду за добродетель.
... << RSDN@Home 1.3.110 alpha 5 rev. 62>>
Забанили по IP, значит пора закрыть эту страницу.
Всем пока
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.