Having prior programming experience is helpful, but telling a complete beginner who is only interested in amxx scripting to go learn java and c++ before learning pawn is stupid, terrible advice.
Pawn is extremely simple and you don't need to know much more than declaring variables and functions to be able to write plugins. Then, you just need to be familiar with the AMXX API and have the proper mindset about coding.
A good place to start is this topic, where you have a list of tutorials: https://forums.alliedmods.net/showth...awnProgramming
Start with the basic tutorials about pawn programming. I also suggest you read this:
Also bookmark this: http://amxmodx.org/api/
Here you can search functions and see what they do, functions like "register_concmd" for example.
Then, it is a matter of figuring something you want to do(something simple, don't start with anything too crazy), think about it for a while and SEARCH SEARCH SEARCH. Searching is the most important skill that you need to master. This forum has examples for almost anything you may want to do and searching in scripting help will often give you the answer you need.
For example, let's say you want to create a plugin that turns the player invisible when he isn't moving. You need to break this idea into parts that you will research/implement individually.
It's fairly obvious that you have 2 tasks:
-figuring out how to turn a player invisible
-figuring out how to detect when a player is not moving
Then, after you know how to do each of these 2 things, you can create the plugin. I would start by searching alliedmodders for "how to make a player invisible" and test this part alone. Maybe make a command that will turn you invisible, just to confirm that the code you found works.
Then search how to detect when a player is not moving, test this part separately to make sure it works - maybe print a message when you stop moving.
Then merge them together and create your plugin.
Do not blindly copy paste code: search, find some code, take it and then try to understand it. Search the functions inside amxx API site I linked, search the forums for more information about particular functions or things you do not understand. Also, get in the habit of debugging your code: test, add messages, see what your code is doing and compare that to what you want it to do. Then you will know where the problem is and how to fix it.
What I said may look like really high-level advice or nothing concrete, but that's how you learn. There is no magical tutorial that will teach you to code in one hour. Learning what functions do is important, but having the proper mindset and knowing how to approach a coding task is way more important. In the beginning, everything will be confusing but push thru it. In no time things will start making sense, but you have to invest time and take responsibility for your learning.