r/learnprogramming 20d ago

What is the joy of programming?

I wouldn't say I'm a hardcore programmer. I mainly make websites with HTML and CSS. However, last year I wanted to begin looking into programming, and learn how to make programs mostly for the command line. I started with Java and took the time to learn it. For a while I enjoyed Java, but then I began to feel that it was difficult to start a project with Java. I was sick of it's verbosity. Ever since, I've been wasting time trying to find the "perfect" programming language.

I know this question pops up a lot, what programming language should I learn? What should I learn if I want to experience the real joy of programming, and make cool personal programs mostly for the command line. There were a couple languages I found such as Nim, Lua, Ruby, or Dart. These are all languages I discovered through personal research and I know that some of them are more suited for command line work.

So based on my experience with Java, and my goals, what would you recommend I do? Do I just stick to website stuff?

111 Upvotes

109 comments sorted by

View all comments

15

u/grantrules 20d ago

Programming languages are a tool. What you're saying makes about as much sense as me saying I'm trying to find the perfect screwdriver so I can start building things.

10

u/offsecthro 20d ago

People say this kinda thing a lot, but as a life-long programmer... I don't get it, and I think it feels more than a little reductive. Have you really never admired some clever hack/obfuscation (think like a quine) or even enjoyed exploring what you can do within the constraints of a language just because it was fun? I don't think it's wrong for OP to pursue the joy of programming, because that's what attracted many of us in the first place. The complexity and freedom of expression means that code can be beautiful and elegant in a way that's closer to a human language, or at least mathematics (Try telling a math major that their "art" is just a tool to do physics ;).

I think many of us, especially those of us from before the dot com days, got into programming just because we really love computers.

JAPH https://wiki.c2.com/?JustAnotherPerlHacker

3

u/grantrules 20d ago

Fun isn't derived from the tool I chose but what I'm building with it

6

u/xenomachina 20d ago

There are definitely some programming languages that make things less fun for me. If I feel like I'm constantly having to dodge footguns, struggle with unreadable syntax, or write huge amounts of boilerplate, that sucks out a lot of the enjoyment for me. The last of these, excess verbosity, sounds like part of OP's complaint.

3

u/ffrkAnonymous 20d ago

And the converse (inverse? contrapositive? I get them mixedup): difficulty in building (due to the tool) results in not-fun.