Having used Window$ for so long I tried Linux once. Damn I was lost and trying to get a simple task done was a pain, but that was a long time ago. Would love to try it again. Just don't have the time right now.
It sounds cliche and ridiculous when you first start out and hear it from people but once you crack it then you'll agree....but the only way to learn is by doing.
Throw away your current OS and make the switch...force yourself to make **** work the way you expect them to and you'll learn in the process.
The courses all tend to focus on the wrong things and becoming an administrator generally and don't really help with learning the day to day workings, which you'll learn much more quickly by simply making the switch and struggling a little bit.
EdX has this course which seems to be a good start for the basics.
Yes, coding on Linux will assist. Especially if you wanna do web development and use a nice language like Python, Ruby or NodeJS - handing the dependencies on Linux / MacOS is so much easier and more efficient compared to Windows.
And once you know that, it will be even easier to actually deploy what you've coded onto an actual server.
The first install of Linux for me was an early version of RedHat (3 or 4?).
Install was from several 3.5" 1.44mb stiffy disks and I got stuck at the login screen for some time until I figured out the user was "root" *facepalm*
I was looking for a cost-effective alternative to replace a troublesome Novell server for a client.
There was not much online back then in the days after dial-up and BBS's so a lot of it was hacking/swearing and sharing/learning from mates.
Before long we were able to provide clients with file/mail/list/print/web/db(SQL)/VoIP (asterisk) servers at a fraction of the cost of Microsoft equivalents.
A handful of these servers are in production use still
One of the things I always appreciated is the community surrounding open source - always willing to help and share; made some good mates over the years!
*nix skills have been very valuable and useful in my career - I still enjoy learning new stuff (when I can find the time).
I use both windows and Linux. Windows when onsite doing c# consulting twice a week, Linux everywhere else.
I have been dual booting like this for about a year. I would never recommend someone like my mother to use Linux as a desktop environment.
As a development environment, Linux is marginally better than windows for things like npm, mvn, etc, it just feels snappier.
Jetbrains products, VS code, even git cli are pretty close in my experience.
Where Linux blows windows/macOs away (even windows 10 pro with hyperv) is when you buy fully into docker for your dev runtime environment. Native Linux containers docker >>>>>> docker for windows / docker machine.
That depends on whether your mother had prior exposure to windows etc. Introduce any person without prior experience to linux and they'll be fine. If something breaks they not gonna be able to fix it irrespective of os.
Just setup a distro and start using it for something while learning the ropes.
I would however start out with an "easier distro" (www.distrowatch.com) instead of going with arch linux / bsd and so on.
Perhaps mint or ubuntu which is pretty much the ones I used getting off the ground moving into other more interesting areas of *nix. Just don't all of that at once and stick to a distro while learning.
Make sure you include termal time instead of just relaying on click-to-dos understanding what you are actually doing.
My first Linux installation was Redhat 4.0. I saw a Linux book at CNA with the CD and thought I'd give it a go. Couldn't figure out what it was and phoned a friend in Cape Town (I live in JHB) who helped me over the phone to install it. (luckily we had that R7/weekend deal back then). From there on I moved onto Slackware, FreedBSD, OpenBSD, OpenSuse, Debian, and later Ubuntu and CentOS. Been using Linux mainstream every since though I use Windows as well for games and stuff like Winbox, Quickbooks, etc.
Learnt using slackware way back in the day.Downloaded the official slackware pdf and did everything via the command line including recompling the kernel etc.Ran a web server , ftp , dns etc on a 386 DX