[Boards: 3 / a / aco / adv / an / asp / b / bant / biz / c / can / cgl / ck / cm / co / cock / d / diy / e / fa / fap / fit / fitlit / g / gd / gif / h / hc / his / hm / hr / i / ic / int / jp / k / lgbt / lit / m / mlp / mlpol / mo / mtv / mu / n / news / o / out / outsoc / p / po / pol / qa / qst / r / r9k / s / s4s / sci / soc / sp / spa / t / tg / toy / trash / trv / tv / u / v / vg / vint / vip / vp / vr / w / wg / wsg / wsr / x / y ] [Search | Free Show | Home]

Why should I learn C++ if I'm not a computer scientist?

This is a blue board which means that it's for everybody (Safe For Work content only). If you see any adult content, please report it.

Thread replies: 116
Thread images: 27

File: cs.jpg (16KB, 324x244px) Image search: [Google]
cs.jpg
16KB, 324x244px
Why should I learn C++ if I'm not a computer scientist?
>>
what course?
>>
> Why should I learn C++ if I'm not a computer scientist?

There isn't any. Go with a higher level language if you just want to fuck around
>>
File: download (16).jpg (3KB, 94x116px) Image search: [Google]
download (16).jpg
3KB, 94x116px
>>9107612
The Creator of C++, Bjarne Stroustrup has the PHENOTYPE.
>>
None whatsoever. Learn Python or Perl and save yourself the headache.
>>
>>9107641
If you think about it, you can't create a programming language, you can only discover one.
>>
/r/ing that pic of a letter where that guy explains why c and all variants of c are complete and utter shit and why he will never hire someone who uses c/c++
>>
File: 1488059848624.jpg (70KB, 702x692px) Image search: [Google]
1488059848624.jpg
70KB, 702x692px
>>9107651
>treats applied cs (which is already applied math) like pure math
>>
File: thinkpython2.jpg (32KB, 250x328px) Image search: [Google]
thinkpython2.jpg
32KB, 250x328px
Learn python with the free book "Think Python 2e" from here : http://greenteapress.com/thinkpython2/thinkpython2.pdf
>>
>>9107612
There's barely any reason to learn C++ if you are a computer scientist
>>
>>9107612
meche here anon and they only taught me matlab in undergrad. The fucked up thing is they use mostly c++ for fluid simulations because its faster. Even the professors here look for students with a c++ background when all teach is Matlab.

Now I know what it feels like to be oppressed when my own fucking school curricula is against me
>>
>>9107661
I'm right, coding in C++ (for example) would still work if no one knew about it.
>>
File: 146565862633.jpg (20KB, 320x568px) Image search: [Google]
146565862633.jpg
20KB, 320x568px
>csfag here.
My friends in other majors always ask me this.I think there are various reasons to. Also I'm assuming you may be pursuing a career in a scientific field.

Benefits:
>It would look terrific on your resume ,it so happens that many people in a scientific field with good programming skills in fundamental languages end up in high paid software jobs.
>Fastest Compiled All-Around Programming
Language.
>Used in all computer related field.
> You will be able to understand other language easier.
>If you are into simulation software and you want to use its API knowing C++ will help.
>If you are into competitive programming,it would also be good.
>You will make shit-tier languages devs envious of you.
>You will end up learning a lot about computers.(which is probably a bad thing for most people)
>Most professional and polished set of libraries to use.
>Very good libraries for anything graphics related.

