just my 2c ... but if you come from a programming background, then learning a new language is usually more "translation" than "brand-new". if you're already familiar with programing concepts, reading books cover-to-cover may slow you down with unnecessary stuff. perhaps you should just roll up your sleeves, crack open a few indicators, and start tweaking/turning?
on the other hand, if you are new to programming, start with some basic concepts (eg. if-else, for-next, while, basic data types, etc.). you mentioned you know some easy-language, so perhaps you're past that already. i'd hate to see you dive so deep into c# that you end up mastering reflection and lambda but have no clue how to add a new plot to an indicator.
there are many open-source indicators here at futures.io (formerly BMT) and also over on the official ninja forums that you can use as reference samples. you may also benefit from reading thru other people's questions, following the thread, and then learning from their solutions.
and, last but not least, check out stackoverflow.com -- a fantastic resource, imo.
Folws I post here becausei understand that before start to programming in c# for ninja I really need to understand how
to programming, I need to build and understand fondamental conceot of orogramming in general and afther go to c#.
I see that are many coders, please tell me what should I see to understand basic concept of programming,
I need someone build a ladder to follow the basic of programming concepts.
The second step is to learn c# applied to ninja.
I start to read Head First C# but I don't understand nothing at all.