ELI5: How do programming languages really differ and why are some seen as harder than others?

I find programming quite confusing and sometimes it seems like all coding is just a mysterious form of magic. While I used to think that every language was essentially the same, I’ve come to learn that differences in syntax, structure, and purpose can make some languages more challenging. Thanks to several helpful explanations, I now understand that each language has unique attributes and complexities that set it apart from others.

Programming languages differ based on their intended use and underlying design. In my experience, languages offering extensive control over system resources tend to be more challenging, as they require explicit management of aspects like memory and concurrency. Conversely, languages that emphasize abstraction simplify these tasks, which can make them feel more accessible, yet they introduce their own layers of complexity. The perceived difficulty often depends on whether you prioritize granular control or high-level convenience in addressing specific problems.

i reckon some languages feel rougher cuz they make you handle every low-level detail, whilst others hide that mess with abstraction. its all bout how much control vs. simplicity you need and the type of problems you’re trying to solve. no magic involved, just trade-offs.

My experience has shown that programming languages differ not only in syntax but also in the philosophy behind their design. Some languages are built around explicit memory management while others manage these aspects automatically, adding a level of abstraction that can simplify development but obscure lower-level details. I have also noticed that languages designed for rapid prototyping and ease of use may hide complex functionalities, making it harder to understand underlying processes. The difficulty of a language often comes from both its conceptual approach and the specific trade-offs made to optimize for different types of programming tasks.

i think its all about focus: some langauges let you do more with less abstraction which can make them tougher, while others simplify the bloated work. it isnt magic its all in the design n intent

hey, i noticd that high lvel abstraction means less messy details but can also hide underlyin complexity. sometimes going low lvl helps you really understand what’s goin on. ever thought about exploring languages that force you into the nitty gritty?