Cons:
>Very steep learning curve.
> Time consuming.
> C++ offers you too many ways to do things.(for programmers this is often a bad thing,because one ends up having to learn all of them in order to read other people's work.)
>Nothing is noob friendly.Specially libraries.
>Increments exponentially verbosity(a lot of keywords).
>>
>>9107752
any good resources to learn C++?
i'm already familiar with C and Java

t. mathfag, if that's relevant
>>
File: i.jpg (49KB, 398x499px) Image search: [Google]
i.jpg
49KB, 398x499px
>>9107808
>>
>>9107818
ty
>>
>Why should I learn C++ if I'm not a computer scientist?
Because you might be a software engineer.
>>
>>9107641
The saddest thing of all is that you probably pronounce his name BYAR-NEIGH. Fuck you. Fuck you, you fucking illiterate asshole. I hope the deepest level of hell is reserved for people like you.
>>
File: bjarne2.jpg (25KB, 293x324px) Image search: [Google]
bjarne2.jpg
25KB, 293x324px
>>9107850
His name is BRAIN. BRAIN Strosstrup
>>
>>9107612

C++ is only useful because it was introduced around the same time cross-platform compiler research went into overdrive

C++ compiler optimization is literally subsidized by US taxpayer money, if other languages had the same amount of support they'd be used just as much

overall it is a mediocre language and the research for numeric computing and compiler optimization formerly done in it is being overhauled by functional languages and provers

the C++ community in general is pretty bland in its thinking and domains and you'll find more interesting projects and individuals among say, the Python folks, Lispers, Haskellers, hardware description engineers, or statistical/scientific language communities
>>
>>9107612
You shouldn't learn C++ even if you are. It's useless.
>>
>>9107850
Calm down, sperglord.
>>
>>9107649
>Perl
>Save yourself headache

Python is pretty good if you want to avoid most of the retardation that is computer scientists, such as numbers that don't work like numbers, and division by 0.0 being Infinity, but it's still a procedural language, making it useless if you're a mathfag and not a physicsfag.
>>
>>9107657
Please this. C hate makes me aroused.
>>
>>9107680
>would still work
No it wouldn't. A language doesn't work unless it's implemented. What you're saying could apply to anything that is created, including human language.
>>
File: 1492940313877.jpg (87KB, 640x580px) Image search: [Google]
1492940313877.jpg
87KB, 640x580px
hi, someone over 18 with an actual career in software engineering

if you're programming for embedded systems or shit with high performance requirements C/C++/assembly is the way to go

if you're programming high level games/apps use C#/Java

if you're a fucking loser piece of shit that will never actually earn money writing software use anything else.
>>
>>9108005
What about python
>>
>>9108005
I use C# instead of python for quick things.

You can compile c# without installing anything on windows, and on Linux/mac just by installing mono.

on windows do:
set X=%CD%
cd "C:\Windows\Microsoft.NET\Framework64\v4.0*\"
csc -out:%X%\my.exe %X%\\*.cs > NUL
>>
>>9108014
Python is slow as shit. In an intense calculation project, just switching from Python to C (keeping the same algorithms) got me from 8 hours down to 15 minutes (3 minutes with pthreads). All the abstraction bullshit in Python kills any possibility of optimized compiling or efficient cache usage. This language is a crime.
>>
>>9108005
>ignoring the entire scientific computing industry
lol goes to show why you're a code monkey with a superiority complex
>>
>>9108044
Who would do that? Just go on the internet and tell lies?
Also you've clearly never done any machine learning.
>>
learn Go (golang): https://tour.golang.org
>>
>>9108056
>you've clearly never done any machine learning
This relates to Python being a piece of shit in that...?
>>
C# is the patrician choice
>>
>>9107612
CSers don't learn C++, its far too difficult for them.
>>
>>9108062
in that python isn't a piece of shit and is widely used by machine learning students as well as in industry
>>
>>9108063
this
>>
>>9108074
There was a time when aether existed, another one when bloodletting was an efficient treatment and another one when all infinities were equivalent. Today, there is a time when high-level OOP languages are a good idea. What's your point?
>>
>>9108079
thanks for confirming your sub 80 IQ
>>
File: 1414320367571.jpg (43KB, 420x600px) Image search: [Google]
1414320367571.jpg
43KB, 420x600px
>>9108054
not hearing you suggest shit, bitch
>>
>>9108088
what is there to suggest? your post is myopic and delusional. if i would suggest anything to you it would be to get your head out of your ass and get some perspective.
>>
File: Shooting_Ex_Post_Facto.jpg (34KB, 432x311px) Image search: [Google]
Shooting_Ex_Post_Facto.jpg
34KB, 432x311px
>>9108094
so yeah, you're just hilariously stupid and arguing with anonymous on the internet
>>
>>9107674
>The fucked up thing is they use mostly c++ for fluid simulations because its faster.

no they don't. most CFD stuff is written in FORTRAN
>>
>>9108097
no u
>>
>>9107612
Ignore anything negative anyone says about C++. Anyone who thinks it's a shit language just doesn't know it. It is the best programming language because you can program in every programming language paradigm, from the metal all the way up to functional or even declarative paradigms using template metaprogramming

C++ is by far the best language for writing heavily optimized code, yet even significantly better than C with the help of template metaprogramming. This is undisputed by anyone who knows what they fuck they're talking about

C++ is the best language. That being said, it is hard to learn to be a good programmer, and it takes a very long time to not be shit at it. You can shoot yourself in the foot multiple times at once, and you can accidentally shoot yourself in the face when you try to dig the bullets out. But you can also shoot a bulls eye on the other side of the world if you want to, once you get good at handling the weapon

God speed anon
>>
>>9108119
Note, I am a professional C++ programmer specializing in low level highly optimized libraries, and a good percentage of your computers are running software I work on right now.
>>
>>9107612
because you can code cool things with it
>>
>>9107612
C++ is garbage, you should learn C.
>>
>>9108085
And thank you for confirming Pythonlets' lack of arguments.
>>
>>9108102
got em
>>
all languages are worth learning. java, C++, C#, you shouldn't struggle learning them all. i mean unless you're a languagelet, who only knows english...
>>
>>9107612
I'm a mathematician and i exclusively program in C
>>
>>9108149
When I read posts like this I wonder if the poster boasts about being capable of rephrasing what some edgelord said or if he truly doesn't understand that statements are followed by arguments. Either way this is way to fucking brainlet for /sci/ get off this board, you dense fuck.
>>
File: CluNG2MUsAA99U2.jpg (69KB, 598x792px) Image search: [Google]
CluNG2MUsAA99U2.jpg
69KB, 598x792px
>>9108314
I think a legitimate, massive sociological issue we will have to soon face as a society in a more concrete way, is the fact that too many people do indeed do what you just said - repeat things they heard without understanding it, and quite frankly without much personal conviction. If you question these people on the beliefs they profess and the actions they claim to support as a result of these beliefs, their explanations are often thin and if you get too serious with them they will say "stop getting so emotional" or "calm down it's just politics" as if these statements don't have serious consequences for the world as a whole

People fall for concepts like political trolling "hurr jewz" because they want to be a part of the in-group on 4chan, then the in-group gets bigger, then people who actually think that think their views are supported and they start taking them more seriously. I believe these cycles of people holding their tongue against intolerable behavior is what has caused countless human rights atrocities throughout the years

Anyway C++ is a God level language, unparalleled.
>>
>>9108074
The only reason python is used by machine learning student (and hence in industry) is because most people mathematically capable of actually working with machine learning are typically mathematicans or physicist. Said professions are inbred and/or computationally illiterate enough to approve of python as language. Python is honestly shit in most aspects. I have no clue why people regard it as easy when C++ is just as easy if you restrict yourself to some subset of it or C is equally easy.
>>
>>9108321
I agree with every single statement you made and have nothing further to add. Thank you :)
>>
>>9108324
how to spot an undergrad: the post
>>
>>9108343
I'm MSc in Physics with heavy focus on machine learning, fuck off
>>
>>9108348
>physics
>doesn't understand design of programming languages, why an interpreted language would be beneficial over compiled languages, and that things like extensive and useful libraries contribute to the quality of a language
way to play into the "inbred" and "computationally illiterate" stereotype you made up, faggot

