Programming language for normies

Hi, Holla Forums.
I am a normie who uses this obscure website for some unknown reason.
As the title suggests, I would like to learn a programming language, preferably one that is so user-friendly that a
normie/normalfag can learn it. Any suggestions?

Other urls found in this thread:

racket-lang.org/
blackboxframework.org/index.php?cID=home,en-us
community.blackboxframework.org/viewtopic.php?f=40&t=68&start=10#p757
en.wikipedia.org/wiki/Chip8
ticalc.org/
twitter.com/SFWRedditGifs

Python. Easy but not crippled, widely used by both novices and professionals. Try the attached book.

If you find it really fun and want to get a wider view of programming, consider looking at C, Haskell, Prolog, bash and Lisp. They're all programming languages that are very different from Python and from each other and do interesting things to your mind.

Look up Hello World in a few different languages and pick the one that looks best.
If you want someone to tell you what to learn: Python.

These are the standard meme introduction books for C and Scheme (a Lisp variant), respectively. The Scheme book is intended for beginning programmers and the C book is pretty suitable for beginning programmers as well. I still recommend starting out with Python, but these are real options too. Python will be useful much faster.

Are there any languages easier than Python? I tried it on Codecademy once, and it was somewhat difficult. Yes, that's how much of a normalfag I am.

There's always Racket. Racket is a language from the Lisp family, which focuses on teaching people how to program. It's got a massive standard library, and comes with even more to fuck around with. It's only downside is the Lisp syntax, and that's only because it's so different from your average programming language.
It comes with an IDE called DrRacket which points out exactly what your program is doing, and where it fucks up if it does. It also lets you test out code snippets in an interactive session while writing a program, so you can get your work done easier.
racket-lang.org/

Aside from that there are some languages to NOT use as your first. Don't bother with Perl as a first language, because it teaches you bad habits. Don't bother with Jython, Clojure, Scala and Elixir because they're implementations of one language on the VM of another, which makes them a bit too complex. Don't go beyond the absolute basics in C until you're comfortable, because it does some things differently. If you want to explore Haskell use Hugs/Haskell98, because it's a lot smaller and easier to work with. Don't start with Java because, while Object Orientation isn't a bad thing to learn, Java doesn't let you learn it separately from the rest of the language.
These languages aren't essentially bad, they're just not beginner-friendly.

The most important part of the program is the algorithm, or the set of instructions you're following. Programs are just algorithms written in a way computers understand. Look up bubble sort, Dijkstra's Algorithm and LOGO to get a good feel for programming.

Of course it's going to be difficult the first time you use it. Keep playing with it until you get good.

"Somewhat difficult" is fine for something that requires a new way of thinking.

Languages that are much easier than Python tend to be horrible for doing complex things with, and teach you bad things. Just go with Python.

what about the "start from the bottom with c or assembly or you'll never truly understand" meme?

It's just a dumb meme. You need that knowledge if you're going low-level or high-performance, but it's not at all necessary when starting out.

I listed C as one of the languages to look at besides Python. It's a valuable language to learn, and if you're learning multiple languages recreationally I do recommend making C one of them, but it's not particularly good as a first language.

LUA. LUA is even easier than python, because everything is tables.

I don't think so. Lots of things in Lua are easier, but Python has a shit load more in the standard library (or rather, it actually has a standard library.
Anything object-oriented is done through prototypes (or rather metatables) which can be done in a million different ways. You see a class in Python and you know it's a class. A "class" in Lua can be hand-hobbled in any number of ways. You get the output of a poorly-documented function in Lua and it's a table, and you don't know whether it's a "class", an "object", a "module", a simple table, or whatever else.
There's also the fact that Lua importing is essentially just C style, where it just runs the file in the current namespace, as opposed to Python's, which enforces proper namespaces on import. Everybody has agreed on a general form that modules should be in, but it's something that really should be enforced at the language level (should be what Python does, where each import uses its own global table, and that table is what is returned by require, rather than everybody having to manage their own module table).

Lua might be easier than Python to get into in the first place, but doing anything advanced in it is far harder, owing to how much simpler the language itself is.

