I want to learn a programming language

I want to learn a programming language,

should I start by learning Python?

Other urls found in this thread:

greenteapress.com/wp/think-python-2e/
github.com/lawmicha/ctf/blob/master/Violent Python/Violent Python - A Cookbook for Hackers, Forensic Analysts, Penetration Testers and Security Engineers.pdf
greenteapress.com/wp/think-perl-6/
youtube.com/watch?v=LR8fQiskYII
youtube.com/watch?v=8qCHqEIRC2c
twitter.com/SFWRedditImages

No. Learn C. Or maybe BASIC (not VB) if you're intimidated by C. Then work your way up to C#, or Java I guess. Then, once you understand the concepts behind programming, go to Python and get blown away with how easy it makes shit. The problem is that Python hides a lot of the core concepts and design patterns that a good programmer should know.

Start by learning how a computer works first. If you don't know how a computer works then how can you program it.

Sure OP. The trick is in recognizing early enough that it's shit and jumping off, anyway.

I second BASIC, install Bywater BASIC and follow the tutorials on the internet. After you mastered the basics learn some C.

Python is great but if you've got absolutely no programming experience, I'd suggest you pick up HTML (should take you an hour) then get into JS.

>I want to learn a programming language,
That depends on what your goal is. Don't listen to people who say you should always start by learning C or assembly. This approach may be reasonable if your ambition is to become a computer scientist or kernel developer (but even then it's debatable), but that's not why most people learn programming or what they will use it for.

If you want to learn about programming to automate tasks and be able to do as much as possible in as little time as possible, python is an excellent choice. If you're more interested in web development, you'll want to learn javascript. C may be a waste of time, just like learning programming in itself may be a waste of time if you have no interest in it or use of it. If you're just interested in how computers work, C/assembly are obviously the best choices. MMIXAL or other toy languages may also be a good choice if you're more interested in theory. It's all a question of what your goal is and how much time you're willing to spend learning it.

Python sucks, Perl teaches proper programming.

If you want to start building useful things quickly, and enjoy that spark when you get something to work, start with Python.

If you are a math lover start with Scheme or Haskell.

If you are an electrical or computer engineer (or student of either) then learn assembly, Verilog, and then C.

Any serious programmer should be able to read and interact with C, but it's so low level that you'll probably just get frustrated and give up. It takes a long time to program anything remotely useful as a beginner.

>BASIC
What the fuck.

I'm The trick to learning to program is to do it by building fun projects. Trying to learn purely from books or dull websites is setting yourself up for failure.

If you're interested in making useful/fun websites, then start off with HTML, CSS, and basic JavaScript. Then learn Python or Ruby to build a backend. This is how I did it, and it was super fun and rewarding.

If you're interested in developing mobile applications then learn Java or Swift.

If you're interested in writing scripts to automate bits of your daily life then learn Python.

If you have any interest in machine learning, neural networks, image processing, or other mathy stuff then learn Python.

If you want to make video games learn C++.

>The trick to learning to program is to do it by building fun projects.

Actually the real trick to learning to program is be forced to use a language for a project (for work or class).

At least 200% more effective than a self-driven fun project.

greenteapress.com/wp/think-python-2e/
Learn python with this book, it's really fun, then master the language with a project.
Then you can learn harder languages with bigger projects.

I'm working on this right now
github.com/lawmicha/ctf/blob/master/Violent Python/Violent Python - A Cookbook for Hackers, Forensic Analysts, Penetration Testers and Security Engineers.pdf
I already know some shit on linux but need to learn more about python in practical env.
Now I don't have that logical mind and I dindu those math class where you have to calculate prime numbers and others sit like that so this is good enough for me.

this. you can read as much as you want. but in the end: practice makes perfect.

This is true, but in that case OP wouldn't be posting here.

If you like learning by example, then take a look at Data Science from Scratch. It has a good review of Python and lets you try out some advanced stuff.