t. comp sci phd with focus in machine learning
>>
File: 1486261544542.png (468KB, 1280x738px) Image search: [Google]
1486261544542.png
468KB, 1280x738px
>>9108348
>>9108350
way to argue about literally bullshit instead of making money off an interface package between abstract machine learning and efficient programming languages

0 degrees but make more in a day than both of you will in a year
>>
>>9108350
There's not a single argument here. I'm BSc compsci and I have not made a single inbred or illiterate statement. Interpreted languages are good for prototyping or creating software which need not be performant. Machine learning is computationally expensive and I know you know this which leaves me clueless as to why you consider python fit for machine learning.
>>
>>9108324
This

I work closely with a large array of machine learning peeps at my work, some are PhD physicists. They don't know how to program and the managers and programmers sometimes poke fun at them.

They can code up solutions, they can write programs that do what they want. But they can't engineer high quality, scalable programs that could actually be deployed on backend servers, for instance, and their programs are often slow because of everything from minor programming mistakes to general massive design flaws and recomputation of already computed shit that they could have cached, things like that.

It's not a big issue because they're way smarter in a much harder us in ML, but they just can't program for shit. I wish they'd get a CS refresher at my work, honestly spending 2-3 months on basic performance based programming techniques but I guess they have higher priority data crunching work to do
>>
>>9108359
because python isn't slow enough for literally anyone to give an iota of a shit
the "python is slow" meme applies in embeded environments or when you're working at optimizing low-level processes, which python is obviously not built for
when doing mathematics and for other high-abstraction applications python does just fine

