[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
What is the best programming language to learn first? and why?
Images are sometimes not shown due to bandwidth/network limitations. Refreshing the page usually helps.

You are currently reading a thread in /g/ - Technology

Thread replies: 84
Thread images: 8
File: a suka.jpg (60 KB, 604x604) Image search: [Google]
a suka.jpg
60 KB, 604x604
What is the best programming language to learn first? and why?
>>
bottom-up: assembly or C
top-down: lisp or haskell
>>
>>53243774
I think C++. Many people say that it's hard and all, but it's pretty easy to learn and to do great stuff with it, once you buy a good book that'll guide you.
>>
>>53243783
Never learn Assembly first
>>
C. Get your hands bloody early and know what mistakes modern languages are fixing for you.
>>
>>53243806
Start with C and then move on to assembly
>>
>>53243774
Learn fast: Python or Perl
Learn well/comprehensively: C or derivatives
>>
>>53243774

C
>>
>>53243783
>>53243797
>>53243806
>>53243815
>>53243824
>>53243829
Is C++ better version of C?
>>
>>53243838
>>
>>53243838

Yes, but there is an even better version called D
>>
>>53243838
cout << "hello world" << endl; // C++
printf("%s\n", "hello world"); /* C */
>>
>>53243774
C
Because I say so.
>>
>>53243774
C++
>>
You should not learn a programming language first, you should learn HTML and CSS first. Following that, you have a lot of choice, it doesn't really matter, because you won't know shit. I recommend python.
>>
>>53243838
A lot of people think that it is. I would recommend starting with C though, it's a lot easier to start with that as opposed to C++.
>>
>>53243838
Yes, kind of.
Here's a nice response to this question:
http://stackoverflow.com/questions/497786/why-would-anybody-use-c-over-c
>>
How about stop stalling and just go to code academy.com and learn Python. You are are asking this question like it takes forever to learn a language and you are stuck with it forever after.

So many people spend literally weeks asking this question and then don't bother learning anything. Instead of that you could you be halfway done learning a language by the time this thread dies (I am serious). Just go do it.
>>
In my university, they teach java first. Why no one talked about it ?
>>
Dolan duck coding
>>
Would probably depend if people consider html a programming language.
>>
>>53244011
hahahaha
>>
File: Aku.png (188 KB, 481x490) Image search: [Google]
Aku.png
188 KB, 481x490
>>53244021
I already know AA-coding.

Here is little game
 Peli name: Akun suuri seikkailu. Taso 1: ankkalinna. viholliset-ei koko: 999 mega,t Pää bos-kyllä. Pää bos kestävyys: 9


And here is my code to hack Ankallispankin keskustietokone joka kerää kaikki tilitiedot
Kv,ka: Pankkitilinumerot. Send-tänne
>>
>>53243774
C, hands down.
>>
>>53243774
So you want to learn programming?

You will need to pick a starting language. You will learn more later, but for beginners, there are generally two recommended "programming families" that you can choose to start learning:
-Dynamic programming languages, such as: Python, Perl, Ruby, Lisp
-Structured programming languages, such as: C, C++, Java, C#

These are amongst the most popular languages in use worldwide, including 4 from the top 5. Both approaches are perfectly fine, and well-documented.
-Dynamic programming may be a bit more suitable for those who need their programs to do heavy mathematics, and thus it is more popular in academia.
-Structured programming is a bit more suited for making general applications, and thus it is more popular in industries.
If you cannot decide, flip a coin.

If you choose dynamic programming, you may want to start with Python. It is very easy to pick up. Here are some good sources:
http://www.learnpython.org/
http://learnpythonthehardway.org/book/
http://www.codecademy.com/en/tracks/python

If you choose structured programming, you may want to start with C or C++. C is very well documented, and C++ is generally "C, with a few extra concepts added". Sources:
For C:
http://www.cprogramming.com/tutorial/c-tutorial.html
http://c.learncodethehardway.org/book/
http://www.learn-c.org/

For C++:
http://www.learncpp.com/
http://www.cplusplus.com/doc/tutorial/
http://www.cprogramming.com/tutorial/c++-tutorial.html

>BUT I WANT MORE SOURCES!
Read: https://wiki.installgentoo.com/index.php?title=Programming_Books

>BUT I WANNA START WITH [LANGUAGE X] INSTEAD!
Sure, if you like. But the languages shown above are considered very good for beginners.

>BUT I WANNA MAKE iPHONE GAMES!
Learn Objective C and/or Swift.

>BUT I WANNA MAKE ANDROID GAMES!
Learn Java.

>BUT I WANNA MAKE A COOL WEBSITE!
Learn HTML, CSS, and Javascript.

>BUT I WANNA MAKE PC GAMES!
Learn patience.
>>
File: kattokaamäosaanpostaa.gif (179 KB, 120x240) Image search: [Google]
kattokaamäosaanpostaa.gif
179 KB, 120x240
>>53244060
>>
File: guideTo1stLanguage.png (74 KB, 661x716) Image search: [Google]
guideTo1stLanguage.png
74 KB, 661x716
I love these threads.
>>
>>53244032

I'm serious dude, we learn objects and all.
We learned C only one year later
>>
>>53243838
It's basically C with heaps of extra features added in.
>>
>>53243976

I'm with this guy.

Learn HTML, XML, and CSS first. They become incredibly useful tools when you start writing to files and saving data.
>>
>>53243774
start with xAMP stack
JS/PHP/MySQL is easy to learn
>>
>>53244314
Java is too slow to talk about it, bro. Use it only when you want extreme compatibility, like compatibility with ATMs, cars and coffee machines. There are no other uses for it other than these.
>>
>>53244093
Thanks anon :) this is the antithesis of a shit post.
>>
>>53243774
asuka is to young to smoke, she is just a child
>>
>>53245494
14 is not a child
>>
>>53245506
you didnt get my references
>>
Racket
Scheme
>>
C/C++: Makes learning other languages easier
Java: Shitty easy industry language
Python: Easiest to learn
Assembly: meme answer but lets you know how processors interact and store data on the smallest scale