How good is this book to learn Perl greenteapress.com/wp/think-perl-6/

i suggest you learn perl 5, not perl 6. see "programming perl" by larry wall.

it was a mistake for them to call it perl 6, the language changed tremendously.

90% of the Perl out there is not Perl 6, which is practically a different language altogether.

Python/Ruby have mostly replaced Perl. You might want to wait and see if Perl 6 matures and gains a larger user base. Most Perl 6 resources are probably not geared towards beginners, since those aren't the types of people trying new languages.

Is it really that different? Damn.

It's a great start. People say about C but if you don't know what to expect it's quite hard.

I want to be good at programming automation softwares. Where should I start?

Is Perl 6 more limited than Perl? Because you see some buzzwords throw at you when Perl6 is presented but you also hear is more strict and less free.

Good, will look for that
Thx

If you don't understand acoustic theory, how can you speak?

fucking kill yourself

there is a book from no starch press called automate the boring stuff with python, that would be a good start.

if you don't understand how an engine works, then how can you drive a car?

What programming language do I learn if I want to stop being a brainlet.

C. upgrade to C++ later

You will be a god to all the java/C#/javascript/other scripting garbage plebs

Should I really start with Python? I don't know, I see a lot of anons advising against that on this board.

>implying C++ is an upgrade

Just don't listen to people here. Learn python. C is incredibly useful thing to know but I don't think it should be the first language.

you see them a lot here because they are all neckbearded NEETs who are jealous of all the Python developers with jobs.

Ok, I'll go for Python now and learn C later. Any other language I should learn on the side? All job applications I see demand the person to know multiple languages.

Honestly java is the way to go

C for low level system programming
Clojure for the JVM
Perl for scripting

Python is deprecated

Java, since that will also help with android programming, and C#.

ASM

I was looking at learning C++ and perhaps C, however I was wondering if there's a "lightweight" but also easy way for me to compile my programs since I really don't feel like downloading Visual Studio. I remember I used dev-c++ a long time ago when I had my first dabble in C++ however I would just rather use a text editor and the command line. what do

Start by learning discreet mathematics via google
Then take a class in the basics of C#
Then learn python

Python is awful for coding practices, the use of space is one example.

Learn C to build good habits and a full understanding of what is actually going on, then learn python for simplicity if you want.
Make sure you learn types, because too many python programmers have no fucking clue what they are doing.

Alright, thanks.

So, to get started, is Notepad++ enough to use as a text editor? If not, which one should I use?

Nevermind, those things are called IDE, apparently. Just found one.

I use pycharm. It's pretty comfy. The only downside for you it's it underlines all mistakes so it can make you too carefree

Sorry, I'll go for C > Java > C# and then Python. Too many people (not only here) give too much credit to this language for me to ignore it as a beginner. Hell, some people even call it the Latin of programming languages.

Yeah, It's Latin of programming. Good luck

Thanks. I have a feeling that I'll need it.

start with C++
easiest to learn
very friendly & comfy

everyone here will tell you to start with c because they have plenty of free time in their hands. you should either start with python or javascript, those are the two main popular high level languages, you can also start building something useful with them right away as you learn.

if and only if you wanna dig deeper into how computers work internally, you can try low level languages if you want. you do not need them for most purposes at all otherwise.

and so, another soul is tricked into C to start the cycle anew because autists go "it's what I learned on so it's the best for learning" and " indentations are BAD because....uh"

What a joke

What is a backend?

Python for glue language and bioinformatics. Learn cython if you need tight computational loops. Sci-kit-learn for NN's, numba/numpy/pandas for large scale numerical computation. Async is a must learn for I/O heavy shit.

Javscript is good on the easy side of concepts and an interesting async by default ability. Node.js can get super useful for alot of things.

You need to get really tight loops go for Go, Rust, C, C++. Those are largely dependent on the framework that a company adopts at the beginning of a major project.

Java is still a thing, but i'd go the scala route with that just because its my personal favorite. I can't justify beyond that.