of course you're going to say there's no argument here either, because you're a fucking undergrad and you think you know everything because you heard some loudmouth on an imageboard say you should use ANSI C for everything
>>
File: ??.jpg (41KB, 374x374px) Image search: [Google]
??.jpg
41KB, 374x374px
>>9108357
uh ok, go enjoy your money then why are you shitposting here?
>>
>>9108365
At this post you did make arguments.

Python is slow in comparison to other languages in non-embedded environments or even when not working at optimizing low-level processes. Python gained momentum for it's simplicity in comparison languages present at the time of Pythons birth.

>python does just fine
With respect to what and in comparison to what?

>of course you're going to say there's no argument here either, because you're a fucking undergrad and you think you know everything because you heard some loudmouth on an imageboard say you should use ANSI C for everything
I've been coding C++ since I was a kid long before I heard of 4chan and I already said truthfully that I'm MSc physics. You are just making stuff up to now. Get a grip.
>>
File: 1470355200124.png (147KB, 400x299px) Image search: [Google]
1470355200124.png
147KB, 400x299px
>>9108366
>money satisfies every desire in life
>>
>>9108455
Is that pic the episode where some Godlike being traps them in some ethical experiment to see if they try to escape? And riker and the other dude transported into another ship and it was some weird maze. That was one of the most disturbing
>>
>>9108359
Not him. Do you know why people use python? Because it doesn't fucking matter if it slow.
When you're working with scientific computation, you're using these libraries:
NumPy. Written in C, has Python API.
SciPy. Written in C, has Python API.
Pandas. Written in C, has Python API.
Scikit Learn. Written in C++, has Python API.
Tensorflow. Written in C++, has Python API.
OpenCV. Written in C++, has Python API.


Python is just a quick, readable, convenient way to express your idea, write a list of statements. Your computation is done in other languages, and they are fast.
>>
File: C.png (72KB, 1016x98px) Image search: [Google]
C.png
72KB, 1016x98px
>>9108324
>C++ is just as easy
my_vector = [[42], [42]]

vs

std::vector<std::vector, int>> my_vector = { {42}, {42}};

And shit like this, everywhere. It is so annoying, so time consuming, so unnecessary.

Also, pic related.
>>
if im an EE looking to work either in power or circuit design or something, which language should i learn? python with its libraries?
>>
>>9111237
No. Definitely something low-level. Most of that stuff is written in C and C++, but C being a majority.
>>
>>9107612
So anons on /sci/ won't make fun of you.
>>
>>9107850
Yarna.
>>
>>9107858
Via Ada, a long time back.

I think you're being highly disingenuous otherwise.
>>
>>9108119
Writing in C++ like it's C is more comfortable than writing in C.
>>
PhD in numerical physics here.
Know the difference between compiler and interpreter or go fuck ducks.
Know that an interpreter can call compiled code or just shut your fucking faggot's mouth.
>>
>>9107612
The only language a self-respecting intelligent person should learn is Rust, if you do not care about getting stuff done then you should go with Haskell or Idris.
>>
File: grammar.png (112KB, 750x709px) Image search: [Google]
grammar.png
112KB, 750x709px
>>9107891
basically. there's a hell of a lot more to language than just 'discovering' the grammar.
>>
File: trees.png (26KB, 732x363px) Image search: [Google]
trees.png
26KB, 732x363px
>>9107612
The only reason i can think of is if you're in a field that might require processing large amounts of in-memory data in not-so-predictable ways. As a general purpose language, c++ is usually closer to the hardware than a lot of alternatives, so learning how to write it properly can provide huge advantages. On the other hand, you face other huge disadvantages. For the most part, if you don't know why you'd need it, you probably don't, especially when other languages are much better now than they used to be.
>>
>>9107612
>implying computer scientists use C++

