I am a software professional. But, when I find time, I teach Physics, Chemistry, Mathematics, Statistics for free.
Purely, out of interest, I want to develop software applications to teach various concepts in these subjects. These will involve graphics. Unfortunately, I have mostly written code which work in background and have worked very little with UI designing. So I have some doubts. Please let me know the following:-

1. I am planning to use GDI+ with Visual Studio 2008. But this will not work on earlier version of windows. Am I safe in assuming that the majority of people who will find my softwares useful no longer use earlier version? Or should I code in VB6.0/VC++6.0?

2. Or do you think that majority of these people use a flavor of Unix? If so, then I cannot proceed, because I have almost nil knowledge of developing applications for Unix.

3. Will GDI+ be good or should I use some other technology?

4. In Windows, y increases from top to bottom. But I want it to use from bottom to top. I can easily do conversion by using some simple equations. But does GDI+ provide any method to do it in a simpler way?

5. Suppose one form of the software is used to plot graph. For graph, I will need to use scale i.e. how many pixels = what value of a quantity. But if I hardcode the scale, then it will look good in one system resolution but not in another. So should I write code to find resolution at run time and adjust accordingly or is there a more straight-forward way of doing it?

6. Any tips on back color, text color, colors of objects (e.g. circles and other shapes), which you think that users will like?