[Boards: 3 / a / aco / adv / an / asp / b / biz / c / cgl / ck / cm / co / d / diy / e / fa / fit / g / gd / gif / h / hc / his / hm / hr / i / ic / int / jp / k / lgbt / lit / m / mlp / mu / n / news / o / out / p / po / pol / qa / r / r9k / s / s4s / sci / soc / sp / t / tg / toy / trash / trv / tv / u / v / vg / vp / vr / w / wg / wsg / wsr / x / y ] [Home]
4chanarchives logo
Beginner to programming here, which language should i learn first?
Images are sometimes not shown due to bandwidth/network limitations. Refreshing the page usually helps.

You are currently reading a thread in /sci/ - Science & Math

Thread replies: 51
Thread images: 5
File: 1429386328650.gif (2 MB, 395x350) Image search: [Google]
1429386328650.gif
2 MB, 395x350
Beginner to programming here, which language should i learn first?
>>
>>7875236
C++ and there already is a thread up >>7874530
>>
The typical fucktards will tell you Java.

But I'd go C, C++, JAva.
>>
>>7875253
Java is bad for your health
>>
>>7875253
Is there any benefit to learning C before C++?
>>
>>7877247
I learnt C before C++ but i don't think it'll change anything to learn C++ before C
>>
>>7875253
almost right.
you go C,Java then C++
>>
>>7875236

I want the cs memer's to leave.


>>>/g/
>>
>>7877247

You'll please the autistics on /g/ that demand everyone do things the way they did.

Just learn C++ and then learn the few ways C is different.
>>
>>7877247
>Is there any benefit to learning C before C++?
It teaches you better fundamentals, but at the cost of making it considerably harder to get practical shit done.
>>
Scheme.
>>
File: BE A WOMAN.jpg (161 KB, 612x792) Image search: [Google]
BE A WOMAN.jpg
161 KB, 612x792
>>7875236
>i

Learn English first.
>>
>>7877247
You can easily go from C to C++, not so much the other way around.
>>
>>7877287
you is the a le mad xD
>>
File: Sicpcover.jpg (188 KB, 931x1398) Image search: [Google]
Sicpcover.jpg
188 KB, 931x1398
1. BUY SICP
Yes, you need to buy it. The first edition is cheap as shit at only $10 shipped.
If you download it, you're never going to read it, just like how you never watch all those chinese cartoons you download.

2. GRAB A NOTEBOOK AND PEN
Pretend it's 1986. There's no 4chan and no IRC to distract you.
You're going to MIT 6.001, your instructor is Hal FUCKING Abelson and class starts tomorrow.
You can find the entire course lectures on Youtube here: https://www.youtube.com/playlist?list=PLE18841CABEA24090
This is entry level CS shit. If you can't wrap your head around the first lesson, you need to kill yourself.

3. ????

4. PROFIT
Enjoy your newfound purpose in life, you're well on your way to becoming a true wizard!
>>
File: c_c++_venn_diagram.001.png (41 KB, 488x441) Image search: [Google]
c_c++_venn_diagram.001.png
41 KB, 488x441
>>7877282
>It teaches you better fundamentals

You don't know what the fuck you're talking about.
>>
>>7877247
Your wizardry level increases while your level of virgin almost plummets to laid status. The last inch you have to do yourself.
>plug male parts into female parts
I'd totally start with C before C++ if I were you.
>>
>>7875236
Pseudocode
>>
>>7877303
That picture is completely misleading.

For most intents and purposes, C and C++ are completely separate languages with very little relation between them. While most C structures are valid C++, the way you actually approach things in the two languages is completely different. There is very little overlap in what is sensible to do in C and what is sensible to do in C++; thus, sensible C and sensible C++ are almost completely disjoint, and viewing one as an extension of the other will only lead to tears.
>>
First things first
Learn functional programming first.
Python would be lovely for that since you can learn imperative and funcitonal language at the same time.

