Chat Gallery Guilds Search Wiki Login Register

Welcome, Guest. Please login or register. - Thinking of joining the forum??
April 05, 2026 - @274.73 (what is this?)
Activity rating: Four Stars Posts & Arts: 75/1k.beats ~ Boop! The forum will close in 726.beats! Random | Recent Posts | Guild Recents
News: It's the silly things you'll remember :trash: Guild Events: There are no events!

+  MelonLand Forum
|-+  World Building
| |-+  ❤︎ ∙ World Building
| | |-+  is c++ too much for a beginner?


« previous next »
Pages: 1 [2] Print
Author Topic: is c++ too much for a beginner?  (Read 1299 times)
Còbra!
Hero Member ⚓︎
*****
View Profile WWW


’S fhearr Albais bhriste na Albais sa chiste
⛺︎ My Room
StatusCafe: cobradile
iMood: Cobradile
Matrix: Chat!
XMPP: Chat!
Itch.io: My Games
RSS: RSS

Guild Memberships:
Artifacts:
Great Posts PacmanHappy Birthday 2k24 !bred :3First 1000 Members!Pocket Icelogist!OG! Joined 2021!
« Reply #15 on: March 03, 2026 @118.41 »

All I’m going to say here is in my experience, you learn one modern programming language you’ve learned them all

At least on a very basic level, modern languages work the same way. The only difference is sometimes the syntax is different. I just learned quirks like “Python/gdscript doesn’t include the ;”, or “C needs to specify the type of function you declare”

The only real difference I’ve noticed is Cpp has things like classes and inheritance, but honestly, I’ve never stumbled across a situation where I absolutely need those. I’m managing everything fine with what C has.

The biggest challenge I’m facing personally is that I’m learning how to program homebrew software for older consoles, so I’m going lower level and needing to do more and more myself.

So honestly, I wouldn’t worry about what programming language to start with. For modern tools they’re very very similar. I have a very easy time adapting depending on what a dev environment needs.

The challenge will come from eventually moving onto basic and assembly, as they are very different beasts but I’d cross that bridge when I get to it.

Basically, I’d instead be asking what the best game engine to start off with, since you want to do games. I started off with Unity, and then Godot, and now I’m learn how to code bare OpenGL/SDL.
« Last Edit: March 03, 2026 @121.90 by Còbra! » Logged





“Snooping as usual, I see?”
Dan Q
Hero Member ⚓︎
*****
View Profile WWWArt


I have no idea what I am doing
⛺︎ My Room
RSS: RSS

Guild Memberships:
« Reply #16 on: March 03, 2026 @726.18 »

All I’m going to say here is in my experience, you learn one modern programming language you’ve learned them all

This is broadly what I was trying to say, except also not! Modern programming languages can be divided by paradigm, e.g. into traditional procedural languages, object-oriented languages, and functional languages. It is absolutely true that learning one paradigm makes adapting to another language that uses the same paradigm... pretty easy!

Also: many modern languages are multi-paradigm! (Modern) JavaScript, for example, can be used in any of those three paradigms! It shows its bias as being originally a procedural language because the other two are optional but it's pretty hard to write no procedural code in a JavaScript application! But you can certainly mix-and-match.

But contrast that to e.g. Lisp, which is fundamentally a functional language... try learning Lisp if you've never done any functional programming before, and it... feels like a leap! Or try writing Smalltalk, which is strongly object-oriented, and you can't get away from needing to think in terms of classes and their instances.


The challenge will come from eventually moving onto basic and assembly, as they are very different beasts but I’d cross that bridge when I get to it.

BASIC was designed to be easy. That's why they called it BASIC! (A popular backronym for it is Beginner's All-purpose Symbolic Instruction Code: I'm not certain whether it really was originally called that, but there's documentation going back all the way to 1964 that uses that name!)

So yeah; don't expect BASIC to be challenging. There's nothing fundamentally difficult about it! Many, but not all, dialects are pretty feature-poor compared to modern languages, though, so if you're used to being able to e.g. reverse an array with a single command or something, you'll find you have to implement your own tools for this! But as languages themselves, the BASIC family is very-deliberately very-easy.

Assembly can be challenging, though, because you get very few tools to help. Fortunately, almost nobody needs to write in Assembly any more, but it's a useful thing to learn because it (for the most part) maps one-to-one onto machine code, and so reading Assembly means you can interpret the output of any reverse-engineering tool, which is fascinating all by itself!
Logged


Artifact Swap: I met Dan Q on Melonland!Joined 2025!Lurby
fsr
Casual Poster
*
View Profile

⛺︎ My Room

Artifacts:
Joined 2026!
« Reply #17 on: March 24, 2026 @199.14 »

Some people will be able to learn C or C++ or ASM as a first language. For most people, this will be enough of a learning curve that I wonder why anyone would start there. But then I'm thinking of younger students, by the time you're at a university it might make perfect sense to start there.

The issue with ASM is that chips keep getting more complicated. The instruction sets remain similar, but get extended. I would probably love ASM if I had started coding on an 8-bit machine, but moving to 16-bit made ASM more hairy, compared to Basic.

You (almost) can't beat Basic in terms of simplicity and ease of learning "to code" but Logo is definitely easier, but making a cursor zip around and draw stuff (Logo can do lots more, not as easily, it's like a mangled dialect of LISP) won't feel like coding to most people, nor does it (note I'm a fan of Logo) translate in the most obvious way to coding in other languages, even though it's extremely similar.