What other languages can be tl;dr'd like this?
>>
>>53243958
>printf("%s\n", "hello world");
printf("hello world\n");
>>
>>53243783
No.
Just no.Okay?
>>
>>53246464
>>printf("%s\n", "hello world");
>printf("hello world\n");
puts("hello world");
>>
>>53243774
fortran
>>
anything in the c family
>>
>>53243774

i like depraved sluts :3
>>
Learn in this order:
Python -> c -> c++ -> c#
>>
Not OP, but I want to start Java and then go into C, would that be too retarded?
>>
I'd suggest Java. It's VERY widely used in the real world, has a ton of learning materials, and has excellent tooling (iDEA).

And contrary to early stereotypes, the modern JVM is snappy. See pic related. I wouldn't suggest it for realtime video games, but you're good to go for anything else.
>>
>>53243774
40 yo asuka
>>
Pseudo-code
What really matters is understanding the programming logic not the syntax in itself
>>
>>53248917
Whether you start Java, C, or C++ really doesn't matter too much in the end.
>>
>>53249033
>See pic related.
>java vs python
oh it's faster than python it sure must be very fast then!
>>
The most powerful programming language is Lisp. If you don't know Lisp (or its variant, Scheme), you don't know what it means for a programming language to be powerful and elegant. Once you learn Lisp, you will see what is lacking in most other languages.
>>
VISUAL BASIC
>>
>>53249255
Can you explain why it's better? Or are you too stupid?
>>
>>53249255
>Lisp
>powerful

@OP: If you wanna go hardcore, C. Learn how all the API programmers are retards (I mean it, they were utter retards, and we are still using their stuff for backward compatibility reasons), and hack your own shit together and become a master neckbeard.

If you want to get into business: Java.

If you want easy results: Python or Perl.

If you are autistic: C++.
>>
>>53244010
Really? Is that easy? I would like to larn java to make phone apps...If only I didnt had a full time job.
>>
>>53249415
You got an hour each night?

You could get pretty fucking good with Java in a month.
>>
>>53249465
>pretty good

I do not want to know on what systems you have worked on which I use on a daily basis.
Truth is, most programmers who think they are decent are completely, utterly incompetent. Show me 1K LOC of yours, and I'll smash your confidence in little pieces.
>>
>>53249503
Heads up, nobody in the real world cares about being the alpha nerd.

It either works or it doesn't, and while I'm sure it could be better I don't care as long as I get paid.
>>
>>53249581
>Heads up, nobody in the real world cares about being the alpha nerd.