top kek my friend
>>
>>9111663
>implying computer scientists program at all
>>
>>9107663
Thanks, anon!
>>
>>9107680
Your statement is technically correct but pointless
>>
File: tour.png (382KB, 519x646px) Image search: [Google]
tour.png
382KB, 519x646px
>>9107808
>>9107818
Also by the creator, but shorter
This is the one I own and I like it
>>
>>9107612
Why should you learn any programming language if you are not a computer scientist?

Are you a wizard casting spells?
>>
Considering most CS majors end up developing sites with Javascript and PHP, no, I don't think you'll need to use C++. Python will do what most small/part time coders-scripters will need to get done.
>>
>Cuck Science
>>
>>9107612

Because it's a programming language that has a metric fuck ton of derivatives.
>>
>>9107858
t. python """"""programmer""""""
>>
>>9109729
Me:
> I have no clue why people regard it as easy when C++ is just as easy if you restrict yourself to some subset of it or C is equally easy.
You:
>Post picture of difficult subset of C++ making use of semantics not even possible in Python

You can often produce semantically equivalent stuff in python in less keystrokes (as you illustrated). If less keystrokes for semantically equivalent code is synonymous with easy, then I'd say C++ is more difficult than Python. But I don't think that's what make a language easy. It is not difficult or hard to type more, it is more tedious. C++ is occasionally tedious because you are explicit about what datatypes you use, which makes debugging and profiling easier. It's not unnecessary, especially not for scientific computations.

C++ is difficult when you do for example template metaprogramming. If you restrict yourself to a subset of C++ similar to that of Python then C++ is not difficult.
>>
>>9107657
>>9107887
Ask and you shall receive, /sci/dudes.
>>
>>9112188
rustfag detected
>>
>>9107850
I don't, I'm half Danish
Don't sperg out so much man
>>
File: 2015_bjarne_straustroup.jpg (38KB, 200x250px) Image search: [Google]
2015_bjarne_straustroup.jpg
38KB, 200x250px
>>9107641
I once had a dream where Bjarne walked past me. Naturally, I was starstruck. I turned around and rushed to him, hugging him. But he pushed me away and cursed at me.

Why even live when I will never feel the love of Bjarne
>>
File: segfaults internally.jpg (18KB, 460x242px) Image search: [Google]
segfaults internally.jpg
18KB, 460x242px
>>9107885
>division by 0.0 being Infinity
>I don't understand IEEE 754: the post
>>
File: 7099f1.jpg (67KB, 200x245px) Image search: [Google]
7099f1.jpg
67KB, 200x245px
>>9112188
>ablooblooblooo hard problems are hard
>>
C+VHDL master race

>>9112188
>being this much of a pleb
>>
>>9112188
kek, hackernews filled with cucks as always.
>>
File: 1497827764994.png (537KB, 1920x1080px) Image search: [Google]
1497827764994.png
537KB, 1920x1080px
>>9112183
Well, with that reasoning, all languages are equally easy. Except, maybe, Haskell.

C++ has man quirks and harder syntax. You have to always think about your data types, you write significantly more code. Sure, it's not that much more if you write a hello world, but if you program is 1000+ lines in Python, C++ would be like at least twice longer. And all of that makes it harder. You just can't produce result in C++ as quick as you do it in Python.
Also
>manual memory management
>>
File: 1502918995614.jpg (77KB, 492x650px) Image search: [Google]
1502918995614.jpg
77KB, 492x650px
>>9107612

>read many books on C++
>make projects in C++
>realize spending time not shooting myself in the foot and keeping up on all the billion features C++ has now is a waste of time
>program only in scratch now