Java is horrible for funcitonal programming
Don't know about c++ but as a first language I would not like to care about pointers and memory allocations, you better grasp the idea of progamming and the elementary then get into c++.

Learn the basic of funcitonal programming.
learn to do clever while and for loops in.
All this in python, use lambda expressions like in skim, higher order functions. Learn how to handle trees and the way you traverse trees. and perhaps if you are pro, write a tail recursion.
DONT GET INTO OO UNTIL YOU GOT THIS.

SKIM or haskell is nice for that aswell but very restrictive and boring when it comes to the point when you wanna program OO.
>>
>>7877293
http://www.ccs.neu.edu/course/com3620/parent/C-for-Java-C++/c-for-c++-alt.html

God damn, I have to read 11 pages of text to go from C++ to C. This is so hard to learn! All I have to do to go from C to C++ is read several books.
>>
>>7877322
This, C is a worthless obsolete language. Stop being an autist and learn java or C++
>>
/g/, quit asking stupid questions on /sci/. Infact just leave.

Programming isn't a science.

Cheers.

-/sci/
>>
>>7877318

C++ is not OO. You can code in the same way in both languages and it runs just as fast. It's not Java.

Your repeating the same decade old memes about C++ that simply aren't true.
>>
Javascript, if you want to be employable while retaining your social skills
>>
>>7877274
No one cares what you want. Just ignore these posts and they wont percolate to the top of this board.
>>
>>7877332
>You can code in the same way in both languages
I've already made the crucial distinction between what you CAN do with the language and what is sensible to do with it. If you are going to ignore that aspect, we are not going to get anywhere.

>C++ is not OO.
>it runs just as fast.
>It's not Java.
Nobody is talking about OO or performance, friend.
>>
>>7875236
I would learn C++ or a strongly typed OOP language like Java.

If you want to get into functional programming, I would skip prolog and go with Javascript.
The V8 javascript engine gets to about 70% the speed of C.

If you're looking for languages to handle computational anything I would look into the following:

Python (has numerical libraries that are basically just Fortran Wrappers)
Fortran - popular for things like experimental CFD.
Julia-Lang- If you do dynamic dispatching the proper way, you end up with a high level language that has speeds comparable to Fortran.

If you're looking for scientific-computing/code-for-research I would go with the following.

MATLAB - very popular and feature rich. Also pretty expensive.
OCTAVE - free Open Source alternative to matlab. The syntax is EXACTLEY the same.

Python - Is becoming a new standard.
>>
>>7877354

What is sensible in C++? C++ lets you do things faster than C but it boils down to syntactic sugar most of the time.
>>
>>7875236
Just start with C++

Find a tutorial online and sift through it
Constantly use cplusplus.com as a reference guide
Find some project ideas and do them
>>
>>7877379
>but it boils down to syntactic sugar most of the time.
So? Most of modern general purpose programming is built on syntactic sugar. Take that away and you've basically got assembly language.
>>
>>7877984
You're acting like the difference between C and C++ is like the difference between C and lisp.
>>
first pascal
then java
then C++
>>
Depends on what you want. Do you want to be be a vidya programmer or just generally a computer engineer that works on performance-critical systems? If not, then C++ is definitely not the best language to get started with.

How is a language that has as many things to keep in mind simultaneously as C++, a good language for beginners? The cognitive load it imposes on you doesn't let you fully focus on the actual problem you're solving.

Don't get me wrong, there are certain things for which C++ is unbeatable like pretty much anything that is a performance-critical system. But for most people, languages like Python, Java, and C# are more than enough. Learn some C just so you become aware of proper memory management.