You obviously never had to do with high-class engineers who are working on processor designs, like at Intel. But it's OK, just show everyone how much you don't know.
>>
First language doesn't really matter.
C because it is simple and looks a lot like other languages.
If you were to put together a small course on programming in general, I would start with C, write a few functions and learn how to compile something.
Don't spend too much time on it, spend a month or so.
Then go to assembly. Think about the functions that are available and try to write some of the applications like you would in C.
This time spend two months and build something bigger.
If you have the money, get a microcontroller or something small where you can run without an OS so you get to be in total control of what the device does.
Next step should either be to go back to C or start with C++.
If you go C++, the contrast to assembly would be very large but that could be a good thing.
See what advantages there is to making classes and functions part of an object and get use the STL so you can make better applications.
If you go back to C, the contrast wouldn't be as big, but it might be easier to understand what the output of your compiler becomes.

Scripting languages are cool and more useful if you just want to get something done, but the error/warning messages are not as good as on c++/c so you won't learn as much.

Using a operating system that is based on files would be a good idea as you can easily understand how things work and how to design something yourself.
>>
>>53243838
>>53243833
>>53243829
>>53243824
>>53243783
>>53243774
>>53243806
>>53244011
>>53244010
>>53244093

>Literal CSI Freshman students who think their Mark Fucking Zuckerberg, Bill Gates or Steve Jobs walking through the front door.

Any fucking retard who wants to make a website that's standard is HTML5, CSS, phpmyadmin and mysql. Simple as fucking that.

All these fucking retards don't use anything like "muh C" or "Muh Python!" or "Muh C++". Because they just want to prove how old they are and just how autistic they really can be.

Hey retards? Ever heard of D? USE IT.
>>
>>53249851

you sound like someone who is really really mad while browsing 4chin
>>
>>53243783
wouldn't really label lisp as a "top-down" language. historical circumstances haven't favored lisp machines, which ran lisp as close as possible to the machine code. in an alternate reality, lisp would be thought of as one level above machine code.
>>
>>53243783
>>53243783
wouldn't really label lisp as a "top-down" language. historical circumstances haven't favored lisp machines, which ran lisp as close as possible to the machine code. in an alternate reality, lisp would be thought of as one level above machine code.
>>
>>53249465
Yeah I actually do! Thnks a bunch I will give it a try, off to google I go.
>>
Whatever you do, avoid java.
>>
I'd start with C like OO lang with a garbage collector like C# or Java after that I would dig into C++ and after that into Haskell. It mostly depends on your end goal so a question about the best language without specifying more information is too general.
>>
>>53250168
Who actually introduced this shitty idea that we all need garbage collection to run our programs? I have never ever seen a program that couldn't work without GC.

OO in C makes sense and should be strictly enforced though. It's also the best way to avoid GC fuckery.
>>
Depends on your level of expertise in reading code.
If you're wanting to do web development in the future, I'd recommend starting with HTML, CSS, Javascript etc etc.
If you're wanting to do software development or anything else, I'd recommend starting with python or c++. It's really up to you.
>>
Pascal and Eiffel.

Then OCaml.
>>
>>53245451
But in terms of learning how to code ?

For example, I think that the lack of pointers (compare to C) in java makes it easier.
And the string object is easier to use than a char array in C

I'm not saying which one is better for use but to learn.

The best language to learn being Oz tho (language that my university professor invented which contains all paradigms but is very slow apparently)
>>
>>53243774
Learn c and python at the same time. Python will be easier and faster to get some shit done, c will teach you that you don't know shit yet, but will help you learn what's going on under the hood in python.
>>
File: w6rbUP6b.jpg (20 KB, 160x160) Image search: [Google]
w6rbUP6b.jpg
20 KB, 160x160
>>53243774
Go for machine language it's the quickest.
>>
>>53243774
python

You can teach python to the biggest idiots and still get some results.
>>
>>53244349
A bit more forgiving as well , and a bit less characters to type
>>
>>53243806
Why? Assembly isn't hard to understand and i think it would not only help you appreciate C more but understand it better as well.
>>
C or C++

Java is easy too but it's annoying.
>>
>>53251424
/thread
>>
Ada. Forces you into some good habits and the compiler is good enough to catch a lot of what you'd do wrong that would cause runtime exceptions in most other languages.
>>
C is a terrible first language, you'll spend more time inserting debug printfs and fucking with the linker than learning.
>>
C#
>>
>>53253231
Actually, you are going to learn what really happens with your data.
Also, seriously? You don't, like, have a macro with which you print debug stuff? Just what kind of programmer are you?
Thread replies: 84
Thread images: 8

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.