[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
Im tired of the meme card threads. Guys, what is the best programming
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: 132
Thread images: 13
File: Screenshot_1.png (398 KB, 729x524) Image search: [Google]
Screenshot_1.png
398 KB, 729x524
Im tired of the meme card threads.
Guys, what is the best programming language to learn and what is the best way to learn it,
>>
It's funny you think this garbage is any better.
>>
1 - The one most suitable for a given task
2 - By programming with it

If everything fails just use python
>>
>>54915913
You need to learn how to program.
Any language will do. Take your pick.
>>
>>54915976
you win
>>
>>54915976
Brainfuck it is
>>
>>54915913
>pick one regarding your needs
>learn that language
>beign a X programming language Taliban
>post on /g/ trownig shit at other languages
that`s how you do it
>>
inb4 you should just try haskell, just do it man, and other pipe dreams
>>
>>54915913
Rust is the best and its tutorial (from the site) is the best way to learn it.
>>
>>54915913
no
>>
>>54915913
kys
>>
there is no single best programming language besides haskell. each language has its own strengths and flaws besides haskell. you can't use a language for every possible problem domain (besides haskell)
>>
>>54915913

not javascript
>>
>>54917216
What a peculiar way to spell rust.
>>
>>54917284

I wish. Look at the job boards and everyone's all "muh Javascript, muh Coffeescript, muh Typescript"
>>
>>54915913

Not Java. Using it as a first language encourages too many bad habits. Every time I see someone swallowing exceptions habitually or throwing pointless wrapper exceptions it's inevitably someone who's a Java programmer first and a lazy motherfucker to boot.
>>
Node.js
>>
C++ aka the language of gods
>>
>>54917772
I don't believe that anyone can be this retarded.
Here you your (You).
>>
Perl.
>>
File: 1465089465825.webm (36 KB, 729x524) Image search: [Google]
1465089465825.webm
36 KB, 729x524
>>54915913
>>
>>54917799
Hello inbred.
>>
>>54915962
>If everything fails just use python

This, just because it will get you doing things quick without having to understand much about memory and stuff.
>>
>>54917789
not an argument
>>
>>54917868
I wasn't arguing anything.
I was just calling you retarded.
>>
>>54917883
lowly java programmer detected
don't worry bud, you can move up to the big leagues too one day
>>
>>54917883
anon BTFO
>>
Lisp.
>>
File: 1465042435239.jpg (868 KB, 3014x4283) Image search: [Google]
1465042435239.jpg
868 KB, 3014x4283
There's two basic things required to become a developer: learning how to program, and learning a programming language.

People who can't code have to learn both of those things at the same time, i.e. they learn to program by learning their first programming language. Once that work is done they "know how to program" and so can quickly learn other languages. Of course they won't be expert programmers, but you get the idea.

For this reason it's a good idea to learn a language designed for beginners first, that way you minimise the pain involved in the "learning to program" process. Almost all the best coders did this by the way. For example, Linus Torvalds, who wrote Linux in the C language, learned to code using the BASIC language (which is a language made for beginners).

So you should first learn a language designed for beginners for those reasons. You also have to realise that the extremely rapid pace of technological innovation means that languages come and go all time time, and are revised all the time, and developers are constantly having to learn new ones or relearn current ones. The TL;DR is: your goal is to *learn to program*. Learning a language is just a side-effect.

So what language is a good one for beginners? Python (version 3) is the clear best choice. It was designed for beginners. As a nice bonus it is currently widely used everywhere, so it's likely that you will find your knowledge of it very useful even 10 years from now. Read "Think Python" and do the exercises as a start.

After learning Python, your second language depends on what you want to actually do, which you will likely figure out learning your first language. If you want to develop Android apps learn Java, if you want to do web shit learn JavaScript, etc.

If you want to learn the low level details behind stuff (and/or do systems programming) then learn C. No matter what other languages you know, if you don't know C then you aren't really that serious a programmer. Hail Satan.
>>
File: a.gif (2 MB, 375x375) Image search: [Google]
a.gif
2 MB, 375x375
>>54915913
>serious thread
>what is the best programming language
>>
>>54917796

>Perl

That was my first language (not counting BASIC and Pascal as a kid). I use it all the time. I definitely don't recommend it as a first language.
>>
File: 1452211201957.jpg (35 KB, 576x566) Image search: [Google]
1452211201957.jpg
35 KB, 576x566
>>54915962
I'm looking to study mechanical engineering, I'm learning C right now since I heard it was good (got some experience with Python before).
When would I know that it's time to stop and move on to another language?
>>
>>54918199
that's what I wanted, thank you very much.
>>
>>54918584

>When would I know that it's time to stop and move on to another language?

When C isn't well suited for what you're doing.

Something like MATLAB might be useful to learn.
>>
Is there any language that is not java that would allow me to write something cross-plataform between windows and android?
>>
>>54918668
^^^^^
i'm a mechatronics student and use matlab a lot, in general engineerings use matlab
>>
>>54918825
C++
>>
>>54918668
I heard learning C makes all the other languages simpler to learn and I know we'd do C at some point.
I'm not learning programming just for my engineering though, I find it pretty fun
>>54918859
How different is it from C? There happen to be a lot more convenient resources on C/C++/C# where I live and I'm only looking to get a head start
>>
Anyone familiar with Visual Basic? With VB 2005 and later, can you create only managed (.Net) programs, or can you also create regular programs that DON'T require .Net?
>>
>>54918905
yeah you're on a good track
C is a good first language. I have a love/hate relationship with it and I don't really use it anymore, but it does dissipate a lot of things that would otherwise remain voodoo if you started with another language.
You'll probably ditch C when you run into the same problem that I did: when you're faced with writing something where you care more about the result than about implementing it for fun and for learning how to do this stuff at the lowest level.
the first language is important but what's most important is that you get started. You'll eventually run into trouble no matter what. You can take my word for it.
>>
>>54918940
Edgar Djikstra (one of the elders of computors) said that BASIC cripples you in ways that make it hard to recover.
If you're going for .Net learn F# and thank me later.
Just don't learn VB. I don't even know why it's still being supported. It's no longer the 80s when all you had was a C64 or a macintosh that would only suport BASIC scripting
>>
>>54918879
Would that work? How would you compile C++ code for android?
>>
>>54919015

BASIC != Visual Basic

Djikstra was right about the BASIC of his time. Visual Basic is just another interpreted procedural language with slightly different syntax than all the others.
>>
>>54919015
It should be kept in mind that he said at a time when BASIC was still based on line-numbers and GOTO, though.

Not that I'm particularly advocating the use of BASIC, but he clearly had far more of a point back then.
>>
File: laughing.png (353 KB, 613x495) Image search: [Google]
laughing.png
353 KB, 613x495
>>54915962
>If everything fails just use python
>>
>>54915913
I have this exact question myself. So I checked the Install Gentoo wiki first and foremost, and received this particular chestnut of wisdom:

>If you want to program as a hobby, [perception] is irrelevant, but if you want to get a job, it's worth carefully researching what is in demand where. For example, Python, C# and Java are the top 3 if you want to write trader bots on Wall Street. Java and C# are shit career choices because you'll compete with millions of third-worlders for low-paying positions.

A lot of good points and useful information in the programming languages article, but I'm still no closer to deciding what language to invest my time in. On the one hand it seems like the choice should be dictated by where I want to use the language, but on the other the author argues that a language's intrinsic properties are at least as important.
>>
>>54921129
Take the advice of >>54918989
Honestly, learning to program is more important than learning to program a specific language. If you can only write Java code then you deserve whatever shit job you've got. If you can understand that languages are super similar and are all just tools, and you can maybe master a few tools, you'll be invaluable. And if you're programming just for fun, then shouldn't learning be fun?
>>
>>54921237
A fair point. I think the best idea may be to do tutorials for a number of major languages and learn a bit about each of them. I already understand most of the concepts they'll be teaching so it shouldn't take me too long. Might also go through HTDP and look at SICP. Then I'll pick one to focus on, most likely C or Python.
>>
>>54921129
https://en.wikipedia.org/wiki/Analysis_paralysis
>>
Scrub newb here that is not OP but also have been struggling with picking a language to start. From what I understand, front end development is based around HTML, CSS, JS while back end is more along the lines of C, Python, PHP and such.

My main problem is, I have no idea what problems I'm trying to solve or what I'm trying to accomplish right now other than learn. I'm currently only leaning on just learning more HTML/CSS because that's all I'm familiar enough with and changing a bit of code gives immediate results i.e turning some bit of text to a different color. That and it has an obvious purpose of making a site look good. I tried starting off learning python but immediately lost interest because I wouldn't even know how to use it, I felt like I was just plugging, chugging and pasting random shit.
>>
>>54921472
This is how I ended up learning PHP as my first language. It wasn't a good approach, because a) PHP is a wonky language that won't teach you important conventions and b) anything more complicated than HTML/CSS can't be learned by simply screwing around. This is because you're not just learning a language, but how to actually program-- and trying to get that from Notepad, a web server, and a reference manual is like wringing blood from a stone. It did let me design UIs very easily (just outputting in HTML/CSS) and it let me jump into writing useful scripts for myself, which definitely kept me motivated, but I'm sure that if I'd spent a bit more time with a Python tutorial and learned to use a GUI library I could have achieved the same thing and learned a lot more about how to design programs.
>>
>>54915913

I made this same question here, maybe it's difficult, if you know nothing about programming, to understand that there is not "the best" language out there. The first answer I got helped me understanding this. what's the best language? well, it depends on what you want to do with it.
Also, you'll have a bad time with these kind of threads here, because people tend to stick to one language and throw shit to others. so it's like going to a hooligan convention and ask for the best football club. you'll receive such a tsunami of shit you'll feel like visiting india
>>
You could learn FORTRAN or Pascal, it doesn't fucking matter, as long as you learn a first one every other will come to you much easier.
>>
>>54917494
Enjoy sucking CoC.
>>
>>54915913
This has been posted 5000000 times.

C/C++ if you're into programming drivers, embedded, low-latency software with loose time constraints.

PHP with a framework + pure js + HTML + CSS + MySQL if you want to become Pajeet tier web dev.

Java + Spring or Struts or C# for general programming and if you want to get a stable job and fast.

js with frameworks (React, Backbone, Karma etc) + CSS + HTML + artistic talent if you want to become a serious front end dev (pays better than full stack Pajeet).

Python / Ruby / R / Mathlab for data analysis with complicated maths. Pays great.

COBOL / FORTRAN if you already have 10+ years xp with other languages and just want a shit ton of extra money.

Would not recommend GO or Rust because there are too few job postings for them, but they'd do okay for OSS.
>>
C or C++ because with those you will learn pretty much every needed aspect of programming and can easily learn more languages that better suit the situation. Don't start with JS or such because they have way too much weird shit and make other languages just more confusing
>>
File: grill.jpg (64 KB, 548x411) Image search: [Google]
grill.jpg
64 KB, 548x411
I was thinking about starting a new thread today, but looks like this one can fit my needs.

What language would you guys consider good to teach as a first language to your kid/ gf?
Simply a person that knows shit about it.

My gf is curious about my work and wants me to teach her some basics to get an idea about what i do.
I know c, c++, java, c#, perl, a little of bash scripting...
None of the above seems reasonable choices for me, maybe except C (fastest way to show simple flow control, calculation and stuff without more complex definitions and things that will be discussed later
-'aka public class HelloWorld {
public static void main(String[] args))

I was also considering python as you can easily and fast see some interesting results but I don't know it myself so googling for solutions next to her could imply in her mind that this "fun" is so complicated that even I am lost.

Anybody did that already with their kids/nephews/femanons ?
>>
>>54922798
doesn't windows support bash now?
I'd go with that.
>>
>>54922892
Ye but approach and syntax is too different from any other languages.
I was thinking about smthing with graphical extensions, something that can show visible results after short time.
>>
>>54915913
depends on what you need

low level - C
3D games - C++
cli utilities/scientific prototyping - Python
iOS - Swift
web frontend - Javascript
runs on every platform poorly - Java
>>
>>54922798
Why would you teach your gf an actual language if they won't use it?

Teach her about algorithms and the kind of clever ways people come up with doing hard tasks, not about fizzbuzzing with memelang2.0
>>
>>54915913
C# if you want to get laid
>>
File: tumblr_o0231zQ5ep1s6irjao1_1280.png (343 KB, 806x1111) Image search: [Google]
tumblr_o0231zQ5ep1s6irjao1_1280.png
343 KB, 806x1111
>>54922992
Python with PyGame, really easy to use and PyGame makes creating a visual output really fun and simple
>>
>>54924435
>C#
>microcuck
>get laid

Pick one and stick with it
>>
File: 1461509182643.jpg (897 KB, 1920x1080) Image search: [Google]
1461509182643.jpg
897 KB, 1920x1080
>>54917216
>slow at even just solving toy problems
>best programming language for anything at all

http://benchmarksgame.alioth.debian.org/u64q/compare.php?lang=ghc&lang2=gcc
>>
Python
then C
then Javascript
then Java
then C++

this should take 2 years or so, then you'll be ok
>>
>>54918584
are you good with pointers, typdefs, and structs? if not keep going with C
>>
>>54918199
99's don't lie, this guy is right
>>
>>54915913
python
make le memes with python
?????????''
PROFITERINO
:DDDDDD
or learn ruby on rails and fuck sjw whales
>>
File: vs.jpg (197 KB, 1576x1182) Image search: [Google]
vs.jpg
197 KB, 1576x1182
Can anyone answer this >>54919017 please?
Since the time of that post I've installed pic related meme and it's the most bloated piece of shit I've ever seen. There's gotta be a better way.
>>
>>54925299
http://mindtherobot.com/blog/452/android-beginners-ndk-setup-step-by-step/

Use whatever IDE you want
>>
>>54925299
http://doc.qt.io/qt-5/examples-android.html
>>
>>54925417
Thanks
>>
>>54925455
This sounds interesting.
Thanks
>>
>>54922798
Logo is considered a good language for kids. Making a turtle draw some shit can be fun.
>>
>>54921472
>>54921562
HTML/CSS are not programming languages, they are mark-up languages. You don't really learn to program by learning these languages.
>>
>>54915913
The best language is probably Swift.
>>
>>54925631
CSS is actually Turing complete, though.
>>
>>54925670
Yes, you can loop in CSS
>>
>>54915913
>what is the best programming language to learn
all of them
> and what is the best way to learn it
using them to write programs
>>
>>54917748
Can confirm that Java is a bad choice for your first.
>>
>>54925694
Java is always a bad choice of language.
>>
>>54915913
You might consider JavaScript as your first language for a few reasons:
1 - It is easy to share your code. There are web sites like https://plnkr.co/ and https://jsfiddle.net/ where you can share your code and post it on sites like http://codereview.stackexchange.com/ or http://stackoverflow.com/ for reviews and feedback.
2 - There is no need for additional tools, all modern browsers have good JS debuggers built-in.

So if you kind of lack motivation to learn a lot without getting any feedback on what you've learnt, this can be a good option for you.
But as some people have already mentioned JavaScript is kind of a crappy language.
>>
>>54915913
Honestly i would just jump right into C.

After you learn that every other language will seem like childs play.

C is easy as fuck to learn just look at this program below, Simple.

#include <stdio.h>

int main()
{
int i = 23;
char name[4] = "bob"
printf("%s is %d years old\n",name, i);
return 0;
}
>>
>>54925852
You don't need to declare your name array size since you're initializing it with a constant string.
>>
>>54925852
>2016
>strong typing
>no garbage collection
>no objects, classes
No thanks.
>>
>>54916009
nice dyslexia
>beign
>trownig
fucking mobile posters
>>
>>54925516
>>54924853
Good propositions, I was shfting towards python too. I can spend a week or two knowing the syntax and some libs and then show it to her.
>>54924002
She wants to learn not me.
And i believe she'd not be interested in algorithms theory. She's not a math person at all.
>>
>>54915913
F#
>>
why is all hate for java and enterprise java
i indeed think just small young kiddies that hate on this language
>>
File: problem-factory.jpg (26 KB, 499x327) Image search: [Google]
problem-factory.jpg
26 KB, 499x327
>>54926135
>>
>>54918199
dubs checked, quality post my droog, thanks for effortposting
>>
>>54918584
>>54918668
>>54918905

It's safe to learn C, especially if you plan on doing actuator/ sensor work. you're also going to run into a lot of fucking annoying matlab assignments. they're absolutely fucking dreadful because they're so uneventful. you'll plot some trend from a dataset that you're given and put it in a report ugh

ee/cs here
>>
>>54915913
just use whatever makes the most sense for whatever kind of program you're trying to make.
if you really have no idea what to make but just want to "learn to code", go with python.
>>
>>54915913
Pick the language suited to your task. No one's going to congratulate you for sticking religiously to C when a task can be more easily completed in Java/C++.

Buy a reference manual (or better yet, learn to use Google) and learn algorithms. If you can't into algorithms then you're a code monkey, not a programmer.
>>
>>54926485
What if I wanna become a code monkey instead of a programmer?
>>
depends on your goals in life.

CS PhD? Haskell
Startup Programmer? Python
Enterprise Programmer? Java/C#
Low-level Startup? Rust
Low-level Enterprise? C/C++
IT log parsing monkey? grep, perl
Sysadmin? bash, powershell
>>
>>54926721
check Youtube for some video tutorial series.
>>
>>54915913
If you have an aptitude to solve problems then it really doesn't matter. I'd recommend "C" though since it doesn't have any object oriented crap.
>>
File: 1464878499817.jpg (379 KB, 1288x652) Image search: [Google]
1464878499817.jpg
379 KB, 1288x652
>what is the best programming language to learn
Cobol
>and what is the best way to learn it
1970s paper tape
>>
>>54915913
>Guys, what is the best programming language to learn
C++
>and what is the best way to learn it,
1 read a book on it
2 do the programming exercises
3 while book not finished, goto 1
4 read a data structures and algorithm book
5 practice implementing them
6 while book not finished, goto 4
7 learn advanced cs topics
8 make projects using them
9 goto 7
>>
>>54917799
What the fuck is with all those static webms?
>>
>>54918199
Also learn visual basic to screw with people.
>>
>>54918199
I thought this was an excellent post until:
>Hail Satan
This is a Christian imageboard, please delete this.
>>
>>54917772
This. Anyone who disagrees is a moron.
>>
>>54930721
No it's not
>>
>>54927993
>data structures and algorithm book
Where does one find such a thing? Seems like all the resources out there are just out to teach you a language, not the intricacies of programming.
>>
>>54925184
I feel like learning Python alongside typical programming concepts (loops and that kinda shit) and then learning C would work well.

Learning language-agnostic concepts alongside the simple syntax of Python, and then jumping into the low-level complexities of C sounds efficient.
>>
>>54930458
Is there any other language as fucked as VB.net?

Why is "not equal to" <> instead of !=?
>>
>>54931088
Yes, where does one find these arcane tomes used by millions of undergrads every year?
>>
>>54931625
I couldn't tell you which books are about things like data structures and algorithms, and which are merely designed to teach a language, because they're all "about" that particular language.
>>
>>54931907
They usually have "data structures and algorithms" in the name.
>>
>>54931907
http://www.amazon.com/Introduction-Algorithms-3rd-MIT-Press/dp/0262033844/ref=sr_1_1?ie=UTF8&qid=1465169940&sr=8-1&keywords=clrs
>>
>>54919015
Djikstra's comments were mainly about the Dartmouth dialect of BASIC, which did not support while loops and limited functions to a single line of code with no return value. Modern BASIC dialects lack most of those problems.
>>
>>54925682
How?
>>
>>54926135
My main criticisms of Java are that it requires the use of classes for ANY program (a non-OOP program like fizzbuzz or Hello World defines the whole program as a "static class") and doesn't support operator overloading, which makes working with custom numerical types a pain.
>>
Smalltalk masterrace


Let's see how many people get mad
>>
>>54918668
>MATLAB
kys
>>
>>54931088
https://en.wikipedia.org/wiki/Introduction_to_Algorithms
>>
After taking a couple classes in high school (~15 years ago) and not really doing anything since, I've been trying to learn on my own the past couple weeks.

I have my head around most of the standard concepts I feel like pretty well and have been bouncing back between java and python. Was bored today and wanted to try out pygame and managed to make a game of pong mostly on my own. It's limited as fuck and first point wins but I was pretty please with myself over it.

I would like to go back to school in a year or 2 and have always been involved in tech in some way my whole life. It worth seriously considering or should i just kill myself for trying to learn python?
>>
>>54931155
ML, F#, Ocaml
Not every language is derived from C
>>
>>54917796
Perl is not first language material it will teach you terrible conventions although I agree you should learn perl as in my opinion it is a joy to program in. It just feels so natural to use.

As for a first language definitely go with c++ certain people may not like it but I think it is undoubtably the best first language.

Whatever you do don't pick Java
>>
>>54933652
Python's pretty good but pygame is not great. You're better off going down another path if game dev is your goal.
>>
>>54933654
Ocaml is best meme
10/10 should have learned sooner
>>
>>54933738
I would say it's second on my list to just general dev. Web just doesn't appeal to me that much, I've gone through a lot of FCC already and it doesn't seem like something I'd want to really peruse, that being said the algorithm exercises were very useful
>>
>>54933048
>>54933600
Thank you, I'll give that a look.
>>
>>54921936
>js with frameworks (React, Backbone, Karma etc) + CSS + HTML + artistic talent if you want to become a serious front end dev

How do I learn frameworks? I know a moderate amount of HTML/CSS and pure JS but have never fucked with anything beyond that. I'm tired of working at Burger King
>>
>>54931088
http://www.amazon.com/Data-Structures-Algorithms-Adam-Drozdek/dp/1133608426
http://www.amazon.com/Algorithms-Parts-1-4-Fundamentals-Structure/dp/0201350882/
http://www.amazon.com/Elements-Programming-Interviews-Insiders-Guide/dp/1479274836/
>>
>>54928345
New meme. WebP shills keep posting them thinking this will make hiroshima nagasaki add support for it.
>>
>>54923496
what about 2d games
>>
>>54926365
does software dev fuck with matlab?
>>
>>54915913

Why do you think are there so many programmign langauges?

There is no "best solution", just more common languages and niche languages.

Just start somewhere, its doesn't matter where.
Thread replies: 132
Thread images: 13

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.