Lua isn't that hard to pick up at all, and it's a great starting language if you want to get into advanced programming(C/C++, C#, etc).
Read
Programming in Lua here. It's made by the creators of Lua and though it is 2 editions old, it's still a great way to get started.
Take a look at
Learn Lua in 15 Minutes here. You're not going to actually learn Lua in 15 minutes, however it's basically a tutorial written in code. The explanation is written in comments and explain what you're looking at.
When you get to coding for Garry's Mod, take a glance at the wiki
here. If you find an undocumented page, take a look at the old wiki(Garry's Mod 12)
here. Lastly, just take a look at other people's work. See how other people write and try to figure out what their code does. You can even try to recreate their code, make it more efficient and whatnot.
As for text editors, I personally use
Sublime Text 3 with the GMod Lua syntax highlighter. IF you do decide to use Sublime Text, install
Package Control. It basically installs any plugin, theme, and syntax highlighter you want straight from Sublime Text. No need to Google anything, you just search for it in the text editor and it installs everything for you. If you don't want to buy Sublime Text, use
Notepad++ with the
GMod Lua syntax highlighter. Also, note that you will not remember everything. For every project you work on, you will have to reference something or Google something. Every programmer does this and don't let it make you feel like you're a bad coder.
As with any programming language, there are ways to do things and then there are better, more efficient ways to do things. You'll learn these as you progress. When coding for GMod, take note of efficiency. Be careful of your server-client networking, make sure you're checking, setting, or sending things
only when you need to(As in, don't be sending a player's amount of money to the client every tick, only send it when it's updated).