youtube.com/watch?v=LR8fQiskYII

Listen to Larry Wall.

Probably an unpopular opinion but i would recommend starting out with a functional language

It is.

I'm the first response to the thread and suggested C because Python was my first language for a 2-year job then I started a CS degree and had to un-learn all the fucked-up habits I had because my mentality was "know the syntax and get a list of tasks completed," with no more thought than that.

But that has nothing to do with programming languages that's just learning CS as opposed to just coding

Exactly my point as to why he should learn C first...

I don't follow your logical leap

>just coding

>I don't follow your logical leap
t. python user

You're not saying anything.

like this

youtube.com/watch?v=8qCHqEIRC2c

Your post gave me the impression that C has more 'steps'. You mention assembly and C and say it takes a long time to program anything remotely useful as a beginner. That makes me think that in C you have to 'declare' more actions or things for the computer to do if that makes sense.

I am interested in learning programming and all I have done so far is HTML/CSS and some PHP. I have tried to learn python but I start not understanding what is going on because a lot of functions seem automated and abstracted from what the computer is doing.

So would C be a better starting choice if I want to know what is going on close to the machine level? Should I start with assembly? I would be learning it because I think it is fascinating and building things out of words you write is fucking awesome.

Don't listen to Sup Forums, we're full of shit.

It's a silly question because if you know Python, you already know 90% of C and Java (and vice versa).

It's not like Chinese vs English, it's like Scottish English vs American English.

>if you know Python, you already know 90% of C and Java
What? Thats retarded.

Can

What makes python especially good for that?

Is JS good for a first language?

You are an idiot, start learning high level languages just to grasp and start feeling what programming is then, then slowly delve deeper, get more technical etc.
Python is good choice, after that start C++ because its a univeral language it can be simple, but it can get very complicated (if you need it to be). Starting c (a complicated c++ subset) and asm as a beginner language is retarded af

It has well documented, sane frameworks for that. For example django

Yes it is, and abundant guides on the internet. Just don't stay in JS and skip Python.

Is it technically possible to do the same thing with every language?

always relevant

Is learning python a meme?

To be honest I think python is the best language to start because it's really simple, java is a much better language but it has stuff that can scare you away or simply bore you so you should learn it after getting comfortable with python

Yes

Are you going to ask me every question in existence one reply a time?

YES GO WRITE A C FRAMEWORK THAT WILL TOTALLY WORK AND NOT BE A TOTAL WASTE OF TIME THAT NO EMPLOYER WILL LOOK AT IT AND HIRE YOU

>C or BASIC
Its not the 1970's anymore bro

...

idk anything mate

Python is good as a starter but I'd recommend something more conventional like Java to learn ins and outs.

Yes start with python, it's easy and comes with everything you need to write basic programs. It's not a well designed language but it's ok.

>No VB.NET references

So are you anons plain retarded or just born in 2000?

yeah. you should do it. also try C+ and C++

Pajeet my son

I second that

kek once he learn JS he gonna realice python is shitty and has much less expressive power.

Ok, user who said that would start with C. That \n thing is fucking retarded and make the strings look horrible.

you can write every algorithm in every turing complete thing, but in order to get low level access the language implementation you are using must have inline assember access and arbitrary memory address manipulation.

>That \n thing is fucking retarded

do you even know what the fucking \n you son of a bitch ?

Let me guess you are a pytard

>. That \n thing
god lord, nobody can't be more stupid than you.

Nevermind, just saw it does more than break lines.

Line breaks don't happen themselves

Nope, I'm wrong, it does not.

Yeah, I know, but it could be a little more aesthetic.

its fucking ASCII you moron
012 10 0A LF '\n' (new line)

>but it could be a little more aesthetic.
no, its fucking simple standard well know computer universal god tier ASCII I want you to make a video apologise RIGHT NOW

You see that "\", is starts escape codes, line break is "\n" but there are more. Congrats, you are actually learning stuff.