Testing, testing, one two three!
First off, test your program, make sure that it works. I will admit that I don't always do this step, but if your program is of any decent length then you should test it. If it's big enough to share, it probably needs tests. Testing is making sure that your program does what you expected it to do. And doesn't do anything that you don't intend it to (bugs).
What does it do?
Give a short description of what your program does, is it similar to another program which we may know about already? If it is then tell us about things your program does differently to the ones that it's similar to. This is an important part of your post, if your program doesn't sound interesting or useful then it's not going to get downloaded.
Distribution
Make the download easy and clear, the best way to do this is to use pastebin, it's free, easy, you don't need an account, and you can do it via computercraft's inbuilt pastebin program. Just put the ID code on your forum page and tell us that it's the download.
If you have multiple files then you may want to use something like github. To make things easier for your users, make a pastebin installer, or direct us to use one of the many github downloading programs on the forums.
Alternatively, you could use something like compress to make a self-extracting installer, you can host this on pastebin and tell us to run it.
Special Instructions
Is there something which we have to configure on the first run? Did you use a fancy framework or API which needs to be installed on the end user machine or some other dependency (mods)? Tell us, better yet, get the program to (nicely) prompt the user to setup everything correctly. Preferably have the program know how to do it's first-time set-up and either do it itself or guide the user through it.
Turtle programs may have 'physical' considerations. Does the program expect the turtle to have certain items in the correct slots? Does it have to start in a particular location on the farm that it will manage?
No pics, no clicks
Quite a lot of people like screen shots. In my opinion, if the program has a GUI then a screen shot is useful, otherwise, one is not needed. I quite like using postimage for my image hosting needs, it's free and easy to use. As for getting the image in your post: in the post editor, click on the image icon below the smiley face, paste in a direct link to your image, click ok and you are done.
Ideally, your screen shot should only contain the information which we need. Just crop out things like the windows taskbar/titlebar (or the mac dock thing), if your screenshot is showing the computercaft screen, then crop your screenshot to that size. MSPaint (or your other OS default image editor) can handle this, no need for photoshop.
30~60 pics per second
If your program is very complex then a video may be beneficial. I'm sure the you have heard of the free video host called youtube. To get your video in the post: click on the link icon in the editor (below and to the left of the smiley face), paste a link to the video, make sure that the protocol is http:// (and not https:// ), then click ok.
A note about embedding, the embedded video will use the flash player. I am looking into a way to force it to embed the HTML5 player. For now, I advise adding another link to your video and making sure that it is using the https:// protocol. This will keep it as a link, allowing those who don't want to or can't enable flash to still be able to view your video on its youtube page.
Creating videos can be difficult, you will need a screen capture program. I personally use OBS, it's designed for streaming but it can record too, it's also free, but can be a bit complex to use. If you search Google for free screen recorders then you should find loads. As for editing your video, I haven't needed to because a lot of my videos are in one take (they tend to be very short). But any video editor should do what you need it to do, namely combining clips together. Again, google is a resource if you need a free video editor.
One final thing for video's, if you are talking and it's difficult to understand you (either English is not your first language or your microphone is not good quality) then add subtitles to the video. It will take you a while, but everyone will appreciate it (even if we don't say that we do).
Picking a name
Preferably you want the name of your program to be something short, memorable, related to the program, and unique. You are likely not going to fit all of those criteria. As for naming your forum thread, make sure that you have your program name and a short description of what your program does.
Legal - I know
What can we do with your code? Are you happy for us to make changes and to share those changes? Do we need to credit you if we make changes? This website is quite useful for this. I personally like the MIT license as it is me proof.
More information in this tutorial: http://www.computerc...p?/topic/26096-
Almost ready
Check for spelling mistakes in your post, also what font have you used? http://www.comicsanscriminal.com/ I like to keep to the default fonts and sizes (makes things easier for phone users - no need to zoom in and out). Heading wise I use bold text, again phones. Before you have posted, double check that all of your links work, the preview button is designed for things like this.
Don't forget to post your code
Your thread will be locked if you do forget, should it become locked just find your code and report your post (stating that you have found the code) and the forum mods will unlock it for you to post your code. The report button is in the bottom right, near the quote buttons. The edit button is in the same place. They show up clearer when the mouse is near.