U too will be ascended someday anon
>>
>>9113355
you know you can use templates right sweetie?
>>
>>9113294
>>manual memory management
This alone makes your opinion discardable. You don't know what you're talking about.
>>
>>9111560
>Writing in C++ like it's C is more comfortable than writing in C.
This a thousand times. Even just if you use basic concepts like classes without any virtual dispatching, and static_asserts and simple templates, your bit twiddling abilities will go up 100x
>>
File: 1356633319756.jpg (1MB, 3264x2448px) Image search: [Google]
1356633319756.jpg
1MB, 3264x2448px
>>9113294
>manual memory management
Anon if you are good at C++ you don't have to do "manual memory management". C++ has by far the best memory management system of any language, because RAII applies to not just memory but locks, file handles, process handles, thread handles, network handles, etc. Honestly you don't know what the kek you're talking about.

std::unique_ptr<int*> myList = new int[345];

No manual memory management needed.

>>9109729
Why is the python one better? Types can be coerced arbitrarily, it's harder to debug. In the C++ version you have compiletime guarantees on behavior, usage, and lifetime. NOT SO with shit-tier languages like python

Why is

>std::vector<std::vector, int>> my_vector = { {42}, {42} };

Any harder? You think number of characters is what determines how good a language is? Do you have any idea how many entire classes of bugs are removed by C++'s requirement to be explicit with the type?

Basically cucks who don't like C++ are idiots who don't do real programming on real high performance systems requiring low latency. For instance, good luck writing your own manual memory allocator for python as opposed to C++. C++ it's easy as fuck once you know what you're doing, and you can make dramatic perf gains
>>
>>9107612
C++ is complete garbage if you don't like OOP. Even something like C is better in that case.

Also, C++ tends to be more used in engineering.
>>
>>9113828
>C++ is complete garbage if you don't like OOP.
Elaborate.
>>
>>9107664
There is. As a computer scientist you need to be able to quickly learn languages. C++ is best in the progression C -> C++ -> Java.

It's main use is making it easier to learn Java, both C and Java are more used in industry.
>>
Why am I wasting my time looking at this?
>>
>>9113891
It's not a waste of time, if you really got into this thread and started researching it a lot you could gain an interest in C++ for instance then go get a CS degree then make $100k straight out of college if you're slightly above average
>>
>>9113897
this isn't the 90s, stop being delusional
>>
>>9113900
What are you talking about?

>I literally did this I make $135k my first year working
>>
>>9113917
who are you quoting?
>>
>>9113937
>9113900
Post number 9113900 if you would hover your mouse over the red text you would see this
>>
>>9107887
I use that reaction image that says "I see you are a man of culture too" sometimes, but it isn't enough right now for the absolute solidarity I feel towards your post.
>>
>>9108057
How about you Go fuck yourself?
>>
File: 1481417948309.jpg (25KB, 480x360px) Image search: [Google]
1481417948309.jpg
25KB, 480x360px
>>9112188
>plebbit
Thread posts: 116
Thread images: 27


[Boards: 3 / a / aco / adv / an / asp / b / bant / biz / c / can / cgl / ck / cm / co / cock / d / diy / e / fa / fap / fit / fitlit / g / gd / gif / h / hc / his / hm / hr / i / ic / int / jp / k / lgbt / lit / m / mlp / mlpol / mo / mtv / mu / n / news / o / out / outsoc / p / po / pol / qa / qst / r / r9k / s / s4s / sci / soc / sp / spa / t / tg / toy / trash / trv / tv / u / v / vg / vint / vip / vp / vr / w / wg / wsg / wsr / x / y] [Search | Top | Home]

I'm aware that Imgur.com will stop allowing adult images since 15th of May. I'm taking actions to backup as much data as possible.
Read more on this topic here - https://archived.moe/talk/thread/1694/


If you need a post removed click on it's [Report] button and follow the instruction.
DMCA Content Takedown via dmca.com
All images are hosted on imgur.com.
If you like this website please support us by donating with Bitcoins at 16mKtbZiwW52BLkibtCr8jUg2KVUMTxVQ5
All trademarks and copyrights on this page are owned by their respective parties.
Images uploaded are the responsibility of the Poster. Comments are owned by the Poster.
This is a 4chan archive - all of the content originated from that site.
This means that RandomArchive shows their content, archived.
If you need information for a Poster - contact them.