Only people who enjoy C++ and actually get something out of it, are people who are really knowledgeable in computer architecture, operating systems, and/or speed freaks that enjoy spending time tweaking their code to gain every single nanosec of performance they can (so, mostly ECEs). Not saying there's anything wrong with that, but I find focusing on the more abstract software architecture and algorithm design/implementation parts much more interesting. To each their own, though, because I'm not going to deny it's awesome to have at least one badass speedfreak in your team, so the world does need them. Plus either one is a world on its own you could dedicate a lifetime of exploration to.
>>
>>7877373
Throw Octave in the garbage and burn the bin.
>>
>>7878073
different anon, what's wrong with octave? we used it in math in my poor country, it's a great alternative for poor people
>>
>>7878073
Ok. I want to hear this. Why the hate for octave?
>>
Try English first.
>>
>>7878067
>How is a language that has as many things to keep in mind simultaneously as C++, a good language for beginners? The cognitive load it imposes on you doesn't let you fully focus on the actual problem you're solving.

Because you don't have to keep it all in mind. Just like you don't have to learn all the words of English to start speaking it nor do you need to recall all the words you've learned to write a sentence.

>Java, and C#

Fuck off. Those languages are worthless for anything /sci/ related.

>but I find focusing on the more abstract software architecture and algorithm design/implementation parts much more interesting

And C++ makes that far easier than C. Have you ever studied it beyond hello world?
>>
File: free.png (29 KB, 401x238) Image search: [Google]
free.png
29 KB, 401x238
>>7878076
>>7878082

GPL software is cancer and unacademic. BSD, MIT, academic free license or similar copy-center stuff are the only truly free (as in the fucking definition and not propaganda) software.
>>
>>7875236

C# and python
>>
>>7878104
>Because you don't have to keep it all in mind. Just like you don't have to learn all the words of English to start speaking it nor do you need to recall all the words you've learned to write a sentence.

Using C++ the way you use it defeats the purpose of using C++. You just suck at C++ and are the equivalent of a truck driver who wants to use a camaro instead of an 18 wheeler to haul cargo just based on blind stubbornness.

>Fuck off. Those languages are worthless for anything /sci/ related.

Which is why I also mentioned python, you hateful halfwit.

>And C++ makes that far easier than C. Have you ever studied it beyond hello world?

I never said the contrary, you moron. Jesus, can you even read? What I said is that there's a HUGE list of languages that better let you focus on that than C++. I didn't fucking say C was in that list, though.
>>
>>7878200
Dubs speak the truth
>>
>>7878200
>Using C++ the way you use it defeats the purpose of using C++. You just suck at C++ and are the equivalent of a truck driver who wants to use a camaro instead of an 18 wheeler to haul cargo just based on blind stubbornness.

You don't have to use everything nigger. Allowing different people to do things differently isn't bad.
>>
>>7875236
C/C++ or LISP. If you learn any of these, then you'll learn skills that you can apply to any language.
>>
Just learn python first then learn other languages (C, C++, fortran, whatever you wanna have).

Python is easy on beginners, has tons of sci-related libraries, and it has a nice community.

Besides, if later on you wanna get into webdev (there's lots of jobs on that... could even do it as a side hustle/freelance), it can do many things in that domain as well.
>>
C, then C++, then Python, and then pick either learning assembly and going back to C, either learning LISP/Scheme and going full lambda.

Don't listen to people who say that python is a good first language. It is easy, but it is too easy. Good analogy would be that if you drive auto you'll never gonna be able to learn how to manual, but vise versa is ok.
>>
Learning anything besides python makes you a faggot.
>>
>>7875236
Hindi
>>
As a CS major, this right here is the question that makes me cringe the most. Are people really this retarded or is it a troll?
>>
>>7878400
And Pinoy too.
Thread replies: 51
Thread images: 5

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

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.
If a post contains personal/copyrighted/illegal content you can contact me at [email protected] with that post and thread number and it will be removed as soon as possible.
DMCA Content Takedown via dmca.com
All images are hosted on imgur.com, send takedown notices to them.
This is a 4chan archive - all of the content originated from them. If you need IP information for a Poster - you need to contact them. This website shows only archived content.