You are not logged in. You can browse but not post. Login or Register by clicking 'Login or Register' at the top-right of this page. For more information on Statalist, see the FAQ.
Already the evident and excellent advice on what to read, [U] and Kit Baum's book.
Here is a self-evaluation test to work out whether you are ready,
1. You already have experience with using Stata interactively and solve most of your own little Stata problems quickly by yourself by examining your code carefully, looking at the help or reading manual entries.
2. You understand the difference between a do-file tied to a specific dataset and a more general user-written program.
3. You know the bad news: a single incorrect character could scupper your program absolutely. That doesn't put you off. You'll find that little thing.
4. You know the good news: Stata is well documented and Statalist is supportive of serious coders.
5. You already study other people's code for tips and tricks and look inside Stata's own code whenever you want to know how it works.
6. You have some experience of programming or writing scripts in various software.
7. You are clear that what you want to write deserves a program that no one else has written (better).
There is no pass mark, but lots of Nos should be a warning.
You may also want to check the Stata Blog for user written estimation commands as well (David Drukker has written a pretty thorough tutorial about this recently). The other suggestion I would make is to make extensive use of the viewsource command in Stata to look at the source for programs developed by others.
for me, the best starting place was StataCorp written ado files; I then followed up in various documents (including many of those mentioned above) when I didn't fully understand what was going on; in addition, StataCorp runs netcourses; see, e.g., http://www.stata.com/netcourse/programming-intro-nc151/
I can say in full honestly that I found the net courses (151 and 152) extremely helpful for getting up and running with things relatively quickly and have used that bit of training to teach myself some other languages as well.
Comment