I do love Lua though. It's one of the best very simple embedded languages, and it's always my first choice for an application scripting language, especially because of how fucking fast LuaJIT is.

No, you must start from the top with SICP and acquire Lisp satori.

Javascript

that's for people who aren't normies. you're not going to ever have mastery without being autistic, so you may as well just learn a normie language like you asked in the OP. if you want to be a master, you should be familiar with all levels of abstraction

Delphi

It's Holla Forums's wet dream: Windows-only, proprietary and expensive.

And nothing this powerful comes close in terms of ease of use.

The language is a nice, modern variant of Pascal, which is arguably as powerful as C++ but as easy to use as a scripting language. It generates real, compiled, native executables, not slow, interpreted shit. It has a superb IDE that lets you create desktop or mobile apps by what is basically drawing the GUI on screen then writing a bit of glue code from its enormous library.

There's also an open-source clone called Lazarus, that is pretty decent. It resembles older versions of Delphi. or you can pirate Delphi

Perfect normie development environment.

Or you could try a later (and arguably better) language in that family. Component Pascal dates from 1997, not 1970. There is a free IDE for Windows at blackboxframework.org/index.php?cID=home,en-us There's also a version for Linux at community.blackboxframework.org/viewtopic.php?f=40&t=68&start=10#p757 , but Normies won't be using that OS.

I really like ProjectOberon myself, but that's an autist's choice. CP is much more productive for the real world.

OP see anons good suggestions

good suggestions, choose python. best intro language, useful, widely supported and widely used.

You forgot to add Erlang and Java/Kotlin. Although they are not as far from others.

And also FORTH or one of its derivatives. (also try playing code golf with it, it's a lot of fun)

I didn't recommend to learn 1970s Pascal, I suggested Delphi, a language that has continuously evolved since its first release in 1995. That has adopted many ideas of Pascal's other successors such as Oberon-2 (Component Pascal is basically Oberon-2 renamed to profit from Pascal's popularity) as well as other languages such as Smalltalk, C++ and more recently even Python.

Nevertheless, I don't think age of birth is a valid criteria for selecting a language. C, as Pascal, is also from the 1970s and as relevant today as then (arguably more), so is SQL, Lisp is even older.

BlackBox/Component Pascal hardly sees any development these days. The community is tiny... nah, scratch that, it's non-existent, there's not a single real-world application developed in it, and not a single school has adopted it as even a teaching tool. Oberon/CP falls squarely into the esoteric languages category, as nice as it is, it has no place as a "programming language for normies"

I actually tried it about a decade ago, as back then I was doing a fair amount of work with Delphi (not anymore, I do mostly C++ these days, with a bit of Python on the side). And it was pretty damn easy coming from Delphi. A very gentle jump, if someone wants to go that way.

As Pythonistas say, practicality beats purity. And Delphi is the closest to it you can get in the real world.

Delphi (or Lazarus) is the best choice for normies, C and C++ for professional developers, Python and Perl for quick and dirty projects, Java and C# for hacks, Haskell, Scheme, Oberon-2, OCaml, Smalltalk, Prolog, etc. are toys for academics.

With modern OS and complicated hardware in the way, asm is a big difficulty to learn as first language. In the old days of 8-bit home computers, it was fine though. You could always emulate an old machine and learn asm that way, or even buy an old computer like Commodore 64, if you really want to start with asm. I guess you could also use a made-up VM like CHIP-8:
en.wikipedia.org/wiki/Chip8

Oh yeah, and the old Texas Instruments calculators, like TI-85 had an 8-bit Z80 chip that you could program in asm. Lots of people made games and stuff for it like that:
ticalc.org/

I wouldn't say it's that harder. Sure you can't easily write to pixels, which is a huge downside, but you can still read/write text easily enough.

format ELF64 executable 3segment readable executableentry $ mov edx,msg_size ; CPU zero extends 32-bit operation to 64-bit ; we can use less bytes than in case mov rdx,... lea rsi,[msg] mov edi,1 ; STDOUT mov eax,1 ; sys_write syscall xor edi,edi ; exit code 0 mov eax,60 ; sys_exit syscallsegment readable writeablemsg db 'Hello 64-bit world!',0xAmsg_size = $-msg