I'm just a dabbler rather than an expert in any of the following.
The languages that have been most useful to me so far are PHP, MySQL, JavaScript, HTML, and CSS. Using all those, I was able to partially complete my own blog software practically from scratch, which was really hard but very satisfying once it started working properly. I also used those to make my own database software to organize my music collection, generate music playlists, etc.
I develop PHP/MySQL stuff using
XAMPP as an offline web development environment. XAMPP runs an Apache web server on your own computer, even if you're stuck using Windows. It has worked quite well for me, my custom blog software worked without any major changes when I uploaded my blog software to my actual website.
Perl has been useful to me too, especially for short scripts to process files full of text. I also was able to use Perl to make a little script to help a relative easily generate invoices, formatted nicely with HTML/CSS. (Though it might actually be much better for me to make a PHP/MySQL version of that same program, since then, my relative could have all his billing data stored in a nice convenient database.)
I don't really know of any good downloadable documentation for any of the above, I usually just end up searching the web anytime I don't know how to do something with them.
A relative of mine has sometimes told me I should learn the
J programming language, since he thinks if I got really good at it that I could probably get a high-paying job in a financial industry or something. I still have done hardly anything with J at all yet, but I think it might be fun and probably useful even for other things besides getting a high-paying job. I think once you download J there's extensive documentation included, tutorials, etc., which you don't have to be online to use.
The same relative also has kept telling me about how good Python is, but I've never worked with Python at all yet, partly because I don't know if I could get it to work with my web host or XAMPP, and I also am just comfortable with PHP.
Especially if you happen to like text adventure games,
Inform might be fun. I haven't worked with Inform 7 yet (which is one of the most unusual languages I've ever seen), but Inform 6 (which is more like a standard C-like programming language) was useful and fun for me, even for things that weren't text adventure games. Many years ago it was the best programming language I had available to me on my family's primitive Macintosh Performa 405 that was so pathetic that Perl could barely even fit on its hard drive.
Lots of downloadable documentation:
Inform 7 Inform 6
The language of
Second Life, LSL (Linden Scripting Language), is also fun and potentially very useful, since the scripts can interact with things outside of Second Life, such as websites.
However, I don't think
OpenSim (which makes it so you can have your own private Second Life server hosted on your own computer) is capable of handling all LSL scripts correctly yet, so, you won't be able to develop and test many scripts without being online and logged into Second Life.
Downloadable documentation on LSL is here:
LSL Wiki Mirror 7-7-7 : HomePage And probably more up-to-date info is here:
LSL Portal - Second Life Wiki
Best wishes,
Apollia