I’ve always wanted to understand what is actually meant by this. I have wanted to get into programming for years, did some basic python and c, but could never really progress. Not necessarily a linux question but I know since most distros come with libraries already, it’s popular to use for programming.
I have trouble understanding what people are actually programming if it isn’t their job. Like, you go to your computer and start working on…what? I don’t know enough to make an entire program or debug a game, so im just unsure what people do especially when starting out.
Also I don’t really want to learn it for a job. I just want to learn it to know it. But im not sure how to apply it to anything realistic.
Something as simple as using Shell Scripting to automate tasks (say, rename all files in a directory according to a certain pattern) is programming in Linux and most of these you can even do directly in the shell (i.e. just type a few lines of code on the command line directly, no need to have a file with the program or do any kind of compilation).
Also it’s stupidly simple to program in certain languages like Perl and Python in Linux mainly because you’re just working in the command line interface and most of what those languages do is that kind of thing (rather than graphical UI stuff), those languages come almost invariably pre-installed in Linux distros, and you can use the same trick as with shell scripting of just starting the interpreter and type the code directly to run it.
Beyond that, if you’re actually doing stuff like server-side software development, Linux is overwhelmingly dominant in that space and it’s way simpler to, when targetting Linux servers, to just work on your own Linux as developer (user) machine because all the tools for remote access to Unix machines are there nativelly and work seamlessly, plus you can can have the developer machine double as a development environment for server side development (as Linux can still act as a server machine even when you’re running it as a user machine).