The problem with Basic in 2026 is that it's either too archaic (Python dates back to 1989, or 91 depending on how you want to look at it) or too complicated, losing either relevance or simplicity or both along the way.

Theoretically this doesn't matter, but it's why people usually learn something else when Basic Was the best first language for practically anyone. It isn't anymore. But you can still teach yourself to code with it.

That's a lot harder to do with C++. I could rant about Javascript (only as a first language, it's great as a second one) for much longer than I or anyone else would care for me to, but there's a "Javascript for Kids" book that is easiest to explain if someone lost a bet, and it gets returned a lot for a programming book.

Kids can learn Javascript, but I hate it so much as a programming language. It's kind of a shame that it's perfect for making a Gui that will run basically anywhere because it's so unrewarding to work with. But lots of people like it. All its strengths are also its weaknesses.

Python could be perfect, but it was inspired by a very clever educational language and unfortunately turned out to be good for practically everything (certainly not writing an operating system and certainly not for baremetal speed) but even if it's my favourite language to use and Almost as easy as Basic to learn and about as relevant as Basic once was, at least Every Other thing that people hate about it makes plenty of sense. I could add a few. If you hate Python, I feel you. There are some language snobs I don't feel on this, but they're nowhere near this forum.

I stopped hating the shell as much when I moved from Bash to ksh because it's more predictable, I stopped hating Python 3 as much when I switched to PyPy (which probably doesn't help a lot of people who Like Python but it helps maintain Python as something I dislike less) and if you love things that are simpler and easier, to learn or to teach, you have your work cut out for you in 2026. There are always options, of course.

FWIW, when I was younger I wanted to learn C++ because I thought it would do everything I ever wanted or needed from a language (that was probably true). I never got around to it (I've hacked half a million lines of C++ that wasn't mine, but never learned the language, but it still compiled and ran) because anything I ever needed C++ for, Python does and makes easier than C++, for some value of easier.

I think any variety of C (even go, which seems to be a variety of C according to Ken Thompson, but it's probably friendlier) is a weird choice as a first language. On the other hand, we live in a world where the best choices no longer make a lot of sense and the most practical choices will never be the best or the easiest.

My only Serious gripe with that is: it used to be that if you really wanted to learn to code, you could Absolutely do it before some nightmare option or someone's nightmare idea of an option made you think coding was 10 times harder than it actually is.

If you have to learn it anyway because graduation depends on it, that difficulty probably doesn't matter. If you just love computers and are keen to learn but struggling, it's very possible you're struggling for arguably no reason. That actually pisses me off. It's unnecessary and avoidable and most importantly, it's someone else's fault- not yours. But here we are.

If you go back and look at shows about the BBC Micro in the UK (these literacy shows were the actual point of the device AFAICT) its Basic is quite far from my favourite dialect but at least created by my favourite author- or Bits and Bytes (not platform or language specific but mostly Basic-oriented) in Canada, these shows (now on Youtube and IA) were on before I even got into coding.

But they absolutely demonstrate that we Could Have had an entire society that was computer literate, an entire society that firmly understood the absolute basics (just enough to actually use it, or learn something else but with confidence) about coding, and at some point we pissed that away for training people to use Office instead. Not on any sort of whim, to be certain.

This is at least a slight exaggeration of what actually happened, but just for fun imagine a world where we changed the entire meaning of Literacy away from the ability to read and write, to simply the ability to Consume goods.

Python is, even if you dislike it as much as I do, the closest we ever got to setting it right. But it's not as accessible as Basic or Logo and it never could be. If it were, it would be ABC. And ABC is even less likely to catch on again as Basic because if ABC ever caught on, it would be Python.

So once again, here we are. For those who code, it's not as bad as this. For those who don't, I strongly believe this is why. And even that it's fixable- but that would be tricky.

Logo is funny, it was always educational and most of the language (proper) is useless to 99.9% of the population. It's LISP specifically for people who don't want LISP, and not even in a good way. Logo is like Latin in being both dead and ubiquitous.

But most of the concepts that made Logo one of the most brilliant (and first) educational languages keep landing it in Everything, and although what they did to it to create AppInventor IS a crime, it was an inspiring crime, one that shows why Logo will possibly never die. I wish more people made "useful" (more general purpose) educational languages that took from it. There's at least potential there. Not that I expect this to catch on, only that I firmly believe it could work.

I've been thinking about this particular issue A LOT since 2015 and technically also before that so, yeah. I know it's kind of a weird thing to think this much about, unless, I don't know, it's like the thing you care about more than ALMOST anything else in the world.
« Last Edit: March 24, 2026 @246.42 by fsr » Logged
Pages: 1 [2] Print 
« previous next »
 

Melonking.Net © Always and ever was! SMF 2.0.19 | SMF © 2021 | Privacy Notice | ~ Send Feedback ~ Forum Guide | Rules | RSS | WAP | Mobile


MelonLand Badges and Other Melon Sites!

MelonLand Project! Visit the MelonLand Forum! Support the Forum
Visit Melonking.Net! Visit the Gif Gallery! Pixel Sea TamaNOTchi

MelonLand Nav

@000

Want to Login or Join ?

Minecraft: Online
Join: craft.melonking.net