Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Yeah, I think the same. If I started today, I would love to being with python or even Java/Kotlin as it's better to show the good things about OOP.

C it's great to learn the barebones experience with memory, and as a lang that runs in everything.

The modern use I could see for C++ it's usually too specific for a random learner. I would only recommended for people who like to work in game engines, simulations, networking, embedded systems or migration of legacy systems, and other edge cases.

But for learning, I think it's better to learn with a modern lang, as you will be less distracted learning the quirks of vitange language, and use that time to learn in parallel a lot of concepts outside the lang, like algorithms, devops, soft skills with teams, prioritizing requirements, etc.



Out of curiosity, is there anything in particular that makes C++ preferable for simulations? I’ve been trying to get into the topic lately - for now I’ve stuck to python and Julia for the visualizations that are more familiar to me.


C++ is really nice for low-level OOP, and compared with C it adds generics and classes. Compared to Python, C++ is lower-level and can have significant performance gains with a well written program. With regard to Julia, if you write your code in "the right way", it is also compiled and low-level.


Makes sense, I can see some benefits in having more control of what happens with the memory, rather than trying to fit the model I have in mind into the datatypes python.

Found this post [0] fitting: > The best thing you can do when dealing with lower-level languages like C and C++ is understand that things like lists, strings, integers, floating point numbers, objects, etc. do not actually exist. They are simply abstractions. There are only the CPU and memory.

[0]: https://news.ycombinator.com/item?id=8356400


Performance, I'd assume. Simulations can take a lot of number-crunching.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: